diff --git a/libraries/opensk/src/api/user_presence.rs b/libraries/opensk/src/api/user_presence.rs index d5f2699..6b0dbbe 100644 --- a/libraries/opensk/src/api/user_presence.rs +++ b/libraries/opensk/src/api/user_presence.rs @@ -20,6 +20,8 @@ pub enum UserPresenceError { Canceled, /// User presence check timed out. Timeout, + /// Unexpected (e.g., hardware) failures + Fail, } pub type UserPresenceResult = Result<(), UserPresenceError>; diff --git a/libraries/opensk/src/ctap/status_code.rs b/libraries/opensk/src/ctap/status_code.rs index 58d02a4..2a2f6cb 100644 --- a/libraries/opensk/src/ctap/status_code.rs +++ b/libraries/opensk/src/ctap/status_code.rs @@ -91,6 +91,7 @@ impl From for Ctap2StatusCode { UserPresenceError::Timeout => Self::CTAP2_ERR_USER_ACTION_TIMEOUT, UserPresenceError::Declined => Self::CTAP2_ERR_OPERATION_DENIED, UserPresenceError::Canceled => Self::CTAP2_ERR_KEEPALIVE_CANCEL, + UserPresenceError::Fail => Self::CTAP2_ERR_VENDOR_HARDWARE_FAILURE, } } }