aboutsummaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorroot <root@f38db490-d61c-443f-a65b-d21fe96a405b>2006-05-02 03:06:29 +0000
committerroot <root@f38db490-d61c-443f-a65b-d21fe96a405b>2006-05-02 03:06:29 +0000
commit5f4f40414a85179d99c1726997a3da9dadc6254d (patch)
tree46f483a713e3f6c985a5e283ddc9bb9ea8d52196 /apps
parentaefb78692b59c3300a2f8e390a33472a7c01f593 (diff)
automerge commit
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2-netsec@24128 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps')
-rw-r--r--apps/app_privacy.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/apps/app_privacy.c b/apps/app_privacy.c
index 04ebf247b..09b1c1556 100644
--- a/apps/app_privacy.c
+++ b/apps/app_privacy.c
@@ -193,13 +193,21 @@ static int privacy_exec (struct ast_channel *chan, void *data)
}
/*Got a number, play sounds and send them on their way*/
- if ((retries < maxretries) && !res ) {
+ if ((retries < maxretries) && res >= 0 ) {
res = ast_streamfile(chan, "privacy-thankyou", chan->language);
if (!res)
res = ast_waitstream(chan, "");
- ast_set_callerid (chan, phone, "Privacy Manager", NULL);
- if (option_verbose > 2)
- ast_verbose (VERBOSE_PREFIX_3 "Changed Caller*ID to %s\n",phone);
+
+ ast_set_callerid (chan, phone, "Privacy Manager", NULL);
+
+ /* Clear the unavailable presence bit so if it came in on PRI
+ * the caller id will now be passed out to other channels
+ */
+ chan->cid.cid_pres &= (AST_PRES_UNAVAILABLE ^ 0xFF);
+
+ if (option_verbose > 2) {
+ ast_verbose (VERBOSE_PREFIX_3 "Changed Caller*ID to %s, callerpres to %d\n",phone,chan->cid.cid_pres);
+ }
pbx_builtin_setvar_helper(chan, "PRIVACYMGRSTATUS", "SUCCESS");
} else {
if (priority_jump || option_priority_jumping)