]>
Commit | Line | Data |
---|---|---|
320054e8 DG |
1 | #ifndef _AIO_H |
2 | #define _AIO_H | |
3 | ||
4 | #ifdef __cplusplus | |
5 | extern "C" { | |
6 | #endif | |
7 | ||
8 | #include <features.h> | |
9 | #include <signal.h> | |
10 | #include <time.h> | |
11 | ||
12 | #define __NEED_ssize_t | |
13 | #define __NEED_off_t | |
14 | ||
15 | #include <bits/alltypes.h> | |
16 | ||
17 | struct aiocb { | |
18 | int aio_fildes, aio_lio_opcode, aio_reqprio; | |
19 | volatile void *aio_buf; | |
20 | size_t aio_nbytes; | |
21 | struct sigevent aio_sigevent; | |
22 | void *__td; | |
23 | int __lock[2]; | |
24 | volatile int __err; | |
25 | ssize_t __ret; | |
26 | off_t aio_offset; | |
27 | void *__next, *__prev; | |
28 | char __dummy4[32-2*sizeof(void *)]; | |
29 | }; | |
30 | ||
31 | #define AIO_CANCELED 0 | |
32 | #define AIO_NOTCANCELED 1 | |
33 | #define AIO_ALLDONE 2 | |
34 | ||
35 | #define LIO_READ 0 | |
36 | #define LIO_WRITE 1 | |
37 | #define LIO_NOP 2 | |
38 | ||
39 | #define LIO_WAIT 0 | |
40 | #define LIO_NOWAIT 1 | |
41 | ||
42 | int aio_read(struct aiocb *); | |
43 | int aio_write(struct aiocb *); | |
44 | int aio_error(const struct aiocb *); | |
45 | ssize_t aio_return(struct aiocb *); | |
46 | int aio_cancel(int, struct aiocb *); | |
47 | int aio_suspend(const struct aiocb *const [], int, const struct timespec *); | |
48 | int aio_fsync(int, struct aiocb *); | |
49 | ||
50 | int lio_listio(int, struct aiocb *__restrict const *__restrict, int, struct sigevent *__restrict); | |
51 | ||
52 | #if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE) | |
53 | #define aiocb64 aiocb | |
54 | #define aio_read64 aio_read | |
55 | #define aio_write64 aio_write | |
56 | #define aio_error64 aio_error | |
57 | #define aio_return64 aio_return | |
58 | #define aio_cancel64 aio_cancel | |
59 | #define aio_suspend64 aio_suspend | |
60 | #define aio_fsync64 aio_fsync | |
61 | #define lio_listio64 lio_listio | |
62 | #define off64_t off_t | |
63 | #endif | |
64 | ||
575e1579 DG |
65 | #if _REDIR_TIME64 |
66 | __REDIR(aio_suspend, __aio_suspend_time64); | |
67 | #endif | |
68 | ||
320054e8 DG |
69 | #ifdef __cplusplus |
70 | } | |
71 | #endif | |
72 | ||
73 | #endif |