]> git.ipfire.org Git - thirdparty/man-pages.git/blob - man3type/iovec.3type
Many pages: Use correct letter case in page titles (TH)
[thirdparty/man-pages.git] / man3type / iovec.3type
1 .\" Copyright (c) 2022 by Alejandro Colomar <alx@kernel.org>
2 .\"
3 .\" SPDX-License-Identifier: Linux-man-pages-copyleft
4 .\"
5 .\"
6 .TH iovec 3type (date) "Linux man-pages (unreleased)"
7 .SH NAME
8 iovec \- Vector I/O data structure
9 .SH LIBRARY
10 Standard C library
11 .RI ( libc )
12 .SH SYNOPSIS
13 .EX
14 .B #include <sys/uio.h>
15 .PP
16 .B struct iovec {
17 .BR " void *iov_base;" " /* Starting address */"
18 .BR " size_t iov_len;" " /* Size of the memory pointed to by "\c
19 .IR iov_base ". */"
20 .B };
21 .EE
22 .SH DESCRIPTION
23 Describes a region of memory, beginning at
24 .I iov_base
25 address and with the size of
26 .I iov_len
27 bytes.
28 System calls use arrays of this structure,
29 where each element of the array represents a memory region,
30 and the whole array represents a vector of memory regions.
31 The maximum number of
32 .I iovec
33 structures in that array
34 is limited by
35 .B IOV_MAX
36 (defined in
37 .IR <limits.h> ,
38 or accessible via the call
39 .IR sysconf(_SC_IOV_MAX) ).
40 .SH STANDARDS
41 POSIX.1-2001 and later.
42 .SH NOTES
43 The following header also provides this type:
44 .IR <sys/socket.h> .
45 .SH SEE ALSO
46 .BR process_madvise (2),
47 .BR readv (2)