2 #------------------------------------------------------------------------------
3 # $File: virtual,v 1.6 2014/05/07 21:25:41 christos Exp $
4 # From: James Nobis <quel@quelrod.net>
5 # Microsoft hard disk images for:
8 # http://technet.microsoft.com/en-us/virtualserver/bb676673.aspx
10 0 string conectix Microsoft Disk Image, Virtual Server or Virtual PC
13 # From: Philipp Hahn <hahn@univention.de>
14 0 string LibvirtQemudSave Libvirt QEMU Suspend Image
15 >0x10 lelong x \b, version %u
16 >0x14 lelong x \b, XML length %u
17 >0x18 lelong 1 \b, running
18 >0x1c lelong 1 \b, compressed
20 0 string LibvirtQemudPart Libvirt QEMU partial Suspend Image
21 # From: Alex Beregszaszi <alex@fsn.hu>
22 0 string/b COWD VMWare3
27 >4 byte 2 undoable disk image
30 0 string/b VMDK VMware4 disk image
31 0 string/b KDMV VMware4 disk image
33 #--------------------------------------------------------------------
34 # Qemu Emulator Images
35 # Lines written by Friedrich Schwittay (f.schwittay@yousable.de)
36 # Updated by Adam Buchbinder (adam.buchbinder@gmail.com)
37 # Made by reading sources, reading documentation, and doing trial and error
38 # on existing QCOW files
39 0 string/b QFI\xFB QEMU QCOW Image
41 # Uncomment the following line to display Magic (only used for debugging
43 #>0 string/b x , Magic: %s
45 # There are currently 2 Versions: "1" and "2".
46 # http://www.gnome.org/~markmc/qcow-image-format-version-1.html
49 # Using the existence of the Backing File Offset to determine whether
50 # to read Backing File Information
51 >>12 belong >0 \b, has backing file (
52 # Note that this isn't a null-terminated string; the length is actually
53 # (16.L). Assuming a null-terminated string happens to work usually, but it
54 # may spew junk until it reaches a \0 in some cases.
55 >>>(12.L) string >\0 \bpath %s
57 # Modification time of the Backing File
58 # Really useful if you want to know if your backing
59 # file is still usable together with this image
60 >>>>20 bedate >0 \b, mtime %s)
63 # Size is stored in bytes in a big-endian u64.
64 >>24 bequad x \b, %lld bytes
66 # 1 for AES encryption, 0 for none.
67 >>36 belong 1 \b, AES-encrypted
69 # http://www.gnome.org/~markmc/qcow-image-format.html
71 # Using the existence of the Backing File Offset to determine whether
72 # to read Backing File Information
73 >>8 bequad >0 \b, has backing file
74 # Note that this isn't a null-terminated string; the length is actually
75 # (16.L). Assuming a null-terminated string happens to work usually, but it
76 # may spew junk until it reaches a \0 in some cases. Also, since there's no
77 # .Q modifier, we just use the bottom four bytes as an offset. Note that if
78 # the file is over 4G, and the backing file path is stored after the first 4G,
79 # the wrong filename will be printed. (This should be (8.Q), when that syntax
81 >>>(12.L) string >\0 (path %s)
82 >>24 bequad x \b, %lld bytes
83 >>32 belong 1 \b, AES-encrypted
86 # Using the existence of the Backing File Offset to determine whether
87 # to read Backing File Information
88 >>8 bequad >0 \b, has backing file
89 # Note that this isn't a null-terminated string; the length is actually
90 # (16.L). Assuming a null-terminated string happens to work usually, but it
91 # may spew junk until it reaches a \0 in some cases. Also, since there's no
92 # .Q modifier, we just use the bottom four bytes as an offset. Note that if
93 # the file is over 4G, and the backing file path is stored after the first 4G,
94 # the wrong filename will be printed. (This should be (8.Q), when that syntax
96 >>>(12.L) string >\0 (path %s)
97 >>24 bequad x \b, %lld bytes
98 >>32 belong 1 \b, AES-encrypted
100 >4 default x (unknown version)
102 0 string/b QEVM QEMU suspend to disk image
105 # http://wiki.qemu.org/Features/QED/Specification
106 0 string/b QED\0 QEMU QED Image
109 # Sun xVM VirtualBox Disk Image
110 # From: Richard W.M. Jones <rich@annexia.org>
111 # VirtualBox Disk Image
112 0x40 ulelong 0xbeda107f VirtualBox Disk Image
113 >0x44 uleshort >0 \b, major %u
114 >0x46 uleshort >0 \b, minor %u
116 >368 lequad x \b, %lld bytes
118 0 string/b Bochs\ Virtual\ HD\ Image Bochs disk image,
119 >32 string x type %s,
120 >48 string x subtype %s
122 0 lelong 0x02468ace Bochs Sparse disk image