This commit extends qemuDomainSecretStorageSourcePrepare
to setup multiple qemu secrets as defined by virStorageSource->encryption.

Signed-off-by: Or Ozeri <[email protected]>
---
 src/qemu/qemu_domain.c | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
index a3b9b57cfa..ffe29dc832 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -1482,14 +1482,19 @@ 
qemuDomainSecretStorageSourcePrepare(qemuDomainObjPrivate *priv,
     }
 
     if (hasEnc) {
-        srcPriv->enccount = 1;
-        srcPriv->encinfo = g_new0(qemuDomainSecretInfo *, 1);
-        if (!(srcPriv->encinfo[0] = qemuDomainSecretInfoSetupFromSecret(priv, 
aliasformat,
-                                                                        
"encryption", 0,
-                                                                        
VIR_SECRET_USAGE_TYPE_VOLUME,
-                                                                        NULL,
-                                                                        
&src->encryption->secrets[0]->seclookupdef)))
-            return -1;
+        size_t nsecrets = src->encryption->nsecrets;
+        size_t i;
+
+        srcPriv->enccount = nsecrets;
+        srcPriv->encinfo = g_new0(qemuDomainSecretInfo *, nsecrets);
+        for (i = 0; i < nsecrets; ++i) {
+            if (!(srcPriv->encinfo[i] = 
qemuDomainSecretInfoSetupFromSecret(priv, aliasformat,
+                                                                            
"encryption", i,
+                                                                            
VIR_SECRET_USAGE_TYPE_VOLUME,
+                                                                            
NULL,
+                                                                            
&src->encryption->secrets[i]->seclookupdef)))
+                return -1;
+        }
     }
 
     if (src->ncookies &&
-- 
2.25.1

Reply via email to