diff options
| author | Alejandro Colomar <alx@kernel.org> | 2025-10-29 12:27:06 +0100 |
|---|---|---|
| committer | Alejandro Colomar <alx@kernel.org> | 2025-10-29 12:27:06 +0100 |
| commit | 0b2d9bd664822e5dd8affa0583c533a9fac45027 (patch) | |
| tree | 6fd4fe1f8ad589066404d041d3874038e2230662 /man/man2 | |
| parent | 1411f78d518e043fbbc761409313db3be4bc038b (diff) | |
| parent | 429fd8f39add390a2be28d8d4dee68e4d9897a32 (diff) | |
| download | man-pages-posix24.tar.gz | |
man/: Update some APIs for POSIX.1-2024posix24
This work is incomplete, but waiting until all pages have been updated
would unnecessarily delay publishing these changes, which are already
useful.
Signed-off-by: Alejandro Colomar <alx@kernel.org>
Diffstat (limited to 'man/man2')
105 files changed, 244 insertions, 265 deletions
diff --git a/man/man2/_exit.2 b/man/man2/_exit.2 index 9d6c2505c4..e1f264c95d 100644 --- a/man/man2/_exit.2 +++ b/man/man2/_exit.2 @@ -58,15 +58,17 @@ These functions do not return. .SH STANDARDS .TP .BR _exit () -POSIX.1-2008. +POSIX.1-2024. .TP .BR _Exit () -C11, POSIX.1-2008. +C11, POSIX.1-2024. .SH HISTORY +.TP +.BR _exit () POSIX.1-2001, SVr4, 4.3BSD. -.P +.TP .BR _Exit () -was introduced by C99. +C99, POSIX.1-2001. .SH NOTES For a discussion on the effects of an exit, the transmission of exit status, zombie processes, signals sent, and so on, see diff --git a/man/man2/accept.2 b/man/man2/accept.2 index 9509c9be43..7c3c313371 100644 --- a/man/man2/accept.2 +++ b/man/man2/accept.2 @@ -269,12 +269,7 @@ of file status flags and always explicitly set all required flags on the socket returned from .BR accept (). .SH STANDARDS -.TP -.BR accept () -POSIX.1-2008. -.TP -.BR accept4 () -Linux. +POSIX.1-2024. .SH HISTORY .TP .BR accept () @@ -289,6 +284,7 @@ first appeared in 4.2BSD). .\" In addition, SUSv2 documents EFAULT and ENOSR. .TP .BR accept4 () +POSIX.1-2024. Linux 2.6.28, glibc 2.10. .SH NOTES diff --git a/man/man2/access.2 b/man/man2/access.2 index 5ffac7b2db..2148a896d5 100644 --- a/man/man2/access.2 +++ b/man/man2/access.2 @@ -325,7 +325,7 @@ argument. .BR access () .TQ .BR faccessat () -POSIX.1-2008. +POSIX.1-2024. .TP .BR faccessat2 () Linux. diff --git a/man/man2/alarm.2 b/man/man2/alarm.2 index 41b9d12980..9edde18cdb 100644 --- a/man/man2/alarm.2 +++ b/man/man2/alarm.2 @@ -35,7 +35,7 @@ returns the number of seconds remaining until any previously scheduled alarm was due to be delivered, or zero if there was no previously scheduled alarm. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.3BSD. .SH NOTES diff --git a/man/man2/bind.2 b/man/man2/bind.2 index 5311e98dc7..8d93014d33 100644 --- a/man/man2/bind.2 +++ b/man/man2/bind.2 @@ -177,12 +177,17 @@ A component of the path prefix is not a directory. The socket inode would reside on a read-only filesystem. .P Other errors may be generated by the underlying protocol modules. +.SH VERSIONS +Portable programs must ensure that +.I addr.sun_path +is a null-terminated string +for +.B AF_UNIX +sockets. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY -POSIX.1-2001, SVr4, 4.4BSD -.RB ( bind () -first appeared in 4.2BSD). +POSIX.1-2001, SVr4, 4.2BSD. .\" SVr4 documents an additional .\" .B ENOSR .\" general error condition, and diff --git a/man/man2/chdir.2 b/man/man2/chdir.2 index f0e6744272..83702d2af3 100644 --- a/man/man2/chdir.2 +++ b/man/man2/chdir.2 @@ -101,7 +101,7 @@ is not a valid file descriptor. .I fd does not refer to a directory. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.4BSD. .SH NOTES diff --git a/man/man2/chmod.2 b/man/man2/chmod.2 index b5e6c9c0d6..20cf8649d4 100644 --- a/man/man2/chmod.2 +++ b/man/man2/chmod.2 @@ -340,7 +340,7 @@ that corresponds to the .I dirfd argument. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY .TP .BR chmod () diff --git a/man/man2/chown.2 b/man/man2/chown.2 index ac7a6d3e0e..4f741d2519 100644 --- a/man/man2/chown.2 +++ b/man/man2/chown.2 @@ -275,7 +275,7 @@ used only by the superuser (that is, ordinary users cannot give away files). .\" SVr4 documents additional EINVAL, EIO, EINTR, and ENOLINK .\" error conditions. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY .TP .BR chown () diff --git a/man/man2/clock_getres.2 b/man/man2/clock_getres.2 index d10a28607c..5f8ed14f15 100644 --- a/man/man2/clock_getres.2 +++ b/man/man2/clock_getres.2 @@ -367,7 +367,7 @@ On some architectures, an implementation of is provided in the .BR vdso (7). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SUSv2. Linux 2.6. @@ -391,6 +391,10 @@ are available. (See also .BR sysconf (3).) .\" +.P +POSIX.1-2024 made +.B CLOCK_MONOTONIC +mandatory. .SS Historical note for SMP systems Before Linux added kernel support for .B CLOCK_PROCESS_CPUTIME_ID diff --git a/man/man2/clock_nanosleep.2 b/man/man2/clock_nanosleep.2 index 3aa21db397..95a745635f 100644 --- a/man/man2/clock_nanosleep.2 +++ b/man/man2/clock_nanosleep.2 @@ -173,7 +173,7 @@ is not a permitted value for The kernel does not support sleeping against this .IR clockid . .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001. Linux 2.6, diff --git a/man/man2/close.2 b/man/man2/close.2 index a19255a20d..56a3caaafd 100644 --- a/man/man2/close.2 +++ b/man/man2/close.2 @@ -75,7 +75,7 @@ subsequent or .BR close (). .P -See NOTES for a discussion of why +See CAVEATS for a discussion of why .BR close () should not be retried after an error. .SH STANDARDS @@ -84,6 +84,13 @@ POSIX.1-2008. POSIX.1-2001, SVr4, 4.3BSD. .\" SVr4 documents an additional ENOLINK error condition. .SH NOTES +The close-on-exec file descriptor flag can be used to ensure +that a file descriptor is automatically closed upon a successful +.BR execve (2); +see +.BR fcntl (2) +for details. +.SH CAVEATS A successful close does not guarantee that the data has been successfully saved to disk, as the kernel uses the buffer cache to defer writes. Typically, filesystems do not flush buffers when a file is closed. @@ -91,13 +98,6 @@ If you need to be sure that the data is physically stored on the underlying disk, use .BR fsync (2). (It will depend on the disk hardware at this point.) -.P -The close-on-exec file descriptor flag can be used to ensure -that a file descriptor is automatically closed upon a successful -.BR execve (2); -see -.BR fcntl (2) -for details. .\" .SS Multithreaded processes and close() It is probably unwise to close file descriptors while @@ -192,10 +192,7 @@ Many other implementations similarly always close the file descriptor meaning that the file descriptor was invalid) even if they subsequently report an error on return from .BR close (). -POSIX.1 is currently silent on this point, -but there are plans to mandate this behavior in the next major release -.\" Issue 8 -of the standard. +POSIX.1-2008 was silent on this point. .P A careful programmer who wants to know about I/O errors may precede .BR close () @@ -207,7 +204,7 @@ The error is a somewhat special case. Regarding the .B EINTR -error, POSIX.1-2008 says: +error, POSIX.1-2008 said: .P .RS If @@ -244,16 +241,10 @@ must not be called again after an error, and on at least one, .BR close () must be called again. -There are plans to address this conundrum for -the next major release of the POSIX.1 standard. -.\" FIXME . for later review when Issue 8 is one day released... -.\" POSIX proposes further changes for EINTR -.\" http://austingroupbugs.net/tag_view_page.php?tag_id=8 -.\" http://austingroupbugs.net/view.php?id=529 -.\" -.\" FIXME . -.\" Review the following glibc bug later -.\" https://sourceware.org/bugzilla/show_bug.cgi?id=14627 +.P +POSIX.1-2024 standardized the behavior of HP-UX, +making Linux and many other implementations non-conforming. +There are no plans to change the behavior on Linux. .SH SEE ALSO .BR close_range (2), .BR fcntl (2), diff --git a/man/man2/connect.2 b/man/man2/connect.2 index 00471be27d..243456aa74 100644 --- a/man/man2/connect.2 +++ b/man/man2/connect.2 @@ -208,12 +208,17 @@ The server may be too busy to accept new connections. Note that for IP sockets the timeout may be very long when syncookies are enabled on the server. +.SH VERSIONS +Portable programs must ensure that +.I addr.sun_path +is a null-terminated string +for +.B AF_UNIX +sockets. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY -POSIX.1-2001, SVr4, 4.4BSD, -.RB ( connect () -first appeared in 4.2BSD). +POSIX.1-2001, SVr4, 4.2BSD. .\" SVr4 documents the additional .\" general error codes .\" .BR EADDRNOTAVAIL , diff --git a/man/man2/dup.2 b/man/man2/dup.2 index c0126f6abc..941483319f 100644 --- a/man/man2/dup.2 +++ b/man/man2/dup.2 @@ -190,14 +190,7 @@ in .B ENOMEM Insufficient kernel memory was available. .SH STANDARDS -.TP -.BR dup () -.TQ -.BR dup2 () -POSIX.1-2008. -.TP -.BR dup3 () -Linux. +POSIX.1-2024. .SH HISTORY .TP .BR dup () @@ -209,6 +202,7 @@ POSIX.1-2001, SVr4, 4.3BSD. .\" The EBUSY return is Linux-specific. .TP .BR dup3 () +POSIX.1-2024. Linux 2.6.27, glibc 2.9. .SH NOTES diff --git a/man/man2/execve.2 b/man/man2/execve.2 index 0c0780c747..82b6cb2381 100644 --- a/man/man2/execve.2 +++ b/man/man2/execve.2 @@ -614,7 +614,7 @@ are used to delimit the arguments. Linux (like most other modern UNIX systems) ignores the set-user-ID and set-group-ID bits on scripts. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.3BSD. .\" SVr4 documents additional error diff --git a/man/man2/fcntl.2 b/man/man2/fcntl.2 index 9a76bdb7b5..7f34e332ef 100644 --- a/man/man2/fcntl.2 +++ b/man/man2/fcntl.2 @@ -130,7 +130,7 @@ and .BR F_DUPFD_CLOFORK , but Linux doesn't support them. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .\" .P .\" SVr4 documents additional EIO, ENOLINK and EOVERFLOW error conditions. .SH HISTORY diff --git a/man/man2/fcntl_locking.2 b/man/man2/fcntl_locking.2 index a78b0719cf..dc98735571 100644 --- a/man/man2/fcntl_locking.2 +++ b/man/man2/fcntl_locking.2 @@ -561,27 +561,24 @@ was not specified as zero. Too many segment locks open, lock table is full, or a remote locking protocol failed (e.g., locking over NFS). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .\" .P .\" SVr4 documents additional EIO, ENOLINK and EOVERFLOW error conditions. -.P -.BR F_OFD_SETLK , -.BR F_OFD_SETLKW , -and -.B F_OFD_GETLK -are Linux-specific (and one must define -.B _GNU_SOURCE -to obtain their definitions), -but work is being done to have them included in the next version of POSIX.1. .SH HISTORY -SVr4, 4.3BSD, POSIX.1-2001. -.P -Only the operations -.BR F_GETLK , -.BR F_SETLK , -and +.TP +.B F_GETLK +.TQ +.B F_SETLK +.TQ .B F_SETLKW -are specified in POSIX.1-2001. +SVr4, 4.3BSD, POSIX.1-2001. +.TP +.B F_OFD_SETLK +.TQ +.B F_OFD_SETLKW +.TQ +.B F_OFD_GETLK +POSIX.1-2024. .SH NOTES .SS File locking The original Linux diff --git a/man/man2/fork.2 b/man/man2/fork.2 index 3c6190cece..995b7dd226 100644 --- a/man/man2/fork.2 +++ b/man/man2/fork.2 @@ -271,8 +271,12 @@ The glibc wrapper invokes any fork handlers that have been established using .BR pthread_atfork (3). .\" and does some magic to ensure that getpid(2) returns the right value. +.SS Async-signal safety +.BR _Fork (3) +is an async-signal safe variant of +.BR fork (2). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.3BSD. .SH NOTES @@ -333,6 +337,7 @@ main(void) .BR vfork (2), .BR wait (2), .BR daemon (3), +.BR _Fork (3), .BR pthread_atfork (3), .BR capabilities (7), .BR credentials (7) diff --git a/man/man2/fsync.2 b/man/man2/fsync.2 index 7ca3dd006e..d59e346ef1 100644 --- a/man/man2/fsync.2 +++ b/man/man2/fsync.2 @@ -149,7 +149,7 @@ to a value greater than 0. .\" -1: unavailable, 0: ask using sysconf(). .\" glibc defines them to 1. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, 4.2BSD. .P diff --git a/man/man2/getgid.2 b/man/man2/getgid.2 index af384ad61b..e56523ada7 100644 --- a/man/man2/getgid.2 +++ b/man/man2/getgid.2 @@ -44,7 +44,7 @@ See .BR syscall (2) for details regarding register mapping. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, 4.3BSD. .P diff --git a/man/man2/getgroups.2 b/man/man2/getgroups.2 index a31f879f77..78142e3bbd 100644 --- a/man/man2/getgroups.2 +++ b/man/man2/getgroups.2 @@ -150,7 +150,7 @@ For details, see .SH STANDARDS .TP .BR getgroups () -POSIX.1-2008. +POSIX.1-2024. .TP .BR setgroups () None. diff --git a/man/man2/gethostname.2 b/man/man2/gethostname.2 index c13bfabbd4..d657bfd7fc 100644 --- a/man/man2/gethostname.2 +++ b/man/man2/gethostname.2 @@ -140,13 +140,13 @@ in this case, a terminating null byte is not included in the returned .SH STANDARDS .TP .BR gethostname () -POSIX.1-2008. +POSIX.1-2024. .TP .BR sethostname () None. .SH HISTORY SVr4, 4.4BSD (these interfaces first appeared in 4.2BSD). -POSIX.1-2001 and POSIX.1-2008 specify +POSIX.1 specifies .BR gethostname () but not .BR sethostname (). diff --git a/man/man2/getitimer.2 b/man/man2/getitimer.2 index 40467b661f..6f35fa1304 100644 --- a/man/man2/getitimer.2 +++ b/man/man2/getitimer.2 @@ -179,10 +179,10 @@ the timer is disabled. .IR "Don't use this Linux misfeature" : it is nonportable and unnecessary. .SH STANDARDS -POSIX.1-2008. +None. .SH HISTORY POSIX.1-2001, SVr4, 4.4BSD (this call first appeared in 4.2BSD). -POSIX.1-2008 marks +POSIX.1-2008 marked .BR getitimer () and .BR setitimer () @@ -190,6 +190,7 @@ obsolete, recommending the use of the POSIX timers API .RB ( timer_gettime (2), .BR timer_settime (2), etc.) instead. +POSIX.1-2024 removed them. .SH NOTES Timers will never expire before the requested time, but may expire some (short) time afterward, which depends diff --git a/man/man2/getpeername.2 b/man/man2/getpeername.2 index c367382423..16beb3a184 100644 --- a/man/man2/getpeername.2 +++ b/man/man2/getpeername.2 @@ -68,7 +68,7 @@ The file descriptor .I sockfd does not refer to a socket. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.4BSD (first appeared in 4.2BSD). diff --git a/man/man2/getpid.2 b/man/man2/getpid.2 index f0ec3f1ffa..2ae00557c3 100644 --- a/man/man2/getpid.2 +++ b/man/man2/getpid.2 @@ -51,7 +51,7 @@ See .BR syscall (2) for details regarding register mapping. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, 4.3BSD, SVr4. .SS C library/kernel differences diff --git a/man/man2/getpriority.2 b/man/man2/getpriority.2 index 1b3a3107fb..02b98e8ee4 100644 --- a/man/man2/getpriority.2 +++ b/man/man2/getpriority.2 @@ -137,7 +137,7 @@ and .I who values specified. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.4BSD (these interfaces first appeared in 4.2BSD). diff --git a/man/man2/getrlimit.2 b/man/man2/getrlimit.2 index 1df2be2fdc..f53add91c4 100644 --- a/man/man2/getrlimit.2 +++ b/man/man2/getrlimit.2 @@ -529,7 +529,7 @@ T} Thread safety MT-Safe .BR getrlimit () .TQ .BR setrlimit () -POSIX.1-2008. +POSIX.1-2024. .TP .BR prlimit () Linux. diff --git a/man/man2/getrusage.2 b/man/man2/getrusage.2 index 4236d367ee..44ec2fb469 100644 --- a/man/man2/getrusage.2 +++ b/man/man2/getrusage.2 @@ -183,7 +183,7 @@ T{ T} Thread safety MT-Safe .TE .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .P POSIX.1 specifies .BR getrusage (), diff --git a/man/man2/getsid.2 b/man/man2/getsid.2 index b83e167044..7688dd27c1 100644 --- a/man/man2/getsid.2 +++ b/man/man2/getsid.2 @@ -58,7 +58,7 @@ was found. Linux does not return .BR EPERM . .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4. Linux 2.0. diff --git a/man/man2/getsockname.2 b/man/man2/getsockname.2 index 1bce1360c8..a7ca8573b8 100644 --- a/man/man2/getsockname.2 +++ b/man/man2/getsockname.2 @@ -64,10 +64,9 @@ The file descriptor .I sockfd does not refer to a socket. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY -POSIX.1-2001, SVr4, 4.4BSD -(first appeared in 4.2BSD). +POSIX.1-2001, SVr4, 4.2BSD. .\" SVr4 documents additional ENOMEM .\" and ENOSR error codes. .SH SEE ALSO diff --git a/man/man2/getsockopt.2 b/man/man2/getsockopt.2 index f37b87d201..23180bae3b 100644 --- a/man/man2/getsockopt.2 +++ b/man/man2/getsockopt.2 @@ -140,7 +140,7 @@ The file descriptor .I sockfd does not refer to a socket. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.4BSD (first appeared in 4.2BSD). diff --git a/man/man2/gettimeofday.2 b/man/man2/gettimeofday.2 index 03a7a7f4d7..8310f9c784 100644 --- a/man/man2/gettimeofday.2 +++ b/man/man2/gettimeofday.2 @@ -12,8 +12,10 @@ Standard C library .nf .B #include <sys/time.h> .P +.B [[deprecated]] .BI "int gettimeofday(struct timeval *restrict " tv , .BI " struct timezone *_Nullable restrict " tz ); +.B [[deprecated]] .BI "int settimeofday(const struct timeval *" tv , .BI " const struct timezone *_Nullable " tz ); .fi @@ -173,23 +175,24 @@ but Android does not update the kernel timezone based on the device timezone in Settings, so the kernel's timezone is typically UTC. .SH STANDARDS -.TP -.BR gettimeofday () -POSIX.1-2008 (obsolete). -.TP -.BR settimeofday () None. .SH HISTORY SVr4, 4.3BSD. -POSIX.1-2001 describes +POSIX.1-2001 described .BR gettimeofday () but not .BR settimeofday (). -POSIX.1-2008 marks +POSIX.1-2008 marked .BR gettimeofday () as obsolete, recommending the use of .BR clock_gettime (2) instead. +Likewise, +.BR clock_settime (2) +should be used instead of +.BR settimeofday (). +POSIX.1-2024 removed +.BR gettimeofday (). .P Traditionally, the fields of .I struct timeval diff --git a/man/man2/getuid.2 b/man/man2/getuid.2 index de71632a4a..a1dd320fcf 100644 --- a/man/man2/getuid.2 +++ b/man/man2/getuid.2 @@ -28,7 +28,7 @@ and never modify .\" 0000511: getuid and friends should not modify errno .IR errno . .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, 4.3BSD. .P diff --git a/man/man2/kill.2 b/man/man2/kill.2 index 684365c488..7ec979c076 100644 --- a/man/man2/kill.2 +++ b/man/man2/kill.2 @@ -116,7 +116,7 @@ has not yet been .BR wait (2)ed for. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.3BSD. .SS Linux notes diff --git a/man/man2/link.2 b/man/man2/link.2 index 1fd3821a9b..964f564d70 100644 --- a/man/man2/link.2 +++ b/man/man2/link.2 @@ -382,9 +382,7 @@ and .I newdirfd arguments. .SH STANDARDS -.TP -.BR link () -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY .TP .BR link () diff --git a/man/man2/listen.2 b/man/man2/listen.2 index beb4585b27..0af616689c 100644 --- a/man/man2/listen.2 +++ b/man/man2/listen.2 @@ -79,7 +79,7 @@ The socket is not of a type that supports the .BR listen () operation. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, 4.4BSD (first appeared in 4.2BSD). diff --git a/man/man2/lseek.2 b/man/man2/lseek.2 index 54005ca0c7..7d6fe98a38 100644 --- a/man/man2/lseek.2 +++ b/man/man2/lseek.2 @@ -203,17 +203,15 @@ on a terminal device fails with the error .\" Other systems return the number of written characters, .\" using SEEK_SET to set the counter. (Of written characters.) .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.3BSD. -.P +.TP .B SEEK_DATA -and +.TQ .B SEEK_HOLE -are nonstandard extensions also present in Solaris, -FreeBSD, and DragonFly BSD; -they are proposed for inclusion in the next POSIX revision (Issue 8). -.\" FIXME . Review http://austingroupbugs.net/view.php?id=415 in the future +POSIX.1-2024; +Solaris, FreeBSD, DragonFly BSD. .SH NOTES See .BR open (2) diff --git a/man/man2/mkdir.2 b/man/man2/mkdir.2 index 9e2a094a45..ac0d4405ec 100644 --- a/man/man2/mkdir.2 +++ b/man/man2/mkdir.2 @@ -226,7 +226,7 @@ that corresponds to the .I dirfd argument. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY .TP .BR mkdir () @@ -234,6 +234,7 @@ SVr4, BSD, POSIX.1-2001. .\" SVr4 documents additional EIO, EMULTIHOP .TP .BR mkdirat () +POSIX.1-2008. Linux 2.6.16, glibc 2.4. .SH NOTES diff --git a/man/man2/mknod.2 b/man/man2/mknod.2 index 091727059a..1faa936800 100644 --- a/man/man2/mknod.2 +++ b/man/man2/mknod.2 @@ -262,7 +262,7 @@ One should make directories with .BR mkdir (2). .\" and one should make UNIX domain sockets with socket(2) and bind(2). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY .TP .BR mknod () diff --git a/man/man2/mlock.2 b/man/man2/mlock.2 index 6a0397f50a..063dde4d4e 100644 --- a/man/man2/mlock.2 +++ b/man/man2/mlock.2 @@ -299,7 +299,7 @@ and .BR mlockall () .TQ .BR munlockall () -POSIX.1-2008. +POSIX.1-2024. .TP .BR mlock2 () Linux. diff --git a/man/man2/mmap.2 b/man/man2/mmap.2 index 5a65846023..8f2c3ed5b1 100644 --- a/man/man2/mmap.2 +++ b/man/man2/mmap.2 @@ -735,7 +735,7 @@ wrapper function invokes with a suitably adjusted value for .IR offset . .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.4BSD. .\" SVr4 documents additional error codes ENXIO and ENODEV. diff --git a/man/man2/mprotect.2 b/man/man2/mprotect.2 index 0734fbd76f..09cec72b76 100644 --- a/man/man2/mprotect.2 +++ b/man/man2/mprotect.2 @@ -258,7 +258,7 @@ is equivalent to .SH STANDARDS .TP .BR mprotect () -POSIX.1-2008. +POSIX.1-2024. .TP .BR pkey_mprotect () Linux. diff --git a/man/man2/msgctl.2 b/man/man2/msgctl.2 index 39d74c3e29..cff83924ab 100644 --- a/man/man2/msgctl.2 +++ b/man/man2/msgctl.2 @@ -378,7 +378,7 @@ but the caller is not privileged (Linux: does not have the .B CAP_SYS_RESOURCE capability). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4. .\" SVID does not document the EIDRM error condition. diff --git a/man/man2/msgget.2 b/man/man2/msgget.2 index d92e96d51b..8600d66810 100644 --- a/man/man2/msgget.2 +++ b/man/man2/msgget.2 @@ -158,7 +158,7 @@ number of message queues .RB ( MSGMNI ) would be exceeded. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4. .SS Linux diff --git a/man/man2/msgop.2 b/man/man2/msgop.2 index 5d34b17857..4a5070f05a 100644 --- a/man/man2/msgop.2 +++ b/man/man2/msgop.2 @@ -440,7 +440,7 @@ were specified in and this kernel was configured without .BR CONFIG_CHECKPOINT_RESTORE . .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .P The .B MSG_EXCEPT diff --git a/man/man2/msync.2 b/man/man2/msync.2 index 240534050b..09b8ecb127 100644 --- a/man/man2/msync.2 +++ b/man/man2/msync.2 @@ -111,7 +111,7 @@ or in .IR flags . .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001. .P diff --git a/man/man2/nanosleep.2 b/man/man2/nanosleep.2 index d3effdb065..d291be5793 100644 --- a/man/man2/nanosleep.2 +++ b/man/man2/nanosleep.2 @@ -133,7 +133,7 @@ these time services shall expire when the requested duration elapses, independently of the new or old value of the clock. .RE .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001. .P diff --git a/man/man2/nice.2 b/man/man2/nice.2 index 8c1be0b4c7..eeacbbefb0 100644 --- a/man/man2/nice.2 +++ b/man/man2/nice.2 @@ -88,7 +88,7 @@ wrapper function provided by glibc provides conformance to POSIX.1 by calling .BR getpriority (2) to obtain the new nice value, which is then returned to the caller. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.3BSD. .\" SVr4 documents an additional diff --git a/man/man2/open.2 b/man/man2/open.2 index 12bf4452f8..eb29c77f31 100644 --- a/man/man2/open.2 +++ b/man/man2/open.2 @@ -1418,36 +1418,19 @@ but Linux doesn't support it. .BR creat () .TQ .BR openat () -POSIX.1-2008. -.P +POSIX.1-2024. +.TP .BR openat2 (2) Linux. -.P -The -.BR O_DIRECT , -.BR O_NOATIME , -.BR O_PATH , -and +.TP +.B O_DIRECT +.TQ +.B O_NOATIME +.TQ +.B O_PATH +.TQ .B O_TMPFILE -flags are Linux-specific. -One must define -.B _GNU_SOURCE -to obtain their definitions. -.P -The -.BR O_CLOEXEC , -.BR O_DIRECTORY , -and -.B O_NOFOLLOW -flags are not specified in POSIX.1-2001, -but are specified in POSIX.1-2008. -Since glibc 2.12, one can obtain their definitions by defining either -.B _POSIX_C_SOURCE -with a value greater than or equal to 200809L or -.B _XOPEN_SOURCE -with a value greater than or equal to 700. -In glibc 2.11 and earlier, one obtains the definitions by defining -.BR _GNU_SOURCE . +Linux. .SH HISTORY .TP .BR open () @@ -1459,6 +1442,13 @@ SVr4, 4.3BSD, POSIX.1-2001. POSIX.1-2008. Linux 2.6.16, glibc 2.4. +.TP +.B O_CLOEXEC +.TQ +.B O_DIRECTORY +.TQ +.B O_NOFOLLOW +POSIX.1-2008. .SH NOTES Under Linux, the .B O_NONBLOCK diff --git a/man/man2/pause.2 b/man/man2/pause.2 index e5d3494c8f..c232978b40 100644 --- a/man/man2/pause.2 +++ b/man/man2/pause.2 @@ -35,7 +35,7 @@ is set to .B EINTR a signal was caught and the signal-catching function returned. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.3BSD. .SH SEE ALSO diff --git a/man/man2/pipe.2 b/man/man2/pipe.2 index ed1a4eab47..0d1a6dbb84 100644 --- a/man/man2/pipe.2 +++ b/man/man2/pipe.2 @@ -203,18 +203,14 @@ See .BR syscall (2) for information regarding registers used for storing second file descriptor. .SH STANDARDS -.TP -.BR pipe () -POSIX.1-2008. -.TP -.BR pipe2 () -Linux. +POSIX.1-2024. .SH HISTORY .TP .BR pipe () POSIX.1-2001. .TP .BR pipe2 () +POSIX.1-2024. Linux 2.6.27, glibc 2.9. .SH EXAMPLES diff --git a/man/man2/poll.2 b/man/man2/poll.2 index fd1236fa36..135fa365ea 100644 --- a/man/man2/poll.2 +++ b/man/man2/poll.2 @@ -418,16 +418,7 @@ See for a discussion on the differences between the kernel and the libc notion of the sigset. .SH STANDARDS -.TP -.BR poll () -POSIX.1-2008. -.TP -.BR ppoll () -Linux. -.\" FIXME . -.\" ppoll() is proposed for inclusion in POSIX: -.\" https://www.austingroupbugs.net/view.php?id=1263 -.\" NetBSD 3.0 has a pollts() which is like Linux ppoll(). +POSIX.1-2024. .SH HISTORY .TP .BR poll () @@ -441,6 +432,7 @@ wrapper function provides emulation using .BR select (2). .TP .BR ppoll () +POSIX.1-2024. Linux 2.6.16, glibc 2.4. .SH NOTES diff --git a/man/man2/posix_fadvise.2 b/man/man2/posix_fadvise.2 index ed0c91e069..0a124a23a7 100644 --- a/man/man2/posix_fadvise.2 +++ b/man/man2/posix_fadvise.2 @@ -212,7 +212,7 @@ hidden from applications by the glibc wrapper function, which invokes the appropriate architecture-specific system call. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001. .P diff --git a/man/man2/pread.2 b/man/man2/pread.2 index 278e7ec814..17151547f7 100644 --- a/man/man2/pread.2 +++ b/man/man2/pread.2 @@ -91,7 +91,7 @@ to any error specified for or .BR lseek (2). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001. .P diff --git a/man/man2/readlink.2 b/man/man2/readlink.2 index c539b33025..f2a53500a1 100644 --- a/man/man2/readlink.2 +++ b/man/man2/readlink.2 @@ -179,7 +179,7 @@ is relative and .I dirfd is a file descriptor referring to a file other than a directory. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY .TP .BR readlink () diff --git a/man/man2/readv.2 b/man/man2/readv.2 index 7bcd391cb5..e045bf8e3c 100644 --- a/man/man2/readv.2 +++ b/man/man2/readv.2 @@ -431,7 +431,7 @@ These arguments contain, respectively, the low order and high order 32 bits of .BR readv () .TQ .BR writev () -POSIX.1-2008. +POSIX.1-2024. .TP .BR preadv () .TQ diff --git a/man/man2/recv.2 b/man/man2/recv.2 index aa99d74030..1cfb73a99d 100644 --- a/man/man2/recv.2 +++ b/man/man2/recv.2 @@ -511,10 +511,10 @@ but glibc currently types both as .\" across architectures, but socklen_t is always 32 bits, .\" as (at least with GCC) is int. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, -4.4BSD (first appeared in 4.2BSD). +4.2BSD. .P POSIX.1 describes only the .BR MSG_OOB , diff --git a/man/man2/rename.2 b/man/man2/rename.2 index a1a529034a..fd7a807f5f 100644 --- a/man/man2/rename.2 +++ b/man/man2/rename.2 @@ -488,19 +488,20 @@ capability. .SH STANDARDS .TP .BR rename () -C11, POSIX.1-2008. +C11, POSIX.1-2024. .TP .BR renameat () -POSIX.1-2008. +POSIX.1-2024. .TP .BR renameat2 () Linux. .SH HISTORY .TP .BR rename () -4.3BSD, C89, POSIX.1-2001. +C89, POSIX.1-2001, 4.3BSD. .TP .BR renameat () +POSIX.1-2008. Linux 2.6.16, glibc 2.4. .TP diff --git a/man/man2/rmdir.2 b/man/man2/rmdir.2 index 28c55dad38..8bf31d889b 100644 --- a/man/man2/rmdir.2 +++ b/man/man2/rmdir.2 @@ -86,7 +86,6 @@ has .I .. as its final component. POSIX.1 also allows -.\" POSIX.1-2001, POSIX.1-2008 .B EEXIST for this condition. .TP @@ -110,7 +109,7 @@ does not support the removal of directories. .I path refers to a directory on a read-only filesystem. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.3BSD. .SH BUGS diff --git a/man/man2/sched_get_priority_max.2 b/man/man2/sched_get_priority_max.2 index e98656bd3c..eb5feafa7f 100644 --- a/man/man2/sched_get_priority_max.2 +++ b/man/man2/sched_get_priority_max.2 @@ -61,7 +61,6 @@ priority range and map it to the interval given by and .BR sched_get_priority_min (). POSIX.1 requires -.\" POSIX.1-2001, POSIX.1-2008 (XBD 2.8.4) a spread of at least 32 between the maximum and the minimum values for .B SCHED_FIFO and @@ -92,7 +91,7 @@ The argument .I policy does not identify a defined scheduling policy. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001. .SH SEE ALSO diff --git a/man/man2/sched_rr_get_interval.2 b/man/man2/sched_rr_get_interval.2 index 8c9a88877c..3139abd957 100644 --- a/man/man2/sched_rr_get_interval.2 +++ b/man/man2/sched_rr_get_interval.2 @@ -71,7 +71,7 @@ quantum: the file exposes the quantum as a millisecond value, whose default is 100. Writing 0 to this file resets the quantum to the default value. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001. .SS Linux diff --git a/man/man2/sched_setparam.2 b/man/man2/sched_setparam.2 index 76fdfb9b7d..bb5a450df6 100644 --- a/man/man2/sched_setparam.2 +++ b/man/man2/sched_setparam.2 @@ -110,7 +110,7 @@ The thread whose ID is .I pid could not be found. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001. .SH SEE ALSO diff --git a/man/man2/sched_setscheduler.2 b/man/man2/sched_setscheduler.2 index 2677e34fac..89ac605367 100644 --- a/man/man2/sched_setscheduler.2 +++ b/man/man2/sched_setscheduler.2 @@ -186,7 +186,7 @@ instead of the .BR sched_* (2) system calls.) .SH STANDARDS -POSIX.1-2008 (but see BUGS below). +POSIX.1-2024 (but see BUGS below). .P .B SCHED_BATCH and diff --git a/man/man2/sched_yield.2 b/man/man2/sched_yield.2 index 2bc3216941..e7c5092bc7 100644 --- a/man/man2/sched_yield.2 +++ b/man/man2/sched_yield.2 @@ -31,7 +31,7 @@ In the Linux implementation, .BR sched_yield () always succeeds. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001 (but optional). POSIX.1-2008. diff --git a/man/man2/select.2 b/man/man2/select.2 index e97be1c098..25e80f216f 100644 --- a/man/man2/select.2 +++ b/man/man2/select.2 @@ -21,7 +21,7 @@ Standard C library .BI " struct timeval *_Nullable restrict " timeout ); .P .BI "void FD_CLR(int " fd ", fd_set *" set ); -.BI "int FD_ISSET(int " fd ", fd_set *" set ); +.BI "int FD_ISSET(int " fd ", const fd_set *" set ); .BI "void FD_SET(int " fd ", fd_set *" set ); .BI "void FD_ZERO(fd_set *" set ); .P @@ -436,7 +436,7 @@ Portable programs may wish to check for and loop, just as with .BR EINTR . .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY .TP .BR select () diff --git a/man/man2/semctl.2 b/man/man2/semctl.2 index 68f8e9221a..52a582c0eb 100644 --- a/man/man2/semctl.2 +++ b/man/man2/semctl.2 @@ -548,7 +548,7 @@ This was rectified .\" commit a5f4db877177d2a3d7ae62a7bac3a5a27e083d7f in Linux 4.6. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4. .\" SVr4 documents more error conditions EINVAL and EOVERFLOW. diff --git a/man/man2/semget.2 b/man/man2/semget.2 index 6a09f30806..d206cf297c 100644 --- a/man/man2/semget.2 +++ b/man/man2/semget.2 @@ -185,7 +185,7 @@ or the system wide maximum number of semaphores .RB ( SEMMNS ), would be exceeded. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY SVr4, POSIX.1-2001. .\" SVr4 documents additional error conditions EFBIG, E2BIG, EAGAIN, diff --git a/man/man2/semop.2 b/man/man2/semop.2 index 9e9d6554e0..1e8213cbc7 100644 --- a/man/man2/semop.2 +++ b/man/man2/semop.2 @@ -348,7 +348,7 @@ is greater than the implementation dependent maximum value for .IR semval . .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH VERSIONS Linux 2.5.52 (backported into Linux 2.4.22), glibc 2.3.3. diff --git a/man/man2/send.2 b/man/man2/send.2 index e47925327f..21b4b55531 100644 --- a/man/man2/send.2 +++ b/man/man2/send.2 @@ -458,7 +458,7 @@ but glibc currently types both as .\" across architectures, but socklen_t is always 32 bits, .\" as (at least with GCC) is int. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .P .B MSG_CONFIRM is a Linux extension. diff --git a/man/man2/seteuid.2 b/man/man2/seteuid.2 index 1b803e37db..ce33ea4694 100644 --- a/man/man2/seteuid.2 +++ b/man/man2/seteuid.2 @@ -117,7 +117,7 @@ are implemented as library functions that call, respectively, and .BR setresgid (2). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, 4.3BSD. .SH SEE ALSO diff --git a/man/man2/setgid.2 b/man/man2/setgid.2 index de9b52a82c..0d8f8e2197 100644 --- a/man/man2/setgid.2 +++ b/man/man2/setgid.2 @@ -66,7 +66,7 @@ all of the other threads in the process also change their credentials. For details, see .BR nptl (7). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4. .P diff --git a/man/man2/setpgid.2 b/man/man2/setpgid.2 index 3bd9fc1d8d..39f3966de1 100644 --- a/man/man2/setpgid.2 +++ b/man/man2/setpgid.2 @@ -224,11 +224,9 @@ is not the calling process and not a child of the calling process. .BR setpgid () .TQ .BR getpgrp "() (no args)" -.TQ -.BR setpgrp "() (no args)" -POSIX.1-2008 (but see HISTORY). +POSIX.1-2024. .TP -.BR setpgrp "() (2 args)" +.BR setpgrp () .TQ .BR getpgrp "() (1 arg)" None. @@ -243,7 +241,8 @@ POSIX.1-2001. .TP .BR setpgrp "() (no args)" POSIX.1-2001. -POSIX.1-2008 marks it as obsolete. +Obsoleted in POSIX.1-2008. +Removed in POSIX.1-2024. .TP .BR setpgrp "() (2 args)" .TQ diff --git a/man/man2/setresuid.2 b/man/man2/setresuid.2 index 2f8bcd6900..a5655ddc8c 100644 --- a/man/man2/setresuid.2 +++ b/man/man2/setresuid.2 @@ -114,8 +114,9 @@ all of the other threads in the process also change their credentials. For details, see .BR nptl (7). .SH STANDARDS -None. +POSIX.1-2024. .SH HISTORY +POSIX.1-2024. Linux 2.1.44, glibc 2.3.2. HP-UX, FreeBSD. diff --git a/man/man2/setreuid.2 b/man/man2/setreuid.2 index c14ed40231..61fb4914d1 100644 --- a/man/man2/setreuid.2 +++ b/man/man2/setreuid.2 @@ -129,7 +129,7 @@ across implementations. POSIX.1 makes no specification about the effect of these calls on the saved set-user-ID and saved set-group-ID. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, 4.3BSD (first appeared in 4.2BSD). .P diff --git a/man/man2/setsid.2 b/man/man2/setsid.2 index e4c40beb42..b49f13931c 100644 --- a/man/man2/setsid.2 +++ b/man/man2/setsid.2 @@ -45,7 +45,7 @@ Thus, in particular, .BR setsid () fails if the calling process is already a process group leader. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4. .SH NOTES diff --git a/man/man2/setuid.2 b/man/man2/setuid.2 index a0599e4bd3..9b80cad2a6 100644 --- a/man/man2/setuid.2 +++ b/man/man2/setuid.2 @@ -110,7 +110,7 @@ all of the other threads in the process also change their credentials. For details, see .BR nptl (7). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4. .P diff --git a/man/man2/shmctl.2 b/man/man2/shmctl.2 index e2f79f0d88..c6f9dbdec6 100644 --- a/man/man2/shmctl.2 +++ b/man/man2/shmctl.2 @@ -452,7 +452,7 @@ using This feature is not available on other UNIX implementations; portable applications should avoid relying on it. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4. .\" SVr4 documents additional error conditions EINVAL, diff --git a/man/man2/shmget.2 b/man/man2/shmget.2 index fe530f302c..f40f5896a3 100644 --- a/man/man2/shmget.2 +++ b/man/man2/shmget.2 @@ -258,7 +258,7 @@ see the description of in .BR proc_sys_vm (5). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .P .B SHM_HUGETLB and diff --git a/man/man2/shmop.2 b/man/man2/shmop.2 index f180c99774..3f3a3615f3 100644 --- a/man/man2/shmop.2 +++ b/man/man2/shmop.2 @@ -208,6 +208,12 @@ from .I char\ * into .IR "void\ *" . +.P +POSIX.1-2024 +changed the error code from +.I (void\ *)\ \-1 +to +.BR SHM_FAILED . .SH NOTES After a .BR fork (2), diff --git a/man/man2/shutdown.2 b/man/man2/shutdown.2 index e12f099773..a1884594a3 100644 --- a/man/man2/shutdown.2 +++ b/man/man2/shutdown.2 @@ -61,7 +61,7 @@ The file descriptor .I sockfd does not refer to a socket. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, 4.4BSD (first appeared in 4.2BSD). diff --git a/man/man2/sigaction.2 b/man/man2/sigaction.2 index f8ed68c041..441725aecb 100644 --- a/man/man2/sigaction.2 +++ b/man/man2/sigaction.2 @@ -1032,7 +1032,7 @@ wrapper function hides these details from us, transparently calling .BR rt_sigaction () when the kernel provides it. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4. .\" SVr4 does not document the EINTR condition. diff --git a/man/man2/sigaltstack.2 b/man/man2/sigaltstack.2 index b27e6b1b43..7d26dd384e 100644 --- a/man/man2/sigaltstack.2 +++ b/man/man2/sigaltstack.2 @@ -239,7 +239,7 @@ T{ T} Thread safety MT-Safe .TE .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .P .B SS_AUTODISARM is a Linux extension. diff --git a/man/man2/signal.2 b/man/man2/signal.2 index fc34e90f67..af7fa6daad 100644 --- a/man/man2/signal.2 +++ b/man/man2/signal.2 @@ -133,7 +133,7 @@ when a signal handler is invoked; use that interface instead of .BR signal (). .SH STANDARDS -C11, POSIX.1-2008. +C11, POSIX.1-2024. .SH HISTORY C89, POSIX.1-2001. .P diff --git a/man/man2/sigpending.2 b/man/man2/sigpending.2 index 51557e40d4..2ff6cc92d6 100644 --- a/man/man2/sigpending.2 +++ b/man/man2/sigpending.2 @@ -42,7 +42,7 @@ is set to indicate the error. .I set points to memory which is not a valid part of the process address space. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001. .SS C library/kernel differences diff --git a/man/man2/sigprocmask.2 b/man/man2/sigprocmask.2 index 39248f7f3e..3fee7a5411 100644 --- a/man/man2/sigprocmask.2 +++ b/man/man2/sigprocmask.2 @@ -169,7 +169,7 @@ wrapper function hides these details from us, transparently calling when the kernel provides it. .\" .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001. .SH NOTES diff --git a/man/man2/sigsuspend.2 b/man/man2/sigsuspend.2 index 4b7d4030ee..5bd4d50be1 100644 --- a/man/man2/sigsuspend.2 +++ b/man/man2/sigsuspend.2 @@ -64,7 +64,7 @@ points to memory which is not a valid part of the process address space. The call was interrupted by a signal; .BR signal (7). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001. .SS C library/kernel differences diff --git a/man/man2/sigwaitinfo.2 b/man/man2/sigwaitinfo.2 index 7d7061a380..44fef7e378 100644 --- a/man/man2/sigwaitinfo.2 +++ b/man/man2/sigwaitinfo.2 @@ -157,7 +157,7 @@ wrapper function hides these details from us, transparently calling when the kernel provides it. .\" .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001. .SH NOTES diff --git a/man/man2/socket.2 b/man/man2/socket.2 index d443958ecc..7b594d70d5 100644 --- a/man/man2/socket.2 +++ b/man/man2/socket.2 @@ -431,18 +431,15 @@ The protocol type or the specified protocol is not supported within this domain. .P Other errors may be generated by the underlying protocol modules. +.SH VERSIONS +POSIX.1-2024 specifies +.BR SOCK_CLOFORK , +but Linux doesn't support it. .SH STANDARDS -POSIX.1-2008. -.P -.B SOCK_NONBLOCK -and -.B SOCK_CLOEXEC -are Linux-specific. +POSIX.1-2024. .SH HISTORY -POSIX.1-2001, 4.4BSD. +POSIX.1-2001, 4.2BSD. .P -.BR socket () -appeared in 4.2BSD. It is generally portable to/from non-BSD systems supporting clones of the BSD socket layer (including System\ V variants). @@ -459,6 +456,11 @@ families. However, already the BSD man page promises: "The protocol family generally is the same as the address family", and subsequent standards use AF_* everywhere. +.TP +.B SOCK_NONBLOCK +.TQ +.B SOCK_CLOEXEC +POSIX.1-2024. .SH EXAMPLES An example of the use of .BR socket () diff --git a/man/man2/socketpair.2 b/man/man2/socketpair.2 index 698f6b0ab8..a25a486af0 100644 --- a/man/man2/socketpair.2 +++ b/man/man2/socketpair.2 @@ -79,26 +79,21 @@ and .\" commit: 70b03759e9ecfae400605fa34f3d7154cccbbba3 (since Linux 4.12). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY -POSIX.1-2001, 4.4BSD. +POSIX.1-2001, 4.2BSD. .P -.BR socketpair () -first appeared in 4.2BSD. It is generally portable to/from non-BSD systems supporting clones of the BSD socket layer (including System\ V variants). -.P -Since Linux 2.6.27, -.BR socketpair () -supports the -.B SOCK_NONBLOCK -and +.TP .B SOCK_CLOEXEC -flags in the -.I type -argument, as described in -.BR socket (2). +.TQ +.B SOCK_NONBLOCK +POSIX.1-2024; +Linux 2.6.27. +(See +.BR socket (2).) .SH SEE ALSO .BR pipe (2), .BR read (2), diff --git a/man/man2/stat.2 b/man/man2/stat.2 index 078c90ef41..dc5c5b70ac 100644 --- a/man/man2/stat.2 +++ b/man/man2/stat.2 @@ -296,7 +296,7 @@ on a file whose size exceeds .I (1<<31)\-1 bytes. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY .TP .BR stat () diff --git a/man/man2/symlink.2 b/man/man2/symlink.2 index 5810d90139..bfaf34a59d 100644 --- a/man/man2/symlink.2 +++ b/man/man2/symlink.2 @@ -212,7 +212,7 @@ does not support the creation of symbolic links. .I linkpath is on a read-only filesystem. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY .TP .BR symlink () diff --git a/man/man2/sync.2 b/man/man2/sync.2 index d6e75c5050..8202524306 100644 --- a/man/man2/sync.2 +++ b/man/man2/sync.2 @@ -79,7 +79,7 @@ allocate space at the time of a system call, and some previous write failed due to insufficient storage space. .SH VERSIONS -According to the standard specification (e.g., POSIX.1-2001), +According to the standard specification (i.e., POSIX.1), .BR sync () schedules the writes, but may return before the actual writing is done. @@ -95,7 +95,7 @@ the system or filesystem respectively. .SH STANDARDS .TP .BR sync () -POSIX.1-2008. +POSIX.1-2024. .TP .BR syncfs () Linux. diff --git a/man/man2/time.2 b/man/man2/time.2 index a93817820a..10c67de0af 100644 --- a/man/man2/time.2 +++ b/man/man2/time.2 @@ -85,11 +85,9 @@ On some architectures, an implementation of is provided in the .BR vdso (7). .SH STANDARDS -C11, POSIX.1-2008. +C11, POSIX.1-2024. .SH HISTORY -SVr4, 4.3BSD, C89, POSIX.1-2001. -.\" Under 4.3BSD, this call is obsoleted by -.\" .BR gettimeofday (2). +SVr4, 4.3BSD, C89, POSIX.1-2001, V7. .SH BUGS Error returns from this system call are indistinguishable from successful reports that the time is a few seconds diff --git a/man/man2/timer_create.2 b/man/man2/timer_create.2 index c23780be01..2a96f2e6cb 100644 --- a/man/man2/timer_create.2 +++ b/man/man2/timer_create.2 @@ -255,7 +255,7 @@ which maps these IDs to the timer IDs employed by the kernel. .\" that glibc uses to map user-space timer IDs to kernel timer IDs .\" The kernel-level timer ID is exposed via siginfo.si_tid. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY Linux 2.6. POSIX.1-2001. diff --git a/man/man2/timer_delete.2 b/man/man2/timer_delete.2 index 997e77274d..83f9adab7a 100644 --- a/man/man2/timer_delete.2 +++ b/man/man2/timer_delete.2 @@ -45,7 +45,7 @@ is set to indicate the error. .I timerid is not a valid timer ID. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY Linux 2.6. POSIX.1-2001. diff --git a/man/man2/timer_getoverrun.2 b/man/man2/timer_getoverrun.2 index c094707dd1..fd45f8573e 100644 --- a/man/man2/timer_getoverrun.2 +++ b/man/man2/timer_getoverrun.2 @@ -92,7 +92,7 @@ timer notifications using signals. .\" FIXME . Austin bug filed, 11 Feb 09 .\" https://www.austingroupbugs.net/view.php?id=95 .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY Linux 2.6. POSIX.1-2001. diff --git a/man/man2/timer_settime.2 b/man/man2/timer_settime.2 index 9415162753..581051c2ca 100644 --- a/man/man2/timer_settime.2 +++ b/man/man2/timer_settime.2 @@ -173,7 +173,7 @@ or .I new_value.it_value.tv_nsec is negative or greater than 999,999,999. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY Linux 2.6. POSIX.1-2001. diff --git a/man/man2/times.2 b/man/man2/times.2 index df439af132..b3172a6ab1 100644 --- a/man/man2/times.2 +++ b/man/man2/times.2 @@ -103,7 +103,7 @@ and most other UNIX implementations require a non-NULL value for .IR buf . .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, diff --git a/man/man2/truncate.2 b/man/man2/truncate.2 index 3cd6354035..946d6aaf0e 100644 --- a/man/man2/truncate.2 +++ b/man/man2/truncate.2 @@ -201,10 +201,10 @@ the calling signature for these system calls differ, for the reasons described in .BR syscall (2). .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, -4.4BSD, SVr4 (first appeared in 4.2BSD). +SVr4, 4.2BSD. .\" POSIX.1-1996 has .\" .BR ftruncate (). .\" POSIX.1-2001 also has diff --git a/man/man2/uname.2 b/man/man2/uname.2 index 72395fd066..8dcab88a11 100644 --- a/man/man2/uname.2 +++ b/man/man2/uname.2 @@ -77,7 +77,7 @@ just use sizeof(...). SVr4 uses 257, "to support Internet hostnames" \[em]this is the largest value likely to be encountered in the wild\[em]. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY POSIX.1-2001, SVr4, 4.4BSD. .SS C library/kernel differences diff --git a/man/man2/unlink.2 b/man/man2/unlink.2 index 8ec6257539..8f0840949d 100644 --- a/man/man2/unlink.2 +++ b/man/man2/unlink.2 @@ -245,7 +245,7 @@ is relative and .I dirfd is a file descriptor referring to a file other than a directory. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY .TP .BR unlink () diff --git a/man/man2/utime.2 b/man/man2/utime.2 index f4b6d1dc4a..94307a5b90 100644 --- a/man/man2/utime.2 +++ b/man/man2/utime.2 @@ -147,12 +147,18 @@ capability). .I path resides on a read-only filesystem. .SH STANDARDS -POSIX.1-2008. +.TP +.BR utime () +None. +.TP +.BR utimes () +POSIX.1-2024. .SH HISTORY .TP .BR utime () SVr4, POSIX.1-2001. -POSIX.1-2008 marks it as obsolete. +Obsoleted in POSIX.1-2008. +Removed in POSIX.1-2024. .TP .BR utimes () 4.3BSD, POSIX.1-2001. diff --git a/man/man2/utimensat.2 b/man/man2/utimensat.2 index c6fa4b3698..bd512d48d9 100644 --- a/man/man2/utimensat.2 +++ b/man/man2/utimensat.2 @@ -442,8 +442,8 @@ the wrapper function returns the error .B EINVAL in this case. .SH STANDARDS -POSIX.1-2008. -.SH VERSIONS +POSIX.1-2024. +.SH HISTORY .TP .BR utimensat () Linux 2.6.22, diff --git a/man/man2/vfork.2 b/man/man2/vfork.2 index 2a0a200dce..b4b52043aa 100644 --- a/man/man2/vfork.2 +++ b/man/man2/vfork.2 @@ -311,5 +311,6 @@ are allowed and input attempts result in an end-of-file indication." .BR execve (2), .BR _exit (2), .BR fork (2), +.BR _Fork (3), .BR unshare (2), .BR wait (2) diff --git a/man/man2/wait.2 b/man/man2/wait.2 index cbec496405..69eb55f69d 100644 --- a/man/man2/wait.2 +++ b/man/man2/wait.2 @@ -184,19 +184,14 @@ This macro should be employed only if .B WIFSIGNALED returned true. .TP -.BI WCOREDUMP( wstatus ) +.BI WCOREDUMP( wstatus ) " \f[R]// POSIX.1-2024\f[]" returns true if the child produced a core dump (see .BR core (5)). This macro should be employed only if .B WIFSIGNALED returned true. -.IP -This macro is not specified in POSIX.1-2001 and is not available on -some UNIX implementations (e.g., AIX, SunOS). -Therefore, enclose its use inside -.IR \%#ifdef\~WCOREDUMP . .TP -.BI WIFSTOPPED( wstatus ) +.BI WIFSTOPPED( wstatus ) " \f[R]// POSIX.1-2024\f[]" returns true if the child process was stopped by delivery of a signal; this is possible only if the call was done using .B WUNTRACED @@ -476,7 +471,7 @@ See .BR getrusage (2) for details. .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY SVr4, 4.3BSD, POSIX.1-2001. .SH NOTES diff --git a/man/man2/write.2 b/man/man2/write.2 index eb5369f846..6cf8c67040 100644 --- a/man/man2/write.2 +++ b/man/man2/write.2 @@ -220,7 +220,7 @@ catches, blocks or ignores this signal.) Other errors may occur, depending on the object connected to .IR fd . .SH STANDARDS -POSIX.1-2008. +POSIX.1-2024. .SH HISTORY SVr4, 4.3BSD, POSIX.1-2001. .\" SVr4 documents additional error |
