Tutto questo si riflette nello standard POSIX\footnote{le funzioni sono
previste pure in BSD e SVID.} che ha introdotto una apposita interfaccia per
-la lettura delle directory, basata sui cosiddetti \textit{directory streams}
+la lettura delle directory, basata sui cosiddetti \textit{directory stream}
(chiamati così per l'analogia con i file stream dell'interfaccia standard di
\capref{cha:files_std_interface}). La prima funzione di questa interfaccia è
\funcd{opendir}, il cui prototipo è:
Per quanto riguarda il significato dei campi opzionali, il campo \var{d\_type}
indica il tipo di file (fifo, directory, link simbolico, ecc.); i suoi
-possibili valori sono riportati in \tabref{tab:file_dtype_macro}; per la
-conversione da e verso l'analogo valore mantenuto dentro il campo
-\var{st\_mode} di \struct{stat} sono definite anche due macro di conversione
-\macro{IFTODT} e \macro{DTTOIF}:
+possibili valori\footnote{fino alla versione 2.1 delle \acr{glibc} questo
+ campo, pur presente nella struttura, non è implementato, e resta sempre al
+ valore \const{DT\_UNKNOWN}.} sono riportati in
+\tabref{tab:file_dtype_macro}; per la conversione da e verso l'analogo valore
+mantenuto dentro il campo \var{st\_mode} di \struct{stat} sono definite anche
+due macro di conversione \macro{IFTODT} e \macro{DTTOIF}:
\begin{functions}
\funcdecl{int IFTODT(mode\_t MODE)} Converte il tipo di file dal formato di
\var{st\_mode} a quello di \var{d\_type}.
directory, mentre il campo \var{d\_reclen} la lunghezza totale della voce
letta. Con questi due campi diventa possibile, determinando la posizione delle
varie voci, spostarsi all'interno dello stream usando la funzione
-\func{seekdir},\footnote{sia questa funzione, che la corrispondente
- \func{telldir}, sono estensioni prese da BSD, non previste dallo standard
- POSIX.} il cui prototipo è:
+\func{seekdir},\footnote{sia questa funzione che \func{telldir}, sono
+ estensioni prese da BSD, non previste dallo standard POSIX.} il cui
+prototipo è:
\begin{prototype}{dirent.h}{void seekdir(DIR *dir, off\_t offset)}
Cambia la posizione all'interno di un \textit{directory stream}.
\end{prototype}
A ciascun processo è associata una directory nel filesystem che è chiamata
directory corrente o directory di lavoro (\textit{current working directory})
-che è quella a cui si fa riferimento quando un filename è espresso in forma
+che è quella a cui si fa riferimento quando un pathname è espresso in forma
relativa, dove il ``\textsl{relativa}'' fa riferimento appunto a questa
directory.
quale si hanno i permessi di accesso.
Dato che anche le directory sono file, è possibile riferirsi ad esse anche
-tramite il file descriptor, e non solo tramite il filename, per fare questo si
+tramite il file descriptor, e non solo tramite il pathname, per fare questo si
usa \funcd{fchdir}, il cui prototipo è:
\begin{prototype}{unistd.h}{int fchdir(int fd)}
Identica a \func{chdir}, ma usa il file descriptor \param{fd} invece del
\textbf{Flag} & \textbf{Valore} & \textbf{Significato} \\
\hline
\hline
- \const{S\_IFMT} & 0170000 & bitmask per i bit del tipo di file \\
+ \const{S\_IFMT} & 0170000 & maschera per i bit del tipo di file \\
\const{S\_IFSOCK} & 0140000 & socket\index{socket} \\
\const{S\_IFLNK} & 0120000 & link simbolico \\
\const{S\_IFREG} & 0100000 & file regolare \\
\end{table}
Per compattezza, nella tabella si sono specificati i bit di \acr{suid},
-\acr{sgid} e \acr{stiky} con la notazione illustrata anche in
+\acr{sgid} e \acr{sticky} con la notazione illustrata anche in
\figref{fig:file_perm_bit}.
In \tabref{tab:file_dirperm_bits} si sono invece riassunti gli effetti dei