summaryrefslogtreecommitdiffstats
path: root/sys-utils/wdctl.c
diff options
context:
space:
mode:
authorKarel Zak2012-09-07 18:08:55 +0200
committerKarel Zak2012-09-07 18:08:55 +0200
commit2eb5ba0bd46cf49e3dd1efafc4cf95e85606cd35 (patch)
treeb751dbe99fa5db71435e046355469dc9ab955eb7 /sys-utils/wdctl.c
parentbuild-sys: add --disable-wdctl (diff)
downloadkernel-qcow2-util-linux-2eb5ba0bd46cf49e3dd1efafc4cf95e85606cd35.tar.gz
kernel-qcow2-util-linux-2eb5ba0bd46cf49e3dd1efafc4cf95e85606cd35.tar.xz
kernel-qcow2-util-linux-2eb5ba0bd46cf49e3dd1efafc4cf95e85606cd35.zip
wdctl: add fallbacks for old kernel headers
Reported-by: Moritz Barsnick <barsnick@gmx.net> Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'sys-utils/wdctl.c')
-rw-r--r--sys-utils/wdctl.c25
1 files changed, 24 insertions, 1 deletions
diff --git a/sys-utils/wdctl.c b/sys-utils/wdctl.c
index 5fd1cd759..24ec770fb 100644
--- a/sys-utils/wdctl.c
+++ b/sys-utils/wdctl.c
@@ -34,6 +34,28 @@
#include "strutils.h"
#include "tt.h"
+/*
+ * since 2.6.18
+ */
+#ifndef WDIOC_SETPRETIMEOUT
+# define WDIOC_SETPRETIMEOUT _IOWR(WATCHDOG_IOCTL_BASE, 8, int)
+# define WDIOC_GETPRETIMEOUT _IOR(WATCHDOG_IOCTL_BASE, 9, int)
+# define WDIOC_GETTIMELEFT _IOR(WATCHDOG_IOCTL_BASE, 10, int)
+# define WDIOF_POWEROVER 0x0040 /* Power over voltage */
+# define WDIOF_SETTIMEOUT 0x0080 /* Set timeout (in seconds) */
+# define WDIOF_MAGICCLOSE 0x0100 /* Supports magic close char */
+# define WDIOF_PRETIMEOUT 0x0200 /* Pretimeout (in seconds), get/set */
+# define WDIOF_KEEPALIVEPING 0x8000 /* Keep alive ping reply */
+#endif
+
+/*
+ * since 3.5
+ */
+#ifndef WDIOF_ALARMONLY
+# define WDIOF_ALARMONLY 0x0400 /* Watchdog triggers a management or
+ other external alarm not a reboot */
+#endif
+
struct wdflag {
uint32_t flag;
const char *name;
@@ -51,7 +73,8 @@ static const struct wdflag wdflags[] = {
{ WDIOF_POWEROVER, "POWEROVER", N_("Power over voltage") },
{ WDIOF_POWERUNDER, "POWERUNDER", N_("Power bad/power fault") },
{ WDIOF_PRETIMEOUT, "PRETIMEOUT", N_("Pretimeout (in seconds)") },
- { WDIOF_SETTIMEOUT, "SETTIMEOUT", N_("Set timeout (in seconds)") }
+ { WDIOF_SETTIMEOUT, "SETTIMEOUT", N_("Set timeout (in seconds)") },
+ { WDIOF_ALARMONLY, "ALARMONLY", N_("Not trigger reboot") }
};