procmail
[Top] [All Lists]

Re: How to stop mail loop

2000-03-15 14:01:05
On Wed, 15 Mar 2000, Professional Software Engineering was heard blurting out:

At 06:20 2000-03-15 -0800, Ron 'The InSaNe One' Rosson wrote:
* ^To: *all(_at_)domain(_dot_)com

However, implementing this in sendmail as previously described would be 
more sure-fire.  What if this address receives the message BCC (or CC: for 
that matter)?

* ^TO_all(_at_)domain\(_dot_)com

Which will catch it in Cc: headers, and in the received lines if your MTA 
injects BCC delivery information there (still a crapshoot if there were 
multiple local recipients).


Sendmail is not an option. So here is what I have for the recipe
(.procmailrc):

SHELL=/bin/sh
PATH=$HOME/bin:/usr/bin:/bin:/usr/local/bin:/usr/include:/usr/local/sbin:/bin:/s
bin:/usr/sbin:.
MAILDIR=$HOME/Mail
PMDIR=$HOME/.procmail
LOGFILE=$PMDIR/log
LOGABSTRACT=all
VERBOSE=no
LOCKFILE=$HOME/.lockmail

:0
* ^TO_all(_at_)domain\(_dot_)com
{
        # add a header - f is FILTER
        :0f
        | formail -A "X-Loop: all(_at_)domain(_dot_)com"

        # forward it (with the extra header).  the a flag isn't normally
        # necessary, but ensures that the above rule must have SUCCESSFULLY
        # completed before this takes place - thus hopefully sparing you from
        # grief if your formail gets trampled one day.
        :0a
        !jeff,bob,dave
}



Here is the .forward file
"!/usr/local/bin/procmail "

Here is the error I get when I send to all(_at_)domain(_dot_)com

   ----- The following addresses had permanent fatal errors -----
"!/usr/local/bin/procmail .procmailrc"
    (expanded from: all(_at_)domain(_dot_)com)

   ----- Transcript of session follows -----
550 /home/jeff/.forward: line 1: "!/usr/local/bin/procmail
.procmailrc"...
+User unknown


Any ideas??

TIA
-- 
-------------------------------------------------------------------
Ron Rosson                      ... and a UNIX user said ...
The InSaNe One                             rm -rf *
insane(_at_)oneinsane(_dot_)net         and all was /dev/null and *void()
-------------------------------------------------------------------
If Windows 95 is the answer, it must've been an incredibly stupid question.

<Prev in Thread] Current Thread [Next in Thread>