summaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorFabrice Bellet <fabrice@bellet.info>2017-06-27 11:01:14 +0200
committerOlivier CrĂȘte <olivier.crete@collabora.com>2017-09-05 15:01:02 -0400
commit6fe64fdbc53ab87dffd79972f492665cff14c0a0 (patch)
treeec2c97bb761142e30eb56f710f120e78b44b54d2 /ChangeLog
parent36f306f4a95f1c2b3e9c584b5a645a78e231c020 (diff)
downloadlibnice-6fe64fdbc53ab87dffd79972f492665cff14c0a0.tar.gz
conncheck: update the state of triggered checks pairs
With this patch, we fix an ambiguity of some parts of the spec, when the document refers to in-progress pairs, that also concern pairs in the triggered checks list. The first cast is in section 7.1.2.5, "Updating the Nominated Flag", when the in-progress pair will be nominated on response arrival. This is handled in function priv_mark_pair_nominated(), when a pair is put to the triggered check list in reaction to a matching inbound stun request. Such a pair in priv_mark_pair_nominated() will _always_ be in the triggered check list, from the previously called function priv_schedule_triggered_check(). The second case is in section 8.1.2, "Updating State" when an in-progress pair stops its retransmission when another pair of higher priority is already nominated. This is handled by function priv_prune_pending_checks(). Until now, pairs enqueued in the triggered check list move transiently to state waiting, according to 7.2.1.4. But this state causes wrong decisions in the two previous cases, because such pairs should in fact rather be considered "like in-progress", to avoid discarding them inadvertantly. This patch update the state of the triggered check list pairs to in-progress. It allows to remove exception handling cited above: the code is a bit more simple, and allows some refactoring in priv_mark_pair_nominated() between RFC and compatibility modes. Differential Revision: https://phabricator.freedesktop.org/D1762
Diffstat (limited to 'ChangeLog')
0 files changed, 0 insertions, 0 deletions