Author: Wakko Warner Date: To: Ted Cooper CC: exim-users Subject: Re: [exim] Fearure that Exim should have
Ted Cooper wrote: > If something so simple as ACLs need to have enough parameters passed to
> them that people start thinking it's too confusing to understand, and
> they they are polluting the global namespace, then I think those people
> need to change their thinking just a little bit and examine what is
> already possible, or start working on Exim 5.0.
Still think it would be nice.
> There are a number of easy to implement extensions that alleviate the
> need to make your ACLs stupidly complex.
>
> The global namespace is essentially infinite. You can have variables for
> pretty much anything and everything. I setup ~20 at connect time at present.
That's alot of variables set at connection time.
> You can direct the flow of ACLs by variable expansion. Call an ACL named
> "acl_var2" rather than pass a variable acl_x_var2.
Still reminds me of using global variables to call routines in other
languages.
I still prefer doing things inside the config (like database accesses) if
possible than to use external calls.
> Use ${run{prog many many many many (60!)} arguments which can return
> many many arguments in key=value pairs which can be ${extract}ed
>
> Use ${readsocket} - my personal favourite - I have a partner daemon
> listening on a socket which makes everything but routing decisions.
>
> Use ${dlfunc} - I only just found this one .. looks like it might be
> quite useful and easy to manage. May be faster then ${run, ${readsocket.
>
> local_scan.c - the classic
>
> Write your own other functions and throw them into the code. Don't
> expect them to make the main source if it's just for your local setup.
For my case, this was just database access. I had the code in the acl
section in several places. I condensed it and placed it in a seperate acl.
Quite simplified things a bit.
> All of these possibilities mean you can probably make a much more easily
> understandable and possibly more powerful solution than confusing a
> rather straight forward ACL system. Modifications to the code rarely get
> bungled by version changes and is simply a matter of keeping a patch.
>
> Just pointing out the possibilities that make life simpler!
All the other posiibilities (again, database access) are much more difficult
to do.
--
Lab tests show that use of micro$oft causes cancer in lab animals
Got Gas???