pub struct AuditRecord {
pub session: Option<u64>,
pub resource: Option<ResourceId>,
pub operation: &'static str,
pub offset: Option<u64>,
pub decision: Decision,
pub status: OpStatus,
pub value: Option<u32>,
pub timestamp_ns: i64,
pub run_id: Option<String>,
pub item_index: Option<u32>,
}Expand description
One audit record. Callers supply bounded, normalized values; the ring never stores pointers, physical addresses, handles, or unbounded caller strings.
Fields§
§session: Option<u64>Session the operation belonged to; None for lifecycle events.
resource: Option<ResourceId>Resource the operation targeted, when applicable.
operation: &'static strNormalized operation name from a fixed vocabulary, e.g. "read32"
or "driver_start".
offset: Option<u64>Byte offset for MMIO operations.
decision: DecisionPolicy decision.
status: OpStatusExecution outcome.
value: Option<u32>Value read or written, when applicable.
timestamp_ns: i64Target monotonic timestamp in nanoseconds, supplied by the driver layer so this crate stays host-testable.
run_id: Option<String>Host run identifier, recorded on session-open records (success and rejection) where the session-to-run association is established.
item_index: Option<u32>Index of the item within a multi-item operation (for example a snapshot), when applicable. Plan-level operation indexes are host knowledge; the target records only what it can observe.
Implementations§
Trait Implementations§
Source§impl Clone for AuditRecord
impl Clone for AuditRecord
Source§impl Debug for AuditRecord
impl Debug for AuditRecord
impl Eq for AuditRecord
Source§impl PartialEq for AuditRecord
impl PartialEq for AuditRecord
impl StructuralPartialEq for AuditRecord
Auto Trait Implementations§
impl Freeze for AuditRecord
impl RefUnwindSafe for AuditRecord
impl Send for AuditRecord
impl Sync for AuditRecord
impl Unpin for AuditRecord
impl UnsafeUnpin for AuditRecord
impl UnwindSafe for AuditRecord
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.