blob: 4c7c8008d8624db9b7566d21a01418b738af0a93 [file] [log] [blame]
Adam Barth57eacf52020-11-04 00:38:09 +00001#ifndef SYSROOT_POLL_H_
2#define SYSROOT_POLL_H_
Doug Horn1427b6a2018-12-11 13:19:16 -08003
4#ifdef __cplusplus
5extern "C" {
6#endif
7
8#include <features.h>
9
10#include <bits/poll.h>
11
12#define POLLIN 0x001
13#define POLLPRI 0x002
14#define POLLOUT 0x004
15#define POLLERR 0x008
16#define POLLHUP 0x010
17#define POLLNVAL 0x020
18#define POLLRDNORM 0x040
19#define POLLRDBAND 0x080
20#ifndef POLLWRNORM
21#define POLLWRNORM 0x100
22#define POLLWRBAND 0x200
23#endif
24#ifndef POLLMSG
25#define POLLMSG 0x400
26#define POLLRDHUP 0x2000
27#endif
28
29typedef unsigned long nfds_t;
30
31struct pollfd {
Adam Barth57eacf52020-11-04 00:38:09 +000032 int fd;
33 short events;
34 short revents;
Doug Horn1427b6a2018-12-11 13:19:16 -080035};
36
37int poll(struct pollfd*, nfds_t, int);
38
39#ifdef _GNU_SOURCE
40#define __NEED_time_t
41#define __NEED_struct_timespec
42#define __NEED_sigset_t
43#include <bits/alltypes.h>
44int ppoll(struct pollfd*, nfds_t, const struct timespec*, const sigset_t*);
45#endif
46
47#ifdef __cplusplus
48}
49#endif
Adam Barth57eacf52020-11-04 00:38:09 +000050
51#endif // SYSROOT_POLL_H_