[3] 要約メッセージの書式。
Tailer かと思って尻尾と訳しちまったよ・・。 Trailer ってどう訳せばいい? 辞書に拠ると追跡者, 引きずるもの, トレーラー, トレーラーハウス・・・
ある RFC 822 メッセージの中身が RFC 1153 かどーかを判別する 方法はありません。困ったもんです。
[7] MIME では multipart/digest媒体型があるのでそちらを 使うべきだと思うのですが、わけあって RFC 1153 形式を出力する 時に、そのことを頭にメモっとくのは悪い考えではないと思います。
[8]
そんなわけで、
text/x-message-rfc1153
媒体型名を提案します。
message/rfc1153 なんてのもいいかなーというきもするのですが、
message/* の未知の媒体型は application/octet-stream媒体型
扱いになるので、それは困ったなーと。 application/*媒体型
にしても良いんですが、いや、同じ理由でよくないでしょう。
ていうか内容は概ね人間可読なので、 text/*媒体型で問題ないかと。
必須パラメーターは無しです。 charset パラメーターは使っては いけません。
preamble の charset 指定はやっぱり 何らかの形であった方がいいでしょうね。 RFC 1153 形式は 元々 MIME 以前からの形式であって、 US-ASCII 以外の charset とかでもふつーに使ってたんですから。
んだけど、折角だから(謎)、 charset 以外もってことで、 Content-Type:領域の中身にあたるのを丸ごと媒体型 パラメーターにしてしまった方がいいかも。
てことで、 x-preamble-type パラメーターを 次の例のように使うことにしましょう。
で、冗長性を除く為に、値が "text/plain; charset=us-ascii" である場合は省略しても良く、互換性のために 紐解き実装はこれ以外の値が省略されていると見なされる ものも解釈しようと試みなければならないってことで。
それから、値の中身の媒体型は "text/plain" を受け入れなければならず、 それ以外の値は "text/plain" であるものと見なして良く、 text/plain媒体型の format パラメーターは無視しても良く、 format=fixed (既定値) の "text/plain" 以外を値に持つ メッセージを生成するべきではない。 (だって実装が 面倒なんだもん。それに、そんなの要らんでしょ。)
Trailer については、ほんとはこれもなんとかせなあかんのだろーけど、 面倒なので棚上げ。
CTE は通常 "7bit" で十分でしょうが、囲まれたメッセージが "8bit" やら "binary" やらの可能性もありますから、その時は Quoted-Printable を使うのが良いでしょう。
中継する MTA は囲まれたメッセージを勝手に書き換えては いけません。とでも規定しておくのが良かろう。
fml に RFC 1153 形式で送るように頼むと、 Subject:領域は、
こんな風になります。 X-MLServer: 領域あたりで fml かどうか判定して、かつ Subject: 領域に「Digest (RFC1153)」 と書いてあった場合は、 RFC 1153 形式と判断して良いでしょうか。
但し Content-Type:領域は
となってます。 charset はちゃんと判定してるんでしょうか? ソースは読んでませんが、実際に試したところでは、決め打ちしてるように思えます。
CRLF 70( "-" ) CRLF があって、 CRLF CRLF 30( "-" ) CRLF CRLF 'End of ' 1*OCTET ' Digest' *OCTET CRLF *( "*" ) [CRLF] で本文が終わってれば、 RFC 1153 要約メッセージ だってことにしてしまっていいですかね? もちろん CT: がない、非 MIME メッセージだった場合に。
[4] RFC 1153 曰く、由緒正しい方法で、 RFC934 なんて若造でダメダメなのねん。
[2] 名無しさん: rfc-index では Status: EXPERIMENTAL ですが、 IETF Application Area ではいずれ HISTRICAL にしようとしています。 (Candidates for Historic status http://www.apps.ietf.org/maybe-historic.html)
[9] でも未だに EXPERIMENTAL のままですね。 逆に >>2 はサーバーごと消失しているしw