summaryrefslogtreecommitdiff
path: root/channels
diff options
context:
space:
mode:
authorOlle Johansson <oej@edvina.net>2009-01-27 15:00:19 +0000
committerOlle Johansson <oej@edvina.net>2009-01-27 15:00:19 +0000
commita0a8a4d68e10b2c7e08e3014f06c9c800d18383f (patch)
tree40fad4e1f257898c804fec45b3b3c606bdf3640b /channels
parent4c0351f5e0e02b16c073cfc3d528d678f2e83e87 (diff)
Solving the same issue, but a bit different in trunk...
Merged revisions 171527 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r171527 | oej | 2009-01-27 15:33:20 +0100 (Tis, 27 Jan 2009) | 13 lines Use the same branch tag in CANCEL as in INVITE Originally putnopvut implemented some changes in revision 142079 that according to the bug report seemed to have worked then, but somehow fails now. I guess code, as humans, get old and forget stuff. Anyway, this bug caused CANCEL not to work with picky systems. Thanks Fredrik for pointing out where the bug in the SIP messaging was. (closes issue #14346) Reported by: oej Patches: bug14346.diff uploaded by oej (license 306) Tested by: oej ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@171528 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_sip.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 6e2f44986..97dba7987 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -9817,7 +9817,8 @@ static int transmit_invite(struct sip_pvt *p, int sipmethod, int sdp, int init)
if (init > 1)
initreqprep(&req, p, sipmethod);
else
- reqprep(&req, p, sipmethod, 0, 1);
+ /* If init=1, we should not generate a new branch. If it's 0, we need a new branch. */
+ reqprep(&req, p, sipmethod, 0, init ? 0 : 1);
if (p->options && p->options->auth)
add_header(&req, p->options->authheader, p->options->auth);