You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, python-dmidecode will print an empty dictionary as below:
# python3
Python 3.9.13 (main, Jul 25 2022, 00:00:00)
[GCC 11.3.1 20220421 (Red Hat 11.3.1-2)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import dmidecode
>>> dmidecode.bios()
{}
>>>
This patch will solve the above issue.
Signed-off-by: Zhongze Hu <[email protected]>
@@ -5241,7 +5241,7 @@ static void dmi_table(Log_t *logp, int type, u32 base, u16 len, u16 num, u16 ver
5241
5241
}
5242
5242
5243
5243
if (ver>SUPPORTED_SMBIOS_VER){
5244
-
log_append(logp, LOGFL_NODUPS, LOG_WARNING, "# SMBIOS implementations newer than version %u.%u are not\n", "# fully supported by this version of dmidecode.\n", SUPPORTED_SMBIOS_VER >> 8, SUPPORTED_SMBIOS_VER&0xFF);
5244
+
log_append(logp, LOGFL_NODUPS, LOG_WARNING, "# SMBIOS implementations newer than version %u.%u.%u are not\nfully supported by this version of dmidecode.\n", SUPPORTED_SMBIOS_VER >> 16, (SUPPORTED_SMBIOS_VER >> 8) &0xFF, SUPPORTED_SMBIOS_VER&0xFF);
5245
5245
}
5246
5246
5247
5247
if( version_added==0 ) {
@@ -5250,7 +5250,7 @@ static void dmi_table(Log_t *logp, int type, u32 base, u16 len, u16 num, u16 ver
5250
5250
}
5251
5251
5252
5252
data=buf;
5253
-
while(i<num&&data+4 <= buf+len) { /* 4 is the length of an SMBIOS structure header */
5253
+
while((i<num||!num)&&data+4 <= buf+len) { /* 4 is the length of an SMBIOS structure header */
0 commit comments