diff options
author | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-10-31 23:34:22 +0000 |
---|---|---|
committer | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-10-31 23:34:22 +0000 |
commit | a28cc1eebd1dd3d640d5d902196c363462f5dde6 (patch) | |
tree | 0d2a88b03f8c5281247a228fdd7ab275c9642faf | |
parent | 5c5a72cc80723f308fbd4aebd5ed1bbcde1c04d6 (diff) |
Pass redirecting number on PRI calls (bug #2763)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4134 f38db490-d61c-443f-a65b-d21fe96a405b
-rwxr-xr-x | apps/app_dial.c | 2 | ||||
-rwxr-xr-x | channels/chan_zap.c | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/apps/app_dial.c b/apps/app_dial.c index eeb9a97e5..04ea18b00 100755 --- a/apps/app_dial.c +++ b/apps/app_dial.c @@ -839,6 +839,8 @@ static int dial_exec(struct ast_channel *chan, void *data) tmp->chan->cdrflags = chan->cdrflags; if (ast_strlen_zero(tmp->chan->musicclass)) strncpy(tmp->chan->musicclass, chan->musicclass, sizeof(tmp->chan->musicclass) - 1); + if (chan->cid.cid_rdnis) + tmp->chan->cid.cid_rdnis = strdup(chan->cid.cid_rdnis); /* Pass callingpres setting */ tmp->chan->cid.cid_pres = chan->cid.cid_pres; /* Pass type of number */ diff --git a/channels/chan_zap.c b/channels/chan_zap.c index 78233ab84..b544addcd 100755 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -1777,6 +1777,7 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout) pri_sr_set_caller(sr, l, n, p->pri->localdialplan - 1, l ? (p->use_callingpres ? ast->cid.cid_pres : PRES_ALLOWED_USER_NUMBER_PASSED_SCREEN) : PRES_NUMBER_NOT_AVAILABLE); + pri_sr_set_redirecting(sr, ast->cid.cid_rdnis, p->pri->localdialplan - 1, PRES_ALLOWED_USER_NUMBER_PASSED_SCREEN, PRI_REDIR_UNCONDITIONAL); if (pri_setup(p->pri->pri, p->call, sr)) { ast_log(LOG_WARNING, "Unable to setup call to %s\n", c + p->stripmsd); pri_rel(p->pri); |