Only add a reflexive address when we're sure it's working.
[tinc] / src / protocol_key.c
index dd54704..d24d4ac 100644 (file)
@@ -400,7 +400,7 @@ bool ans_key_h(connection_t *c, const char *request) {
                        return true;
                }
 
-               if(!*address && from->address.sa.sa_family != AF_UNSPEC) {
+               if(!*address && from->address.sa.sa_family != AF_UNSPEC && to->minmtu) {
                        char *address, *port;
                        logger(DEBUG_PROTOCOL, LOG_DEBUG, "Appending reflexive UDP address to ANS_KEY from %s to %s", from->name, to->name);
                        sockaddr2str(&from->address, &address, &port);