Phil Pennock wrote:
> On 2009-03-10 at 12:02 -0700, Marc Perkel wrote:
>   
>> Then I ran that through a recursive ACL to get each one separately so I 
>> can look each one up individually. Then the idea is to run eack one 
>> through another ACL that does a lot of lookups, first testing white 
>> lists and then black lists.
>>     
>
> Exim is not primarily a programming language and doesn't have
> tail-recursion optimisation for processing ACLs; each call to ACL
> expansion puts a layer on the stack.  To protect against this, you can
> only have ACLs call ACLs to a maximum depth of 20.
>
> This isn't really a limitation normally, because without this
> safety-check you risk exceeding your process stack rlimits based on the
> content of external mail, which would be a rather bad idea.  This is
> highly unlikely to change.
>
> So your recursive ACL will fail with an Exim hard error which will
> probably hit your panic log when there's somewhere near 20 URLs in the
> body.
>
> You probably want to look at restructuring to use the forall/forany
> expansion conditions instead.
>
> -Phil
>
>   

I'm having trouble understanding the forall/forany. Can I put an ACL in 
for the condition? Do you have an example?



-- 
## List details at http://lists.exim.org/mailman/listinfo/exim-users 
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/

Reply via email to