Store route-set from provisional SIP responses so early-dialog requests can be routed properly

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@340576 65c4cc65-6c06-0410-ace0-fbb531ad65f3
certified/1.8.11
Stefan Schmidt 14 years ago
parent 610a2997dd
commit 3bc7b5d2c9

@ -19434,6 +19434,13 @@ static void handle_response_invite(struct sip_pvt *p, int resp, const char *rest
case 182: /* 182 Queued */
if (!req->ignore && p->invitestate != INV_CANCELLED && sip_cancel_destroy(p))
ast_log(LOG_WARNING, "Unable to cancel SIP destruction. Expect bad things.\n");
/* Store Route-set from provisional SIP responses so
* early-dialog request can be routed properly
* */
parse_ok_contact(p, req);
if (!reinvite) {
build_route(p, req, 1);
}
if (!req->ignore && p->owner) {
if (get_rpid(p, req)) {
/* Queue a connected line update */
@ -19496,6 +19503,13 @@ static void handle_response_invite(struct sip_pvt *p, int resp, const char *rest
case 183: /* Session progress */
if (!req->ignore && (p->invitestate != INV_CANCELLED) && sip_cancel_destroy(p))
ast_log(LOG_WARNING, "Unable to cancel SIP destruction. Expect bad things.\n");
/* Store Route-set from provisional SIP responses so
* early-dialog request can be routed properly
* */
parse_ok_contact(p, req);
if (!reinvite) {
build_route(p, req, 1);
}
if (!req->ignore && p->owner) {
if (get_rpid(p, req)) {
/* Queue a connected line update */

Loading…
Cancel
Save