# # メール本体によるフィルタリングのための pcre (PERL-compatible # regular expression; Perl 互換正規表現) マップファイルのサンプル。 # 文法の詳細は pcre_table(5) を参照してください。 # # メール本体行は一度に1行だけフィルタにかかります。MIME ヘッダは # メッセージヘッダとしてフィルタリングされます。つまりメール本体の # 一部ではありません。 # # 第1フィールドは perl 的正規表現です。表現のデリミタ(区切り文字)は # 空白文字と regexp ライブラリの特殊な意味をもつ文字以外ならどの # 文字でも使えます(伝統的にはスラッシュが使われます)。正規表現には # 空白を含めることができます。 # # デフォルトではマッチングは大文字と小文字は区別しませんが、 # 2つめのスラッシュに 'i' をつけると区別します。その他のフラグは # サポートされますが、他に役に立つのは 'U' だけで、これは # どん欲でないマッチングになります(これ以上の情報は PCRE の # ドキュメントとソースを参照してください)。 # # テーブルエントリのブロックを `if /pattern/flags' という行と # `endif' という行で「囲む」ことができます。これにより、 # 検索文字列にパターンがマッチしたときのみ、テーブルエントリの # ブロックが調べられるようになります。`if..endif' をネストする # こともできます。現在のところ `else' オペレータはありません。 # # 2番目のフィールドは "replacement" 文です - マッチするとその # テキストが返されます。 # # REJECT [optional text...] # メッセージ全体を拒否します。optional text は送信者に # 送られ、maillog ファイルに記録されます。 # OK このヘッダ行に対しては、以降のヘッダパターンを全てスキップ # します。 # IGNORE ヘッダ行は静かに破棄されます。 # WARN [optional text...] # メッセージヘッダと optional text がログに記録されます。 # これはテストの際に便利です。パターンに問題がなければ、 # WARN を REJECT や DISCARD に変えてください。 # HOLD [optional text...] # hold キューにメッセージを置きます。hold にあるメールは # postcat コマンドで調べることと、postsuper コマンドで # 破棄したり hold を解除したり(つまり配送したり)することが # できます。マッチしたヘッダは optional text とともにロ # グに記録されます。 # DISCARD [optional text...] # 配送の成功を主張した上で、静かにメッセージを破棄します。 # マッチしたヘッダは optional text とともにログに記録さ # れます。 # FILTER transport:nexthop # メッセージがキューに入った後で、そのメッセージはコンテ # ンツフィルタに送られます。これはフィルタの前後に異なる # cleanup サーバが必要となり、後の cleanup サーバでは # header/body checks を無効にします。コンテンツフィルタ # リングのさらなる情報は Postfix FILTER_README ファイルに # あります。この機能は main.cf content_filter 設定を上書 # きします。 # # マッチした表現からサブストリングスへの置換は典型的な perl 文法を # 使えば可能です。文置換の際に空白が続かないのであれば、そのマクロは # curly braces {} で保護することが必要かも知れません(下の例を参照)。 # # 空白ではじまる行は継続行です - その行は前の行に追加されます(正規 # 表現の前に空白があってはいけません!)。 # base 64 でエンコードされたブロックはスキップします。これにより # CPU サイクルの大きな節約になります。Liviu Daia により現され、 # Victor Duchovni によって修正されました。 # PCRE バージョン 3 が必要です。 ~^[[:alnum:]+/]{60,}\s*$~ OK # あなた自身の本体パターンをここに書いてください。