From b9bb96ffed244b66442c3f6ee3bd534c95d34d37 Mon Sep 17 00:00:00 2001 From: Igor Goncharovsky <igorg@iqtek.ru> Date: Thu, 8 Jul 2021 20:32:20 +0600 Subject: [PATCH] res_ari: Fix audiosocket segfault Add check that data parameter specified when audiosocket used for externalMedia. ASTERISK-29514 #close Change-Id: Ie562f03c5d6c3835a3631f376b3d43e75b8f9617 --- res/ari/resource_channels.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/res/ari/resource_channels.c b/res/ari/resource_channels.c index 31856dc94d..a3d0f31eb9 100644 --- a/res/ari/resource_channels.c +++ b/res/ari/resource_channels.c @@ -2134,6 +2134,11 @@ static void external_media_audiosocket_tcp(struct ast_ari_channels_external_medi struct ast_channel *chan; struct varshead *vars; + if (ast_strlen_zero(args->data)) { + ast_ari_response_error(response, 400, "Bad Request", "data can not be empty"); + return; + } + endpoint_len = strlen("AudioSocket/") + strlen(args->external_host) + 1 + strlen(args->data) + 1; endpoint = ast_alloca(endpoint_len); /* The UUID is stored in the arbitrary data field */ -- GitLab