]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
hw/smbios: Fix port connector option validation
authorAkihiko Odaki <akihiko.odaki@daynix.com>
Mon, 29 Jan 2024 08:03:08 +0000 (17:03 +0900)
committerMichael Tokarev <mjt@tls.msk.ru>
Tue, 13 Feb 2024 18:06:28 +0000 (21:06 +0300)
qemu_smbios_type8_opts did not have the list terminator and that
resulted in out-of-bound memory access. It also needs to have an element
for the type option.

Cc: qemu-stable@nongnu.org
Fixes: fd8caa253c56 ("hw/smbios: support for type 8 (port connector)")
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
Reviewed-by: Ani Sinha <anisinha@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
(cherry picked from commit 196578c9d051d19c23e6c13e97b791a41b318315)

hw/smbios/smbios.c

index 7a58d50d80892cbb1cdf2c80c87abad0768fb2e3..9f4d007d960fa08f524d071cf4ffbb242706e973 100644 (file)
@@ -345,6 +345,11 @@ static const QemuOptDesc qemu_smbios_type4_opts[] = {
 };
 
 static const QemuOptDesc qemu_smbios_type8_opts[] = {
+    {
+        .name = "type",
+        .type = QEMU_OPT_NUMBER,
+        .help = "SMBIOS element type",
+    },
     {
         .name = "internal_reference",
         .type = QEMU_OPT_STRING,
@@ -365,6 +370,7 @@ static const QemuOptDesc qemu_smbios_type8_opts[] = {
         .type = QEMU_OPT_NUMBER,
         .help = "port type",
     },
+    { /* end of list */ }
 };
 
 static const QemuOptDesc qemu_smbios_type11_opts[] = {