return -1;
}
- if (vm->def->sec &&
- vm->def->sec->sectype == VIR_DOMAIN_LAUNCH_SECURITY_SEV &&
- qemuSetupSEVCgroup(vm) < 0)
- return -1;
+ if (vm->def->sec) {
+ switch (vm->def->sec->sectype) {
+ case VIR_DOMAIN_LAUNCH_SECURITY_SEV:
+ if (qemuSetupSEVCgroup(vm) < 0)
+ return -1;
+ break;
+ case VIR_DOMAIN_LAUNCH_SECURITY_PV:
+ break;
+ case VIR_DOMAIN_LAUNCH_SECURITY_NONE:
+ case VIR_DOMAIN_LAUNCH_SECURITY_LAST:
+ virReportEnumRangeError(virDomainLaunchSecurity, vm->def->sec->sectype);
+ return -1;
+ }
+ }
return 0;
}
if (virDomainGetLaunchSecurityInfoEnsureACL(domain->conn, vm->def) < 0)
goto cleanup;
- if (vm->def->sec &&
- vm->def->sec->sectype == VIR_DOMAIN_LAUNCH_SECURITY_SEV) {
+ if (!vm->def->sec) {
+ ret = 0;
+ goto cleanup;
+ }
+
+ switch (vm->def->sec->sectype) {
+ case VIR_DOMAIN_LAUNCH_SECURITY_SEV:
if (qemuDomainGetSEVInfo(vm, params, nparams, flags) < 0)
goto cleanup;
+ break;
+ case VIR_DOMAIN_LAUNCH_SECURITY_PV:
+ break;
+ case VIR_DOMAIN_LAUNCH_SECURITY_NONE:
+ case VIR_DOMAIN_LAUNCH_SECURITY_LAST:
+ virReportEnumRangeError(virDomainLaunchSecurity, vm->def->sec->sectype);
+ return -1;
}
ret = 0;
for (i = 0; i < vm->def->nshmems; i++)
qemuDomainPrepareShmemChardev(vm->def->shmems[i]);
- if (vm->def->sec &&
- vm->def->sec->sectype == VIR_DOMAIN_LAUNCH_SECURITY_SEV) {
- VIR_DEBUG("Updating SEV platform info");
- if (qemuProcessUpdateSEVInfo(vm) < 0)
+ if (vm->def->sec) {
+ switch (vm->def->sec->sectype) {
+ case VIR_DOMAIN_LAUNCH_SECURITY_SEV:
+ VIR_DEBUG("Updating SEV platform info");
+ if (qemuProcessUpdateSEVInfo(vm) < 0)
+ return -1;
+ break;
+ case VIR_DOMAIN_LAUNCH_SECURITY_PV:
+ break;
+ case VIR_DOMAIN_LAUNCH_SECURITY_NONE:
+ case VIR_DOMAIN_LAUNCH_SECURITY_LAST:
+ virReportEnumRangeError(virDomainLaunchSecurity, vm->def->sec->sectype);
return -1;
+ }
}
return 0;
rc = -1;
}
- if (def->sec &&
- def->sec->sectype == VIR_DOMAIN_LAUNCH_SECURITY_SEV) {
- if (virSecurityDACRestoreSEVLabel(mgr, def) < 0)
- rc = -1;
+ if (def->sec) {
+ switch (def->sec->sectype) {
+ case VIR_DOMAIN_LAUNCH_SECURITY_SEV:
+ if (virSecurityDACRestoreSEVLabel(mgr, def) < 0)
+ rc = -1;
+ break;
+ case VIR_DOMAIN_LAUNCH_SECURITY_PV:
+ break;
+ case VIR_DOMAIN_LAUNCH_SECURITY_NONE:
+ case VIR_DOMAIN_LAUNCH_SECURITY_LAST:
+ virReportEnumRangeError(virDomainLaunchSecurity, def->sec->sectype);
+ return -1;
+ }
}
for (i = 0; i < def->nsysinfo; i++) {
return -1;
}
- if (def->sec &&
- def->sec->sectype == VIR_DOMAIN_LAUNCH_SECURITY_SEV) {
- if (virSecurityDACSetSEVLabel(mgr, def) < 0)
+ if (def->sec) {
+ switch (def->sec->sectype) {
+ case VIR_DOMAIN_LAUNCH_SECURITY_SEV:
+ if (virSecurityDACSetSEVLabel(mgr, def) < 0)
+ return -1;
+ break;
+ case VIR_DOMAIN_LAUNCH_SECURITY_PV:
+ break;
+ case VIR_DOMAIN_LAUNCH_SECURITY_NONE:
+ case VIR_DOMAIN_LAUNCH_SECURITY_LAST:
+ virReportEnumRangeError(virDomainLaunchSecurity, def->sec->sectype);
return -1;
+ }
}
if (virSecurityDACGetImageIds(secdef, priv, &user, &group))