From: Mark Michelson Date: Thu, 16 Oct 2008 23:36:49 +0000 (+0000) Subject: Merged revisions 150298,150301 via svnmerge from X-Git-Tag: 1.6.2.0-beta1~1081 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8a1d9d16785ce9c028492b13599751821d160d48;p=thirdparty%2Fasterisk.git Merged revisions 150298,150301 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r150298 | mmichelson | 2008-10-16 18:34:37 -0500 (Thu, 16 Oct 2008) | 10 lines Don't try to call a dialplan function's read callback from the manager's GetVar handler if an invalid channel has been specified. Several dialplan functions, including CHANNEL and SIP_HEADER, do not check for NULL-ness of the channel being passed in. (closes issue #13715) Reported by: makoto ........ r150301 | mmichelson | 2008-10-16 18:35:07 -0500 (Thu, 16 Oct 2008) | 3 lines And don't forget to return on the error condition ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@150302 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/manager.c b/main/manager.c index 15f485cbb2..c8a8a8d3a8 100644 --- a/main/manager.c +++ b/main/manager.c @@ -1805,6 +1805,10 @@ static int action_getvar(struct mansession *s, const struct message *m) } if (varname[strlen(varname) - 1] == ')') { + if (!c) { + astman_send_error(s, m, "No such channel"); + return 0; + } ast_func_read(c, (char *) varname, workspace, sizeof(workspace)); varval = workspace; } else {