pub enum SeccompProfile {
Essential,
Minimal,
IoHeavy,
Compute,
Network,
Unrestricted,
}Expand description
Seccomp filter profile.
Each profile includes all syscalls from profiles below it (cumulative):
Essential < Minimal < IoHeavy < Compute < Network < Unrestricted
Variants§
Essential
Essential — only the ~40 syscalls needed for process bootstrap (linker, glibc init, exit)
Minimal
Minimal — Essential + signals, pipes, timers, process control (~110 total)
IoHeavy
IO-heavy — Minimal + file manipulation (mkdir, chmod, rename, fsync, …)
Compute
Compute — IoHeavy + advanced scheduling and NUMA (sched_setscheduler, mbind, …)
Network
Network — Compute + sockets (socket, bind, listen, connect, …)
Unrestricted
Unrestricted — Network + privileged ops (ptrace, mount, bpf, setuid, …)
Implementations§
Trait Implementations§
Source§impl Clone for SeccompProfile
impl Clone for SeccompProfile
Source§fn clone(&self) -> SeccompProfile
fn clone(&self) -> SeccompProfile
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SeccompProfile
impl Debug for SeccompProfile
Source§impl PartialEq for SeccompProfile
impl PartialEq for SeccompProfile
impl Eq for SeccompProfile
impl StructuralPartialEq for SeccompProfile
Auto Trait Implementations§
impl Freeze for SeccompProfile
impl RefUnwindSafe for SeccompProfile
impl Send for SeccompProfile
impl Sync for SeccompProfile
impl Unpin for SeccompProfile
impl UnsafeUnpin for SeccompProfile
impl UnwindSafe for SeccompProfile
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
Mutably borrows from an owned value. Read more