From: Richard W.M. Jones Date: Fri, 4 Oct 2019 17:30:01 +0000 (+0100) Subject: helper: Fix KVM signature. X-Git-Tag: v1.21~6 X-Git-Url: http://git.annexia.org/?p=virt-what.git;a=commitdiff_plain;h=5cdf740942a4f443977344428dfe6c43f232f0eb helper: Fix KVM signature. Thanks: Paolo Bonzini. --- diff --git a/virt-what-cpuid-helper.c b/virt-what-cpuid-helper.c index 0cd4a6f..9c6cdb2 100644 --- a/virt-what-cpuid-helper.c +++ b/virt-what-cpuid-helper.c @@ -28,15 +28,16 @@ #if defined(__i386__) || defined(__x86_64__) /* Known x86 hypervisor signatures. Note that if you add a new test - * to virt-what.in you may need to update this list. The signature is - * always 12 bytes except in the case of KVM. + * to virt-what.in you may need to update this list. Note the + * signature is always 12 bytes long, plus we add \0 to the end to + * make it 13 bytes. */ static int -known_signature (char *sig) +known_signature (const char *sig) { return strcmp (sig, "bhyve bhyve ") == 0 || - strcmp (sig, "KVMKVMKVM") == 0 || + memcmp (sig, "KVMKVMKVM\0\0\0", 12) == 0 || strcmp (sig, "LKVMLKVMLKVM") == 0 || strcmp (sig, "Microsoft Hv") == 0 || strcmp (sig, "OpenBSDVMM58") == 0 ||