Only Windows doesn't have <sys/uio.h>.

This should probably be in libcutils instead, so code that needs to
care about Windows can use readv/writev.

Change-Id: I7c2ceec3f742cee0e44f69fd4c88459376bd0e08
This commit is contained in:
Elliott Hughes 2014-11-25 13:27:43 -08:00
parent 9c7e5c7c33
commit 111e3d3d9c
2 changed files with 10 additions and 7 deletions

View File

@ -14,20 +14,23 @@
* limitations under the License.
*/
//
// implementation of sys/uio.h for platforms that don't have it (Win32)
//
#ifndef _LIBS_CUTILS_UIO_H
#define _LIBS_CUTILS_UIO_H
#ifdef HAVE_SYS_UIO_H
#if !defined(_WIN32)
#include <sys/uio.h>
#else
#ifdef __cplusplus
extern "C" {
#endif
//
// Implementation of sys/uio.h for Win32.
//
#include <stddef.h>
struct iovec {
@ -42,7 +45,7 @@ extern int writev( int fd, const struct iovec* vecs, int count );
}
#endif
#endif /* !HAVE_SYS_UIO_H */
#endif
#endif /* _LIBS_UTILS_UIO_H */

View File

@ -14,7 +14,7 @@
* limitations under the License.
*/
#ifndef HAVE_SYS_UIO_H
#if defined(_WIN32)
#include <log/uio.h>
#include <unistd.h>
@ -73,4 +73,4 @@ Exit:
return total;
}
#endif /* !HAVE_SYS_UIO_H */
#endif