[package] name = "proxmox-tfa" description = "tfa implementation for totp and u2f" version = "5.0.1" authors.workspace = true edition.workspace = true exclude.workspace = true homepage.workspace = true license.workspace = true repository.workspace = true [dependencies] serde.workspace = true anyhow = { workspace = true, optional = true } base32 = { workspace = true, optional = true } base64 = { workspace = true, optional = true } hex = { workspace = true, optional = true } libc = { workspace = true, optional = true } log = { workspace = true, optional = true } openssl = { workspace = true, optional = true } percent-encoding = { workspace = true, optional = true } serde_json = { workspace = true, optional = true } serde_plain = { workspace = true, optional = true } url = { workspace = true, optional = true } webauthn-rs = { workspace = true, optional = true } proxmox-schema = { workspace = true, features = [ "api-macro" ], optional = true } proxmox-time = { workspace = true, optional = true } proxmox-uuid = { workspace = true, optional = true } [features] default = [ "totp" ] types = [ "dep:serde_plain", "serde/derive" ] u2f = [ "dep:base64", "dep:libc", "dep:openssl", "dep:serde_json", "serde/derive" ] api = [ "totp", "types", "u2f", "dep:anyhow", "dep:log", "dep:proxmox-time", "dep:proxmox-uuid", "dep:url", "dep:webauthn-rs", ] api-types = [ "types", "dep:proxmox-schema" ] totp = [ "dep:base32", "dep:hex", "dep:openssl", "dep:percent-encoding", "dep:serde_plain" ]