summaryrefslogtreecommitdiff
path: root/res
diff options
context:
space:
mode:
authorMatthew Jordan <mjordan@digium.com>2014-12-24 15:26:53 +0000
committerMatthew Jordan <mjordan@digium.com>2014-12-24 15:26:53 +0000
commitb521c612fc2116cc381412c8e72bf8a719922481 (patch)
tree95971d186e3e3e0fbd0e901fbbe263ea0ed2f662 /res
parent915bb88d3e973f647eb9d9e560688d6a02af2c2a (diff)
res_pjsip: Backport missing commits for user_eq_phone
This backports the following from trunk, which were missed: r427257 | file | 2014-11-04 16:31:16 -0600 (Tue, 04 Nov 2014) | 2 lines res_pjsip: Allow + at the beginning of a phone number when user_eq_phone is enabled. r427259 | file | 2014-11-04 16:51:32 -0600 (Tue, 04 Nov 2014) | 2 lines res_pjsip: Apply the 'user_eq_phone' setting to the To header as well. It also adds the Alembic script for the option. ASTERISK-24643 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@430092 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'res')
-rw-r--r--res/res_pjsip.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/res/res_pjsip.c b/res/res_pjsip.c
index 223e58429..6f5826997 100644
--- a/res/res_pjsip.c
+++ b/res/res_pjsip.c
@@ -2155,6 +2155,10 @@ void ast_sip_add_usereqphone(const struct ast_sip_endpoint *endpoint, pj_pool_t
return;
}
+ if (pj_strbuf(&sip_uri->user)[0] == '+') {
+ i = 1;
+ }
+
/* Test URI user against allowed characters in AST_DIGIT_ANY */
for (; i < pj_strlen(&sip_uri->user); i++) {
if (!strchr(AST_DIGIT_ANYNUM, pj_strbuf(&sip_uri->user)[i])) {
@@ -2221,6 +2225,7 @@ pjsip_dialog *ast_sip_create_dialog_uac(const struct ast_sip_endpoint *endpoint,
/* Add the user=phone parameter if applicable */
ast_sip_add_usereqphone(endpoint, dlg->pool, dlg->target);
+ ast_sip_add_usereqphone(endpoint, dlg->pool, dlg->remote.info->uri);
/* We have to temporarily bump up the sess_count here so the dialog is not prematurely destroyed */
dlg->sess_count++;