[comp.mail.sendmail] redirecting error notices to mailing lists

jorgnsn@qucis.queensu.ca (John Jorgensen) (08/04/90)

I need to set up a mailing list so that error reports which occur when
delivering to its recipients are directed to the list maintainer,
instead of to the people who mail submissions to the list.  I am
running Sun's sendmail 4.0 on a Sun 3/160, SunOS 4.0.3.

I started out with the following in /etc/aliases:

  list: :include:/staff/maintainer/list-members
  owner-list: list-request
  list-request: maintainer

But that only mails to list-request when the error is discovered
immediately by the sendmail process running on our mailhost.  We relay
our external mail through a neighbouring host, so most delivery errors
are not detected by our mailer daemon.

So, I went back to my collection of suggestions saved from USENET, and
tried this:

  list: "|/usr/lib/sendmail -flist-request list-out"
  list-out: :include:/staff/maintainer/list-members
  owner-list: list-request
  owner-list-out: list-request
  list-request: maintainer

Usually, this does show list-request on the UNIX From_ line, and it uses
list-request as the sender when sendmail talks SMTP, but I'm not sure
it does the job completely.

First, when local users on our mailhost send to the list alias, their
userids are NOT replaced by list-request on the From_ line, presumably
because sendmail is run under their uids and they are not trusted
users.  Is there anything I can do about that, without making everyone
a trusted user?

Second, the outgoing messages don't have any 
"Sender: list-request@qucis.queensu.ca" header line, like 
the Sender: lines I see on messages I receive from Sun-managers and
Sun-nets.  How do I insert Sender: lines into messages sent to the
list alias?

Finally, one of my saved suggestions had this variation for the list
alias:

  list: "|/usr/lib/sendmail -oi -flist-request list-out"

The manual tells me that "-oi" causes sendmail to ignore dots in
incoming messages, but I don't know when it is a good idea to do so.
Could somebody enlighten this neophyte?

Thanks a lot.

John Jorgensen		jorgnsn@qucis.queensu.ca	(613) 545 6784
Systems Programmer, Dept. of Computing Science, Queen's University

lear@turbo.bio.net (Eliot) (08/05/90)

Sendmail makes it hard for you to do it right - what you would like
to do is pipe the whole message back through sendmail to set the
From_ line to list-request.  So what you need is an additional
address- list-dist that points to your include file.  Ideally you
would then change the list alias to be something like the following:

list: "|/usr/lib/sendmail -flist-request"

The problem you'll have is that sendmail won't let you use -f from
aliases when mail originates locally.  The cheap solution
is to write a small setuid filter that merely calls sendmail.
-- 
Eliot Lear
[lear@turbo.bio.net]