pub enum AuthStartResp {
Success {
task: AuthTask,
state: AuthState,
},
UnknownAttrType(Handle),
SourceNotAvailableFor(Handle),
Conflict(Handle, Handle),
ChainedSessionsTemporarilyUnavailable,
}Expand description
Response to AuthStartEP
Variants§
Success
Authentication process was started
Fields
task: AuthTaskTask for the global client to satisfy the authentication server. Depends on the requested attribute types
state: AuthStateOpaque state that should be sent with the AuthCompleteReq.
UnknownAttrType(Handle)
No attribute type known with this handle
SourceNotAvailableFor(Handle)
The AuthStartReq::source is not available for the attribute type with this handle
Conflict(Handle, Handle)
For some reason these two attribute types cannot be requested together
For attr::Source::Yivi this might happen if the two attribute types can be derived from
the same crate::servers::yivi::AttributeTypeIdentifier. This is not something that is currently e
expected to happen.
The authentication server is temporarily at its configured maximum number of concurrent chained sessions, so it cannot start a new one right now.
The global client may fall back to the non-chained flow by retrying AuthStartEP with
yivi_chained_session (and yivi_chained_session_drip) set to false, at the cost of the
user scanning a second Yivi QR for card issuance.
Trait Implementations§
Source§impl Clone for AuthStartResp
impl Clone for AuthStartResp
Source§fn clone(&self) -> AuthStartResp
fn clone(&self) -> AuthStartResp
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AuthStartResp
impl Debug for AuthStartResp
Source§impl<'de> Deserialize<'de> for AuthStartResp
impl<'de> Deserialize<'de> for AuthStartResp
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for AuthStartResp
impl RefUnwindSafe for AuthStartResp
impl Send for AuthStartResp
impl Sync for AuthStartResp
impl Unpin for AuthStartResp
impl UnsafeUnpin for AuthStartResp
impl UnwindSafe for AuthStartResp
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,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more