]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
res_ari: Fix create channel request channelId parameter parsing
authorsungtae kim <sungtae@messagebird.com>
Fri, 12 Jun 2020 10:16:14 +0000 (10:16 +0000)
committersungtae kim <pchero21@gmail.com>
Fri, 12 Jun 2020 11:30:57 +0000 (06:30 -0500)
If channelId parameters were passed in the body, the Asterisk doesn't parsing it correctly.

Fixed it to parse the channelId, other_channel_id parameter correclty.

ASTERISK-28948

Change-Id: I59b49161a94869169ee19c1ffab5afcef7026157

res/ari/resource_channels.c

index 680d777167df2deb18a01ab4da0efd7df79c4451..8c8a1eb799f6d7d46c954d071c16f5d862be1cdd 100644 (file)
@@ -1780,10 +1780,7 @@ void ast_ari_channels_create(struct ast_variable *headers,
        struct ast_ari_response *response)
 {
        struct ast_variable *variables = NULL;
-       struct ast_assigned_ids assignedids = {
-               .uniqueid = args->channel_id,
-               .uniqueid2 = args->other_channel_id,
-       };
+       struct ast_assigned_ids assignedids;
        struct ari_channel_thread_data *chan_data;
        struct ast_channel_snapshot *snapshot;
        pthread_t thread;
@@ -1806,6 +1803,9 @@ void ast_ari_channels_create(struct ast_variable *headers,
                }
        }
 
+       assignedids.uniqueid = args->channel_id;
+       assignedids.uniqueid2 = args->other_channel_id;
+
        if (!ast_strlen_zero(args->originator) && !ast_strlen_zero(args->formats)) {
                ast_ari_response_error(response, 400, "Bad Request",
                        "Originator and formats can't both be specified");