From 551ce4c46f0a497829585a4c640a4eebb2148df9 Mon Sep 17 00:00:00 2001 From: Dragos Oancea Date: Wed, 5 Dec 2018 21:30:03 -0500 Subject: [PATCH] FS-11554: fix crash in conference API when no param given to "moh". --- .../applications/mod_conference/conference_api.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/mod/applications/mod_conference/conference_api.c b/src/mod/applications/mod_conference/conference_api.c index ec9fee5724..3e15aa9fd8 100644 --- a/src/mod/applications/mod_conference/conference_api.c +++ b/src/mod/applications/mod_conference/conference_api.c @@ -2709,6 +2709,9 @@ switch_status_t conference_api_sub_file_seek(conference_obj_t *conference, switc switch_status_t conference_api_set_moh(conference_obj_t *conference, const char *what) { + if (!what) { + return SWITCH_STATUS_FALSE; + } if (!strcasecmp(what, "toggle")) { if (conference_utils_test_flag(conference, CFLAG_NO_MOH)) { @@ -2737,7 +2740,15 @@ switch_status_t conference_api_set_moh(conference_obj_t *conference, const char switch_status_t conference_api_sub_moh(conference_obj_t *conference, switch_stream_handle_t *stream, int argc, char **argv) { - conference_api_set_moh(conference, argv[2]); + if (conference_api_set_moh(conference, argv[2]) == SWITCH_STATUS_SUCCESS) { + if (stream) { + stream->write_function(stream, "+OK moh\n"); + } + } else { + if (stream) { + stream->write_function(stream, "-ERR invalid moh param\n"); + } + } return SWITCH_STATUS_SUCCESS; }