diff options
author | Liong Sauw Ming <ming@teluu.com> | 2015-01-19 08:04:56 +0000 |
---|---|---|
committer | Liong Sauw Ming <ming@teluu.com> | 2015-01-19 08:04:56 +0000 |
commit | 6764762db5aa4ea1b9b420c6ed9ab24cf7599d65 (patch) | |
tree | 3af922eff5d7ccbb2b8079223c6f60d574d57bbc | |
parent | 8a7f21ccfdb0e0883c6ba951de5c7065a8e263a0 (diff) |
Fixed #1811: contact_use_src_port and TLS server certificate verification issue (thanks to Viktor Krikun for the report)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@4974 74dad513-b988-da41-8d7b-12977e46ad98
-rw-r--r-- | pjsip/src/pjsua-lib/pjsua_acc.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_acc.c b/pjsip/src/pjsua-lib/pjsua_acc.c index 98216c3b..78c1f3d0 100644 --- a/pjsip/src/pjsua-lib/pjsua_acc.c +++ b/pjsip/src/pjsua-lib/pjsua_acc.c @@ -3136,18 +3136,24 @@ pj_status_t pjsua_acc_get_uac_addr(pjsua_acc_id acc_id, } if (status == PJ_SUCCESS) { + pjsip_tx_data tdata; int addr_len = pj_sockaddr_get_len(&ai.ai_addr); pj_uint16_t port = (pj_uint16_t)dinfo.addr.port; + /* Create a dummy tdata to inform remote host name to transport */ + pj_bzero(&tdata, sizeof(tdata)); + pj_strdup(pool, &tdata.dest_info.name, &dinfo.addr.host); + if (port==0) { port = (dinfo.flag & PJSIP_TRANSPORT_SECURE) ? 5061 : 5060; } pj_sockaddr_set_port(&ai.ai_addr, port); - status = pjsip_endpt_acquire_transport(pjsua_var.endpt, - dinfo.type, - &ai.ai_addr, - addr_len, - &tp_sel, &tp); + status = pjsip_endpt_acquire_transport2(pjsua_var.endpt, + dinfo.type, + &ai.ai_addr, + addr_len, + &tp_sel, + &tdata, &tp); } if (status == PJ_SUCCESS && (tp->local_name.port == 0 || |