diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-05-18 07:43:45 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-05-18 07:43:45 +0000 |
commit | 778fd514821c0e19e1695eda5688b2898d268382 (patch) | |
tree | b5d6fef44da37887458de1330b35e41bfc88e4d3 /test | |
parent | f4f71d6e6bfc7a678626734eef13364b1d0d78e5 (diff) | |
download | ruby-778fd514821c0e19e1695eda5688b2898d268382.tar.gz |
* test/ruby/test_m17n_comb.rb (test_str_crypt): Use Etc.confstr to
detect the glibc version.
libc.so is not an executable on Debian GNU/kFreeBSD 7.0 (wheezy).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-rw-r--r-- | test/ruby/test_m17n_comb.rb | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/test/ruby/test_m17n_comb.rb b/test/ruby/test_m17n_comb.rb index ee43c746f8..8258f422a1 100644 --- a/test/ruby/test_m17n_comb.rb +++ b/test/ruby/test_m17n_comb.rb @@ -1,4 +1,5 @@ require 'test/unit' +require 'etc' require_relative 'allpairs' class TestM17NComb < Test::Unit::TestCase @@ -724,12 +725,11 @@ class TestM17NComb < Test::Unit::TestCase end def test_str_crypt - begin - # glibc 2.16 or later denies salt contained other than [0-9A-Za-z./] #7312 - glibcpath = `ldd #{RbConfig.ruby}`[/\S+\/libc.so\S+/] - glibcver = `#{glibcpath}`[/\AGNU C Library.*version ([0-9.]+)/, 1].split('.').map(&:to_i) - strict_crypt = (glibcver <=> [2, 16]) > -1 - rescue + strict_crypt = nil + # glibc 2.16 or later denies salt contained other than [0-9A-Za-z./] #7312 + if defined? Etc::Etc::CS_GNU_LIBC_VERSION + glibcver = Etc.confstr(Etc::CS_GNU_LIBC_VERSION).scan(/\d+/).map(&:to_i) + strict_crypt = (glibcver <=> [2, 16]) >= 0 end combination(STRINGS, STRINGS) {|str, salt| |