render / rpms / libvirt

Forked from rpms/libvirt 9 months ago
Clone
Blob Blame History Raw
From 11b1557de30127ee20d51efa2034a0cc51f6c90b Mon Sep 17 00:00:00 2001
Message-Id: <11b1557de30127ee20d51efa2034a0cc51f6c90b@dist-git>
From: Erik Skultety <eskultet@redhat.com>
Date: Fri, 5 Aug 2016 09:45:49 +0200
Subject: [PATCH] storage: Fix a NULL ptr dereference in
 virStorageBackendCreateQemuImg

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@redhat.com>
(cherry picked from commit 5a3558c6201dc3aaef86166edce6b5edfe6800ad)
Signed-off-by: Erik Skultety <eskultet@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 a338d81..9b6df58 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)))
-- 
2.9.2