diff options
author | Heinrich Schuchardt <xypron.glpk@gmx.de> | 2020-06-01 15:44:00 +0200 |
---|---|---|
committer | Heinrich Schuchardt <xypron.glpk@gmx.de> | 2020-06-05 04:04:41 +0200 |
commit | 00a871d34e2f0a12eec4da9c297588026ce55b9a (patch) | |
tree | 37e32434c5fa9d0871dcf523c78e8015584ff191 /lib | |
parent | 88bd5b1793600b0f5f25c3d236b4d049fb986140 (diff) | |
download | u-boot-00a871d34e2f0a12eec4da9c297588026ce55b9a.tar.gz u-boot-00a871d34e2f0a12eec4da9c297588026ce55b9a.tar.xz u-boot-00a871d34e2f0a12eec4da9c297588026ce55b9a.zip |
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>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/smbios.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/smbios.c b/lib/smbios.c index 7b74971f68..11790443e1 100644 --- a/lib/smbios.c +++ b/lib/smbios.c @@ -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) { |