lazybios 3.0.0
Lightweight SMBIOS/DMI parsing library
Loading...
Searching...
No Matches
lazybiosDMI_t Struct Reference

Owns raw DMI table data and its parsed SMBIOS entry point. More...

#include <lazybios.h>

Data Structures

union  [union].entry_union

Data Fields

uint8_t * dmi_data
size_t dmi_len
uint8_t * entry_data
size_t entry_len
lazybiosSMBIOSVersionTag entry_tag
union  entry_union
lazybiosTypeIndex_t index [256]
int index_valid

Detailed Description

Owns raw DMI table data and its parsed SMBIOS entry point.

Definition at line 218 of file lazybios.h.

Field Documentation

◆ dmi_data

uint8_t* lazybiosDMI_t::dmi_data

Definition at line 219 of file lazybios.h.

◆ dmi_len

size_t lazybiosDMI_t::dmi_len

Definition at line 220 of file lazybios.h.

◆ entry_data

uint8_t* lazybiosDMI_t::entry_data

Definition at line 238 of file lazybios.h.

◆ entry_len

size_t lazybiosDMI_t::entry_len

Definition at line 239 of file lazybios.h.

◆ entry_tag

lazybiosSMBIOSVersionTag lazybiosDMI_t::entry_tag

Definition at line 240 of file lazybios.h.

◆ entry_union

union lazybiosDMI_t::[union].entry_union lazybiosDMI_t::entry_union

◆ index

lazybiosTypeIndex_t lazybiosDMI_t::index[256]

Per-type location cache, built once when the table is loaded. A type byte is a single octet, so 256 entries cover every possible type. Without it, each parser had to walk the whole table just to size its result array, which dominated parse time.

Definition at line 228 of file lazybios.h.

◆ index_valid

int lazybiosDMI_t::index_valid

Non-zero once index describes dmi_data. A zero-initialized or hand-assembled container leaves this clear, and the parsers fall back to walking the table, so the cache is an optimization rather than a precondition. Clear it if dmi_data is replaced.

Definition at line 236 of file lazybios.h.


The documentation for this struct was generated from the following file: