#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[non_exhaustive]
pub enum LayerStatus {
Enforced,
Degraded,
Disabled,
NotApplicable,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[non_exhaustive]
pub enum SandboxKind {
Bwrap,
Seatbelt,
Noop,
}
impl SandboxKind {
#[must_use]
pub const fn as_str(self) -> &'static str {
match self {
Self::Bwrap => "bwrap",
Self::Seatbelt => "seatbelt",
Self::Noop => "noop",
}
}
}
#[derive(Debug, Clone, PartialEq, Eq)]
#[non_exhaustive]
pub struct SecurityReport {
pub sandbox: SandboxKind,
pub landlock: LayerStatus,
pub mac: LayerStatus,
}