]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/socket.h
DO NOT USE THIS COMMIT - if you do, most of the modules wont work.
[user/henk/code/inspircd.git] / include / socket.h
index 6264b196f3ab78de6d56ebc965bd818b6cd6404a..4e7d8919252b51c84c61a26c78d4382ad14af913 100644 (file)
@@ -2,12 +2,9 @@
  *       | Inspire Internet Relay Chat Daemon |
  *       +------------------------------------+
  *
- *  InspIRCd is copyright (C) 2002-2006 ChatSpike-Dev.
- *                       E-mail:
- *                <brain@chatspike.net>
- *               <Craig@chatspike.net>
- *     
- * Written by Craig Edwards, Craig McLure, and others.
+ *  InspIRCd: (C) 2002-2007 InspIRCd Development Team
+ * See: http://www.inspircd.org/wiki/index.php/Credits
+ *
  * This program is free but copyrighted software; see
  *            the file COPYING for details.
  *
@@ -114,7 +111,12 @@ namespace irc
                 * @param a A human-readable address
                 * @param n An insp_inaddr struct which the result
                 * will be copied into on success.
-                * @return This function will return 0 upon success,
+                * @return This method will return a negative value if address
+                * does not contain a valid address family. 0 if the address is
+                * does not contain a valid string representing a valid network
+                * address. A positive value is returned if the network address
+                * was successfully converted.
+
                 * or any other number upon failure.
                 */
                int insp_aton(const char* a, insp_inaddr* n);
@@ -134,7 +136,7 @@ namespace irc
                 * or a negative value upon failure (negative values are invalid file
                 * descriptors)
                 */
-               int OpenTCPSocket(); 
+               int OpenTCPSocket(char* addr, int socktype = SOCK_STREAM);
        };
 };
 
@@ -148,6 +150,8 @@ class ListenSocket : public EventHandler
        /** The creator/owner of this object
         */
        InspIRCd* ServerInstance;
+       std::string desc;
+       int family;
  public:
        /** Create a new listening socket
         */
@@ -155,6 +159,20 @@ class ListenSocket : public EventHandler
        /** Handle an I/O event
         */
        void HandleEvent(EventType et, int errornum = 0);
+       /** Close the socket
+        */
+       ~ListenSocket();
+       /** Set descriptive text
+        */
+       void SetDescription(const std::string &description)
+       {
+               desc = description;
+       }
+
+       const std::string& GetDescription()
+       {
+               return desc;
+       }
 };
 
 #endif