[libvirt] [PATCH] storage: Fix a NULL ptr dereference in virStorageBackendCreateQemuImg

Andrea Bolognani abologna at redhat.com
Thu Aug 4 08:48:54 UTC 2016


On Wed, 2016-08-03 at 12:27 +0200, Erik Skultety wrote:
> There was a missing check for vol->target.encryption being NULL
> at one particular place (modified by commit a48c71411) which caused a crash
> when user attempted to create a raw volume using a non-raw file volume as
> source.
> 
> Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1363636
> 
> Signed-off-by: Erik Skultety <eskultet at redhat.com>
> ---
>  src/storage/storage_backend.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/src/storage/storage_backend.c b/src/storage/storage_backend.c
> index 1f33181..d4334dc 100644
> --- a/src/storage/storage_backend.c
> +++ b/src/storage/storage_backend.c
> @@ -1459,6 +1459,7 @@ virStorageBackendCreateQemuImg(virConnectPtr conn,
>          goto cleanup;
>  
>      if (vol->target.format == VIR_STORAGE_FILE_RAW &&
> +        vol->target.encryption &&
>          vol->target.encryption->format == VIR_STORAGE_ENCRYPTION_FORMAT_LUKS) {
>          if (!(secretPath =
>                virStorageBackendCreateQemuImgSecretPath(conn, pool, vol)))

Should we check to make sure that vol and vol->target are
non-NULL as well?

ACK

-- 
Andrea Bolognani / Red Hat / Virtualization




More information about the libvir-list mailing list