#[non_exhaustive]pub enum CertRef {
PivSlot(PivSlot),
Label(String),
RawId(Vec<u8>),
}Expand description
Unified certificate addressing across backend types.
PIV addresses certs by slot. PKCS#11 addresses cert objects by CKA_LABEL or CKA_ID.
Both are “find me the cert for this key”; the addressing differs by backend type.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
PivSlot(PivSlot)
PIV slot identifier (PivBackend and YubikeyBackend).
Label(String)
Human-readable label string (PKCS#11 CKA_LABEL, or software backend).
RawId(Vec<u8>)
Raw binary identifier (PKCS#11 CKA_ID, typically SHA-1 of public key).
Trait Implementations§
Source§impl<'de> Deserialize<'de> for CertRef
impl<'de> Deserialize<'de> for CertRef
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for CertRef
impl StructuralPartialEq for CertRef
Auto Trait Implementations§
impl Freeze for CertRef
impl RefUnwindSafe for CertRef
impl Send for CertRef
impl Sync for CertRef
impl Unpin for CertRef
impl UnsafeUnpin for CertRef
impl UnwindSafe for CertRef
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