informazioni degli utenti e dei gruppi per insiemi di macchine, in modo da
mantenere coerenti i dati, ha portato anche alla necessità di poter recuperare
e memorizzare dette informazioni su supporti diversi, introducendo il sistema
-del \textit{Name Service Switch} che tratteremo brevemente più avanti (in
-sez.~\ref{sec:sock_resolver}) dato che la maggior parte delle sua applicazioni
-sono relative alla risoluzioni di nomi di rete.
+del \index{\textit{Name~Service~Switch}}\textit{Name Service Switch} che
+tratteremo brevemente più avanti (in sez.~\ref{sec:sock_resolver}) dato che la
+maggior parte delle sua applicazioni sono relative alla risoluzioni di nomi di
+rete.
In questo paragrafo ci limiteremo comunque a trattere le funzioni classiche
per la lettura delle informazioni relative a utenti e gruppi tralasciando
Le funzioni viste finora sono in grado di leggere le informazioni sia
direttamente dal file delle password in \file{/etc/passwd} che tramite il
-sistema del \textit{Name Service Switch} e sono completamente generiche. Si
-noti però che non c'è una funzione che permetta di impostare direttamente una
-password.\footnote{in realtà questo può essere fatto ricorrendo a PAM, ma
- questo è un altro discorso.} Dato che POSIX non prevede questa possibilità
-esiste un'altra interfaccia che lo fa, derivata da SVID le cui funzioni sono
-riportate in tab.~\ref{tab:sys_passwd_func}. Questa però funziona soltanto
-quando le informazioni sono mantenute su un apposito file di \textsl{registro}
-di utenti e gruppi, con il formato classico di \file{/etc/passwd} e
-\file{/etc/group}.
+sistema del \index{\textit{Name~Service~Switch}}\textit{Name Service Switch} e
+sono completamente generiche. Si noti però che non c'è una funzione che
+permetta di impostare direttamente una password.\footnote{in realtà questo può
+ essere fatto ricorrendo a PAM, ma questo è un altro discorso.} Dato che
+POSIX non prevede questa possibilità esiste un'altra interfaccia che lo fa,
+derivata da SVID le cui funzioni sono riportate in
+tab.~\ref{tab:sys_passwd_func}. Questa però funziona soltanto quando le
+informazioni sono mantenute su un apposito file di \textsl{registro} di utenti
+e gruppi, con il formato classico di \file{/etc/passwd} e \file{/etc/group}.
\begin{table}[htb]
\footnotesize
tempo in una stringa contenente data ed ora, i loro prototipi sono:
\begin{functions}
\headdecl{time.h}
- \funcdecl{char *asctime(const struct tm *tm)}
+ \funcdecl{char *\funcd{asctime}(const struct tm *tm)}
Produce una stringa con data e ora partendo da un valore espresso in
\textit{broken-down time}.
- \funcdecl{char *ctime(const time\_t *timep)}
+ \funcdecl{char *\funcd{ctime}(const time\_t *timep)}
Produce una stringa con data e ora partendo da un valore espresso in
in formato \type{time\_t}.
- \funcdecl{struct tm *gmtime(const time\_t *timep)}
+ \funcdecl{struct tm *\funcd{gmtime}(const time\_t *timep)}
Converte il \textit{calendar time} dato in formato \type{time\_t} in un
\textit{broken-down time} espresso in UTC.
- \funcdecl{struct tm *localtime(const time\_t *timep)}
+ \funcdecl{struct tm *\funcd{localtime}(const time\_t *timep)}
Converte il \textit{calendar time} dato in formato \type{time\_t} in un
\textit{broken-down time} espresso nell'ora locale.
- \funcdecl{time\_t mktime(struct tm *tm)}
+ \funcdecl{time\_t \funcd{mktime}(struct tm *tm)}
Converte il \textit{broken-down time} in formato \type{time\_t}.
\bodydesc{Tutte le funzioni restituiscono un puntatore al risultato in caso