summaryrefslogtreecommitdiffstats
path: root/include/timer.h
blob: 70da1ba9e3b97e5b3c3362d7230c045a1a00ec6c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef UTIL_LINUX_TIMER_H
#define UTIL_LINUX_TIMER_H

#include <signal.h>
#include <sys/time.h>

#ifdef HAVE_TIMER_CREATE
struct ul_timer {
	timer_t t_id;
};
#else
struct ul_timer {
	struct itimerval old_timer;
	struct sigaction old_sa;
};
#endif

extern int setup_timer(struct ul_timer *timer, struct itimerval *timeout,
		       void (*timeout_handler)(int, siginfo_t *, void *));
extern void cancel_timer(struct ul_timer *timer);

#endif /* UTIL_LINUX_TIMER_H */