summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabrice Bellet <fabrice@bellet.info>2017-11-30 20:11:22 +0100
committerOlivier CrĂȘte <olivier.crete@collabora.com>2018-03-23 13:56:20 -0400
commita9ac0487b0d1708d780d7c0b7a2206c71a8c7163 (patch)
treed0a2c6d25d7a88db9cb123353287303d7a3c6989
parentea05a3d51990d17bbe25984eb5730849f46bfae0 (diff)
downloadlibnice-a9ac0487b0d1708d780d7c0b7a2206c71a8c7163.tar.gz
discovery: ignore all non-relay local candidates when relay is forced
The tcp server reflexive discovered local candidates must be ignored when force_relay is set. Reviewed-by: Olivier CrĂȘte <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D1899
-rw-r--r--agent/discovery.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/agent/discovery.c b/agent/discovery.c
index 4cc99c2..e2142a2 100644
--- a/agent/discovery.c
+++ b/agent/discovery.c
@@ -688,7 +688,8 @@ discovery_discover_tcp_server_reflexive_candidates (
caddr = c->addr;
nice_address_set_port (&caddr, 0);
- if (c->transport != NICE_CANDIDATE_TRANSPORT_UDP &&
+ if (agent->force_relay == FALSE &&
+ c->transport != NICE_CANDIDATE_TRANSPORT_UDP &&
c->type == NICE_CANDIDATE_TYPE_HOST &&
nice_address_equal (&base_addr, &caddr)) {
nice_address_set_port (address, nice_address_get_port (&c->addr));