X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=src%2Funistd%2Falarm.c;h=2e3263ac5986019f57576f6b0777f483b449eba7;hb=89d3df6e5420878e35a93a481105017a94a02852;hp=bba444d8721774f6b78b626c88356636ae6094e5;hpb=0b44a0315b47dd8eced9f3b7f31580cf14bbfc01;p=musl diff --git a/src/unistd/alarm.c b/src/unistd/alarm.c index bba444d8..2e3263ac 100644 --- a/src/unistd/alarm.c +++ b/src/unistd/alarm.c @@ -1,7 +1,10 @@ #include +#include #include "syscall.h" unsigned alarm(unsigned seconds) { - return syscall1(__NR_alarm, seconds); + struct itimerval it = { .it_value.tv_sec = seconds }; + __syscall(SYS_setitimer, ITIMER_REAL, &it, &it); + return it.it_value.tv_sec + !!it.it_value.tv_usec; }