diff options
author | Mark Spencer <markster@digium.com> | 2004-04-06 14:02:47 +0000 |
---|---|---|
committer | Mark Spencer <markster@digium.com> | 2004-04-06 14:02:47 +0000 |
commit | 1bbf0d2cf6144c608c2c982bd48299bb7ff1e2c3 (patch) | |
tree | 3cdc49ef9d28cd230c3f84fa300ce8401ce327c8 /channels/chan_sip.c | |
parent | 8cfed866d328659477d71d99dffe335f7b104ce4 (diff) |
Bump branch id on INVITE with auth (bug #1313)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2636 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_sip.c')
-rwxr-xr-x | channels/chan_sip.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index bf7d3bbd3..3119bb130 100755 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -3015,9 +3015,12 @@ static int transmit_invite(struct sip_pvt *p, char *cmd, int sdp, char *auth, ch { struct sip_request req; - if (init) + if (init) { + /* Bump branch even on initial requests */ + p->branch ^= rand(); + snprintf(p->via, sizeof(p->via), "SIP/2.0/UDP %s:%d;branch=z9hG4bK%08x", inet_ntoa(p->ourip), ourport, p->branch); initreqprep(&req, p, cmd, vxml_url); - else + } else reqprep(&req, p, cmd, 0, 1); if (auth) |