26#ifndef LAZYBIOS_JSON_H
27#define LAZYBIOS_JSON_H
lazybiosBackend_t
Selects the platform backend used to obtain SMBIOS data.
void lazybiosExtJSONAddOemHpType204(const lazybiosOemHpType204Array_t *hp204, cJSON *root)
Serialises an array of parsed HP OEM Type 204 (HPE ProLiant System/Rack Locator) structures into a cJ...
void lazybiosExtJSONAddType6(const lazybiosType6Array_t *type6, cJSON *root)
Serialises an array of parsed SMBIOS Type 6 (Memory Module Information, obsolete) structures into a c...
void lazybiosExtJSONAddType44(const lazybiosType44Array_t *type44, cJSON *root)
Serialises an array of parsed SMBIOS Type 44 (Processor Additional Information) structures into a cJS...
void lazybiosExtJSONAddType15(const lazybiosType15Array_t *type15, cJSON *root)
Serialises an array of parsed SMBIOS Type 15 (System Event Log) structures into a cJSON array and att...
void lazybiosExtJSONAddType46(const lazybiosType46Array_t *type46, cJSON *root)
Serialises an array of parsed SMBIOS Type 46 (String Property) structures into a cJSON array and atta...
void lazybiosExtJSONAddType4(const lazybiosType4Array_t *type4, cJSON *root)
Serialises an array of parsed SMBIOS Type 4 (Processor Information) structures into a cJSON array and...
void lazybiosExtJSONAddType30(const lazybiosType30Array_t *type30, cJSON *root)
Serialises an array of parsed SMBIOS Type 30 (Out-of-Band Remote Access) structures into a cJSON arra...
void lazybiosExtJSONAddType18(const lazybiosType18Array_t *type18, cJSON *root)
Serialises an array of parsed SMBIOS Type 18 (32-Bit Memory Error Info) structures into a cJSON array...
void lazybiosExtJSONAddType35(const lazybiosType35Array_t *type35, cJSON *root)
Serialises an array of parsed SMBIOS Type 35 (Management Device Component) structures into a cJSON ar...
void lazybiosExtJSONAddType7(const lazybiosType7Array_t *type7, cJSON *root)
Serialises an array of parsed SMBIOS Type 7 (Cache Information) structures into a cJSON array and att...
void lazybiosExtJSONAddType37(const lazybiosType37Array_t *type37, cJSON *root)
Serialises an array of parsed SMBIOS Type 37 (Memory Channel) structures into a cJSON array and attac...
void lazybiosExtJSONAddType13(const lazybiosType13Array_t *type13, cJSON *root)
Serialises an array of parsed SMBIOS Type 13 (Firmware Language Information) structures into a cJSON ...
void lazybiosExtJSONAddType26(const lazybiosType26Array_t *type26, cJSON *root)
Serialises an array of parsed SMBIOS Type 26 (Voltage Probe) structures into a cJSON array and attach...
void lazybiosExtJSONAddType21(const lazybiosType21Array_t *type21, cJSON *root)
Serialises an array of parsed SMBIOS Type 21 (Built-in Pointing Device) structures into a cJSON array...
void lazybiosExtJSONAddType17(const lazybiosType17Array_t *type17, cJSON *root)
Serialises an array of parsed SMBIOS Type 17 (Memory Device) structures into a cJSON array and attach...
void lazybiosExtJSONAddType3(const lazybiosType3Array_t *type3, cJSON *root)
Serialises an array of parsed SMBIOS Type 3 (Chassis Information) structures into a cJSON array and a...
void lazybiosExtJSONAddType34(const lazybiosType34Array_t *type34, cJSON *root)
Serialises an array of parsed SMBIOS Type 34 (Management Device) structures into a cJSON array and at...
void lazybiosExtJSONAddType16(const lazybiosType16Array_t *type16, cJSON *root)
Serialises an array of parsed SMBIOS Type 16 (Physical Memory Array) structures into a cJSON array an...
void lazybiosExtJSONAddType0(const lazybiosType0Array_t *type0, cJSON *root)
Serialises an array of parsed SMBIOS Type 0 (BIOS Information) structures into a cJSON array and atta...
void lazybiosExtJSONAddType32(const lazybiosType32Array_t *type32, cJSON *root)
Serialises an array of parsed SMBIOS Type 32 (System Boot) structures into a cJSON array and attaches...
void lazybiosExtJSONAddType8(const lazybiosType8Array_t *type8, cJSON *root)
Serialises an array of parsed SMBIOS Type 8 (Port Connector Information) structures into a cJSON arra...
void lazybiosExtJSONAddType1(const lazybiosType1Array_t *type1, cJSON *root)
Serialises an array of parsed SMBIOS Type 1 (System Information) structures into a cJSON array and at...
void lazybiosExtJSONAddType19(const lazybiosType19Array_t *type19, cJSON *root)
Serialises an array of parsed SMBIOS Type 19 (Memory Array Mapped Address) structures into a cJSON ar...
void lazybiosExtJSONAddType9(const lazybiosType9Array_t *type9, cJSON *root)
Serialises an array of parsed SMBIOS Type 9 (System Slots Information) structures into a cJSON array ...
void lazybiosExtJSONAddType36(const lazybiosType36Array_t *type36, cJSON *root)
Serialises an array of parsed SMBIOS Type 36 (Management Device Threshold Data) structures into a cJS...
void lazybiosExtJSONAddType24(const lazybiosType24Array_t *type24, cJSON *root)
Serialises an array of parsed SMBIOS Type 24 (Hardware Security) structures into a cJSON array and at...
void lazybiosExtJSONAddType20(const lazybiosType20Array_t *type20, cJSON *root)
Serialises an array of parsed SMBIOS Type 20 (Memory Device Mapped Address) structures into a cJSON a...
void lazybiosExtJSONAddType29(const lazybiosType29Array_t *type29, cJSON *root)
Serialises an array of parsed SMBIOS Type 29 (Electrical Current Probe) structures into a cJSON array...
void lazybiosExtJSONAddType25(const lazybiosType25Array_t *type25, cJSON *root)
Serialises an array of parsed SMBIOS Type 25 (System Power Controls) structures into a cJSON array an...
void lazybiosExtJSONAddType38(const lazybiosType38Array_t *type38, cJSON *root)
Serialises an array of parsed SMBIOS Type 38 (IPMI Device) structures into a cJSON array and attaches...
void lazybiosExtJSONAddSMBIOSInfo(const lazybiosDMI_t *DMIData, lazybiosBackend_t backend, cJSON *root)
Output contract shared by the per-type lazybiosExtJSONAddTypeN() functions.
void lazybiosExtJSONAddType39(const lazybiosType39Array_t *type39, cJSON *root)
Serialises an array of parsed SMBIOS Type 39 (System Power Supply) structures into a cJSON array and ...
void lazybiosExtJSONAddType40(const lazybiosType40Array_t *type40, cJSON *root)
Serialises an array of parsed SMBIOS Type 40 (Additional Information) structures into a cJSON array a...
void lazybiosExtJSONAddType33(const lazybiosType33Array_t *type33, cJSON *root)
Serialises an array of parsed SMBIOS Type 33 (64-Bit Memory Error Info) structures into a cJSON array...
void lazybiosExtJSONAddOemDellType212(const lazybiosOemDellType212Array_t *dell212, cJSON *root)
Serialises an array of parsed Dell OEM Type 212 (Dell Indexed I/O Access) structures into a cJSON arr...
void lazybiosExtJSONAddType14(const lazybiosType14Array_t *type14, cJSON *root)
Serialises an array of parsed SMBIOS Type 14 (Group Associations) structures into a cJSON array and a...
void lazybiosExtJSONAddType45(const lazybiosType45Array_t *type45, cJSON *root)
Serialises an array of parsed SMBIOS Type 45 (Firmware Inventory Information) structures into a cJSON...
void lazybiosExtJSONAddType12(const lazybiosType12Array_t *type12, cJSON *root)
Serialises an array of parsed SMBIOS Type 12 (System Configuration Options) structures into a cJSON a...
void lazybiosExtJSONAddOemDellType177(const lazybiosOemDellType177Array_t *dell177, cJSON *root)
OEM serialisers nest their output as oem.<vendor>.TypeN, mirroring ctx->oem->dell->TypeN,...
void lazybiosExtJSONAddType10(const lazybiosType10Array_t *type10, cJSON *root)
Serialises an array of parsed SMBIOS Type 10 (On Board Devices Information, obsolete) structures into...
void lazybiosExtJSONAddType11(const lazybiosType11Array_t *type11, cJSON *root)
Serialises an array of parsed SMBIOS Type 11 (OEM Strings) structures into a cJSON array and attaches...
LAZYBIOS_WARN_UNUSED int lazybiosParseJSONAll(lazybiosCTX_t *ctx, cJSON *root)
Parses every implemented structure type and serializes the lot into root.
void lazybiosExtJSONAddOemDellType218(const lazybiosOemDellType218Array_t *dell218, cJSON *root)
Serialises an array of parsed Dell OEM Type 218 (Dell Token Interface) structures into a cJSON array ...
void lazybiosExtJSONAddType42(const lazybiosType42Array_t *type42, cJSON *root)
Serialises an array of parsed SMBIOS Type 42 (Management Controller Host Interface) structures into a...
void lazybiosExtJSONAddType5(const lazybiosType5Array_t *type5, cJSON *root)
Serialises an array of parsed SMBIOS Type 5 (Memory Controller Information, obsolete) structures into...
void lazybiosExtJSONAddType31(const lazybiosType31Array_t *type31, cJSON *root)
Serialises an array of parsed SMBIOS Type 31 (Boot Integrity Services) structures into a cJSON array ...
void lazybiosExtJSONAddType41(const lazybiosType41Array_t *type41, cJSON *root)
Serialises an array of parsed SMBIOS Type 41 (Onboard Devices Extended Information) structures into a...
void lazybiosExtJSONAddType23(const lazybiosType23Array_t *type23, cJSON *root)
Serialises an array of parsed SMBIOS Type 23 (System Reset) structures into a cJSON array and attache...
void lazybiosExtJSONAddType2(const lazybiosType2Array_t *type2, cJSON *root)
Serialises an array of parsed SMBIOS Type 2 (Baseboard Information) structures into a cJSON array and...
void lazybiosExtJSONAddType28(const lazybiosType28Array_t *type28, cJSON *root)
Serialises an array of parsed SMBIOS Type 28 (Temperature Probe) structures into a cJSON array and at...
void lazybiosExtJSONAddType27(const lazybiosType27Array_t *type27, cJSON *root)
Serialises an array of parsed SMBIOS Type 27 (Cooling Device) structures into a cJSON array and attac...
void lazybiosExtJSONAddType43(const lazybiosType43Array_t *type43, cJSON *root)
Serialises an array of parsed SMBIOS Type 43 (TPM Device) structures into a cJSON array and attaches ...
void lazybiosExtJSONAddType22(const lazybiosType22Array_t *type22, cJSON *root)
Serialises an array of parsed SMBIOS Type 22 (Portable Battery) structures into a cJSON array and att...
Public API for lazybios. Include this and nothing else.
#define LAZYBIOS_WARN_UNUSED
Expands to nothing on compilers without a return-value check.
Owns raw DMI table data and its parsed SMBIOS entry point.
A parsed set of Dell OEM Type 177 structures.
A parsed set of Dell OEM Type 212 structures.
A parsed set of Dell OEM Type 218 structures.
A parsed set of Hp OEM Type 204 structures.
A parsed set of SMBIOS Type 0 structures.
A parsed set of SMBIOS Type 10 structures.
A parsed set of SMBIOS Type 11 structures.
A parsed set of SMBIOS Type 12 structures.
A parsed set of SMBIOS Type 13 structures.
A parsed set of SMBIOS Type 14 structures.
A parsed set of SMBIOS Type 15 structures.
A parsed set of SMBIOS Type 16 structures.
A parsed set of SMBIOS Type 17 structures.
A parsed set of SMBIOS Type 18 structures.
A parsed set of SMBIOS Type 19 structures.
A parsed set of SMBIOS Type 1 structures.
A parsed set of SMBIOS Type 20 structures.
A parsed set of SMBIOS Type 21 structures.
A parsed set of SMBIOS Type 22 structures.
A parsed set of SMBIOS Type 23 structures.
A parsed set of SMBIOS Type 24 structures.
A parsed set of SMBIOS Type 25 structures.
A parsed set of SMBIOS Type 26 structures.
A parsed set of SMBIOS Type 27 structures.
A parsed set of SMBIOS Type 28 structures.
A parsed set of SMBIOS Type 29 structures.
A parsed set of SMBIOS Type 2 structures.
A parsed set of SMBIOS Type 30 structures.
A parsed set of SMBIOS Type 31 structures.
A parsed set of SMBIOS Type 32 structures.
A parsed set of SMBIOS Type 33 structures.
A parsed set of SMBIOS Type 34 structures.
A parsed set of SMBIOS Type 35 structures.
A parsed set of SMBIOS Type 36 structures.
A parsed set of SMBIOS Type 37 structures.
A parsed set of SMBIOS Type 38 structures.
A parsed set of SMBIOS Type 39 structures.
A parsed set of SMBIOS Type 3 structures.
A parsed set of SMBIOS Type 40 structures.
A parsed set of SMBIOS Type 41 structures.
A parsed set of SMBIOS Type 42 structures.
A parsed set of SMBIOS Type 43 structures.
A parsed set of SMBIOS Type 44 structures.
A parsed set of SMBIOS Type 45 structures.
A parsed set of SMBIOS Type 46 structures.
A parsed set of SMBIOS Type 4 structures.
A parsed set of SMBIOS Type 5 structures.
A parsed set of SMBIOS Type 6 structures.
A parsed set of SMBIOS Type 7 structures.
A parsed set of SMBIOS Type 8 structures.
A parsed set of SMBIOS Type 9 structures.