virTimeBackOffVar timebackoff;
const unsigned long long timeout = 1000; /* ms */
bool setTPMStateLabel = true;
- bool teardownlabel = false;
int cmdret = 0;
pid_t pid = -1;
setTPMStateLabel = false;
}
- if (qemuSecurityStartTPMEmulator(driver, vm, cmd,
- cfg->swtpm_user, cfg->swtpm_group,
- setTPMStateLabel, NULL, &cmdret) < 0) {
+ if (qemuSecuritySetTPMLabels(driver, vm, setTPMStateLabel) < 0)
+ return -1;
+
+ if (qemuSecurityCommandRun(driver, vm, cmd, cfg->swtpm_user,
+ cfg->swtpm_group, NULL, &cmdret) < 0)
goto error;
- }
if (cmdret < 0) {
- /* virCommandRun() hidden in qemuSecurityStartTPMEmulator()
+ /* virCommandRun() hidden in qemuSecurityCommandRun()
* already reported error. */
goto error;
}
- teardownlabel = true;
if (virPidFileReadPath(pidfile, &pid) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
virProcessKillPainfully(pid, true);
if (pidfile)
unlink(pidfile);
- if (teardownlabel)
- qemuSecurityRestoreTPMLabels(driver, vm, setTPMStateLabel);
+ qemuSecurityRestoreTPMLabels(driver, vm, setTPMStateLabel);
return -1;
}