Set status.proxy_passed early for Proxy = exec.
[tinc] / src / connection.c
index 9b752fa..d27e6fd 100644 (file)
@@ -1,6 +1,6 @@
 /*
     connection.c -- connection list management
-    Copyright (C) 2000-2012 Guus Sliepen <guus@tinc-vpn.org>,
+    Copyright (C) 2000-2016 Guus Sliepen <guus@tinc-vpn.org>,
                   2000-2005 Ivo Timmermans
                   2008      Max Rijevski <maksuf@gmail.com>
 
@@ -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);