隔離

メールメッセージはプラグインまたはdrweb-maildモジュール自体からの要求に応じて隔離に移動され、/quarantine/path/def/name/ディレクトリ内に保存されます。nameは要求を行ったモジュールの名前です。

メッセージが隔離に置かれると、ファイルが2つ作成されます。1つはメッセージ本文(その名前はFilenamesModeまたはFilenamesPrefixパラメータ内の設定に応じて作成され、"_"は全て"."に置き換えられます)、もう1つはエンベロープ用のものです。

エンベロープは以下の書式で保存されます。

int4_t - 送信者アドレスの長さ
sN - 送信者アドレス
int4_t - 受信者の数
int4_t sN - 各受信者に対して。int4_tはネットワークバイトオーダー内の4バイト整数です。

MoveAllパラメータの値にYesが設定されている場合、Dr.Web MailDによって処理された全てのメールが/path/def/backup/ディレクトリに保存されます。

メッセージ本文が隔離ディレクトリに保存されるだけでなく、メッセージ自体が内部データベースに登録され、メッセージエンベロープ、保存した時間、隔離に移動した理由などの情報がそこに保存されます。

隔離はコントロールソケット経由で効率的に管理することが出来ます。コンロトールソケットに対するコマンドを使用して隔離内のメッセージを送信、リダイレクト、削除、検索することが可能です。

隔離にメッセージを保存しておく時間の上限はStoredTimeパラメータで設定することが出来ます。また、隔離のサイズの上限(MaxSizeパラメータ)とその中にあるメッセージ数の上限(MaxNumberパラメータ)も指定することが出来ます。

一度に複数の制限を指定した場合、それら全てが同時に適用されます。MaxSizeMaxNumberの制限は新しいメッセージが隔離に保存される度に検査されます。StoredTime制限は定期的に検査され、その周期はPulseTimeパラメータで指定されます。

drweb-qpユーティリティは古いメッセージを隔離から削除し、外部DBIデータベースに移します。Perlバージョン5.0以降で動作します。drweb-qpへのパスをPathToDrwebQpパラメータ内で指定する必要があります。drweb-qpの初期化はPulseTimeパラメータによって実行されます。PulseTimeパラメータに0が設定されている場合、StoredTime制限およびdrweb-qpユーティリティは使用されません。