Good to see someone else is still watching. I was getting ready to
prod the list if there was no activity in the next day or so.
Your patch is missing the addition of "subversion/include/mod_authz_svn.h".
Draft log message:
Added authz optimization to mod_dav_svn that skips apache authz for
parent paths.
* subversion/mod_authz_svn/mod_authz_svn.c: Added a provider that will do
a quick read access check.
(subreq_bypass): new method. This is the implementation of a provider
that will be called from mod_dav_svn to bypass the apache authz process.
(get_access_conf): new method. This is a cut and paste from existing
code that that is needed in subreq_bypass. It was pulled out to
eliminate duplication.
(register_hooks): was modified to register the new provider.
* subversion/include/mod_authz_svn.h: Provides the symbols that need to be
shared with mod_dav_svn.
(AUTHZ_SVN__SUBREQ_BYPASS_PROV_GRP,
AUTHZ_SVN__SUBREQ_BYPASS_PROV_NAME,
AUTHZ_SVN__SUBREQ_BYPASS_PROV_VER): Provider lookup info.
(authz_svn__subreq_bypass_func_t): Signature of the provider method.
* subversion/mod_dav_svn/mod_dav_svn.c:
(PATHAUTHZ_BYPASS_ARG): string argument to SVNPathAuthz directive that will
enable bypassing apache's authz mechanism.
(enum path_authz_conf): configuration type. For this directive, which
is now a tri-state instead of a boolean.
(dir_conf_t): changed do_path_authz to path_authz_method. The name was
changed to denote the new meaning of the variable.
(pathauthz_bypass_func): a new function pointer variable. The
bypass provider is
cached here.
(merge_dir_config, SVNPathAuthz_cmd,cmds, dav_svn__get_pathauthz_flag):
Changed to interact with the new config.
(dav_svn__get_pathauthz_bypass): new method.
* subversion/mod_dav_svn/dav_svn.h
(dav_svn__get_pathauthz_bypass): new function to get the bypass provider if
configured.
* subversion/mod_dav_svn/authz.c
(allow_read): Uses the new method if configured.
--
Josh Gilkerson
Software Engineer
Google, Inc
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu May 10 00:05:15 2007