[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: smartlist and exim uid-trouble



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


Reply to: