diff options
author | Jakub Adam <jakub.adam@ktknet.cz> | 2016-05-31 09:27:03 +0000 |
---|---|---|
committer | Olivier CrĂȘte <olivier.crete@collabora.com> | 2016-05-31 14:24:24 -0400 |
commit | 955323915c43b1a066399e61d0ab091f0b1d112b (patch) | |
tree | 0ad71909816c0272df925cabae5bb6644c7f1ffa /agent | |
parent | 2112ebba886d15fd96cc36b9fe3196834acaa892 (diff) | |
download | libnice-955323915c43b1a066399e61d0ab091f0b1d112b.tar.gz |
conncheck: fix pruning conn checks with TCP active sockets
TCP active socket makes a NiceSocket for each peer in conn_check_send()
and this new socket is then stored as CandidateCheckPair's 'sockptr'.
We thus have to look also at the 'sockptr' value when eliminating
sockets which have received HUP from connection checks.
Differential Revision: https://phabricator.freedesktop.org/D1034
Diffstat (limited to 'agent')
-rw-r--r-- | agent/conncheck.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/agent/conncheck.c b/agent/conncheck.c index 70e35c5..57dba2f 100644 --- a/agent/conncheck.c +++ b/agent/conncheck.c @@ -3659,7 +3659,8 @@ conn_check_prune_socket (NiceAgent *agent, NiceStream *stream, NiceComponent *co CandidateCheckPair *p = l->data; if ((p->local != NULL && p->local->sockptr == sock) || - (p->remote != NULL && p->remote->sockptr == sock)) { + (p->remote != NULL && p->remote->sockptr == sock) || + (p->sockptr == sock)) { nice_debug ("Agent %p : Retransmissions failed, giving up on " "connectivity check %p", agent, p); candidate_check_pair_fail (stream, agent, p); |