From ed86e541bda7c14bfb60018154a3642296004878 Mon Sep 17 00:00:00 2001 From: Timo Warns Date: Fri, 25 Feb 2011 14:44:21 -0800 Subject: [PATCH] --- yaml --- r: 233696 b: refs/heads/master c: 294f6cf48666825d23c9372ef37631232746e40d h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/partitions/ldm.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index fcdefe016601..5a2bb1515b8f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2876592f231d436c295b67726313f6f3cfb6e243 +refs/heads/master: 294f6cf48666825d23c9372ef37631232746e40d diff --git a/trunk/fs/partitions/ldm.c b/trunk/fs/partitions/ldm.c index 789c625c7aa5..b10e3540d5b7 100644 --- a/trunk/fs/partitions/ldm.c +++ b/trunk/fs/partitions/ldm.c @@ -251,6 +251,11 @@ static bool ldm_parse_vmdb (const u8 *data, struct vmdb *vm) } vm->vblk_size = get_unaligned_be32(data + 0x08); + if (vm->vblk_size == 0) { + ldm_error ("Illegal VBLK size"); + return false; + } + vm->vblk_offset = get_unaligned_be32(data + 0x0C); vm->last_vblk_seq = get_unaligned_be32(data + 0x04);