// SPDX-FileCopyrightText: 2026 JC-Lab <joseph@jc-lab.net>
//
// SPDX-License-Identifier: Apache-2.0
//! Loader-side shared types.
//!
//! `vck-loader` provides mechanism only: a sample loader drives the flow itself
//! (read config, open the OS volume, decrypt the metadata with its own chosen
//! algorithm, build a [`VolumeCipher`], install the Block IO hook, publish the
//! handover, chainload). See `sample/loader` for the reference flow.
use ;
// The borrowed device path is the unsized `uefi::proto::device_path::DevicePath`;
// the owned form in uefi 0.37 is `Box<DevicePath>` (via `DevicePath::to_boxed`).
pub type DevicePath = Box;
/// Geometry the Block IO decrypt hook needs to map an absolute LBA to a
/// data-region-relative sector and decide whether it is ciphertext. The cipher
/// itself is supplied separately (the sample builds it), so no key material
/// lives here.