pub enum KernelCoreError {
InvalidCapability(CapabilityError),
SubjectMismatch {
expected: String,
actual: String,
},
OutOfScope {
tool: String,
server: String,
},
ConstraintError {
reason: String,
},
GuardError {
guard: String,
reason: String,
},
GuardDenied {
guard: String,
},
}Expand description
Errors the portable core can raise.
These are portable-kernel equivalents of the legacy
chio_kernel::KernelError variants that can be produced without any
I/O. The caller in chio-kernel maps them back onto its richer
KernelError surface for backward compatibility.
Variants§
InvalidCapability(CapabilityError)
Capability signature or issuer trust failed.
SubjectMismatch
Subject mismatch: request.agent_id != capability.subject.
OutOfScope
No grant in scope covers the requested tool/server.
ConstraintError
Portable scope matching failed closed on an unsupported constraint.
GuardError
A guard returned a fail-closed error.
GuardDenied
A guard denied the request outright.
Implementations§
Source§impl KernelCoreError
impl KernelCoreError
Sourcepub fn deny_reason(&self) -> String
pub fn deny_reason(&self) -> String
Human-readable reason for the deny verdict.
Trait Implementations§
Source§impl Clone for KernelCoreError
impl Clone for KernelCoreError
Source§fn clone(&self) -> KernelCoreError
fn clone(&self) -> KernelCoreError
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 KernelCoreError
impl Debug for KernelCoreError
Source§impl PartialEq for KernelCoreError
impl PartialEq for KernelCoreError
impl Eq for KernelCoreError
impl StructuralPartialEq for KernelCoreError
Auto Trait Implementations§
impl Freeze for KernelCoreError
impl RefUnwindSafe for KernelCoreError
impl Send for KernelCoreError
impl Sync for KernelCoreError
impl Unpin for KernelCoreError
impl UnsafeUnpin for KernelCoreError
impl UnwindSafe for KernelCoreError
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