On Mon, Jan 16, 2017 at 08:41:15PM +0100, Max Reitz wrote: > On 03.01.2017 19:27, Daniel P. Berrange wrote: > > The qcow driver refuses to open images which are less than > > 2 bytes in size, but will happily create such images. Add > > a check in the create path to avoid this discrepancy. > > > > Signed-off-by: Daniel P. Berrange <[email protected]> > > --- > > block/qcow.c | 6 ++++++ > > 1 file changed, 6 insertions(+) > > > > diff --git a/block/qcow.c b/block/qcow.c > > index 7540f43..8133fda 100644 > > --- a/block/qcow.c > > +++ b/block/qcow.c > > @@ -799,6 +799,12 @@ static int qcow_create(const char *filename, QemuOpts > > *opts, Error **errp) > > /* Read out options */ > > total_size = ROUND_UP(qemu_opt_get_size_del(opts, BLOCK_OPT_SIZE, 0), > > BDRV_SECTOR_SIZE); > > + if (total_size <= 1) { > > + error_setg(errp, "Image size is too small (must be at least 2 > > bytes)"); > > + ret = -EINVAL; > > + goto cleanup; > > + } > > + > > Given the ROUND_UP() before, I can't see how total_size can be 1, but I > can see how it can be 0. Since that is covered by this condition: > > Reviewed-by: Max Reitz <[email protected]>
I'll switch to == 0 none the less Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://entangle-photo.org -o- http://search.cpan.org/~danberr/ :|
