/[Apache-SVN]
ViewVC logotype

Revision 1664078


Jump to revision: Previous Next
Author: rhuijben
Date: Wed Mar 4 17:23:46 2015 UTC (9 years, 1 month ago)
Changed paths: 14
Log Message:
Following up on r1609499, which made all ra layers change the auth baton in a
way that affects all ra session using it, make it possible to create a slave
auth baton that shares everything with the parent baton except for the
parameters.

Each ra session gets its own slave parameters, and thereby allows
applying their own settings from the server group (and other origins),
without affecting other ra sessions.

* subversion/include/private/svn_auth_private.h
  (svn_auth__apply_config_for_server): Rename to...
  (svn_auth__make_session_auth): ... this and provide a new slave auth
    baton as output argument.

* subversion/libsvn_ra/ra_loader.c
  (svn_ra_open4): Create scratch pool. Create slave auth instance.
    Update caller.

* subversion/libsvn_ra/ra_loader.h
  (svn_ra__vtable_t.open_session): Add auth_baton argument and split pools.

* subversion/libsvn_ra/wrapper_template.h
  (compat_open): Update caller.

* subversion/libsvn_ra_local/ra_local.h
  (svn_ra_local__session_baton_t): Store auth baton directly.

* subversion/libsvn_ra_local/ra_plugin.c
  (get_username): Update auth usage.
  (svn_ra_local__open): Update arguments. Store auth baton.

* subversion/libsvn_ra_serf/ra_serf.h
  (svn_ra_serf__session_t): Store auth baton reference.

* subversion/libsvn_ra_serf/serf.c
  (load_config): Use slave auth baton.
  (svn_ra_serf__open): Update arguments. Store auth baton.
    Remove local subpool usage with scratch pool.

* subversion/libsvn_ra_serf/util.c
  (ssl_server_cert,
   handle_client_cert,
   handle_client_cert_pw,
   svn_ra_serf__credentials_callback): Use auth from session instead
     of from callbacks.

* subversion/libsvn_ra_svn/client.c
  (open_session): Update arguments. Store auth baton.
  (ra_svn_open): Add argument.
  (ra_svn_open_pool): Remove function that just doubled the pool.
  (ra_svn_vtable): Update reference.

* subversion/libsvn_ra_svn/cyrus_auth.c
  (svn_ra_svn__do_cyrus_auth): Use auth from session instead of from callbacks.

* subversion/libsvn_ra_svn/internal_auth.c
  (svn_ra_svn__do_internal_auth): Use auth from session instead of from callbacks.

* subversion/libsvn_ra_svn/ra_svn.h
  (svn_ra_svn__session_baton_t): Add auth baton.

* subversion/libsvn_subr/auth.c
  (svn_auth_baton_t): Add variable.
  (svn_auth_open): Document initial value.
  (auth_NULL): New constant.
  (svn_auth_set_parameter): Store value in slave parameters if that
    exists.
  (svn_auth_get_parameter): Check slave parameters before primary
    parameters.

  (svn_auth__apply_config_for_server): Rename to...
  (svn_auth__make_session_auth): ... this and create a slave auth baton
    with the new values instead of changing the passed baton.


Changed paths

Path Details
Directorysubversion/trunk/subversion/include/private/svn_auth_private.h modified , text changed
Directorysubversion/trunk/subversion/libsvn_ra/ra_loader.c modified , text changed
Directorysubversion/trunk/subversion/libsvn_ra/ra_loader.h modified , text changed
Directorysubversion/trunk/subversion/libsvn_ra/wrapper_template.h modified , text changed
Directorysubversion/trunk/subversion/libsvn_ra_local/ra_local.h modified , text changed
Directorysubversion/trunk/subversion/libsvn_ra_local/ra_plugin.c modified , text changed
Directorysubversion/trunk/subversion/libsvn_ra_serf/ra_serf.h modified , text changed
Directorysubversion/trunk/subversion/libsvn_ra_serf/serf.c modified , text changed
Directorysubversion/trunk/subversion/libsvn_ra_serf/util.c modified , text changed
Directorysubversion/trunk/subversion/libsvn_ra_svn/client.c modified , text changed
Directorysubversion/trunk/subversion/libsvn_ra_svn/cyrus_auth.c modified , text changed
Directorysubversion/trunk/subversion/libsvn_ra_svn/internal_auth.c modified , text changed
Directorysubversion/trunk/subversion/libsvn_ra_svn/ra_svn.h modified , text changed
Directorysubversion/trunk/subversion/libsvn_subr/auth.c modified , text changed

infrastructure at apache.org
ViewVC Help
Powered by ViewVC 1.1.26