summaryrefslogtreecommitdiff
path: root/modules/session
diff options
context:
space:
mode:
authorEric Covener <covener@apache.org>2020-03-01 22:40:03 +0000
committerEric Covener <covener@apache.org>2020-03-01 22:40:03 +0000
commitbef4205da37ec1839e6eecc4e8ef56b29829988c (patch)
tree9aed1465fc841fcbf2f09a4382161a69d4683958 /modules/session
parent2c8a4fe01c2b8e4553a3cb397f9f59a44095d0a6 (diff)
downloadhttpd-bef4205da37ec1839e6eecc4e8ef56b29829988c.tar.gz
bubble up an error if none of the passhrases work
previously, the un-decodable z->encoded would get set to NULL but success would be returned git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1874674 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'modules/session')
-rw-r--r--modules/session/mod_session_crypto.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/modules/session/mod_session_crypto.c b/modules/session/mod_session_crypto.c
index be7e7b1807..6e180f8cf3 100644
--- a/modules/session/mod_session_crypto.c
+++ b/modules/session/mod_session_crypto.c
@@ -391,6 +391,8 @@ static apr_status_t decrypt_string(request_rec * r, const apr_crypto_t *f,
return res;
}
+ res = APR_ECRYPT; /* in case we exhaust all passphrases */
+
/* try each passphrase in turn */
for (; i < dconf->passphrases->nelts; i++) {
const char *passphrase = APR_ARRAY_IDX(dconf->passphrases, i, char *);