This commit extends qemuDomainSecretStorageSourcePrepare
to setup multiple qemu secrets as defined by virStorageSource->encryption.
Signed-off-by: Or Ozeri <oro(a)il.ibm.com>
---
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