summaryrefslogtreecommitdiffstats
path: root/test/socket
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-02-11 01:22:08 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-02-11 01:22:08 +0000
commitf5da85d0d8ce6708a4336692749750926cfa6ef2 (patch)
tree55fdb2b369942dfc8353a72d9f7ddacc7dcddbf7 /test/socket
parent5b17d89a2dc955cca5ebca8f5db15bd2ff34f19f (diff)
downloadruby-f5da85d0d8ce6708a4336692749750926cfa6ef2.tar.gz
ruby-f5da85d0d8ce6708a4336692749750926cfa6ef2.tar.xz
ruby-f5da85d0d8ce6708a4336692749750926cfa6ef2.zip
* ext/socket/extconf.rb: check getpeereid.
* ext/socket/basicsocket.c (bsock_getpeereid): new method. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@22219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/socket')
-rw-r--r--test/socket/test_unix.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/socket/test_unix.rb b/test/socket/test_unix.rb
index feeef0810..61b55c5a5 100644
--- a/test/socket/test_unix.rb
+++ b/test/socket/test_unix.rb
@@ -384,4 +384,18 @@ class TestUNIXSocket < Test::Unit::TestCase
}
end
+ def test_getpeereid
+ Dir.mktmpdir {|d|
+ path = "#{d}/sock"
+ serv = Socket.unix_server_socket(path)
+ c = Socket.unix(path)
+ s, = serv.accept
+ begin
+ assert_equal([Process.euid, Process.egid], c.getpeereid)
+ assert_equal([Process.euid, Process.egid], s.getpeereid)
+ rescue NotImplementedError
+ end
+ }
+ end
+
end if defined?(UNIXSocket) && /cygwin/ !~ RUBY_PLATFORM