/usr/home/pgollucci/dev/repos/asf/httpd/apreq/trunk/include/apreq.h:50:
Warning: Member APREQ_DEFAULT_READ_LIMIT of file apreq.h is not documented.
AFAIK this isn't used. Just defined:
#define APREQ_DEFAULT_READ_LIMIT (64 * 1024 * 1024)
I believe it supposed to be used here:
diff module/apache2/filter.c
- dc->read_limit = (apr_uint64_t)-1;
+ dc->read_limit = APREQ_DEFAULT_READ_LIMIT;
[full patch attached]
Also included documentation for
/usr/home/pgollucci/dev/repos/asf/httpd/apreq/trunk/include/apreq.h:49:
Warning: Member APREQ_DEFAULT_READ_BLOCK_SIZE of file apreq.h is not
documented.
/usr/home/pgollucci/dev/repos/asf/httpd/apreq/trunk/include/apreq.h:51:
Warning: Member APREQ_DEFAULT_BRIGADE_LIMIT of file apreq.h is not
documented.
/usr/home/pgollucci/dev/repos/asf/httpd/apreq/trunk/include/apreq.h:52:
Warning: Member APREQ_DEFAULT_NELTS of file apreq.h is not documented.
[Patch attached]
Index: include/apreq_version.h
===================================================================
--- include/apreq_version.h (revision 357313)
+++ include/apreq_version.h (working copy)
@@ -61,7 +61,7 @@
#define APREQ_MINOR_VERSION 5
/** patch level */
-#define APREQ_PATCH_VERSION 6
+#define APREQ_PATCH_VERSION 7
/**
* This symbol is defined for internal, "development" copies of libapreq.
Index: module/apache2/filter.c
===================================================================
--- module/apache2/filter.c (revision 357313)
+++ module/apache2/filter.c (working copy)
@@ -36,7 +36,7 @@
/* d == OR_ALL */
struct dir_config *dc = apr_palloc(p, sizeof *dc);
dc->temp_dir = NULL;
- dc->read_limit = (apr_uint64_t)-1;
+ dc->read_limit = APREQ_DEFAULT_READ_LIMIT;
dc->brigade_limit = APREQ_DEFAULT_BRIGADE_LIMIT;
return dc;
}
Index: include/apreq.h
===================================================================
--- include/apreq.h (revision 357314)
+++ include/apreq.h (working copy)
@@ -46,9 +76,32 @@
#define APREQ_DECLARE_DATA __declspec(dllexport)
#endif
+/**
+ * Read chucks of data in 64k blocks from the request
+ */
+
#define APREQ_DEFAULT_READ_BLOCK_SIZE (64 * 1024)
+
+/**
+ * Maximum number of bytes mod_apreq2 will send off to libapreq2 for parsing.
+ * mod_apreq2 will log this event and subsequently remove itself
+ * from the filter chain.
+ * @see ap_set_read_limit
+ */
#define APREQ_DEFAULT_READ_LIMIT (64 * 1024 * 1024)
+/**
+ * Maximum number of bytes mod_apreq2 will let accumulate within the
+ * heap-buckets in a brigade. Excess data will be spooled to an
+ * appended file bucket
+ * @see ap_set_brigade_read_limit
+ */
#define APREQ_DEFAULT_BRIGADE_LIMIT (256 * 1024)
+
+/**
+ * Number of elements in the initial apr_table
+ * @see apr_table_make
+ */
+
#define APREQ_DEFAULT_NELTS 8