X-Git-Url: https://tinc-vpn.org/git/browse?p=tinc;a=blobdiff_plain;f=src%2Fconnection.c;h=46b11c8546dce5aafc11c99ea79b461b07144656;hp=9b752fadaa3d1b292e36702c933ffbcf08897bf5;hb=985d19caf20058db3c764f0f6fbeafa8bcc59fcc;hpb=80e15d8b96e5313b33c91003b1f75d7f6db9924e diff --git a/src/connection.c b/src/connection.c index 9b752fad..46b11c85 100644 --- a/src/connection.c +++ b/src/connection.c @@ -1,6 +1,6 @@ /* connection.c -- connection list management - Copyright (C) 2000-2012 Guus Sliepen , + Copyright (C) 2000-2016 Guus Sliepen , 2000-2005 Ivo Timmermans 2008 Max Rijevski @@ -73,6 +73,15 @@ void free_connection_partially(connection_t *c) { c->hischallenge = NULL; c->outbuf = NULL; + c->status.pinged = false; + c->status.active = false; + c->status.connecting = false; + c->status.timeout = false; + c->status.encryptout = false; + c->status.decryptin = false; + c->status.mst = false; + + c->options = 0; c->buflen = 0; c->reqlen = 0; c->tcplen = 0; @@ -80,6 +89,10 @@ void free_connection_partially(connection_t *c) { c->outbuflen = 0; c->outbufsize = 0; c->outbufstart = 0; + c->last_ping_time = 0; + c->last_flushed_time = 0; + c->inbudget = 0; + c->outbudget = 0; if(c->inctx) { EVP_CIPHER_CTX_cleanup(c->inctx); @@ -128,7 +141,7 @@ void dump_connections(void) { for(node = connection_tree->head; node; node = node->next) { c = node->data; logger(LOG_DEBUG, " %s at %s options %x socket %d status %04x outbuf %d/%d/%d", - c->name, c->hostname, c->options, c->socket, bitfield_to_int(&c->status, sizeof c->status), + c->name, c->hostname, c->options, c->socket, bitfield_to_int(&c->status, sizeof(c->status)), c->outbufsize, c->outbufstart, c->outbuflen); }