LSTSRV-L Archives

LISTSERV Site Administrators' Forum

LSTSRV-L

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Stan Ryckman <[log in to unmask]>
Wed, 29 Jan 1997 22:46:58 -0500
text/plain (58 lines)
At 10:47 PM 1/29/97 +0100, Eric Thomas <[log in to unmask]> wrote:

>On    Wed,    29   Jan    1997    16:50:05    -0500   Valdis    Kletnieks
><[log in to unmask]> said:
>
>>Pray tell.. do you know of a  reliable programmatic way to detect that a
>>given  message   came  from   a  list,  and   therefor  should   not  be
>>vacation-replied to? If so, please share,  so that the world may benefit
>>;)

See below -- you may be sorry you asked!  :)

>If the  return path  starts with  owner- or ends  in -request  or -owner,
>changes are VERY GOOD that this comes from a mailing list. I'm sure there
>are lists that don't match this rule, but I doubt there are many.

The "Return-Path:" header is unfortunately optional (RFC 822), and is
added by the final transport system, so it is not under control of the
mailing lists.  The four systems I use don't make it available  :-(  .
UNIX-style messages/mailboxes will generally be found to contain a
"From " header at the beginning with this information which, if you can
get at it, may be useful, but this is not an RFC mail headerfield.
In some documentation you may see this loosely called a From_ header.

More generally, vacation programs (if used at all -- I tend to agree with
Peter that they are best left unrun) shouldn't respond to any sort of
mailer daemons (including other vacation programs!), not just lists.
The man pages for procmail give a heuristic (which they abbreviate
"^FROM_DAEMON") regular expression to match on the headers
as follows (take a deep breath!):

     If the regular expression contains `^FROM_DAEMON' it will be
     substituted by `(^(Precedence:.*(junk|bulk|list)|(((Resent-
     )?(From|Sender)|X-Envelope-From):|>?From )(.*[^(.%@a-z0-
     9])?(Post(ma?(st(e?r)?|n)|office)|(send)?Mail(er)?|daemon
     |mmdf|root|n?uucp|smtp|response|LISTSERV|owner|request|bounce
     |serv(ices?|er)|Admin(istrator)?)([^).!:a-z0-9].*)?$[^>]))',
     which should catch mails coming from most daemons (how's
     that for a regular expression :-).

(Those are case-insensitive matches, BTW.)

In addition, the sample procmail vacation responder also adds one of
the Precedence: values to its own outgoing response, as well as
"X-Loop: [log in to unmask]" -- and then if something arrives with that
X-Loop, doesn't reply to it either.  It also maintains a database of
addresses sent to, and only sends once to any one of them.

I don't use vacation responders, but I do run a game via an autoresponder,
and have only had one false match on ^FROM_DAEMON out of 60-odd players --
that was an address such as
        "[log in to unmask] (system admin for somewhere)"
and the word "admin" triggered the don't reply logic.  He removed it
from his address comment field and is still playing.

Cheers,
Stan

ATOM RSS1 RSS2