summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/alpha/__alarm.c
diff options
context:
space:
mode:
Diffstat (limited to 'mdk-stage1/dietlibc/alpha/__alarm.c')
-rw-r--r--mdk-stage1/dietlibc/alpha/__alarm.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/mdk-stage1/dietlibc/alpha/__alarm.c b/mdk-stage1/dietlibc/alpha/__alarm.c
new file mode 100644
index 000000000..7ca35cb78
--- /dev/null
+++ b/mdk-stage1/dietlibc/alpha/__alarm.c
@@ -0,0 +1,13 @@
+#include <unistd.h>
+#include <sys/time.h>
+
+unsigned int alarm(unsigned int seconds) {
+ struct itimerval old, new;
+ unsigned int ret;
+ new.it_interval.tv_usec=0;
+ new.it_interval.tv_sec=0;
+ new.it_value.tv_usec =0;
+ new.it_value.tv_sec =(long)seconds;
+ if (setitimer(ITIMER_REAL,&new,&old)==-1) return 0;
+ return old.it_value.tv_sec+(old.it_value.tv_usec?1:0);
+}