summaryrefslogtreecommitdiff
path: root/pjsip/src/pjsua-lib/pjsua_media.c
diff options
context:
space:
mode:
authorNanang Izzuddin <nanang@teluu.com>2012-08-09 05:21:25 +0000
committerNanang Izzuddin <nanang@teluu.com>2012-08-09 05:21:25 +0000
commitbb8aad5e9fd0c6ab5f5129a82936c47c667cf7f8 (patch)
tree0b6ebcd9d0865d55b76a319c1a0d9b61548e02a4 /pjsip/src/pjsua-lib/pjsua_media.c
parent77baafe3eee3d31051a39d4c43ece5a63e0bffbc (diff)
Close #1567: Added option to use STUN2 format for resolving mapped address in pjsua_config.
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@4224 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/src/pjsua-lib/pjsua_media.c')
-rw-r--r--pjsip/src/pjsua-lib/pjsua_media.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_media.c b/pjsip/src/pjsua-lib/pjsua_media.c
index 24f0ee61..4bd80337 100644
--- a/pjsip/src/pjsua-lib/pjsua_media.c
+++ b/pjsip/src/pjsua-lib/pjsua_media.c
@@ -328,15 +328,19 @@ static pj_status_t create_rtp_rtcp_sock(pjsua_call_media *call_med,
{
char ip_addr[32];
pj_str_t stun_srv;
+ pjstun_setting stun_opt;
pj_ansi_strcpy(ip_addr,
pj_inet_ntoa(pjsua_var.stun_srv.ipv4.sin_addr));
stun_srv = pj_str(ip_addr);
- status=pjstun_get_mapped_addr(&pjsua_var.cp.factory, 2, sock,
- &stun_srv, pj_ntohs(pjsua_var.stun_srv.ipv4.sin_port),
- &stun_srv, pj_ntohs(pjsua_var.stun_srv.ipv4.sin_port),
- mapped_addr);
+ pj_bzero(&stun_opt, sizeof(stun_opt));
+ stun_opt.use_stun2 = pjsua_var.ua_cfg.stun_map_use_stun2;
+ stun_opt.srv1 = stun_opt.srv2 = stun_srv;
+ stun_opt.port1 = stun_opt.port2 =
+ pj_ntohs(pjsua_var.stun_srv.ipv4.sin_port);
+ status=pjstun_get_mapped_addr2(&pjsua_var.cp.factory, &stun_opt,
+ 2, sock, mapped_addr);
if (status != PJ_SUCCESS) {
pjsua_perror(THIS_FILE, "STUN resolve error", status);
goto on_error;