[comp.mail.misc] Smail 3.1.20 & SunOS 4.1.1 Rev B. & Yellow Pages

samborn@sunrise.com (Kevin Samborn) (05/21/91)

We have just upgraded our SPARCstation 1 to SunOS 4.1.1 Rev B. from 4.0.3.

On the old OS we ran Smail 3.1.19.  So, as part of the upgrade, we
went to 3.1.20.  I have a couple of questions:

a) We periodically get core dumps.  This is the msglog entry:

     Xdefer: <<uunet!twiggy.prime.com!rcassidy>> reason: (ERR_127) router
     uucp_neighors: command `/usr/bin/uuname' returned exit status
     EX_53248

   Is this a problem with SunOS 4.1.1 Rev B. ??
   
b) left over messages in /usr/spool/smail/input

   We now occasionally have messages hanging around in
   /usr/spool/smail/input.  There are msglog entries, but why are they
   still there?  They seem to hang around after an

     Xfail: <info> reason: (ERR_100) unknown user

   message.  They do seem to get bounced however.  Why do they hang
   around in input? 

c) NIS (Yellow Pages) & aliases

   As part of our change of OS, we decided to use Yellow Pages.  The
   yellow pages works fine.  However the upgrading mechanism causes us
   trouble.  It seems that Sun uses the following command to update
   the aliases database:

      /usr/lib/sendmail -bi -oA$(YPDBDIR)/$(DOM)/mail.aliases;

   Smail does not support the -bi option.  What it is doing,
   (according to the man page) is:

      -bi Initialize the aliases database.

      It also says this is identical to the newaliases(8) command.

   I have tracked this a little bit, and it appears that there needs
   to be an extra key/value pair of "@/@" in the database.  You cannot
   use Smail's dbm generating stuff because it does not include the YP
   information.  Apparently Sun's sendmail knows about YP.  I tried
   the following stuff, but although it produced the same exact YP map
   that the Sun sendmail command did, Smail did not find the alias:

      /bin/echo "@:@" >> $(YPDBDIR)/$(DOM)/mail.aliases
      /usr/local/bin/smail/mkline $(YPDBDIR)/$(DOM)/mail.aliases | \
         awk 'BEGIN { FS = ":"; OFS = "\t";} { print $$1, $$2 }' | \
         $(MAKEDBM) -l - $(YPDBDIR)/$(DOM)/mail.aliases

      $(MAKEDBM) is the command for creating YP suitable dbm maps.

   Needless to say, I cannot use the Smail newaliases command because
   it doesn't do anything if running YP.

Thanks for all your help!

kevin samborn
--
kevin samborn                   "You guys had a tent!?!"
samborn@sunrise.com  
...!uunet!ezx!samborn

tron@Veritas.COM (Ronald S. Karr) (05/22/91)

In article <SAMBORN.91May21101008@astro.sunrise.com> samborn@sunrise.com (Kevin Samborn) writes:
>We have just upgraded our SPARCstation 1 to SunOS 4.1.1 Rev B. from 4.0.3.
>
>a) We periodically get core dumps.  This is the msglog entry:
>
>     Xdefer: <<uunet!twiggy.prime.com!rcassidy>> reason: (ERR_127) router
>     uucp_neighors: command `/usr/bin/uuname' returned exit status
>     EX_53248
>
>   Is this a problem with SunOS 4.1.1 Rev B. ??

It would be helpful if you could send a strack trace from the core dump.

>b) left over messages in /usr/spool/smail/input
>
>     Xfail: <info> reason: (ERR_100) unknown user

I can't say I have ever seen this happen before on such a benign error.
Smail3.1.19 used to leave messages hanging around if they contained
some types of bogus header fields (mainly malformed From: fields).
However, I belive this was fixed in 3.1.20.

>c) NIS (Yellow Pages) & aliases
>
>   Smail does not support the -bi option.  What it is doing,
>   (according to the man page) is:
>
>      -bi Initialize the aliases database.
>
>      It also says this is identical to the newaliases(8) command.

>      /bin/echo "@:@" >> $(YPDBDIR)/$(DOM)/mail.aliases
>      /usr/local/bin/smail/mkline $(YPDBDIR)/$(DOM)/mail.aliases | \
>         awk 'BEGIN { FS = ":"; OFS = "\t";} { print $$1, $$2 }' | \
>         $(MAKEDBM) -l - $(YPDBDIR)/$(DOM)/mail.aliases
>
>      $(MAKEDBM) is the command for creating YP suitable dbm maps.

The mkdbm utility distributed with smail will work here.  For some
stupid reason, the databases created by sendmail and created by the
makedbm program are different.  Keys and values created by sendmail
have an added nul byte, whereas keys and values created by makedbm
do not.  Smail is designed to use either type of database, and the
mkdbm utility will create either type.

To get smail to use the regular type of database (created by makedbm)
use a search type of "yp" rather than "aliasyp".   The mkdbm utility
produces "aliasyp" type databases by default (including the nul byte
and the @ record).  The nul byte can be suppressed by using the -n
option, the @ record can be suppressed with -d.  Smail doesn't use the
@ record, since the record is not necessary for use with YP, and the
mkdbm program and smail uses a different locking convention than does
sendmail.
-- 
	tron |-<=>-|		ARPAnet:  veritas!tron@apple.com
      tron@veritas.com		UUCPnet:  {amdahl,apple,pyramid}!veritas!tron