webauthn_rp

WebAuthn Level 3 RP library.
git clone https://git.philomathiclife.com/repos/webauthn_rp
Log | Files | Refs | README

error.rs (1317B)


      1 #[cfg(doc)]
      2 use super::{
      3     AllowedCredentials, CredentialSpecificExtension, DiscoverableCredentialRequestOptions,
      4     Extension, NonDiscoverableCredentialRequestOptions, PublicKeyCredentialRequestOptions,
      5     UserVerificationRequirement,
      6 };
      7 use core::{
      8     error::Error,
      9     fmt::{self, Display, Formatter},
     10 };
     11 #[cfg(doc)]
     12 use std::time::{Instant, SystemTime};
     13 /// Error returned from [`NonDiscoverableCredentialRequestOptions::second_factor`] when
     14 /// [`AllowedCredentials`] is empty.
     15 #[derive(Clone, Copy, Debug)]
     16 pub struct SecondFactorErr;
     17 impl Display for SecondFactorErr {
     18     #[inline]
     19     fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
     20         f.write_str("allowed credentials was empty")
     21     }
     22 }
     23 impl Error for SecondFactorErr {}
     24 /// Error returned by [`DiscoverableCredentialRequestOptions::start_ceremony`]
     25 /// and [`NonDiscoverableCredentialRequestOptions::start_ceremony`].
     26 ///
     27 /// This happens when [`PublicKeyCredentialRequestOptions::timeout`] could not be added to [`Instant::now`] or
     28 /// [`SystemTime::now`].
     29 #[derive(Clone, Copy, Debug)]
     30 pub struct InvalidTimeout;
     31 impl Display for InvalidTimeout {
     32     #[inline]
     33     fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
     34         f.write_str("the timeout could not be added to the current Instant")
     35     }
     36 }
     37 impl Error for InvalidTimeout {}