Correzioni varie
[gapil.git] / filedir.tex
index 650eb532daabd127cdadabcc3ec938c6c958cd2c..3d59617e72405b66df178060a0ff7ad2e783d44f 100644 (file)
@@ -83,9 +83,9 @@ principali, come risultano dalla pagina di manuale, sono le seguenti:
     numero massimo è specificato dalla variabile \const{LINK\_MAX}, vedi
     \secref{sec:sys_limits}).
   \end{errlist}
-  ed inoltre \const{EACCES}, \const{ENAMETOOLONG}, \const{ENOTDIR},
-  \const{EFAULT}, \const{ENOMEM}, \const{EROFS}, \const{ELOOP},
-  \const{ENOSPC}, \const{EIO}.}
+  ed inoltre \errval{EACCES}, \errval{ENAMETOOLONG}, \errval{ENOTDIR},
+  \errval{EFAULT}, \errval{ENOMEM}, \errval{EROFS}, \errval{ELOOP},
+  \errval{ENOSPC}, \errval{EIO}.}
 \end{prototype}
 
 La creazione di un nuovo collegamento diretto non copia il contenuto del file,
@@ -140,8 +140,9 @@ suo prototipo 
   lettura.
   \item[\errcode{EISDIR}] \var{pathname} fa riferimento a una directory.
   \end{errlist}
-  ed inoltre: \const{EACCES}, \const{EFAULT}, \const{ENOENT}, \const{ENOTDIR},
-  \const{ENOMEM}, \const{EROFS}, \const{ELOOP}, \const{EIO}.}
+  ed inoltre: \errval{EACCES}, \errval{EFAULT}, \errval{ENOENT},
+  \errval{ENOTDIR}, \errval{ENOMEM}, \errval{EROFS}, \errval{ELOOP},
+  \errval{EIO}.}
 \end{prototype}
 
 Per cancellare una voce in una directory è necessario avere il permesso di
@@ -226,8 +227,9 @@ nello stesso filesystem) si usa invece la funzione \func{rename},\footnote{la
     o \var{oldpath} è una directory e \var{newpath} esiste e non è una
     directory.
   \end{errlist} 
-  ed inoltre \const{EACCESS}, \const{EPERM}, \const{EMLINK}, \const{ENOENT},
-  \const{ENOMEM}, \const{EROFS}, \const{ELOOP} e \const{ENOSPC}.}
+  ed inoltre \errval{EACCES}, \errval{EPERM}, \errval{EMLINK},
+  \errval{ENOENT}, \errval{ENOMEM}, \errval{EROFS}, \errval{ELOOP} e
+  \errval{ENOSPC}.}
 \end{prototype}
 
 Il comportamento della funzione è diverso a seconda che si voglia rinominare
@@ -303,9 +305,9 @@ specificato. La funzione che permette di creare un nuovo link simbolico 
   \item[\errcode{EROFS}] \param{newpath} è su un filesystem montato in sola
     lettura.
   \end{errlist}
-  ed inoltre \const{EFAULT}, \const{EACCES}, \const{ENAMETOOLONG},
-  \const{ENOTDIR}, \const{ENOMEM}, \const{ELOOP}, \const{ENOSPC} e
-  \const{EIO}.}
+  ed inoltre \errval{EFAULT}, \errval{EACCES}, \errval{ENAMETOOLONG},
+  \errval{ENOTDIR}, \errval{ENOMEM}, \errval{ELOOP}, \errval{ENOSPC} e
+  \errval{EIO}.}
 \end{prototype}
 
 Si tenga presente che la funzione non effettua nessun controllo sull'esistenza
@@ -378,9 +380,9 @@ la funzione \func{readlink}, il cui prototipo 
   \item[\errcode{EINVAL}] \param{path} non è un link simbolico o \param{size}
     non è positiva.
   \end{errlist}
-  ed inoltre \const{ENOTDIR}, \const{ENAMETOOLONG}, \const{ENOENT},
-  \const{EACCES}, \const{ELOOP}, \const{EIO}, \const{EFAULT} e
-  \const{ENOMEM}.}
+  ed inoltre \errval{ENOTDIR}, \errval{ENAMETOOLONG}, \errval{ENOENT},
+  \errval{EACCES}, \errval{ELOOP}, \errval{EIO}, \errval{EFAULT} e
+  \errval{ENOMEM}.}
 \end{prototype}
 
 La funzione apre il link simbolico, ne legge il contenuto, lo scrive nel
@@ -456,7 +458,7 @@ accedere ai tipi usati da queste funzioni si deve includere il file
   \begin{errlist}
   \item[\errcode{EEXIST}] Un file (o una directory) con quel nome esiste di
     già.
-  \item[\errcode{EACCESS}] 
+  \item[\errcode{EACCES}] 
     Non c'è il permesso di scrittura per la directory in cui si vuole inserire
     la nuova directory.
   \item[\errcode{EMLINK}] La directory in cui si vuole creare la nuova
@@ -468,9 +470,9 @@ accedere ai tipi usati da queste funzioni si deve includere il file
   \item[\errcode{ENOSPC}] Non c'è abbastanza spazio sul file system per creare
     la nuova directory o si è esaurita la quota disco dell'utente.
   \end{errlist}
-  ed inoltre anche \const{EPERM}, \const{EFAULT}, \const{ENAMETOOLONG},
-  \const{ENOENT}, \const{ENOTDIR}, \const{ENOMEM}, \const{ELOOP},
-  \const{EROFS}.}
+  ed inoltre anche \errval{EPERM}, \errval{EFAULT}, \errval{ENAMETOOLONG},
+  \errval{ENOENT}, \errval{ENOTDIR}, \errval{ENOMEM}, \errval{ELOOP},
+  \errval{EROFS}.}
 \end{prototype}
 
 La funzione crea una nuova directory vuota (che contiene solo le due voci
@@ -495,7 +497,7 @@ suo prototipo 
     directory, oppure la directory che contiene \var{dirname} ha lo sticky bit
     impostato e l'userid effettivo del processo non corrisponde al
     proprietario della directory.
-  \item[\errcode{EACCESS}] Non c'è il permesso di scrittura per la directory
+  \item[\errcode{EACCES}] Non c'è il permesso di scrittura per la directory
     che contiene la directory che si vuole cancellare, o non c'è il permesso
     di attraversare (esecuzione) una delle directory specificate in
     \var{dirname}.
@@ -503,8 +505,8 @@ suo prototipo 
     radice di qualche processo.
   \item[\errcode{ENOTEMPTY}] La directory non è vuota.
   \end{errlist}
-  ed inoltre anche \const{EFAULT}, \const{ENAMETOOLONG}, \const{ENOENT},
-  \const{ENOTDIR}, \const{ENOMEM}, \const{ELOOP}, \const{EROFS}.}
+  ed inoltre anche \errval{EFAULT}, \errval{ENAMETOOLONG}, \errval{ENOENT},
+  \errval{ENOTDIR}, \errval{ENOMEM}, \errval{ELOOP}, \errval{EROFS}.}
 \end{prototype}
 
 La modalità con cui avviene la cancellazione è analoga a quella di
@@ -546,9 +548,9 @@ di queste funzioni 
     o un dipositivo.
   \item[\errcode{EEXIST}] \param{pathname} esiste già o è un link simbolico.
   \end{errlist}
-  ed inoltre anche \const{EFAULT}, \const{EACCESS}, \const{ENAMETOOLONG},
-  \const{ENOENT}, \const{ENOTDIR}, \const{ENOMEM}, \const{ELOOP},
-  \const{ENOSPC}, \const{EROFS}.}
+  ed inoltre anche \errval{EFAULT}, \errval{EACCES}, \errval{ENAMETOOLONG},
+  \errval{ENOENT}, \errval{ENOTDIR}, \errval{ENOMEM}, \errval{ELOOP},
+  \errval{ENOSPC}, \errval{EROFS}.}
 \end{functions}
 
 La funzione permette di creare un file speciale, ma si può usare anche per
@@ -586,9 +588,9 @@ Per creare una fifo (un file speciale, su cui torneremo in dettaglio in
   \funcdecl{int mkfifo(const char *pathname, mode\_t mode)} Crea una fifo.
   
   \bodydesc{La funzione restituisce zero in caso di successo e -1 per un
-    errore, nel qual caso \var{errno} assumerà i valori \const{EACCESS},
-    \const{EEXIST}, \const{ENAMETOOLONG}, \const{ENOENT}, \const{ENOSPC},
-    \const{ENOTDIR} e \const{EROFS}.}
+    errore, nel qual caso \var{errno} assumerà i valori \errval{EACCES},
+    \errval{EEXIST}, \errval{ENAMETOOLONG}, \errval{ENOENT}, \errval{ENOSPC},
+    \errval{ENOTDIR} e \errval{EROFS}.}
 \end{functions}
 \noindent come per \func{mknod} il file \param{pathname} non deve esistere
 (neanche come link simbolico); al solito i permessi specificati da
@@ -649,7 +651,7 @@ apposita funzione di libreria,  \func{getcwd}, il cui prototipo 
     è nullo.
   \item[\errcode{ERANGE}] L'argomento \var{size} è più piccolo della
     lunghezza del pathname. 
-  \item[\errcode{EACCESS}] Manca il permesso di lettura o di ricerca su uno dei
+  \item[\errcode{EACCES}] Manca il permesso di lettura o di ricerca su uno dei
     componenti del pathname (cioè su una delle directory superiori alla
     corrente).
   \end{errlist}}
@@ -692,11 +694,11 @@ appunto per \textit{change directory}, il suo prototipo 
     nel qual caso \var{errno} assumerà i valori:
   \begin{errlist}
   \item[\errcode{ENOTDIR}] Non si è specificata una directory.
-  \item[\errcode{EACCESS}] Manca il permesso di ricerca su uno dei componenti
+  \item[\errcode{EACCES}] Manca il permesso di ricerca su uno dei componenti
     di \param{path}.
   \end{errlist}
-  ed inoltre \const{EFAULT}, \const{ENAMETOOLONG}, \const{ENOENT},
-  \const{ENOMEM}, \const{ELOOP} e \const{EIO}.}
+  ed inoltre \errval{EFAULT}, \errval{ENAMETOOLONG}, \errval{ENOENT},
+  \errval{ENOMEM}, \errval{ELOOP} e \errval{EIO}.}
 \end{prototype}
 \noindent ed ovviamente \param{pathname} deve indicare una directory per la
 quale si hanno i permessi di accesso.
@@ -709,12 +711,12 @@ usa \func{fchdir}, il cui prototipo 
   pathname.
   
   \bodydesc{La funzione restituisce zero in caso di successo e -1 per un
-    errore, in caso di errore \var{errno} assumerà i valori \const{EBADF} o
-    \const{EACCES}.}
+    errore, in caso di errore \var{errno} assumerà i valori \errval{EBADF} o
+    \errval{EACCES}.}
 \end{prototype}
 \noindent anche in questo caso \param{fd} deve essere un file descriptor
 valido che fa riferimento ad una directory. Inoltre l'unico errore di accesso
-possibile (tutti gli altri sarebbero occorsi all'apertura di \func{fd}), è
+possibile (tutti gli altri sarebbero occorsi all'apertura di \param{fd}), è
 quello in cui il processo non ha il permesso di accesso alla directory
 specificata da \param{fd}.
 
@@ -759,7 +761,7 @@ esplicitamente, il suo prototipo 
 
   \bodydesc{La funzione ritorna il puntatore alla stringa con il nome o
   \val{NULL} in caso di fallimento, \var{errno} viene impostata a
-  \const{ENOMEM} qualora fallisca l'allocazione della stringa.}
+  \errval{ENOMEM} qualora fallisca l'allocazione della stringa.}
 \end{prototype}
 
 La funzione alloca con \code{malloc} la stringa in cui restituisce il nome,
@@ -798,8 +800,8 @@ POSIX definisce la funzione \func{tempfile}, il cui prototipo 
     \item[\errcode{EINTR}] La funzione è stata interrotta da un segnale.
     \item[\errcode{EEXIST}] Non è stato possibile generare un nome univoco.
     \end{errlist}
-    ed inoltre \const{EFAULT}, \const{EMFILE}, \const{ENFILE}, \const{ENOSPC},
-    \const{EROFS} e \const{EACCESS}.}
+    ed inoltre \errval{EFAULT}, \errval{EMFILE}, \errval{ENFILE},
+    \errval{ENOSPC}, \errval{EROFS} e \errval{EACCES}.}
 \end{prototype}
 \noindent essa restituisce direttamente uno stream già aperto (in modalità
 \code{r+b}, si veda \secref{sec:file_fopen}) e pronto per l'uso, che viene
@@ -923,9 +925,9 @@ queste funzioni sono i seguenti:
   descriptor \var{filedes}.
   
   \bodydesc{Le funzioni restituiscono 0 in caso di successo e -1 per un
-    errore, nel qual caso \var{errno} assumerà uno dei valori: \const{EBADF},
-    \const{ENOENT}, \const{ENOTDIR}, \const{ELOOP}, \const{EFAULT},
-    \const{EACCESS}, \const{ENOMEM}, \const{ENAMETOOLONG}.}
+    errore, nel qual caso \var{errno} assumerà uno dei valori: \errval{EBADF},
+    \errval{ENOENT}, \errval{ENOTDIR}, \errval{ELOOP}, \errval{EFAULT},
+    \errval{EACCES}, \errval{ENOMEM}, \errval{ENAMETOOLONG}.}
 \end{functions}
 \noindent il loro comportamento è identico, solo che operano rispettivamente
 su un file, su un link simbolico e su un file descriptor.
@@ -1128,8 +1130,8 @@ dimensione si possono usare le due funzioni \func{truncate} e
     permesso di esecuzione una delle directory del pathname. 
   \item[\errcode{ETXTBSY}] Il file è un programma in esecuzione.
   \end{errlist}
-  ed anche \const{ENOTDIR}, \const{ENAMETOOLONG}, \const{ENOENT},
-  \const{EROFS}, \const{EIO}, \const{EFAULT}, \const{ELOOP}.}
+  ed anche \errval{ENOTDIR}, \errval{ENAMETOOLONG}, \errval{ENOENT},
+  \errval{EROFS}, \errval{EIO}, \errval{EFAULT}, \errval{ELOOP}.}
 \end{functions}
 
 Se il file è più lungo della lunghezza specificata i dati in eccesso saranno
@@ -1302,7 +1304,7 @@ Cambia i tempi di ultimo accesso e modifica dell'inode specificato da
 \bodydesc{La funzione restituisce 0 in caso di successo e -1 in caso di
   errore, nel qual caso \var{errno} assumerà uno dei valori:
   \begin{errlist}
-  \item[\errcode{EACCESS}] non si ha il permesso di scrittura sul file.
+  \item[\errcode{EACCES}] non si ha il permesso di scrittura sul file.
   \item[\errcode{ENOENT}] \param{filename} non esiste.
   \end{errlist}}
 \end{prototype}
@@ -1727,8 +1729,8 @@ da \param{pathname}.
   \item[\errcode{EROFS}] si è richiesto l'accesso in scrittura per un file su
     un filesystem montato in sola lettura.
   \end{errlist}
-  ed inoltre \const{EFAULT}, \const{ENAMETOOLONG}, \const{ENOENT},
-  \const{ENOTDIR}, \const{ELOOP}, \const{EIO}.}
+  ed inoltre \errval{EFAULT}, \errval{ENAMETOOLONG}, \errval{ENOENT},
+  \errval{ENOTDIR}, \errval{ELOOP}, \errval{EIO}.}
 \end{prototype}
 
 I valori possibili per l'argomento \param{mode} sono esprimibili come
@@ -1794,9 +1796,9 @@ filename e su un file descriptor, i loro prototipi sono:
     proprietario del file o non è zero.
     \item[\errcode{EROFS}] Il file è su un filesystem in sola lettura.
   \end{errlist}
-  ed inoltre \const{EIO}; \func{chmod} restituisce anche \const{EFAULT},
-  \const{ENAMETOOLONG}, \const{ENOENT}, \const{ENOMEM}, \const{ENOTDIR},
-  \const{EACCES}, \const{ELOOP}; \func{fchmod} anche \const{EBADF}.}
+  ed inoltre \errval{EIO}; \func{chmod} restituisce anche \errval{EFAULT},
+  \errval{ENAMETOOLONG}, \errval{ENOENT}, \errval{ENOMEM}, \errval{ENOTDIR},
+  \errval{EACCES}, \errval{ELOOP}; \func{fchmod} anche \errval{EBADF}.}
 \end{functions}
 
 Entrambe le funzioni utilizzano come secondo argomento \param{mode}, una
@@ -1947,10 +1949,10 @@ sono tre e i loro prototipi sono i seguenti:
   \item[\errcode{EPERM}] L'userid effettivo non corrisponde a quello del
     proprietario del file o non è zero, o utente e gruppo non sono validi
   \end{errlist}
-  Oltre a questi entrambe restituiscono gli errori \const{EROFS} e
-  \const{EIO}; \func{chown} restituisce anche \const{EFAULT},
-  \const{ENAMETOOLONG}, \const{ENOENT}, \const{ENOMEM}, \const{ENOTDIR},
-  \const{EACCES}, \const{ELOOP}; \func{fchown} anche \const{EBADF}.}
+  Oltre a questi entrambe restituiscono gli errori \errval{EROFS} e
+  \errval{EIO}; \func{chown} restituisce anche \errval{EFAULT},
+  \errval{ENAMETOOLONG}, \errval{ENOENT}, \errval{ENOMEM}, \errval{ENOTDIR},
+  \errval{EACCES}, \errval{ELOOP}; \func{fchown} anche \errval{EBADF}.}
 \end{functions}
 
 In Linux soltanto l'amministratore può cambiare il proprietario di un file,
@@ -2108,9 +2110,9 @@ radice con la funzione \func{chroot}, il cui prototipo 
   \begin{errlist}
   \item[\errcode{EPERM}] L'userid effettivo del processo non è zero.
   \end{errlist}
-  ed inoltre \const{EFAULT}, \const{ENAMETOOLONG}, \const{ENOENT},
-  \const{ENOMEM}, \const{ENOTDIR}, \const{EACCES}, \const{ELOOP};
-  \const{EROFS} e \const{EIO}.}
+  ed inoltre \errval{EFAULT}, \errval{ENAMETOOLONG}, \errval{ENOENT},
+  \errval{ENOMEM}, \errval{ENOTDIR}, \errval{EACCES}, \errval{ELOOP};
+  \errval{EROFS} e \errval{EIO}.}
 \end{prototype}
 \noindent in questo modo la directory radice del processo diventerà
 \param{path} (che ovviamente deve esistere) ed ogni pathname assoluto sarà