http://www.sendmail.org/m4/tweaking_rulesets.html
書換規則の微調整
LOCAL_RULES
構成が複雑になる場合には、特別な書換規則を定義することができます。
LOCAL_RULES_3 では、ホスト名の正規化を行なうことができます。ここでの書
換はへッダに反映されます。
よくある使い方に、UUCPSMTP 機能を使用して、UUCP の宛先を SMTP 形式に
書き換えることがあります。たとえば、
LOCAL_RULE_3
UUCPSMTP(`decvax', `decvax.dec.com')
UUCPSMTP(`research', `research.att.com')
とすると、"decvax!user" や "research!user" が、それぞれ
user@decvax.dec.com や user@research.att.com に書き換えられます。
これは、データベースマップを用いてホスト名を検索するためにも使えます。
LOCAL_RULE_3
R$* < @ $+ > $* $: $1 < @ $(hostmap $2 $) > $3
この対応は、後で示すように LOCAL_CONFIG 機能でも設定することができま
す。
同様にして、LOCAL_RULES_0 を使うと、新しい書換規則を定義できます。たと
えば、MX レコードの参照によって送られてくるメールのホスト名をパースす
るために新しいルールが必要になります。その場合、次のようにします。
LOCAL_RULE_0
R$+ <@ host.dom.ain.> $#uucp $@ cnmat $: $1 < @ host.dom.ain.>
cnmat.Berkeley.EDU の MX レコードがこのホストを指している場合、このル
ールを使用します。このルールは、メッセージを取り込み、UUCP を使用して
それを転送します。
ルールセット 1 と 2 を LOCAL_RULE_1 や LOCAL_RULE_2 で細かく調整するこ
とが可能です。通常は、これらのルールセットには何も設定されていません。
LOCAL_CONFIG
似た機能に LOCAL_CONFIG があります。これを使うと開始部分の一連の
Option の設定の後かつ書換規則が始まる前に行を挿入することができます。
LOCAL_CONFIG のセクションに書換規則を書いてはいけません。このセクショ
ンは、ローカルのデータベース対応を書くのに使用します。たとえば次のよう
にします。
LOCAL_CONFIG
Khostmap hash /etc/mail/hostmap
Kyplocal nis -m hosts.byname
|