procmail
[Top] [All Lists]

Handling forward bounces

1997-03-16 15:46:20

Well, my ISP is really happy with me -- I managed to crash their router,
and server (and end up with a booty of mail in my spool in the process too).

I receive my mail via a domain account on one ISP.  Since I process it with
Procmail, it isn't left in the mailspool for me to download via POP, so
anything that isn't an auto-reply or dev/null type of message, I forward
along to a POP mail account elsewhere.  It'd be great if I didn't have to
do this.


Well, last night, the ISP where my POP mail account is, had some severe
problems, and bounced all mail to a variety of users.  I was one (well,
two, but I digress).  So, a message comes into my domain, and forwards
along to my POP account, which bounces it, which is in turn forwarded to
the account that is bouncing.  You saw it coming, right?

The problem is that, if *I* send a message, and it bounces, I want to see
that mail daemon bounce message - I don't just want to ignore all daemon
messages.  Also, for the inquisitive, I do have daemon handling on my
autoreplies - just not on the basic forward operation.  Oops.

Given a specific address, how would a recipe be constructed so as not to
only file the bounce message, but not send it if it incorporates my POP
address?

I've currently got a simple catch at the top of my procmail:

        :1 :
        * ^FROM_MAILER
        ARCHIVE-daemon

Which (should) just be catching all mailer messages and filing them, then
stopping, right?  FROM_DAEMON of course catches just about all mail from
lists, which is rather undesireable -- I would have thought the opposite.

I'd like to change this to something more like:

        #file this mailer error.  Continue to examine.
        :1 c:
        * ^FROM_MAILER
        ARCHIVE-daemon

        #forward all bounces that aren't bounces to me.
        :0 Aw
        * !B "550 forward_address"
        !forward_address

        :0 E
        {
                # Do nothing.  Just terminate.
        }

Is this proper, and what is the syntax for the egrep match correct?

Also, on a related note, are there any handy ways to flag messages for
(manual) re-send when the POP problem is fixed?  Something like extracting
the reported message IDs from the daemon archive, and extracting them from
the mailbox they were originally archived to (before the original forward)?

<Prev in Thread] Current Thread [Next in Thread>
  • Handling forward bounces, Professional Software Engineering - Lists account <=