[IOMultiplexerV2] revoked last commit & added addr struct pointers and ip version...
[NextIRCd.git] / src / IOHandler / IOSockets.h
index f804fb6216f98f66aba036eb2970c7d2f9c452e8..8a9048a3f8f4ff3741a6d40f167f6670b7ea6fb6 100644 (file)
@@ -87,6 +87,9 @@ extern struct _IOSocket *iosocket_last;
 #define IOSOCKETFLAG_OVERRIDE_WANT_R  0x00100000
 #define IOSOCKETFLAG_OVERRIDE_WANT_W  0x00200000
 
+/* _IOSocket socket_flags */
+#define IOSOCKETFLAG_DYNAMIC_BIND     0x00400000
+
 /* Parent descriptors */
 #define IOSOCKETFLAG_PARENT_PUBLIC    0x10000000
 #define IOSOCKETFLAG_PARENT_DNSENGINE 0x20000000
@@ -173,9 +176,13 @@ enum IOSocketEventType {
 struct IOSocket {
        void *iosocket;
        
+       struct IODNSAddress *remoteaddr;
+       struct IODNSAddress *localaddr;
+       
        enum IOSocketStatus status;
        int listening : 1;
        int ssl : 1;
+       int ipv6 : 1;
        int parse_delimiter : 1;
        int parse_empty : 1; /* parse "empty" lines (only if parse_delimiter is set) */
        unsigned char delimiters[IOSOCKET_PARSE_DELIMITERS_COUNT];
@@ -206,8 +213,5 @@ void iosocket_send(struct IOSocket *iosocket, const char *data, size_t datalen);
 void iosocket_printf(struct IOSocket *iosocket, const char *text, ...);
 void iosocket_close(struct IOSocket *iosocket);
 
-struct IODNSAddress *iosocket_get_remote_addr(struct IOSocket *iosocket);
-struct IODNSAddress *iosocket_get_local_addr(struct IOSocket *iosocket);
-
 #endif
 #endif