Project

General

Profile

Actions

Bug #5853

closed

make test-all が OpenSSL::PKey::RSAError で止まる

Added by kyanagi (Kouhei Yanagita) over 12 years ago. Updated over 12 years ago.

Status:
Third Party's Issue
Assignee:
-
Target version:
-
ruby -v:
ruby 2.0.0dev (2012-01-06 trunk 34219) [i386-darwin9.8.0]
Backport:
[ruby-dev:45101]

Description

Mac OS X で make test-all を実行すると、以下のようなエラーが発生します。(1.9.3-p0 でも発生します)
Mac OS X だけで発生し、Debian 上では発生しませんでした。

% make test-all
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems "./test/runner.rb" --ruby="./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems"
/Users/ani/c/ruby-trunk/lib/drb/ssl.rb:79:in public_key': OpenSSL::PKey::RSAError from /Users/ani/c/ruby-trunk/lib/drb/ssl.rb:79:in setup_certificate'
from /Users/ani/c/ruby-trunk/lib/drb/ssl.rb:148:in open_server' from /Users/ani/c/ruby-trunk/lib/drb/drb.rb:759:in block in open_server'
from /Users/ani/c/ruby-trunk/lib/drb/drb.rb:757:in each' from /Users/ani/c/ruby-trunk/lib/drb/drb.rb:757:in open_server'
from /Users/ani/c/ruby-trunk/lib/drb/drb.rb:1342:in initialize' from /Users/ani/c/ruby-trunk/test/drb/test_drbssl.rb:33:in new'
from /Users/ani/c/ruby-trunk/test/drb/test_drbssl.rb:33:in <class:DRbSSLService>' from /Users/ani/c/ruby-trunk/test/drb/test_drbssl.rb:11:in <top (required)>'
from /Users/ani/c/ruby-trunk/lib/test/unit.rb:226:in require' from /Users/ani/c/ruby-trunk/lib/test/unit.rb:226:in block in non_options'
from /Users/ani/c/ruby-trunk/lib/test/unit.rb:220:in each' from /Users/ani/c/ruby-trunk/lib/test/unit.rb:220:in non_options'
from /Users/ani/c/ruby-trunk/lib/test/unit.rb:52:in process_args' from /Users/ani/c/ruby-trunk/lib/minitest/unit.rb:918:in _run'
from /Users/ani/c/ruby-trunk/lib/minitest/unit.rb:911:in run' from /Users/ani/c/ruby-trunk/lib/test/unit.rb:21:in run'
from /Users/ani/c/ruby-trunk/lib/test/unit.rb:639:in run' from /Users/ani/c/ruby-trunk/lib/test/unit.rb:671:in run'
from /Users/ani/c/ruby-trunk/lib/test/unit.rb:675:in run' from ./test/runner.rb:15:in '
make: *** [yes-test-all] Error 1

drb/test_drbssl.rb だけを実行しても発生しませんでした。

% make test-all TESTS='drb/test_drbssl.rb'
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems "./test/runner.rb" --ruby="./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems" drb/test_drbssl.rb
Run options: "--ruby=./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems"

Running tests:

....................

Finished tests in 4.830987s, 4.1399 tests/s, 13.4548 assertions/s.

20 tests, 65 assertions, 0 failures, 0 errors, 0 skips

ruby -v: ruby 2.0.0dev (2012-01-06 trunk 34219) [i386-darwin9.8.0]

Updated by kouji (Kouji Takao) over 12 years ago

私の手元でも再現しました。

OSXのバージョンは10.6.8 Snow Leopardです。
MacPortsのOpenSSL 1.0.0eを使うようにしたところ発生しなくなりました。
なお、OSX 10.6.8にプリインストールされているOpenSSLは0.9.8です。

Lionで再現しなければOSX 10.6.8にプリインストールされているOpenSSLの問題ということでRubyで対応しなくてもよいのではないかと思って、詳しい調査はしていません。

何かの参考になれば幸いです。

Updated by naruse (Yui NARUSE) over 12 years ago

  • Status changed from Open to Third Party's Issue

Mac 添付の OpenSSL は Ruby 用には使えないので、homebrew や MacPorts から入れてください。
http://www.christopherirish.com/2011/09/02/ruby-1-9-2-segmentation-fault-and-openssl/

Actions

Also available in: Atom PDF

Like0
Like0Like0