MacPortsのport:ruby19を1.9.3-p194に(セキュリティ修正あり)
ruby-1.9.3の新しいバージョンが公開されていたのでMacPortsも更新しました。RubyGemsのセキュリティ修正が含まれています。
openssl 1.0.1の問題
いつもコミット前にLionとSnow Leopardでtest-allを流して確認してるのですが、今回はtest_drbssl.rbのテストがたくさんerrorになりました。例をあげると、
50) Error: test_01(TestDRbSSLAry): DRb::DRbConnError: drbssl://...:64837 - #<RuntimeError: execution expired> /.../ruby19/work/ruby-1.9.3-p194/test/drb/drbtest.rb:30:in `block in ext_service' /.../ruby19/work/ruby-1.9.3-p194/test/drb/drbtest.rb:29:in `ext_service' /.../ruby19/work/ruby-1.9.3-p194/test/drb/test_drbssl.rb:56:in `setup' ./test/runner.rb:15:in `<main>'
て感じ。
調べてみると、どうもopenssl-1.0.1からの問題のようで、ruby-1.9.3-p125でもopenssl-1.0.1aで試すと同様の状況でした。今回はrubyのパッチレベルの問題ではないと判断したのでバージョンを上げています。
なにか問題が起きた場合は、opensslを1.0.1から1.0.0系に戻すと問題が解消するかもしれませんので参考まで。
(2012-04-28 追記:openssl-1.0.1から、SSLのRSA鍵が1024ビット必要になったためのようです。参考:ruby-trunk-changes r35427 - r35449 - PB memo)