costanti indicanti le opzioni del protocollo TCP e tutte le altre costanti ad
esse collegate sono definite in \file{netinet/tcp.h}, ed accessibili
includendo detto file.\footnote{in realtà questo è il file usato dalle
- liberie; la definizione delle opzioni effettivamente supportate da Linux si
+ librerie; la definizione delle opzioni effettivamente supportate da Linux si
trova nel file \texttt{linux/tcp.h}, dal quale si sono estratte le costanti
di tab.~\ref{tab:sock_opt_tcplevel}.}
Il protocollo UDP, anche per la sua maggiore semplicità, supporta un numero
-ridootto di opzioni, riportate in tab.~\ref{tab:sock_opt_udp}; anche in questo
-caso per poterle utilizzare occorrerà impostare l'opportuni valore per
+ridotto di opzioni, riportate in tab.~\ref{tab:sock_opt_udp}; anche in questo
+caso per poterle utilizzare occorrerà impostare l'opportuno valore per
l'argomento \param{level}, che è \const{SOL\_UDP} (o l'equivalente
\const{IPPROTO\_UDP}). Le costanti che identificano dette opzioni sono
-definite in \file{netinet/tcp.h}, ed accessibili includendo detto
+definite in \file{netinet/udp.h}, ed accessibili includendo detto
file.\footnote{come per TCP, la definizione delle opzioni effettivamente
- supportate dal kernel si trova nel file \texttt{linux/udp.h}, dal quale si
- sono estratte le costanti di tab.~\ref{tab:sock_opt_udplevel}.}
+ supportate dal kernel si trova in realtà nel file \texttt{linux/udp.h}, dal
+ quale si sono estratte le costanti di tab.~\ref{tab:sock_opt_udplevel}.}
\begin{table}[!htb]
\centering
Le operazioni di controllo disponibili per i socket TCP, come illustrate dalla
relativa pagina di manuale, accessibile con \texttt{man 7 tcp}, prevedono come
-possibile valore per il secondo argomento della funzione le costanti
+possibile valore per il secondo argomento della funzione dalle costanti
illustrate nell'elenco seguente; il terzo argomento della funzione, gestito
come \itindex{value~result~argument} \textit{value result argument}, deve
essere sempre il puntatore ad una variabile di tipo \ctyp{int}:
\errval{EINVAL}.
\end{basedescript}
-
Le operazioni di controllo disponibili per i socket UDP, come illustrate dalla
relativa pagina di manuale, accessibile con \texttt{man 7 udp}, sono quelle
-indicate nelle costanti del seguente elenco; come per i socket TCP il terzo
+indicate dalle costanti del seguente elenco; come per i socket TCP il terzo
argomento viene gestito come \itindex{value~result~argument} \textit{value
result argument} e deve essere un puntatore ad una variabile di tipo
\ctyp{int}:
\begin{basedescript}{\desclabelwidth{2.5cm}\desclabelstyle{\nextlinelabel}}
-\item[\const{FIONREAD}]
-\item[\const{TIOCOUTQ}]
+\item[\const{FIONREAD}] restituisce la dimensione in byte del primo pacchetto
+ in attesa di ricezione, o 0 qualora non ci sia nessun pacchetto.
+\item[\const{TIOCOUTQ}] restituisce il numero di byte presenti nella coda di
+ invio locale; questa opzione è supportata soltanto a partire dal kernel 2.4
\end{basedescript}
% LocalWords: quest'ultime neigh dev weight cong mod somaxconn Di SIOCINQ DoS
% LocalWords: Documentation SIOCATMARK SIOCOUTQ FIONREAD TIOCOUTQ Denial work
% LocalWords: netfilter scheduler mark ARP DHCP BOOTP RARP nonlocal sniffer
+% LocalWords: linux NODELAY MAXSEG CORK KEEPIDLE KEEPINTVL KEEPCNT SYNCNT INFO
+% LocalWords: DEFER ACCEPT WINDOW CLAMP QUICKACK CONGESTION ENCAP urgent