mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
re-initialize _all_ sequence numbers when transfer completes
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@7917 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -5369,6 +5369,7 @@ static int complete_transfer(int callno, struct iax_ies *ies)
|
||||
memset(&pvt->transfer, 0, sizeof(pvt->transfer));
|
||||
/* Reset sequence numbers */
|
||||
pvt->oseqno = 0;
|
||||
pvt->rseqno = 0;
|
||||
pvt->iseqno = 0;
|
||||
pvt->aseqno = 0;
|
||||
pvt->peercallno = peercallno;
|
||||
@@ -6579,8 +6580,8 @@ static int socket_read(int *id, int fd, short events, void *cbdata)
|
||||
/* Handle implicit ACKing unless this is an INVAL, and only if this is
|
||||
from the real peer, not the transfer peer */
|
||||
if (!inaddrcmp(&sin, &iaxs[fr.callno]->addr) &&
|
||||
(((f.subclass != IAX_COMMAND_INVAL)) ||
|
||||
(f.frametype != AST_FRAME_IAX))) {
|
||||
((f.subclass != IAX_COMMAND_INVAL) ||
|
||||
(f.frametype != AST_FRAME_IAX))) {
|
||||
unsigned char x;
|
||||
/* XXX This code is not very efficient. Surely there is a better way which still
|
||||
properly handles boundary conditions? XXX */
|
||||
|
Reference in New Issue
Block a user