ohmu
·
2026-10-15
1#include "bootmgr.h"
2
3// https://uefi.org/specs/UEFI/2.10/10_Protocols_Device_Path_Protocol.html#generic-device-path-structures
4typedef struct ffEfiDevicePathProtocol {
5 uint8_t Type;
6 uint8_t SubType;
7 uint16_t Length;
8 uint8_t SpecificDevicePathData[];
9} ffEfiDevicePathProtocol;
10
11// https://uefi.org/specs/UEFI/2.10/03_Boot_Manager.html#load-options
12typedef struct FFEfiLoadOption {
13 uint32_t Attributes;
14 uint16_t FilePathListLength;
15 uint16_t Description[];
16 // ffEfiDevicePathProtocol FilePathList[];
17 // uint8_t OptionalData[];
18} FFEfiLoadOption;
19
20bool ffEfiFillLoadOption(const FFEfiLoadOption* efiOption, FFBootmgrResult* result);