X-Git-Url: https://www.tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fprotocol_key.c;h=ec5a690f600810044dc81bf7afc90a2c7c44a311;hb=886a6f61a1f4cc48a77b42d10f34f9126377d904;hp=4187538b6e3f39f9be301a4ba9dc3042cb2ce836;hpb=2911af6e23d0dba6d771fcd590551a84bd9dc932;p=tinc diff --git a/src/protocol_key.c b/src/protocol_key.c index 4187538b..ec5a690f 100644 --- a/src/protocol_key.c +++ b/src/protocol_key.c @@ -156,7 +156,7 @@ bool send_ans_key(node_t *to) { // Reset sequence number and late packet window mykeyused = true; to->received_seqno = 0; - memset(to->late, 0, sizeof(to->late)); + if(replaywin) memset(to->late, 0, replaywin); return send_request(to->nexthop->connection, "%d %s %s %s %d %d %zu %d", ANS_KEY, myself->name, to->name, key, @@ -216,7 +216,7 @@ bool ans_key_h(connection_t *c, char *request) { 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);