 
	
| [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] xc: fix segfault in pv domain create if kernel is an invalid image
 # HG changeset patch
# User Gianni Tedesco <gianni.tedesco@xxxxxxxxxx>
# Date 1281372198 -3600
# Node ID 1d67dd785ef465da73181f26db4d468932fe61e7
# Parent  fdf12cb3e2d106bec936d105ee35e491a5ac2c13
xc: fix segfault in pv domain create if kernel is an invalid image
If libelf calls elf_err() or elf_msg() before elf_set_log() has been
called then it could potentially read an uninitialised log handling
callback function pointer from struct elf_binary. Fix this in libxc by
zeroing the structure before calling elf_init().
Signed-off-by: Gianni Tedesco <gianni.tedesco@xxxxxxxxxx>
Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
---
 tools/libxc/xc_hvm_build.c |    1 +
 1 files changed, 1 insertion(+)
diff -r fdf12cb3e2d1 -r 1d67dd785ef4 tools/libxc/xc_hvm_build.c
--- a/tools/libxc/xc_hvm_build.c        Mon Aug 09 17:20:39 2010 +0100
+++ b/tools/libxc/xc_hvm_build.c        Mon Aug 09 17:43:18 2010 +0100
@@ -142,6 +142,7 @@ static int setup_guest(xc_interface *xch
     if ( memsize > target )
         pod_mode = 1;
 
+    memset(&elf, 0, sizeof(elf));
     if ( elf_init(&elf, image, image_size) != 0 )
         goto error_out;
     elf_parse_binary(&elf);
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
 | 
|  | Lists.xenproject.org is hosted with RackSpace, monitoring our |