#[repr(u8)]pub enum ProcessPermission {
Show 29 variants
DynTransition = 0,
ExecHeap = 1,
ExecMem = 2,
ExecStack = 3,
Fork = 4,
GetCap = 5,
GetPgid = 6,
GetRlimit = 7,
GetSched = 8,
GetSession = 9,
NoAtSecure = 10,
Ptrace = 11,
RlimitInh = 12,
SetCap = 13,
SetCurrent = 14,
SetExec = 15,
SetFsCreate = 16,
SetKeyCreate = 17,
SetPgid = 18,
SetRlimit = 19,
SetSched = 20,
SetSockCreate = 21,
Share = 22,
SigChld = 23,
SigInh = 24,
SigKill = 25,
SigStop = 26,
Signal = 27,
Transition = 28,
}Expand description
Allow callers to use the kernel class & permission definitions.
Variants§
DynTransition = 0
Permission to dynamically transition a process to a different security domain.
ExecHeap = 1
Permission to execute arbitrary code from the heap.
ExecMem = 2
Permission to execute arbitrary code from memory.
ExecStack = 3
Permission to execute arbitrary code from the stack.
Fork = 4
Permission to fork the current running process.
GetCap = 5
Permission to get Linux capabilities of a process.
GetPgid = 6
Permission to get the process group ID.
GetRlimit = 7
Permission to get the resource limits on a process.
GetSched = 8
Permission to get scheduling policy currently applied to a process.
GetSession = 9
Permission to get the session ID.
NoAtSecure = 10
Permission to exec into a new security domain without setting the AT_SECURE entry in the executable’s auxiliary vector.
Ptrace = 11
Permission to trace a process.
RlimitInh = 12
Permission to inherit the parent process’s resource limits on exec.
SetCap = 13
Permission to set Linux capabilities of a process.
SetCurrent = 14
Permission to set the calling task’s current Security Context. The “dyntransition” permission separately limits which Contexts “setcurrent” may be used to transition to.
SetExec = 15
Permission to set the Security Context used by exec().
SetFsCreate = 16
Permission to set the Security Context used when creating filesystem objects.
SetKeyCreate = 17
Permission to set the Security Context used when creating kernel keyrings.
SetPgid = 18
Permission to set the process group ID.
SetRlimit = 19
Permission to set the resource limits on a process.
SetSched = 20
Permission to set scheduling policy for a process.
SetSockCreate = 21
Permission to set the Security Context used when creating new labeled sockets.
Permission to share resources (e.g. FD table, address-space, etc) with a process.
SigChld = 23
Permission to send SIGCHLD to a process.
SigInh = 24
Permission to inherit the parent process’s signal state.
SigKill = 25
Permission to send SIGKILL to a process.
SigStop = 26
Permission to send SIGSTOP to a process.
Signal = 27
Permission to send a signal other than SIGKILL, SIGSTOP, or SIGCHLD to a process.
Transition = 28
Permission to transition to a different security domain.
Implementations§
Trait Implementations§
Source§impl ClassPermission for ProcessPermission
impl ClassPermission for ProcessPermission
Source§impl Clone for ProcessPermission
impl Clone for ProcessPermission
Source§fn clone(&self) -> ProcessPermission
fn clone(&self) -> ProcessPermission
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ProcessPermission
impl Debug for ProcessPermission
Source§impl From<ProcessPermission> for KernelPermission
impl From<ProcessPermission> for KernelPermission
Source§fn from(v: ProcessPermission) -> Self
fn from(v: ProcessPermission) -> Self
Source§impl Hash for ProcessPermission
impl Hash for ProcessPermission
Source§impl PartialEq for ProcessPermission
impl PartialEq for ProcessPermission
Source§impl VariantArray for ProcessPermission
impl VariantArray for ProcessPermission
impl Copy for ProcessPermission
impl Eq for ProcessPermission
impl StructuralPartialEq for ProcessPermission
Auto Trait Implementations§
impl Freeze for ProcessPermission
impl RefUnwindSafe for ProcessPermission
impl Send for ProcessPermission
impl Sync for ProcessPermission
impl Unpin for ProcessPermission
impl UnsafeUnpin for ProcessPermission
impl UnwindSafe for ProcessPermission
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more