#[repr(C)]pub struct AllowRule {
pub flags: u32,
pub creator_uid: u32,
pub execution_uid: u32,
pub _pad: u32,
pub creator_comm: [u8; 16],
pub target_filename_hash: u64,
pub target_folder_hash: u64,
pub landing_filename_hash: u64,
pub landing_folder_hash: u64,
pub creator_process_hash: u64,
}Expand description
One allowlist rule. Set bits in flags mark required dims; the
corresponding fields below are then compared against the record /
execve context at enforce time. Cleared bits → field ignored.
Strings are stored as FNV-1a-64 hashes (computed identically in userspace and BPF). Collision probability for distinct strings under FNV-64 is negligible at any realistic allowlist size.
Fields§
§flags: u32§creator_uid: u32§execution_uid: u32§_pad: u32§creator_comm: [u8; 16]§target_filename_hash: u64§target_folder_hash: u64§landing_filename_hash: u64§landing_folder_hash: u64§creator_process_hash: u64Trait Implementations§
Auto Trait Implementations§
impl Freeze for AllowRule
impl RefUnwindSafe for AllowRule
impl Send for AllowRule
impl Sync for AllowRule
impl Unpin for AllowRule
impl UnsafeUnpin for AllowRule
impl UnwindSafe for AllowRule
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