[asterisk-commits] mmichelson: branch 1.6.1 r142221 - in /branches/1.6.1: ./ channels/chan_sip.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Tue Sep 9 14:18:26 CDT 2008
Author: mmichelson
Date: Tue Sep 9 14:18:25 2008
New Revision: 142221
URL: http://svn.digium.com/view/asterisk?view=rev&rev=142221
Log:
Merged revisions 142219 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r142219 | mmichelson | 2008-09-09 14:16:30 -0500 (Tue, 09 Sep 2008) | 22 lines
Merged revisions 142218 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r142218 | mmichelson | 2008-09-09 14:15:28 -0500 (Tue, 09 Sep 2008) | 14 lines
Make sure that the branch sent in CANCEL requests
matches the branch of the INVITE it is cancelling.
(closes issue #13381)
Reported by: atca_pres
Patches:
13381v2.patch uploaded by putnopvut (license 60)
Tested by: atca_pres
(closes issue #13198)
Reported by: rickead2000
Tested by: rickead2000
........
................
Modified:
branches/1.6.1/ (props changed)
branches/1.6.1/channels/chan_sip.c
Propchange: branches/1.6.1/
------------------------------------------------------------------------------
Binary property 'trunk-merged' - no diff available.
Modified: branches/1.6.1/channels/chan_sip.c
URL: http://svn.digium.com/view/asterisk/branches/1.6.1/channels/chan_sip.c?view=diff&rev=142221&r1=142220&r2=142221
==============================================================================
--- branches/1.6.1/channels/chan_sip.c (original)
+++ branches/1.6.1/channels/chan_sip.c Tue Sep 9 14:18:25 2008
@@ -1316,6 +1316,7 @@
int authtries; /*!< Times we've tried to authenticate */
int expiry; /*!< How long we take to expire */
long branch; /*!< The branch identifier of this session */
+ long invite_branch; /*!< The branch used when we sent the initial INVITE */
char tag[11]; /*!< Our tag for this session */
int sessionid; /*!< SDP Session ID */
int sessionversion; /*!< SDP Session Version */
@@ -7715,7 +7716,10 @@
seqno = p->ocseq;
}
- if (newbranch) {
+ if (sipmethod == SIP_CANCEL) {
+ p->branch = p->invite_branch;
+ build_via(p);
+ } else if (newbranch) {
p->branch ^= ast_random();
build_via(p);
}
@@ -9088,6 +9092,7 @@
req.method = sipmethod;
if (init) {/* Bump branch even on initial requests */
p->branch ^= ast_random();
+ p->invite_branch = p->branch;
build_via(p);
}
if (init > 1)
More information about the asterisk-commits
mailing list