X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=fileio.tex;h=3bd9db3a35f5f7178ccaad31f171849d57bd0ae0;hp=6639ac357a5113b5e0f4202eff1561d0afdc9443;hb=HEAD;hpb=fa15a3f1ecd64efd8440e46d398fd9976abc3d25 diff --git a/fileio.tex b/fileio.tex index 6639ac3..59a3614 100644 --- a/fileio.tex +++ b/fileio.tex @@ -1,6 +1,6 @@ -s%% fileio.tex (merge fileunix.tex - filestd.tex) +%% fileio.tex (merge fileunix.tex - filestd.tex) %% -%% Copyright (C) 2000-2019 Simone Piccardi. Permission is granted to +%% Copyright (C) 2000-2024 Simone Piccardi. Permission is granted to %% copy, distribute and/or modify this document under the terms of the GNU Free %% Documentation License, Version 1.1 or any later version published by the %% Free Software Foundation; with the Invariant Sections being "Un preambolo", @@ -557,6 +557,7 @@ escludere la possibilità di far esistere il file anche in un secondo tempo. % NOTE: per O_TMPFILE vedi: http://kernelnewbies.org/Linux_3.11 % https://lwn.net/Articles/558598/ http://lwn.net/Articles/619146/ +% https://lwn.net/Articles/896153/ \begin{table}[!htb] @@ -1847,6 +1848,9 @@ riferimento ad una directory, tranne il caso in cui si sia specificato un \textit{pathname} assoluto, nel qual caso, come detto, il valore di \param{dirfd} sarà completamente ignorato. +% TODO: trattare openat2, introdotta con il kernel 5.6, vedi +% https://lwn.net/Articles/796868/ e https://git.kernel.org/linus/b55eef872a96 + \begin{table}[htb] \centering \footnotesize @@ -1954,7 +1958,12 @@ Si tenga presente che non tutte le funzioni che prevedono l'argomento aggiuntivo sono \textit{system call}, ad esempio \func{faccessat} e \func{fchmodat} sono realizzate con dei \textit{wrapper} nella \acr{glibc} per aderenza allo standard POSIX.1-2008, dato che la \textit{system call} -sottostante non prevede l'argomento \param{flags}. +sottostante non prevede l'argomento \param{flags}. + +% TODO: nel kernel 6.6 è stata introdotta fchmodat2 che risolve il problema +% appena illustrato + +% TODO: aggiornare per via di faccessat2 aggiunta con il kernel 5.8 In tab.~\ref{tab:at-functions_constant_values} si sono elencati i valori utilizzabili per i flag (tranne quelli specifici di \func{statx} su cui @@ -1969,6 +1978,9 @@ perché non avrebbe molto senso cambiare i permessi di un link simbolico) e pertanto l'uso della funzione è analogo a quello delle altre funzioni che non hanno l'argomento \param{flags} (e non la tratteremo esplicitamente). +% TODO: documentare l'introduzione di fchmodat4() se e quando ci sarà, vedi +% https://lwn.net/Articles/792628/ + L'altro flag comune è \const{AT\_EMPTY\_PATH}, utilizzabile a partire dal kernel 2.6.39, che consente di usare per \param{dirfd} un file descriptor associato ad un file qualunque e non necessariamente ad una directory; in