summaryrefslogtreecommitdiffstats
path: root/include/timer.h
blob: dd044a37624c16ec912745e4f18b89a2b2a643a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/*
 * No copyright is claimed.  This code is in the public domain; do with
 * it what you wish.
 */
#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 */