Merged revisions 7917 via svnmerge from
authorKevin P. Fleming <kpfleming@digium.com>
Mon, 9 Jan 2006 23:06:28 +0000 (23:06 +0000)
committerKevin P. Fleming <kpfleming@digium.com>
Mon, 9 Jan 2006 23:06:28 +0000 (23:06 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r7917 | kpfleming | 2006-01-09 16:48:48 -0600 (Mon, 09 Jan 2006) | 2 lines

re-initialize _all_ sequence numbers when transfer completes

........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7918 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_iax2.c

index c83ce3f..01ee3fa 100644 (file)
@@ -5372,6 +5372,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;
@@ -6582,8 +6583,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 */