|
23 | 23 | #include "dmihelper.h" |
24 | 24 | #include "dmierror.h" |
25 | 25 |
|
| 26 | +#define FLAG_NO_FILE_OFFSET (1 << 0) |
| 27 | +#define FLAG_STOP_AT_EOT (1 << 1) |
| 28 | + |
| 29 | +#define SYS_FIRMWARE_DIR "/sys/firmware/dmi/tables" |
| 30 | +#define SYS_ENTRY_FILE SYS_FIRMWARE_DIR "/smbios_entry_point" |
| 31 | +#define SYS_TABLE_FILE SYS_FIRMWARE_DIR "/DMI" |
| 32 | + |
26 | 33 | struct dmi_header { |
27 | 34 | u8 type; |
28 | 35 | u8 length; |
29 | 36 | u16 handle; |
30 | 37 | u8 *data; |
31 | 38 | }; |
32 | 39 |
|
33 | | -void dmi_dump(xmlNode *node, struct dmi_header * h); |
| 40 | +int is_printable(const u8 *data, int len); |
| 41 | +void dmi_dump(xmlNode *node, struct dmi_header *h); |
34 | 42 | xmlNode *dmi_decode(xmlNode *parent_n, dmi_codes_major *dmiMajor, struct dmi_header * h, u16 ver); |
35 | 43 | void to_dmi_header(struct dmi_header *h, u8 * data); |
36 | 44 |
|
| 45 | +xmlNode *smbios3_decode_get_version(u8 * buf, const char *devmem); |
37 | 46 | xmlNode *smbios_decode_get_version(u8 * buf, const char *devmem); |
38 | 47 | xmlNode *legacy_decode_get_version(u8 * buf, const char *devmem); |
39 | | -int smbios_decode(Log_t *logp, int type, u8 *buf, const char *devmem, xmlNode *xmlnode); |
40 | | -int legacy_decode(Log_t *logp, int type, u8 *buf, const char *devmem, xmlNode *xmlnode); |
| 48 | +int smbios3_decode(Log_t *logp, int type, u8 *buf, const char *devmem, u32 flags, xmlNode *xmlnode); |
| 49 | +int smbios_decode(Log_t *logp, int type, u8 *buf, const char *devmem, u32 flags, xmlNode *xmlnode); |
| 50 | +int legacy_decode(Log_t *logp, int type, u8 *buf, const char *devmem, u32 flags, xmlNode *xmlnode); |
41 | 51 |
|
42 | 52 | const char *dmi_string(const struct dmi_header *dm, u8 s); |
43 | 53 | void dmi_system_uuid(xmlNode *node, const u8 * p, u16 ver); |
|
0 commit comments