Re: [Exim] Wishlist: $acl_a0 - $acl_a9

Top Page
Delete this message
Reply to this message
Author: Tor Slettnes
Date:  
To: Jeremy Harris
CC: Exim User's Mailing List
Subject: Re: [Exim] Wishlist: $acl_a0 - $acl_a9
On Jul 17, 2004, at 12:26, Jeremy Harris wrote:
> Tor Slettnes wrote:
>> ACL-local variables, for scratch & the like...
>
> Is the issue more of needing a undefined number
> of variables (implying $acl_inventyourvariablenamehere),
> or of scoping (variables become "${if def:" undefined
> when they exit a scope?


A little bit of both. In some cases it is good to be able to test for:
${if def:xxxx {}{}}

based on a trigger earlier in the ACL, without having to worry about
how the variable may have been used (scratch or not) in earlier ACLs.

One real-world example would be from the HOWTO I'm writing. Johannes
Berg contributed a greylisting solution which is implemented as a
separate ACL (greylist_acl). In it, temporarily he uses two variables.
So far, I've used a convention of starting upwards from $acl_m0 for
settings that persist throughout the message delivery, and downwards
from $acl_m9 for "scratch" usage within a given statement or an ACL.

It works, but it would be "clearer"/"cleaner" to specifically use
variables that have a more limited scope.

> Whichever, exim.conf is heading towards more generality
> as a specialised-environment programming language,
> I think.


Yes! And it's exactly that power that makes Exim more and more the One
True MTA out there. :-)

-tor