summaryrefslogtreecommitdiff
path: root/pjsip/src/pjsua-lib/pjsua_acc.c
diff options
context:
space:
mode:
Diffstat (limited to 'pjsip/src/pjsua-lib/pjsua_acc.c')
-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 ||