From: Joshua Colp Date: Thu, 3 Oct 2013 19:05:36 +0000 (+0000) Subject: Fix a crash caused by muting and unmuting a channel in ARI without specifying a direc... X-Git-Tag: 12.0.0-alpha2~24^2~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3735f13434675c6ec46e5962ec305b5bd0bd11de;p=thirdparty%2Fasterisk.git Fix a crash caused by muting and unmuting a channel in ARI without specifying a direction. (closes issue ASTERISK-22637) Reported by: Scott Griepentrog Patch by Matt Jordan, whose office I have taken over in the name of Canada. git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/12@400401 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/res/ari/resource_channels.c b/res/ari/resource_channels.c index 4d5228168a..aaf04a3f88 100644 --- a/res/ari/resource_channels.c +++ b/res/ari/resource_channels.c @@ -152,6 +152,13 @@ void ast_ari_mute_channel(struct ast_variable *headers, struct ast_mute_channel_ return; } + if (ast_strlen_zero(args->direction)) { + ast_ari_response_error( + response, 400, "Bad Request", + "Direction is required"); + return; + } + if (!strcmp(args->direction, "in")) { direction = AST_MUTE_DIRECTION_READ; } else if (!strcmp(args->direction, "out")) { @@ -181,6 +188,13 @@ void ast_ari_unmute_channel(struct ast_variable *headers, struct ast_unmute_chan return; } + if (ast_strlen_zero(args->direction)) { + ast_ari_response_error( + response, 400, "Bad Request", + "Direction is required"); + return; + } + if (!strcmp(args->direction, "in")) { direction = AST_MUTE_DIRECTION_READ; } else if (!strcmp(args->direction, "out")) {