]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/socket.h
Introduce Server class
[user/henk/code/inspircd.git] / include / socket.h
index 7fa58f8ad992bfe444fafe3bd9d618a7dabd2a16..c54517a76c9f8eb68a7d9d141ef415d1d62e3b9f 100644 (file)
  */
 
 
-#ifndef INSPIRCD_SOCKET_H
-#define INSPIRCD_SOCKET_H
+#pragma once
 
-#ifndef WIN32
+#ifndef _WIN32
 
 #include <arpa/inet.h>
 #include <sys/time.h>
@@ -105,13 +104,11 @@ namespace irc
                 * IPV6 addresses.
                 * @param address The human readable address, e.g. fred\@1.2.3.4
                 * @param cidr_mask The human readable mask, e.g. *\@1.2.0.0/16
+                * @param match_with_username Does the  mask include a nickname segment?
                 * @return True if the mask matches the address
                 */
                CoreExport bool MatchCIDR(const std::string &address, const std::string &cidr_mask, bool match_with_username);
 
-               /** Return the size of the structure for syscall passing */
-               inline int sa_size(const irc::sockets::sockaddrs& sa) { return sa.sa_size(); }
-
                /** Convert an address-port pair into a binary sockaddr
                 * @param addr The IP address, IPv4 or IPv6
                 * @param port The port, 0 for unspecified
@@ -127,13 +124,6 @@ namespace irc
                 * @return true if the conversion was successful, false if unknown address family
                 */
                CoreExport bool satoap(const irc::sockets::sockaddrs& sa, std::string& addr, int &port);
-
-               /** Convert a binary sockaddr to a user-readable string.
-                * This means IPv6 addresses are written as [::1]:6667, and *:6668 is used for 0.0.0.0:6668
-                * @param sa The structure to convert
-                * @return The string; "<unknown>" if not a valid address
-                */
-               inline std::string satouser(const irc::sockets::sockaddrs& sa) { return sa.str(); }
        }
 }
 
@@ -145,7 +135,7 @@ namespace irc
 class CoreExport ListenSocket : public EventHandler
 {
  public:
-       const reference<ConfigTag> bind_tag;
+       reference<ConfigTag> bind_tag;
        std::string bind_addr;
        int bind_port;
        /** Human-readable bind description */
@@ -164,6 +154,3 @@ class CoreExport ListenSocket : public EventHandler
         */
        void AcceptInternal();
 };
-
-#endif
-