smbios: empty strings in smbios_add_string()

smbios_add_string() cannot deal with empty strings. This leads to incorrect
property values and invalid tables. E.g. for the pine64-lts_defconfig
CONFIG_SMBIOS_MANUFACTURER="". Linux command dmidecode shows:

Table 1:
    Manufacturer: sunxi
    Product Name: sunxi

Table 3:
    Invalid entry length (2). DMI table is broken! Stop.

Replace empty strings by "Unknown".

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
This commit is contained in:
Heinrich Schuchardt 2020-06-01 15:44:00 +02:00
parent 88bd5b1793
commit 00a871d34e

View file

@ -31,6 +31,8 @@ static int smbios_add_string(char *start, const char *str)
{
int i = 1;
char *p = start;
if (!*str)
str = "Unknown";
for (;;) {
if (!*p) {