Mailing List Archive

[Bug 608] New: ACL condition with deny called from acl_smtp_quit/ acl_smtp_notquit causes error
------- You are receiving this mail because: -------
You are on the CC list for the bug.

http://bugs.exim.org/show_bug.cgi?id=608
Summary: ACL condition with deny called from
acl_smtp_quit/acl_smtp_notquit causes error
Product: Exim
Version: N/A
Platform: All
OS/Version: All
Status: NEW
Severity: bug
Priority: low
Component: ACLs
AssignedTo: ph10@hermes.cam.ac.uk
ReportedBy: pinterface@gmail.com
CC: exim-dev@exim.org


Given a setup such as the following
acl_deny:
deny

acl_smtp_notquit:
accept acl = acl_deny
warn logwrite = How rude!

The exim log will contain
ACL for not-QUIT returned ERROR: "deny" is not allowed in a QUIT
or not-QUIT ACL
rather than
How rude!

This behavior is also manifested by the acl_smtp_quit ACL. It is triggered by
explicit deny only--implicit deny works as expected.


I /think/ this can be fixed by making the following change to src/acl.c,
acl_check_internal()
if ((where == ACL_WHERE_QUIT || where == ACL_WHERE_NOTQUIT) &&
+ level == 0 &&
acl->verb != ACL_ACCEPT &&
acl->verb != ACL_WARN)
thus limiting the check to only top-level ACLs, but whether that's the right
fix (if it works at all) I'll leave to men more familiar with the code base.


--
Configure bugmail: http://bugs.exim.org/userprefs.cgi?tab=email

--
## List details at http://lists.exim.org/mailman/listinfo/exim-dev Exim details at http://www.exim.org/ ##