[net.bugs.usg] Sys V.0 'delivermail' problem

steve@gec-mi-at.co.uk (Steve Lademann) (09/30/86)

I'm having a problem with our mail network, and I'm wondering if anyone
out there has any bright ideas about how I can get round it.

We have an amorphous collection of Unix machines running a wide variety
of different flavoured Unixes (Unices?). There is a backbone VAX 11/750
running 4.2BSD which, amoung other things, works as a site mailer. It
currently distributes mail to Ultrix 1.1, 1.2, AT&T V.0 and V.2 over an
Ethernet, and to other machines using a variety of PSS, dial-up, and
direct lines using sendmail and UK-1.4 sendmail configurator with local
mods to add an extra rsh mailer.

The problem is with the V.0 machines, which happen to be Torches. They
use remsh to mail the 11/750, which works OK. As they are not equipped
with anything that listens on sockets, I am using rsh to send the mail
to delivermail on the Torch.  The problem is that the delivermail '-f'
switch (or -r) which can, I gather from the documentation, be used to
pretend that the mail came from somewhere else other than the logged-in
user blows up dramatically with all sorts of weird, inexplicable errors
caused I would guess by argv's and argc's getting corrupted. Now, I
haven't got any sources for V.0, so I can't go and debug delivermail,
and apart from that, the Torches are popping up on our Ethernet from
all sorts of places with monotonous regularity, and ensuring that
bug-fixed software is installed on them is a horrendous control problem
which I don't wish to get involved in, so does anyone have any
suggestions? At present, by omitting the '-f', all mail to the Torches
appears to come from user 'root', although I have used the '-s' switch
to prevent stripping of the 'From' lines in the message, so the
recipient does know where it came from originally. The problem is with
undelivered mail. It can't be mailed back, as delivermail thinks it
came from root. The best I can arrange is that it gets put into
/dead.letter. Not really a friendly way of dealing with it!  Is this
problem specific to Torches, or do all V.0 systems exhibit this
problem? (N.B. it's ok on V.2). Is there another way of delivering mail
which allows mail back, but doesn't involve an overworked system
manager in too much coding?

Thanks in anticipation


-----------------------------------------------------------------
|Steve Lademann         |Phone: 44 727 59292 x326               |
|Marconi Instruments Ltd|UUCP : ...mcvax!ukc!hrc63!miduet!steve |
|St. Albans    AL4 0JN  |NRS  : steve@uk.co.gec-mi-at           |
|Herts.   UK            |                                       |
-----------------------------------------------------------------
|"The views expressed herein do not necessarily reflect"| _____ |
|"those of my employer, and may not even reflect my own"| (   ) |
-----------------------------------------------------------------

guy@sun.uucp (Guy Harris) (10/07/86)

> The problem is with the V.0 machines, which happen to be Torches. They
> use remsh to mail the 11/750, which works OK. As they are not equipped
> with anything that listens on sockets, I am using rsh to send the mail
> to delivermail on the Torch.  The problem is that the delivermail '-f'
> switch ...  Is this problem specific to Torches, or do all V.0 systems
> exhibit this problem? (N.B. it's ok on V.2).

Unclear; "delivermail" is not a standard part of System V, but is a
4.1BSD-ism, which Torch presumably added to their system.

> Is there another way of delivering mail which allows mail back, but
> doesn't involve an overworked system manager in too much coding?

There is a pretty logical way of fixing this problem; unfortunately, it does
involve some coding.  The reference to "rsh" indicates that you have some
sort of TCP/IP on the Torches, perhaps even something with a C-language
binding somewhat resembling that of 4.2BSD.  (I presume "they are not
equipped with anything that listens on sockets" means "they are not equipped
with anything that listens on the standard SMTP socket"; when you say you
use "rsh" to deliver mail to the Torches, I think of the "rsh" that comes
with 4.2BSD, and it certainly requires somebody to be listening on a socket
on the other side!)

As such, you might want to consider porting "sendmail" to the Torches; that
would mean you wouldn't have to monkey around with "rsh" (or "remsh", which
I presume is something similar), but could just have the VAXes open SMTP
connections to the Torches and *vice versa*.

Unfortunately, the 4.2BSD version of "sendmail" does take some work to make
it run under a non-4.2BSD system.  It also dereferences null pointers in a
couple of places; I don't know if the Torch permits this or not.  It may
also have assumed pointers and integers were the same size in some places.

The 4.3BSD version may have these problems fixed, at least in some places.

For "sendmail" to work, you need a rather hacked-up version of "/bin/mail",
that knows 1) to hand things to "sendmail" instead of delivering them
directly when you run it as a regular command and 2) how to deliver messages
when "sendmail" runs it with the appropriate flag ("-d").  However, I think
you also need that for "delivermail" to work.  If "/bin/mail" has been
hacked to work with "delivermail", you can probably get it to work with
"sendmail"; you may have to write a front end called "delivermail" that
monkeys with its flags and calls "sendmail".

If it *hasn't* been hacked to work with "delivermail", that may be what's
causing your problem....
-- 
	Guy Harris
	{ihnp4, decvax, seismo, decwrl, ...}!sun!guy
	guy@sun.com (or guy@sun.arpa)