Patchwork [v2,5/5] block/vdi: Check for bad signature

login
register
mail settings
Submitter Stefan Weil
Date Jan. 17, 2013, 8:45 p.m.
Message ID <1358455528-29813-6-git-send-email-sw@weilnetz.de>
Download mbox | patch
Permalink /patch/213376/
State Accepted
Headers show

Comments

Stefan Weil - Jan. 17, 2013, 8:45 p.m.
vdi_open did not check for a bad signature.
This check was only in vdi_probe.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
---
 block/vdi.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

Patch

diff --git a/block/vdi.c b/block/vdi.c
index 8b768bf..257a592 100644
--- a/block/vdi.c
+++ b/block/vdi.c
@@ -392,7 +392,11 @@  static int vdi_open(BlockDriverState *bs, int flags)
         header.disk_size &= ~(SECTOR_SIZE - 1);
     }
 
-    if (header.version != VDI_VERSION_1_1) {
+    if (header.signature != VDI_SIGNATURE) {
+        logout("bad vdi signature %08x\n", header.signature);
+        ret = -EMEDIUMTYPE;
+        goto fail;
+    } else if (header.version != VDI_VERSION_1_1) {
         logout("unsupported version %u.%u\n",
                header.version >> 16, header.version & 0xffff);
         ret = -ENOTSUP;