[Asterisk-cvs] asterisk/channels chan_sip.c,1.799,1.800

markster markster
Wed Aug 3 00:21:57 CDT 2005


Update of /usr/cvsroot/asterisk/channels
In directory mongoose.digium.com:/tmp/cvs-serv21869/channels

Modified Files:
	chan_sip.c 
Log Message:
Don't ignore ACk packets (bug #4861)


Index: chan_sip.c
===================================================================
RCS file: /usr/cvsroot/asterisk/channels/chan_sip.c,v
retrieving revision 1.799
retrieving revision 1.800
diff -u -d -r1.799 -r1.800
--- chan_sip.c	3 Aug 2005 03:50:53 -0000	1.799
+++ chan_sip.c	3 Aug 2005 04:26:10 -0000	1.800
@@ -9617,10 +9617,10 @@
 	if (option_debug > 2)
 		ast_log(LOG_DEBUG, "**** Received %s (%d) - Command in SIP %s\n", sip_methods[p->method].text, sip_methods[p->method].id, cmd); 
 
-	if (p->icseq && (p->icseq > seqno)) {
+	if (p->icseq && (p->icseq > seqno) && req->method != SIP_ACK) {
 		ast_log(LOG_DEBUG, "Ignoring too old SIP packet packet %d (expecting >= %d)\n", seqno, p->icseq);
 		return -1;
-	} else if (p->icseq && (p->icseq == seqno) && (p->method != SIP_CANCEL|| ast_test_flag(p, SIP_ALREADYGONE))) {
+	} else if (p->icseq && (p->icseq == seqno) && req->method != SIP_ACK &&(p->method != SIP_CANCEL|| ast_test_flag(p, SIP_ALREADYGONE))) {
 		/* ignore means "don't do anything with it" but still have to 
 		   respond appropriately.  We do this if we receive a repeat of
 		   the last sequence number  */




More information about the svn-commits mailing list