%% socket.tex
%%
-%% Copyright (C) 2000-2012 Simone Piccardi. Permission is granted to
+%% Copyright (C) 2000-2014 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
%% Free Software Foundation; with the Invariant Sections being "Un preambolo",
pertanto non ne parleremo ulteriormente.}
\end{basedescript}
-Si tenga presente che non tutte le combinazioni fra una famiglia di protocolli
-e un tipo di socket sono valide, in quanto non è detto che in una famiglia
-esista un protocollo per ciascuno dei diversi stili di comunicazione appena
-elencati.
+A partire dal kernel 2.6.27 l'argomento \param{type} della funzione
+\func{socket} assume un significato ulteriore perché può essere utlizzato per
+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}}
+\item[\const{SOCK\_CLOEXEC}] imposta il flag di \textit{close-on-exec}
+ \itindex{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}), di cui costituisce l'analogo.
+
+\item[\const{SOCK\_NONBLOCK}] crea il socket in modalità non-bloccante, con
+ effetti identici ad una successiva chiamata a \func{fcntl} per impostare il
+ flag di \const{O\_NONBLOCK} sul file descriptor (si faccia di nuovo
+ riferimenti al significato di quest'ultimo come spiegato in
+ tab.~\ref{tab:open_operation_flag}).
+\end{basedescript}
+
+
+Si tenga presente inoltre che non tutte le combinazioni fra una famiglia di
+protocolli e un tipo di socket sono valide, in quanto non è detto che in una
+famiglia esista un protocollo per ciascuno dei diversi stili di comunicazione
+appena elencati.
\begin{table}[htb]
\footnotesize