On Thu, Aug 22, 2002 at 06:35:33PM +0200, Matthias Czapla wrote:
| Derrick 'dman' Hudson wrote:
| > See /usr/share/doc/exim/spec.txt for more details on the pipe
| > driver and what the user= option is for.
|
| So each and every file/pipe transport from /etc/aliases can only be run
| as this configured user?
Yes, but -- the value is expanded which means you can use a fancy
lookup or something to choose a different uid for different aliases.
For example, I came up with this one time while I was experimenting
with it.
LDAP_Q1 = lookup ldap {ldap://dman.ddts.net/ou=mail_aliases??sub?(uid=$local_part)}
# this requires the lookup to return 'cmd', 'user', and 'group'
generic_pipe :
driver = pipe
command = ${extract {cmd} {${LDAP_Q1}} }
user = ${extract {user} {${LDAP_Q1}} }
group = ${extract {group} {${LDAP_Q1}} }
You could do the same thing with /etc/aliases if
1) you used an 'lsearch' lookup instead of 'ldap'
2) the file looked like :
this_pipe: cmd="/usr/local/bin/some_prog" user=joe group=users
where 'this_pipe' is the local part of the email address.
| Another question: is there a way _not_ to rewrite the sender address
| for local messages, so that replies will get to the local user instead of
| the address mentioned in /etc/email-addresses?
The only way I can think of is to run two exims with different
configurations. Have the default configuration only handle local
addresses and do no rewriting. If the recipient isn't a local user
pass the message (use bsmtp or a pipe) to the other exim/config which
will do the rewriting and make the remote smtp connection.
HTH,
-D
--
A perverse man stirs up dissension,
and a gossip separates close friends.
Proverbs 16:28
http://dman.ddts.net/~dman/
Attachment:
pgp5Kmtq_Kthh.pgp
Description: PGP signature