Correzioni agli errori, indicizzazioni e riorganizzata la sezione sul
[gapil.git] / socket.tex
index 64674af6c4326fba02e91bf99159d9e5e1085a72..052e8c5a796f779a91e8dfd4d92bb0fb85d6c673 100644 (file)
@@ -149,9 +149,10 @@ implicitamente dal tipo di socket, per cui di norma questo valore viene messo
 a zero (con l'eccezione dei \textit{raw socket}).
 
 Si noti che la creazione del socket si limita ad allocare le opportune
-strutture nel kernel (sostanzialmente una voce nella \textit{file table}) e
-non comporta nulla riguardo all'indicazione degli indirizzi remoti o locali
-attraverso i quali si vuole effettuare la comunicazione.
+strutture nel kernel (sostanzialmente una voce nella \itindex{file~table}
+\textit{file table}) e non comporta nulla riguardo all'indicazione degli
+indirizzi remoti o locali attraverso i quali si vuole effettuare la
+comunicazione.
 
 \subsection{Il dominio dei socket}
 \label{sec:sock_domain}
@@ -593,7 +594,7 @@ Il campo \var{sat\_family} deve essere sempre \const{AF\_APPLETALK}, mentre il
 campo \var{sat\_port} specifica la porta che identifica i vari servizi. Valori
 inferiori a 129 sono usati per le \textsl{porte riservate}, e possono essere
 usati solo da processi con i privilegi di amministratore o con la
-\itindex{capabilities}\textit{capability} \const{CAP\_NET\_BIND\_SERVICE}.
+\itindex{capabilities} \textit{capability} \const{CAP\_NET\_BIND\_SERVICE}.
 L'indirizzo remoto è specificato nella struttura \var{sat\_addr}, e deve
 essere in \textit{network order} (vedi sez.~\ref{sec:sock_endianess}); esso è
 composto da un parte di rete data dal campo \var{s\_net}, che può assumere il
@@ -612,8 +613,11 @@ un'interfaccia specifica di Linux per inviare e ricevere pacchetti
 direttamente su un'interfaccia di rete, senza passare per le funzioni di
 gestione dei protocolli di livello superiore. In questo modo è possibile
 implementare dei protocolli in user space, agendo direttamente sul livello
-fisico. In genere comunque si preferisce usare la libreria \file{pcap}, che
-assicura la portabilità su altre piattaforme, anche se con funzionalità
+fisico. In genere comunque si preferisce usare la libreria
+\file{pcap},\footnote{la libreria è mantenuta insieme al comando
+  \cmd{tcpdump}, informazioni e documentazione si possono trovare sul sito del
+  progetto \href{http://www.tcpdump.org/}{\texttt{http://www.tcpdump.org/}}.}
+che assicura la portabilità su altre piattaforme, anche se con funzionalità
 ridotte.
 
 Questi socket possono essere di tipo \const{SOCK\_RAW} o \const{SOCK\_DGRAM}.
@@ -701,9 +705,9 @@ macchina ricevente, \const{PACKET\_BROADCAST} per un pacchetto di
 \itindex{broadcast} \textit{broadcast}, \const{PACKET\_MULTICAST} per un
 pacchetto inviato ad un indirizzo fisico di \itindex{multicast}
 \textit{multicast}, \const{PACKET\_OTHERHOST} per un pacchetto inviato ad
-un'altra stazione (e ricevuto su un'interfaccia in modo promiscuo),
-\const{PACKET\_OUTGOING} per un pacchetto originato dalla propria macchina che
-torna indietro sul socket.
+un'altra stazione (e ricevuto su un'interfaccia in \index{modo~promiscuo} modo
+promiscuo), \const{PACKET\_OUTGOING} per un pacchetto originato dalla propria
+macchina che torna indietro sul socket.
 
 
 Si tenga presente infine che in fase di ricezione, anche se si richiede il
@@ -1050,4 +1054,5 @@ sez.~\ref{sec:IP_ipv6_notation} per IPv6.
 % LocalWords:  all'endianess htons ntohl ntohs long hostlong hostshort netlong
 % LocalWords:  sort netshort host inet aton ntoa dotted decimal const char src
 % LocalWords:  strptr struct dest addrptr INADDR NULL pton ntop presentation af
-% LocalWords:  numeric EAFNOSUPPORT size ENOSPC ENOAFSUPPORT ADDRSTRLEN
+% LocalWords:  numeric EAFNOSUPPORT size ENOSPC ENOAFSUPPORT ADDRSTRLEN ROUTE
+% LocalWords:  of tcpdump