From: George Joseph Date: Wed, 2 Nov 2022 12:41:29 +0000 (-0600) Subject: chan_rtp: Make usage of ast_rtp_instance_get_local_address clearer X-Git-Tag: 18.16.0-rc1~38 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9de862242f7d44f947bafc8e2a44ff5ebf7c64b5;p=thirdparty%2Fasterisk.git chan_rtp: Make usage of ast_rtp_instance_get_local_address clearer unicast_rtp_request() was setting the channel variables like this: pbx_builtin_setvar_helper(chan, "UNICASTRTP_LOCAL_ADDRESS", ast_sockaddr_stringify_addr(&local_address)); ast_rtp_instance_get_local_address(instance, &local_address); pbx_builtin_setvar_helper(chan, "UNICASTRTP_LOCAL_PORT", ast_sockaddr_stringify_port(&local_address)); ...which made it appear that UNICASTRTP_LOCAL_ADDRESS was being set before local_address was set. In fact, the address part of local_address was set earlier in the function, just not the port. This was confusing however so ast_rtp_instance_get_local_address() is now being called before setting UNICASTRTP_LOCAL_ADDRESS. ASTERISK-30281 Change-Id: I872ac49477100f4eb33891d46efc6ca21ec81aa4 --- diff --git a/channels/chan_rtp.c b/channels/chan_rtp.c index 087ddaed32..0740c2c6a1 100644 --- a/channels/chan_rtp.c +++ b/channels/chan_rtp.c @@ -381,9 +381,9 @@ static struct ast_channel *unicast_rtp_request(const char *type, struct ast_form ast_channel_tech_pvt_set(chan, instance); + ast_rtp_instance_get_local_address(instance, &local_address); pbx_builtin_setvar_helper(chan, "UNICASTRTP_LOCAL_ADDRESS", ast_sockaddr_stringify_addr(&local_address)); - ast_rtp_instance_get_local_address(instance, &local_address); pbx_builtin_setvar_helper(chan, "UNICASTRTP_LOCAL_PORT", ast_sockaddr_stringify_port(&local_address));