Skip to main content

Crate vck_common

Crate vck_common 

Source
Expand description

Common types, errors, JVCK metadata format, and loader→driver handover helpers shared across the kernel driver, the UEFI loader, and host tooling.

The crate is no_std by default (kernel/UEFI). Enabling the std feature (the default for host test crates such as sample/crypto-test) builds it against std while still going through the alloc API surface.

Re-exports§

pub use error::VckError;
pub use error::VckResult;
pub use rng::set_random_source;
pub use rng::RandomSource;
pub use store::EncryptedOffsetStore;
pub use store::SectorIo;
pub use types::EncryptedOffset;
pub use types::Guid;
pub use types::SectorRange;
pub use types::VolumeCipher;
pub use types::VolumeCipherSupplier;
pub use types::VolumeId;
pub use xts::StaticCipherSupplier;
pub use xts::XtsVolumeCipher;

Modules§

cpu
CPU feature detection shared by the kernel driver and the UEFI loader.
error
handover
Loader→driver handover payload (framework side).
ioctl
Windows device I/O control (IOCTL) code construction.
jvck
JVCK default metadata format: on-disk layout, key derivation, and a volume-backed EncryptedOffsetStore implementation.
rng
Pluggable cryptographic randomness source.
store
types
xts
Shared AES-256-XTS volume sector cipher used by both the kernel driver and the UEFI loader, so their on-disk crypto agrees by construction.

Macros§

ctl_code
macro_rules! spelling of ctl_code, mirroring the C CTL_CODE macro for call sites that prefer macro syntax. Both forms expand to the same value; the const fn is preferred in const definitions because it is type-checked.