master ohmu/fastfetch-openbsd / src / detection / bootmgr / efi_helper.h
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);