PGNet Dev:
> I've set up a postfix instance
> 
>       [127.0.0.1]:10003  inet  n  -  n -  -  smtpd
>         -o syslog_name=postfix/after-filters
>         ...
>         -o 
> receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_address_mappings,no_milters
>         -o content_filter=relay-internal:[internal-mx.example.com]:10001
> 
> which relays after all pre-queue filters, and final queuing via
> 
>       relay-internal           unix - -   n   -       -       smtp
>         ...
> 
> Mail flows as intended.
> 
> I'd like to do a final pcre header check BEFORE doing the relay,
> REJECTing on match of a X-Spam-Level header if/when set by ANY
> prior, pre-Q filter.

Postfix has milter_header_checks for message headers
that are added by a Milter.

        Wietse

milter_header_checks (default: empty)
       Optional  lookup  tables for content inspection of message headers that
       are produced by Milter applications.  See the  header_checks(5)  manual
       page available actions. Currently, PREPEND is not implemented.

       The  following  example sends all mail that is marked as SPAM to a spam
       handling machine. Note that matches are case-insensitive by default.

       /etc/postfix/main.cf:
           milter_header_checks = pcre:/etc/postfix/milter_header_checks

       /etc/postfix/milter_header_checks:
           /^X-SPAM-FLAG:\s+YES/ FILTER mysmtp:sanitizer.example.com:25

Reply via email to