PMail Server 開発者向け情報

以下の情報の利用に関しては利用者自身の責任において使用して下さい。
ファイルフォーマットに関しての質問は受け付けますが、フォーマットの変更。利用する為のツールの作成などは要望は受け付けておりません。

以下の形式内で String と表記されている箇所は Pascal 形式での文字列領域です。
String[10] の場合は
[文字列長][文字1][文字2][文字3][文字4][文字5][文字6][文字7][文字8][文字9][文字10]
と格納されています。String[10] に文字列が PMSRV が格納されている場合は[0x05][P][M][S][R][V][不定][不定][不定][不定][不定]
となります。必ずしも Null Terminate されているとは限りませんので C言語で利用される方はご注意下さい。
Boolean (真偽)は True の場合は 0x01 False の場合は 0x00 が格納されます。


PMail Server で利用されているファイルフォーマット。

●通常配信用 IMDファイルフォーマット

送信フラグWORD
bit 単位で下記を指定
1bit ...送信先(0...Local Host への強制送信、1...外部への送信)
2byte
送信元のエイリアスString[64]65byte
送信元のドメインString[64]65byte
メールIDString[64]65byte
送信先のエイリアスString[64]65byte
送信先のドメインString[64]65byte
予約WORD2byte
予約String[64]65byte
予約String[64]65byte
予約String[64]65byte
予約String[64]65byte
予約Boolean1byte
予約byte1byte
予約byte1byte
予約WORD2byte
予約WORD2byte
予約WORD2byte
予約WORD2byte
予約WORD2byte
予約WORD2byte

IMD ファイルは MTA が処理を行う為に必要な情報を記録したファイルです。spool フォルダへ、IMD ファイルと EMLファイル(メール本文)を置くことにより PMail Server が自動でメールを配信します。

メールヘッダに関しては別途RFCを参照して下さい。

EPF ファイル
ヘッダChar[4] "PHDF"
Reserved 1Byte (0で予約)
FilenameString[255]
FileSizeDWORD (展開時ファイルサイズ)
CompressSizeDWORD (圧縮時ファイルサイズ)
Compress MethodByte 0...Deflate圧縮
SHA1 Digest_Achar[16] (オリジナルのSHA1ハッシュ値)
SHA1 Digest_Bchar[16] (圧縮後のSHA1ハッシュ値)
データ部Inflate圧縮され CompressSize 分データが続きます
EPF ファイルは上記の繰り返しとなります。ヘッダ部はファイル毎に付きます。