summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2010-11-03 06:48:58 +0000
committerBenny Prijono <bennylp@teluu.com>2010-11-03 06:48:58 +0000
commit6e746385259a0eb6b02df6873334971a6c0db7a0 (patch)
treefd05f5d2c661c66e6650f7fd54a89965452a65e5
parentcfc7f58a54dabf0f0f29086c403c393c02d34f81 (diff)
Fixed #1155 (Run-time option to disable the use of "rport" in outgoing requests (thanks Marcus Froeschl for the suggestion)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3361 74dad513-b988-da41-8d7b-12977e46ad98
-rw-r--r--pjsip/include/pjsip/sip_config.h4
-rw-r--r--pjsip/src/pjsip/sip_util.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/pjsip/include/pjsip/sip_config.h b/pjsip/include/pjsip/sip_config.h
index 934d6969..6fd371a4 100644
--- a/pjsip/include/pjsip/sip_config.h
+++ b/pjsip/include/pjsip/sip_config.h
@@ -77,6 +77,10 @@ typedef struct pjsip_cfg_t
*/
pj_bool_t allow_port_in_fromto_hdr;
+ /**
+ * Disable rport in request.
+ */
+ pj_bool_t disable_rport;
} endpt;
/** Transaction layer settings. */
diff --git a/pjsip/src/pjsip/sip_util.c b/pjsip/src/pjsip/sip_util.c
index b57c9485..f4a58f0b 100644
--- a/pjsip/src/pjsip/sip_util.c
+++ b/pjsip/src/pjsip/sip_util.c
@@ -245,7 +245,7 @@ static void init_request_throw( pjsip_endpoint *endpt,
/* Add a blank Via header in the front of the message. */
via = pjsip_via_hdr_create(tdata->pool);
- via->rport_param = 0;
+ via->rport_param = pjsip_cfg()->endpt.disable_rport ? -1 : 0;
pjsip_msg_insert_first_hdr(msg, (pjsip_hdr*)via);
/* Add header params as request headers */
@@ -1179,7 +1179,7 @@ static void stateless_send_transport_cb( void *token,
via->transport = pj_str(stateless_data->cur_transport->type_name);
via->sent_by = stateless_data->cur_transport->local_name;
- via->rport_param = 0;
+ via->rport_param = pjsip_cfg()->endpt.disable_rport ? -1 : 0;
pjsip_tx_data_invalidate_msg(tdata);