diff options
author | George Joseph <george.joseph@fairview5.com> | 2016-01-07 10:57:01 -0700 |
---|---|---|
committer | George Joseph <george.joseph@fairview5.com> | 2016-01-11 18:41:31 -0600 |
commit | a41aab477ac317f9d973db253b4c30cd6a6db5b8 (patch) | |
tree | 7921ac4515db887d05e00dd116cd5b90536d639d /include | |
parent | 188438c53f5c5424cd45c3b904c58508881f0baa (diff) |
pjsip_sdp_rtp: Add option endpoint/bind_rtp_to_media_address
On a system with multiple ip addresses in the same subnet, if a
transport is bound to a specific ip address and endpoint/media_address
is set, the SIP/SDP will have the correct address in all fields but
the rtp stream MAY still originate from one of the other ip addresses,
most probably the "primary" ip address. This happens because
res_pjsip_sdp_rtp/create_rtp always calls ast_instance_new with
the "all" ip address (0.0.0.0 or ::).
The new option causes res_pjsip_sdp_rtp/create_rtp to call
ast_rtp_instance_new with the endpoint's media_address (if specified)
instead of the "all" address. This causes the packets to originate from
the specified address.
ASTERISK-25632
ASTERISK-25637
Reported-by: Olivier Krief
Reported-by: Dan Journo
Change-Id: I3dfaa079e54ba7fb7c4fd1f5f7bd9509bbf8bd88
Diffstat (limited to 'include')
-rw-r--r-- | include/asterisk/res_pjsip.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/asterisk/res_pjsip.h b/include/asterisk/res_pjsip.h index d9123f983..6f4ea9a75 100644 --- a/include/asterisk/res_pjsip.h +++ b/include/asterisk/res_pjsip.h @@ -575,6 +575,8 @@ struct ast_sip_endpoint_media_configuration { unsigned int cos_video; /*! Is g.726 packed in a non standard way */ unsigned int g726_non_standard; + /*! Bind the RTP instance to the media_address */ + unsigned int bind_rtp_to_media_address; }; /*! |