aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--test/socket/test_addrinfo.rb9
2 files changed, 14 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 44dd3cbecb..5d5f38a46a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Sat Mar 5 09:50:58 2016 Rei Odaira <Rei.Odaira@gmail.com>
+
+ * test/socket/test_addrinfo.rb (test_ipv6_address_predicates):
+ IN6_IS_ADDR_V4COMPAT and IN6_IS_ADDR_V4MAPPED are broken
+ on AIX, so skip related tests.
+
Sat Mar 5 09:17:54 2016 Rei Odaira <Rei.Odaira@gmail.com>
* test/rinda/test_rinda.rb (test_make_socket_ipv4_multicast):
diff --git a/test/socket/test_addrinfo.rb b/test/socket/test_addrinfo.rb
index a607a84172..02cd714d91 100644
--- a/test/socket/test_addrinfo.rb
+++ b/test/socket/test_addrinfo.rb
@@ -544,7 +544,14 @@ class TestSocketAddrinfo < Test::Unit::TestCase
# MacOS X returns IPv4 address for ::ffff:1.2.3.4 and ::1.2.3.4.
# Solaris returns IPv4 address for ::ffff:1.2.3.4.
ai = ipv6(addr)
- assert(ai.ipv4? || ai.send(meth), "ai=#{addr_exp}; ai.ipv4? || .#{meth}")
+ begin
+ assert(ai.ipv4? || ai.send(meth), "ai=#{addr_exp}; ai.ipv4? || .#{meth}")
+ rescue Minitest::Assertion
+ if /aix/ =~ RUBY_PLATFORM
+ skip "Known bug in IN6_IS_ADDR_V4COMPAT and IN6_IS_ADDR_V4MAPPED on AIX"
+ end
+ raise $!
+ end
else
assert(ipv6(addr).send(meth), "#{addr_exp}.#{meth}")
assert_equal(addr, ipv6(addr).ip_address)