filterobject.c

Checkout Tools
  • last updated 13 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
(MODPYTHON-190) Added comments for lines of code which will require attention

for Python 2.5 / 64-bit support. These were the lines that were identified

by the ssizecheck.py script.

  1. … 6 more files in changeset.
When handler directives are used within Directory or DirectoryMatch

directives where wildcards or regular expressions are used, the handler

directory will now be correctly set to the shortest directory matched by

the directory pattern, whereas previously it was being left as the

pattern which meant that modules located with that directory weren't

able to be loaded.

  1. … 11 more files in changeset.
(MODPYTHON-155) Improve memory efficiency related to req.add_handler()

and construction of handler list objects.

(MODPYTHON-181) Fix problems with req.add_handler() introduced when memory

leaks were eliminated related to handler list object.

  1. … 6 more files in changeset.
(MODPYTHON-155) Modifications to handler and filter lists so that

references can be maintained back to parent handler of a handler/filter

which was registered dynamically. This is necessary within the scheme of

how the new module importer works. Specifically, where a directory isn't

specified when adding a handler or registering a filter, the directory

associated with the parent up the chain has to be used instead. In the old

importer it was relying on fact that directory of parent had already been

added to the Python sys.path, although this didn't actually work reliably.

The new module importer doesn't add directories to sys.path and so the need

to properly work out directory associated with a parent so that it can be

used when required.

  1. … 9 more files in changeset.
Added support such that when using req.register_input_filter(),

req.register_output_filter() and req.add_handler() it is now possible to

supply directly a callable object to be used as well as the existing

string reference identifying the module/function to be called. (MODPYTHON-164)

  1. … 17 more files in changeset.
Added support for Apache 2.2. Ref MODPYTHON-78

Changed connobject makesockaddr to directly access the address port

rather than using apr_sockaddr_port_get, which was deprecated and removea

d in apr 1.x.

Removed APR_STATUS_IS_SUCCESS which is deprecated. Code which used this

macro will now just compare any return condition with APR_SUCCESS.

Added support to unit test to detect apache version.

Modified unit tests to accomodate changes to mod_auth in apache 2.2.

Mod_auth has been split into multiple modules. The mod_python unit test

will now use mod_auth_basic when apache 2.2 is detected.

An explicit value for KeepAliveTimeout is now set in the unit test when

apache 2.2 is detected.

  1. … 3 more files in changeset.
property cleanup

  1. … 75 more files in changeset.
Fixes a bug in the filterobject.

PR:

Obtained from:

Submitted by: Miles Egan

Reviewed by:

New license

  1. … 42 more files in changeset.
Replace PyMem_NEW with PyObject_New and free with PyObject_Del for

proper compatibility w/ Python 2.3 (does this break 2.2?).

PR:

Obtained from:

Submitted by: Ron Reisor

Reviewed by:

  1. … 6 more files in changeset.
Added a check for EAGAIN in inp filter

Input filters now close() and read() correctly (or better at least).

PR:

Obtained from:

Submitted by:

Reviewed by:

This gigantic patch gets rid of all tabs in C code. I know this is ugly, but

better late than never!

PR:

Obtained from:

Submitted by:

Reviewed by:

  1. … 20 more files in changeset.
added some hopefully helpful explanation of the confusing subject of filters

Added tests for server obj, also a filter bug fixed

  1. … 5 more files in changeset.
remember to clean memory for filter.close()

Changed buckets created by filter.write() from pool to heap, and added

apr_brigade_destroy to filter.flush(). This way all memory is freed after

a flush and httpd doesn't grow into a monster when filtering huge files.

Take Roy Fielding's advice and keep Grisha's email address out of the

source code. No need to send yet more spam his way :-)

  1. … 29 more files in changeset.
More filter changes, filter's return value is now ignored. Added an example

of a gzip filter.

  1. … 5 more files in changeset.
Added filter.pass_on().

  1. … 1 more file in changeset.
More fixes to filters - the filters now behave correctly when PythonDebug is

on by sending traceback printout to the client.

  1. … 2 more files in changeset.
More thorough tests, especially request object, also a few fixes.

  1. … 7 more files in changeset.
Figured out the issue of content-length being wrong when filter is invoked

more than once in a request.

  1. … 2 more files in changeset.
Filter chaining now works "better", i.e. multiple mod_python filters act

as expected without hanging or segfaulting.

Passing output of a mod_python filter to mod_include works fine, but not

the other way around for some reason mod_include gives an empty brigade?

WHAM!

Revamp the copyright/license headers in all(?) of the files. Include

the appropriate attribution/recognition to Grisha's original work.

  1. … 29 more files in changeset.
added PythonConnectionHandler and returned PythonEnablePdb

added PythonConnectionHandler and returned PythonEnablePdb

  1. … 11 more files in changeset.
filter now wont segfault on FLUSH bucket

  1. … 2 more files in changeset.
heavily modified request object and a bunch of other stuff

  1. … 13 more files in changeset.
Gary Bensons filter patch

  1. … 2 more files in changeset.