procmail
[Top] [All Lists]

Re: Simple problem

1997-09-02 17:30:02
Date: Tue, 2 Sep 1997 16:36:52 -0400 (EDT)
From: "Tony D'Andrade" <blue(_at_)visinet(_dot_)ca>
Subject: Simple problem

:0
* ^From:.*(fred|barney|wilma|betty|dino).*
{
        :0
        | (formail -brt  -I 'From: Tony Smith <rpg(_at_)visinet(_dot_)ca>' ; \
        cat $HOME/.reply.message) | $SENDMAIL -t

        :0
        inbox
}

As a general rule, procmail stops processing as soon as mail is
delivered.  This is just as true within blocks as elsewhere.  The
solution is to set the "c" flag (carbon-copy) on the recipe that
forwards the mail.  This flag prevents procmail from stopping after
completing that recipe.  Then it will get to the inbox recipe and
stop.

A couple of other points.

First, do you already have an inbox recipe that you are simply
duplicating in the block?  If so, then you don't really need a block at
all.  You could simplify the entire block to the following (note the
"c" flag):

    :0 c
    | (formail -brt  -I 'From: Tony Smith <rpg(_at_)visinet(_dot_)ca>' ; \
    cat $HOME/.reply.message) | $SENDMAIL -t

This recipe forwards a cc: of the message to the address, and your
regular inbox recipe will still catch the message.

Second, you should be locking your inbox.  Either make inbox the
$DEFAULT and fall off the end of your rcfile, or else add the
lock modifier to your inbox recipe:

    :0 :
    inbox

Regards, Ed

-- 
DEAR ABBY: Do you think about dying much? -- CURIOUS 
 
DEAR CURIOUS: No, it's the last thing I want to do. 

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