I've been trying for a couple fo days to get Smail 3.1.29.1 running under
Linux 1.2.13 (Slackware 3.0) without much luck. Mail going outside the local
machine works fine but local delivery fails. Well, actually sometimes it
works and sometimes it doesn't. Mostly it doesn't. To test this, I've been
entering the following command (as root):
smail -d userid <testfile
where testfile is just something I had lying around and userid is one of
several things:
- if userid is an invalid local user (i.e. not in the passwd file)
the smail debug output correctly indicates that the user is unknown.
- if userid is pbash (a valid user), I get
"... deferred: (ERR_134) transport local: failed to lock mailbox".
Further investigation reveales that this is failing with a
"Permission denied" error trying to lock "/var/spool/mail/pbash".
/var/spool/mail/pbash exists and has owner "pbash" and group "mail"
with "-rw-rw----" permissions. Smail is installed suid root.
- if userid is "root", I get a segmentation fault (this is repeatable)
- if userid is "postmaster", an alias for root, the mail is correctly
delivered to root! (???)
Just from looking at the code, it seems that part of the problem is that
smail defaulted to the "nobody" userid for some reason. The code implies that
for some reason it couldn't find "pbash" so it took a default. The problem
is that "pbash" certainly exists. None of this explains the segmentation
fault when trying to mail root.
I built smail from scratch using the conf/os/linux configuration file. While
this was done for a Debian release, I've not seen anything in it that
wouldn't work for Slackware.
Any help at all would be appreciated.
--
Paul Bash