pub struct Runtime {
pub previously: Option<CommandState>,
pub challenge: [u8; 8],
pub client_authorized: bool,
pub client_newly_authorized: bool,
}Fields§
§previously: Option<CommandState>Not actually used - need to figure out “many credentials” case
challenge: [u8; 8]This gets rotated regularly, so someone sniffing on the bus can’t replay. There is a small window between a legitimate client authenticating, and its next command that needs such authentication.
Gets set after a successful VALIDATE call, good for use right after (e.g. to set/change/remove password), and cleared thereafter.
For book-keeping purposes, set client_authorized / prevents it from being cleared before returning control to caller of the app
Implementations§
Trait Implementations§
impl Eq for Runtime
impl StructuralPartialEq for Runtime
Auto Trait Implementations§
impl Freeze for Runtime
impl RefUnwindSafe for Runtime
impl Send for Runtime
impl Sync for Runtime
impl Unpin for Runtime
impl UnwindSafe for Runtime
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