hwid 0.1.0

Resolve unique hardware-based identifiers for a system
use thiserror::Error;

pub type HwidResult<T, E = HwidError> = std::result::Result<T, E>;

#[derive(Debug, Error)]
pub enum HwidError {
    #[error("failed to init hmac")]
    InitHmac,

    #[error("failed to read smbios: {0}")]
    Smbios(std::io::Error),

    #[error("failed to retrieve string")]
    SmbiosString,

    #[error("missing smbios table: {0:x}")]
    MissingSmbiosTable(u8),

    #[error(transparent)]
    Windows(#[from] windows::core::Error),
}