From 4f0265dce11d88c48a4e9ee0b23e8b89944190fd Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Thu, 12 Dec 2013 05:36:18 -0500 Subject: [PATCH] fix erroneous double lookup detection --- daemon/call.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/daemon/call.c b/daemon/call.c index a80f3c4..7f785bf 100644 --- a/daemon/call.c +++ b/daemon/call.c @@ -1662,7 +1662,10 @@ got_cs: p = &cs->peers[1]; p2 = &cs->peers[0]; - if (c->lookup_done && matched_relay) { + if (c->lookup_done && matched_relay + && t->stream.port == matched_relay->peer_advertised.port + && IN6_ARE_ADDR_EQUAL(&t->stream.ip46, &matched_relay->peer_advertised.ip46)) + { /* duplicate/stray lookup. don't do anything except replying with something we already have. check whether the direction is reversed or not and return the appropriate details. if no matching stream was found, results are