Revisione delle date del copyright e di alcune tabelle, messe altre quattro
authorSimone Piccardi <piccardi@gnulinux.it>
Sun, 18 Jul 2004 21:24:00 +0000 (21:24 +0000)
committerSimone Piccardi <piccardi@gnulinux.it>
Sun, 18 Jul 2004 21:24:00 +0000 (21:24 +0000)
righe sulle funzioni del resolver.

24 files changed:
Makefile
biblio.bib
errors.tex
fileadv.tex
filedir.tex
fileintro.tex
filestd.tex
fileunix.tex
gapil.tex
intro.tex
ipc.tex
macro.tex
netlayer.tex
network.tex
process.tex
prochand.tex
ringraziamenti.tex
session.tex
signal.tex
sockctrl.tex
socket.tex
system.tex
tcpsock.tex
trasplayer.tex

index a6a12e6..a3f6a9f 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -47,5 +47,5 @@ install:
        scp html/*.html piccardi@firenze.linux.it:public_html/gapil/
 clean: 
        rm -f *.dvi *.log *.ps *.html *.aux *.toc *.rel *.ilg *.rip *.ind \
-       *.pdf  *.out *.idx *~ listati/*.html img/*.ps img/*.pdf
+       *.pdf  *.out *.idx *~ listati/*.html img/*.ps img/*.eps img/*.pdf 
 
index 79f88b4..6b2d952 100644 (file)
 }
 @Booklet{UnixFaq,
   title =       {Unix Programming Frequently Asked Questions},
-  OPTkey =      {},
   author =      {Andrew Gierth},
   OPThowpublished = {http://www.erlenstar.demon.co.uk/unix/faq_toc.html},
   OPTaddress =          {},
   OPTnote =     {},
   OPTannote =   {}
 }
+@Book{AGL,
+  title =       {Amministrare GNU/Linux},
+  author =      {Simone Piccardi},
+  editor =      {Truelite Srl},
+  publisher =   {Truelite Srl},
+  year =        {2004},
+  OPThowpublished = {http://sources.truelite.it/sw/documentazione/docs/corso.pdf},
+  OPTkey =      {},
+  OPTaddress =          {},
+  OPTmonth =    {},
+  OPTyear =     {},
+  OPTnote =     {},
+  OPTannote =   {}
+}
+@Book{DNSbind,
+  author =      {Cricket Liu and Paul Albitz},
+  editor =      {O'Reilly},
+  title =       {DNS and BIND},
+  publisher =   {O'Reilly},
+  year =        {1998},
+  OPTkey =      {},
+  OPTvolume =   {},
+  OPTnumber =   {},
+  OPTseries =   {},
+  OPTaddress =          {},
+  OPTedition =          {3rd},
+  OPTmonth =    {},
+  OPTnote =     {},
+  OPTannote =   {}
+}
index f0e099e..cca05d0 100644 (file)
@@ -1,6 +1,6 @@
 %% errors.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index 52d06ce..d3425dc 100644 (file)
@@ -1,6 +1,6 @@
 %% fileadv.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index 6a9befc..65ae8d6 100644 (file)
@@ -1,6 +1,6 @@
 %% filedir.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
@@ -369,27 +369,27 @@ direttamente sul suo contenuto.
     \textbf{Funzione} & \textbf{Segue il link} & \textbf{Non segue il link} \\
     \hline 
     \hline 
-    \func{access}   & $\bullet$ &           \\
-    \func{chdir}    & $\bullet$ &           \\
-    \func{chmod}    & $\bullet$ &           \\
-    \func{chown}    &           & $\bullet$ \\
-    \func{creat}    & $\bullet$ &           \\
-    \func{exec}     & $\bullet$ &           \\
+    \func{access}   & $\bullet$ & --        \\
+    \func{chdir}    & $\bullet$ & --        \\
+    \func{chmod}    & $\bullet$ & --        \\
+    \func{chown}    & --        & $\bullet$ \\
+    \func{creat}    & $\bullet$ & --        \\
+    \func{exec}     & $\bullet$ & --        \\
     \func{lchown}   & $\bullet$ & $\bullet$ \\
-    \func{link}     &           &           \\
-    \func{lstat}    &           & $\bullet$ \\
-    \func{mkdir}    & $\bullet$ &           \\
-    \func{mkfifo}   & $\bullet$ &           \\
-    \func{mknod}    & $\bullet$ &           \\
-    \func{open}     & $\bullet$ &           \\
-    \func{opendir}  & $\bullet$ &           \\
-    \func{pathconf} & $\bullet$ &           \\
-    \func{readlink} &           & $\bullet$ \\
-    \func{remove}   &           & $\bullet$ \\
-    \func{rename}   &           & $\bullet$ \\
-    \func{stat}     & $\bullet$ &           \\
-    \func{truncate} & $\bullet$ &           \\
-    \func{unlink}   &           & $\bullet$ \\
+    \func{link}     & --        & --        \\
+    \func{lstat}    & --        & $\bullet$ \\
+    \func{mkdir}    & $\bullet$ & --        \\
+    \func{mkfifo}   & $\bullet$ & --        \\
+    \func{mknod}    & $\bullet$ & --        \\
+    \func{open}     & $\bullet$ & --        \\
+    \func{opendir}  & $\bullet$ & --        \\
+    \func{pathconf} & $\bullet$ & --        \\
+    \func{readlink} & --        & $\bullet$ \\
+    \func{remove}   & --        & $\bullet$ \\
+    \func{rename}   & --        & $\bullet$ \\
+    \func{stat}     & $\bullet$ & --        \\
+    \func{truncate} & $\bullet$ & --        \\
+    \func{unlink}   & --        & $\bullet$ \\
     \hline 
   \end{tabular}
   \caption{Uso dei link simbolici da parte di alcune funzioni.}
@@ -1622,47 +1622,47 @@ nell'ultima colonna di \tabref{tab:file_file_times}.
     \hline
     \hline
     \func{chmod}, \func{fchmod} 
-    &         &         &$\bullet$&         &         &         & \\
+    & --      & --      &$\bullet$& --      & --      & --      & \\
     \func{chown}, \func{fchown} 
-    &         &         &$\bullet$&         &         &         & \\
+    & --      & --      &$\bullet$& --      & --      & --      & \\
     \func{creat}  
-    &$\bullet$&$\bullet$&$\bullet$&         &$\bullet$&$\bullet$&  con 
+    &$\bullet$&$\bullet$&$\bullet$& --      &$\bullet$&$\bullet$&  con 
     \const{O\_CREATE} \\    \func{creat}  
-    &         &$\bullet$&$\bullet$&         &$\bullet$&$\bullet$&   
+    & --      &$\bullet$&$\bullet$& --      &$\bullet$&$\bullet$&   
     con \const{O\_TRUNC} \\    \func{exec}  
-    &$\bullet$&         &         &         &         &         & \\
+    &$\bullet$& --      & --      & --      & --      & --      & \\
     \func{lchown}  
-    &         &         &$\bullet$&         &         &         & \\
+    & --      & --      &$\bullet$& --      & --      & --      & \\
     \func{link}
-    &         &         &$\bullet$&         &$\bullet$&$\bullet$& \\
+    & --      & --      &$\bullet$& --      &$\bullet$&$\bullet$& \\
     \func{mkdir}
-    &$\bullet$&$\bullet$&$\bullet$&         &$\bullet$&$\bullet$& \\
+    &$\bullet$&$\bullet$&$\bullet$& --      &$\bullet$&$\bullet$& \\
     \func{mkfifo}
-    &$\bullet$&$\bullet$&$\bullet$&         &$\bullet$&$\bullet$& \\
+    &$\bullet$&$\bullet$&$\bullet$& --      &$\bullet$&$\bullet$& \\
     \func{open}
-    &$\bullet$&$\bullet$&$\bullet$&         &$\bullet$&$\bullet$& con 
+    &$\bullet$&$\bullet$&$\bullet$& --      &$\bullet$&$\bullet$& con 
     \const{O\_CREATE} \\    \func{open}
-    &         &$\bullet$&$\bullet$&         &         &         & con 
+    & --      &$\bullet$&$\bullet$& --      & --      & --      & con 
     \const{O\_TRUNC}  \\    \func{pipe}
-    &$\bullet$&$\bullet$&$\bullet$&         &         &         & \\
+    &$\bullet$&$\bullet$&$\bullet$& --      & --      & --      & \\
     \func{read}
-    &$\bullet$&         &         &         &         &         & \\
+    &$\bullet$& --      & --      & --      & --      & --      & \\
     \func{remove}
-    &         &         &$\bullet$&         &$\bullet$&$\bullet$& se esegue 
+    & --      & --      &$\bullet$& --      &$\bullet$&$\bullet$& se esegue 
     \func{unlink}\\    \func{remove}
-    &         &         &         &         &$\bullet$&$\bullet$& se esegue 
+    & --      & --      & --      & --      &$\bullet$&$\bullet$& se esegue 
     \func{rmdir}\\ \func{rename}
-    &         &         &$\bullet$&         &$\bullet$&$\bullet$& per entrambi
+    & --      & --      &$\bullet$& --      &$\bullet$&$\bullet$& per entrambi
     gli argomenti\\ \func{rmdir}
-    &         &         &         &         &$\bullet$&$\bullet$& \\ 
+    & --      & --      & --      & --      &$\bullet$&$\bullet$& \\ 
     \func{truncate}, \func{ftruncate}
-    &         &$\bullet$&$\bullet$&         &         &         & \\ 
+    & --      &$\bullet$&$\bullet$& --      & --      & --      & \\ 
     \func{unlink}
-    &         &         &$\bullet$&         &$\bullet$&$\bullet$& \\ 
+    & --      & --      &$\bullet$& --      &$\bullet$&$\bullet$& \\ 
     \func{utime}
-    &$\bullet$&$\bullet$&$\bullet$&         &         &         & \\ 
+    &$\bullet$&$\bullet$&$\bullet$& --      & --      & --      & \\ 
     \func{write}
-    &         &$\bullet$&$\bullet$&         &         &         & \\ 
+    & --      &$\bullet$&$\bullet$& --      & --      & --      & \\ 
     \hline
   \end{tabular}
   \caption{Prospetto dei cambiamenti effettuati sui tempi di ultimo 
index 7d58c31..0d9de52 100644 (file)
@@ -1,6 +1,6 @@
-% fileintro.tex
+%% fileintro.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index d5c5ce1..0a623a0 100644 (file)
@@ -1,6 +1,6 @@
 %% filestd.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index 782afc9..548220b 100644 (file)
@@ -1,6 +1,6 @@
 %% fileunix.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index 251237e..5d0a88f 100644 (file)
--- a/gapil.tex
+++ b/gapil.tex
@@ -1,6 +1,6 @@
 %% gapil.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
@@ -84,7 +84,7 @@
 
 \begin{quote}
   
-  Copyright \copyright\ 2000-2003 Simone Piccardi.  Permission is granted to
+  Copyright \copyright\ 2000-2004 Simone Piccardi.  Permission is granted to
   copy, distribute and/or modify this document under the terms of the GNU Free
   Documentation License, Version 1.1 or any later version published by the
   Free Software Foundation; with the Invariant Sections being ``Prefazione'',
index 28719d4..2a9c973 100644 (file)
--- a/intro.tex
+++ b/intro.tex
@@ -1,6 +1,6 @@
 %% intro.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
diff --git a/ipc.tex b/ipc.tex
index 04fe2cd..762eae1 100644 (file)
--- a/ipc.tex
+++ b/ipc.tex
@@ -1,6 +1,6 @@
 %% ipc.tex
 %%
-%% Copyright (C) 2000-2002 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index 41a118e..df71dc7 100644 (file)
--- a/macro.tex
+++ b/macro.tex
@@ -1,6 +1,6 @@
 %% macro.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index e75dda7..16d252d 100644 (file)
@@ -1,6 +1,6 @@
 %% ipprot.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
@@ -32,7 +32,7 @@ nuova versione denominata IPv6.
 \label{sec:ip_protocol}
 
 L'attuale \textit{Internet Protocol} (IPv4) viene standardizzato nel 1981
-dall'\href{http://www.ietf.org/rfc/rfc0719.txt}{RFC~719}; esso nasce per
+dall'\href{http://www.ietf.org/rfc/rfc719.txt}{RFC~719}; esso nasce per
 disaccoppiare le applicazioni della struttura hardware delle reti di
 trasmissione, e creare una interfaccia di trasmissione dei dati indipendente
 dal sottostante substrato di rete, che può essere realizzato con le tecnologie
@@ -212,7 +212,7 @@ apparecchio elettronico sarebbe stato inserito all'interno della rete.
 Per questo motivo si iniziò a progettare una nuova versione del protocollo 
 
 L'attuale Internet Protocol (IPv4) viene standardizzato nel 1981
-dall'\href{http://www.ietf.org/rfc/rfc0719.txt}{RFC~719}; esso nasce per
+dall'\href{http://www.ietf.org/rfc/rfc719.txt}{RFC~719}; esso nasce per
 disaccoppiare le applicazioni della struttura hardware delle reti di
 trasmissione, e creare una interfaccia di trasmissione dei dati indipendente
 dal sottostante substrato di rete, che può essere realizzato con le tecnologie
index 7c67b41..29dec6c 100644 (file)
@@ -1,6 +1,6 @@
 %% network.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index b21dc6b..08a5e6d 100644 (file)
@@ -1,6 +1,6 @@
 %% process.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
@@ -1140,16 +1140,16 @@ in tab.~\ref{tab:proc_env_func}.
     \textbf{SVr4} & \textbf{BSD} & \textbf{Linux} \\
     \hline
     \hline
-    \func{getenv} & $\bullet$ &  $\bullet$ & $\bullet$ & 
-      $\bullet$ & $\bullet$ & $\bullet$ \\
-    \func{setenv} &   &   &    & 
-        & $\bullet$ & $\bullet$ \\
-    \func{unsetenv} &  &   &    & 
-        & $\bullet$ & $\bullet$ \\
-    \func{putenv} &  & opz.  & $\bullet$ & 
-        & $\bullet$ & $\bullet$ \\
-    \func{clearenv} &  & opz.  &    & 
-        &  &  $\bullet$ \\
+    \func{getenv}  & $\bullet$ & $\bullet$ & $\bullet$ 
+                   & $\bullet$ & $\bullet$ & $\bullet$ \\
+    \func{setenv}  &    --     &    --     &   --      
+                   &    --     & $\bullet$ & $\bullet$ \\
+    \func{unsetenv}&    --     &    --     &   --       
+                   &    --     & $\bullet$ & $\bullet$ \\
+    \func{putenv}  &    --     & opz.      & $\bullet$ 
+                   &    --     & $\bullet$ & $\bullet$ \\
+    \func{clearenv}&    --     & opz.      &   --
+                   &    --     &    --     & $\bullet$ \\
     \hline
   \end{tabular}
   \caption{Funzioni per la gestione delle variabili di ambiente.}
index 86c7a7d..177155d 100644 (file)
@@ -1,6 +1,6 @@
 %% prochand.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index 9861b1f..5d3c92e 100644 (file)
@@ -1,6 +1,6 @@
 %% ringraziamenti.tex
 %%
-%% Copyright (C) 2000-2002 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index c5cdeae..32fccd8 100644 (file)
@@ -1,6 +1,6 @@
 %% session.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index 625a65b..89b20ca 100644 (file)
@@ -1,6 +1,6 @@
 %% signal.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index eec51ec..512c380 100644 (file)
@@ -37,10 +37,14 @@ propriet
 La risoluzione dei nomi è associata tradizionalmente al servizio del
 \textit{Domain Name Service} che permette di identificare le macchine su
 internet invece che per numero IP attraverso il relativo \textsl{nome a
-  dominio}. In realtà per DNS si intendono spesso i server che forniscono su
-internet questo servizio, mentre nel nostro caso affronteremo la problematica
-dal lato client, di un qualunque programma che necessita di compiere questa
-operazione.
+  dominio}.\footnote{non staremo ad entrare nei dettagli della definizione di
+  cosa è un nome a dominio, dandolo per noto, una introduzione alla
+  problematica si trova in \cite{AGL} (cap. 9) mentre per una trattazione
+  approfondita di tutte le problematiche relative al DNS si può fare
+  riferimento a \cite{DNSbind}.} In realtà per DNS si intendono spesso i
+server che forniscono su internet questo servizio, mentre nel nostro caso
+affronteremo la problematica dal lato client, di un qualunque programma che
+necessita di compiere questa operazione.
 
 \begin{figure}[htb]
   \centering
@@ -170,12 +174,12 @@ carattere ``\texttt{:}'' e  prosegue con la lista dei  \textsl{servizi} su cui
 le  relative informazioni sono  raggiungibili, scritti  nell'ordine in  cui si
 vuole siano interrogati.
 
-Ogni servizio è specificato a sua volta da un nome, come \texttt{file},
-\texttt{dns}, \texttt{db}, ecc. che identifica la libreria dinamica che
-realizza l'interfaccia con esso. Per ciascun servizio se \texttt{NAME} è il
-nome utilizzato dentro \file{/etc/nsswitch.conf}, dovrà essere presente
-(usualmente in \file{/lib}) una libreria \texttt{libnss\_NAME} che ne
-implementa le funzioni. 
+Ogni  servizio è  specificato  a sua  volta  da un  nome, come  \texttt{file},
+\texttt{dns},  \texttt{db},  ecc.  che  identifica la  libreria  dinamica  che
+realizza l'interfaccia  con esso. Per  ciascun servizio se \texttt{NAME}  è il
+nome  utilizzato  dentro   \file{/etc/nsswitch.conf},  dovrà  essere  presente
+(usualmente  in   \file{/lib})  una  libreria   \texttt{libnss\_NAME}  che  ne
+implementa le funzioni.
 
 In ogni caso, qualunque sia la modalità con cui ricevono i dati o il supporto
 su cui vengono mantenuti, e che si usino o meno funzionalità aggiuntive
@@ -194,27 +198,40 @@ Prima di trattare le funzioni usate normalmente nella risoluzione dei nomi a
 dominio conviene trattare in maniera più dettagliata il meccanismo principale
 da esse utilizzato e cioè quello del servizio DNS. Come accennato questo,
 benché in teoria sia solo uno dei possibili supporti su cui mantenere le
-relative informazioni, in pratica costituisce il meccanismo principale
+informazioni, in pratica costituisce il meccanismo principale con cui vengono
+risolti i nomi a dominio.  Per questo motivo esistono una serie di funzioni di
+libreria che servono specificamente ad esseguire delle interrogazioni verso un
+server DNS, funzioni che poi vengono utilizzate per realizzare le funzioni
+generiche di libreria usate anche dal sistema del \textit{resolver}.
 
+Il sistema del DNS è in sostanza di un database distribuito organizzato in
+maniera gerarchica, la manutenzione dei dati è mantenuta in tanti server
+distinti ciascuno dei quali si occupa della risoluzione del proprio
+\textit{dominio}; i nomi a dominio sono poi organizzati in una struttura ad
+albero analoga a quella dell'albero dei file in un sistema unix-like, con
+domini di primo livello (come i \texttt{.org}), secondo livello (come
+\texttt{.truelite.it}), ecc.  In questo caso le separazioni sono fra i vari
+livelli sono definite dal carattere ``\texttt{.}''  ed i nomi devono essere
+risolti da destra verso sinistra. Il meccanismo funziona con il criterio della
+\textsl{delegazione}, un server responsabile per un dominio di primo livello
+può delegare la risoluzione degli indirizzi per un suo dominio di secondo
+livello ad un altro server, il quale a sua volta potrà delegare la risoluzione
+di un eventuale sottodominio di terzo livello ad un altro server ancora.
 
-Per questo motivo il \textit{resolver} prevede delle funzioni che permettono
-sia di eseguire direttamente delle interrogazione ad un server DNS, che di
-controllare le modalità con cui queste vengono eseguite; diventa così
-possibile modificare da programma buona parte dei parametri controllati da
-\file{/etc/resolv.conf}.
+In realtà un server DNS contiene comunque una serie di altre informazioni;
+ciascuna voce nel database viene chiamata \textit{resource record}, e viene 
+vi è associato un certo \textsl{tipo}, identificato da una sigla.
 
 
 
-Per capire meglio il contenuto della struttura \struct{hostent} conviene
-spendere alcune parole sul funzionamento del DNS. Questo in sostanza è un
-database distribuito organizzato in maniera gerarchica, interrogando il quale
-si possono avere una serie di informazioni, la principale delle quali è la
-corrispondenza fra un nome (a dominio) ed indirizzo IP.  Un server DNS
-contiene comunque una serie di altre informazioni; ciascuna voce nel database
-viene chiamata \textit{resource record} e vi è associato un certo
-\textsl{tipo}, identificato da una sigla.  Per quanto ci interessa i tipi di
-\textit{resource record} che vengono utilizzati dal \textit{resolver} sono
-sostanzialmente i seguenti:
+
+interrogando il quale si possono avere una serie di informazioni,
+la principale delle quali è appunto la corrispondenza fra un nome (a dominio)
+ed indirizzo IP.
+
+
+Per quanto ci interessa i tipi di \textit{resource record} che vengono
+utilizzati dal \textit{resolver} sono sostanzialmente i seguenti:
 \begin{basedescript}{\desclabelwidth{1.2cm}\desclabelstyle{\nextlinelabel}}
 \item[\texttt{A}] indica la corripondenza fra un nome a dominio ed un
   indirizzo IPv4, ad esempio la corrispondenza fra \texttt{dodds.truelite.it}
@@ -236,6 +253,17 @@ sostanzialmente i seguenti:
 
 
 
+
+
+
+Per questo motivo il \textit{resolver} prevede delle funzioni che permettono
+sia di eseguire direttamente delle interrogazione ad un server DNS, che di
+controllare le modalità con cui queste vengono eseguite; diventa così
+possibile modificare da programma buona parte dei parametri controllati da
+\file{/etc/resolv.conf}.
+
+
+
 \subsection{La risoluzione dei nomi a dominio}
 \label{sec:sock_gethostbyname}
 
index 5426a0d..dee4a6c 100644 (file)
@@ -1,6 +1,6 @@
 %% socket.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index 8986058..3351dc4 100644 (file)
@@ -1,6 +1,6 @@
 %% system.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
index 03955c5..a023c9e 100644 (file)
@@ -1,6 +1,6 @@
 %% tcpsock.tex
 %%
-%% Copyright (C) 2000-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",
@@ -1227,7 +1227,7 @@ descritta in \secref{sec:TCP_conn_term}, si pu
 Avendo introdotto le funzioni di base per la gestione dei socket, potremo
 vedere in questa sezione un primo esempio di applicazione elementare che
 implementa il servizio \textit{daytime} su TCP, secondo quanto specificato
-dall'\href{http://www.ietf.org/rfc/rfc0867.txt}{RFC~867}.  Prima di passare
+dall'\href{http://www.ietf.org/rfc/rfc867.txt}{RFC~867}.  Prima di passare
 agli esempi del client e del server, inizieremo riesaminando con maggiori
 dettagli una peculiarità delle funzioni di I/O, già accennata in
 \secref{sec:file_read} e \secref{sec:file_write}, che nel caso dei socket è
@@ -1312,7 +1312,7 @@ byte non letti in caso di end-of-file prematuro.
 Il primo esempio di applicazione delle funzioni di base illustrate in
 \secref{sec:TCP_functions} è relativo alla creazione di un client elementare
 per il servizio \textit{daytime}, un servizio elementare, definito
-nell'\href{http://www.ietf.org/rfc/rfc0867.txt}{RFC~867}, che restituisce
+nell'\href{http://www.ietf.org/rfc/rfc867.txt}{RFC~867}, che restituisce
 l'ora locale della macchina a cui si effettua la richiesta, e che è assegnato
 alla porta 13.
 
@@ -1634,7 +1634,7 @@ da parte di un server che risponde fornendo altri dati in uscita.
 
 Il servizio \textit{echo} è uno dei servizi standard solitamente provvisti
 direttamente dal superserver \cmd{inetd}, ed è definito
-dall'\href{http://www.ietf.org/rfc/rfc0862.txt}{RFC~862}. Come dice il nome il
+dall'\href{http://www.ietf.org/rfc/rfc862.txt}{RFC~862}. Come dice il nome il
 servizio deve riscrivere indietro sul socket i dati che gli vengono inviati in
 ingresso. L'RFC descrive le specifiche del servizio sia per TCP che UDP, e per
 il primo stabilisce che una volta stabilita la connessione ogni dato in
index f02165b..a327154 100644 (file)
@@ -1,6 +1,6 @@
 %% tcpprot.tex
 %%
-%% Copyright (C) 2002-2003 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2002-2004 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Prefazione",