メールキューディレクトリ

キューディレクトリは次のように複数のディレクトリからなります。

new/
active/
incoming/
deferred/
info/sender/
info/recipients/
info/transport/
isolated/
info/ には envelope 情報が格納されます。 isolated/ は隔離された不正なメール(ほぼ 100 % SPAM)置場です。 また incoming/ は incoming queue ですが、それ以外のディレクトリは outgoing 用です。

outgoing の キューファイルを作る時は、一旦 new/ に作成します。 キューファイルを作る作業が終了し、配送準備 OK となったら new/ から active/ に移動されます。 つまり active/ にあるファイルは配送準備ができているものです。

処理の途中でエラーが起こったら、new/ に残骸が残ります。 定期的にゴミは消すようにしていますが、しばらくは残るわけです。 そのあいだは救出するチャンスともいえますね。

queue ディレクトリをロックする

特定の $queue_id object ごとに lock() と unlock() メソッドを使い、 ロックをかけます。 ロックは active/$queue_id ファイルに対しての flock(2) システムコールです。

fml 8.0 (fml-devel) project homepage is www.fml.org/software/fml8/.
fml 4.0 project homepage is www.fml.org/software/fml4/.
about one floppy bsd routers, see www.bsdrouter.org/.
other free softwares are found at www.fml.org/software/.

author's homepage is www.fml.org/home/fukachan/.
Also, visit nuinui's world :) at www.nuinui.net.

For questions about FML, e-mail <fml-bugs@fml.org>.