pub trait UnixSocketExt: Sealed {
// Required methods
fn passcred(&self) -> Result<bool>;
fn set_passcred(&self, passcred: bool) -> Result<()>;
}
🔬This is a nightly-only experimental API. (
unix_socket_ancillary_data
#76915)Available on Linux and (Linux or Android) only.
Expand description
Linux-specific functionality for AF_UNIX
sockets UnixDatagram
and UnixStream
.
Required Methods§
sourcefn passcred(&self) -> Result<bool>
🔬This is a nightly-only experimental API. (unix_socket_ancillary_data
#76915)
fn passcred(&self) -> Result<bool>
unix_socket_ancillary_data
#76915)Query the current setting of socket option SO_PASSCRED
.
sourcefn set_passcred(&self, passcred: bool) -> Result<()>
🔬This is a nightly-only experimental API. (unix_socket_ancillary_data
#76915)
fn set_passcred(&self, passcred: bool) -> Result<()>
unix_socket_ancillary_data
#76915)Enable or disable socket option SO_PASSCRED
.
This option enables the credentials of the sending process to be
received as a control message in AncillaryData
.
§Examples
#![feature(unix_socket_ancillary_data)]
use std::os::linux::net::UnixSocketExt;
use std::os::unix::net::UnixDatagram;
fn main() -> std::io::Result<()> {
let sock = UnixDatagram::unbound()?;
sock.set_passcred(true).expect("set_passcred failed");
Ok(())
}
Run