15adca30aSAxel Dörfler /* 2173f54f1SMatt Madia * Copyright 2002-2012 Haiku, Inc. All Rights Reserved. 35adca30aSAxel Dörfler * Distributed under the terms of the MIT License. 45adca30aSAxel Dörfler */ 54b111a88SDavid Reid #ifndef _SYS_UIO_H 64b111a88SDavid Reid #define _SYS_UIO_H 7cc90b179SAxel Dörfler 84b111a88SDavid Reid 99fc71646Sbeveloper #include <sys/types.h> 104b111a88SDavid Reid 11cc90b179SAxel Dörfler 124b111a88SDavid Reid typedef struct iovec { 134b111a88SDavid Reid void *iov_base; 144b111a88SDavid Reid size_t iov_len; 154b111a88SDavid Reid } iovec; 164b111a88SDavid Reid 174b111a88SDavid Reid 18cc90b179SAxel Dörfler #ifdef __cplusplus 19cc90b179SAxel Dörfler extern "C" { 20cc90b179SAxel Dörfler #endif 214b111a88SDavid Reid 22*fc03b45aSNiels Sascha Reedijk ssize_t readv(int fd, const struct iovec *vector, int count); 23*fc03b45aSNiels Sascha Reedijk ssize_t readv_pos(int fd, off_t pos, const struct iovec *vec, int count); 24*fc03b45aSNiels Sascha Reedijk ssize_t writev(int fd, const struct iovec *vector, int count); 25*fc03b45aSNiels Sascha Reedijk ssize_t writev_pos(int fd, off_t pos, const struct iovec *vec, int count); 264b111a88SDavid Reid 27cc90b179SAxel Dörfler #ifdef __cplusplus 28cc90b179SAxel Dörfler } 29cc90b179SAxel Dörfler #endif 30cc90b179SAxel Dörfler 314b111a88SDavid Reid #endif /* _SYS_UIO_H */ 32