diff options
author | jpeeler <jpeeler@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-10-03 20:44:22 +0000 |
---|---|---|
committer | jpeeler <jpeeler@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-10-03 20:44:22 +0000 |
commit | 56652203ad96893ce1fe199a42476fda4e0d1067 (patch) | |
tree | 91e60412eb8d0c7874ce35a0e408e1e003d1a788 /res/res_agi.c | |
parent | 6bd68a1eb509eb5d1bc37f77296819a10bca9062 (diff) |
(closes issue #13425)
Reported by: mdu113
Tested by: mdu113
Similar to r143204, masquerade the channel in the case of Park being called from AGI.
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@146129 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'res/res_agi.c')
-rw-r--r-- | res/res_agi.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/res/res_agi.c b/res/res_agi.c index 20bb9331b..a60155087 100644 --- a/res/res_agi.c +++ b/res/res_agi.c @@ -64,6 +64,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") #include "asterisk/lock.h" #include "asterisk/strings.h" #include "asterisk/agi.h" +#include "asterisk/features.h" #define MAX_ARGS 128 #define MAX_COMMANDS 128 @@ -1110,6 +1111,9 @@ static int handle_exec(struct ast_channel *chan, AGI *agi, int argc, char **argv app = pbx_findapp(argv[1]); if (app) { + if(!strcasecmp(argv[1], PARK_APP_NAME)) { + ast_masq_park_call(chan, NULL, 0, NULL); + } res = pbx_exec(chan, app, argv[2]); } else { ast_log(LOG_WARNING, "Could not find application (%s)\n", argv[1]); @@ -2035,7 +2039,7 @@ static int agi_exec_full(struct ast_channel *chan, void *data, int enhanced, int int fds[2]; int efd = -1; int pid; - char *stringp; + char *stringp; AGI agi; if (ast_strlen_zero(data)) { |