gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r27672 - in libmicrohttpd: . src/examples src/microhttpd


From: gnunet
Subject: [GNUnet-SVN] r27672 - in libmicrohttpd: . src/examples src/microhttpd
Date: Fri, 28 Jun 2013 14:07:11 +0200

Author: grothoff
Date: 2013-06-28 14:07:11 +0200 (Fri, 28 Jun 2013)
New Revision: 27672

Modified:
   libmicrohttpd/ChangeLog
   libmicrohttpd/src/examples/demo.c
   libmicrohttpd/src/microhttpd/connection.c
Log:
-cleaner behavior with respect to stopping to read pipelined requests

Modified: libmicrohttpd/ChangeLog
===================================================================
--- libmicrohttpd/ChangeLog     2013-06-28 11:49:16 UTC (rev 27671)
+++ libmicrohttpd/ChangeLog     2013-06-28 12:07:11 UTC (rev 27672)
@@ -1,3 +1,11 @@
+Fri Jun 28 14:05:15 CEST 2013
+       If we shutdown connection for reading on POST due to error,
+       really do not process further requests even if we already
+       read the next request from the connection.  Furthermore, do
+       not shutdown connections for reading on GET/HEAD/etc. just
+       because the application queued a response immediately ---
+       reserve that behavior for PUT/POST. -CG
+
 Tue May 21 14:34:36 CEST 2013
        Improving configure tests for OpenSSL and spdylay to
        avoid build errors in libmicrospdy code if those libraries

Modified: libmicrohttpd/src/examples/demo.c
===================================================================
--- libmicrohttpd/src/examples/demo.c   2013-06-28 11:49:16 UTC (rev 27671)
+++ libmicrohttpd/src/examples/demo.c   2013-06-28 12:07:11 UTC (rev 27672)
@@ -819,6 +819,7 @@
 }
 #endif
 
+
 /**
  * Entry point to demo.  Note: this HTTP server will make all
  * files in the current directory and its subdirectories available

Modified: libmicrohttpd/src/microhttpd/connection.c
===================================================================
--- libmicrohttpd/src/microhttpd/connection.c   2013-06-28 11:49:16 UTC (rev 
27671)
+++ libmicrohttpd/src/microhttpd/connection.c   2013-06-28 12:07:11 UTC (rev 
27672)
@@ -2221,7 +2221,11 @@
               connection->state = MHD_CONNECTION_CONTINUE_SENDING;
               break;
             }
-          if (connection->response != NULL)
+          if ( (NULL != connection->response) &&
+              ( (0 == strcasecmp (connection->method,
+                                  MHD_HTTP_METHOD_POST)) ||
+                (0 == strcasecmp (connection->method,
+                                  MHD_HTTP_METHOD_PUT))) )
             {
               /* we refused (no upload allowed!) */
               connection->remaining_upload_size = 0;
@@ -2413,7 +2417,8 @@
           end =
             MHD_get_response_header (connection->response, 
                                     MHD_HTTP_HEADER_CONNECTION);
-         rend = ( (end != NULL) && (0 == strcasecmp (end, "close")) );
+         rend = ( (MHD_YES == connection->read_closed) ||
+                  ( (end != NULL) && (0 == strcasecmp (end, "close")) ) );
           MHD_destroy_response (connection->response);
           connection->response = NULL;
           if (connection->daemon->notify_completed != NULL)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]