Skip to main content

LinuxCapability

Enum LinuxCapability 

Source
#[non_exhaustive]
pub enum LinuxCapability {
Show 23 variants Chown, DacOverride, DacReadSearch, FOwner, FSetId, Kill, SetGid, SetUid, SetPCap, NetBindService, NetRaw, NetAdmin, SysChroot, SysPtrace, SysAdmin, SysBoot, SysNice, SysResource, SysTime, MkNod, AuditWrite, AuditControl, SetFCap,
}
Expand description

Linux process capability.

Covers the most commonly used capabilities.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

Chown

CAP_CHOWN: Make arbitrary changes to file UIDs and GIDs

§

DacOverride

CAP_DAC_OVERRIDE: Bypass file read, write, and execute permission checks

§

DacReadSearch

CAP_DAC_READ_SEARCH: Bypass file read permission checks and directory read/execute checks

§

FOwner

CAP_FOWNER: Bypass permission checks on operations that normally require the filesystem UID

§

FSetId

CAP_FSETID: Don’t clear set-user-ID and set-group-ID mode bits

§

Kill

CAP_KILL: Bypass permission checks for sending signals

§

SetGid

CAP_SETGID: Make arbitrary manipulations of process GIDs and supplementary GID list

§

SetUid

CAP_SETUID: Make arbitrary manipulations of process UIDs

§

SetPCap

CAP_SETPCAP: Modify process capabilities

§

NetBindService

CAP_NET_BIND_SERVICE: Bind a socket to privileged ports (port numbers less than 1024)

§

NetRaw

CAP_NET_RAW: Use RAW and PACKET sockets; bind to any address for transparent proxying

§

NetAdmin

CAP_NET_ADMIN: Perform various network-related operations

§

SysChroot

CAP_SYS_CHROOT: Use chroot()

§

SysPtrace

CAP_SYS_PTRACE: Trace arbitrary processes using ptrace()

§

SysAdmin

CAP_SYS_ADMIN: Perform a range of system administration operations

§

SysBoot

CAP_SYS_BOOT: Use reboot() and kexec_load()

§

SysNice

CAP_SYS_NICE: Raise process nice value and change the nice value for arbitrary processes

§

SysResource

CAP_SYS_RESOURCE: Override resource limits

§

SysTime

CAP_SYS_TIME: Set system clock; set real-time (hardware) clock

§

MkNod

CAP_MKNOD: Create special files using mknod()

§

AuditWrite

CAP_AUDIT_WRITE: Write records to kernel auditing log

§

AuditControl

CAP_AUDIT_CONTROL: Enable and disable kernel auditing

§

SetFCap

CAP_SETFCAP: Set file capabilities

Implementations§

Source§

impl LinuxCapability

Source

pub fn name(self) -> &'static str

Kernel-style capability name (e.g. "NET_ADMIN", "SYS_PTRACE").

Trait Implementations§

Source§

impl Clone for LinuxCapability

Source§

fn clone(&self) -> LinuxCapability

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for LinuxCapability

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Hash for LinuxCapability

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for LinuxCapability

Source§

fn eq(&self, other: &LinuxCapability) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for LinuxCapability

Source§

impl Eq for LinuxCapability

Source§

impl StructuralPartialEq for LinuxCapability

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more