summaryrefslogtreecommitdiff
path: root/pjsip/src
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2007-03-23 19:09:54 +0000
committerBenny Prijono <bennylp@teluu.com>2007-03-23 19:09:54 +0000
commit57921286f7577dd670b905f85a4ef0271cfb2028 (patch)
tree2d14cbbee45fc7df5d2dba49c3195cf06d595be9 /pjsip/src
parente3fd604ea862f68ad3ece248ca7d853899cbf48f (diff)
ICE (work in progress): implemented server reflexive candidate
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1099 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/src')
-rw-r--r--pjsip/src/pjsua-lib/pjsua_acc.c12
-rw-r--r--pjsip/src/pjsua-lib/pjsua_core.c7
-rw-r--r--pjsip/src/pjsua-lib/pjsua_media.c6
3 files changed, 21 insertions, 4 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_acc.c b/pjsip/src/pjsua-lib/pjsua_acc.c
index b168c9ad..3e39b15f 100644
--- a/pjsip/src/pjsua-lib/pjsua_acc.c
+++ b/pjsip/src/pjsua-lib/pjsua_acc.c
@@ -943,6 +943,12 @@ PJ_DEF(pj_status_t) pjsua_acc_create_uac_contact( pj_pool_t *pool,
PJ_ASSERT_RETURN(pjsua_acc_is_valid(acc_id), PJ_EINVAL);
acc = &pjsua_var.acc[acc_id];
+ /* If force_contact is configured, then use use it */
+ if (acc->cfg.force_contact.slen) {
+ *contact = acc->cfg.force_contact;
+ return PJ_SUCCESS;
+ }
+
/* If route-set is configured for the account, then URI is the
* first entry of the route-set.
*/
@@ -1037,6 +1043,12 @@ PJ_DEF(pj_status_t) pjsua_acc_create_uas_contact( pj_pool_t *pool,
PJ_ASSERT_RETURN(pjsua_acc_is_valid(acc_id), PJ_EINVAL);
acc = &pjsua_var.acc[acc_id];
+ /* If force_contact is configured, then use use it */
+ if (acc->cfg.force_contact.slen) {
+ *contact = acc->cfg.force_contact;
+ return PJ_SUCCESS;
+ }
+
/* If Record-Route is present, then URI is the top Record-Route. */
if (rdata->msg_info.record_route) {
sip_uri = (pjsip_sip_uri*)
diff --git a/pjsip/src/pjsua-lib/pjsua_core.c b/pjsip/src/pjsua-lib/pjsua_core.c
index 116a51f5..8c6e3506 100644
--- a/pjsip/src/pjsua-lib/pjsua_core.c
+++ b/pjsip/src/pjsua-lib/pjsua_core.c
@@ -675,6 +675,13 @@ pj_status_t pjsua_resolve_stun_server(pj_bool_t wait)
pj_sockaddr_in_init(&pjsua_var.stun_srv.ipv4, NULL, 0);
pjsua_var.stun_srv.ipv4.sin_addr = *(pj_in_addr*)he.h_addr;
pjsua_var.stun_srv.ipv4.sin_port = pj_htons((pj_uint16_t)3478);
+
+ PJ_LOG(4,(THIS_FILE,
+ "STUN server %.*s resolved, address is %s:%d",
+ (int)pjsua_var.ua_cfg.stun_srv.slen,
+ pjsua_var.ua_cfg.stun_srv.ptr,
+ pj_inet_ntoa(pjsua_var.stun_srv.ipv4.sin_addr),
+ (int)pj_ntohs(pjsua_var.stun_srv.ipv4.sin_port)));
}
}
return pjsua_var.stun_status;
diff --git a/pjsip/src/pjsua-lib/pjsua_media.c b/pjsip/src/pjsua-lib/pjsua_media.c
index 6c81583d..b8b0f33f 100644
--- a/pjsip/src/pjsua-lib/pjsua_media.c
+++ b/pjsip/src/pjsua-lib/pjsua_media.c
@@ -571,8 +571,7 @@ static pj_status_t create_ice_media_transports(pjsua_transport_config *cfg)
ice_st = pjmedia_ice_get_ice_st(pjsua_var.calls[i].med_tp);
/* Add host candidates for RTP */
- status = pj_ice_st_add_all_host_interfaces(ice_st, 1, 0,
- PJ_FALSE, NULL);
+ status = pj_ice_st_add_all_host_interfaces(ice_st, 1, 0);
if (status != PJ_SUCCESS) {
pjsua_perror(THIS_FILE, "Error adding ICE host candidates",
status);
@@ -592,8 +591,7 @@ static pj_status_t create_ice_media_transports(pjsua_transport_config *cfg)
}
/* Add STUN server reflexive candidate for RTP */
- status = pj_ice_st_add_stun_interface(ice_st, 1, 0,
- PJ_FALSE, NULL);
+ status = pj_ice_st_add_stun_interface(ice_st, 1, 0, NULL);
if (status != PJ_SUCCESS) {
pjsua_perror(THIS_FILE, "Error adding ICE address",
status);