@ -12542,6 +12542,11 @@ static void add_diversion_header(struct sip_request *req, struct sip_pvt *pvt)
const char * reason ;
char header_text [ 256 ] ;
/* We skip this entirely if the configuration doesn't allow diversion headers */
if ( ! sip_cfg . send_diversion ) {
return ;
}
if ( ! pvt - > owner ) {
return ;
}
@ -18827,6 +18832,7 @@ static char *sip_show_settings(struct ast_cli_entry *e, int cmd, struct ast_cli_
ast_cli ( a - > fd , " Trust RPID: %s \n " , AST_CLI_YESNO ( ast_test_flag ( & global_flags [ 0 ] , SIP_TRUSTRPID ) ) ) ;
ast_cli ( a - > fd , " Send RPID: %s \n " , AST_CLI_YESNO ( ast_test_flag ( & global_flags [ 0 ] , SIP_SENDRPID ) ) ) ;
ast_cli ( a - > fd , " Legacy userfield parse: %s \n " , AST_CLI_YESNO ( sip_cfg . legacy_useroption_parsing ) ) ;
ast_cli ( a - > fd , " Send Diversion: %s \n " , AST_CLI_YESNO ( sip_cfg . send_diversion ) ) ;
ast_cli ( a - > fd , " Caller ID: %s \n " , default_callerid ) ;
if ( ( default_fromdomainport ) & & ( default_fromdomainport ! = STANDARD_SIP_PORT ) ) {
ast_cli ( a - > fd , " From: Domain: %s:%d \n " , default_fromdomain , default_fromdomainport ) ;
@ -29166,6 +29172,7 @@ static int reload_config(enum channelreloadreason reason)
sip_set_default_format_capabilities ( sip_cfg . caps ) ;
sip_cfg . regextenonqualify = DEFAULT_REGEXTENONQUALIFY ;
sip_cfg . legacy_useroption_parsing = DEFAULT_LEGACY_USEROPTION_PARSING ;
sip_cfg . send_diversion = DEFAULT_SEND_DIVERSION ;
sip_cfg . notifyringing = DEFAULT_NOTIFYRINGING ;
sip_cfg . notifycid = DEFAULT_NOTIFYCID ;
sip_cfg . notifyhold = FALSE ; /*!< Keep track of hold status for a peer */
@ -29467,6 +29474,8 @@ static int reload_config(enum channelreloadreason reason)
sip_cfg . regextenonqualify = ast_true ( v - > value ) ;
} else if ( ! strcasecmp ( v - > name , " legacy_useroption_parsing " ) ) {
sip_cfg . legacy_useroption_parsing = ast_true ( v - > value ) ;
} else if ( ! strcasecmp ( v - > name , " send_diversion " ) ) {
sip_cfg . send_diversion = ast_true ( v - > value ) ;
} else if ( ! strcasecmp ( v - > name , " callerid " ) ) {
ast_copy_string ( default_callerid , v - > value , sizeof ( default_callerid ) ) ;
} else if ( ! strcasecmp ( v - > name , " mwi_from " ) ) {