clock.rs |
|
3663 |
futex.rs |
Linux `futex`.
# Safety
Futex is a very low-level mechanism for implementing concurrency
primitives. |
997 |
id.rs |
|
4926 |
libcap.rs |
|
7516 |
mod.rs |
Thread-associated operations. |
728 |
prctl.rs |
Linux `prctl` wrappers.
Rustix wraps variadic/dynamic-dispatch functions like `prctl` in
type-safe wrappers.
# Safety
The inner `prctl` calls are dynamically typed and must be called
correctly. |
37164 |
setns.rs |
/bitflags/#externally-defined-flags>
const _ = !0;
}
}
/// Type of name space referred to by a link.
#[derive(Copy, Clone, Debug, Eq, PartialEq)]
#[repr(u32)]
pub enum LinkNameSpaceType {
/// Time name space.
Time = CLONE_NEWTIME,
/// Mount name space.
Mount = CLONE_NEWNS,
/// Control group (CGroup) name space.
ControlGroup = CLONE_NEWCGROUP,
/// `Host name` and `NIS domain name` (UTS) name space.
HostNameAndNISDomainName = CLONE_NEWUTS,
/// Inter-process communication (IPC) name space.
InterProcessCommunication = CLONE_NEWIPC,
/// User name space.
User = CLONE_NEWUSER,
/// Process ID name space.
ProcessID = CLONE_NEWPID,
/// Network name space.
Network = CLONE_NEWNET,
}
bitflags! {
/// `CLONE_*` for use with [`unshare`].
#[repr(transparent)]
#[derive(Copy, Clone, Eq, PartialEq, Hash, Debug)]
pub struct UnshareFlags: u32 {
/// `CLONE_FILES`.
const FILES = CLONE_FILES;
/// `CLONE_FS`.
const FS = CLONE_FS;
/// `CLONE_NEWCGROUP`.
const NEWCGROUP = CLONE_NEWCGROUP;
/// `CLONE_NEWIPC`.
const NEWIPC = CLONE_NEWIPC;
/// `CLONE_NEWNET`.
const NEWNET = CLONE_NEWNET;
/// `CLONE_NEWNS`.
const NEWNS = CLONE_NEWNS;
/// `CLONE_NEWPID`.
const NEWPID = CLONE_NEWPID;
/// `CLONE_NEWTIME`.
const NEWTIME = CLONE_NEWTIME;
/// `CLONE_NEWUSER`.
const NEWUSER = CLONE_NEWUSER;
/// `CLONE_NEWUTS`
const NEWUTS = CLONE_NEWUTS;
/// `CLONE_SYSVSEM`.
const SYSVSEM = CLONE_SYSVSEM;
/// <https://docs.rs/bitflags/ |
4317 |