]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
res_ari: Fix audiosocket segfault
authorIgor Goncharovsky <igorg@iqtek.ru>
Thu, 8 Jul 2021 14:32:20 +0000 (20:32 +0600)
committerIgor Goncharovsky <igor.goncharovsky@gmail.com>
Thu, 8 Jul 2021 23:31:15 +0000 (18:31 -0500)
Add check that data parameter specified when audiosocket used for externalMedia.

ASTERISK-29514 #close

Change-Id: Ie562f03c5d6c3835a3631f376b3d43e75b8f9617

res/ari/resource_channels.c

index 31856dc94d87b562afa7bee937757271fc4d1567..a3d0f31eb9147695f2f4acbb9d648aac2b2e71f9 100644 (file)
@@ -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 */