+%% compatib.tex
+%%
+%% Copyright (C) 2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
+%
% Pacchetto di contabilità per evitare casini con latex2html
-\newenvironment{description*}
-{
+%
+% Simone Piccardi, Aug. 2002
+%
+\newenvironment{description*} {
\begin{description}
}
{
+%% elemtcp.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{Socket TCP elementari}
\label{cha:elem_TCP_sock}
+%% errors.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{I codici di errore}
\label{cha:errors}
+%% fileadv.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{La gestione avanzata dei file}
\label{cha:file_advanced}
+%% filedir.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{File e directory}
\label{cha:files_and_dirs}
+%% fileintro.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{L'architettura dei file}
\label{cha:file_intro}
+%% filestd.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{I file: l'interfaccia standard ANSI C}
\label{cha:files_std_interface}
+%% fileunix.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{I file: l'interfaccia standard Unix}
\label{cha:file_unix_interface}
+%% gapil.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
%%
%% GaPiL : Guida alla Programmazione in Linux
%%
%% S. Piccardi Oct. 2000
%%
-%% main.tex: file principale, gli altri vanno inclusi da questo.
+%% gapil.tex: file principale, gli altri vanno inclusi da questo.
%%
\documentclass[a4paper,11pt,twoside,italian]{book}
\usepackage[latin1]{inputenc}
<tr>
<td valign="top"> <b> Cap. 2-3 </b> </td>
<td valign="top"> Gestione dei processi </td>
- <td valign="top"> qausi completi e parzialmente revisionati
+ <td valign="top"> quasi completi e parzialmente revisionati
</td>
</tr>
<tr>
<tr>
<td valign="top"> <b> Cap. 8 </b> </td>
<td valign="top"> Sistema, parametri, errori</td>
- <td valign="top"> completo, da revisionare</td>
+ <td valign="top"> quasi completo, da revisionare</td>
</tr>
<tr>
<td valign="top"> <b> Cap. 9 </b> </td>
<td valign="top"> Segnali</td>
- <td valign="top"> completo, da revisionare </td>
+ <td valign="top"> quasi completo, da revisionare </td>
</tr>
<tr>
<td valign="top"> <b> Cap. 10 </b> </td>
<td valign="top"> <b> Cap. 12 </b> </td>
<td valign="top"> IPC</td>
<td valign="top"> Pipe, fifo e code complete,
- semafori quasi completi, memoria condivisa e
+ semafori memoria condivisa quasi completi,
IPC POSIX da fare </td>
<tr>
<td valign="top"> <b> Cap. 13-14 </b> </td>
<td valign="top"> Introduzione alla rete</td>
- <td valign="top"> completi, da revisionare </td>
+ <td valign="top"> quasi completi, da revisionare </td>
</tr>
<tr>
<td valign="top"> <b> Cap. 15-16 </b> </td>
<td valign="top"> Socket TCP elementari</td>
- <td valign="top"> Caratteristiche base complete, esempio
- elementare da concludere </td>
+ <td valign="top"> Caratteristiche base quasi complete,
+ esempio elementare da concludere </td>
</tr>
</tbody>
</table>
+%% intro.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{L'architettura del sistema}
\label{cha:intro_unix}
Quanto appena illustrato mette in evidenza il fatto che nella stragrande
maggioranza dei casi,\footnote{esistono implementazioni diverse delle librerie
- del C, come le \textit{libc5} o le \textit{uclib}, che non derivano dal
- progetto GNU, ma oggi sono, tranne casi particolari, completamente
- soppiantate dalle \acr{glibc}.} si dovrebbe usare il nome GNU/Linux
-(piuttosto che soltanto Linux) in quanto una parte essenziale del sistema
-(senza la quale niente funzionerebbe) è la GNU Standard C Library (in breve
-\acr{glibc}), ovvero la libreria realizzata dalla Free Software Foundation
-nella quale sono state implementate tutte le funzioni essenziali definite
-negli standard POSIX e ANSI C, utilizzabili da qualunque programma.
+ Standard del C, come le \textit{libc5} o le \textit{uClib}, che non derivano
+ dal progetto GNU. Le \textit{libc5} oggi sono, tranne casi particolari,
+ completamente soppiantate dalle \acr{glibc}, le \textit{uClib} pur non
+ essendo complete come le \acr{glibc}, restano invece molto diffuse nel mondo
+ embedded per le loro di dimensioni ridotte (e soprattutto la possibilità di
+ togliere le parti non necessearie), e pertanto costituiscono un valido
+ rimpiazzo delle \acr{glibc} in tutti quei sistemi specializzati che
+ richiedono una minima occupazione di memoria.} si dovrebbe usare il nome
+GNU/Linux (piuttosto che soltanto Linux) in quanto una parte essenziale del
+sistema (senza la quale niente funzionerebbe) è la GNU Standard C Library (in
+breve \acr{glibc}), ovvero la libreria realizzata dalla Free Software
+Foundation nella quale sono state implementate tutte le funzioni essenziali
+definite negli standard POSIX e ANSI C, utilizzabili da qualunque programma.
Le funzioni di questa libreria sono quelle riportate dalla terza sezione del
-\textsl{Manuale di Programmazione di Unix }(cioè accessibili con il comando
+\textsl{Manuale di Programmazione di Unix} (cioè accessibili con il comando
\cmd{man 3 <nome>}) e sono costruite sulla base delle chiamate al sistema del
kernel; è importante avere presente questa distinzione, fondamentale dal punto
di vista dell'implementazione, anche se poi, nella realizzazione di normali
+%% ipc.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{La comunicazione fra processi}
\label{cha:IPC}
+%% ipprot.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{Il protocollo IP}
\label{cha:ip_protocol}
+%% macro.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
%
% Defining some commands to manipulate counter to avoid ude of
% \label and \ref commands (and related problem to remeber the
+%% network.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{Introduzione alla programmazione di rete}
\label{cha:network}
+%% pref.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{Prefazione}
\label{cha:preface}
+%% process.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{L'interfaccia base con i processi}
\label{cha:process_interface}
multipli di 8 byte.
In genere si usano le funzioni \func{malloc} e \func{calloc} per allocare
-dinamicamente la memoria necessaria al programma, e siccome i puntatori
-ritornati sono di tipo generico non è necessario effettuare un cast per
-assegnarli a puntatori al tipo di variabile per la quale si effettua
-l'allocazione.
+dinamicamente la quantità di memoria necessaria al programma indicata da
+\param{size},\footnote{queste funzioni presentano un comportamento diverso fra
+ le \acr{glibc} e le \acr{uClib} quando il valore di \param{size} è nullo.
+ Nel primo caso viene comunque restituito un puntatore valido, anche se non è
+ chiaro a cosa esso possa fare riferimento, nel secondo caso viene restituito
+ \func{NULL}. Il comportamento è analogo con \code{realloc(NULL, 0)}.} e
+siccome i puntatori ritornati sono di tipo generico non è necessario
+effettuare un cast per assegnarli a puntatori al tipo di variabile per la
+quale si effettua l'allocazione.
La memoria allocata dinamicamente deve essere esplicitamente rilasciata usando
\func{free}\footnote{le glibc provvedono anche una funzione \func{cfree}
+%% prochand.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{La gestione dei processi}
\label{cha:process_handling}
+%% ringraziamenti.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{Ringraziamenti}
\label{cha:ringraziamenti}
+%% session.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{Terminali e sessioni di lavoro}
\label{cha:session}
+%% signal.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{I segnali}
\label{cha:signals}
In \figref{fig:sig_sigchld_handl} è mostrato il codice contenente una
implementazione generica di una routine di gestione per \macro{SIGCHLD}, (che
-si trova nei sorgenti allegati nel file \file{HandSIGCHLD.c}); se ripetiamo i
-test di \secref{sec:proc_termination}, invocando \cmd{forktest} con l'opzione
+si trova nei sorgenti allegati nel file \file{SigHand.c}); se ripetiamo i test
+di \secref{sec:proc_termination}, invocando \cmd{forktest} con l'opzione
\cmd{-s} (che si limita ad effettuare l'installazione di questa funzione come
gestore di \macro{SIGCHLD}) potremo verificare che non si ha più la creazione
di zombie.
#include <sys/wait.h>
#include "macro.h"
-void HandSIGCHLD(int sig)
+void HandSigCHLD(int sig)
{
int errno_save;
int status;
+%% simpltcp.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{Un esempio completo di client/server TCP}
\label{cha:simple_TCP_sock}
+%% socket.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{Introduzione ai socket}
\label{cha:socket_intro}
+/* Gapil.h
+ *
+ * Copyright (C) 2002 Simone Piccardi
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at
+ * your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
/*****************************************************************************
*
* File Gapil.h:
*
* Author: S. Piccardi
*
- * $Id: Gapil.h,v 1.1 2002/12/03 11:06:05 piccardi Exp $
+ * $Id: Gapil.h,v 1.2 2002/12/03 22:30:11 piccardi Exp $
*
*****************************************************************************/
#include <sys/sem.h> /* IPC semaphore declarations */
+/* LockFile.c
+ *
+ * Copyright (C) 2002 Simone Piccardi
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at
+ * your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
/*****************************************************************************
*
* File LockFile.h:
*
* Author: S. Piccardi, Dec 2002
*
- * $Id: LockFile.c,v 1.1 2002/12/03 11:06:05 piccardi Exp $
+ * $Id: LockFile.c,v 1.2 2002/12/03 22:30:11 piccardi Exp $
*
*****************************************************************************/
#include <sys/types.h>
+/* Mutex.c
+ *
+ * Copyright (C) 2002 Simone Piccardi
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at
+ * your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
/*****************************************************************************
*
* File Mutex.c: define a set of functions for mutex manipulation
*
* Author: S. Piccardi Dec. 2002
*
- * $Id: Mutex.c,v 1.1 2002/12/03 11:06:05 piccardi Exp $
+ * $Id: Mutex.c,v 1.2 2002/12/03 22:30:11 piccardi Exp $
*
*****************************************************************************/
#include <sys/sem.h> /* IPC semaphore declarations */
+/* SharedMem.c
+ *
+ * Copyright (C) 2002 Simone Piccardi
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at
+ * your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
/***************************************************************
*
* File SharedMem.c
*
* Author: S. Piccardi
*
- * $Id: SharedMem.c,v 1.1 2002/12/03 11:06:05 piccardi Exp $
+ * $Id: SharedMem.c,v 1.2 2002/12/03 22:30:11 piccardi Exp $
*
***************************************************************/
#include <sys/shm.h> /* SysV IPC shared memory declarations */
+/* SigHand.c
+ *
+ * Copyright (C) 2002 Simone Piccardi
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at
+ * your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
/*****************************************************************************
*
* File SigHand.c: define a set of functions for signal manipulation
*
* Author: S. Piccardi Dec. 2002
*
- * $Id: SigHand.c,v 1.1 2002/12/03 11:06:05 piccardi Exp $
+ * $Id: SigHand.c,v 1.2 2002/12/03 22:30:11 piccardi Exp $
*
*****************************************************************************/
#include <errno.h> /* error simbol definitions */
* Generic handler for SIGCHLD signal
*
* Simone Piccardi Dec. 2002
- * $Id: SigHand.c,v 1.1 2002/12/03 11:06:05 piccardi Exp $
+ * $Id: SigHand.c,v 1.2 2002/12/03 22:30:11 piccardi Exp $
*/
void HandSigCHLD(int sig)
{
+/* macros.h
+ *
+ * Copyright (C) 2000-2002 Simone Piccardi
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at
+ * your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
/*
* Endianess conversion for int and short types
*/
+%% system.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{La gestione del sistema, delle risorse, e degli errori}
\label{cha:system}
+%% tcpprot.tex
+%%
+%% Copyright (C) 2000-2002 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",
+%% with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
\chapter{Il protocollo TCP}
\label{cha:tcp_protocol}