Do not append an address to ANS_KEY messages if we don't know any address.
authorGuus Sliepen <guus@tinc-vpn.org>
Fri, 4 Jun 2010 14:03:19 +0000 (16:03 +0200)
committerGuus Sliepen <guus@tinc-vpn.org>
Fri, 4 Jun 2010 14:03:19 +0000 (16:03 +0200)
This would let tinc raise an exception when an ANS_KEY request crossed a
DEL_EDGE request for the node sending the key.

src/protocol_key.c

index 67f40af45caa660c93b8a207f2c568920878a6ec..22692bb614e97632d2224bedbd77b1fb28647976 100644 (file)
@@ -229,7 +229,7 @@ bool ans_key_h(connection_t *c) {
                        return true;
                }
 
-               if(!*address) {
+               if(!*address && from->address.sa.sa_family != AF_UNSPEC) {
                        char *address, *port;
                        ifdebug(PROTOCOL) logger(LOG_DEBUG, "Appending reflexive UDP address to ANS_KEY from %s to %s", from->name, to->name);
                        sockaddr2str(&from->address, &address, &port);