From: Guus Sliepen Date: Thu, 14 Nov 2019 20:48:02 +0000 (+0100) Subject: Fix logic error preventing fast update of reflexive address. X-Git-Url: http://git.meshlink.io/?p=meshlink;a=commitdiff_plain;h=009b6208f5a15e932c7e85f7e357a6c821770274;hp=90b9bce86573d76f067640b486178a01291c6e93 Fix logic error preventing fast update of reflexive address. When we are trying to communicate with peers that don't know our reflexive address, and we just learned our own one, we want to inform those peers of it immediately, so they can send PMTU probes to the right address. A logic error prevented this from happening in the common case. --- diff --git a/src/protocol_key.c b/src/protocol_key.c index 8a1d6000..480019e7 100644 --- a/src/protocol_key.c +++ b/src/protocol_key.c @@ -354,7 +354,7 @@ bool ans_key_h(meshlink_handle_t *mesh, connection_t *c, const char *request) { /* Inform all other nodes we want to communicate with and which are reachable via this connection */ for splay_each(node_t, n, mesh->nodes) { - if(n->nexthop == c->node) { + if(n->nexthop != c->node) { continue; }