Skip to content

Instantly share code, notes, and snippets.

@ahmed-bacha
Forked from hiboma/SOL_SOCKET-SO_PEERCRED.rb
Created February 24, 2017 16:28
Show Gist options
  • Save ahmed-bacha/5bf12ee93a9dbe031680651cbf974caa to your computer and use it in GitHub Desktop.
Save ahmed-bacha/5bf12ee93a9dbe031680651cbf974caa to your computer and use it in GitHub Desktop.
SOL_SOCKET, SO_PEERCRED in ruby
#!/usr/bin/env ruby
require 'socket'
include Socket::Constants
UNIXServer.open("\0(abstract socket)") {|server|
clinet = UNIXSocket.new("\0(abstract socket)")
clinet.setsockopt(SOL_SOCKET, SO_PASSCRED, 1)
sock = server.accept
opt = sock.getsockopt(SOL_SOCKET, SO_PEERCRED)
pid, euid, egid = opt.unpack("i3")
printf "pid: %d, euid: %d, egid: %s\n", pid, euid, egid
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment