28 lines
970 B
Diff
28 lines
970 B
Diff
qemu-spoof: clear the SMBIOS type0 "VM" characteristic bit
|
|
|
|
type0 bios-characteristics-extension byte sets bit 0x10 ("VM") for QEMU; suppress
|
|
it when spoof_smbios_hide_vm(). (type1/2/3 manufacturer/product/serial are the
|
|
config layer; type4 socket / type11 OEM-strings / type17 memory wiring is a
|
|
follow-up.) Inert unless a spoof-seed is set.
|
|
diff --git a/hw/smbios/smbios.c b/hw/smbios/smbios.c
|
|
index 7d71418..4c39b5a 100644
|
|
--- a/hw/smbios/smbios.c
|
|
+++ b/hw/smbios/smbios.c
|
|
@@ -16,6 +16,7 @@
|
|
*/
|
|
|
|
#include "qemu/osdep.h"
|
|
+#include "hw/misc/spoof.h"
|
|
#include "qemu/units.h"
|
|
#include "qemu/bswap.h"
|
|
#include "qapi/error.h"
|
|
@@ -583,7 +584,7 @@ static void smbios_build_type_0_table(void)
|
|
if (smbios_type0.uefi) {
|
|
t->bios_characteristics_extension_bytes[1] |= 0x08; /* |= UEFI */
|
|
}
|
|
- if (smbios_type0.vm) {
|
|
+ if (smbios_type0.vm && !spoof_smbios_hide_vm()) {
|
|
t->bios_characteristics_extension_bytes[1] |= 0x10; /* |= VM */
|
|
}
|
|
|