Merge r428343 for AST-2014-013

git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/13.0.1@428439 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Asterisk Autobuilder
2014-11-20 16:58:06 +00:00
parent 2187d32441
commit 03dd93d106
2 changed files with 16 additions and 2 deletions

View File

@@ -11,6 +11,17 @@
ASTERISK-24469 #close
Reported by Matt Jordan
* AST-2014-013: Fix PJSIP ACLs not loading on startup and apply/ACL
issues on contact
The biggest problem this patch fixes is that ACLs weren't previously
being loaded when the res_pjsip_acl module was loaded. In addition,
the ACL options contact_permit and contact_acl were effectively
interpreted as contact_deny and this patch fixes that as well.
ASTERISK-24531 #close
Reported by: Matt Jordan
* AST-2014-018 - func_db: DB Dialplan function permission escalation
via AMI.

View File

@@ -233,8 +233,9 @@ static int acl_handler(const struct aco_option *opt, struct ast_variable *var, v
struct ast_sip_acl *sip_acl = obj;
int error = 0;
int ignore;
if (!strncmp(var->name, "contact", 7)) {
ast_append_acl(var->name + 7, var->value, &sip_acl->contact_acl, &error, &ignore);
if (!strncmp(var->name, "contact_", 8)) {
ast_append_acl(var->name + 8, var->value, &sip_acl->contact_acl, &error, &ignore);
} else {
ast_append_acl(var->name, var->value, &sip_acl->acl, &error, &ignore);
}
@@ -287,6 +288,8 @@ static int load_module(void)
ast_sorcery_object_field_register_custom(ast_sip_get_sorcery(), SIP_SORCERY_ACL_TYPE, "contact_deny", "", acl_handler, NULL, NULL, 0, 0);
ast_sorcery_object_field_register_custom(ast_sip_get_sorcery(), SIP_SORCERY_ACL_TYPE, "contact_acl", "", acl_handler, NULL, NULL, 0, 0);
ast_sorcery_load_object(ast_sip_get_sorcery(), SIP_SORCERY_ACL_TYPE);
ast_sip_register_service(&acl_module);
return AST_MODULE_LOAD_SUCCESS;
}