}
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;
}
}