summaryrefslogtreecommitdiff
path: root/pjsip/src/pjsip-ua
diff options
context:
space:
mode:
Diffstat (limited to 'pjsip/src/pjsip-ua')
-rw-r--r--pjsip/src/pjsip-ua/sip_inv.c15
-rw-r--r--pjsip/src/pjsip-ua/sip_reg.c2
-rw-r--r--pjsip/src/pjsip-ua/sip_replaces.c5
-rw-r--r--pjsip/src/pjsip-ua/sip_xfer.c13
4 files changed, 19 insertions, 16 deletions
diff --git a/pjsip/src/pjsip-ua/sip_inv.c b/pjsip/src/pjsip-ua/sip_inv.c
index 1ff497b0..9f561763 100644
--- a/pjsip/src/pjsip-ua/sip_inv.c
+++ b/pjsip/src/pjsip-ua/sip_inv.c
@@ -113,9 +113,6 @@ struct tsx_inv_data
pj_bool_t sdp_done;
};
-/* Config */
-extern pj_bool_t pjsip_include_allow_hdr_in_dlg;
-
/*
* Module load()
*/
@@ -223,7 +220,7 @@ static pj_status_t inv_send_ack(pjsip_inv_session *inv, pjsip_rx_data *rdata)
PJ_LOG(5,(inv->obj_name, "Received %s, sending ACK",
pjsip_rx_data_get_info(rdata)));
- status = pjsip_dlg_create_request(inv->dlg, &pjsip_ack_method,
+ status = pjsip_dlg_create_request(inv->dlg, pjsip_get_ack_method(),
rdata->msg_info.cseq->cseq, &tdata);
if (status != PJ_SUCCESS) {
/* Better luck next time */
@@ -1108,7 +1105,7 @@ PJ_DEF(pj_status_t) pjsip_inv_invite( pjsip_inv_session *inv,
pjsip_dlg_inc_lock(inv->dlg);
/* Create the INVITE request. */
- status = pjsip_dlg_create_request(inv->dlg, &pjsip_invite_method, -1,
+ status = pjsip_dlg_create_request(inv->dlg, pjsip_get_invite_method(), -1,
&tdata);
if (status != PJ_SUCCESS)
goto on_return;
@@ -1155,7 +1152,7 @@ PJ_DEF(pj_status_t) pjsip_inv_invite( pjsip_inv_session *inv,
}
/* Add Allow header. */
- if (pjsip_include_allow_hdr_in_dlg) {
+ if (inv->dlg->add_allow) {
hdr = pjsip_endpt_get_capability(inv->dlg->endpt, PJSIP_H_ALLOW, NULL);
if (hdr) {
pjsip_msg_add_hdr(tdata->msg, (pjsip_hdr*)
@@ -1597,8 +1594,8 @@ PJ_DEF(pj_status_t) pjsip_inv_end_session( pjsip_inv_session *inv,
case PJSIP_INV_STATE_CONNECTING:
case PJSIP_INV_STATE_CONFIRMED:
/* For established dialog, send BYE */
- status = pjsip_dlg_create_request(inv->dlg, &pjsip_bye_method, -1,
- &tdata);
+ status = pjsip_dlg_create_request(inv->dlg, pjsip_get_bye_method(),
+ -1, &tdata);
break;
case PJSIP_INV_STATE_DISCONNECTED:
@@ -1792,7 +1789,7 @@ static void inv_respond_incoming_cancel(pjsip_inv_session *inv,
/* See if we have matching INVITE server transaction: */
pjsip_tsx_create_key(rdata->tp_info.pool, &key, PJSIP_ROLE_UAS,
- &pjsip_invite_method, rdata);
+ pjsip_get_invite_method(), rdata);
invite_tsx = pjsip_tsx_layer_find_tsx(&key, PJ_TRUE);
if (invite_tsx == NULL) {
diff --git a/pjsip/src/pjsip-ua/sip_reg.c b/pjsip/src/pjsip-ua/sip_reg.c
index 6a5c3c2f..c04fe07e 100644
--- a/pjsip/src/pjsip-ua/sip_reg.c
+++ b/pjsip/src/pjsip-ua/sip_reg.c
@@ -366,7 +366,7 @@ static pj_status_t create_request(pjsip_regc *regc,
/* Create the request. */
status = pjsip_endpt_create_request_from_hdr( regc->endpt,
- &pjsip_register_method,
+ pjsip_get_register_method(),
regc->srv_url,
regc->from_hdr,
regc->to_hdr,
diff --git a/pjsip/src/pjsip-ua/sip_replaces.c b/pjsip/src/pjsip-ua/sip_replaces.c
index 284c2828..9b233942 100644
--- a/pjsip/src/pjsip-ua/sip_replaces.c
+++ b/pjsip/src/pjsip-ua/sip_replaces.c
@@ -68,6 +68,7 @@ static int replaces_hdr_print( pjsip_replaces_hdr *hdr,
char *p = buf;
char *endbuf = buf+size;
int printed;
+ const pjsip_parser_const_t *pc = pjsip_parser_const();
copy_advance(p, hdr->name);
*p++ = ':';
@@ -83,8 +84,8 @@ static int replaces_hdr_print( pjsip_replaces_hdr *hdr,
}
printed = pjsip_param_print_on(&hdr->other_param, p, endbuf-p,
- &pjsip_TOKEN_SPEC,
- &pjsip_TOKEN_SPEC, ';');
+ &pc->pjsip_TOKEN_SPEC,
+ &pc->pjsip_TOKEN_SPEC, ';');
if (printed < 0)
return printed;
diff --git a/pjsip/src/pjsip-ua/sip_xfer.c b/pjsip/src/pjsip-ua/sip_xfer.c
index a4c46629..b9c41e88 100644
--- a/pjsip/src/pjsip-ua/sip_xfer.c
+++ b/pjsip/src/pjsip-ua/sip_xfer.c
@@ -57,11 +57,15 @@ enum
PJSIP_REFER_METHOD = PJSIP_OTHER_METHOD
};
-const pjsip_method pjsip_refer_method = {
+PJ_DEF_DATA(const pjsip_method) pjsip_refer_method = {
(pjsip_method_e) PJSIP_REFER_METHOD,
{ "REFER", 5}
};
+PJ_DEF(const pjsip_method*) pjsip_get_refer_method()
+{
+ return &pjsip_refer_method;
+}
/*
* String constants
@@ -144,7 +148,8 @@ PJ_DEF(pj_status_t) pjsip_xfer_init_module(pjsip_endpoint *endpt)
return status;
status = pjsip_endpt_add_capability( endpt, &mod_xfer, PJSIP_H_ALLOW,
- NULL, 1, &pjsip_refer_method.name);
+ NULL, 1,
+ &pjsip_get_refer_method()->name);
if (status != PJ_SUCCESS)
return status;
@@ -223,7 +228,7 @@ PJ_DEF(pj_status_t) pjsip_xfer_create_uas( pjsip_dialog *dlg,
/* Check that request is REFER */
PJ_ASSERT_RETURN(pjsip_method_cmp(&rdata->msg_info.msg->line.req.method,
- &pjsip_refer_method)==0,
+ pjsip_get_refer_method())==0,
PJSIP_ENOTREFER);
/* Lock dialog */
@@ -298,7 +303,7 @@ PJ_DEF(pj_status_t) pjsip_xfer_initiate( pjsip_evsub *sub,
pjsip_dlg_inc_lock(xfer->dlg);
/* Create basic REFER request */
- status = pjsip_evsub_initiate(sub, &pjsip_refer_method, -1,
+ status = pjsip_evsub_initiate(sub, pjsip_get_refer_method(), -1,
&tdata);
if (status != PJ_SUCCESS)
goto on_return;