From 1164ea7196994f98bc2423dd4ce73939d61ca69e Mon Sep 17 00:00:00 2001 From: Magnus Hoff Date: Tue, 15 Dec 2015 10:03:55 +0100 Subject: Implement support for getsockopt of peer credentials using the Linux specific SO_PEERCRED --- src/sys/socket/mod.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/sys/socket/mod.rs') diff --git a/src/sys/socket/mod.rs b/src/sys/socket/mod.rs index 4f6add4c..7eb1901a 100644 --- a/src/sys/socket/mod.rs +++ b/src/sys/socket/mod.rs @@ -6,7 +6,7 @@ use errno::Errno; use features; use fcntl::{fcntl, FD_CLOEXEC, O_NONBLOCK}; use fcntl::FcntlArg::{F_SETFD, F_SETFL}; -use libc::{c_void, c_int, socklen_t, size_t}; +use libc::{c_void, c_int, socklen_t, size_t, pid_t, uid_t, gid_t}; use std::{mem, ptr, slice}; use std::os::unix::io::RawFd; use sys::uio::IoVec; @@ -581,6 +581,14 @@ pub struct linger { pub l_linger: c_int } +#[repr(C)] +#[derive(Clone, Copy, PartialEq, Eq, Debug)] +pub struct ucred { + pid: pid_t, + uid: uid_t, + gid: gid_t, +} + /* * * ===== Socket Options ===== -- cgit v1.2.3