X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=socket.tex;h=43c4905d1d4f23d82328c70975fa486ca307d835;hp=e024bd71dcb78503d32b0869a37072482f20f191;hb=da0899b61653d07d75c8df134906261f1afd2485;hpb=ff2d0141751ed62ef56e5bfd226c589311b8b669 diff --git a/socket.tex b/socket.tex index e024bd7..43c4905 100644 --- a/socket.tex +++ b/socket.tex @@ -110,7 +110,7 @@ il tipo di comunicazione che esso deve utilizzare. \label{sec:sock_socket} La creazione di un socket avviene attraverso l'uso della funzione -\func{socket}; questa restituisce un \textit{file descriptor}\footnote{del +\funcd{socket}; questa restituisce un \textit{file descriptor}\footnote{del tutto analogo a quelli che si ottengono per i file di dati e le pipe, descritti in \secref{sec:file_fd}.} che serve come riferimento al socket; il suo protototipo è: @@ -606,10 +606,11 @@ con i due byte in cui invertito l'ordine di lettura per cui, per riavere il valore originale dovranno essere rovesciati. -Per questo motivo si usano le seguenti funzioni di conversione che servono a -tener conto automaticamente della possibile differenza fra l'ordinamento usato -sul computer e quello che viene usato nelle trasmissione sulla rete; queste -funzioni sono: +Per questo motivo si usano delle funzioni di conversione che servono a tener +conto automaticamente della possibile differenza fra l'ordinamento usato sul +computer e quello che viene usato nelle trasmissione sulla rete; queste +funzioni sono \funcd{htonl}, \funcd{htons}, \funcd{ntonl} e \funcd{ntons} ed i +rispettivi prototipi sono: \begin{functions} \headdecl{netinet/in.h} \funcdecl{unsigned long int htonl(unsigned long int hostlong)} @@ -659,7 +660,8 @@ indirizzi IPv4 da una stringa in cui il numero di IP cosiddetta notazione \textit{dotted-decimal}, (cioè nella forma \texttt{192.160.0.1}) al formato binario (direttamente in \textit{network order}) e viceversa; in questo caso si usa la lettera \texttt{a} come -mnemonico per indicare la stringa. Dette funzioni sono: +mnemonico per indicare la stringa. Dette funzioni sono \funcd{inet\_addr}, +\funcd{inet\_aton} e \funcd{inet\_ntoa}, ed i rispettivi prototipi sono: \begin{functions} \headdecl{arpa/inet.h} @@ -720,8 +722,9 @@ e \textit{numeric}. % \end{figure} Entrambe le funzioni accettano l'argomento \param{af} che indica il tipo di -indirizzo e può essere soltanto \const{AF\_INET} o \const{AF\_INET6}. I -prototipi delle suddette funzioni sono i seguenti: +indirizzo e può essere soltanto \const{AF\_INET} o \const{AF\_INET6}. La prima +funzione è \funcd{inet\_pton}, che serve a convertire una stringa in un +indirizzo, il suo prototipo è: \begin{prototype}{sys/socket.h} {int inet\_pton(int af, const char *src, void *addr\_ptr)} @@ -740,7 +743,8 @@ un valore positivo in caso di successo, e zero se la stringa non rappresenta un indirizzo valido, e negativo se \param{af} specifica una famiglia di indirizzi non valida. - +La sedonda funzione è \funcd{inet\_ntop} che converte un indirizzo in una +stringa; il suo prototipo è: \begin{prototype}{sys/socket.h} {char *inet\_ntop(int af, const void *addr\_ptr, char *dest, size\_t len)} Converte l'indirizzo dalla relativa struttura in una stringa simbolica.