🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.mail.mush
Article #338

Re: Backend for sendmail wanted (that won't crash MUSH)

#338
From: Bart Schaefer
Date: Mon, 07 Sep 1992 15:35
50 lines
3001 bytes
On Sep 6,  8:30pm, Jeffrey L Bromberger wrote:
} Subject: Backend for sendmail wanted (that won't crash MUSH)
}
} I am running a vanilla SysV machine, and I'm looking for a back end for
} sendmail.  This should be able to add local mail to mailboxes.

If you've got sendmail you aren't really vanilla SysV. :-)

} You see, I have this "pseudo-hack" that I'm using now, but there are
} problems with the MUA called MUSH.  Whenever I am using mush, and mail
} comes in, there's a 50/50 chance I get the following messages:
} 
} Unable to lock "/usr/spool/mail/jeffrey": Permission denied
} Unable to open /usr/spool/mail/jeffrey: Permission denied
} Can't load new mail: "/usr/spool/mail/jeffrey" may be corrupted!
} 
} I have no option at this choice but to abort mush and lose the changes
} I have made to my mailbox.  This gets very frustrating :-(

On a vanilla SysV machine, you should be compiling Mush with DOT_LOCK
defined and the binary needs to be set-group-id to group "mail".  I'm
guessing (since you are asking about local delivery agents) that you
have the admin permissions necessary to do this.  Mush revokes its
setgid permissions when it starts up and only reinstates them when it
needs to lock the spoolfile.  These changes should make Mush work fine
with SysV /bin/mail as the local delivery agent.

If you already have DOT_LOCK and setgid "mail", then I don't know what
the problem is.  It looks (from the source) like the locking call to
fcntl(fd, F_SETLKW, &l); is returning -1 and errno = EPERM, but I can't
imagine why it would fail with EPERM only part of the time.  (If the
fopen() were failing with EPERM, you wouldn't see the "Unable to lock",
so it doesn't have anything to do with mandatory locking or the like.)

} My request - any suggestions on the best one to use?

Either Chip Salzenberg's "deliver" or S.R. van den Berg's "procmail".
(Does "berg" mean "local delivery agent" in Dutch or something? ;-)
Patch #5 for mush will include procmail's NFS-secure lockfile creation
routines; "deliver" uses a similar technique.  You can do a lot more
run-time customization of deliver; procmail is smaller and possibly a
little more robust in the face of a near-disastrous lack of system
resources (though deliver is reasonably good about this too).

Get deliver from comp.sources.reviewed, procmail from comp.sources.misc
(I believe, somebody will correct me).

-- 
Bart Schaefer                                     schaefer@zigzag.z-code.com
Z-Code Software Corp.                             schaefer@z-code.com
Technical Details
Message-ID: <9209070835.ZM13799@zigzag>
Path: arc1-ca.pugleaf.net!sparky!uunet!gatech!bloom-beacon!INTERNET!dont-send-mail-to-path-lines

Show Full Headers
Complete Article Headers
Newsgroups: comp.mail.mush
Path: arc1-ca.pugleaf.net!sparky!uunet!gatech!bloom-beacon!INTERNET!dont-send-mail-to-path-lines
From: bart@zigzag.UUCP (Bart Schaefer)
Subject: Re: Backend for sendmail wanted (that won't crash MUSH)
Message-ID: <9209070835.ZM13799@zigzag>
Sender: daemon@athena.mit.edu (Mr Background)
Reply-To: bart@zigzag.z-code.com
Organization: The Internet
Date: Mon, 7 Sep 1992 15:35:20 GMT
Lines: 50