static int
-qemuDomainAddChardevTLSObjects(virQEMUDriverPtr driver,
+qemuDomainAddChardevTLSObjects(virConnectPtr conn,
+ virQEMUDriverPtr driver,
virQEMUDriverConfigPtr cfg,
virDomainObjPtr vm,
virDomainChrSourceDefPtr dev,
+ char *devAlias,
char *charAlias,
char **tlsAlias,
char **secAlias)
dev->data.tcp.haveTLS != VIR_TRISTATE_BOOL_YES)
return 0;
+ if (qemuDomainSecretChardevPrepare(conn, cfg, priv, devAlias, dev) < 0)
+ goto cleanup;
+
if (qemuDomainGetChardevTLSObjects(cfg, priv, dev, charAlias,
&tlsProps, tlsAlias,
&secProps, secAlias) < 0)
if (VIR_REALLOC_N(def->redirdevs, def->nredirdevs+1) < 0)
goto cleanup;
- if (qemuDomainSecretChardevPrepare(conn, cfg, priv, redirdev->info.alias,
- redirdev->source) < 0)
- goto cleanup;
-
- if (qemuDomainAddChardevTLSObjects(driver, cfg, vm, redirdev->source,
- charAlias, &tlsAlias, &secAlias) < 0)
+ if (qemuDomainAddChardevTLSObjects(conn, driver, cfg, vm, redirdev->source,
+ redirdev->info.alias, charAlias,
+ &tlsAlias, &secAlias) < 0)
goto audit;
qemuDomainObjEnterMonitor(driver, vm);
if (qemuDomainChrPreInsert(vmdef, chr) < 0)
goto cleanup;
- if (qemuDomainSecretChardevPrepare(conn, cfg, priv, chr->info.alias,
- dev) < 0)
- goto cleanup;
-
- if (qemuDomainAddChardevTLSObjects(driver, cfg, vm, dev, charAlias,
+ if (qemuDomainAddChardevTLSObjects(conn, driver, cfg, vm, dev,
+ chr->info.alias, charAlias,
&tlsAlias, &secAlias) < 0)
goto audit;
goto cleanup;
if (rng->backend == VIR_DOMAIN_RNG_BACKEND_EGD) {
- if (qemuDomainSecretChardevPrepare(conn, cfg, priv, rng->info.alias,
- rng->source.chardev) < 0)
- goto cleanup;
-
- if (qemuDomainAddChardevTLSObjects(driver, cfg, vm, rng->source.chardev,
- charAlias, &tlsAlias, &secAlias) < 0)
+ if (qemuDomainAddChardevTLSObjects(conn, driver, cfg, vm,
+ rng->source.chardev,
+ rng->info.alias, charAlias,
+ &tlsAlias, &secAlias) < 0)
goto audit;
}