summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlle Johansson <oej@edvina.net>2006-11-16 15:12:30 +0000
committerOlle Johansson <oej@edvina.net>2006-11-16 15:12:30 +0000
commita427a2a89a03f8d32272504d14cea9da10a8095d (patch)
tree809d31ec081e66c1d2bdb31b89b2eebfe6febaed
parent5fb52f824474512a09f2b65e6bdbe53c9446f402 (diff)
- CANCEL never uses authentication
- Add docs on canreinvite git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47734 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r--channels/chan_sip.c6
-rw-r--r--configs/sip.conf.sample6
2 files changed, 9 insertions, 3 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 933b62cac..2d380e9f1 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -3422,7 +3422,7 @@ static int sip_hangup(struct ast_channel *ast)
/* Do we need a timer here if we don't hear from them at all? */
} else {
/* Send a new request: CANCEL */
- transmit_request_with_auth(p, SIP_CANCEL, p->ocseq, XMIT_RELIABLE, FALSE);
+ transmit_request(p, SIP_CANCEL, p->ocseq, XMIT_RELIABLE, FALSE);
/* Actually don't destroy us yet, wait for the 487 on our original
INVITE, but do set an autodestruct just in case we never get it. */
needdestroy = 0;
@@ -11647,11 +11647,11 @@ static void check_pendings(struct sip_pvt *p)
if (ast_test_flag(&p->flags[0], SIP_PENDINGBYE)) {
/* if we can't BYE, then this is really a pending CANCEL */
if (!ast_test_flag(&p->flags[0], SIP_CAN_BYE))
- transmit_request_with_auth(p, SIP_CANCEL, p->ocseq, 1, 0);
+ transmit_request(p, SIP_CANCEL, p->ocseq, XMIT_RELIABLE, FALSE);
/* Actually don't destroy us yet, wait for the 487 on our original
INVITE, but do set an autodestruct just in case we never get it. */
else
- transmit_request_with_auth(p, SIP_BYE, 0, 1, 1);
+ transmit_request_with_auth(p, SIP_BYE, 0, XMIT_RELIABLE, TRUE);
ast_clear_flag(&p->flags[0], SIP_PENDINGBYE);
sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT);
} else if (ast_test_flag(&p->flags[0], SIP_NEEDREINVITE)) {
diff --git a/configs/sip.conf.sample b/configs/sip.conf.sample
index 169941e08..eeb29a18e 100644
--- a/configs/sip.conf.sample
+++ b/configs/sip.conf.sample
@@ -266,6 +266,12 @@ srvlookup=yes ; Enable DNS SRV lookups on outbound calls
; route = Assume NAT, don't send rport
; (work around more UNIDEN bugs)
+;----------------------------------- MEDIA HANDLING --------------------------------
+; By default, Asterisk tries to re-invite the audio to an optimal path. If there's
+; no reason for Asterisk to stay in the media path, the media will be redirected.
+; This does not really work with in the case where Asterisk is outside and have
+; clients on the inside of a NAT. In that case, you want to set canreinvite=nonat
+;
;canreinvite=yes ; Asterisk by default tries to redirect the
; RTP media stream (audio) to go directly from
; the caller to the callee. Some devices do not