\begin{functions}
\headdecl{sys/types.h}
\headdecl{sys/stat.h}
- \headdecl{fnctl.h}
+ \headdecl{fcntl.h}
\headdecl{unistd.h}
\funcdecl{int mknod(const char *pathname, mode\_t mode, dev\_t dev)}
errore, nel qual caso \var{errno} assumerà i valori:
\begin{errlist}
\item[\errcode{EPERM}] Non si hanno privilegi sufficienti a creare l'inode, o
- il filesystem su cui si è cercato di creare \func{pathname} non supporta
+ il filesystem su cui si è cercato di creare \param{pathname} non supporta
l'operazione.
\item[\errcode{EINVAL}] Il valore di \param{mode} non indica un file, una
fifo o un dispositivo.
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 \func{telldir}, sono
+\funcd{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)}
La funzione non ritorna nulla e non segnala errori, è però necessario che il
valore dell'argomento \param{offset} sia valido per lo stream \param{dir};
esso pertanto deve essere stato ottenuto o dal valore di \var{d\_off} di
-\struct{dirent} o dal valore restituito dalla funzione \func{telldir}, che
+\struct{dirent} o dal valore restituito dalla funzione \funcd{telldir}, che
legge la posizione corrente; il prototipo di quest'ultima è:
\begin{prototype}{dirent.h}{off\_t telldir(DIR *dir)}
Ritorna la posizione corrente in un \textit{directory stream}.
a partire dalla versione 2.1, effettuano anche l'ordinamento alfabetico
tenendo conto delle varie localizzazioni, usando \func{strcoll} al posto di
\func{strcmp}.} anche \func{versionsort}, che ordina i nomi tenendo conto
-del numero di versione (cioè qualcosa per cui \file{file10} viene comunque
-dopo \func{file4}.)
+del numero di versione (cioè qualcosa per cui \texttt{file10} viene comunque
+dopo \texttt{file4}.)
Un semplice esempio dell'uso di queste funzioni è riportato in
fig.~\ref{fig:file_my_ls}, dove si è riportata la sezione principale di un
trovato coi sorgenti allegati nel file \file{myls.c}.
In sostanza tutto quello che fa il programma, dopo aver controllato
-(\texttt{\small 10--13}) di avere almeno un parametro (che indicherà la
+(\texttt{\small 10--13}) di avere almeno un argomento (che indicherà la
directory da esaminare) è chiamare (\texttt{\small 14}) la funzione
\func{DirScan} per eseguire la scansione, usando la funzione \code{do\_ls}
(\texttt{\small 20--26}) per fare tutto il lavoro.
prefisso la directory specificata da \const{P\_tmpdir}.
Di questa funzione esiste una versione rientrante, \func{tmpnam\_r}, che non
-fa nulla quando si passa \val{NULL} come parametro. Una funzione simile,
+fa nulla quando si passa \val{NULL} come argomento. Una funzione simile,
\funcd{tempnam}, permette di specificare un prefisso per il file
esplicitamente, il suo prototipo è:
\begin{prototype}{stdio.h}{char *tempnam(const char *dir, const char *pfx)}
esistente.
Per evitare di dovere effettuare a mano tutti questi controlli, lo standard
-POSIX definisce la funzione \funcd{tempfile}, il cui prototipo è:
+POSIX definisce la funzione \funcd{tmpfile}, il cui prototipo è:
\begin{prototype}{stdio.h}{FILE *tmpfile (void)}
Restituisce un file temporaneo aperto in lettura/scrittura.
\end{prototype}
La funzione prende come argomento \param{times} una struttura
-\struct{utimebuf}, la cui definizione è riportata in
+\struct{utimbuf}, la cui definizione è riportata in
fig.~\ref{fig:struct_utimebuf}, con la quale si possono specificare i nuovi
valori che si vogliono impostare per tempi.
\centering
\includegraphics[width=6cm]{img/fileperm}
\caption{Lo schema dei bit utilizzati per specificare i permessi di un file
- contenuti nel campo \var{st\_mode} di \struct{fstat}.}
+ contenuti nel campo \var{st\_mode} di \struct{stat}.}
\label{fig:file_perm_bit}
\end{figure}
\begin{itemize*}
\item se il relativo\footnote{per relativo si intende il bit di user-read se
il processo vuole accedere in scrittura, quello di user-write per
- l'accesso in scrittura, etc.} bit dei permessi d'accesso dell'utente è
+ l'accesso in scrittura, ecc.} bit dei permessi d'accesso dell'utente è
impostato, l'accesso è consentito
\item altrimenti l'accesso è negato
\end{itemize*}