X-Git-Url: https://www.tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fnet_setup.c;h=c413792abbe07def1b38bc7f8fac06f02edfe175;hb=0966cca8ab6dcde2747c717f21d73fd332e04242;hp=d6d145ae1721b9a5d09dd9f7d44914e258883194;hpb=a39a9506cd041a7092a98498b362eaacfd2f33c3;p=tinc diff --git a/src/net_setup.c b/src/net_setup.c index d6d145ae..c413792a 100644 --- a/src/net_setup.c +++ b/src/net_setup.c @@ -571,21 +571,16 @@ void close_network_connections(void) for(node = connection_tree->head; node; node = next) { next = node->next; c = node->data; - - if(c->outgoing) { - if(c->outgoing->ai) - freeaddrinfo(c->outgoing->ai); - free(c->outgoing->name); - free(c->outgoing); - c->outgoing = NULL; - } - + c->outgoing = false; terminate_connection(c, false); } + list_delete_list(outgoing_list); + if(myself && myself->connection) { subnet_update(myself, NULL, false); terminate_connection(myself->connection, false); + free_connection(myself->connection); } for(i = 0; i < listen_sockets; i++) { @@ -610,6 +605,8 @@ void close_network_connections(void) if(myport) free(myport); + EVP_CIPHER_CTX_cleanup(&packet_ctx); + for(i = 0; i < 4; i++) free(envp[i]);