You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by tr...@apache.org on 2009/09/17 19:58:10 UTC

svn commit: r816309 - in /httpd/mod_fcgid/trunk: CHANGES-FCGID modules/fcgid/fcgid_bridge.c

Author: trawick
Date: Thu Sep 17 17:58:10 2009
New Revision: 816309

URL: http://svn.apache.org/viewvc?rev=816309&view=rev
Log:
Fix basic implementation of MaxRequestInMem and MaxRequestLen directives.

Previously, the size of a single input brigade (up to HUGE_STRING_LEN),
instead of the amount of request body so far, was compared with the
values of the directives.

Strangely enough, this issue was present in the original commit of
these features (r753575).

Also, improve usefulness of the warning for exceeding MaxRequestLen.

Modified:
    httpd/mod_fcgid/trunk/CHANGES-FCGID
    httpd/mod_fcgid/trunk/modules/fcgid/fcgid_bridge.c

Modified: httpd/mod_fcgid/trunk/CHANGES-FCGID
URL: http://svn.apache.org/viewvc/httpd/mod_fcgid/trunk/CHANGES-FCGID?rev=816309&r1=816308&r2=816309&view=diff
==============================================================================
--- httpd/mod_fcgid/trunk/CHANGES-FCGID [utf8] (original)
+++ httpd/mod_fcgid/trunk/CHANGES-FCGID [utf8] Thu Sep 17 17:58:10 2009
@@ -1,6 +1,9 @@
                                                          -*- coding: utf-8 -*-
 Changes with mod_fcgid 2.3.2
 
+  *) Fix basic implementation of MaxRequestInMem and MaxRequestLen directives.
+     [Jeff Trawick]
+
   *) Merge mod_fcgid server config/virtual host directives so that they can
      be inherited or overridden within a virtual host as expected.  Affected
      directives: BusyTimeout, IPCCommTimeout, IPCConnectTimeout, 

Modified: httpd/mod_fcgid/trunk/modules/fcgid/fcgid_bridge.c
URL: http://svn.apache.org/viewvc/httpd/mod_fcgid/trunk/modules/fcgid/fcgid_bridge.c?rev=816309&r1=816308&r2=816309&view=diff
==============================================================================
--- httpd/mod_fcgid/trunk/modules/fcgid/fcgid_bridge.c (original)
+++ httpd/mod_fcgid/trunk/modules/fcgid/fcgid_bridge.c Thu Sep 17 17:58:10 2009
@@ -490,7 +490,6 @@
             return HTTP_INTERNAL_SERVER_ERROR;
         }
 
-        request_size = 0;
         for (bucket_input = APR_BRIGADE_FIRST(input_brigade);
              bucket_input != APR_BRIGADE_SENTINEL(input_brigade);
              bucket_input = APR_BUCKET_NEXT(bucket_input)) {
@@ -528,7 +527,9 @@
             request_size += len;
             if (request_size > sconf->max_request_len) {
                 ap_log_error(APLOG_MARK, APLOG_WARNING, 0, s,
-                             "mod_fcgid: http request length %" APR_SIZE_T_FMT " > %" APR_SIZE_T_FMT,
+                             "mod_fcgid: HTTP request length %" APR_SIZE_T_FMT 
+                             " (so far) exceeds MaxRequestLen (%" APR_SIZE_T_FMT
+                             ")",
                              request_size, sconf->max_request_len);
                 return HTTP_INTERNAL_SERVER_ERROR;
             }