xref: /haiku/headers/posix/sys/uio.h (revision cc90b1798ab70a49bfee713d35104965be22c701)
14b111a88SDavid Reid #ifndef _SYS_UIO_H
24b111a88SDavid Reid #define _SYS_UIO_H
3*cc90b179SAxel Dörfler /*
4*cc90b179SAxel Dörfler ** Distributed under the terms of the Haiku License.
5*cc90b179SAxel Dörfler */
6*cc90b179SAxel Dörfler 
74b111a88SDavid Reid 
89fc71646Sbeveloper #include <sys/types.h>
94b111a88SDavid Reid 
10*cc90b179SAxel Dörfler 
114b111a88SDavid Reid typedef struct iovec {
124b111a88SDavid Reid 	void  *iov_base;
134b111a88SDavid Reid 	size_t iov_len;
144b111a88SDavid Reid } iovec;
154b111a88SDavid Reid 
164b111a88SDavid Reid 
17*cc90b179SAxel Dörfler #ifdef __cplusplus
18*cc90b179SAxel Dörfler extern "C" {
19*cc90b179SAxel Dörfler #endif
204b111a88SDavid Reid 
214b111a88SDavid Reid ssize_t readv(int fd, const struct iovec *vector, size_t count);
224b111a88SDavid Reid ssize_t readv_pos(int fd, off_t pos, const struct iovec *vec, size_t count);
234b111a88SDavid Reid ssize_t writev(int fd, const struct iovec *vector, size_t count);
244b111a88SDavid Reid ssize_t writev_pos(int fd, off_t pos, const struct iovec *vec, size_t count);
254b111a88SDavid Reid 
26*cc90b179SAxel Dörfler #ifdef __cplusplus
27*cc90b179SAxel Dörfler }
28*cc90b179SAxel Dörfler #endif
29*cc90b179SAxel Dörfler 
304b111a88SDavid Reid #endif /* _SYS_UIO_H */
31