History log of /httpd/modules/filters/mod_substitute.c
Revision Date Author Comments Expand
418fb8475268f6bcc30616ad598170bb5e65c5be 1631983 15-Oct-2014 rjung

mod_substitute: No real functional change, but: - define default for maximum line length indepenent of MAX_STRING_LEN - Clarify line length check with a comment - add supported 'b' suffix to directive description

8af5a3bd941a25b28ff9c84c513d6aa9f48f2cdc 1628924 02-Oct-2014 rjung

mod_substitute: Restrict configuration in .htaccess to FileInfo as documented.

42b6ba421855a65673ad46844a0be899e4ad9405 1628919 02-Oct-2014 rjung

mod_substitute: Make maximum line length configurable.

ed9df5c69cb725b563ddf402c69cc4cfbd418676 1628104 28-Sep-2014 rjung

mod_substitute: Fix memory limitation in case of regexp plus flatten. The maxlen argument of ap_varbuf_regsub() is unsigned. Passing in "AP_SUBST_MAX_LINE_LENGTH - vb.strlen" in case vb.strlen got to big didn't result in the expected error but instead was handled as a very big maxlen.

7619b51fca6ecf16c28389e52a666e82f3c8d3ef 1601624 10-Jun-2014 ylavic

Strip useless apr_brigade_cleanup() calls.

185aa71728867671e105178b4c66fbc22b65ae26 1209766 03-Dec-2011 sf

Add lots of unique tags to error log messages

/httpd/docs/log-message-tags/next-number /httpd/modules/aaa/mod_access_compat.c /httpd/modules/aaa/mod_allowmethods.c /httpd/modules/aaa/mod_auth_basic.c /httpd/modules/aaa/mod_auth_digest.c /httpd/modules/aaa/mod_auth_form.c /httpd/modules/aaa/mod_authn_anon.c /httpd/modules/aaa/mod_authn_core.c /httpd/modules/aaa/mod_authn_dbd.c /httpd/modules/aaa/mod_authn_dbm.c /httpd/modules/aaa/mod_authn_file.c /httpd/modules/aaa/mod_authn_socache.c /httpd/modules/aaa/mod_authnz_ldap.c /httpd/modules/aaa/mod_authz_core.c /httpd/modules/aaa/mod_authz_dbd.c /httpd/modules/aaa/mod_authz_dbm.c /httpd/modules/aaa/mod_authz_groupfile.c /httpd/modules/aaa/mod_authz_host.c /httpd/modules/aaa/mod_authz_owner.c /httpd/modules/aaa/mod_authz_user.c /httpd/modules/apreq/filter.c /httpd/modules/arch/netware/mod_netware.c /httpd/modules/arch/netware/mod_nw_ssl.c /httpd/modules/arch/unix/mod_privileges.c /httpd/modules/arch/unix/mod_unixd.c /httpd/modules/arch/win32/mod_isapi.c /httpd/modules/arch/win32/mod_win32.c /httpd/modules/cache/cache_storage.c /httpd/modules/cache/cache_util.c /httpd/modules/cache/mod_cache.c /httpd/modules/cache/mod_cache_disk.c /httpd/modules/cache/mod_file_cache.c /httpd/modules/cache/mod_socache_dbm.c /httpd/modules/cache/mod_socache_dc.c /httpd/modules/cache/mod_socache_memcache.c /httpd/modules/cache/mod_socache_shmcb.c /httpd/modules/cluster/mod_heartbeat.c /httpd/modules/cluster/mod_heartmonitor.c /httpd/modules/core/mod_so.c /httpd/modules/core/mod_watchdog.c /httpd/modules/database/mod_dbd.c /httpd/modules/dav/fs/dbm.c /httpd/modules/dav/main/mod_dav.c /httpd/modules/dav/main/util_lock.c /httpd/modules/echo/mod_echo.c /httpd/modules/examples/mod_example_hooks.c /httpd/modules/examples/mod_example_ipc.c /httpd/modules/experimental/mod_noloris.c mod_charset_lite.c mod_deflate.c mod_ext_filter.c mod_filter.c mod_include.c mod_proxy_html.c mod_ratelimit.c mod_reflector.c mod_reqtimeout.c mod_request.c mod_sed.c mod_substitute.c mod_xml2enc.c /httpd/modules/generators/mod_asis.c /httpd/modules/generators/mod_autoindex.c /httpd/modules/generators/mod_cgi.c /httpd/modules/generators/mod_cgid.c /httpd/modules/generators/mod_status.c /httpd/modules/generators/mod_suexec.c /httpd/modules/http/byterange_filter.c /httpd/modules/http/http_filters.c /httpd/modules/http/http_protocol.c /httpd/modules/http/http_request.c /httpd/modules/http/mod_mime.c /httpd/modules/ldap/util_ldap.c /httpd/modules/ldap/util_ldap_cache_mgr.c /httpd/modules/loggers/mod_log_config.c /httpd/modules/loggers/mod_log_debug.c /httpd/modules/loggers/mod_log_forensic.c /httpd/modules/lua/lua_config.c /httpd/modules/lua/lua_request.c /httpd/modules/lua/lua_vmprep.c /httpd/modules/lua/mod_lua.c /httpd/modules/mappers/mod_actions.c /httpd/modules/mappers/mod_alias.c /httpd/modules/mappers/mod_imagemap.c /httpd/modules/mappers/mod_negotiation.c /httpd/modules/mappers/mod_rewrite.c /httpd/modules/metadata/mod_cern_meta.c /httpd/modules/metadata/mod_env.c /httpd/modules/metadata/mod_expires.c /httpd/modules/metadata/mod_headers.c /httpd/modules/metadata/mod_ident.c /httpd/modules/metadata/mod_mime_magic.c /httpd/modules/metadata/mod_remoteip.c /httpd/modules/metadata/mod_setenvif.c /httpd/modules/metadata/mod_unique_id.c /httpd/modules/metadata/mod_usertrack.c /httpd/modules/proxy/ajp_header.c /httpd/modules/proxy/ajp_link.c /httpd/modules/proxy/ajp_msg.c /httpd/modules/proxy/ajp_utils.c /httpd/modules/proxy/balancers/mod_lbmethod_bybusyness.c /httpd/modules/proxy/balancers/mod_lbmethod_byrequests.c /httpd/modules/proxy/balancers/mod_lbmethod_bytraffic.c /httpd/modules/proxy/balancers/mod_lbmethod_heartbeat.c /httpd/modules/proxy/examples/mod_lbmethod_rr.c /httpd/modules/proxy/mod_proxy.c /httpd/modules/proxy/mod_proxy_ajp.c /httpd/modules/proxy/mod_proxy_balancer.c /httpd/modules/proxy/mod_proxy_connect.c /httpd/modules/proxy/mod_proxy_express.c /httpd/modules/proxy/mod_proxy_fcgi.c /httpd/modules/proxy/mod_proxy_fdpass.c /httpd/modules/proxy/mod_proxy_ftp.c /httpd/modules/proxy/mod_proxy_http.c /httpd/modules/proxy/mod_proxy_scgi.c /httpd/modules/proxy/mod_serf.c /httpd/modules/proxy/proxy_util.c /httpd/modules/session/mod_session.c /httpd/modules/session/mod_session_crypto.c /httpd/modules/session/mod_session_dbd.c /httpd/modules/ssl/mod_ssl.c /httpd/modules/ssl/ssl_engine_init.c /httpd/modules/ssl/ssl_engine_io.c /httpd/modules/ssl/ssl_engine_kernel.c /httpd/modules/ssl/ssl_engine_log.c /httpd/modules/ssl/ssl_engine_mutex.c /httpd/modules/ssl/ssl_engine_ocsp.c /httpd/modules/ssl/ssl_engine_pphrase.c /httpd/modules/ssl/ssl_engine_rand.c /httpd/modules/ssl/ssl_engine_vars.c /httpd/modules/ssl/ssl_scache.c /httpd/modules/ssl/ssl_util_ocsp.c /httpd/modules/ssl/ssl_util_stapling.c /httpd/modules/test/mod_dialup.c /httpd/modules/test/mod_optional_fn_export.c /httpd/modules/test/mod_optional_hook_import.c /httpd/os/bs2000/os.c /httpd/os/unix/unixd.c /httpd/server/config.c /httpd/server/core.c /httpd/server/core_filters.c /httpd/server/listen.c /httpd/server/log.c /httpd/server/main.c /httpd/server/mpm/event/event.c /httpd/server/mpm/event/pod.c /httpd/server/mpm/mpmt_os2/mpmt_os2.c /httpd/server/mpm/mpmt_os2/mpmt_os2_child.c /httpd/server/mpm/netware/mpm_netware.c /httpd/server/mpm/prefork/prefork.c /httpd/server/mpm/simple/simple_api.c /httpd/server/mpm/simple/simple_children.c /httpd/server/mpm/simple/simple_core.c /httpd/server/mpm/simple/simple_io.c /httpd/server/mpm/simple/simple_run.c /httpd/server/mpm/winnt/child.c /httpd/server/mpm/winnt/mpm_winnt.c /httpd/server/mpm/winnt/service.c /httpd/server/mpm/worker/pod.c /httpd/server/mpm/worker/worker.c /httpd/server/mpm_common.c /httpd/server/mpm_unix.c /httpd/server/protocol.c /httpd/server/request.c /httpd/server/scoreboard.c /httpd/server/util.c /httpd/server/util_cookies.c /httpd/server/util_ebcdic.c /httpd/server/util_expr_eval.c /httpd/server/util_filter.c /httpd/server/util_mutex.c /httpd/server/util_xml.c /httpd/server/vhost.c
cf87f72841a6707d4bcb47825650ce8dc9001f70 1199410 08-Nov-2011 sf

Fix up some length limit calculation

d7770f19a5790a568d7309ad183c985b8331ab36 1199060 08-Nov-2011 sf

Add some comments and another line length check

4949102d57ec054f5b66881f7cc3553751daff65 1198926 07-Nov-2011 sf

Also do length check if the last line is not LF terminated

592f5af70d715aa5c0fc686122fcf88d58397dc9 1197830 05-Nov-2011 sf

re-add apr_pool_clear accidentally removed in r1197405

94bc56b747dda8afb8806d04e08164ea99e4c21d 1197405 04-Nov-2011 sf

To prevent overboarding memory usage, limit line length to 1MB

0f7233952e2732c08e1848a0209ab207d4ada35a 1189985 27-Oct-2011 sf

Improve handling of maxlen = APR_SIZE_MAX, noticed by Jim. Use apr_pregsub_ex() and maxlen = 0 for unlimited in mod_substitute.

cda2a8c4fe289419f62e8b9607cafe4812974840 1188950 26-Oct-2011 sf

Limit ap_pregsub() to 64K, add ap_pregsub_ex() for longer strings and with better error reporting. Modify ap_varbuf_regsub() to be similar to ap_pregsub_ex().

067fc2710958d8d2a276cd8e54284a178d232a8b 1176019 26-Sep-2011 sf

Make mod_substitute more efficient: - Use varbuf resizable buffer instead of constantly allocating pool memory and copying data around. This changes the memory requirement from quadratic in ((number of substitutions in line) * (length of line)) to linear in (length of line). - Instead of copying buckets just to append a \0, use new ap_regexec_len() function PR: 50559

5bfaaf573bacb45c1cf290ce85ecc676587e8a64 1174751 23-Sep-2011 jim

Cleanup effort in prep for GA push: Trim trailing whitespace... no func change

/httpd/modules/aaa/mod_allowmethods.c /httpd/modules/aaa/mod_auth_digest.c /httpd/modules/aaa/mod_authn_socache.c /httpd/modules/aaa/mod_authnz_ldap.c /httpd/modules/aaa/mod_authz_core.c /httpd/modules/aaa/mod_authz_dbd.c /httpd/modules/aaa/mod_authz_dbm.c /httpd/modules/aaa/mod_authz_host.c /httpd/modules/arch/netware/mod_netware.c /httpd/modules/arch/unix/mod_unixd.c /httpd/modules/arch/win32/mod_isapi.c /httpd/modules/cache/mod_socache_dbm.c /httpd/modules/cache/mod_socache_dc.c /httpd/modules/cache/mod_socache_memcache.c /httpd/modules/cache/mod_socache_shmcb.c /httpd/modules/cluster/mod_heartmonitor.c /httpd/modules/core/mod_so.c /httpd/modules/dav/fs/repos.c /httpd/modules/dav/main/mod_dav.c /httpd/modules/dav/main/util.c /httpd/modules/echo/mod_echo.c /httpd/modules/examples/mod_case_filter.c /httpd/modules/examples/mod_example_hooks.c /httpd/modules/examples/mod_example_ipc.c /httpd/modules/experimental/mod_noloris.c mod_buffer.c mod_charset_lite.c mod_data.c mod_deflate.c mod_filter.c mod_include.c mod_reqtimeout.c mod_sed.c mod_substitute.c regexp.c sed0.c sed1.c /httpd/modules/generators/mod_autoindex.c /httpd/modules/generators/mod_cgi.c /httpd/modules/generators/mod_cgid.c /httpd/modules/generators/mod_status.c /httpd/modules/http/byterange_filter.c /httpd/modules/http/http_core.c /httpd/modules/http/http_filters.c /httpd/modules/http/http_protocol.c /httpd/modules/http/http_request.c /httpd/modules/ldap/util_ldap.c /httpd/modules/loggers/mod_log_config.c /httpd/modules/loggers/mod_log_forensic.c /httpd/modules/lua/lua_request.c /httpd/modules/lua/lua_vmprep.c /httpd/modules/lua/mod_lua.c /httpd/modules/mappers/mod_dir.c /httpd/modules/mappers/mod_imagemap.c /httpd/modules/mappers/mod_rewrite.c /httpd/modules/mappers/mod_speling.c /httpd/modules/mappers/mod_userdir.c /httpd/modules/metadata/mod_remoteip.c /httpd/modules/proxy/balancers/mod_lbmethod_bybusyness.c /httpd/modules/proxy/balancers/mod_lbmethod_byrequests.c /httpd/modules/proxy/balancers/mod_lbmethod_heartbeat.c /httpd/modules/proxy/examples/mod_lbmethod_rr.c /httpd/modules/proxy/mod_proxy.c /httpd/modules/proxy/mod_proxy_ajp.c /httpd/modules/proxy/mod_proxy_balancer.c /httpd/modules/proxy/mod_proxy_connect.c /httpd/modules/proxy/mod_proxy_express.c /httpd/modules/proxy/mod_proxy_fcgi.c /httpd/modules/proxy/mod_proxy_fdpass.c /httpd/modules/proxy/mod_proxy_ftp.c /httpd/modules/proxy/mod_proxy_http.c /httpd/modules/proxy/mod_proxy_scgi.c /httpd/modules/proxy/mod_serf.c /httpd/modules/slotmem/mod_slotmem_plain.c /httpd/modules/ssl/ssl_engine_config.c /httpd/modules/ssl/ssl_engine_init.c /httpd/modules/ssl/ssl_engine_io.c /httpd/modules/ssl/ssl_engine_kernel.c /httpd/modules/ssl/ssl_engine_log.c /httpd/modules/ssl/ssl_engine_ocsp.c /httpd/modules/ssl/ssl_engine_pphrase.c /httpd/modules/ssl/ssl_engine_vars.c /httpd/modules/ssl/ssl_scache.c /httpd/modules/ssl/ssl_util.c /httpd/modules/ssl/ssl_util_ocsp.c /httpd/modules/ssl/ssl_util_ssl.c /httpd/modules/ssl/ssl_util_stapling.c /httpd/modules/test/mod_dialup.c /httpd/server/config.c /httpd/server/log.c /httpd/server/main.c /httpd/server/mpm/event/event.c /httpd/server/mpm/event/fdqueue.c /httpd/server/mpm/prefork/prefork.c /httpd/server/mpm/simple/simple_children.c /httpd/server/mpm/simple/simple_core.c /httpd/server/mpm/simple/simple_io.c /httpd/server/mpm/simple/simple_run.c /httpd/server/mpm/winnt/child.c /httpd/server/mpm/winnt/mpm_winnt.c /httpd/server/mpm/winnt/nt_eventlog.c /httpd/server/mpm/winnt/service.c /httpd/server/mpm/worker/worker.c /httpd/server/mpm_unix.c /httpd/server/protocol.c /httpd/server/request.c /httpd/server/util.c /httpd/server/util_expr_eval.c /httpd/server/util_expr_parse.c /httpd/server/util_expr_scan.c /httpd/server/util_mutex.c /httpd/server/util_pcre.c /httpd/server/util_script.c /httpd/server/vhost.c /httpd/support/ab.c /httpd/support/htcacheclean.c /httpd/support/htpasswd.c /httpd/support/rotatelogs.c /httpd/support/win32/ApacheMonitor.c
36ef8f77bffe75d1aa327882be1b5bdbe2ff567a 951895 06-Jun-2010 sf

Use the new APLOG_USE_MODULE/AP_DECLARE_MODULE macros everywhere to take advantage of per-module loglevels

/httpd/modules/aaa/mod_access_compat.c /httpd/modules/aaa/mod_auth_basic.c /httpd/modules/aaa/mod_auth_digest.c /httpd/modules/aaa/mod_auth_form.c /httpd/modules/aaa/mod_authn_anon.c /httpd/modules/aaa/mod_authn_core.c /httpd/modules/aaa/mod_authn_dbd.c /httpd/modules/aaa/mod_authn_dbm.c /httpd/modules/aaa/mod_authn_file.c /httpd/modules/aaa/mod_authnz_ldap.c /httpd/modules/aaa/mod_authz_core.c /httpd/modules/aaa/mod_authz_dbd.c /httpd/modules/aaa/mod_authz_dbm.c /httpd/modules/aaa/mod_authz_groupfile.c /httpd/modules/aaa/mod_authz_host.c /httpd/modules/aaa/mod_authz_owner.c /httpd/modules/aaa/mod_authz_user.c /httpd/modules/arch/netware/mod_netware.c /httpd/modules/arch/netware/mod_nw_ssl.c /httpd/modules/arch/unix/mod_privileges.c /httpd/modules/arch/unix/mod_unixd.c /httpd/modules/arch/win32/mod_isapi.c /httpd/modules/arch/win32/mod_win32.c /httpd/modules/cache/cache_cache.c /httpd/modules/cache/cache_storage.c /httpd/modules/cache/cache_util.c /httpd/modules/cache/mod_cache.c /httpd/modules/cache/mod_disk_cache.c /httpd/modules/cache/mod_file_cache.c /httpd/modules/cache/mod_socache_dbm.c /httpd/modules/cache/mod_socache_dc.c /httpd/modules/cache/mod_socache_memcache.c /httpd/modules/cache/mod_socache_shmcb.c /httpd/modules/cluster/mod_heartbeat.c /httpd/modules/cluster/mod_heartmonitor.c /httpd/modules/core/mod_so.c /httpd/modules/core/mod_watchdog.c /httpd/modules/database/mod_dbd.c /httpd/modules/dav/fs/mod_dav_fs.c /httpd/modules/dav/lock/mod_dav_lock.c /httpd/modules/dav/main/mod_dav.c /httpd/modules/dav/main/util_lock.c /httpd/modules/debugging/mod_bucketeer.c /httpd/modules/debugging/mod_dumpio.c /httpd/modules/echo/mod_echo.c /httpd/modules/examples/mod_case_filter.c /httpd/modules/examples/mod_case_filter_in.c /httpd/modules/examples/mod_example_hooks.c /httpd/modules/examples/mod_example_ipc.c /httpd/modules/experimental/mod_noloris.c mod_buffer.c mod_charset_lite.c mod_deflate.c mod_ext_filter.c mod_filter.c mod_include.c mod_ratelimit.c mod_reflector.c mod_reqtimeout.c mod_request.c mod_sed.c mod_substitute.c /httpd/modules/generators/mod_asis.c /httpd/modules/generators/mod_autoindex.c /httpd/modules/generators/mod_cgi.c /httpd/modules/generators/mod_cgid.c /httpd/modules/generators/mod_info.c /httpd/modules/generators/mod_status.c /httpd/modules/generators/mod_suexec.c /httpd/modules/http/byterange_filter.c /httpd/modules/http/http_core.c /httpd/modules/http/http_filters.c /httpd/modules/http/http_protocol.c /httpd/modules/http/http_request.c /httpd/modules/http/mod_mime.c /httpd/modules/ldap/util_ldap.c /httpd/modules/ldap/util_ldap_cache_mgr.c /httpd/modules/loggers/mod_log_config.c /httpd/modules/loggers/mod_log_forensic.c /httpd/modules/loggers/mod_logio.c /httpd/modules/lua/lua_config.c /httpd/modules/lua/lua_request.c /httpd/modules/lua/lua_vmprep.c /httpd/modules/lua/mod_lua.c /httpd/modules/mappers/mod_actions.c /httpd/modules/mappers/mod_alias.c /httpd/modules/mappers/mod_dir.c /httpd/modules/mappers/mod_imagemap.c /httpd/modules/mappers/mod_negotiation.c /httpd/modules/mappers/mod_rewrite.c /httpd/modules/mappers/mod_speling.c /httpd/modules/mappers/mod_userdir.c /httpd/modules/mappers/mod_vhost_alias.c /httpd/modules/metadata/mod_cern_meta.c /httpd/modules/metadata/mod_env.c /httpd/modules/metadata/mod_expires.c /httpd/modules/metadata/mod_headers.c /httpd/modules/metadata/mod_ident.c /httpd/modules/metadata/mod_mime_magic.c /httpd/modules/metadata/mod_remoteip.c /httpd/modules/metadata/mod_setenvif.c /httpd/modules/metadata/mod_unique_id.c /httpd/modules/metadata/mod_usertrack.c /httpd/modules/metadata/mod_version.c /httpd/modules/proxy/ajp_header.c /httpd/modules/proxy/ajp_link.c /httpd/modules/proxy/ajp_msg.c /httpd/modules/proxy/ajp_utils.c /httpd/modules/proxy/balancers/mod_lbmethod_bybusyness.c /httpd/modules/proxy/balancers/mod_lbmethod_byrequests.c /httpd/modules/proxy/balancers/mod_lbmethod_bytraffic.c /httpd/modules/proxy/balancers/mod_lbmethod_heartbeat.c /httpd/modules/proxy/examples/mod_lbmethod_rr.c /httpd/modules/proxy/mod_proxy.c /httpd/modules/proxy/mod_proxy_ajp.c /httpd/modules/proxy/mod_proxy_balancer.c /httpd/modules/proxy/mod_proxy_connect.c /httpd/modules/proxy/mod_proxy_fcgi.c /httpd/modules/proxy/mod_proxy_fdpass.c /httpd/modules/proxy/mod_proxy_ftp.c /httpd/modules/proxy/mod_proxy_http.c /httpd/modules/proxy/mod_proxy_scgi.c /httpd/modules/proxy/mod_serf.c /httpd/modules/proxy/proxy_util.c /httpd/modules/session/mod_session.c /httpd/modules/session/mod_session_cookie.c /httpd/modules/session/mod_session_crypto.c /httpd/modules/session/mod_session_dbd.c /httpd/modules/slotmem/mod_slotmem_plain.c /httpd/modules/slotmem/mod_slotmem_shm.c /httpd/modules/test/mod_dialup.c /httpd/modules/test/mod_optional_fn_export.c /httpd/modules/test/mod_optional_fn_import.c /httpd/modules/test/mod_optional_hook_export.c /httpd/modules/test/mod_optional_hook_import.c /httpd/os/bs2000/os.c /httpd/os/unix/unixd.c /httpd/server/core_filters.c /httpd/server/listen.c /httpd/server/main.c /httpd/server/mpm/event/event.c /httpd/server/mpm/event/pod.c /httpd/server/mpm/mpmt_os2/mpmt_os2.c /httpd/server/mpm/mpmt_os2/mpmt_os2_child.c /httpd/server/mpm/netware/mpm_netware.c /httpd/server/mpm/prefork/prefork.c /httpd/server/mpm/simple/simple_api.c /httpd/server/mpm/simple/simple_children.c /httpd/server/mpm/simple/simple_core.c /httpd/server/mpm/simple/simple_io.c /httpd/server/mpm/simple/simple_run.c /httpd/server/mpm/winnt/child.c /httpd/server/mpm/winnt/mpm_winnt.c /httpd/server/mpm/winnt/service.c /httpd/server/mpm/worker/pod.c /httpd/server/mpm/worker/worker.c /httpd/server/mpm_common.c /httpd/server/mpm_unix.c /httpd/server/protocol.c /httpd/server/request.c /httpd/server/scoreboard.c /httpd/server/util.c /httpd/server/util_cookies.c /httpd/server/util_ebcdic.c /httpd/server/util_expr.c /httpd/server/util_filter.c /httpd/server/util_mutex.c /httpd/server/util_script.c /httpd/server/util_xml.c /httpd/server/vhost.c
2db5d76ac4c75aadecf38e20569bccbfd2360ba7 757741 24-Mar-2009 rpluem

* Fix a memory leak by freeing the memory consumed by the bucket. PR: 44948 Submitted by: Dan Poirier <poirier pobox.com> Reviewed by: rpluem

6da2a930e5ea333345736d35904eefdd144e015e 755190 17-Mar-2009 rpluem

* APR_BUCKET_NEXT is wrong here as we are already a doing a APR_BUCKET_NEXT in the for loop and this causes us to jump *two* buckets forward. This can cause us to jump over the Sentinel of the brigade and thus causes an endless loop.

7897e255f85d6a781102f6216b9e81d98bc560c5 693728 10-Sep-2008 rpluem

* Fix potential segfault if flags remains NULL.

30a7aab8d06a32d5e95288cfb529b10d7f1ebca3 693727 10-Sep-2008 rpluem

* Allow empty substitute patterns (to remove data from the stream), but disallow empty search patterns.

90251a54bb3ed50600f112b520b39c6a6333bffc 628864 18-Feb-2008 jim

In the case where we have only 1 pattern, then we can safely be quick, no matter what.

ca33b922ae8ad1b24a8235b656b0ac6f82915355 627764 14-Feb-2008 jim

Change default of mod_substitute to flattening... Via current discussion on dev@httpd

af0ae7e4ce6ff526c956f1df370f36d9e9c142b9 602533 08-Dec-2007 rpluem

* s/MAX_BUCKETS/AP_MAX_BUCKETS/ to avoid namespace conflicts as pointed out by jim. No functional change.

af4e276219812004c201ee9246ba90000796b642 602469 08-Dec-2007 rpluem

* Optimize memory behaviour of mod_substitute by * Precreate all needed brigades, save them in the filter context and reuse them in order to avoid frequent recreations using the request pool. * Use a temporary pool for all the needed copy stuff and clean it up every time we passed the passbb brigade down the chain. We can pass the brigade down the chain directly after we processed one bucket from the original brigade as buffering is done by the network filters. * Use transient instead of pool buckets. * There are cases that lead to the exceptional situation of a very large passbb bucket brigade (about 1,000,000 buckets) as a result of processing 4 MB of a file. So I add a flush bucket once I have more than MAX_BUCKET (1000) buckets in the brigade and pass it down the chain to get it send and the passbb bucket brigade cleaned up and its memory reusable again.

c120be8a159401f7ed2cff5318d2976b803a16de 598651 27-Nov-2007 jim

move mod_substitute from exp to filters