#[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[derive(Deserialize, Serialize)]
#[serde(deny_unknown_fields)]
#[repr(u32)]
pub enum SeccompMode
{
Off = 0,
Strict = 1,
Filter = 2,
}
impl FromBytes for SeccompMode
{
type Error = StatusStatisticParseError;
#[inline(always)]
fn from_bytes(value: &[u8]) -> Result<Self, Self::Error>
{
if likely!(value.len() == 1)
{
use self::SeccompMode::*;
match value[0]
{
b'0' => Ok(Off),
b'1' => Ok(Strict),
b'2' => Ok(Filter),
_ => Err(StatusStatisticParseError::OutOfRange)
}
}
else
{
Err(StatusStatisticParseError::InvalidLength)
}
}
}