[ http://issues.apache.org/jira/browse/MODPYTHON-160?page=all ] Graham Dumpleton resolved MODPYTHON-160: ----------------------------------------
Fix Version: 3.3 Resolution: Fixed > req.add_handler/req.handler and PythonInterpPerDirective > -------------------------------------------------------- > > Key: MODPYTHON-160 > URL: http://issues.apache.org/jira/browse/MODPYTHON-160 > Project: mod_python > Type: Bug > Components: core > Versions: 3.2.8 > Reporter: Graham Dumpleton > Assignee: Graham Dumpleton > Fix For: 3.3 > > MODPYTHON-125 made req.handler writable. Being able to now do this has > uncovered a bug whereby if PythonInterpPerDirective is used mod_python can > cause Apache to crash. Code to trigger the problem is: > # .htaccess > SetHandler mod_python > PythonInterpPerDirective On > PythonFixupHandler interpreter_1 > # interpreter_1.py > from mod_python import apache > def fixuphandler(req): > req.log_error("fixuphandler") > req.log_error("interpreter=%s"%req.interpreter) > req.log_error("directory=%s"%req.hlist.directory) > req.handler = "mod_python" > req.add_handler("PythonHandler","interpreter_1") > return apache.OK > def handler(req): > req.log_error("handler") > req.log_error("interpreter=%s"%req.interpreter) > req.log_error("directory=%s"%req.hlist.directory) > req.content_type = 'text/plain' > req.write('hello') > return apache.OK > In summary, if PythonHandler is not used in Apache configuration to enable > mod_python but it is done by assignment to req.handler in fixup phase and > then req.add_handler() is used to add a handler to be called for content > phase, and PythonInterpPerDirective is being used, mod_python will cause > Apache to crash. > Location of crash not yet identified. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira