diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2012-07-01 10:35:05 -0300 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2012-07-01 10:35:05 -0300 |
commit | e9990192bb52a2c6085d4c4d355c6ad9d8bdac67 (patch) | |
tree | 35e4049bcce5d1f3179fe58da0348bc4e6cfb16b /open_issues/alarm_setitimer/alrm.c | |
parent | 4f2ceacfd87f5071e34ccfc37916778226294161 (diff) | |
parent | 59344d6c9615e22ecad1e9860b7e287bd92ea6fa (diff) | |
download | web-e9990192bb52a2c6085d4c4d355c6ad9d8bdac67.tar.gz web-e9990192bb52a2c6085d4c4d355c6ad9d8bdac67.tar.bz2 web-e9990192bb52a2c6085d4c4d355c6ad9d8bdac67.zip |
Merge branch 'master' of http://git.savannah.gnu.org/cgit/hurd/web
Diffstat (limited to 'open_issues/alarm_setitimer/alrm.c')
-rw-r--r-- | open_issues/alarm_setitimer/alrm.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/open_issues/alarm_setitimer/alrm.c b/open_issues/alarm_setitimer/alrm.c new file mode 100644 index 00000000..689020ee --- /dev/null +++ b/open_issues/alarm_setitimer/alrm.c @@ -0,0 +1,32 @@ +#include <signal.h> +#include <stdio.h> +#include <stdlib.h> +#include <unistd.h> + +static const char msg[] = "< got alarm\n"; + +static void sighandler(int signo __attribute__((unused))) +{ + write(STDOUT_FILENO, msg, sizeof(msg) - 1); +} + +int main() +{ + struct sigaction sa; + sa.sa_handler = sighandler; + sigemptyset(&sa.sa_mask); + sa.sa_flags = 0; + if (sigaction(SIGALRM, &sa, NULL) == -1) + return 1; + + printf("> alarm in 2 secs...\n"); + alarm(2); + pause(); + + printf("> alarm!\n"); + + pause(); + printf("> got a signal...\n"); + + return 0; +} |