12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- #ifndef _SYS_EPOLL_H
- #define _SYS_EPOLL_H
- #ifdef __cplusplus
- extern "C" {
- #endif
- #include <stdint.h>
- #include <sys/types.h>
- #define __NEED_sigset_t
- #include <bits/alltypes.h>
- #define EPOLL_CLOEXEC 02000000
- #define EPOLL_NONBLOCK 04000
- enum EPOLL_EVENTS { __EPOLL_DUMMY };
- #define EPOLLIN 0x001
- #define EPOLLPRI 0x002
- #define EPOLLOUT 0x004
- #define EPOLLRDNORM 0x040
- #define EPOLLRDBAND 0x080
- #define EPOLLWRNORM 0x100
- #define EPOLLWRBAND 0x200
- #define EPOLLMSG 0x400
- #define EPOLLERR 0x008
- #define EPOLLHUP 0x010
- #define EPOLLRDHUP 0x2000
- #define EPOLLONESHOT (1U<<30)
- #define EPOLLET (1U<<31)
- #define EPOLL_CTL_ADD 1
- #define EPOLL_CTL_DEL 2
- #define EPOLL_CTL_MOD 3
- typedef union epoll_data {
- void *ptr;
- int fd;
- uint32_t u32;
- uint64_t u64;
- } epoll_data_t;
- struct epoll_event {
- uint32_t events;
- epoll_data_t data;
- } __attribute__ ((__packed__));
- int epoll_create(int);
- int epoll_create1(int);
- int epoll_ctl(int, int, int, struct epoll_event *);
- int epoll_wait(int, struct epoll_event *, int, int);
- int epoll_pwait(int, struct epoll_event *, int, int, const sigset_t *);
- #ifdef __cplusplus
- }
- #endif
- #endif /* sys/epoll.h */
|