メールシステムの管理

CFG - クラスの定義

アドレス書き換えルールの左辺で対応する単語のクラスを定義できます。たとえば、自分にメールを送信しないためには、このサイトのローカル名すべてのクラスを作成します。

大文字の英字の組み合わせでクラス名を選ぶことができます。小文字の英字と特殊文字はシテスムに使用されます。

クラスを定義する方法は、次の 3 通りがあります。

表 3-6 にクラス定義のさまざまな形式の構文を以下に示します。

表 3-6 構成ファイル内のクラス定義の構文

規則 

説明 

CX word1 word2

クラス X を指定された単語中の任意のものと対応させる 

FX fi1e [pattern]

file からクラス X 単語を読み込む

FX | command

command の出力をクラス X に読み込む

GXsearch_key

sendmailvars データベースから search_key を読み込み、クラス X に割り当てる

最初のフォームでは指定された単語をクラス X と対応するように割り当てます。次の例では、monetucbmonet という名前をクラス H に割り当てています。


CHmonet ucbmonet

第 2 の形式は、たとえば、FC /.rhosts など、ファイルからクラス X に単語を読み取ります。Pattern 引数が指定されている場合は、scanf を使ってファイルから読み込み、ない場合は、各行の最初の単語が使用されます。

第 3 の形式は、あるコマンドを実行してコマンドの標準出力からクラスの要素を読み取ります。


FC | awk '{print $2}' /etc/hosts  

第 4 の形式は、検索キーによって示された sendmailvars データベースにあるエントリからクラスの要素を読み込みます。たとえば、


GVuucp-list

これは、sendmailvars データベースにある uucp-list エントリからクラス V の定義を読み込みます。

sendmailvars データベースにあるエントリが、


uucp-list        sunmoon hugo comic  

の場合、V の値は sunmoon hugo comic になります。


注 -

sendmail/etc/mail/sendmailvars ファイルにある sendmailvars エントリを使用し、/etc/nsswitch.conf ファイルと名前空間を検索する順序を決定します。


クラス定義は、複数行に分割できます。たとえば、


CHmonet ucbmonet

は、次のようにも表示できます。


CHmonet 
CHucbmonet