From bf7bad24ce141dab5b5acc3ffb98ce5fe4a8e0f9 Mon Sep 17 00:00:00 2001 From: Xie XiuQi Date: Wed, 21 Oct 2015 15:12:50 +0200 Subject: Fix 'No SMBIOS nor DMI entry point found' on SMBIOS3 address_from_efi may return a SMBIOS or SMBIOS3 format entry point, so add this condition. --- AUTHORS | 1 + CHANGELOG | 4 ++++ dmidecode.c | 12 ++++++++++-- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/dmidecode.c b/dmidecode.c index ce0511b..cfcade4 100644 --- a/dmidecode.c +++ b/dmidecode.c @@ -4866,8 +4866,16 @@ int main(int argc, char * const argv[]) goto exit_free; } - if (smbios_decode(buf, opt.devmem, 0)) - found++; + if (memcmp(buf, "_SM3_", 5) == 0) + { + if (smbios3_decode(buf, opt.devmem, 0)) + found++; + } + else if (memcmp(buf, "_SM_", 4) == 0) + { + if (smbios_decode(buf, opt.devmem, 0)) + found++; + } goto done; memory_scan: -- cgit v1.0