From 91dc79ab8685dde591b59c2fd4aa4b5fd809d893 Mon Sep 17 00:00:00 2001 From: Daniil Baturin Date: Sun, 20 Jan 2019 17:17:38 +0000 Subject: Add support for detecting QEMU on x86. Side effect: KVM on ARM64 is detected as QEMU (maybe better than not detecting anything). --- src/hypervisor_check.adb | 2 ++ src/hypervisor_check.ads | 2 ++ 2 files changed, 4 insertions(+) (limited to 'src') diff --git a/src/hypervisor_check.adb b/src/hypervisor_check.adb index 9923d27..4619b30 100644 --- a/src/hypervisor_check.adb +++ b/src/hypervisor_check.adb @@ -197,6 +197,8 @@ package body Hypervisor_Check is Vendor_Name := US.To_Unbounded_String (VirtualBox); elsif Contains (Vendor_String, Parallels_DMI_Pattern) then Vendor_Name := US.To_Unbounded_String (Parallels); + elsif Contains (Vendor_String, QEMU_DMI_Pattern) then + Vendor_Name := US.To_Unbounded_String (QEMU); else Vendor_Name := US.Null_Unbounded_String; end if; diff --git a/src/hypervisor_check.ads b/src/hypervisor_check.ads index 3bb84be..3c62f5c 100644 --- a/src/hypervisor_check.ads +++ b/src/hypervisor_check.ads @@ -62,6 +62,7 @@ package Hypervisor_Check is VirtualBox : constant String := "VirtualBox"; Parallels : constant String := "Parallels"; bhyve : constant String := "bhyve"; + QEMU : constant String := "QEMU"; private @@ -83,6 +84,7 @@ private HyperV_DMI_Pattern : constant String := "Microsoft Corporation"; VirtualBox_DMI_Pattern : constant String := "innotek GmbH"; Parallels_DMI_Pattern : constant String := "Parallels"; + QEMU_DMI_Pattern : constant String := "QEMU"; function CPUID (Arg : Unsigned_32) return CPUID_Registers; -- cgit v1.2.3