summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiong Sauw Ming <ming@teluu.com>2015-01-19 08:04:56 +0000
committerLiong Sauw Ming <ming@teluu.com>2015-01-19 08:04:56 +0000
commit6764762db5aa4ea1b9b420c6ed9ab24cf7599d65 (patch)
tree3af922eff5d7ccbb2b8079223c6f60d574d57bbc
parent8a7f21ccfdb0e0883c6ba951de5c7065a8e263a0 (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.c16
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 ||