Unix/Linux Go Back    


RedHat 9 (Linux i386) - man page for writev (redhat section 2)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)


READV(2)			    Linux Programmer's Manual				 READV(2)

NAME
       readv, writev - read or write a vector

SYNOPSIS
       #include <sys/uio.h>

       ssize_t readv(int fd, const struct iovec *vector, int count);
       ssize_t writev(int fd, const struct iovec *vector, int count);

       struct iovec {
	   void *iov_base;    /* Starting address */
	   size_t iov_len;    /* Length in bytes  */
       };

DESCRIPTION
       readv  reads data from file descriptor fd, and puts the result in the buffers described by
       vector. The number of buffers is specified by count. The buffers are filled in  the  order
       specified.   Operates  just  like read except that data is put in vector instead of a con-
       tiguous buffer.

       writev writes data to file descriptor fd, and from the buffers described  by  vector.  The
       number  of  buffers  is	specified  by count. The buffers are used in the order specified.
       Operates just like write except that data is taken from vector  instead	of  a  contiguous
       buffer.

RETURN VALUE
       On  success  readv returns the number of bytes read.  On success writev returns the number
       of bytes written.  On error, -1 is returned, and errno is set appropriately.

ERRORS
       EINVAL An invalid argument was given. For instance count might be greater than  MAX_IOVEC,
	      or zero.	fd could also be attached to an object	which  is  unsuitable for reading
	      (for readv) or writing (for writev).

       EFAULT "Segmentation fault." Most likely vector or some of the iov_base pointers points to
	      memory that is not properly allocated.

       EBADF  The file descriptor fd is not valid.

       EINTR  The call was interrupted by a signal before any data was read/written.

       EAGAIN Non-blocking  I/O  has  been  selected using O_NONBLOCK and no data was immediately
	      available for reading.  (Or the file  descriptor	fd  is	for  an  object  that  is
	      locked.)

       EISDIR fd refers to a directory.

       EOPNOTSUPP
	      fd refers to a socket or device that does not support reading/writing.

       ENOMEM Insufficient kernel memory was available.

       Other errors may occur, depending on the object connected to fd.

CONFORMING TO
       4.4BSD  (the  readv  and writev functions first appeared in BSD 4.2), Unix98.  Linux libc5
       used size_t as the type of the count parameter.

SEE ALSO
       read(2), write(2), fprintf(3), fscanf(3)

Linux 2.2.0-pre8			    1999-01-20					 READV(2)
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums


All times are GMT -4. The time now is 07:50 AM.