Re: [exim] Fearure that Exim should have

Top Page
Delete this message
Reply to this message
Author: Ted Cooper
Date:  
To: exim-users
Subject: Re: [exim] Fearure that Exim should have
> Or perhaps I've smoked something I shouldn't have and I'm confusing simple
> matters (wouldn't be a first)?


This is more a response to the whole thread rather than just you Eli :)

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.

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.

You can direct the flow of ACLs by variable expansion. Call an ACL named
"acl_var2" rather than pass a variable acl_x_var2.

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.

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!



--
The Exim Manual
http://www.exim.org/docs.html
http://www.exim.org/exim-html-current/doc/html/spec_html/index.html