From: Seven Du Date: Sat, 3 Jan 2015 08:06:35 +0000 (+0800) Subject: fix fsapi in verto, the json_api_function expects cmd & arg in the data object X-Git-Tag: v1.4.16~1^2~64 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0bec209a;p=thirdparty%2Ffreeswitch.git fix fsapi in verto, the json_api_function expects cmd & arg in the data object --- diff --git a/src/mod/endpoints/mod_verto/mod_verto.c b/src/mod/endpoints/mod_verto/mod_verto.c index 7616416982..67a8dec072 100644 --- a/src/mod/endpoints/mod_verto/mod_verto.c +++ b/src/mod/endpoints/mod_verto/mod_verto.c @@ -3571,10 +3571,15 @@ static switch_bool_t jsapi_func(const char *method, cJSON *params, jsock_t *jsoc } if (jsock->allowed_fsapi && !strcmp(function, "fsapi")) { - cJSON *cmd = cJSON_GetObjectItem(params, "cmd"); - cJSON *arg = cJSON_GetObjectItem(params, "arg"); - - if (cmd->type == cJSON_String && cmd->valuestring && !auth_api_command(jsock, cmd->valuestring, arg ? arg->valuestring : NULL)) { + cJSON *data = cJSON_GetObjectItem(params, "data"); + cJSON *cmd; + cJSON *arg; + + if (data && + (cmd = cJSON_GetObjectItem(data, "cmd")) && + (arg = cJSON_GetObjectItem(data, "arg")) && + cmd->type == cJSON_String && cmd->valuestring && + !auth_api_command(jsock, cmd->valuestring, arg ? arg->valuestring : NULL)) { return SWITCH_FALSE; } }