diff options
author | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2001-08-02 11:49:52 +0000 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2001-08-02 11:49:52 +0000 |
commit | 105b47168ebd4fe32d4dde4a26fe38cc52ad865d (patch) | |
tree | a990e4f6c0be361c48da5a8db2c778a79af27d0e | |
parent | f56ad1729fcc64ae1e2d3dbd12811a9847187ac0 (diff) | |
download | gnutls-105b47168ebd4fe32d4dde4a26fe38cc52ad865d.tar.gz |
documentation updates
-rw-r--r-- | doc/tex/Makefile.am | 9 | ||||
-rw-r--r-- | doc/tex/cover.tex | 31 | ||||
-rw-r--r-- | doc/tex/fdl.tex | 367 | ||||
-rw-r--r-- | doc/tex/gnutls.tex | 34 | ||||
-rw-r--r-- | doc/tex/macros.tex | 2 |
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}} |