# Copyright (c) Microsoft Corporation.
# Licensed under the MIT License.

[package]
name = "firmware_uefi"
edition.workspace = true
rust-version.workspace = true

[features]
default = []

# use crypto to verify authenticated variable updates. If this feature is not
# enabled, updating an authenticated variable will unconditionally fail.
#
# TODO: this feature ought to be unconditionally enabled, but doing so would
# require figuring out the openSSL story on Windows, which is a undertaking in
# and of itself...
auth-var-verify-crypto = ["openssl", "der"]

# exposes private modules so that they can be fuzzed
fuzzing = []

[dependencies]
firmware_uefi_custom_vars.workspace = true
uefi_nvram_storage = { workspace = true, features = ["inspect"] }
uefi_specs.workspace = true
uefi_nvram_specvars.workspace = true
generation_id.workspace = true
watchdog_core.workspace = true

chipset_device.workspace = true
guestmem.workspace = true
vmcore.workspace = true

guid.workspace = true
inspect.workspace = true
local_clock.workspace = true
mesh.workspace = true
open_enum.workspace = true
pal_async.workspace = true
ucs2.workspace = true

async-trait.workspace = true
bitfield-struct.workspace = true
der = { workspace = true, features = ["derive", "alloc", "oid"], optional = true }
getrandom.workspace = true
openssl = { optional = true, workspace = true }
thiserror.workspace = true
time = { workspace = true, features = ["local-offset"] }
tracelimit.workspace = true
tracing.workspace = true
wchar.workspace = true
zerocopy.workspace = true
[dev-dependencies]
test_with_tracing.workspace = true

[lints]
workspace = true
