[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] libxc: Verify Magic number when reading dump



# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 9de50910defdde100c9598570a317152cba6f8c1
# Parent  0161a721bad5ab40557868d1bd6d3022cf972bb7
libxc: Verify Magic number when reading dump

The xen core files record a magic number, 
but when they are loaded it isn't checked.
This patch resolves this.

Signed-Off-By: Horms <horms@xxxxxxxxxxxx>

diff -r 0161a721bad5 -r 9de50910defd tools/libxc/xc_core.c
--- a/tools/libxc/xc_core.c     Mon Mar  6 14:02:26 2006
+++ b/tools/libxc/xc_core.c     Mon Mar  6 14:04:18 2006
@@ -61,7 +61,7 @@
  
     nr_pages = info.nr_pages;
 
-    header.xch_magic = 0xF00FEBED; 
+    header.xch_magic = XC_CORE_MAGIC;
     header.xch_nr_vcpus = nr_vcpus;
     header.xch_nr_pages = nr_pages;
     header.xch_ctxt_offset = sizeof(struct xc_core_header);
diff -r 0161a721bad5 -r 9de50910defd tools/libxc/xc_ptrace_core.c
--- a/tools/libxc/xc_ptrace_core.c      Mon Mar  6 14:02:26 2006
+++ b/tools/libxc/xc_ptrace_core.c      Mon Mar  6 14:04:18 2006
@@ -111,6 +111,13 @@
         if (read(domfd, &header, sizeof(header)) != sizeof(header))
             return -1;
 
+        if (header.xch_magic != XC_CORE_MAGIC) {
+                printf("Magic number missmatch: 0x%08x (file) != "
+                                        " 0x%08x (code)\n", header.xch_magic,
+                                        XC_CORE_MAGIC);
+                return -1;
+        }
+
         nr_pages = header.xch_nr_pages;
         nr_vcpus = header.xch_nr_vcpus;
         pages_offset = header.xch_pages_offset;
diff -r 0161a721bad5 -r 9de50910defd tools/libxc/xenctrl.h
--- a/tools/libxc/xenctrl.h     Mon Mar  6 14:02:26 2006
+++ b/tools/libxc/xenctrl.h     Mon Mar  6 14:04:18 2006
@@ -92,6 +92,7 @@
     unsigned int xch_pages_offset;
 } xc_core_header_t;
 
+#define XC_CORE_MAGIC 0xF00FEBED
 
 long xc_ptrace_core(
     int xc_handle,

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.