diff options
author | mmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-12-19 23:34:57 +0000 |
---|---|---|
committer | mmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-12-19 23:34:57 +0000 |
commit | 83a4b299245d4b0ea76ef2234ef6b4597393c6ce (patch) | |
tree | 0356272ce81a6e605d3d2322e40187c011a7abd3 /channels | |
parent | 37b839df49d82dcbdc7feae0c7cc4f42c5a2409c (diff) |
Backport of AUDIOHOOK_INHERIT for Asterisk 1.4
(closes issue #13538)
Reported by: mbit
Patches:
13538.patch uploaded by putnopvut (license 60)
Tested by: putnopvut
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@166157 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_sip.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index b3367e488..284670ad1 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -14189,7 +14189,6 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, int char *uri = ast_strdupa(req->rlPart2); char *at = strchr(uri, '@'); char *peerorhost; - struct sip_pkt *pkt = NULL; if (option_debug > 2) { ast_log(LOG_DEBUG, "Potential spiral detected. Original RURI was %s, new RURI is %s\n", p->initreq.rlPart2, req->rlPart2); } @@ -14200,14 +14199,12 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, int if ((peerorhost = strchr(uri, ':'))) { *peerorhost++ = '\0'; } - create_addr(p, peerorhost); ast_string_field_free(p, theirtag); - for (pkt = p->packets; pkt; pkt = pkt->next) { - if (pkt->seqno == p->icseq && pkt->method == SIP_INVITE) { - AST_SCHED_DEL(sched, pkt->retransid); - } - } - return transmit_invite(p, SIP_INVITE, 1, 3); + /* Treat this as if there were a call forward instead... + */ + ast_string_field_set(p->owner, call_forward, peerorhost); + ast_queue_control(p->owner, AST_CONTROL_BUSY); + return 0; } } |