1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* ext/socket/ancdata.c (bsock_recvmsg_internal): close FDs passed by

SCM_RIGHTS unless :scm_rights=>true is given.
  (discard_cmsg): extracted from rsock_discard_cmsg_resource.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
akr 2009-02-27 14:23:54 +00:00
parent a7d581fa2f
commit d8c66c4333
3 changed files with 72 additions and 20 deletions

View file

@ -48,7 +48,7 @@ class TestSocket_UNIXSocket < Test::Unit::TestCase
return
end
assert_equal(1, ret)
ret = s2.recvmsg
ret = s2.recvmsg(:scm_rights=>true)
data, srcaddr, flags, *ctls = ret
recv_io_ary = []
ctls.each {|ctl|
@ -83,7 +83,7 @@ class TestSocket_UNIXSocket < Test::Unit::TestCase
return
end
assert_equal(1, ret)
ret = s2.recvmsg
ret = s2.recvmsg(:scm_rights=>true)
data, srcaddr, flags, *ctls = ret
recv_io_ary = []
ctls.each {|ctl|
@ -170,7 +170,7 @@ class TestSocket_UNIXSocket < Test::Unit::TestCase
IO.pipe {|r1, w|
UNIXSocket.pair {|s1, s2|
s1.send_io(r1)
ret = s2.recvmsg
ret = s2.recvmsg(:scm_rights=>true)
data, srcaddr, flags, *ctls = ret
assert_equal("\0", data)
if flags == nil