summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/sys/uio.h20
1 files changed, 18 insertions, 2 deletions
diff --git a/sys/sys/uio.h b/sys/sys/uio.h
index 5de0cd1..8e4fd6f 100644
--- a/sys/sys/uio.h
+++ b/sys/sys/uio.h
@@ -37,11 +37,28 @@
#ifndef _SYS_UIO_H_
#define _SYS_UIO_H_
+#include <sys/cdefs.h>
+#include <sys/_types.h>
+
+#ifndef _SIZE_T_DECLARED
+typedef __size_t size_t;
+#define _SIZE_T_DECLARED
+#endif
+
+#ifndef _SSIZE_T_DECLARED
+typedef __ssize_t ssize_t;
+#define _SSIZE_T_DECLARED
+#endif
+
+#ifndef _STRUCT_IOVEC_DECLARED
+#define _STRUCT_IOVEC_DECLARED
struct iovec {
void *iov_base; /* Base address. */
size_t iov_len; /* Length. */
};
+#endif
+#if __BSD_VISIBLE
enum uio_rw { UIO_READ, UIO_WRITE };
/* Segment flag values. */
@@ -50,6 +67,7 @@ enum uio_seg {
UIO_SYSSPACE, /* from system space */
UIO_NOCOPY /* don't copy, already in object */
};
+#endif
#ifdef _KERNEL
@@ -89,8 +107,6 @@ int copyinstrfrom(const void *src, void *dst, size_t len,
#else /* !_KERNEL */
-#include <sys/cdefs.h>
-
__BEGIN_DECLS
ssize_t readv(int, const struct iovec *, int);
ssize_t writev(int, const struct iovec *, int);
OpenPOWER on IntegriCloud