uefi_raw/protocol/
media.rs

1use crate::protocol::device_path::DevicePathProtocol;
2use crate::{guid, Guid, Status};
3use core::ffi::c_void;
4
5#[derive(Debug)]
6#[repr(C)]
7pub struct LoadFileProtocol {
8    pub load_file: unsafe extern "efiapi" fn(
9        this: *mut LoadFileProtocol,
10        file_path: *const DevicePathProtocol,
11        boot_policy: bool,
12        buffer_size: *mut usize,
13        buffer: *mut c_void,
14    ) -> Status,
15}
16
17impl LoadFileProtocol {
18    pub const GUID: Guid = guid!("56ec3091-954c-11d2-8e3f-00a0c969723b");
19}
20
21#[derive(Debug)]
22#[repr(C)]
23pub struct LoadFile2Protocol {
24    pub load_file: unsafe extern "efiapi" fn(
25        this: *mut LoadFile2Protocol,
26        file_path: *const DevicePathProtocol,
27        boot_policy: bool,
28        buffer_size: *mut usize,
29        buffer: *mut c_void,
30    ) -> Status,
31}
32
33impl LoadFile2Protocol {
34    pub const GUID: Guid = guid!("4006c0c1-fcb3-403e-996d-4a6c8724e06d");
35}