Sun, 19 Oct 97 01:25:16 +0900 頃の
   Mail-Count: 05047
      Subject: [ruby-list:5047] Re: mail address class   
についてのお話にて Shugo Maeda さん曰く… 
(S == shugo / po.aianet.ne.jp (Shugo Maeda) さん)

|やまだあきらです. 風邪気味でボーッとしてます.

In article 05047, <199710181617.QAA05847 / soleil.aianet.ne.jp>
S> 最近風邪が流行ってるみたいですね。

そうなんです, 流行ってるんです. 某うちの職場…

|あと, mime.rb をつらつらと眺めていて
|structured field のデリミタで分割できると
|あとあと嬉しそうだよなあと思いましたので
|そのように RFC822.rb に改造を加えてみました.
S> えっと,これはどの部分なのでしょう。

これまた RFC を読んでいないのですが
例えば Content-Type: text/plain; foo=\;; bar=" ; " みたいのは
許されるのでしょうか? …とか言う話です.

でもって, この辺りの解析が前述の改造によって
辺になってしまっていたので改修 & テスト中です(^_^;;)

|あと, MIME-Version: は特に見なくてもよいのでしょうか?
S> たぶん今のところ特に見なくても問題ないと思います。
S> 参照したい時はmsg.header["Mime-version"]とすればよいかなと。

というか, message body が MIME なものかどうかの
スイッチが MIME-Version: の有無になるとか言う話を
どこかで聞いたような *気* がしたのです.
これまたいい加減な話ですいません. 

# やっぱ RFC はちゃんと読まにゃならんか.
# RFC822, RFC204x は考えただけできが遠くなるなぁ.


|そろそろ body についての扱いも入れなくては > RFC822
S> もしそうなるのでしたら,initializeを
S> 
S>   def initialize(f)
S>     parseheader(f)
S>     parsebody(f)
S>   end
S> 
S> みたいに分けていただけると,ありがたいです。

そうですね. 
initialize の中でだらだらこねくり回すものでもないですよね.
ちゃんと考えねば.

|# ある程度のサイズ以上の body については
|# 一時ファイル作るとかしたいような.
S> たいていの場合はそこまでしなくても大丈夫ではないでしょうか。

とは思うものの, この手のものが使われる
(と言うよりも使おうと思っている)場面は
自動 reply などの自動処理や ML サーバとかでだろう
などと考えるわけで

S> でも,5MBのメールの話とか聞くと恐くなりますね(^^;

なんて話をまるっきり無視もできないんですよね.
ま, 数 MB 程度なら今時どうと言うことはないのでしょうが.
# しかし数 MB のメールが数通でも数十 MB ですからねぇ.

|これをみると Subject: ヘッダでのソートや
|MIMEMessage < RFC822 なクラスへのパターンマッチングが
|できるようになっていると嬉しい感じがしますね.
S> sortをイテレータとして使えば,たいてい事足りるので,<=>は

おぉ, なるほど. そういうものなのですね.
いやぁ, すごいなぁ > ruby

S> message/partialについては順番通りにbodyを連結してMIMEMessage
S> のコンストラクタに渡せば,うまく復元されることを確認できました。

S> 以下のようなスクリプトで試したところ,multipart/signedパートを
S> うまく検証できました。

おぉ, すごいですね(^_^)
なんだかいろいろ可能性が見えてきて楽しいっす.
ruby な ML サーバも夢じゃないかも.

S> それとmultipart/signedなパートを検証するのにヘッダの元の情報が
S> 必要なので添付するパッチを採用していただけないでしょうか?

はい, 了解です. 

# multipart/signed とくれば今度は signcontrol 形式かな?
--

 やまだ あきら (akira / linux.or.jp or akira / nurs.or.jp)
 Linux 関連ページ <URL:http://www.netlab.co.jp/~akira/linux/>