Changeset b1cbb2d in rtems


Ignore:
Timestamp:
Sep 24, 2007, 9:35:19 PM (12 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.9, master
Children:
41783ff
Parents:
b5bf8cd1
Message:

2007-09-24 Joel Sherrill <joel.sherrill@…>

PR 1262/filesystem

  • posix_users/io.t: Add support for readv() and writev() including documentation and test case.
Location:
doc
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • doc/ChangeLog

    rb5bf8cd1 rb1cbb2d  
     12007-09-24      Joel Sherrill <joel.sherrill@oarcorp.com>
     2
     3        PR 1262/filesystem
     4        * posix_users/io.t: Add support for readv() and writev() including
     5        documentation and test case.
     6
    172007-09-04      Joel Sherrill <joel.sherrill@OARcorp.com>
    28
  • doc/posix_users/io.t

    rb5bf8cd1 rb1cbb2d  
    2929@item @code{mount} - Mount a file system
    3030@item @code{unmount} - Unmount file systems
     31@item @code{readv} - Vectored read from a file
     32@item @code{writev} - Vectored write to a file
    3133@item @code{aio_read} - Asynchronous Read
    3234@item @code{aio_write} - Asynchronous Write
     
    179181@subheading DESCRIPTION:
    180182
    181 @code{Dup2} creates a copy of the file descriptor @code{oldfd}.
     183@code{dup2} creates a copy of the file descriptor @code{oldfd}.
    182184
    183185The old and new descriptors may be used interchangeably. They share locks, file
     
    193195@c
    194196@page
    195 @subsection close - Closes a file.
     197@subsection close - Closes a file
    196198
    197199@findex close
     
    239241@c
    240242@page
    241 @subsection read - Reads from a file.
     243@subsection read - Reads from a file
    242244
    243245@findex read
    244 @cindex  reads from a file.
     246@cindex  reads from a file
    245247
    246248@subheading CALLING SEQUENCE:
     
    280282Input or output error
    281283
     284@item EINVAL
     285Bad buffer pointer
     286
    282287@end table
    283288
     
    388393Attempt to write to a pope or FIFO with no reader.
    389394
     395@item EINVAL
     396Bad buffer pointer
     397
    390398@end table
    391399
     
    576584@table @b
    577585@item EBADF
    578 @code{Fildes} is not an open file descriptor.
     586@code{fildes} is not an open file descriptor.
    579587
    580588@item ESPIPE
    581 @code{Fildes} is associated with a pipe, socket or FIFO.
     589@code{fildes} is associated with a pipe, socket or FIFO.
    582590
    583591@item EINVAL
    584 @code{Whence} is not a proper value.
     592@code{whence} is not a proper value.
    585593
    586594@end table
     
    674682@c
    675683@page
    676 @subsection fdatasync - Synchronize file in-core data with that on disk.
     684@subsection fdatasync - Synchronize file in-core data with that on disk
    677685
    678686@findex fdatasync
     
    860868@c
    861869@page
     870@subsection readv - Vectored read from a file
     871
     872@findex readv
     873@cindex  vectored read from a file
     874
     875@subheading CALLING SEQUENCE:
     876
     877@ifset is-C
     878@example
     879#include <sys/uio.h>
     880
     881ssize_t readv(
     882  int                 fd,
     883  const struct iovec *iov,
     884  int                 iovcnt
     885);
     886@end example
     887@end ifset
     888
     889@ifset is-Ada
     890@end ifset
     891
     892@subheading STATUS CODES:
     893
     894In addition to the errors detected by
     895@code{Input and Output Primitives Manager read - Reads from a file, read()},
     896this routine may return -1 and sets @code{errno} based upon the following
     897errors:
     898
     899@table @b
     900@item EINVAL
     901The sum of the @code{iov_len} values in the iov array overflowed an
     902@code{ssize_t}.
     903
     904@item EINVAL
     905The @code{iovcnt} argument was less than or equal to 0, or greater
     906than @code{IOV_MAX}.
     907
     908@end table
     909
     910@subheading DESCRIPTION:
     911
     912The @code{readv()} function is equivalent to @code{read()}
     913except as described here. The @code{readv()} function shall place
     914the input data into the @code{iovcnt} buffers specified by the
     915members of the @code{iov} array: @code{iov[0], iov[1], ..., iov[iovcnt-1]}.
     916
     917Each @code{iovec} entry specifies the base address and length of an area
     918in memory where data should be placed. The @code{readv()} function
     919always fills an area completely before proceeding to the next.
     920
     921@subheading NOTES:
     922
     923NONE
     924
     925@c
     926@c
     927@c
     928@page
     929@subsection writev - Vectored write to a file
     930
     931@findex writev
     932@cindex  vectored write to a file
     933
     934@subheading CALLING SEQUENCE:
     935
     936@ifset is-C
     937@example
     938#include <sys/uio.h>
     939
     940ssize_t writev(
     941  int                 fd,
     942  const struct iovec *iov,
     943  int                 iovcnt
     944);
     945@end example
     946@end ifset
     947
     948@ifset is-Ada
     949@end ifset
     950
     951@subheading STATUS CODES:
     952
     953In addition to the errors detected by
     954@code{Input and Output Primitives Manager write - Write to a file, write()},
     955this routine may return -1 and sets @code{errno} based upon the following
     956errors:
     957
     958@table @b
     959@item EINVAL
     960The sum of the @code{iov_len} values in the iov array overflowed an
     961@code{ssize_t}.
     962
     963@item EINVAL
     964The @code{iovcnt} argument was less than or equal to 0, or greater
     965than @code{IOV_MAX}.
     966
     967@end table
     968
     969@subheading DESCRIPTION:
     970
     971The @code{writev()} function is equivalent to @code{write()},
     972except as noted here. The @code{writev()} function gathers output
     973data from the @code{iovcnt} buffers specified by the members of
     974the @code{iov array}: @code{iov[0], iov[1], ..., iov[iovcnt-1]}.
     975The @code{iovcnt} argument is valid if greater than 0 and less
     976than or equal to @code{IOV_MAX}.
     977
     978Each @code{iovec} entry specifies the base address and length of
     979an area in memory from which data should be written. The @code{writev()}
     980function always writes a complete area before proceeding to the next.
     981
     982If @code{fd} refers to a regular file and all of the @code{iov_len}
     983members in the array pointed to by @code{iov} are 0, @code{writev()}
     984returns 0 and has no other effect. For other file types, the behavior
     985is unspecified by POSIX.
     986
     987@subheading NOTES:
     988
     989NONE
     990
     991@c
     992@c
     993@c
     994@page
    862995@subsection aio_read - Asynchronous Read
    863996
Note: See TracChangeset for help on using the changeset viewer.