levata doppia
[gapil.git] / socket.tex
index 7e79d39439dc2ce7ed6f15f002b05ab72484e2cb..2287b172b6ba833e8c9f92da8b68d92a110e0fca 100644 (file)
@@ -251,7 +251,7 @@ valori numerici.\footnote{in Linux, come si può verificare andando a guardare
 seguendo la convenzione usata nelle pagine di manuale.
 
 I domini (e i relativi nomi simbolici), così come i nomi delle famiglie di
-indirizzi, sono definiti dall'\textit{header file} \headfile{socket.h}. Un
+indirizzi, sono definiti dall'\textit{header file} \headfiled{socket.h}. Un
 elenco delle famiglie di protocolli disponibili in Linux è riportato in
 tab.~\ref{tab:net_pf_names}. L'elenco indica tutti i protocolli definiti; fra
 questi però saranno utilizzabili solo quelli per i quali si è compilato il
@@ -280,7 +280,7 @@ seguenti costanti:\footnote{le pagine di manuale POSIX riportano solo i primi
   tre tipi, Linux supporta anche gli altri, come si può verificare nel file
   \texttt{include/linux/net.h} dei sorgenti del kernel.}
 
-\begin{basedescript}{\desclabelwidth{2.9cm}\desclabelstyle{\nextlinelabel}}
+\begin{basedescript}{\desclabelwidth{1.5cm}\desclabelstyle{\nextlinelabel}}
 \item[\const{SOCK\_STREAM}] Provvede un canale di trasmissione dati
   bidirezionale, sequenziale e affidabile. Opera su una connessione con un
   altro socket. I dati vengono ricevuti e trasmessi come un flusso continuo di
@@ -302,8 +302,8 @@ seguenti costanti:\footnote{le pagine di manuale POSIX riportano solo i primi
   devono usarlo, è riservato all'uso di sistema.
 \item[\const{SOCK\_RDM}] Provvede un canale di trasmissione di dati
   affidabile, ma in cui non è garantito l'ordine di arrivo dei pacchetti.
-\item[\const{SOCK\_PACKET}] Obsoleto, non deve essere più usato.\footnote{e
-    pertanto non ne parleremo ulteriormente.}
+\item[\const{SOCK\_PACKET}] Obsoleto, non deve essere più usato (e pertanto
+  non ne parleremo ulteriormente).
 \end{basedescript}
 
 A partire dal kernel 2.6.27 l'argomento \param{type} della funzione
@@ -312,7 +312,7 @@ impostare dei flag relativi alle caratteristiche generali del \textit{socket}
 non strettamente attinenti all'indicazione del tipo secondo i valori appena
 illustrati. Essi infatti possono essere combinati con un OR aritmetico delle
 ulteriori costanti:
-\begin{basedescript}{\desclabelwidth{2.9cm}\desclabelstyle{\nextlinelabel}}
+\begin{basedescript}{\desclabelwidth{1.5cm}\desclabelstyle{\nextlinelabel}}
 \item[\const{SOCK\_CLOEXEC}] imposta il flag di \textit{close-on-exec} sul
   file descriptor del socket, ottenendo lo stesso effetto del flag
   \const{O\_CLOEXEC} di \func{open} (vedi tab.~\ref{tab:open_operation_flag}),
@@ -411,7 +411,7 @@ una struttura generica per gli indirizzi dei socket, \struct{sockaddr}, che si
 
 \begin{figure}[!htb]
   \footnotesize \centering
-  \begin{minipage}[c]{\textwidth}
+  \begin{minipage}[c]{0.80\textwidth}
     \includestruct{listati/sockaddr.h}
   \end{minipage} 
   \caption{La struttura generica degli indirizzi dei socket
@@ -439,20 +439,20 @@ definita nell'include file \headfile{sys/socket.h}.
     \multicolumn{1}{|c|}{\textbf{Header}} \\
     \hline
     \hline
-    \type{int8\_t}   & intero a 8 bit con segno   & \headfile{sys/types.h}\\
-    \type{uint8\_t}  & intero a 8 bit senza segno & \headfile{sys/types.h}\\
-    \type{int16\_t}  & intero a 16 bit con segno  & \headfile{sys/types.h}\\
-    \type{uint16\_t} & intero a 16 bit senza segno& \headfile{sys/types.h}\\
-    \type{int32\_t}  & intero a 32 bit con segno  & \headfile{sys/types.h}\\
-    \type{uint32\_t} & intero a 32 bit senza segno& \headfile{sys/types.h}\\
+    \typed{int8\_t}   & intero a 8 bit con segno   & \headfile{sys/types.h}\\
+    \typed{uint8\_t}  & intero a 8 bit senza segno & \headfile{sys/types.h}\\
+    \typed{int16\_t}  & intero a 16 bit con segno  & \headfile{sys/types.h}\\
+    \typed{uint16\_t} & intero a 16 bit senza segno& \headfile{sys/types.h}\\
+    \typed{int32\_t}  & intero a 32 bit con segno  & \headfile{sys/types.h}\\
+    \typed{uint32\_t} & intero a 32 bit senza segno& \headfile{sys/types.h}\\
     \hline
-    \type{sa\_family\_t} & famiglia degli indirizzi&\headfile{sys/socket.h}\\
-    \type{socklen\_t} & lunghezza (\type{uint32\_t}) dell'indirizzo di
+    \typed{sa\_family\_t} & famiglia degli indirizzi&\headfile{sys/socket.h}\\
+    \typed{socklen\_t} & lunghezza (\type{uint32\_t}) dell'indirizzo di
     un socket& \headfile{sys/socket.h}\\
     \hline
-    \type{in\_addr\_t} & indirizzo IPv4 (\type{uint32\_t}) & 
+    \typed{in\_addr\_t} & indirizzo IPv4 (\type{uint32\_t}) & 
     \headfile{netinet/in.h}\\
-    \type{in\_port\_t} & porta TCP o UDP (\type{uint16\_t})& 
+    \typed{in\_port\_t} & porta TCP o UDP (\type{uint16\_t})& 
     \headfile{netinet/in.h}\\
     \hline
   \end{tabular}
@@ -482,12 +482,12 @@ sarebbe più immediato per l'utente (che non dovrebbe più eseguire il casting),
 I socket di tipo \const{PF\_INET} vengono usati per la comunicazione
 attraverso internet; la struttura per gli indirizzi per un socket internet (se
 si usa IPv4) è definita come \struct{sockaddr\_in} nell'header file
-\headfile{netinet/in.h} ed ha la forma mostrata in
+\headfiled{netinet/in.h} ed ha la forma mostrata in
 fig.~\ref{fig:sock_sa_ipv4_struct}, conforme allo standard POSIX.1g.
 
 \begin{figure}[!htb]
   \footnotesize\centering
-  \begin{minipage}[c]{\textwidth}
+  \begin{minipage}[c]{0.80\textwidth}
     \includestruct{listati/sockaddr_in.h}
   \end{minipage} 
   \caption{La struttura \structd{sockaddr\_in} degli indirizzi dei socket
@@ -514,7 +514,7 @@ sez.~\ref{sec:TCP_func_bind}) su queste porte.
 
 Il membro \var{sin\_addr} contiene un indirizzo internet, e viene acceduto sia
 come struttura (un resto di una implementazione precedente in cui questa era
-una \direct{union} usata per accedere alle diverse classi di indirizzi) che
+una \dirct{union} usata per accedere alle diverse classi di indirizzi) che
 direttamente come intero. In \headfile{netinet/in.h} vengono definite anche
 alcune costanti che identificano alcuni indirizzi speciali, riportati in
 tab.~\ref{tab:TCP_ipv4_addr}, che rincontreremo più avanti.
@@ -539,7 +539,7 @@ riportata in fig.~\ref{fig:sock_sa_ipv6_struct}.
 
 \begin{figure}[!htb]
   \footnotesize \centering
-  \begin{minipage}[c]{\textwidth}
+  \begin{minipage}[c]{0.80\textwidth}
     \includestruct{listati/sockaddr_in6.h}
   \end{minipage} 
   \caption{La struttura \structd{sockaddr\_in6} degli indirizzi dei socket
@@ -580,12 +580,12 @@ fig.~\ref{fig:sock_sa_local_struct}.
 
 \begin{figure}[!htb]
   \footnotesize \centering
-  \begin{minipage}[c]{\textwidth}
+  \begin{minipage}[c]{0.80\textwidth}
     \includestruct{listati/sockaddr_un.h}
   \end{minipage} 
   \caption{La struttura \structd{sockaddr\_un} degli indirizzi dei socket
     locali (detti anche \textit{unix domain}) definita in
-    \headfile{sys/un.h}.}
+    \headfiled{sys/un.h}.}
   \label{fig:sock_sa_local_struct}
 \end{figure}
 
@@ -620,11 +620,11 @@ per \param{protocol} è \const{ATPROTO\_DDP}.
 Gli indirizzi AppleTalk devono essere specificati tramite una struttura
 \struct{sockaddr\_atalk}, la cui definizione è riportata in
 fig.~\ref{fig:sock_sa_atalk_struct}; la struttura viene dichiarata includendo
-il file \headfile{netatalk/at.h}.
+il file \headfiled{netatalk/at.h}.
 
 \begin{figure}[!htb]
   \footnotesize \centering
-  \begin{minipage}[c]{\textwidth}
+  \begin{minipage}[c]{0.80\textwidth}
     \includestruct{listati/sockaddr_atalk.h}
   \end{minipage} 
   \caption{La struttura \structd{sockaddr\_atalk} degli indirizzi dei socket