atom feed14 messages in net.sourceforge.lists.courier-users[courier-users] Re: Unknown User = EX...
FromSent OnAttachments
Griffiths, JonJul 24, 2001 7:28 am 
Sam VarshavchikJul 24, 2001 2:56 pm 
Daniel RoesenJul 24, 2001 4:21 pm 
Oliver BlasnikJul 25, 2001 12:44 am 
Griffiths, JonJul 25, 2001 2:33 am 
Griffiths, JonJul 25, 2001 2:56 am 
Daniel RoesenJul 25, 2001 3:30 am 
Xavier BeaudouinJul 25, 2001 3:41 am 
Sam VarshavchikJul 25, 2001 4:46 am 
Oliver BlasnikJul 25, 2001 7:30 am 
Daniel RoesenJul 25, 2001 8:29 am 
Griffiths, JonJul 25, 2001 10:00 am 
Sam VarshavchikJul 25, 2001 2:15 pm 
Oliver BlasnikJul 25, 2001 2:58 pm 
Subject:[courier-users] Re: Unknown User = EX_TEMPFAIL??
From:Griffiths, Jon (Jon.@sunrise.net)
Date:Jul 25, 2001 10:00:12 am
List:net.sourceforge.lists.courier-users

Knowing which local users exist is a _plus_ for a MTA, but by now means a requirement. It's the LDAs job. So the knowledge about the local user backend has to be able to be kept in the LDA area.

As the one who started all this, I concur with Daniel. the MTA's job is to transfer the mail somewhere where local information can be determined. If the local user info supply is down (NIS/LDAP), then misrouted mail is likely to be one of the minor problems, and should be easily prevented, holding everything on a prior queueing mechanism, e.g. by turning off the local MTA.

Only one user info store per function, is a more common routine, than one global store. Obviously only one user info store for every function is a great ideal, and one we are busy working towards. My comment regarding approaching other 'people' was meant to mean that this discussion could (should?) be held with each MTA mailing list owner. For sendmail it is not a massively complex problem to make it check an LDAP for a local user attribute, rather than the routing stuff alone. I would certainly not encourage anyone to deploy two user info stores with duplicate information. It is, however, reasonable to expect that different functions for the same users might be split into two different databases. For example billing information, and user authentication. This is beyond this thread, and even this list!

The overriding opinion from all the comments seems to be that EX_TEMPFAIL should be changed to EX_NOUSER in the main.C nouser() function. This is for several reasons:

1) Sam's assumptions are wrong since maildrop is released to function with other MTA's, and he can have no control over the local user checking of these programs. 2) It is reasonable to expect the LDA to catch invalid users. In my own configuration, for example, maildrop has to perform an LDAP lookup to deliver, where as getting the MTA to do this as well is an extra load. One can argue that the MTA should do it also, and I happen to agree, so I shall change the function, since it is only one extra lookup. However, this is an _also_ case, and not an either/or. 3) Providing it as a configuration option gives flexibility, rather than stonewalling it one way or the other, leaving each sys admin to decide. If this route is taken, it seems to be the opinion of the list that EX_NOUSER should be the default configuration.

I do not want anyone to get too excited about this, after all it is only other people's e-mail ;-)

Thanks to everyone for the comments. A most entertaining & useful day or so. I figure this will probably carry on for a little while now.

Regards,

Jon