[libnice] Assert due to wrong transition

Olivier CrĂȘte olivier.crete at collabora.com
Mon Mar 5 16:11:43 UTC 2018


Hi,
Can you reproduce this? Can you get a stack trace?
I don't think it should get to that line in the code before being in
CONNECTING at the very minimum. If that happens, we have a more complex
bug on our hands.
Olivier
On Mon, 2018-03-05 at 14:49 +0100, Lorenzo Miniero wrote:
> Hi,
> I added some comments on this Phabricator link a few days ago:
> 
> https://phabricator.freedesktop.org/T120
> 
> but I suspect it's unmonitored, so I thought I'd write here as well.
> Apologies if you got the same info more than once.
> 
> Basically, some Janus users recently switched to libnice master and
> encountered a crash originated by a wrong state transition. Digging
> in the changes since 0.1.13, we found out about the g_assert that can
> get libnice to crash if the ICE state transition is considered to be
> invalid.
> 
> From the feedback we got on our forums, one of the crashes definitely
> occurred while trying to switch from GATHERING to CONNECTED, which
> does indeed seem not to be permitted in your state machine. A
> colleague had a look at the code, and found what may be a possibile
> state violation in conncheck.c:
> 
> https://github.com/libnice/libnice/blob/master/agent/conncheck.c#L341
> 3
> 
> Apparently, the only condition avoiding a transition to CONNECTED is
> a state different from READY, which includes GATHERING too. Neither
> of us are experts in the libnice internals, though, so not sure if
> this is a red herring.
> 
> Does that sound like a good place to look into? If not, what may be
> the issue? Can it be that this unallowed transition is facilitated by
> our usage of trickle ICE? A quick "hack" in this specific instance
> might be simply "allowing" the GATHERING to CONNECTED transition
> in agent_signal_component_state_change, but 1) there might be other
> transitions we're not aware of, and 2) not sure if this would just
> hide what might be a lingering problem that could come back to bite
> later.
> 
> Looking forward to your thoughts, thanks in advance,
> Lorenzo
> 
> _______________________________________________
> nice mailing list
> nice at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/nice
-- 
Olivier CrĂȘte
olivier.crete at collabora.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/nice/attachments/20180305/022ca0fc/attachment.html>


More information about the nice mailing list