Subject: Re: mailing list restricted "accept" (how to) ? ; multigram options ?

From: [email-masked] (Stephen R. van den Berg)
Date: Tue, 27 Jul 1993 14:54:23 +0000

[]

:-).  Well, multigram has two criteria by which it decides if a word it
reads from stdin is a valid mail address.
1. The word should contain an "@" or an "!" and it should not contain
   two consecutive dots.  Trailing punctuation is stripped.  The word
   can not contain whitespace.   Directly surrounding parens are stripped.
   These seemingly convoluted rules make sure that most mail addresses
   can be fished out of an arbitrary text (including mail headers, mail
   bodies and signatures).
2. Criteria one of course doesn't find "local" mail addresses like
   "corrigan".  In order to catch those, one extra format is accepted:
   If the text on stdin starts with "From ", then the word following
   it will be taken as a mail address, regardless.

So, in your case, you fed multigram with a file on stdin that
did not contain any addresses that matched criterion 1. and since it
didn't start with the word "From ", corrigan was not seen as a valid
mail address.

BTW, addresses in the dist file are of course not subjected to those
two criteria.  For those the only criteria are:
	- Must be the first word on a line (the first white space character
	  after the word denotes the end of the address).
	- Must not start with a paren.

But, having said all this.  The multigram invocation that is used in
rc.submit to determine if a certain person is on the accept list
uses the "-m" option.  This causes multigram to output "-mF" or "-m"
if the person is on the list, and nothing if the person is not on the
list.

Also, the exit code of multigram will be zero (success) if the person
was on the list, and non-zero if not.

In v2.92 I rearranged the scripts quite a bit (and dropped the METOO
variable since sendmail doesn't support it (yet, maybe never)).
In the new rc.submit I only use the exitcode.