of possibly multiple headers with the same name and deleting the
remaining ones. PR 45333. [Ruediger Pluem]
- *) mod_auth_digest: Detect during startup when AuthDigestProvider
- is configured to use an incompatible provider via AuthnProviderAlias.
- PR 45196 [Eric Covener]
-
*) mod_rewrite: Preserve the query string with [proxy,noescape]. PR 45247
[Tom Donovan]
* interpolate_env in proxy_dir_conf.
* Rationale: see r661069.
* 20080528.1 (2.3.0-dev) add has_realm_hash() to authn_provider struct
+ * 20080722.0 (2.3.0-dev) remove has_realm_hash() from authn_provider struct
*/
#define MODULE_MAGIC_COOKIE 0x41503234UL /* "AP24" */
#ifndef MODULE_MAGIC_NUMBER_MAJOR
-#define MODULE_MAGIC_NUMBER_MAJOR 20080528
+#define MODULE_MAGIC_NUMBER_MAJOR 20080722
#endif
-#define MODULE_MAGIC_NUMBER_MINOR 1 /* 0...n */
+#define MODULE_MAGIC_NUMBER_MINOR 0 /* 0...n */
/**
* Determine if the server's current MODULE_MAGIC_NUMBER is at least a
*/
authn_status (*get_realm_hash)(request_rec *r, const char *user,
const char *realm, char **rethash);
-
- /* OK if provider can satisfy get_realm_hash(), APR_ENOTIMPL otherwise. */
- apr_status_t (*has_realm_hash)(cmd_parms *cmd, const char *provider_name);
-
} authn_provider;
/* A linked-list of authn providers. */
newp->provider_name);
}
- if (!newp->provider->get_realm_hash ||
- (newp->provider->has_realm_hash &&
- newp->provider->has_realm_hash(cmd, newp->provider_name) == APR_ENOTIMPL)) {
+ if (!newp->provider->get_realm_hash) {
/* if it doesn't provide the appropriate function, reject it */
return apr_psprintf(cmd->pool,
"The '%s' Authn provider doesn't support "
return ret;
}
-static apr_status_t authn_alias_has_realm_hash(cmd_parms *cmd, const char *provider_name)
-{
- /* No merge, just a query to be passed on to the provider */
- authn_alias_srv_conf *authcfg =
- (authn_alias_srv_conf *)ap_get_module_config(cmd->server->module_config,
- &authn_core_module);
- apr_status_t ret = APR_ENOTIMPL;
-
- provider_alias_rec *prvdraliasrec = apr_hash_get(authcfg->alias_rec,
- provider_name,
- APR_HASH_KEY_STRING);
- if (prvdraliasrec->provider->has_realm_hash) {
- ret = prvdraliasrec->provider->has_realm_hash(cmd, provider_name);
- }
- else if (prvdraliasrec->provider->get_realm_hash) {
- /* provider didn't register has_realm_hash, but does have get_realm_hash */
- ret = OK;
- }
-
- return ret;
-}
static authn_status authn_alias_get_realm_hash(request_rec *r, const char *user,
const char *realm, char **rethash)
{
{
&authn_alias_check_password,
&authn_alias_get_realm_hash,
- &authn_alias_has_realm_hash,
};
static const char *authaliassection(cmd_parms *cmd, void *mconfig, const char *arg)
return AUTH_GRANTED;
}
-static apr_status_t has_dbm_realm_hash(cmd_parms *cmd, const char *provider_name)
-{
- return OK;
-}
-
static authn_status get_dbm_realm_hash(request_rec *r, const char *user,
const char *realm, char **rethash)
{
{
&check_dbm_pw,
&get_dbm_realm_hash,
- &has_dbm_realm_hash
};
static void register_hooks(apr_pool_t *p)
return AUTH_GRANTED;
}
-static apr_status_t has_realm_hash(cmd_parms *cmd, const char *provider_name)
-{
- return OK;
-}
-
static authn_status get_realm_hash(request_rec *r, const char *user,
const char *realm, char **rethash)
{
{
&check_password,
&get_realm_hash,
- &has_realm_hash,
};
static void register_hooks(apr_pool_t *p)
return OK;
}
-static authn_status authn_ldap_get_realm_hash(request_rec *r, const char *user,
- const char *realm, char **rethash)
-{
- return AUTH_GENERAL_ERROR;
-
-}
-
-static apr_status_t authn_ldap_has_realm_hash(cmd_parms *cmd, const char *provider_name)
-{
- return APR_ENOTIMPL;
-}
-
static const authn_provider authn_ldap_provider =
{
&authn_ldap_check_password,
- &authn_ldap_get_realm_hash,
- &authn_ldap_has_realm_hash
};
static const authz_provider authz_ldapuser_provider =