Piccole correzioni.
[gapil.git] / errors.tex
index 434decae7c7d7acb788f063c15e0eef4b47962a1..885c94a63066b235c0b9be430c193fa14be3fd08 100644 (file)
@@ -1,9 +1,9 @@
 %% errors.tex
 %%
 %% errors.tex
 %%
-%% Copyright (C) 2000-2002 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2006 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
 %% 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 "Prefazione",
+%% Free Software Foundation; with the Invariant Sections being "Un preambolo",
 %% with no Front-Cover Texts, and with no Back-Cover Texts.  A copy of the
 %% license is included in the section entitled "GNU Free Documentation
 %% License".
 %% with no Front-Cover Texts, and with no Back-Cover Texts.  A copy of the
 %% license is included in the section entitled "GNU Free Documentation
 %% License".
@@ -23,7 +23,7 @@ I codici di errore sono riportati come costanti di tipo \ctyp{int}, i valori
 delle costanti sono definiti da macro di preprocessore nel file citato, e
 possono variare da architettura a architettura; è pertanto necessario
 riferirsi ad essi tramite i nomi simbolici. Le funzioni \func{perror} e
 delle costanti sono definiti da macro di preprocessore nel file citato, e
 possono variare da architettura a architettura; è pertanto necessario
 riferirsi ad essi tramite i nomi simbolici. Le funzioni \func{perror} e
-\func{strerror} (vedi \secref{sec:sys_strerror}) possono essere usate per
+\func{strerror} (vedi sez.~\ref{sec:sys_strerror}) possono essere usate per
 ottenere dei messaggi di errore più espliciti.
 
 
 ottenere dei messaggi di errore più espliciti.
 
 
@@ -38,41 +38,43 @@ gestione dei file.
 \item \errcode{EPERM} \textit{Operation not permitted}. L'operazione non è
   permessa: solo il proprietario del file o un processo con sufficienti
   privilegi può eseguire l'operazione.
 \item \errcode{EPERM} \textit{Operation not permitted}. L'operazione non è
   permessa: solo il proprietario del file o un processo con sufficienti
   privilegi può eseguire l'operazione.
-\item \errcode{ENOENT} \textit{No such file or directory}. Il file indicato dal
-  pathname non esiste: o una delle componenti non esiste o il pathname
-  contiene un link simbolico spezzato. Errore tipico di un riferimento ad un
-  file che si suppone erroneamente essere esistente.
+\item \errcode{ENOENT} \textit{No such file or directory}. Il file indicato
+  dal \itindex{pathname}\textit{pathname} non esiste: o una delle
+  componenti non esiste o il \textit{pathname} contiene un link simbolico
+  spezzato.  Errore tipico di un riferimento ad un file che si suppone
+  erroneamente essere esistente.
 \item \errcode{EIO} \textit{Input/output error}. Errore di input/output: usato
   per riportare errori hardware in lettura/scrittura su un dispositivo.
 \item \errcode{EIO} \textit{Input/output error}. Errore di input/output: usato
   per riportare errori hardware in lettura/scrittura su un dispositivo.
-\item \errcode{ENXIO} \textit{No such device or address}. Device inesistente: il
-  sistema ha tentato di usare un dispositivo attraverso il file specificato,
-  ma non lo ha trovato. Può significare che il file di dispositivo non è
-  corretto, che il modulo relativo non è stato caricato nel kernel, o che il
-  dispositivo è fisicamente assente o non funzionante.
+\item \errcode{ENXIO} \textit{No such device or address}. Dispositivo
+  inesistente: il sistema ha tentato di usare un dispositivo attraverso il
+  file specificato, ma non lo ha trovato. Può significare che il file di
+  dispositivo non è corretto, che il modulo relativo non è stato caricato nel
+  kernel, o che il dispositivo è fisicamente assente o non funzionante.
 \item \errcode{ENOEXEC} \textit{Invalid executable file format}. Il file non ha
   un formato eseguibile, è un errore riscontrato dalle funzioni \func{exec}.
 \item \errcode{EBADF} \textit{Bad file descriptor}. File descriptor non valido:
   si è usato un file descriptor inesistente, o aperto in sola lettura per
   scrivere, o viceversa, o si è cercato di eseguire un'operazione non
   consentita per quel tipo di file descriptor.
 \item \errcode{ENOEXEC} \textit{Invalid executable file format}. Il file non ha
   un formato eseguibile, è un errore riscontrato dalle funzioni \func{exec}.
 \item \errcode{EBADF} \textit{Bad file descriptor}. File descriptor non valido:
   si è usato un file descriptor inesistente, o aperto in sola lettura per
   scrivere, o viceversa, o si è cercato di eseguire un'operazione non
   consentita per quel tipo di file descriptor.
-\item \errcode{EACCESS} \textit{Permission denied}. Permesso negato; l'accesso
+\item \errcode{EACCES} \textit{Permission denied}. Permesso negato; l'accesso
   al file non è consentito: i permessi del file o della directory non
   consentono l'operazione.
 \item \errcode{ELOOP} \textit{Too many symbolic links encountered}. Ci sono
   al file non è consentito: i permessi del file o della directory non
   consentono l'operazione.
 \item \errcode{ELOOP} \textit{Too many symbolic links encountered}. Ci sono
-  troppi link simbolici nella risoluzione di un pathname.  
+  troppi link simbolici nella risoluzione di un
+  \itindex{pathname}\textit{pathname}.
 \item \errcode{ENAMETOOLONG} \textit{File name too long}. Si è indicato un
 \item \errcode{ENAMETOOLONG} \textit{File name too long}. Si è indicato un
-  pathname troppo lungo.
-\item \errcode{ENOTBLK} \textit{Block device required}. Si è specificato un file
-  che non è un \textit{block device} in un contesto in cui era necessario
+  \itindex{pathname}\textit{pathname} troppo lungo.
+\item \errcode{ENOTBLK} \textit{Block device required}. Si è specificato un
+  file che non è un \textit{block device} in un contesto in cui era necessario
   specificare un \textit{block device} (ad esempio si è tentato di montare un
   file ordinario).
 \item \errcode{EEXIST} \textit{File exists}. Si è specificato un file esistente
   in un contesto in cui ha senso solo specificare un nuovo file.
   specificare un \textit{block device} (ad esempio si è tentato di montare un
   file ordinario).
 \item \errcode{EEXIST} \textit{File exists}. Si è specificato un file esistente
   in un contesto in cui ha senso solo specificare un nuovo file.
-\item \errcode{EBUSY} \textit{Resource busy}. Una risorsa di sistema che non può
-  essere condivisa è occupata. Ad esempio si è tentato di cancellare la
-  directory su cui si è montato un filesystem. 
-\item \errcode{EXDEV} \textit{Cross-device link}. Si è tentato di creare un link
-  diretto che attraversa due filesystem differenti.
+\item \errcode{EBUSY} \textit{Resource busy}. Una risorsa di sistema che non
+  può essere condivisa è occupata. Ad esempio si è tentato di cancellare la
+  directory su cui si è montato un filesystem.
+\item \errcode{EXDEV} \textit{Cross-device link}. Si è tentato di creare un
+  link diretto che attraversa due filesystem differenti.
 \item \errcode{ENODEV} \textit{No such device}. Si è indicato un tipo di device
   sbagliato ad una funzione che ne richiede uno specifico.
 \item \errcode{ENOTDIR} \textit{Not a directory}. Si è specificato un file che
 \item \errcode{ENODEV} \textit{No such device}. Si è indicato un tipo di device
   sbagliato ad una funzione che ne richiede uno specifico.
 \item \errcode{ENOTDIR} \textit{Not a directory}. Si è specificato un file che
@@ -91,8 +93,8 @@ gestione dei file.
   controllo relativa ad un terminale su un file che non lo è.
 \item \errcode{ETXTBSY} \textit{Text file busy}. Si è cercato di eseguire un
   file che è aperto in scrittura, o scrivere un file che è in esecuzione. 
   controllo relativa ad un terminale su un file che non lo è.
 \item \errcode{ETXTBSY} \textit{Text file busy}. Si è cercato di eseguire un
   file che è aperto in scrittura, o scrivere un file che è in esecuzione. 
-\item \errcode{EFBIG} \textit{File too big}. Si è ecceduto il limite imposto dal
-  sistema sulla dimensione massima che un file può avere.
+\item \errcode{EFBIG} \textit{File too big}. Si è ecceduto il limite imposto
+  dal sistema sulla dimensione massima che un file può avere.
 \item \errcode{ENOSPC} \textit{No space left on device}. la directory in cui si
   vuole creare il link non ha spazio per ulteriori voci.
 \item \errcode{ESPIPE} \textit{Invalid seek operation}. 
 \item \errcode{ENOSPC} \textit{No space left on device}. la directory in cui si
   vuole creare il link non ha spazio per ulteriori voci.
 \item \errcode{ESPIPE} \textit{Invalid seek operation}. 
@@ -100,7 +102,7 @@ gestione dei file.
   filesystem read-only.
 \item \errcode{EMLINK} \textit{Too many links}. Ci sono troppi link al file (il
    numero massimo è specificato dalla variabile \const{LINK\_MAX}, vedi
   filesystem read-only.
 \item \errcode{EMLINK} \textit{Too many links}. Ci sono troppi link al file (il
    numero massimo è specificato dalla variabile \const{LINK\_MAX}, vedi
-  \secref{sec:sys_limits}).
+  sez.~\ref{sec:sys_limits}).
 \item \errcode{EPIPE} \textit{Broken pipe}. Non c'è un processo che stia
   leggendo l'altro capo della pipe. Ogni funzione che restituisce questo
   errore genera anche un segnale \const{SIGPIPE}, la cui azione predefinita è
 \item \errcode{EPIPE} \textit{Broken pipe}. Non c'è un processo che stia
   leggendo l'altro capo della pipe. Ogni funzione che restituisce questo
   errore genera anche un segnale \const{SIGPIPE}, la cui azione predefinita è
@@ -121,12 +123,13 @@ gestione dei file.
   montare via NFS un filesystem remoto con un nome  che già specifica un
   filesystem montato via NFS. 
 \item \errcode{ENOLCK} \textit{No locks available}. È usato dalle utilità per
   montare via NFS un filesystem remoto con un nome  che già specifica un
   filesystem montato via NFS. 
 \item \errcode{ENOLCK} \textit{No locks available}. È usato dalle utilità per
-  la gestione del file lock; non viene generato da un sistema GNU, ma può
+  la gestione del file locking; non viene generato da un sistema GNU, ma può
   risultare da un'operazione su un server NFS di un altro sistema.
   risultare da un'operazione su un server NFS di un altro sistema.
-\item \errcode{EFTYPE} \textit{Inappropriate file type or format}. Il file è di
-  tipo sbagliato rispetto all'operazione richiesta o un file di dati ha un
+\item \errcode{EFTYPE} \textit{Inappropriate file type or format}. Il file è
+  di tipo sbagliato rispetto all'operazione richiesta o un file di dati ha un
   formato sbagliato. Alcuni sistemi restituiscono questo errore quando si
   formato sbagliato. Alcuni sistemi restituiscono questo errore quando si
-  cerca di impostare lo \textit{sticky bit} su un file che non è una directory.
+  cerca di impostare lo \itindex{sticky~bit} \textit{sticky bit} su un file che
+  non è una directory.
 \end{description}
 
 
 \end{description}
 
 
@@ -149,7 +152,8 @@ gestione dei processi.
   processo figlio. Viene rilevato dalle funzioni per la gestione dei processi
   figli. 
 %\item \errcode{EPROCLIM} \textit{}.  Il limite dell'utente per nuovi processi
   processo figlio. Viene rilevato dalle funzioni per la gestione dei processi
   figli. 
 %\item \errcode{EPROCLIM} \textit{}.  Il limite dell'utente per nuovi processi
-%  sarà ecceduto alla prossima \func{fork}. (non credo esista in linux)
+%  sarà ecceduto alla prossima \func{fork}. (non credo esista in Linux)
+% TODO verificare EPROCLIM
 \end{description}
 
 
 \end{description}
 
 
@@ -191,11 +195,12 @@ gestione dei socket e delle connessioni di rete.
   Famiglia di indirizzi non supportata. La famiglia di indirizzi richiesta non
   è supportata, o è inconsistente con il protocollo usato dal socket.
 \item \errcode{EADDRINUSE} \textit{Address already in use}. L'indirizzo del
   Famiglia di indirizzi non supportata. La famiglia di indirizzi richiesta non
   è supportata, o è inconsistente con il protocollo usato dal socket.
 \item \errcode{EADDRINUSE} \textit{Address already in use}. L'indirizzo del
-  socket richiesto è gia utilizzato (ad esempio si è richiesto il \func{bind}
-  per una porta già in uso).
-\item \errcode{EADDRNOTAVAIL} \textit{Cannot assign requested address}.
-  L'indirizzo richiesto non è disponibile (ad esempio si è cercato di dare al
-  socket un nome che non corrisponde al nome della stazione locale).
+  socket richiesto è già utilizzato (ad esempio si è eseguita \func{bind}
+  su una porta già in uso).
+\item \errcode{EADDRNOTAVAIL} \textit{Cannot assign requested
+    address}.  L'indirizzo richiesto non è disponibile (ad esempio si
+  è cercato di dare al socket un nome che non corrisponde al nome
+  della stazione locale), o l'interfaccia richiesta non esiste.
 \item \errcode{ENETDOWN} \textit{Network is down}. L'operazione sul socket è
   fallita perché la rete è sconnessa.
 \item \errcode{ENETUNREACH} \textit{Network is unreachable}. L'operazione è
 \item \errcode{ENETDOWN} \textit{Network is down}. L'operazione sul socket è
   fallita perché la rete è sconnessa.
 \item \errcode{ENETUNREACH} \textit{Network is unreachable}. L'operazione è
@@ -215,7 +220,7 @@ gestione dei socket e delle connessioni di rete.
   caso di operazioni sulla rete si può ottenere questo errore invece
   dell'altro.
 \item \errcode{EISCONN} \textit{Transport endpoint is already connected}. Si è
   caso di operazioni sulla rete si può ottenere questo errore invece
   dell'altro.
 \item \errcode{EISCONN} \textit{Transport endpoint is already connected}. Si è
-  tentato di connettere un socket che è gia connesso.
+  tentato di connettere un socket che è già connesso.
 \item \errcode{ENOTCONN} \textit{Transport endpoint is not connected}. Il
   socket non è connesso a niente. Si ottiene questo errore quando si cerca di
   trasmettere dati su un socket senza avere specificato in precedenza la loro
 \item \errcode{ENOTCONN} \textit{Transport endpoint is not connected}. Il
   socket non è connesso a niente. Si ottiene questo errore quando si cerca di
   trasmettere dati su un socket senza avere specificato in precedenza la loro
@@ -229,7 +234,7 @@ gestione dei socket e delle connessioni di rete.
     shutdown}. Il socket su cui si cerca di inviare dei dati ha avuto uno
   shutdown.
 \item \errcode{ETOOMANYREFS} \textit{Too many references: cannot splice}. La
     shutdown}. Il socket su cui si cerca di inviare dei dati ha avuto uno
   shutdown.
 \item \errcode{ETOOMANYREFS} \textit{Too many references: cannot splice}. La
-  glibc dice ???
+  \acr{glibc} dice ???
 \item \errcode{ETIMEDOUT} \textit{Connection timed out}. Un'operazione sul
   socket non ha avuto risposta entro il periodo di timeout.
 \item \errcode{ECONNREFUSED} \textit{Connection refused}. Un host remoto ha
 \item \errcode{ETIMEDOUT} \textit{Connection timed out}. Un'operazione sul
   socket non ha avuto risposta entro il periodo di timeout.
 \item \errcode{ECONNREFUSED} \textit{Connection refused}. Un host remoto ha
@@ -255,10 +260,10 @@ specificati nelle sezioni precedenti.
 \item \errcode{ENOMEM} \textit{No memory available}. Il kernel non è in grado
   di allocare ulteriore memoria per completare l'operazione richiesta.
 \item \errcode{EDEADLK} \textit{Deadlock avoided}. L'allocazione di una
 \item \errcode{ENOMEM} \textit{No memory available}. Il kernel non è in grado
   di allocare ulteriore memoria per completare l'operazione richiesta.
 \item \errcode{EDEADLK} \textit{Deadlock avoided}. L'allocazione di una
-  risorsa avrebbe causato un \textit{deadlock}\index{deadlock}. Non sempre il
-  sistema è in grado di riconoscere queste situazioni, nel qual caso si
-  avrebbe in blocco.
-\item \errcode{EFAULT} \textit{Bad address}. Una stringa passata come parametro
+  risorsa avrebbe causato un \textit{deadlock}\itindex{deadlock}. Non sempre
+  il sistema è in grado di riconoscere queste situazioni, nel qual caso si
+  avrebbe il blocco.
+\item \errcode{EFAULT} \textit{Bad address}. Una stringa passata come argomento
   è fuori dello spazio di indirizzi del processo, in genere questa situazione
   provoca l'emissione di un segnale di \textit{segment violation}
   (\const{SIGSEGV}).
   è fuori dello spazio di indirizzi del processo, in genere questa situazione
   provoca l'emissione di un segnale di \textit{segment violation}
   (\const{SIGSEGV}).
@@ -308,12 +313,12 @@ specificati nelle sezioni precedenti.
   abilitato l'opportuno supporto nel kernel; nel caso di Linux questo può
   voler dire anche che un modulo necessario non è stato caricato nel sistema.
 \item \errcode{ENOTSUP} \textit{Not supported}. Una funzione ritorna questo
   abilitato l'opportuno supporto nel kernel; nel caso di Linux questo può
   voler dire anche che un modulo necessario non è stato caricato nel sistema.
 \item \errcode{ENOTSUP} \textit{Not supported}. Una funzione ritorna questo
-  errore quando i parametri sono validi ma l'operazione richiesta non è
+  errore quando gli argomenti sono validi ma l'operazione richiesta non è
   supportata. Questo significa che la funzione non implementa quel particolare
   comando o opzione o che, in caso di oggetti specifici (file descriptor o
   altro) non è in grado di supportare i parametri richiesti.
 \item \errcode{EILSEQ} \textit{Illegal byte sequence}. Nella decodifica di un
   supportata. Questo significa che la funzione non implementa quel particolare
   comando o opzione o che, in caso di oggetti specifici (file descriptor o
   altro) non è in grado di supportare i parametri richiesti.
 \item \errcode{EILSEQ} \textit{Illegal byte sequence}. Nella decodifica di un
-  carattere multibyte si è avuta una sequenza errata o incompleta o si è
+  carattere esteso si è avuta una sequenza errata o incompleta o si è
   specificato un valore non valido.
 \end{description}
 
   specificato un valore non valido.
 \end{description}
 
@@ -338,11 +343,16 @@ specificati nelle sezioni precedenti.
 \item \errcode{EMULTIHOP} \textit{Multihop attempted}. 
 \item \errcode{ENODATA} \textit{No data available}. 
 \item \errcode{ENOLINK} \textit{Link has been severed}. 
 \item \errcode{EMULTIHOP} \textit{Multihop attempted}. 
 \item \errcode{ENODATA} \textit{No data available}. 
 \item \errcode{ENOLINK} \textit{Link has been severed}. 
-\item \errcode{ENOMSG} \textit{No message of desired type}. 
+\item \errcode{ENOMSG} \textit{No message of desired type}. Indica che una
+  coda di messaggi del \textit{SysV IPC} non è presente nessun messaggio del
+  tipo desiderato.
 \item \errcode{ENOSR} \textit{Out of streams resources}. 
 \item \errcode{ENOSTR} \textit{Device not a stream}. 
 \item \errcode{ENOSR} \textit{Out of streams resources}. 
 \item \errcode{ENOSTR} \textit{Device not a stream}. 
-\item \errcode{EOVERFLOW} \textit{Value too large for defined data type}. 
-\item \errcode{EPROTO} \textit{Protocol error}. 
+\item \errcode{EOVERFLOW} \textit{Value too large for defined data type}. Si è
+  chiesta la lettura di un dato dal \textit{SysV IPC} con \const{IPC\_STAT} ma
+  il valore eccede la dimensione usata nel buffer di lettura.
+\item \errcode{EPROTO} \textit{Protocol error}. C'è stato un errore nel 
+  protocollo di rete usato dal socket.
 \item \errcode{ETIME} \textit{Timer expired}. 
 \end{description}
 
 \item \errcode{ETIME} \textit{Timer expired}. 
 \end{description}
 
@@ -350,54 +360,55 @@ specificati nelle sezioni precedenti.
 
 
 
 
 
 
-\section{Errori del kernel}
-\label{sec:err_kernel_err}
+\section{Errori del kernel}
+\label{sec:err_kernel_err}
 
 
-In questa sezione sono raccolti i codici di errore interni del kernel. Non
-sono usati dalle funzioni di libreria, ma vengono riportati da alcune system
-call (TODO verificare i dettagli, eventualmente cassare).
+% In questa sezione sono raccolti i codici di errore interni del kernel. Non
+% sono usati dalle funzioni di libreria, ma vengono riportati da alcune system
+% call 
+% TODO verificare i dettagli degli errori del kernel, eventualmente cassare.
 
 
-\begin{description}
-\item \errcode{ERESTART} \textit{Interrupted system call should be restarted}. 
-\item \errcode{ECHRNG} \textit{Channel number out of range}. 
-\item \errcode{EL2NSYNC} \textit{Level 2 not synchronized}. 
-\item \errcode{EL3HLT} \textit{Level 3 halted}. 
-\item \errcode{EL3RST} \textit{Level 3 reset}. 
-\item \errcode{ELNRNG} \textit{Link number out of range}. 
-\item \errcode{EUNATCH} \textit{Protocol driver not attached}. 
-\item \errcode{ENOCSI} \textit{No CSI structure available}. 
-\item \errcode{EL2HLT} \textit{Level 2 halted}. 
-\item \errcode{EBADE} \textit{Invalid exchange}. 
-\item \errcode{EBADR} \textit{Invalid request descriptor}. 
-\item \errcode{EXFULL} \textit{Exchange full}. 
-\item \errcode{ENOANO} \textit{No anode}. 
-\item \errcode{EBADRQC} \textit{Invalid request code}. 
-\item \errcode{EBADSLT} \textit{Invalid slot}. 
-\item \errcode{EDEADLOCK} Identico a \errcode{EDEADLK}. 
-\item \errcode{EBFONT} \textit{Bad font file format}. 
-\item \errcode{ENONET} \textit{Machine is not on the network}. 
-\item \errcode{ENOPKG} \textit{Package not installed}. 
-\item \errcode{EADV} \textit{Advertise error}. 
-\item \errcode{ESRMNT} \textit{Srmount error}. 
-\item \errcode{ECOMM} \textit{Communication error on send}. 
-\item \errcode{EDOTDOT} \textit{RFS specific error}. 
-\item \errcode{ENOTUNIQ} \textit{Name not unique on network}. 
-\item \errcode{EBADFD} \textit{File descriptor in bad state}. 
-\item \errcode{EREMCHG} \textit{Remote address changed}. 
-\item \errcode{ELIBACC} \textit{Can not access a needed shared library}. 
-\item \errcode{ELIBBAD} \textit{Accessing a corrupted shared library}. 
-\item \errcode{ELIBSCN} \textit{.lib section in a.out corrupted}. 
-\item \errcode{ELIBMAX} \textit{Attempting to link in too many shared
-    libraries}.
-\item \errcode{ELIBEXEC} \textit{Cannot exec a shared library directly}. 
-\item \errcode{ESTRPIPE} \textit{Streams pipe error}. 
-\item \errcode{EUCLEAN} \textit{Structure needs cleaning}. 
-\item \errcode{ENAVAIL} \textit{No XENIX semaphores available}. 
-\item \errcode{EISNAM} \textit{Is a named type file}. 
-\item \errcode{EREMOTEIO} \textit{Remote I/O error}. 
-\item \errcode{ENOMEDIUM} \textit{No medium found}. 
-\item \errcode{EMEDIUMTYPE} \textit{Wrong medium type}. 
-\end{description}
+\begin{description}
+\item \errcode{ERESTART} \textit{Interrupted system call should be restarted}. 
+\item \errcode{ECHRNG} \textit{Channel number out of range}. 
+\item \errcode{EL2NSYNC} \textit{Level 2 not synchronized}. 
+\item \errcode{EL3HLT} \textit{Level 3 halted}. 
+\item \errcode{EL3RST} \textit{Level 3 reset}. 
+\item \errcode{ELNRNG} \textit{Link number out of range}. 
+\item \errcode{EUNATCH} \textit{Protocol driver not attached}. 
+\item \errcode{ENOCSI} \textit{No CSI structure available}. 
+\item \errcode{EL2HLT} \textit{Level 2 halted}. 
+\item \errcode{EBADE} \textit{Invalid exchange}. 
+\item \errcode{EBADR} \textit{Invalid request descriptor}. 
+\item \errcode{EXFULL} \textit{Exchange full}. 
+\item \errcode{ENOANO} \textit{No anode}. 
+\item \errcode{EBADRQC} \textit{Invalid request code}. 
+\item \errcode{EBADSLT} \textit{Invalid slot}. 
+\item \errcode{EDEADLOCK} Identico a \errcode{EDEADLK}. 
+\item \errcode{EBFONT} \textit{Bad font file format}. 
+\item \errcode{ENONET} \textit{Machine is not on the network}. 
+\item \errcode{ENOPKG} \textit{Package not installed}. 
+\item \errcode{EADV} \textit{Advertise error}. 
+\item \errcode{ESRMNT} \textit{Srmount error}. 
+\item \errcode{ECOMM} \textit{Communication error on send}. 
+\item \errcode{EDOTDOT} \textit{RFS specific error}. 
+\item \errcode{ENOTUNIQ} \textit{Name not unique on network}. 
+\item \errcode{EBADFD} \textit{File descriptor in bad state}. 
+\item \errcode{EREMCHG} \textit{Remote address changed}. 
+\item \errcode{ELIBACC} \textit{Can not access a needed shared library}. 
+\item \errcode{ELIBBAD} \textit{Accessing a corrupted shared library}. 
+\item \errcode{ELIBSCN} \textit{.lib section in a.out corrupted}. 
+\item \errcode{ELIBMAX} \textit{Attempting to link in too many shared
+    libraries}.
+\item \errcode{ELIBEXEC} \textit{Cannot exec a shared library directly}. 
+\item \errcode{ESTRPIPE} \textit{Streams pipe error}. 
+\item \errcode{EUCLEAN} \textit{Structure needs cleaning}. 
+\item \errcode{ENAVAIL} \textit{No XENIX semaphores available}. 
+\item \errcode{EISNAM} \textit{Is a named type file}. 
+\item \errcode{EREMOTEIO} \textit{Remote I/O error}. 
+\item \errcode{ENOMEDIUM} \textit{No medium found}. 
+\item \errcode{EMEDIUMTYPE} \textit{Wrong medium type}. 
+\end{description}
 
 
 
 
 
 
@@ -405,3 +416,34 @@ call (TODO verificare i dettagli, eventualmente cassare).
 %%% mode: latex
 %%% TeX-master: "gapil"
 %%% End: 
 %%% mode: latex
 %%% TeX-master: "gapil"
 %%% End: 
+
+% LocalWords:  header errno perror int strerror sez EPERM Operation not ENOENT
+% LocalWords:  permitted such pathname EIO error ENXIO device address kernel Is
+% LocalWords:  ENOEXEC Invalid executable format exec EBADF Bad descriptor Too
+% LocalWords:  EACCES Permission denied ELOOP many symbolic links encountered
+% LocalWords:  ENAMETOOLONG name too long ENOTBLK Block required block EEXIST
+% LocalWords:  exists EBUSY Resource busy filesystem EXDEV ENODEV ENOTDIR files
+% LocalWords:  EISDIR EMFILE ulimit ENFILE table overflow ENOTTY ETXTBSY Text
+% LocalWords:  EFBIG big ENOSPC left ESPIPE seek operation EROFS Read only read
+% LocalWords:  system EMLINK EPIPE Broken SIGPIPE ENOTEMPTY empty EUSERS users
+% LocalWords:  EDQUOT exceeded ESTALE NFS handle EREMOTE Object is ENOLCK locks
+% LocalWords:  available locking EFTYPE type sticky ESRCH process matches the
+% LocalWords:  specified pid Argument list POSIX ECHILD There child processes
+% LocalWords:  socket ENOTSOCK EMSGSIZE Message EPROTOTYPE Protocol wrong for
+% LocalWords:  ENOPROTOOPT EPROTONOSUPPORT supported ESOCKTNOSUPPORT EOPNOTSUPP
+% LocalWords:  transport endpoint EPFNOSUPPORT family EAFNOSUPPORT protocol of
+% LocalWords:  EADDRINUSE already bind EADDRNOTAVAIL Cannot assign requested to
+% LocalWords:  ENETDOWN ENETUNREACH unreachable ENETRESET dropped connection
+% LocalWords:  because reset l'host ECONNABORTED caused abort ECONNRESET peer
+% LocalWords:  dell'host ENOBUFS ENOMEM EISCONN connected ENOTCONN UDP send now
+% LocalWords:  EDESTADDRREQ Destination ESHUTDOWN after shutdown ETOOMANYREFS
+% LocalWords:  references cannot splice glibc ETIMEDOUT timed ECONNREFUSED host
+% LocalWords:  refused EHOSTDOWN EHOSTUNREACH route EINTR Interrupted function
+% LocalWords:  call memory EDEADLK Deadlock avoided deadlock EFAULT segment IPC
+% LocalWords:  violation SIGSEGV EINVAL argument EDOM Domain ERANGE underflow
+% LocalWords:  EAGAIN temporarily unavailable EWOULDBLOCK select fork would has
+% LocalWords:  EINPROGRESS progress connect EALREADY ENOSYS implemented ENOTSUP
+% LocalWords:  EILSEQ Illegal sequence EBADMSG message EIDRM Identifier removed
+% LocalWords:  SysV EMULTIHOP Multihop attempted ENODATA ENOLINK been severed
+% LocalWords:  ENOMSG desired ENOSR streams resources ENOSTR stream EOVERFLOW
+% LocalWords:  Value large defined STAT EPROTO ETIME Timer expired