<div dir="ltr">When peer recieves fr->oseqno other than the expected one, it sends VNAK.<br><br><blockquote>if ((iaxs[fr->callno]->iseqno != fr->oseqno) &&<br clear="all"></blockquote><div>but it don't do the same for fr->iseqno. When a peer receives a frame, it uses fr->iseqno without any checking. Here is a sample received packets:<br><br><blockquote><pre>[2015-03-12 13:26:03.071] VERBOSE[6960] chan_iax2.c: Rx-Frame Retry[ No] -- OSeqno: 008 ISeqno: 007 Type: IAX Subclass: ACK
[2015-03-12 13:26:03.071] VERBOSE[6960] chan_iax2.c: Timestamp: 19717ms SCall: 07431 DCall: 25289 <a href="http://45.56.114.174:4566" target="_blank">45.56.114.174:4566</a>
[2015-03-12 13:26:03.099] VERBOSE[6960] chan_iax2.c: Rx-Frame Retry[ No] -- OSeqno: 008 ISeqno: 006 Type: IAX Subclass: LAGRP
[2015-03-12 13:26:03.099] VERBOSE[6960] chan_iax2.c: Timestamp: 20007ms SCall: 07431 DCall: 25289 <a href="http://45.56.114.174:4566" target="_blank">45.56.114.174:4566</a></pre></blockquote>Here, peer received iseqno 7 before 6.<br><br></div><div>More details in this comment: <a href="https://issues.asterisk.org/jira/browse/ASTERISK-24873?focusedCommentId=225569&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-225569" target="_blank">https://issues.asterisk.org/jira/browse/ASTERISK-24873?focusedCommentId=225569&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-225569</a><br><br></div><div>Is is better that the peer sends VNAK when it receives out-of-order fr->inseqno?<br></div><div>-- <br><div><div dir="ltr"><div><div dir="ltr"><div>Yousf Ateya,<br></div><div></div><br></div></div></div></div>
</div></div>
<br>
<pre><font size="1" face="Courier New">This e-mail message is intended only for the use of the intended recipient(s).
The information contained therein may be confidential or privileged,
and its disclosure or reproduction is strictly prohibited.
If you are not the intended recipient, please return it immediately to its sender
at the above address and destroy it.
</font></pre>