Merge remote-tracking branch 'remotes/IOMultiplexer/v2'
authorpk910 <philipp@zoelle1.de>
Sun, 20 Jul 2014 22:06:08 +0000 (00:06 +0200)
committerpk910 <philipp@zoelle1.de>
Sun, 20 Jul 2014 22:06:08 +0000 (00:06 +0200)
Conflicts:
src/IOHandler/IOSockets.c

src/IOHandler/IOSockets.c

index 63a4115ebb49843dc307ecc817b8e033806a9b8e..de4a2be6ffd35234ccdf13978155971bf1e25f66 100644 (file)
@@ -801,6 +801,11 @@ void iosocket_close(struct IOSocket *iosocket) {
 }
 
 struct IODNSAddress *iosocket_get_remote_addr(struct IOSocket *iosocket) {
+       struct _IOSocket *iosock = iosocket->iosocket;
+       if(iosock == NULL) {
+               iolog_trigger(IOLOG_WARNING, "called iosocket_get_remote_addr for destroyed IOSocket in %s:%d", __FILE__, __LINE__);
+               return;
+       }
        if(iosock->socket_flags & IOSOCKETFLAG_PENDING_DESTDNS)
                return NULL;
        if(!iosock->dest.addr.addresslen)
@@ -809,6 +814,11 @@ struct IODNSAddress *iosocket_get_remote_addr(struct IOSocket *iosocket) {
 }
 
 struct IODNSAddress *iosocket_get_local_addr(struct IOSocket *iosocket) {
+       struct _IOSocket *iosock = iosocket->iosocket;
+       if(iosock == NULL) {
+               iolog_trigger(IOLOG_WARNING, "called iosocket_get_local_addr for destroyed IOSocket in %s:%d", __FILE__, __LINE__);
+               return;
+       }
        if(iosock->socket_flags & IOSOCKETFLAG_PENDING_BINDDNS)
                return NULL;
        if(!iosock->bind.addr.addresslen)