qemu/block
Klim Kireev 555a608c5d block/parallels: check new image size
Before this patch incorrect image could be created via qemu-img
(Example: qemu-img create -f parallels -o size=4096T hack.img),
incorrect images cannot be used due to overflow in main image structure.

This patch add check of size in image creation.

After reading size it compare it with UINT32_MAX * cluster_size.

Signed-off-by: Klim Kireev <proffk@virtuozzo.mipt.ru>
Signed-off-by: Denis V. Lunev <den@openvz.org>
Message-id: 1469639300-12155-1-git-send-email-den@openvz.org
CC: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2016-08-05 09:59:06 +01:00
..
accounting.c block: Clean up includes 2016-01-20 13:36:23 +01:00
archipelago.c coccinelle: Remove unnecessary variables for function return value 2016-06-20 16:38:13 +02:00
backup.c coroutine: move entry argument to qemu_coroutine_create 2016-07-13 13:26:02 +02:00
blkdebug.c coroutine: move entry argument to qemu_coroutine_create 2016-07-13 13:26:02 +02:00
blkreplay.c blkreplay: Switch .bdrv_co_discard() to byte-based 2016-07-20 14:11:55 +01:00
blkverify.c block: Convert bdrv_aio_writev() to BdrvChild 2016-07-05 16:46:26 +02:00
block-backend.c block: Convert BB interface to byte-based discards 2016-07-20 14:11:55 +01:00
bochs.c block: Convert bdrv_co_preadv/pwritev to BdrvChild 2016-07-05 16:46:27 +02:00
cloop.c block: Convert bdrv_pread(v) to BdrvChild 2016-07-05 16:46:27 +02:00
commit.c Improve block job rate limiting for small bandwidth values 2016-07-13 13:41:38 +02:00
crypto.c block: export LUKS specific data to qemu-img info 2016-07-26 17:46:37 +02:00
curl.c block: always compile-check debug prints 2016-05-12 15:22:08 +02:00
dirty-bitmap.c dirty-bitmap: operate with int64_t amount 2016-07-19 16:54:46 -04:00
dmg.c block: Convert bdrv_pread(v) to BdrvChild 2016-07-05 16:46:27 +02:00
gluster.c Pull request 2016-07-21 11:00:36 +01:00
io.c block: Cater to iscsi with non-power-of-2 discard 2016-08-03 18:44:57 +02:00
iscsi.c iscsi: Switch .bdrv_co_discard() to byte-based 2016-07-20 14:24:25 +01:00
linux-aio.c linux-aio: prevent submitting more than MAX_EVENTS 2016-07-18 15:10:52 +01:00
Makefile.objs block: Move bdrv_commit() to block/commit.c 2016-07-05 16:46:27 +02:00
mirror.c mirror: double performance of the bulk stage if the disc is full 2016-07-26 16:23:36 -04:00
nbd-client.c nbd: Convert to byte-based interface 2016-07-20 14:24:25 +01:00
nbd-client.h nbd: Limit nbdflags to 16 bits 2016-08-03 18:44:56 +02:00
nbd.c nbd: Convert to byte-based interface 2016-07-20 14:24:25 +01:00
nfs.c coroutine: move entry argument to qemu_coroutine_create 2016-07-13 13:26:02 +02:00
null.c block/null: Implement bdrv_refresh_filename() 2016-06-16 15:20:37 +02:00
parallels.c block/parallels: check new image size 2016-08-05 09:59:06 +01:00
qapi.c qapi: Add new visit_complete() function 2016-07-06 10:52:04 +02:00
qcow2-cache.c block: Convert bdrv_pwrite(v/_sync) to BdrvChild 2016-07-05 16:46:27 +02:00
qcow2-cluster.c qcow2: Fix qcow2_get_cluster_offset() 2016-07-13 13:41:38 +02:00
qcow2-refcount.c block: Convert bdrv_discard() to byte-based 2016-07-20 14:11:55 +01:00
qcow2-snapshot.c block: Convert bdrv_pwrite(v/_sync) to BdrvChild 2016-07-05 16:46:27 +02:00
qcow2.c qcow2: do not allocate extra memory 2016-07-26 17:46:37 +02:00
qcow2.h qcow2: Implement .bdrv_co_pwritev() 2016-06-16 15:19:55 +02:00
qcow.c qcow2: do not allocate extra memory 2016-07-26 17:46:37 +02:00
qed-check.c qed: Use DIV_ROUND_UP 2016-06-07 18:19:24 +03:00
qed-cluster.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qed-gencb.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qed-l2-cache.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qed-table.c block: Convert bdrv_aio_writev() to BdrvChild 2016-07-05 16:46:26 +02:00
qed.c coroutine: move entry argument to qemu_coroutine_create 2016-07-13 13:26:02 +02:00
qed.h util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
quorum.c block: Convert bdrv_aio_writev() to BdrvChild 2016-07-05 16:46:26 +02:00
raw_bsd.c raw_bsd: Convert to byte-based interface 2016-07-20 14:24:25 +01:00
raw-posix.c block: Convert .bdrv_aio_discard() to byte-based 2016-07-20 14:11:55 +01:00
raw-win32.c raw-posix: Switch paio_submit() to byte-based 2016-07-20 14:11:55 +01:00
rbd.c block: Convert .bdrv_aio_discard() to byte-based 2016-07-20 14:11:55 +01:00
sheepdog.c sheepdog: Switch .bdrv_co_discard() to byte-based 2016-07-20 14:24:25 +01:00
snapshot.c error: Remove NULL checks on error_propagate() calls 2016-06-20 16:38:13 +02:00
ssh.c coroutine: move entry argument to qemu_coroutine_create 2016-07-13 13:26:02 +02:00
stream.c Improve block job rate limiting for small bandwidth values 2016-07-13 13:41:38 +02:00
throttle-groups.c block: Move I/O throttling configuration functions to BlockBackend 2016-05-19 16:45:30 +02:00
trace-events raw-posix: Switch paio_submit() to byte-based 2016-07-20 14:11:55 +01:00
vdi.c block: Convert bdrv_co_preadv/pwritev to BdrvChild 2016-07-05 16:46:27 +02:00
vhdx-endian.c qemu-common: stop including qemu/bswap.h from qemu-common.h 2016-05-19 16:42:28 +02:00
vhdx-log.c block: Convert bdrv_pwrite(v/_sync) to BdrvChild 2016-07-05 16:46:27 +02:00
vhdx.c block: Convert bdrv_pwrite(v/_sync) to BdrvChild 2016-07-05 16:46:27 +02:00
vhdx.h block: vhdx - update PAYLOAD_BLOCK_UNMAPPED value to match 1.00 spec 2014-12-12 15:42:22 +00:00
vmdk.c vmdk: fix metadata write regression 2016-07-13 13:41:39 +02:00
vpc.c block: Convert bdrv_co_preadv/pwritev to BdrvChild 2016-07-05 16:46:27 +02:00
vvfat.c vvfat: Fix qcow write target driver specification 2016-07-13 13:41:39 +02:00
win32-aio.c linux-aio: share one LinuxAioState within an AioContext 2016-07-18 15:09:31 +01:00
write-threshold.c block: Clean up includes 2016-01-20 13:36:23 +01:00