[mew-dist 21874] Re: sending wrong message to wrong person again

Kazu Yamamoto ( 山本和彦 ) kazu at example.com
2002年 10月 9日 (水) 16:30:14 JST


From: Shigeya Suzuki <shigeya at example.com>
Subject: [mew-dist 21873] Re: sending wrong message to wrong person again

> ああ、もしや、送信がうまくいかなかったりしたときに、バッファとして 
> .mqi ファイルとかのこって、悪さしてたりしないだろうか。

ひぃーーー。ご名答。

実験として、下記のパッチをあて、mew-smtp-command-done() でバッファを削
らないようにしてみました。

一回目にメールを送ると、(+queue/1 に対応する) 1.wrk というバッファが残
ります。

二回目に送ると、1.wrk というバッファがあり、+queue/1 の内容は insert 
されず、一回目のメールの内容(ヘッダ+本文)が利用されます。しかし、SMTP 
エンベロープとしては、二回目の宛先が使われます。

原因は、
	(1) mew-smtp-command-done() の途中で、エラーが起きたときに安全
            になっていない。
	(2) メールの送信時に古いバッファの存在をチェックしていない。
の 2 つのようです。

これから対策を考えます。

--かず

Index: mew-smtp.el
===================================================================
RCS file: /cvsroot/mew/mew/mew-smtp.el,v
retrieving revision 1.56
diff -c -r1.56 mew-smtp.el
*** mew-smtp.el	2002/09/02 02:37:13	1.56
--- mew-smtp.el	2002/10/09 07:23:18
***************
*** 180,186 ****
  	(mew-smtp-bcc pro pnm back)
        ;; killing buffer
        (set-process-buffer pro nil)
!       (mew-remove-buffer buf)
        (setq msgs (mew-smtp-get-messages pnm))
        (if (and msgs
  	       (mew-queue-get-next
--- 180,186 ----
  	(mew-smtp-bcc pro pnm back)
        ;; killing buffer
        (set-process-buffer pro nil)
! ;;      (mew-remove-buffer buf)
        (setq msgs (mew-smtp-get-messages pnm))
        (if (and msgs
  	       (mew-queue-get-next



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