dmi_lenovo_tpm_info
Synopsis
#include <opendmi/entity/lenovo/records.h>
typedef struct dmi_lenovo_tpm_info {
uint8_t unknown_1;
dmi_binary_t vendor_raw;
char *vendor;
uint8_t unknown_2[2];
uint16_t unknown_3;
uint8_t unknown_4;
const char *signature;
const char *description;
} dmi_lenovo_tpm_info_t;
Description
The dmi_lenovo_tpm_info_t structure holds the decoded Lenovo TPM information
(type 134) of a Lenovo laptop, which tells the vendor of its TPM by the TCG
vendor ID, e.g. ATML for Atmel or STM ` for STMicroelectronics. The
structures are told from the date records of the same type, see
`dmi_lenovo_date, by their first string, TPM INFO.
The structure is returned by dmi_entity_info for the structures decoded
by dmi_lenovo_tpm_info_spec, of type DMI_TYPE(lenovo_tpm_info), declared in
<opendmi/module/lenovo.h>, once the Lenovo extension module
(dmi_lenovo_module) is enabled, which is done for IBM and Lenovo platforms.
It lives as long as the context it has been decoded in.
The layout is reverse engineered from the dumps of the data corpus, since no public source describes the structure, and the members whose meaning is not established are named after their position.
Fields
unknown_1-
Value whose meaning is not established,
0in all known data. vendor_raw-
TCG vendor ID of the TPM, as the structure holds it.
vendor-
TCG vendor ID of the TPM, e.g.
ATML, ornullptrif it is not printable. The string belongs to the structure, and is freed along with it. unknown_2-
Values whose meaning is not established,
1and1in all known data. unknown_3-
Value whose meaning is not established,
0in all known data. unknown_4-
Value whose meaning is not established,
0,2or3in the known data. signature-
Signature,
TPM INFO. description-
Description of the rest,
System Reserved.