diff --git a/src/locking/lock_driver_sanlock.c b/src/locking/lock_driver_sanlock.c index 3e12c4fdb8..b8c86fcd73 100644 --- a/src/locking/lock_driver_sanlock.c +++ b/src/locking/lock_driver_sanlock.c @@ -781,7 +781,17 @@ virLockManagerSanlockRegisterKillscript(int sock, int ret = -1; int rv; - if (action > VIR_DOMAIN_LOCK_FAILURE_IGNORE) { + switch (action) { + case VIR_DOMAIN_LOCK_FAILURE_DEFAULT: + return 0; + + case VIR_DOMAIN_LOCK_FAILURE_POWEROFF: + case VIR_DOMAIN_LOCK_FAILURE_RESTART: + case VIR_DOMAIN_LOCK_FAILURE_PAUSE: + break; + + case VIR_DOMAIN_LOCK_FAILURE_IGNORE: + case VIR_DOMAIN_LOCK_FAILURE_LAST: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Failure action %s is not supported by sanlock"), virDomainLockFailureTypeToString(action)); diff --git a/src/locking/sanlock_helper.c b/src/locking/sanlock_helper.c index 3e400b7605..c913cc3f64 100644 --- a/src/locking/sanlock_helper.c +++ b/src/locking/sanlock_helper.c @@ -117,11 +117,9 @@ main(int argc, char **argv) ret = EXIT_SUCCESS; break; + case VIR_DOMAIN_LOCK_FAILURE_DEFAULT: case VIR_DOMAIN_LOCK_FAILURE_IGNORE: - ret = EXIT_SUCCESS; - break; - - default: + case VIR_DOMAIN_LOCK_FAILURE_LAST: fprintf(stderr, _("unsupported failure action: '%s'\n"), virDomainLockFailureTypeToString(action)); break;