From: Mark Michelson Date: Thu, 20 Nov 2014 16:36:18 +0000 (+0000) Subject: Fix error with mixed address family ACLs. X-Git-Tag: 12.8.0-rc1~23 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a26057ea42c3e24f474e9211572e76556f818d48;p=thirdparty%2Fasterisk.git Fix error with mixed address family ACLs. Prior to this commit, the address family of the first item in an ACL was used to compare all incoming traffic. This could lead to traffic of other IP address families bypassing ACLs. ASTERISK-24469 #close Reported by Matt Jordan Patches: ASTERISK-24469-11.diff uploaded by Matt Jordan (License #6283) AST-2014-012 ........ Merged revisions 428402 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 428417 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/12@428422 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/acl.c b/main/acl.c index 5c3b633d70..87776b33b1 100644 --- a/main/acl.c +++ b/main/acl.c @@ -743,7 +743,7 @@ enum ast_acl_sense ast_apply_ha(const struct ast_ha *ha, const struct ast_sockad ast_copy_string(iabuf2, ast_inet_ntoa(ha->netaddr), sizeof(iabuf2)); ast_debug(1, "##### Testing %s with %s\n", iabuf, iabuf2); #endif - if (ast_sockaddr_is_ipv4(&ha->addr)) { + if (ast_sockaddr_is_ipv4(¤t_ha->addr)) { if (ast_sockaddr_is_ipv6(addr)) { if (ast_sockaddr_is_ipv4_mapped(addr)) { /* IPv4 ACLs apply to IPv4-mapped addresses */