[JIRA] Resolved: (SSPCPP-502) Apache 2.4 post_read hook isn't run on subrequests, breaks module
Scott Cantor (JIRA)
noreply at shibboleth.net
Mon Oct 15 11:10:22 EDT 2012
[ https://issues.shibboleth.net/jira/browse/SSPCPP-502?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Scott Cantor resolved SSPCPP-502.
---------------------------------
Resolution: Fixed
http://svn.shibboleth.net/view/cpp-sp?rev=3786&view=rev
Simpler solution, just stop caching the locked session with the request wrapper. It rarely if ever gets accessed more than once per wrapper instance, so the caching adds little benefit, and not caching the lock prevents any re-entrant locking of the session that would be caused by the web server.
The handler logic never runs with the session locked now, so there's no chance of a regression there.
> Apache 2.4 post_read hook isn't run on subrequests, breaks module
> -----------------------------------------------------------------
>
> Key: SSPCPP-502
> URL: https://issues.shibboleth.net/jira/browse/SSPCPP-502
> Project: Shibboleth SP - C++
> Issue Type: Bug
> Components: Web Server Modules
> Affects Versions: 2.5.0
> Reporter: Scott Cantor
> Assignee: Scott Cantor
> Priority: Critical
> Fix For: 2.5.1
>
> Original Estimate: 4 hours
> Time Spent: 7 hours, 45 minutes
> Remaining Estimate: 0 minutes
>
> The 2.4 module support relies on the post_read hook to initialize the module request_config structure and the ShibTargetApache shim object, which is then reused across all the various hooks.
> When a request for a directory URL is sent, the server internally generates a subrequest to the default index.html page, and the request_config is no longer present, but the post_read hook never runs.
> Testing suggests that check_user still runs, so we need to:
> - fix the 2.4 "base" authz hook to handle the uninitialized case less fatally
> - make sure the check_user hook can create the objects needed itself without relying on the post_read hook
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the commits
mailing list