From d8c5d338cb87ca0f3092547684a0dfc59b14b87f Mon Sep 17 00:00:00 2001 From: "Kevin P. Fleming" Date: Mon, 9 Jan 2006 22:48:48 +0000 Subject: [PATCH] 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 --- channels/chan_iax2.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c index f7e56a60d7..8ef502db3b 100644 --- a/channels/chan_iax2.c +++ b/channels/chan_iax2.c @@ -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 */