From: NeilBrown Date: Fri, 13 Dec 2013 09:24:15 +0000 (+1100) Subject: New command : realarm X-Git-Url: http://git.neil.brown.name/?a=commitdiff_plain;h=75a403ff48ac974f06d46b341cf4f69173719e1a;p=plato.git New command : realarm This can be used to communicate with susman to wake from suspend every so often. --- diff --git a/alarm/realarm.c b/alarm/realarm.c new file mode 100644 index 0000000..106a52b --- /dev/null +++ b/alarm/realarm.c @@ -0,0 +1,42 @@ + +#define _XOPEN_SOURCE +#define _BSD_SOURCE +#define _GNU_SOURCE +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "libsus.h" + + +int seconds = 60; +struct event *wkev; + +static void realarm(int fd, short ev, void *vp) +{ + if (wkev && !vp) + wakealarm_destroy(wkev); + wkev = wakealarm_set(time(0) + seconds, realarm, (void*)1); +} + + +main(int argc, char *argv[]) +{ + + if (argc >= 2) { + seconds = atoi(argv[1]); + if (seconds <= 0) + exit(1); + } + event_init(); + realarm(0, 0, NULL); + event_loop(0); + exit(0); +}