[sylpheed-jp:10275] Re: Sylpheed 2.4.0 (stable) released

Hiroyuki Yamamoto hiro-y @ kcn.ne.jp
2007年 4月 21日 (土) 20:31:51 JST


山本です。

On Sat, 21 Apr 2007 01:56:24 +0900
Akihiro Okamura <aokamura @ iris.eonet.ne.jp> wrote:

> IMAP + SSL でも、落ちました。
> 環境は、Windows Vista Ultimate + Sylpheed 2.4.0(正式版)です。
> この現象は、2.4.0rc では発生しませんでした。
> 
> 
> On Fri, 20 Apr 2007 22:34:45 +0900
> Matsuuchi Katsutoshi <mazuchk @ mx12.freecom.ne.jp> wrote:
> > そして、libeay32.dll とssleay32.dll を古いバージョンに戻すと正常に受
> > 信できます。
> 
> 私のところでも 2.4.0rc 同梱のこれらファイルを使うと、落ちませんでし
> た。 sylpheed.log には、下記のログしか出力されていませんでした。
> [01:44:11] * message: ***.***.**.jp:993 へのIMAP4の接続を確立中...
> 
> 
> これらの DLL、2.4.0rc 同梱のものは MSVCRT.DLL にリンクされていますが、
> 2.4.0 正式版のものは MSVCR71.DLL を使うようですね。
> これが何か問題に関係しているのでしょうか??

恐らくこれが原因ではないかと思われます。 Sylpheed のほかのモジュールはす
べて msvcrt.dll にリンクしているのに OpenSSL だけ msvcr71.dll にリンクし
ているため、不整合が生じているのではないかと推測されます。 Ruby でも
iconv.dll で同じような問題があったように記憶しています。

同梱の DLL は http://www.slproweb.com/products/Win32OpenSSL.html
にあるものを使用しているのですが、恐らく開発環境が変わって msvcr71.dll
にリンクするようになったのではないかと思われます。

とりあえずの対策としては、以前のバージョンのものを使用すると回避可能で
す。 0.9.8d -> 0.9.8e はセキュリティホールの修正はないので、問題はないか
と思われます。とりあえず DLL を差し替えたバージョンをリリースしようかと
考えています。

正式には、自前で OpenSSL をビルドするようにするか、 Shining Light
Productions に msvcrt.dll にリンクしてもらうようにするかになります。

# しかし手元の 2000 / XP では全く問題が発生しないのが不思議。

-- 
Hiroyuki Yamamoto <hiro-y @ kcn.ne.jp>


Sylpheed-jp メーリングリストの案内