diff options
author | Christopher Faylor <me@cgf.cx> | 2002-08-30 15:47:10 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2002-08-30 15:47:10 +0000 |
commit | ab7f9b938f8f0008fe71e8c790afb7f86a267e1c (patch) | |
tree | f8149696d46c25222099b0d51dab157e891e3037 /winsup/cygwin/include/sys/uio.h | |
parent | 70c306d781b881d7142d2d99f481b0aace248270 (diff) | |
download | cygnal-ab7f9b938f8f0008fe71e8c790afb7f86a267e1c.tar.gz cygnal-ab7f9b938f8f0008fe71e8c790afb7f86a267e1c.tar.bz2 cygnal-ab7f9b938f8f0008fe71e8c790afb7f86a267e1c.zip |
* miscfuncs.cc (check_iovec_for_read): Don't check buffer when zero length
iov_len.
(check_iovec_for_write): Ditto.
* fhandler.h (fhandler_base::readv): New method.
(fhandler_base::writev): Ditto.
* fhandler.cc (fhandler_base::readv): New method.
(fhandler_base::writev): Ditto.
* syscalls.cc (_read): Delegate to readv(2).
(_write): Ditto, mutatis mutandi.
(readv): Rewrite, based on the old _read code, to use the new
fhandler_base::readv method. Improve access mode handling and ensure all calls
reach the final strace statement.
(writev): Ditto, mutatis mutandi.
* include/sys/uio.h (struct iovec): Change field types to match SUSv3.
* winsup.h (check_iovec_for_read): New function.
(check_iovec_for_write): Ditto.
* miscfuncs.cc (check_iovec_for_read): Ditto.
(check_iovec_for_write): Ditto.
Diffstat (limited to 'winsup/cygwin/include/sys/uio.h')
-rw-r--r-- | winsup/cygwin/include/sys/uio.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/winsup/cygwin/include/sys/uio.h b/winsup/cygwin/include/sys/uio.h index d355ac5b6..e28f14e7e 100644 --- a/winsup/cygwin/include/sys/uio.h +++ b/winsup/cygwin/include/sys/uio.h @@ -1,6 +1,6 @@ /* sys/uio.h - Copyright 1996, 2000, 2001 Red Hat, Inc. + Copyright 1996, 2000, 2001, 2002 Red Hat, Inc. This file is part of Cygwin. @@ -24,9 +24,10 @@ __BEGIN_DECLS * Define the uio buffers used for writev, readv. */ -struct iovec { - caddr_t iov_base; - int iov_len; +struct iovec +{ + void *iov_base; + size_t iov_len; }; extern ssize_t readv __P ((int filedes, const struct iovec *vector, int count)); |