Only free members of connection_t that have been allocated.
authorGuus Sliepen <guus@tinc-vpn.org>
Mon, 12 Mar 2007 17:55:43 +0000 (17:55 +0000)
committerGuus Sliepen <guus@tinc-vpn.org>
Mon, 12 Mar 2007 17:55:43 +0000 (17:55 +0000)
src/connection.c

index 1f2f96c..b6ce517 100644 (file)
@@ -79,15 +79,25 @@ void free_connection(connection_t *c)
 {
        cp();
 
-       if(c) {
+       if(!c)
+               return;
+
+       if(c->hostname)
                free(c->hostname);
+
+       if(c->inkey)
                free(c->inkey);
+
+       if(c->outkey)
                free(c->outkey);
+
+       if(c->mychallenge)
                free(c->mychallenge);
+
+       if(c->hischallenge)
                free(c->hischallenge);
-               event_del(&c->ev);
-       }
 
+       event_del(&c->ev);
        free(c);
 }