[Mew-dist 1408] Mew-1.87 MIME related bugs

Koji Yamamoto koji at example.com
1997年 7月 31日 (木) 19:50:05 JST


こんにちは、東京インターネットの山本です。

やっと先週、1.8x に移行しました(それまでは1.06を使っていた)。
なかなか快調なのですが、いくつか気が付いた点があるので報告します。

(1) Multipart/External-Body の ftp/anon-ftp の不具合

ftp/anon-ftp で、directory が絶対パスでない(先頭が"/"でない)場合
に、ftp に失敗します。
(expand-file-name name directory) としているせいで、カレントディ
レクトリからの相対パスに展開されているためなので、これを修正すれ
ばいいのですが、ちょっと疑問がでてきました。

RFC2046 を読んでみたのですが、External-Body の ftp/tftp/anon-ftp 
では、directory は相対パスで指定するのか絶対パスで指定するのかは
書いてありません。tftp/anon-ftp の場合は一意に決まると思うのです
が、ftp の場合は、相対パスで指定された場合、ホームからの相対パス
と解釈すればよいのでしょうか。それとも / からのパスと解釈するべ
きなのでしょうか。
数人に聞いてみたところ、そもそも ftp したときのデフォルトのディ
レクトリがホームである保証はないし、ホームの概念が存在しない OS 
もあるのだから、すべて / からのパスと解釈するのが妥当ではないか、
との意見が多いようでした(僕もそう思います)。

で、その解釈でいいとしたら、以下のパッチをあてればいいと思います。

--- mew-ext.el.org      Mon Jul 28 11:51:09 1997
+++ mew-ext.el  Thu Jul 31 17:52:52 1997
@@ -319,7 +319,7 @@
         (getit t) (username "") (buffer-read-only nil)
         filepath localfile lfname remotefile)
     (if directory
-       (setq filepath (expand-file-name name directory))
+       (setq filepath (expand-file-name name (concat "/" directory)))
       (setq filepath name))
     (erase-buffer)
     (insert " ####### ####### ######  \n"
@@ -366,7 +366,7 @@
         (getit t) (buffer-read-only nil)
         filepath localfile lfname remotefile url)
     (if directory
-       (setq filepath (expand-file-name name directory))
+       (setq filepath (expand-file-name name (concat "/" directory)))
       (setq filepath name))
     (erase-buffer)
     (insert " Anonymous \n"

(2) Mime-Version: 1.0 Content-Type: text なメイルの扱い

Mime-Version: 1.0
Content-Type: text
というヘッダのついたメイルを読もうとすると、BINARY と言われます。
どちらか片方だけなら、問題ありません。
MIMEのRFCを読むと、たしかにこれは正しくないように思えるので、仕
様ならまあ、そういうものだと納得します。
ただ、C-c TAB で表示しようとすると、Not a part と言われて表示で
きません(Multipartじゃないので当然か)。

#なんで、こんなメイルがくるのか、というと、X-Mailer: ScoMail 3.0.Bd
#というメイラーがMime-Version: 1.0 だけがついた(Content-Type: 
#のない)メイルを出すようなのですが、うちで受け取る時に Solaris 
#の /bin/mail が Content-Type: txt (とContent-Length:)	をつける
#のでこういう結果になってます。

(3) PGP で署名したメイルをBcc: したとき

送受信者ともに、Mew-1.87 を使ってるとします(まあ、自分宛で試せば
よいわけです)。
Bcc: したメイルは Bcc: された人には Message/Rfc822 でくるんで送
られますが、PGP で署名したメイルを Bcc: すると、受け取った Bcc: 
の受信者がMewでこれを読むと(検証に失敗しているのかどうかわかりま
せんが)、外側にも、内側にも、X-Mew: のヘッダがつきません。

実際、どういうふうになるべきか、よく考えてないのでわからないので
すが、試してみていただければと思います。

(4) ESC a で Skip MIME analysis したときのメッセージ

マイナーな問題ですが、MIME 解析をしないときは、いつも
Too large... のメッセージを出してるようです。


以上、いくつか気が付いた問題点でした。

P.S. ML の配送ですが、数日前から SINET 方面へのルーティングが混
乱してて、本来の経路を通らずに混みまくってるところを通ってるので、
ちょっと本来の実力がでていない感じです。
これが直れば、もっと速くなるのですが...


Koji Yamamoto
koji at example.com
TokyoNet Engineering Task Force



Mew-dist メーリングリストの案内