Re: utimensat(2) and faccessat(2): man pages do not mention AT_EMPTY_PATH flag

Renzo Davoli
2023-12-10T08:07:58Z

[-- Attachment #1: Type: text/plain, Size: 353 bytes --]

On Sat, Dec 09, 2023 at 10:36:19PM +0100, Alejandro Colomar wrote:
> Dear Renzo,
> > +.\" Modified 2023-12-09 by Renzo Davoli <renzo@cs.unibo.it>
> We don't use those anymore. Simply add yourself to Copyright if
> appropriate, but for knowing what was written by who, git(1) works
> better.

Okay. You'll find here attached the new patch.

ciao
renzo

[-- Attachment #2: access_utimensat_add_emptypath.patch --]
[-- Type: text/x-diff, Size: 1561 bytes --]

diff --git a/man2/access.2 b/man2/access.2
index 95de3815d..2b3e70e34 100644
--- a/man2/access.2
+++ b/man2/access.2
@@ -155,6 +155,27 @@ By default,
uses the real IDs (like
.BR access ()).
.TP
+.BR AT_EMPTY_PATH " (since Linux 5.8)"
+If
+.I pathname
+is an empty string, operate on the file referred to by
+.I dirfd
+(which may have been obtained using the
+.BR open (2)
+.B O_PATH
+flag).
+In this case,
+.I dirfd
+can refer to any type of file, not just a directory.
+If
+.I dirfd
+is
+.BR AT_FDCWD ,
+the call operates on the current working directory.
+This flag is Linux-specific; define
+.B _GNU_SOURCE
+to obtain its definition.
+.TP
.B AT_SYMLINK_NOFOLLOW
If
.I pathname
diff --git a/man2/utimensat.2 b/man2/utimensat.2
index 495e15cee..d58b4d82e 100644
--- a/man2/utimensat.2
+++ b/man2/utimensat.2
@@ -182,10 +182,31 @@ is ignored.
.P
The
.I flags
-field is a bit mask that may be 0, or include the following constant,
-defined in
+argument is a bit mask created by ORing together zero or more of
+the following values defined in
.IR <fcntl.h> :
.TP
+.BR AT_EMPTY_PATH " (since Linux 5.8)"
+If
+.I pathname
+is an empty string, operate on the file referred to by
+.I dirfd
+(which may have been obtained using the
+.BR open (2)
+.B O_PATH
+flag).
+In this case,
+.I dirfd
+can refer to any type of file, not just a directory.
+If
+.I dirfd
+is
+.BR AT_FDCWD ,
+the call operates on the current working directory.
+This flag is Linux-specific; define
+.B _GNU_SOURCE
+to obtain its definition.
+.TP
.B AT_SYMLINK_NOFOLLOW
If
.I pathname