39 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From e0443f1fc78f2a79c073dbdf4133bec41c4c0591 Mon Sep 17 00:00:00 2001
 | |
| From: "Richard W.M. Jones" <rjones@redhat.com>
 | |
| Date: Fri, 4 Oct 2019 18:30:01 +0100
 | |
| Subject: [PATCH 20/25] helper: Fix KVM signature.
 | |
| 
 | |
| Thanks: Paolo Bonzini.
 | |
| ---
 | |
|  virt-what-cpuid-helper.c | 9 +++++----
 | |
|  1 file changed, 5 insertions(+), 4 deletions(-)
 | |
| 
 | |
| 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 ||
 | |
| -- 
 | |
| 2.18.4
 | |
| 
 |