[Freeswitch-svn] [commit] r9509 - freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua
Freeswitch SVN
mikej at freeswitch.org
Wed Sep 10 12:21:42 EDT 2008
Author: mikej
Date: Wed Sep 10 12:21:42 2008
New Revision: 9509
Modified:
freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua/test_s2.c
Log:
Wed Sep 10 09:56:53 EDT 2008 Pekka Pessi <first.last at nokia.com>
* test_s2.c: use only tport protocol if primary tport is given
Modified: freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua/test_s2.c
==============================================================================
--- freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua/test_s2.c (original)
+++ freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua/test_s2.c Wed Sep 10 12:21:42 2008
@@ -511,7 +511,7 @@
msg_t *msg = s2_msg(0);
sip_t *sip = sip_object(msg);
- url_string_t *target = NULL;
+ url_t const *target = NULL;
sip_cseq_t cseq[1];
sip_via_t via[1]; char const *v_params[8];
sip_content_length_t l[1];
@@ -525,20 +525,22 @@
if (sip_add_tagis(msg, sip, &tags) < 0)
goto error;
- if (!sip->sip_request) {
- sip_request_t *rq;
-
- if (d->target)
- target = (url_string_t *)d->target->m_url;
- else if (s2->registration->contact)
- target = (url_string_t *)s2->registration->contact->m_url;
- else
- target = NULL;
+ if (sip->sip_request)
+ target = sip->sip_request->rq_url;
+ else if (d->target)
+ target = d->target->m_url;
+ else if (s2->registration->contact)
+ target = s2->registration->contact->m_url;
+ else
+ target = NULL;
- if (target == NULL)
- goto error;
+ if (target == NULL)
+ goto error;
- rq = sip_request_create(msg_home(msg), method, name, target, NULL);
+ if (!sip->sip_request) {
+ sip_request_t *rq;
+ rq = sip_request_create(msg_home(msg), method, name,
+ (url_string_t *)target, NULL);
sip_header_insert(msg, sip, (sip_header_t *)rq);
}
@@ -588,11 +590,12 @@
assert(tport);
*tpn = *tport_name(tport);
- if (tport_is_udp(tport)) {
- tpn->tpn_host = d->target->m_url->url_host;
- tpn->tpn_port = url_port(d->target->m_url);
+
+ if (tport_is_primary(tport)) {
+ tpn->tpn_host = target->url_host;
+ tpn->tpn_port = url_port(target);
if (!tpn->tpn_port || !tpn->tpn_port[0])
- tpn->tpn_port = url_port_default(d->target->m_url->url_type);
+ tpn->tpn_port = url_port_default(target->url_type);
}
magic = tport_magic(tport);
More information about the Freeswitch-svn
mailing list