Struct sysctl::CtlFlags
[−]
pub struct CtlFlags { /* fields omitted */ }
Methods
impl CtlFlags
pub const RD: CtlFlags
RD: CtlFlags = CtlFlags{bits: CTLFLAG_RD,}
Allow reads of variable
pub const WR: CtlFlags
WR: CtlFlags = CtlFlags{bits: CTLFLAG_WR,}
Allow writes to the variable
pub const RW: CtlFlags
RW: CtlFlags = CtlFlags{bits: <Self>::RD.bits | <Self>::WR.bits,}
pub const DORMANT: CtlFlags
DORMANT: CtlFlags = CtlFlags{bits: CTLFLAG_DORMANT,}
This sysctl is not active yet
pub const ANYBODY: CtlFlags
ANYBODY: CtlFlags = CtlFlags{bits: CTLFLAG_ANYBODY,}
All users can set this var
pub const SECURE: CtlFlags
SECURE: CtlFlags = CtlFlags{bits: CTLFLAG_SECURE,}
Permit set only if securelevel<=0
pub const PRISON: CtlFlags
PRISON: CtlFlags = CtlFlags{bits: CTLFLAG_PRISON,}
Prisoned roots can fiddle
pub const DYN: CtlFlags
DYN: CtlFlags = CtlFlags{bits: CTLFLAG_DYN,}
Dynamic oid - can be freed
pub const SKIP: CtlFlags
SKIP: CtlFlags = CtlFlags{bits: CTLFLAG_DORMANT,}
Skip this sysctl when listing
pub const SECURE_MASK: CtlFlags
SECURE_MASK: CtlFlags = CtlFlags{bits: 15728640,}
Secure level
pub const TUN: CtlFlags
TUN: CtlFlags = CtlFlags{bits: CTLFLAG_TUN,}
Default value is loaded from getenv()
pub const RDTUN: CtlFlags
RDTUN: CtlFlags = CtlFlags{bits: <Self>::RD.bits | <Self>::TUN.bits,}
Readable tunable
pub const RWTUN: CtlFlags
RWTUN: CtlFlags = CtlFlags{bits: <Self>::RW.bits | <Self>::TUN.bits,}
Readable and writeable tunable
pub const MPSAFE: CtlFlags
MPSAFE: CtlFlags = CtlFlags{bits: CTLFLAG_MPSAFE,}
Handler is MP safe
pub const VNET: CtlFlags
VNET: CtlFlags = CtlFlags{bits: CTLFLAG_VNET,}
Prisons with vnet can fiddle
pub const DYING: CtlFlags
DYING: CtlFlags = CtlFlags{bits: CTLFLAG_DYING,}
Oid is being removed
pub const CAPRD: CtlFlags
CAPRD: CtlFlags = CtlFlags{bits: CTLFLAG_CAPRD,}
Can be read in capability mode
pub const CAPWR: CtlFlags
CAPWR: CtlFlags = CtlFlags{bits: CTLFLAG_CAPWR,}
Can be written in capability mode
pub const STATS: CtlFlags
STATS: CtlFlags = CtlFlags{bits: CTLFLAG_STATS,}
Statistics; not a tuneable
pub const NOFETCH: CtlFlags
NOFETCH: CtlFlags = CtlFlags{bits: CTLFLAG_NOFETCH,}
Don't fetch tunable from getenv()
pub const CAPRW: CtlFlags
CAPRW: CtlFlags = CtlFlags{bits: <Self>::CAPRD.bits | <Self>::CAPWR.bits,}
Can be read and written in capability mode
pub fn empty() -> CtlFlags
Returns an empty set of flags.
pub fn all() -> CtlFlags
Returns the set containing all flags.
pub fn bits(&self) -> c_uint
Returns the raw value of the flags currently stored.
pub fn from_bits(bits: c_uint) -> Option<CtlFlags>
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
pub fn from_bits_truncate(bits: c_uint) -> CtlFlags
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
pub fn is_empty(&self) -> bool
Returns true if no flags are currently stored.
pub fn is_all(&self) -> bool
Returns true if all flags are currently set.
pub fn intersects(&self, other: CtlFlags) -> bool
Returns true if there are flags common to both self and other.
pub fn contains(&self, other: CtlFlags) -> bool
Returns true all of the flags in other are contained within self.
pub fn insert(&mut self, other: CtlFlags)
Inserts the specified flags in-place.
pub fn remove(&mut self, other: CtlFlags)
Removes the specified flags in-place.
pub fn toggle(&mut self, other: CtlFlags)
Toggles the specified flags in-place.
pub fn set(&mut self, other: CtlFlags, value: bool)
Inserts or removes the specified flags depending on the passed value.
Trait Implementations
impl Copy for CtlFlags
impl PartialEq for CtlFlags
fn eq(&self, __arg_0: &CtlFlags) -> bool
This method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, __arg_0: &CtlFlags) -> bool
This method tests for !=.
impl Eq for CtlFlags
impl Clone for CtlFlags
fn clone(&self) -> CtlFlags
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
Performs copy-assignment from source. Read more
impl PartialOrd for CtlFlags
fn partial_cmp(&self, __arg_0: &CtlFlags) -> Option<Ordering>
This method returns an ordering between self and other values if one exists. Read more
fn lt(&self, __arg_0: &CtlFlags) -> bool
This method tests less than (for self and other) and is used by the < operator. Read more
fn le(&self, __arg_0: &CtlFlags) -> bool
This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
fn gt(&self, __arg_0: &CtlFlags) -> bool
This method tests greater than (for self and other) and is used by the > operator. Read more
fn ge(&self, __arg_0: &CtlFlags) -> bool
This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
impl Ord for CtlFlags
fn cmp(&self, __arg_0: &CtlFlags) -> Ordering
This method returns an Ordering between self and other. Read more
fn max(self, other: Self) -> Self1.21.0[src]
Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self1.21.0[src]
Compares and returns the minimum of two values. Read more
impl Hash for CtlFlags
fn hash<__H: Hasher>(&self, __arg_0: &mut __H)
Feeds this value into the given [Hasher]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher, 1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher]. Read more
impl Debug for CtlFlags
impl Binary for CtlFlags
impl Octal for CtlFlags
impl LowerHex for CtlFlags
impl UpperHex for CtlFlags
impl BitOr for CtlFlags
type Output = CtlFlags
The resulting type after applying the | operator.
fn bitor(self, other: CtlFlags) -> CtlFlags
Returns the union of the two sets of flags.
impl BitOrAssign for CtlFlags
fn bitor_assign(&mut self, other: CtlFlags)
Adds the set of flags.
impl BitXor for CtlFlags
type Output = CtlFlags
The resulting type after applying the ^ operator.
fn bitxor(self, other: CtlFlags) -> CtlFlags
Returns the left flags, but with all the right flags toggled.
impl BitXorAssign for CtlFlags
fn bitxor_assign(&mut self, other: CtlFlags)
Toggles the set of flags.
impl BitAnd for CtlFlags
type Output = CtlFlags
The resulting type after applying the & operator.
fn bitand(self, other: CtlFlags) -> CtlFlags
Returns the intersection between the two sets of flags.
impl BitAndAssign for CtlFlags
fn bitand_assign(&mut self, other: CtlFlags)
Disables all flags disabled in the set.
impl Sub for CtlFlags
type Output = CtlFlags
The resulting type after applying the - operator.
fn sub(self, other: CtlFlags) -> CtlFlags
Returns the set difference of the two sets of flags.
impl SubAssign for CtlFlags
fn sub_assign(&mut self, other: CtlFlags)
Disables all flags enabled in the set.
impl Not for CtlFlags
type Output = CtlFlags
The resulting type after applying the ! operator.
fn not(self) -> CtlFlags
Returns the complement of this set of flags.
impl Extend<CtlFlags> for CtlFlags
fn extend<T: IntoIterator<Item = CtlFlags>>(&mut self, iterator: T)
Extends a collection with the contents of an iterator. Read more
impl FromIterator<CtlFlags> for CtlFlags
fn from_iter<T: IntoIterator<Item = CtlFlags>>(iterator: T) -> CtlFlags
Creates a value from an iterator. Read more