ruby-changes:9805
From: akr <ko1@a...>
Date: Mon, 5 Jan 2009 22:40:49 +0900 (JST)
Subject: [ruby-changes:9805] Ruby:r21346 (trunk): don't get a name for anonymous Unix socket.
akr 2009-01-05 22:40:42 +0900 (Mon, 05 Jan 2009) New Revision: 21346 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=21346 Log: don't get a name for anonymous Unix socket. Modified files: trunk/test/socket/test_unix.rb Index: test/socket/test_unix.rb =================================================================== --- test/socket/test_unix.rb (revision 21345) +++ test/socket/test_unix.rb (revision 21346) @@ -5,6 +5,7 @@ require "test/unit" require "tempfile" +require "tmpdir" class TestUNIXSocket < Test::Unit::TestCase def test_fd_passing @@ -167,17 +168,20 @@ end def test_initialize - Socket.open(Socket::AF_UNIX, Socket::SOCK_STREAM, 0) {|s| - addr = s.getsockname - assert_nothing_raised { Socket.unpack_sockaddr_un(addr) } - assert_raise(ArgumentError) { Socket.unpack_sockaddr_in(addr) } + Dir.mktmpdir {|d| + Socket.open(Socket::AF_UNIX, Socket::SOCK_STREAM, 0) {|s| + s.bind(Socket.pack_sockaddr_un("#{d}/s1")) + addr = s.getsockname + assert_nothing_raised { Socket.unpack_sockaddr_un(addr) } + assert_raise(ArgumentError) { Socket.unpack_sockaddr_in(addr) } + } + Socket.open("AF_UNIX", "SOCK_STREAM", 0) {|s| + s.bind(Socket.pack_sockaddr_un("#{d}/s2")) + addr = s.getsockname + assert_nothing_raised { Socket.unpack_sockaddr_un(addr) } + assert_raise(ArgumentError) { Socket.unpack_sockaddr_in(addr) } + } } - Socket.open("AF_UNIX", "SOCK_STREAM", 0) {|s| - addr = s.getsockname - assert_nothing_raised { Socket.unpack_sockaddr_un(addr) } - assert_raise(ArgumentError) { Socket.unpack_sockaddr_in(addr) } - } end - end if defined?(UNIXSocket) && /cygwin/ !~ RUBY_PLATFORM -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/