]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
res_pjsip_session: Rewrite o= with external_media_address.
authorChris-Savinovich <csavinovich@digium.com>
Tue, 10 Apr 2018 01:00:37 +0000 (21:00 -0400)
committerChristian Savinovich <csavinovich@digium.com>
Wed, 11 Apr 2018 17:22:05 +0000 (11:22 -0600)
It now appends the external IP address on the
o= line of the SDP packet.  The decision was made to write
the numeric IP address as opposed to the RFC that states
the FQDN should be used if and when available.  We believe
the usage of literal IP address will help avoid
potential problems.

ASTERISK-27614 #close

Change-Id: I84f3360f3606b8c4e8d161edb228799ec0b8a302

res/res_pjsip_session.c

index 6eba25b6b68f92624f2d19c6c81be1107a58df27..f8c1fcddf136ab4815425eb6f590616da58c3133 100644 (file)
@@ -4154,7 +4154,7 @@ static void session_outgoing_nat_hook(pjsip_tx_data *tdata, struct ast_sip_trans
                if (ast_sip_transport_is_local(transport_state, &our_sdp_addr) || !transport_state->localnet) {
                        ast_debug(5, "Setting external media address to %s\n", ast_sockaddr_stringify_host(&transport_state->external_media_address));
                        pj_strdup2(tdata->pool, &sdp->conn->addr, ast_sockaddr_stringify_host(&transport_state->external_media_address));
-                       pj_strdup2(tdata->pool, &sdp->origin.addr, transport->external_media_address);
+                       pj_strassign(&sdp->origin.addr, &sdp->conn->addr);
                }
        }