From: Simone Piccardi Date: Sun, 8 Dec 2002 23:45:10 +0000 (+0000) Subject: Correzioni varie X-Git-Url: https://gapil.gnulinux.it/gitweb/?a=commitdiff_plain;h=718a0a24b34dce09e40eafc33c02ae494d100181;p=gapil.git Correzioni varie --- diff --git a/elemtcp.tex b/elemtcp.tex index e31736f..c773701 100644 --- a/elemtcp.tex +++ b/elemtcp.tex @@ -658,7 +658,7 @@ ci si porr \item[\errcode{EBADF}] il file descriptor non è valido. \item[\errcode{EINVAL}] il socket ha già un indirizzo assegnato. \item[\errcode{ENOTSOCK}] il file descriptor non è associato ad un socket. - \item[\errcode{EACCESS}] si è cercato di usare una porta riservata senza + \item[\errcode{EACCES}] si è cercato di usare una porta riservata senza sufficienti privilegi. \end{errlist}} \end{prototype} @@ -773,9 +773,9 @@ connessione con un server TCP, il prototipo della funzione \item[\errcode{EAGAIN}] non ci sono più porte locali libere. \item[\errcode{EAFNOSUPPORT}] l'indirizzo non ha una famiglia di indirizzi corretta nel relativo campo. - \item[\errcode{EACCESS, EPERM}] si è tentato di eseguire una connessione ad - un indirizzo broadcast senza che il socket fosse stato abilitato per il - broadcast. + \item[\errcode{EACCES}, \errcode{EPERM}] si è tentato di eseguire una + connessione ad un indirizzo broadcast senza che il socket fosse stato + abilitato per il broadcast. \end{errlist} altri errori possibili sono: \errval{EFAULT}, \errval{EBADF}, \errval{ENOTSOCK}, \errval{EISCONN} e \errval{EADDRINUSE}.} @@ -972,13 +972,9 @@ effettuare la comunicazione. Se non ci sono connessioni completate il processo viene messo in attesa. Il prototipo della funzione è il seguente: \begin{prototype}{sys/socket.h} {int accept(int sockfd, struct sockaddr *addr, socklen\_t *addrlen)} - Estrae la prima connessione relativa al socket \var{sockfd} - in attesa sulla coda delle connessioni complete, che associa ad nuovo socket - con le stesse caratteristiche di \var{sockfd} (restituito dalla funzione - stessa). Il socket originale non viene toccato. Nella struttura - \var{addr} e nella variabile \var{addrlen} vengono restituiti - indirizzo e relativa lunghezza del client che si è connesso. + Accetta una connessione sul socket specificato. + \bodydesc{La funzione restituisce un numero di socket descriptor positivo in caso di successo e -1 in caso di errore, nel qual caso la variabile \var{errno} viene impostata ai seguenti valori: @@ -993,9 +989,9 @@ viene messo in attesa. Il prototipo della funzione come non bloccante (vedi \secref{sec:file_noblocking}), e non ci sono connessioni in attesa di essere accettate. \item[\errcode{EPERM}] Le regole del firewall non consentono la connessione. - \item[\errcode{ENOBUFS, ENOMEM}] questo spesso significa che l'allocazione - della memoria è limitata dai limiti sui buffer dei socket, non dalla - memoria di sistema. + \item[\errcode{ENOBUFS}, \errcode{ENOMEM}] questo spesso significa che + l'allocazione della memoria è limitata dai limiti sui buffer dei socket, + non dalla memoria di sistema. \end{errlist} Inoltre possono essere restituiti gli errori di rete relativi al nuovo socket come: \errval{EMFILE}, \errval{EINVAL}, \errval{ENOSR}, @@ -1004,6 +1000,13 @@ viene messo in attesa. Il prototipo della funzione \errval{ERESTARTSYS}.} \end{prototype} +Estrae la prima connessione relativa al socket \var{sockfd} in attesa sulla +coda delle connessioni complete, che associa ad nuovo socket con le stesse +caratteristiche di \var{sockfd} (restituito dalla funzione stessa). Il socket +originale non viene toccato. Nella struttura \var{addr} e nella variabile +\var{addrlen} vengono restituiti indirizzo e relativa lunghezza del client che +si è connesso. + La funzione può essere usata solo con socket che supportino la connessione (cioè di tipo \const{SOCK\_STREAM}, \const{SOCK\_SEQPACKET} o \const{SOCK\_RDM}). Per alcuni protocolli che richiedono una conferma diff --git a/errors.tex b/errors.tex index d006491..391cc82 100644 --- a/errors.tex +++ b/errors.tex @@ -55,7 +55,7 @@ gestione dei file. 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 diff --git a/fileadv.tex b/fileadv.tex index 9ab00d0..0c53338 100644 --- a/fileadv.tex +++ b/fileadv.tex @@ -997,7 +997,7 @@ come maschera binaria ottenuta dall'OR di uno o pi \const{MAP\_DENYWRITE} & In Linux viene ignorato per evitare \textit{DoS}\index{DoS} (veniva usato per segnalare che tentativi di scrittura sul file - dovevano fallire con \errcode{ETXTBUSY}).\\ + dovevano fallire con \errcode{ETXTBSY}).\\ \const{MAP\_EXECUTABLE}& Ignorato. \\ \const{MAP\_NORESERVE} & Si usa con \const{MAP\_PRIVATE}. Non riserva delle pagine di swap ad uso del meccanismo di diff --git a/filedir.tex b/filedir.tex index 2e93004..3d59617 100644 --- a/filedir.tex +++ b/filedir.tex @@ -227,7 +227,7 @@ 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 \errval{EACCESS}, \errval{EPERM}, \errval{EMLINK}, + ed inoltre \errval{EACCES}, \errval{EPERM}, \errval{EMLINK}, \errval{ENOENT}, \errval{ENOMEM}, \errval{EROFS}, \errval{ELOOP} e \errval{ENOSPC}.} \end{prototype} @@ -458,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 @@ -497,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}. @@ -548,7 +548,7 @@ di queste funzioni o un dipositivo. \item[\errcode{EEXIST}] \param{pathname} esiste già o è un link simbolico. \end{errlist} - ed inoltre anche \errval{EFAULT}, \errval{EACCESS}, \errval{ENAMETOOLONG}, + ed inoltre anche \errval{EFAULT}, \errval{EACCES}, \errval{ENAMETOOLONG}, \errval{ENOENT}, \errval{ENOTDIR}, \errval{ENOMEM}, \errval{ELOOP}, \errval{ENOSPC}, \errval{EROFS}.} \end{functions} @@ -588,7 +588,7 @@ 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 \errval{EACCESS}, + 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} @@ -651,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}} @@ -694,7 +694,7 @@ 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 \errval{EFAULT}, \errval{ENAMETOOLONG}, \errval{ENOENT}, @@ -801,7 +801,7 @@ POSIX definisce la funzione \func{tempfile}, il cui prototipo \item[\errcode{EEXIST}] Non è stato possibile generare un nome univoco. \end{errlist} ed inoltre \errval{EFAULT}, \errval{EMFILE}, \errval{ENFILE}, - \errval{ENOSPC}, \errval{EROFS} e \errval{EACCESS}.} + \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 @@ -927,7 +927,7 @@ queste funzioni sono i seguenti: \bodydesc{Le funzioni restituiscono 0 in caso di successo e -1 per un errore, nel qual caso \var{errno} assumerà uno dei valori: \errval{EBADF}, \errval{ENOENT}, \errval{ENOTDIR}, \errval{ELOOP}, \errval{EFAULT}, - \errval{EACCESS}, \errval{ENOMEM}, \errval{ENAMETOOLONG}.} + \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. @@ -1304,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} diff --git a/gapil.tex b/gapil.tex index ed88f9a..9f9227f 100644 --- a/gapil.tex +++ b/gapil.tex @@ -145,7 +145,7 @@ %\bibliography{biblio} \printindex -\bibliographystyle{alpha} +\bibliographystyle{ieeetr} \bibliography{biblio} \end{document} diff --git a/ipc.tex b/ipc.tex index 0aac002..2848182 100644 --- a/ipc.tex +++ b/ipc.tex @@ -360,7 +360,7 @@ Chiude il file \param{stream}, restituito da una precedente \func{popen} attendendo la terminazione del processo ad essa associato. \bodydesc{La funzione restituisce 0 in caso di successo e -1 in caso di - errore; nel quel caso il valore di \func{errno} deriva dalle sottostanti + errore; nel quel caso il valore di \var{errno} deriva dalle sottostanti chiamate.} \end{prototype} \noindent che oltre alla chiusura dello stream si incarica anche di attendere @@ -1271,7 +1271,7 @@ Se invece si specifica un valore diverso da \const{IPC\_PRIVATE}\footnote{in dipende dal valore di \param{flag}, se questo è nullo la funzione si limita ad effettuare una ricerca sugli oggetti esistenti, restituendo l'identificatore se trova una corrispondenza, o fallendo con un errore di \errcode{ENOENT} se -non esiste o di \errcode{EACCESS} se si sono specificati dei permessi non +non esiste o di \errcode{EACCES} se si sono specificati dei permessi non validi. Se invece si vuole creare una nuova coda di messaggi \param{flag} non può diff --git a/process.tex b/process.tex index 61cca0f..bf022ee 100644 --- a/process.tex +++ b/process.tex @@ -1344,7 +1344,7 @@ stati scritti. Per fare questo in \file{stdarg.h} sono definite delle apposite macro; la procedura da seguire è la seguente: \begin{enumerate*} \item Inizializzare un puntatore alla lista degli argomenti di tipo - \type{va\_list} attraverso la macro \macro{va\_start}. + \macro{va\_list} attraverso la macro \macro{va\_start}. \item Accedere ai vari argomenti opzionali con chiamate successive alla macro \macro{va\_arg}, la prima chiamata restituirà il primo argomento, la seconda il secondo e così via. diff --git a/prochand.tex b/prochand.tex index 88145d3..0bcc2a0 100644 --- a/prochand.tex +++ b/prochand.tex @@ -1034,7 +1034,7 @@ presente che queste macro prendono come parametro la variabile di tipo \ctyp{int} puntata da \var{status}). Si tenga conto che nel caso di conclusione anomala il valore restituito da -\macro{WTERMSIG} può essere confrontato con le costanti definite in +\val{WTERMSIG} può essere confrontato con le costanti definite in \file{signal.h} ed elencate in \tabref{tab:sig_signal_list}, e stampato usando le apposite funzioni trattate in \secref{sec:sig_strsignal}. @@ -1202,10 +1202,10 @@ viene eseguita automaticamente una ricerca fra i file presenti nella lista di directory specificate dalla variabile di ambiente \var{PATH}. Il file che viene posto in esecuzione è il primo che viene trovato. Se si ha un errore relativo a permessi di accesso insufficienti (cioè l'esecuzione della -sottostante \func{execve} ritorna un \errcode{EACCESS}), la ricerca viene +sottostante \func{execve} ritorna un \errcode{EACCES}), la ricerca viene proseguita nelle eventuali ulteriori directory indicate in \var{PATH}; solo se non viene trovato nessun altro file viene finalmente restituito -\errcode{EACCESS}. +\errcode{EACCES}. Le altre quattro funzioni si limitano invece a cercare di eseguire il file indicato dal parametro \var{path}, che viene interpretato come il @@ -2115,7 +2115,7 @@ impostare la priorit \item[\errcode{EINVAL}] il valore di \param{which} non è valido. \item[\errcode{EPERM}] un processo senza i privilegi di amministratore ha specificato un valore di \param{inc} negativo. - \item[\errcode{EACCESS}] un processo senza i privilegi di amministratore ha + \item[\errcode{EACCES}] un processo senza i privilegi di amministratore ha cercato di modificare la priorità di un processo di un altro utente. \end{errlist}} \end{prototype} diff --git a/session.tex b/session.tex index dd948af..8929b41 100644 --- a/session.tex +++ b/session.tex @@ -208,7 +208,7 @@ cui prototipo \begin{errlist} \item[\errcode{ESRCH}] Il processo selezionato non esiste. \item[\errcode{EPERM}] Il cambiamento non è consentito. - \item[\errcode{EACCESS}] Il processo ha già eseguito una \func{exec}. + \item[\errcode{EACCES}] Il processo ha già eseguito una \func{exec}. \item[\errcode{EINVAL}] Il valore di \param{pgid} è negativo. \end{errlist} } @@ -1329,8 +1329,8 @@ valore. \const{CSIZE} & Maschera per i bit usati per specificare la dimensione del carattere inviato lungo la linea di trasmissione, i valore ne indica la lunghezza (in bit), ed i valori - possibili sono \const{CS5}, \const{CS6}, - \const{CS7} e \const{CS8} + possibili sono \val{CS5}, \val{CS6}, + \val{CS7} e \val{CS8} corrispondenti ad un analogo numero di bit.\\ \const{CBAUD} & Maschera dei bit (4+1) usati per impostare della velocità della linea (il \textit{baud rate}) in ingresso. diff --git a/socket.tex b/socket.tex index 687ccc2..00b9927 100644 --- a/socket.tex +++ b/socket.tex @@ -970,7 +970,7 @@ comando (effettuata con le apposite routine illustrate in Il primo passo (\texttt{\small 14--18}) è creare un \textit{socket} IPv4 (\const{AF\_INET}), di tipo TCP \const{SOCK\_STREAM}. La funzione -\const{socket} ritorna il descrittore che viene usato per identificare il +\func{socket} ritorna il descrittore che viene usato per identificare il socket in tutte le chiamate successive. Nel caso la chiamata fallisca si stampa un errore con la relativa routine e si esce.