aboutsummaryrefslogtreecommitdiffstats
path: root/man3/realpath.3
diff options
context:
space:
mode:
authorAlejandro Colomar <alx@kernel.org>2023-03-17 17:08:01 +0100
committerAlejandro Colomar <alx@kernel.org>2023-03-30 15:14:55 +0200
commit4131356cdab8d37fc395ca5466a0401c8573380c (patch)
tree8c4c6f1c3172358b735b481cbbfdd9cc04b00ed9 /man3/realpath.3
parentfd00f831b52d61a91d59cb3b46182869145d9700 (diff)
downloadman-pages-4131356cdab8.tar.gz
man*/, man-pages.7: VERSIONS, STANDARDS, HISTORY: Reorganize sections
- Add a new HISTORY section that covers the history of an API, both regarding implementations and regarding old standards. This was previously covered in VERSIONS, and in some cases in STANDARDS. - Repurpose VERSIONS to cover differing implementations in _current_ systems. - STANDARDS is reduced to only cover current versions of standards. That basically means only C11 (C99 has been superseeded by C11; C17 is just a bugfix of C11, so not really a new version), and POSIX.1-2008 (*-2001 was superseeded by *-2008; *-2017 was just a bugfix for *-2008). The section also mentions for example 'Linux', 'GNU' or 'BSD' when a non-standard API is Linux- or GNU-only or if it's (de-facto) standard in the BSDs. - In some cases content that should go into one of these sections was in NOTES. Move it from there to where it corresponds. - In the SYNOPSIS, I added [[deprecated]] in some functions that I found are deprecated by the relevant standards. - A few other related changes... Cc: Oskari Pirhonen <xxc3ncoredxx@gmail.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
Diffstat (limited to 'man3/realpath.3')
-rw-r--r--man3/realpath.333
1 files changed, 16 insertions, 17 deletions
diff --git a/man3/realpath.3 b/man3/realpath.3
index 0cb9e54faf..f36d81fd15 100644
--- a/man3/realpath.3
+++ b/man3/realpath.3
@@ -69,10 +69,6 @@ The caller should deallocate this buffer using
.\" Even if we use resolved_path == NULL, then realpath() will still
.\" return ENAMETOOLONG if the resolved pathname would exceed PATH_MAX
.\" bytes -- MTK, Dec 04
-.\" .SH HISTORY
-.\" The
-.\" .BR realpath ()
-.\" function first appeared in 4.4BSD, contributed by Jan-Simon Pendry.
.SH RETURN VALUE
If there is no error,
.BR realpath ()
@@ -137,14 +133,28 @@ T} Thread safety MT-Safe
.hy
.ad
.sp 1
+.SH VERSIONS
+.SS GNU extensions
+If the call fails with either
+.B EACCES
+or
+.B ENOENT
+and
+.I resolved_path
+is not NULL, then the prefix of
+.I path
+that is not readable or does not exist is returned in
+.IR resolved_path .
.SH STANDARDS
-4.4BSD, POSIX.1-2001.
+POSIX.1-2008.
+.SH HISTORY
+4.4BSD, POSIX.1-2001, Solaris.
.PP
POSIX.1-2001 says that the behavior if
.I resolved_path
is NULL is implementation-defined.
POSIX.1-2008 specifies the behavior described in this page.
-.SH NOTES
+.PP
In 4.4BSD and Solaris, the limit on the pathname length is
.B MAXPATHLEN
(found in \fI<sys/param.h>\fP).
@@ -184,17 +194,6 @@ A typical source fragment would be
.\" .BR realpath ()
.\" is given in \fI<unistd.h>\fP in libc4 and libc5,
.\" but in \fI<stdlib.h>\fP everywhere else.
-.SS GNU extensions
-If the call fails with either
-.B EACCES
-or
-.B ENOENT
-and
-.I resolved_path
-is not NULL, then the prefix of
-.I path
-that is not readable or does not exist is returned in
-.IR resolved_path .
.SH BUGS
The POSIX.1-2001 standard version of this function is broken by design,
since it is impossible to determine a suitable size for the output buffer,