From: Alexander Ivanov Date: Mon, 24 Apr 2023 09:31:47 +0000 (+0200) Subject: parallels: Incorrect condition in out-of-image check X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=029136f2611eaf6d1eea2d5e4bdc4492bb8ffa0c;p=qemu.git parallels: Incorrect condition in out-of-image check All the offsets in the BAT must be lower than the file size. Fix the check condition for correct check. Signed-off-by: Alexander Ivanov Reviewed-by: Denis V. Lunev Message-Id: <20230424093147.197643-13-alexander.ivanov@virtuozzo.com> Reviewed-by: Hanna Czenczek Signed-off-by: Hanna Czenczek --- diff --git a/block/parallels.c b/block/parallels.c index 84d1d045ad..7c263d5085 100644 --- a/block/parallels.c +++ b/block/parallels.c @@ -457,7 +457,7 @@ parallels_check_outside_image(BlockDriverState *bs, BdrvCheckResult *res, high_off = 0; for (i = 0; i < s->bat_size; i++) { off = bat2sect(s, i) << BDRV_SECTOR_BITS; - if (off > size) { + if (off + s->cluster_size > size) { fprintf(stderr, "%s cluster %u is outside image\n", fix & BDRV_FIX_ERRORS ? "Repairing" : "ERROR", i); res->corruptions++;