#ifndef _SYS_UIO_H | |
#define _SYS_UIO_H | |
#ifdef __cplusplus | |
extern "C" { | |
#endif | |
#include <features.h> | |
#define __NEED_size_t | |
#define __NEED_ssize_t | |
#define __NEED_struct_iovec | |
#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) | |
#define __NEED_off_t | |
#endif | |
#ifdef _GNU_SOURCE | |
#define __NEED_pid_t | |
#endif | |
#include <bits/alltypes.h> | |
#define UIO_MAXIOV 1024 | |
ssize_t readv(int, const struct iovec*, int); | |
ssize_t writev(int, const struct iovec*, int); | |
#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) | |
ssize_t preadv(int, const struct iovec*, int, off_t); | |
ssize_t pwritev(int, const struct iovec*, int, off_t); | |
#if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE) | |
#define preadv64 preadv | |
#define pwritev64 pwritev | |
#define off64_t off_t | |
#endif | |
#endif | |
#ifdef _GNU_SOURCE | |
ssize_t process_vm_writev(pid_t, | |
const struct iovec*, | |
unsigned long, | |
const struct iovec*, | |
unsigned long, | |
unsigned long); | |
ssize_t process_vm_readv(pid_t, | |
const struct iovec*, | |
unsigned long, | |
const struct iovec*, | |
unsigned long, | |
unsigned long); | |
#endif | |
#ifdef __cplusplus | |
} | |
#endif | |
#endif |