Add stricter checks for netnames.
[tinc] / src / connection.c
index 9c45978..0e61132 100644 (file)
@@ -48,21 +48,23 @@ void exit_connections(void) {
 }
 
 connection_t *new_connection(void) {
-       return xmalloc_and_zero(sizeof(connection_t));
+       return xzalloc(sizeof(connection_t));
 }
 
 void free_connection(connection_t *c) {
        if(!c)
                return;
 
+#ifndef DISABLE_LEGACY
        cipher_close(c->incipher);
        digest_close(c->indigest);
        cipher_close(c->outcipher);
        digest_close(c->outdigest);
+       rsa_free(c->rsa);
+#endif
 
        sptps_stop(&c->sptps);
        ecdsa_free(c->ecdsa);
-       rsa_free(c->rsa);
 
        free(c->hischallenge);