-prima (\texttt{\small 7}) azzera il contenuto della struttura \var{hint} e poi
-provvede (\texttt{\small 8--10}) ad inizializzarne i valori necessari per la
-chiamata (\texttt{\small 11}) a \func{getaddrinfo}. Di quest'ultima si
-controlla (\texttt{\small 12}) il codice di ritorno, in modo da stampare
-(\texttt{\small 13--15}) un avviso di errore ed uscire in caso di errore. Se
-la risoluzioen del nome ha successo si provvede (\texttt{\small 18--22}) ad
-aprire il socket, ed a connettersi ad esso (\texttt{\small 24--28}); in
-entrambi casi si gestisce il caso di errore. Infine prima di ritornare
-(\texttt{\small 30}) il file descriptor del socket si provvede (\texttt{\small
- 29}) a liberare le strutture \struct{addrinfo} allocate da
-\func{getaddrinfo}.
+prima (\texttt{\small 6}) azzera il contenuto della struttura \var{hint} e poi
+provvede (\texttt{\small 7--9}) ad inizializzarne i valori necessari per la
+chiamata (\texttt{\small 10}) a \func{getaddrinfo}. Di quest'ultima si
+controlla (\texttt{\small 12-16}) il codice di ritorno, in modo da stampare un
+avviso di errore, azzerare \var{errno} ed uscire in caso di errore. Dato che
+ad una macchina possono corrispondere più indirizzi IP, e di tipo diverso (sia
+IPv4 che IPv6), ed il servizio può essere in ascolto soltanto su uno solo di
+questi, si provvede a tentare la connessione per ciascun indirizzo restituito
+all'interno di un ciclo (\texttt{\small 18-40}) di scansione della lista
+restituita da \func{getaddrinfo}, ma prima (\texttt{\small 17}) si salva il
+valore del puntatore per poterlo riutilizzare alla fine per disallocare la
+lista.
+
+Il ciclo viene ripetuto fintanto che si hanno indirizzi validi, ed inizia
+(\texttt{\small 19}) con l'apertura del socket; se questa fallisce si
+controlla (\texttt{\small 20}) se sono disponibili altri indirizzi, nel qual
+caso si passa al successivo (\texttt{\small 21}) ricominciando il ciclo
+(\texttt{\small 22}), se non ve ne sono si stampa l'errore ritornado
+immediatamente (\texttt{\small 24-27}). Se la creazione del socket ha avuto
+successo si procede (\texttt{\small 29}) con la connessione
+
+
+
+
+
+Se la risoluzione del nome ha successo si provvede (\texttt{\small 19--23}) ad
+aprire il socket, ed a connettersi ad esso (\texttt{\small 25--29}); in
+entrambi casi si gestisce il caso di errore, con una stampa ed il ritorno del
+valore -1. Infine prima di ritornare (\texttt{\small 31}) il valore del file
+descriptor del socket si provvede (\texttt{\small 30}) a liberare le strutture
+\struct{addrinfo} allocate da \func{getaddrinfo}.