From 23e6314a31383d69038314a926626e3d8a4056e7 Mon Sep 17 00:00:00 2001 From: David Carlier Date: Sat, 14 Aug 2021 10:42:17 +0100 Subject: ScmCredentials netbsd implementation. --- library/std/src/sys/unix/net.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'library/std/src/sys') diff --git a/library/std/src/sys/unix/net.rs b/library/std/src/sys/unix/net.rs index e6fd9a0c827..9bf9607a63e 100644 --- a/library/std/src/sys/unix/net.rs +++ b/library/std/src/sys/unix/net.rs @@ -419,6 +419,17 @@ impl Socket { Ok(passcred != 0) } + #[cfg(target_os = "netbsd")] + pub fn set_passcred(&self, passcred: bool) -> io::Result<()> { + setsockopt(self, 0 as libc::c_int, libc::LOCAL_CREDS, passcred as libc::c_int) + } + + #[cfg(target_os = "netbsd")] + pub fn passcred(&self) -> io::Result { + let passcred: libc::c_int = getsockopt(self, 0 as libc::c_int, libc::LOCAL_CREDS)?; + Ok(passcred != 0) + } + #[cfg(not(any(target_os = "solaris", target_os = "illumos")))] pub fn set_nonblocking(&self, nonblocking: bool) -> io::Result<()> { let mut nonblocking = nonblocking as libc::c_int; -- cgit 1.4.1-3-g733a5