On 02.03.2016 17:24, Jeff Cody wrote: > The function qemu_strtoul() reads 'unsigned long' sized data, > which is larger than uint32_t on 64-bit machines. > > Even though the snap_id field in the header is 32-bits, we must > accomodate the full size in qemu_strtoul(). > > This patch also adds more meaningful error handling to the > qemu_strtoul() call, and subsequent results. > > Reported-by: Paolo Bonzini <pbonz...@redhat.com> > Signed-off-by: Jeff Cody <jc...@redhat.com> > --- > block/sheepdog.c | 11 +++++++---- > 1 file changed, 7 insertions(+), 4 deletions(-)
Another problem with this function is that it doesn't always set errp on error. Actually, this patch introduces the first instance where it does. qemu-img will not print an error if errp is not set; it actually ignores bdrv_snapshot_delete_by_id_or_name()'s return value. So this is a real issue that should be fixed as well. Max
signature.asc
Description: OpenPGP digital signature