X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=sidebyside;f=include%2Fsys%2Fuio.h;h=00f73a2f0525b62d8298c36d6904c54bf6ffb9ff;hb=9448b0513e2eec020fbca9c10412b83df5027a16;hp=7b068c0c30ea12601c1ec26679fffd4ea891eb1e;hpb=0b44a0315b47dd8eced9f3b7f31580cf14bbfc01;p=musl diff --git a/include/sys/uio.h b/include/sys/uio.h index 7b068c0c..00f73a2f 100644 --- a/include/sys/uio.h +++ b/include/sys/uio.h @@ -1,14 +1,48 @@ #ifndef _SYS_UIO_H #define _SYS_UIO_H +#ifdef __cplusplus +extern "C" { +#endif + +#include + #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 -#include +#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