Subject: | store_digest_authorization_nonce() bypassed by authenticate_digest() |
authenticate_digest() calls $c->cache->set() directly, instead of
calling $self->store_digest_authorization_nonce(). This invalidates the
suggestion in the documentation to override
get_digest_authorization_nonce() and store_digest_authorization_nonce()
to change how the nonces are stored.
Patch attached.
Subject: | cat_auth_cred_http.patch |
--- lib/Catalyst/Authentication/Credential/HTTP.pm (revision 13791)
+++ lib/Catalyst/Authentication/Credential/HTTP.pm (working copy)
@@ -183,8 +183,8 @@
$A2_digest );
my $rq_digest = Digest::MD5::md5_hex($digest_in);
$nonce->nonce_count($nonce_count);
- $c->cache->set( __PACKAGE__ . '::opaque:' . $nonce->opaque,
- $nonce );
+ my $key = __PACKAGE__ . '::opaque:' . $nonce->opaque;
+ $self->store_digest_authorization_nonce( $c, $key, $nonce );
if ($rq_digest eq $res{response}) {
return $user_obj;
}