Per questo aspetto il file di configurazione principale del sistema è
\conffile{/etc/resolv.conf} che contiene in sostanza l'elenco degli indirizzi
-IP dei server DNS da contattare; a questo si affiancava (fino alle \acr{glibc}
+IP dei server DNS da contattare; a questo si affiancava (fino alla \acr{glibc}
2.4) il file \conffile{/etc/host.conf} il cui scopo principale era indicare
l'ordine in cui eseguire la risoluzione dei nomi (se usare prima i valori di
\conffile{/etc/hosts} o quelli del DNS). Tralasciamo i dettagli relativi alle
associate chiamato \textit{Name Service Switch}, cui abbiamo accennato anche in
sez.~\ref{sec:sys_user_group} per quanto riguarda la gestione dei dati
associati a utenti e gruppi. Il sistema è stato introdotto la prima volta
-nelle librerie standard di Solaris e le \acr{glibc} hanno ripreso lo stesso
+nella libreria standard di Solaris e la \acr{glibc} ha ripreso lo stesso
schema; si tenga presente che questo sistema non esiste per altre librerie
-standard come le \acr{libc5} o le \acr{uclib}.
+standard come la \acr{libc5} o la \acr{uClib}.
Il \textit{Name Service Switch} (cui spesso si fa riferimento con l'acronimo
NSS) è un sistema di librerie dinamiche che permette di definire in maniera
fornite dal sistema del \textit{Name Service Switch}, dal punto di vista di un
programma che deve effettuare la risoluzione di un nome a dominio, tutto
quello che conta sono le funzioni classiche che il \textit{resolver} mette a
-disposizione (è cura delle \acr{glibc} tenere conto della presenza del
+disposizione (è cura della \acr{glibc} tenere conto della presenza del
\textit{Name Service Switch}) e sono queste quelle che tratteremo nelle
sezioni successive.
\const{RES\_USE\_INET6} nel campo \texttt{\_res.options} e poi chiamare
\func{res\_init} (vedi sez.~\ref{sec:sock_resolver_functions}) per modificare
le opzioni del \textit{resolver}; dato che questo non è molto comodo è stata
-definita (è una estensione fornita dalle \acr{glibc}, disponibile anche in
+definita (è una estensione fornita dalla \acr{glibc}, disponibile anche in
altri sistemi unix-like) un'altra funzione, \funcd{gethostbyname2}, il cui
prototipo è:
contenuti in essa (e così via se vi sono altre sotto-strutture con altri
puntatori) e copiare anche i dati da questi referenziati.}
-Per ovviare a questi problemi nelle \acr{glibc} sono definite anche delle
+Per ovviare a questi problemi nella \acr{glibc} sono definite anche delle
versioni rientranti delle precedenti funzioni, al solito queste sono
caratterizzate dall'avere un suffisso \texttt{\_r}, pertanto avremo le due
funzioni \funcd{gethostbyname\_r} e \funcd{gethostbyname2\_r} i cui prototipi
Dato che \func{gethostbyaddr} usa un buffer statico, anche di questa funzione
esiste una versione rientrante \funcd{gethostbyaddr\_r} fornita come
-estensione dalle \acr{glibc}, il cui prototipo è:
+estensione dalla \acr{glibc}, il cui prototipo è:
\begin{funcproto}{
\fhead{netdb.h}
lettura delle voci presenti in quest'ultimo, come avviene anche in altri
sistemi unix-like, ed inoltre ignora le voci relative ad indirizzi IPv6.
-Della stessa funzione le \acr{glibc} forniscono anche una versione rientrante
+Della stessa funzione la \acr{glibc} fornisce anche una versione rientrante
\funcd{gethostent\_r}, il cui prototipo è:
\begin{funcproto}{
è stata successivamente proposta,
nell'\href{http://www.ietf.org/rfc/rfc2553.txt}{RFC~2553} un diversa
interfaccia con l'introduzione due nuove funzioni di
-risoluzione,\footnote{dette funzioni sono presenti nelle \acr{glibc} versione
- 2.1.96, ma essendo considerate deprecate (vedi
+risoluzione,\footnote{dette funzioni sono presenti nella \acr{glibc} 2.1.96,
+ ma essendo considerate deprecate (vedi
sez.~\ref{sec:sock_advanced_name_services}) sono state rimosse nelle
versioni successive.} \funcd{getipnodebyname} e \funcd{getipnodebyaddr}, i
cui prototipi sono:
maschera.
Nella seconda parte della tabella si sono riportati i valori delle costanti
-aggiunte a partire dalle \acr{glibc} 2.3.4 per gestire la
+aggiunte a partire dalla \acr{glibc} 2.3.4 per gestire la
internazionalizazione dei nomi a dominio (IDN o \textit{Internationalized
Domain Names}) secondo quanto specificato
nell'\href{http://www.ietf.org/rfc/rfc3490.txt}{RFC~3490} (potendo cioè usare
impostare le modalità con cui viene eseguita la ricerca, e deve essere
specificato attraverso l'OR aritmetico dei valori illustrati in
tab.~\ref{tab:getnameinfo_flags}, nella seconda parte della tabella si sono
-aggiunti i valori introdotto con le \acr{glibc} 2.3.4 per gestire la
+aggiunti i valori introdotto con la \acr{glibc} 2.3.4 per gestire la
internazionalizzione dei nomi a dominio.
\begin{table}[!htb]
in realtà sempre di tipo \ctyp{int}, come era nelle \acr{libc4} e
\acr{libc5}; l'uso di \type{socklen\_t} è stato introdotto da POSIX (valgono
le stesse considerazioni per l'uso di questo tipo di dato fatte in
- sez.~\ref{sec:TCP_func_accept}) ed adottato dalle \acr{glibc}.} è la
+ sez.~\ref{sec:TCP_func_accept}) ed adottato dalla \acr{glibc}.} è la
dimensione in byte dei dati presenti all'indirizzo indicato da \param{optval}.
Dato che il tipo di dati varia a seconda dell'opzione scelta, occorrerà
individuare qual è quello che deve essere usato, ed utilizzare le opportune
situazione.} utilizzare per il singolo socket. L'opzione è stata
introdotta con il kernel 2.6.13,\footnote{alla data di stesura di queste
note (Set. 2006) è pure scarsamente documentata, tanto che non è neanche
- definita nelle intestazioni delle \acr{glibc} per cui occorre definirla a
+ definita nelle intestazioni della \acr{glibc} per cui occorre definirla a
mano al suo valore che è 13.} e prende come per \param{optval} il
puntatore ad un buffer contenente il nome dell'algoritmo di controllo che
si vuole usare.