]> err.no Git - linux-2.6/blobdiff - Documentation/watchdog/src/watchdog-simple.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
[linux-2.6] / Documentation / watchdog / src / watchdog-simple.c
index 47801bc7e742dd44a650322e2e8b79bbf463adcf..4cf72f3fa8e91b1b725ba3e2af92dc68e4693394 100644 (file)
@@ -3,15 +3,25 @@
 #include <unistd.h>
 #include <fcntl.h>
 
-int main(int argc, const char *argv[]) {
+int main(void)
+{
        int fd = open("/dev/watchdog", O_WRONLY);
+       int ret = 0;
        if (fd == -1) {
                perror("watchdog");
-               exit(1);
+               exit(EXIT_FAILURE);
        }
        while (1) {
-               write(fd, "\0", 1);
-               fsync(fd);
+               ret = write(fd, "\0", 1);
+               if (ret != 1) {
+                       ret = -1;
+                       break;
+               }
+               ret = fsync(fd);
+               if (ret)
+                       break;
                sleep(10);
        }
+       close(fd);
+       return ret;
 }