#[repr(align(64))]pub struct SecurityState {Show 14 fields
pub total_violations: AtomicU64,
pub stack_violations: AtomicU64,
pub guard_violations: AtomicU64,
pub cfi_violations: AtomicU64,
pub isolation_violations: AtomicU64,
pub memory_violations: AtomicU64,
pub resource_violations: AtomicU64,
pub crypto_violations: AtomicU64,
pub canaries_enabled: AtomicBool,
pub guards_enabled: AtomicBool,
pub cfi_enabled: AtomicBool,
pub isolation_enabled: AtomicBool,
pub aslr_enabled: AtomicBool,
pub audit_enabled: AtomicBool,
/* private fields */
}
Expand description
Global security state and statistics.
Fields§
§total_violations: AtomicU64
Total security violations detected
stack_violations: AtomicU64
Violations by type
guard_violations: AtomicU64
§cfi_violations: AtomicU64
§isolation_violations: AtomicU64
§memory_violations: AtomicU64
§resource_violations: AtomicU64
§crypto_violations: AtomicU64
§canaries_enabled: AtomicBool
Security features enabled
guards_enabled: AtomicBool
§cfi_enabled: AtomicBool
§isolation_enabled: AtomicBool
§aslr_enabled: AtomicBool
§audit_enabled: AtomicBool
Implementations§
Source§impl SecurityState
impl SecurityState
pub const fn new(config: SecurityConfig) -> Self
Sourcepub fn record_violation(
&self,
violation: SecurityViolation,
) -> ViolationResponse
pub fn record_violation( &self, violation: SecurityViolation, ) -> ViolationResponse
Record a security violation.
Sourcepub fn get_stats(&self) -> SecurityStats
pub fn get_stats(&self) -> SecurityStats
Get security statistics.
Auto Trait Implementations§
impl !Freeze for SecurityState
impl RefUnwindSafe for SecurityState
impl Send for SecurityState
impl Sync for SecurityState
impl Unpin for SecurityState
impl UnwindSafe for SecurityState
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