<div dir="ltr">Hi Olivier,<div><br></div><div>thanks for the quick answer! We haven't been able to reproduce ourselves yet, so I don't have a stack trace. I'll ask the users from our forum who had the issue to share their data here.</div><div><br></div><div>Lorenzo</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2018-03-05 17:11 GMT+01:00 Olivier Crête <span dir="ltr"><<a href="mailto:olivier.crete@collabora.com" target="_blank">olivier.crete@collabora.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div>Hi,</div><div><br></div><div>Can you reproduce this? Can you get a stack trace?</div><div><br></div><div>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.</div><div><br></div><div>Olivier</div><div><div class="h5"><div><br></div><div>On Mon, 2018-03-05 at 14:49 +0100, Lorenzo Miniero wrote:</div></div></div><blockquote type="cite" style="margin:0 0 0 .8ex;border-left:2px #729fcf solid;padding-left:1ex"><div><div class="h5"><div dir="ltr">Hi,<div><br></div><div>I added some comments on this Phabricator link a few days ago:</div><div><br></div><div><a href="https://phabricator.freedesktop.org/T120" target="_blank">https://phabricator.<wbr>freedesktop.org/T120</a><br></div><div><br></div><div>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.</div><div><br></div><div>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.</div><div><br></div><div><div>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:</div><div><br></div><div><a href="https://github.com/libnice/libnice/blob/master/agent/conncheck.c#L3413" target="_blank">https://github.com/libnice/<wbr>libnice/blob/master/agent/<wbr>conncheck.c#L3413</a><br></div><div><br></div><div>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.</div></div><div><br></div><div>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_<wbr>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.</div><div><br></div><div>Looking forward to your thoughts, thanks in advance,</div><div>Lorenzo</div></div>
</div></div><pre>______________________________<wbr>_________________
nice mailing list
<a href="mailto:nice@lists.freedesktop.org" target="_blank">nice@lists.freedesktop.org</a>
<a href="https://lists.freedesktop.org/mailman/listinfo/nice" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/nice</a><span class="HOEnZb"><font color="#888888">
</font></span></pre></blockquote><span class="HOEnZb"><font color="#888888"><div><span><pre><pre>-- <br></pre>Olivier Crête
<a href="mailto:olivier.crete@collabora.com" target="_blank">olivier.crete@collabora.com</a>
</pre></span></div></font></span></div></blockquote></div><br></div>