aboutsummaryrefslogtreecommitdiffstats
path: root/apps/app_dial.c
diff options
context:
space:
mode:
authorrmudgett <rmudgett@f38db490-d61c-443f-a65b-d21fe96a405b>2010-07-23 22:11:23 +0000
committerrmudgett <rmudgett@f38db490-d61c-443f-a65b-d21fe96a405b>2010-07-23 22:11:23 +0000
commita201498eb6a975312d27636d0b1fc8f2e1f08cee (patch)
tree7e5385942df366c6de905844fc8567e676b302a7 /apps/app_dial.c
parent1ac598372b774c2b76a295d367c5b1f9b6ce897a (diff)
Merged revisions 279206 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r279206 | rmudgett | 2010-07-23 16:56:44 -0500 (Fri, 23 Jul 2010) | 7 lines SIP promiscuous redirect could fail to dial the redirect. The ast_channel was created with one variable to ast_request() but the call to ast_call() that initiates the outgoing call was using a different variable. The two variables are not equivalent if the call_forward string included a channel technology specifier. e.g., SIP/200 ........ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.2@279207 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_dial.c')
-rw-r--r--apps/app_dial.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/apps/app_dial.c b/apps/app_dial.c
index 61b3fa105..f5309f5ed 100644
--- a/apps/app_dial.c
+++ b/apps/app_dial.c
@@ -754,7 +754,9 @@ static void do_forward(struct chanlist *o,
ast_channel_inherit_variables(in, o->chan);
ast_channel_datastore_inherit(in, o->chan);
} else
- ast_log(LOG_NOTICE, "Unable to create local channel for call forward to '%s/%s' (cause = %d)\n", tech, stuff, cause);
+ ast_log(LOG_NOTICE,
+ "Forwarding failed to create channel to dial '%s/%s' (cause = %d)\n",
+ tech, stuff, cause);
}
if (!c) {
ast_clear_flag64(o, DIAL_STILLGOING);
@@ -785,8 +787,9 @@ static void do_forward(struct chanlist *o,
S_REPLACE(c->cid.cid_ani, ast_strdup(in->cid.cid_ani));
}
S_REPLACE(c->cid.cid_rdnis, ast_strdup(S_OR(in->macroexten, in->exten)));
- if (ast_call(c, tmpchan, 0)) {
- ast_log(LOG_NOTICE, "Failed to dial on local channel for call forward to '%s'\n", tmpchan);
+ if (ast_call(c, stuff, 0)) {
+ ast_log(LOG_NOTICE, "Forwarding failed to dial '%s/%s'\n",
+ tech, stuff);
ast_clear_flag64(o, DIAL_STILLGOING);
ast_hangup(original);
ast_hangup(c);