[asterisk-dev] [Code Review] IAX2 retransmit with encryption enabled fix
Russell Bryant
russell at digium.com
Thu Mar 12 07:21:29 CDT 2009
On Mar 11, 2009, at 4:07 PM, Tim Panton wrote:
> I don't understand the cause of the problem.
> Why does the iseq have to be updated?
I think strictly speaking, it does not _have_ to be updated. The
problem being fixed is that the existing code tried to update it, but
the way it did it was totally broken, as it was writing it into a
frame that was already encrypted. So, as a result, retransmissions
within an encrypted call were totally broken.
> I realize that _strictly_ the iseq indicates all the packets that we
> have seen to date,
> but since it is only treated as an ack why would it be bad if re-
> transmit just re-sent the
> original packet unaltered (except for the retransmit bit flag -
> which isn't in the encrypted
> part of the packet) ?
I would agree that just removing the line of code that attempted to
update the iseqno would have fixed the problem. However, would you
agree that it is ideal that we send an updated iseqno when we do a
retransmission?
That way, the other side doesn't bother retransmitting frames that we
have already received and processed.
--
Russell Bryant
Digium, Inc. | Senior Software Engineer, Open Source Team Lead
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: www.digium.com & www.asterisk.org
More information about the asterisk-dev
mailing list