From 1872c7834787a7287f9fcfc63d84e11301a6e6f5 Mon Sep 17 00:00:00 2001 From: Nick Zana Date: Sun, 25 Jun 2023 21:01:32 -0400 Subject: [PATCH] ctap2-proto: impl AsRef<[u8]> for authenticator::client_pin::PinUvAuthToken --- crates/ctap2-proto/src/authenticator/client_pin/mod.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/crates/ctap2-proto/src/authenticator/client_pin/mod.rs b/crates/ctap2-proto/src/authenticator/client_pin/mod.rs index 675fe96..57a3478 100644 --- a/crates/ctap2-proto/src/authenticator/client_pin/mod.rs +++ b/crates/ctap2-proto/src/authenticator/client_pin/mod.rs @@ -15,7 +15,6 @@ use raw::{RawRequest, RawResponse}; pub type PinUvAuthParam = [u8; 16]; - #[derive(Clone, Copy, Debug)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] pub enum PinUvAuthToken { @@ -23,6 +22,15 @@ pub enum PinUvAuthToken { Long([u8; 32]), } +impl AsRef<[u8]> for PinUvAuthToken { + fn as_ref(&self) -> &[u8] { + match self { + PinUvAuthToken::Short(bytes) => bytes.as_ref(), + PinUvAuthToken::Long(bytes) => bytes.as_ref(), + } + } +} + #[cfg(feature = "serde")] impl TryFrom<&[u8]> for PinUvAuthToken { type Error = Error;