+In questo caso il campo \var{sun\_family} deve essere \const{AF\_UNIX}, mentre
+il campo \var{sun\_path} deve specificare un indirizzo; questo ha due forme:
+un file (di tipo socket) nel filesystem o una stringa univoca (mantenuta in
+uno spazio di nomi astratto). Nel primo caso l'indirizzo viene specificato
+come una stringa (terminata da uno zero) corrispondente al pathname del file;
+nel secondo invece \var{sun\_path} inizia con uno zero vengono usati i
+restanti byte come stringa (senza terminazione).
+
+
+\subsection{La struttura degli indirizzi AppleTalk}
+\label{sec:sock_sa_appletalk}
+
+I socket di tipo \const{PF\_APPLETALK} sono usati dalla libreria
+\file{netatalk} per implementare la comunicazione secondo il protocollo
+AppleTalk, uno dei primi protocolli di rete usato nel mondo dei personal
+computer, usato dalla Apple per connettere fra loro computer e stampanti. Il
+kernel supporta solo due strati del protocollo, DDP e AARP, e di norma è
+opportuno usare le funzioni di libreria, si tratta qui questo argomento
+principalmente per mostrare l'uso di un protocollo alternativo.
+
+I socket AppleTalk permettono di usare il protocollo DDP, che è un protocollo
+a pacchetto, di tipo \const{SOCK\_DGRAM}; l'argomento \param{protocol} di
+\func{socket} deve essere nullo. È altresì possibile usare i socket raw
+specificando un tipo \const{SOCK\_RAW}, nel qual caso l'unico valore valido
+per \param{protocol} è \func{ATPROTO\_DDP}.
+
+\begin{figure}[!htb]
+ \footnotesize \centering
+ \begin{minipage}[c]{15cm}
+ \begin{lstlisting}[labelstep=0]{}%,frame=,indent=1cm]{}
+struct sockaddr_atalk {
+ sa_family_t sat_family; /* address family */
+ u_char sat_port; /* port */
+ struct at_addr sat_addr; /* net/node */
+};
+
+struct at_addr {
+ unsigned short s_net;
+ unsigned char s_node;
+};
+ \end{lstlisting}
+ \end{minipage}
+ \caption{La struttura degli indirizzi dei socket AppleTalk
+ \structd{sockaddr\_atalk}.}
+ \label{fig:sock_sa_atalk_struct}
+\end{figure}
+
+Il campo \var{sut\_family} deve essere sempre \const{AF\_APPLETALK}, mentre il
+campo \var{sun\_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 capability
+\const{CAP\_NET\_BIND\_SERVICE}. L'indirizzo remoto è specificato nella
+struttura \var{sun\_addr}, e deve essere in \textit{network order}; esso è
+composto da un parte di rete data dal campo \var{s\_net}, che può assumere il
+valore \const{AT\_ANYNET}, che indica una rete genrica e vale anche per
+indicare la rete su cui si è, il singolo nodo è indicato da \var{s\_node}, e
+può prendere il valore generico \const{AT\_ANYNODE} che indica anche il nodo
+corrente, ed il valore \const{ATADDR\_BCAST} che indica tutti i nodi della
+rete.
+
+
+
+
+
+\subsection{La struttura degli indirizzi DECnet}
+\label{sec:sock_sa_decnet}
+
+I socket di tipo \const{PF\_DECnet} usano il protocollo DECnet, usato dai VAX
+Digital sotto VMS quando ancora il TCP/IP non era diventato lo standard di
+fatto. Il protocollo è un protocollo chiuso, ed il suo uso attuale è di
+compatibilità con macchine che stanno comunque scomparendo. Lo si riporta solo
+come esempio
+