Path: utzoo!utgpu!attcan!uunet!lll-winken!lll-tis!ames!pasteur!ucbvax!DELRIO.CC.UMICH.EDU!paul
From: paul@DELRIO.CC.UMICH.EDU ('da Kingfish)
Newsgroups: comp.sys.apollo
Subject: Re: sendmail problem
Message-ID: <8808192141.AA03436@delrio.cc.umich.edu>
Date: 19 Aug 88 21:41:42 GMT
References: <8808162127.AA08397@cod.nosc.mil>
Sender: daemon@ucbvax.BERKELEY.EDU
Organization: The Internet
Lines: 61


unknown mailer error #N problems are when /bin/mail can't open
/usr/spool/mail/luser.  N is the # of mailboxes it couldn't open.

The smtp error 550/no such user is when /etc/passwd and/or
/usr/lib/aliases are not available to sendmail when it is running
sendmail -bd and doing smtp or delivering from the queue.

I am just finishing a set of mail related changes for Apollos.

They include:

/bin/mail only tries one person per invocation.  if it fails, it exits
with EX_TEMPFAIL.  Even "local" delivery can be a remote delivery with
a distributed file system.  /bin/mail is now "never fails" instead of
"always works".

mh's inc, /bin/mail, and /usr/ucb/Mail all use the same locking style.
Any other program that modifies /usr/spool/mail/box uses the same style
by using ios_$ versions of open, fopen, and flock that I wrote.  (By
saying -lopen at compile time.)  Error texts are more explanatory.

They are "well-behaved".

sendmail will 451 instead of 550 when aliases/passwd are not
available.  It uses "new" dbm instead of dbm and the new dbm uses the
locking routines described above, so it doesn't matter where the
process is running relative to where the alias/passwd files are.  You
can run sendmail -bi (newaliases) from any node.

mailq prints out the apollo error text as well as the perror text for
failed messages still in the queue.  /bin/mail failures are logged so
you can stcode the result.  uids are used for message ids.

syslog uses no AF_UNIX at all, for various reasons, and I use the 4.3
style syslog routines.

These compile and run under 9.7 and 10.  For SR10, I delete the
distributed /usr/new and put in my own.

Many of these changes are generally useful, and not just for Apollos.

After a month of testing with real people's mail in September (I run
these changes on a small ring with only staff usage now) I'll do my
best to make all this available, via whatever means seem practicable
and doable.  I've been running this code for a while, and am polishing
it up, checking #ifdefs and Makefiles now, etc. to make it releasable.

The base versions for this are bind 4.8, sendmail 5.59, mh 6.5, and the
4.3 bsd vax release.

I have been collaborating with Mark Giuffrida from the engineering
college here, where several 100 Apollos are running.  Kind folks from
Apollo have given me the right pieces of information and helped track
down problems.

We've started on an NCS-based version of a lot of this too.

Take it from me:  file systems bad; objects, managers, and servers
good.

--paul