summaryrefslogtreecommitdiff
path: root/pjsip/src/pjsua-lib/pjsua_media.c
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2007-04-02 19:51:21 +0000
committerBenny Prijono <bennylp@teluu.com>2007-04-02 19:51:21 +0000
commit7e0fee875ce0f5eaaba5e67e84539ebf6bf79a6f (patch)
tree822e34473a37cfcfbd08c24ce162db13f446287c /pjsip/src/pjsua-lib/pjsua_media.c
parentcf789409426f2368ab84cf59f8b33168d402ec0c (diff)
When STUN is used with ICE, SDP media line should show the public IP address
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1134 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/src/pjsua-lib/pjsua_media.c')
-rw-r--r--pjsip/src/pjsua-lib/pjsua_media.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_media.c b/pjsip/src/pjsua-lib/pjsua_media.c
index 8b4c1aa6..e4f6ec14 100644
--- a/pjsip/src/pjsua-lib/pjsua_media.c
+++ b/pjsip/src/pjsua-lib/pjsua_media.c
@@ -505,19 +505,20 @@ pj_status_t pjsua_media_subsys_destroy(void)
static pj_status_t create_udp_media_transports(pjsua_transport_config *cfg)
{
unsigned i;
+ pjmedia_sock_info skinfo;
pj_status_t status;
/* Create each media transport */
for (i=0; i<pjsua_var.ua_cfg.max_calls; ++i) {
- status = create_rtp_rtcp_sock(cfg, &pjsua_var.calls[i].skinfo);
+ status = create_rtp_rtcp_sock(cfg, &skinfo);
if (status != PJ_SUCCESS) {
pjsua_perror(THIS_FILE, "Unable to create RTP/RTCP socket",
status);
goto on_error;
}
status = pjmedia_transport_udp_attach(pjsua_var.med_endpt, NULL,
- &pjsua_var.calls[i].skinfo, 0,
+ &skinfo, 0,
&pjsua_var.calls[i].med_tp);
if (status != PJ_SUCCESS) {
pjsua_perror(THIS_FILE, "Unable to create media transport",
@@ -605,10 +606,6 @@ static pj_status_t create_ice_media_transports(pjsua_transport_config *cfg)
goto on_error;
}
- /* Get transport info */
- pjmedia_transport_get_info(pjsua_var.calls[i].med_tp,
- &pjsua_var.calls[i].skinfo);
-
}
return PJ_SUCCESS;
@@ -694,11 +691,16 @@ pj_status_t pjsua_media_channel_create_sdp(pjsua_call_id call_id,
pjmedia_sdp_session **p_sdp)
{
pjmedia_sdp_session *sdp;
+ pjmedia_sock_info skinfo;
pjsua_call *call = &pjsua_var.calls[call_id];
pj_status_t status;
+ /* Get media socket info */
+ pjmedia_transport_get_info(call->med_tp, &skinfo);
+
+ /* Create SDP */
status = pjmedia_endpt_create_sdp(pjsua_var.med_endpt, pool, 1,
- &call->skinfo, &sdp);
+ &skinfo, &sdp);
if (status != PJ_SUCCESS)
goto on_error;