Christian Grothoff 14 سال پیش
والد
کامیت
98d2c01bcf
3فایلهای تغییر یافته به همراه16 افزوده شده و 8 حذف شده
  1. 3 0
      ChangeLog
  2. 9 4
      doc/chapters/hellobrowser.inc
  3. 4 4
      doc/microhttpd-tutorial.texi

+ 3 - 0
ChangeLog

@@ -1,3 +1,6 @@
+Fri Nov  4 10:03:00 CET 2011
+	Small updates to the tutorial. -CG
+
 Thu Nov  3 10:14:59 CET 2011
 	shutdown(RDWR) fails on OS X after shutdown(RD), so only use
 	shutdown(WR) if we already closed the socket for reading (otherwise

+ 9 - 4
doc/chapters/hellobrowser.inc

@@ -155,12 +155,17 @@ implemented by checking if the parameter @code{method} equals the string "GET" a
 @code{MHD_NO} if not so.
 
 Secondly, the above practice of queuing a response upon the first call of the callback function
-brings with it some limitations. This is because the content of the message body will not be
-received if a response is queued in the first iteration. Furthermore, the connection will be closed
-right after the response has been transferred then.
+brings with it some limitations.  This is because the content of the message body will not be
+received if a response is queued in the first iteration.  Furthermore, the connection will be closed
+right after the response has been transferred then.  This is typically not what you want as it
+disables HTTP pipelining.  The correct approach is to simply not queue a message on the first
+callback unless there is an error.  The @code{void**} argument to the callback provides a location
+for storing information about the history of the connection; for the first call, the pointer
+will point to NULL.  A simplistic way to differenciate the first call from others is to check
+if the pointer is NULL and set it to a non-NULL value during the first call.
 
 Both of these issues you will find addressed in the official @code{minimal_example.c} residing in
-the @code{src/examples} directory of the @emph{MHD} package. The source code of this
+the @code{src/examples} directory of the @emph{MHD} package.  The source code of this
 program should look very familiar to you by now and easy to understand.
 
 For our example, the @code{must_copy} and @code{must_free} parameter at the response construction

+ 4 - 4
doc/microhttpd-tutorial.texi

@@ -1,10 +1,10 @@
 \input texinfo  @c -*-texinfo-*-
 @finalout
 @setfilename microhttpd-tutorial.info
-@set UPDATED 28 Feb 2010
-@set UPDATED-MONTH Feb 2010
-@set EDITION 0.9.8
-@set VERSION 0.9.8
+@set UPDATED 2 Nov 2011
+@set UPDATED-MONTH Nov 2011
+@set EDITION 0.9.16
+@set VERSION 0.9.16
 @settitle A tutorial for GNU libmicrohttpd
 
 @dircategory GNU Libraries