mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-25 14:05:18 +00:00
src/xenxs: Refactor code parsing event actions
introduce function xenParseXMEventActions(virConfPtr conf,........) which parses events leading to certain actions Signed-off-by: Kiarie Kahurani <davidkiarie4@gmail.com>
This commit is contained in:
parent
1182dc3176
commit
b1948c525e
@ -303,6 +303,42 @@ xenParseXMTimeOffset(virConfPtr conf, virDomainDefPtr def,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static int
|
||||||
|
xenParseXMEventsActions(virConfPtr conf, virDomainDefPtr def)
|
||||||
|
{
|
||||||
|
const char *str = NULL;
|
||||||
|
|
||||||
|
if (xenXMConfigGetString(conf, "on_poweroff", &str, "destroy") < 0)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
if ((def->onPoweroff = virDomainLifecycleTypeFromString(str)) < 0) {
|
||||||
|
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
|
_("unexpected value %s for on_poweroff"), str);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (xenXMConfigGetString(conf, "on_reboot", &str, "restart") < 0)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
if ((def->onReboot = virDomainLifecycleTypeFromString(str)) < 0) {
|
||||||
|
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
|
_("unexpected value %s for on_reboot"), str);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (xenXMConfigGetString(conf, "on_crash", &str, "restart") < 0)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
if ((def->onCrash = virDomainLifecycleCrashTypeFromString(str)) < 0) {
|
||||||
|
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
|
_("unexpected value %s for on_crash"), str);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#define MAX_VFB 1024
|
#define MAX_VFB 1024
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -435,31 +471,8 @@ xenParseXM(virConfPtr conf, int xendConfigVersion,
|
|||||||
if (str && (virBitmapParse(str, 0, &def->cpumask, 4096) < 0))
|
if (str && (virBitmapParse(str, 0, &def->cpumask, 4096) < 0))
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if (xenXMConfigGetString(conf, "on_poweroff", &str, "destroy") < 0)
|
if (xenParseXMEventsActions(conf, def) < 0)
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
if ((def->onPoweroff = virDomainLifecycleTypeFromString(str)) < 0) {
|
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
|
||||||
_("unexpected value %s for on_poweroff"), str);
|
|
||||||
goto cleanup;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (xenXMConfigGetString(conf, "on_reboot", &str, "restart") < 0)
|
|
||||||
goto cleanup;
|
|
||||||
if ((def->onReboot = virDomainLifecycleTypeFromString(str)) < 0) {
|
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
|
||||||
_("unexpected value %s for on_reboot"), str);
|
|
||||||
goto cleanup;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (xenXMConfigGetString(conf, "on_crash", &str, "restart") < 0)
|
|
||||||
goto cleanup;
|
|
||||||
if ((def->onCrash = virDomainLifecycleCrashTypeFromString(str)) < 0) {
|
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
|
||||||
_("unexpected value %s for on_crash"), str);
|
|
||||||
goto cleanup;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (hvm) {
|
if (hvm) {
|
||||||
if (xenXMConfigGetBool(conf, "pae", &val, 0) < 0)
|
if (xenXMConfigGetBool(conf, "pae", &val, 0) < 0)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user