Home | History | Annotate | Download | only in doc
      1 \input texinfo  @c -*-texinfo-*-
      2 @finalout
      3 @setfilename libmicrohttpd-tutorial.info
      4 @set UPDATED 17 November 2013
      5 @set UPDATED-MONTH November 2013
      6 @set EDITION 0.9.23
      7 @set VERSION 0.9.23
      8 @settitle A tutorial for GNU libmicrohttpd
      9 @c Unify all the indices into concept index.
     10 @syncodeindex fn cp
     11 @syncodeindex vr cp
     12 @syncodeindex ky cp
     13 @syncodeindex pg cp
     14 @syncodeindex tp cp
     15 
     16 @dircategory Software libraries
     17 @direntry
     18 * libmicrohttpdtutorial: (libmicrohttpd).       A tutorial for GNU libmicrohttpd.
     19 @end direntry
     20 
     21 @copying
     22 This tutorial documents GNU libmicrohttpd version @value{VERSION}, last
     23 updated @value{UPDATED}.
     24 
     25 Copyright (c)  2008  Sebastian Gerhardt.
     26 
     27 Copyright (c)  2010, 2011, 2012, 2013  Christian Grothoff.
     28 @quotation
     29 Permission is granted to copy, distribute and/or modify this document
     30 under the terms of the GNU Free Documentation License, Version 1.3
     31 or any later version published by the Free Software Foundation;
     32 with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
     33 Texts.  A copy of the license is included in the section entitled "GNU
     34 Free Documentation License".
     35 @end quotation
     36 @end copying
     37 
     38 @titlepage
     39 @title A Tutorial for GNU libmicrohttpd
     40 @subtitle Version @value{VERSION}
     41 @subtitle @value{UPDATED}
     42 @author Sebastian Gerhardt (@email{sebgerhardt@@gmx.net})
     43 @author Christian Grothoff (@email{christian@@grothoff.org})
     44 @author Matthieu Speder (@email{mspeder@@users.sourceforge.net})
     45 
     46 @page
     47 @vskip 0pt plus 1filll
     48 @insertcopying
     49 @end titlepage
     50 
     51 
     52 
     53 @contents
     54 
     55 @ifnottex
     56 @node Top
     57 @top A Tutorial for GNU libmicrohttpd
     58 @insertcopying
     59 @end ifnottex
     60 
     61 @menu
     62 * Introduction::
     63 * Hello browser example::
     64 * Exploring requests::
     65 * Response headers::
     66 * Supporting basic authentication::
     67 * Processing POST data::
     68 * Improved processing of POST data::
     69 * Session management::
     70 * Adding a layer of security::
     71 * Bibliography::
     72 * License text::
     73 * Example programs::
     74 @end menu
     75 
     76 @node Introduction
     77 @chapter Introduction
     78 @include chapters/introduction.inc
     79 
     80 @node Hello browser example
     81 @chapter Hello browser example
     82 @include chapters/hellobrowser.inc
     83 
     84 @node Exploring requests
     85 @chapter Exploring requests
     86 @include chapters/exploringrequests.inc
     87 
     88 @node Response headers
     89 @chapter Response headers
     90 @include chapters/responseheaders.inc
     91 
     92 @node Supporting basic authentication
     93 @chapter Supporting basic authentication
     94 @include chapters/basicauthentication.inc
     95 
     96 @node Processing POST data
     97 @chapter Processing POST data
     98 @include chapters/processingpost.inc
     99 
    100 @node Improved processing of POST data
    101 @chapter Improved processing of POST data
    102 @include chapters/largerpost.inc
    103 
    104 @node Session management
    105 @chapter Session management
    106 @include chapters/sessions.inc
    107 
    108 @node Adding a layer of security
    109 @chapter Adding a layer of security
    110 @include chapters/tlsauthentication.inc
    111 
    112 @node Bibliography
    113 @appendix Bibliography
    114 @include chapters/bibliography.inc
    115 
    116 @node License text
    117 @appendix GNU Free Documentation License
    118 @include fdl-1.3.texi
    119 
    120 @node Example programs
    121 @appendix Example programs
    122 @menu
    123 * hellobrowser.c::
    124 * logging.c::
    125 * responseheaders.c::
    126 * basicauthentication.c::
    127 * simplepost.c::
    128 * largepost.c::
    129 * sessions.c::
    130 * tlsauthentication.c::
    131 @end menu
    132 
    133 @node hellobrowser.c
    134 @section hellobrowser.c
    135 @smalldisplay
    136 @verbatiminclude examples/hellobrowser.c
    137 @end smalldisplay
    138 
    139 @node logging.c
    140 @section logging.c
    141 @smalldisplay
    142 @verbatiminclude examples/logging.c
    143 @end smalldisplay
    144 
    145 @node responseheaders.c
    146 @section responseheaders.c
    147 @smalldisplay
    148 @verbatiminclude examples/responseheaders.c
    149 @end smalldisplay
    150 
    151 @node basicauthentication.c
    152 @section basicauthentication.c
    153 @smalldisplay
    154 @verbatiminclude examples/basicauthentication.c
    155 @end smalldisplay
    156 
    157 @node simplepost.c
    158 @section simplepost.c
    159 @smalldisplay
    160 @verbatiminclude examples/simplepost.c
    161 @end smalldisplay
    162 
    163 @node largepost.c
    164 @section largepost.c
    165 @smalldisplay
    166 @verbatiminclude examples/largepost.c
    167 @end smalldisplay
    168 
    169 @node sessions.c
    170 @section sessions.c
    171 @smalldisplay
    172 @verbatiminclude examples/sessions.c
    173 @end smalldisplay
    174 
    175 @node tlsauthentication.c
    176 @section tlsauthentication.c
    177 @smalldisplay
    178 @verbatiminclude examples/tlsauthentication.c
    179 @end smalldisplay
    180 
    181 @bye
    182