summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2001-08-02 11:49:52 +0000
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2001-08-02 11:49:52 +0000
commit105b47168ebd4fe32d4dde4a26fe38cc52ad865d (patch)
treea990e4f6c0be361c48da5a8db2c778a79af27d0e
parentf56ad1729fcc64ae1e2d3dbd12811a9847187ac0 (diff)
downloadgnutls-105b47168ebd4fe32d4dde4a26fe38cc52ad865d.tar.gz
documentation updates
-rw-r--r--doc/tex/Makefile.am9
-rw-r--r--doc/tex/cover.tex31
-rw-r--r--doc/tex/fdl.tex367
-rw-r--r--doc/tex/gnutls.tex34
-rw-r--r--doc/tex/macros.tex2
5 files changed, 428 insertions, 15 deletions
diff --git a/doc/tex/Makefile.am b/doc/tex/Makefile.am
index 089d80a9e2..2aa3b9cd7d 100644
--- a/doc/tex/Makefile.am
+++ b/doc/tex/Makefile.am
@@ -1,6 +1,6 @@
EXTRA_DIST = gnutls-api.tex gnutls.tex gnutls.ps gnutls.html \
ex1.tex ex2.tex ex3.tex srp1.tex serv1.tex gnutls.css \
- nx_grp_g.png prev_g.png up_g.png
+ nx_grp_g.png prev_g.png up_g.png fdl.tex macros.tex
gnutls-api: gnutls.html gnutls.ps
gnutls-api.tex:
@@ -8,9 +8,12 @@ gnutls-api.tex:
@echo "\\section{Function Reference}" >> gnutls-api.tex
@../scripts/gdoc -tex ../../lib/*.c >> gnutls-api.tex
-gnutls.ps: gnutls.tex gnutls-api.tex serv1.tex ex1.tex ex2.tex ex3.tex
+gnutls.ps: $(OBJECTS)
-latex gnutls.tex && latex gnutls.tex && dvips gnutls.dvi -o gnutls.ps
-gnutls.html: gnutls.tex gnutls-api.tex serv1.tex ex1.tex ex2.tex ex3.tex
+gnutls.html: $(OBJECTS)
-latex2html gnutls.tex -no_subdir 1 -split 0 -local_icons -prefix ./ \
-info ""
+
+OBJECTS = gnutls.tex gnutls-api.tex serv1.tex ex1.tex ex2.tex ex3.tex fdl.tex \
+ macros.tex cover.tex
diff --git a/doc/tex/cover.tex b/doc/tex/cover.tex
new file mode 100644
index 0000000000..a85dc86500
--- /dev/null
+++ b/doc/tex/cover.tex
@@ -0,0 +1,31 @@
+\thispagestyle{empty}
+
+\setlength{\parindent}{0mm}
+
+\setlength{\parskip}{0mm}
+
+ {\Huge GNUTLS\\[.1mm]}
+ \HRule
+ \begin{flushright}
+ a Transport Layer Security Library
+ \end{flushright}
+
+ \vspace*{\stretch{3}}
+
+ {\Large By Nikos Mavroyanopoulos and Fabio Fiorina\\[.1mm]}
+ \HRule
+
+\newpage
+
+\vspace*{\stretch{2}}
+
+\begin{center}
+\par
+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 no Invariant Sections, no Front-Cover Texts and
+no Back-Cover Texts. A copy of the license is included in the
+chapter entitled "GNU Free Documentation License".
+\end{center}
+
diff --git a/doc/tex/fdl.tex b/doc/tex/fdl.tex
new file mode 100644
index 0000000000..c0fcbe3f30
--- /dev/null
+++ b/doc/tex/fdl.tex
@@ -0,0 +1,367 @@
+% fdl.tex
+% This file is a chapter. It must be included in a larger document to work
+% properly.
+
+\chapter{GNU Free Documentation License}
+
+Version 1.1, March 2000\\
+
+ Copyright \copyright\ 2000 Free Software Foundation, Inc.\\
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\\
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+\section*{Preamble}
+
+The purpose of this License is to make a manual, textbook, or other
+written document ``free'' in the sense of freedom: to assure everyone
+the effective freedom to copy and redistribute it, with or without
+modifying it, either commercially or noncommercially. Secondarily,
+this License preserves for the author and publisher a way to get
+credit for their work, while not being considered responsible for
+modifications made by others.
+
+This License is a kind of ``copyleft'', which means that derivative
+works of the document must themselves be free in the same sense. It
+complements the GNU General Public License, which is a copyleft
+license designed for free software.
+
+We have designed this License in order to use it for manuals for free
+software, because free software needs free documentation: a free
+program should come with manuals providing the same freedoms that the
+software does. But this License is not limited to software manuals;
+it can be used for any textual work, regardless of subject matter or
+whether it is published as a printed book. We recommend this License
+principally for works whose purpose is instruction or reference.
+
+\section{Applicability and Definitions}
+
+This License applies to any manual or other work that contains a
+notice placed by the copyright holder saying it can be distributed
+under the terms of this License. The ``Document'', below, refers to any
+such manual or work. Any member of the public is a licensee, and is
+addressed as ``you''.
+
+A ``Modified Version'' of the Document means any work containing the
+Document or a portion of it, either copied verbatim, or with
+modifications and/or translated into another language.
+
+A ``Secondary Section'' is a named appendix or a front-matter section of
+the Document that deals exclusively with the relationship of the
+publishers or authors of the Document to the Document's overall subject
+(or to related matters) and contains nothing that could fall directly
+within that overall subject. (For example, if the Document is in part a
+textbook of mathematics, a Secondary Section may not explain any
+mathematics.) The relationship could be a matter of historical
+connection with the subject or with related matters, or of legal,
+commercial, philosophical, ethical or political position regarding
+them.
+
+The ``Invariant Sections'' are certain Secondary Sections whose titles
+are designated, as being those of Invariant Sections, in the notice
+that says that the Document is released under this License.
+
+The ``Cover Texts'' are certain short passages of text that are listed,
+as Front-Cover Texts or Back-Cover Texts, in the notice that says that
+the Document is released under this License.
+
+A ``Transparent'' copy of the Document means a machine-readable copy,
+represented in a format whose specification is available to the
+general public, whose contents can be viewed and edited directly and
+straightforwardly with generic text editors or (for images composed of
+pixels) generic paint programs or (for drawings) some widely available
+drawing editor, and that is suitable for input to text formatters or
+for automatic translation to a variety of formats suitable for input
+to text formatters. A copy made in an otherwise Transparent file
+format whose markup has been designed to thwart or discourage
+subsequent modification by readers is not Transparent. A copy that is
+not ``Transparent'' is called ``Opaque''.
+
+Examples of suitable formats for Transparent copies include plain
+ASCII without markup, Texinfo input format, \LaTeX~input format, SGML
+or XML using a publicly available DTD, and standard-conforming simple
+HTML designed for human modification. Opaque formats include
+PostScript, PDF, proprietary formats that can be read and edited only
+by proprietary word processors, SGML or XML for which the DTD and/or
+processing tools are not generally available, and the
+machine-generated HTML produced by some word processors for output
+purposes only.
+
+The ``Title Page'' means, for a printed book, the title page itself,
+plus such following pages as are needed to hold, legibly, the material
+this License requires to appear in the title page. For works in
+formats which do not have any title page as such, ``Title Page'' means
+the text near the most prominent appearance of the work's title,
+preceding the beginning of the body of the text.
+
+
+\section{Verbatim Copying}
+
+You may copy and distribute the Document in any medium, either
+commercially or noncommercially, provided that this License, the
+copyright notices, and the license notice saying this License applies
+to the Document are reproduced in all copies, and that you add no other
+conditions whatsoever to those of this License. You may not use
+technical measures to obstruct or control the reading or further
+copying of the copies you make or distribute. However, you may accept
+compensation in exchange for copies. If you distribute a large enough
+number of copies you must also follow the conditions in section 3.
+
+You may also lend copies, under the same conditions stated above, and
+you may publicly display copies.
+
+
+\section{Copying in Quantity}
+
+If you publish printed copies of the Document numbering more than 100,
+and the Document's license notice requires Cover Texts, you must enclose
+the copies in covers that carry, clearly and legibly, all these Cover
+Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
+the back cover. Both covers must also clearly and legibly identify
+you as the publisher of these copies. The front cover must present
+the full title with all words of the title equally prominent and
+visible. You may add other material on the covers in addition.
+Copying with changes limited to the covers, as long as they preserve
+the title of the Document and satisfy these conditions, can be treated
+as verbatim copying in other respects.
+
+If the required texts for either cover are too voluminous to fit
+legibly, you should put the first ones listed (as many as fit
+reasonably) on the actual cover, and continue the rest onto adjacent
+pages.
+
+If you publish or distribute Opaque copies of the Document numbering
+more than 100, you must either include a machine-readable Transparent
+copy along with each Opaque copy, or state in or with each Opaque copy
+a publicly-accessible computer-network location containing a complete
+Transparent copy of the Document, free of added material, which the
+general network-using public has access to download anonymously at no
+charge using public-standard network protocols. If you use the latter
+option, you must take reasonably prudent steps, when you begin
+distribution of Opaque copies in quantity, to ensure that this
+Transparent copy will remain thus accessible at the stated location
+until at least one year after the last time you distribute an Opaque
+copy (directly or through your agents or retailers) of that edition to
+the public.
+
+It is requested, but not required, that you contact the authors of the
+Document well before redistributing any large number of copies, to give
+them a chance to provide you with an updated version of the Document.
+
+
+\section{Modifications}
+
+You may copy and distribute a Modified Version of the Document under
+the conditions of sections 2 and 3 above, provided that you release
+the Modified Version under precisely this License, with the Modified
+Version filling the role of the Document, thus licensing distribution
+and modification of the Modified Version to whoever possesses a copy
+of it. In addition, you must do these things in the Modified Version:
+
+\begin{itemize}
+
+\item Use in the Title Page (and on the covers, if any) a title distinct
+ from that of the Document, and from those of previous versions
+ (which should, if there were any, be listed in the History section
+ of the Document). You may use the same title as a previous version
+ if the original publisher of that version gives permission.
+\item List on the Title Page, as authors, one or more persons or entities
+ responsible for authorship of the modifications in the Modified
+ Version, together with at least five of the principal authors of the
+ Document (all of its principal authors, if it has less than five).
+\item State on the Title page the name of the publisher of the
+ Modified Version, as the publisher.
+\item Preserve all the copyright notices of the Document.
+\item Add an appropriate copyright notice for your modifications
+ adjacent to the other copyright notices.
+\item Include, immediately after the copyright notices, a license notice
+ giving the public permission to use the Modified Version under the
+ terms of this License, in the form shown in the Addendum below.
+\item Preserve in that license notice the full lists of Invariant Sections
+ and required Cover Texts given in the Document's license notice.
+\item Include an unaltered copy of this License.
+\item Preserve the section entitled ``History'', and its title, and add to
+ it an item stating at least the title, year, new authors, and
+ publisher of the Modified Version as given on the Title Page. If
+ there is no section entitled ``History'' in the Document, create one
+ stating the title, year, authors, and publisher of the Document as
+ given on its Title Page, then add an item describing the Modified
+ Version as stated in the previous sentence.
+\item Preserve the network location, if any, given in the Document for
+ public access to a Transparent copy of the Document, and likewise
+ the network locations given in the Document for previous versions
+ it was based on. These may be placed in the ``History'' section.
+ You may omit a network location for a work that was published at
+ least four years before the Document itself, or if the original
+ publisher of the version it refers to gives permission.
+\item In any section entitled ``Acknowledgements'' or ``Dedications'',
+ preserve the section's title, and preserve in the section all the
+ substance and tone of each of the contributor acknowledgements
+ and/or dedications given therein.
+\item Preserve all the Invariant Sections of the Document,
+ unaltered in their text and in their titles. Section numbers
+ or the equivalent are not considered part of the section titles.
+\item Delete any section entitled ``Endorsements''. Such a section
+ may not be included in the Modified Version.
+\item Do not retitle any existing section as ``Endorsements''
+ or to conflict in title with any Invariant Section.
+
+\end{itemize}
+
+If the Modified Version includes new front-matter sections or
+appendices that qualify as Secondary Sections and contain no material
+copied from the Document, you may at your option designate some or all
+of these sections as invariant. To do this, add their titles to the
+list of Invariant Sections in the Modified Version's license notice.
+These titles must be distinct from any other section titles.
+
+You may add a section entitled ``Endorsements'', provided it contains
+nothing but endorsements of your Modified Version by various
+parties -- for example, statements of peer review or that the text has
+been approved by an organization as the authoritative definition of a
+standard.
+
+You may add a passage of up to five words as a Front-Cover Text, and a
+passage of up to 25 words as a Back-Cover Text, to the end of the list
+of Cover Texts in the Modified Version. Only one passage of
+Front-Cover Text and one of Back-Cover Text may be added by (or
+through arrangements made by) any one entity. If the Document already
+includes a cover text for the same cover, previously added by you or
+by arrangement made by the same entity you are acting on behalf of,
+you may not add another; but you may replace the old one, on explicit
+permission from the previous publisher that added the old one.
+
+The author(s) and publisher(s) of the Document do not by this License
+give permission to use their names for publicity for or to assert or
+imply endorsement of any Modified Version.
+
+
+\section{Combining Documents}
+
+You may combine the Document with other documents released under this
+License, under the terms defined in section 4 above for modified
+versions, provided that you include in the combination all of the
+Invariant Sections of all of the original documents, unmodified, and
+list them all as Invariant Sections of your combined work in its
+license notice.
+
+The combined work need only contain one copy of this License, and
+multiple identical Invariant Sections may be replaced with a single
+copy. If there are multiple Invariant Sections with the same name but
+different contents, make the title of each such section unique by
+adding at the end of it, in parentheses, the name of the original
+author or publisher of that section if known, or else a unique number.
+Make the same adjustment to the section titles in the list of
+Invariant Sections in the license notice of the combined work.
+
+In the combination, you must combine any sections entitled ``History''
+in the various original documents, forming one section entitled
+``History''; likewise combine any sections entitled ``Acknowledgements'',
+and any sections entitled ``Dedications''. You must delete all sections
+entitled ``Endorsements.''
+
+
+\section{Collections of Documents}
+
+You may make a collection consisting of the Document and other documents
+released under this License, and replace the individual copies of this
+License in the various documents with a single copy that is included in
+the collection, provided that you follow the rules of this License for
+verbatim copying of each of the documents in all other respects.
+
+You may extract a single document from such a collection, and distribute
+it individually under this License, provided you insert a copy of this
+License into the extracted document, and follow this License in all
+other respects regarding verbatim copying of that document.
+
+
+
+\section{Aggregation With Independent Works}
+
+A compilation of the Document or its derivatives with other separate
+and independent documents or works, in or on a volume of a storage or
+distribution medium, does not as a whole count as a Modified Version
+of the Document, provided no compilation copyright is claimed for the
+compilation. Such a compilation is called an ``aggregate'', and this
+License does not apply to the other self-contained works thus compiled
+with the Document, on account of their being thus compiled, if they
+are not themselves derivative works of the Document.
+
+If the Cover Text requirement of section 3 is applicable to these
+copies of the Document, then if the Document is less than one quarter
+of the entire aggregate, the Document's Cover Texts may be placed on
+covers that surround only the Document within the aggregate.
+Otherwise they must appear on covers around the whole aggregate.
+
+
+\section{Translation}
+
+Translation is considered a kind of modification, so you may
+distribute translations of the Document under the terms of section 4.
+Replacing Invariant Sections with translations requires special
+permission from their copyright holders, but you may include
+translations of some or all Invariant Sections in addition to the
+original versions of these Invariant Sections. You may include a
+translation of this License provided that you also include the
+original English version of this License. In case of a disagreement
+between the translation and the original English version of this
+License, the original English version will prevail.
+
+
+\section{Termination}
+
+You may not copy, modify, sublicense, or distribute the Document except
+as expressly provided for under this License. Any other attempt to
+copy, modify, sublicense or distribute the Document is void, and will
+automatically terminate your rights under this License. However,
+parties who have received copies, or rights, from you under this
+License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+
+\section{Future Revisions of This License}
+
+The Free Software Foundation may publish new, revised versions
+of the GNU Free Documentation License from time to time. Such new
+versions will be similar in spirit to the present version, but may
+differ in detail to address new problems or concerns. See
+http://www.gnu.org/copyleft/.
+
+Each version of the License is given a distinguishing version number.
+If the Document specifies that a particular numbered version of this
+License "or any later version" applies to it, you have the option of
+following the terms and conditions either of that specified version or
+of any later version that has been published (not as a draft) by the
+Free Software Foundation. If the Document does not specify a version
+number of this License, you may choose any version ever published (not
+as a draft) by the Free Software Foundation.
+
+\section*{ADDENDUM: How to use this License for your documents}
+
+To use this License in a document you have written, include a copy of
+the License in the document and put the following copyright and
+license notices just after the title page:
+
+\begin{quote}
+
+ Copyright \copyright\ YEAR YOUR NAME.
+ 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 LIST THEIR TITLES, with the
+ Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
+ A copy of the license is included in the section entitled ``GNU
+ Free Documentation License''.
+
+\end{quote}
+
+If you have no Invariant Sections, write ``with no Invariant Sections''
+instead of saying which ones are invariant. If you have no
+Front-Cover Texts, write ``no Front-Cover Texts'' instead of
+``Front-Cover Texts being LIST''; likewise for Back-Cover Texts.
+
+If your document contains nontrivial examples of program code, we
+recommend releasing these examples in parallel under your choice of
+free software license, such as the GNU General Public License,
+to permit their use in free software.
+
diff --git a/doc/tex/gnutls.tex b/doc/tex/gnutls.tex
index e9ea18e9c8..14f2c6f5bd 100644
--- a/doc/tex/gnutls.tex
+++ b/doc/tex/gnutls.tex
@@ -1,22 +1,30 @@
-\documentclass{article}
+\documentclass{book}
\usepackage{html}
+\usepackage{fancyheadings}
+\usepackage{times}
+
+\input{macros}
+
\begin{document}
+\pagenumbering{roman}
+
+\input{cover}
-\title{GNUTLS: a Transport Layer Security Library}
-\author{Nikos Mavroyanopoulos}
-\maketitle
\tableofcontents
\newpage
+\pagenumbering{arabic}
+\pagestyle{fancy}
+\chapter{The Library}
\section{Introduction}
\par
-gnuTLS is a library which implements the {\bf TLS 1.0} and {\bf SSL 3.0} protocols.
+\gnutls is a library which implements the {\bf TLS 1.0} and {\bf SSL 3.0} protocols.
TLS stands for 'Transport Layer Security' and is the sucessor of SSL\footnote{
SSL or Secure Sockets Layer is a protocol designed by Netscape. TLS 1.0 is based on
{\bf SSL 3.0} protocol. {\bf SSL 2.0} is very old protocol which is vulnerable to several attacks. SSL 2.0 is not
-implemented in gnuTLS}.
+implemented in \gnutls}.
{\bf TLS 1.0} is described is {\it RFC 2246} and is an Internet protocol,
defined by IETF\footnote{IETF or Internet Engineering Task Force
is a large open international community of network
@@ -25,7 +33,7 @@ the Internet architecture and the smooth operation of the Internet. It is open t
that provides confidentiality, and authentication layers.
TLS is mostly used over {\bf TCP/IP} although this is not restrictive, you may
use it over any reliable transport layer.
-Currently gnuTLS implements:
+Currently \gnutls implements:
\begin{itemize}
\item the {\bf TLS 1.0} and {\bf{ SSL 3.0}} protocols, without any (US) export-controlled algorithms
\item {\bf X509} Public Key Infrastructure (with several limitations).
@@ -41,7 +49,7 @@ to encrypt and decrypt data.
\subsection{Authentication}
\par
-The following authentication schemas are supported in gnuTLS:
+The following authentication schemas are supported in \gnutls:
\begin{enumerate}
\item X509 Public Key Infrastructure
\item Anonymous authentication
@@ -51,7 +59,7 @@ The following authentication schemas are supported in gnuTLS:
\section{Client Examples}
-This section contains examples of TLS and SSL clients, using gnuTLS.
+This section contains examples of TLS and SSL clients, using \gnutls.
\subsection{Simple Client example with X509 Authentication}
Let's assume now that we want to create a client which communicates
@@ -80,7 +88,7 @@ a lot of calculations are performed. In order to support many fast connections t
the same server a client may use session resuming. {\bf Session resuming} is a
feature of the {\bf TLS} protocol which allows a client to connect to a server,
after a successful handshake, without the expensive calculations (ie. use the previously
-established keys). {\bf gnuTLS} supports this feature, and this example illustrates a
+established keys). \gnutls supports this feature, and this example illustrates a
typical use of it (This is a modification of the simple client example).
\par
@@ -90,7 +98,7 @@ it may be normal for a server not to resume a session even if you requested that
\input{ex1}
\subsection{Simple Client example with SRP Authentication}
-Although {\bf SRP} is not part of the TLS standard, gnuTLS implements
+Although {\bf SRP} is not part of the TLS standard, \gnutls implements
{\it draft-ietf-tls-srp-01} which defines a way to use the SRP algorithm
within the TLS handshake. The following client
is a very simple SRP-TLS client which connects to a server by using
@@ -99,7 +107,7 @@ is a very simple SRP-TLS client which connects to a server by using
\input{srp1}
\section{Server Examples}
-This section contains examples of TLS and SSL servers, using gnuTLS.
+This section contains examples of TLS and SSL servers, using \gnutls.
\subsection{Echo Server with X509 and SRP authentication}
The following example is a server which supports both {\bf SRP} and {\bf X509} authentication.
@@ -108,5 +116,7 @@ This server also supports {\it session resuming}.
\include{gnutls-api}
+\input{fdl.tex}
+
\end{document}
diff --git a/doc/tex/macros.tex b/doc/tex/macros.tex
new file mode 100644
index 0000000000..61da577f32
--- /dev/null
+++ b/doc/tex/macros.tex
@@ -0,0 +1,2 @@
+\newcommand{\gnutls}{{\it gnuTLS} }
+\newcommand{\HRule}{\rule{\linewidth}{0.4mm}}