Skip to content

Commit

Permalink
Add API protection against the deprecated v1.4 apr_crypto API.
Browse files Browse the repository at this point in the history
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1103351 13f79535-47bb-0310-9956-ffa450edef68
  • Loading branch information
minfrin committed May 15, 2011
1 parent 7b17db4 commit 0a23ff4
Showing 1 changed file with 13 additions and 1 deletion.
14 changes: 13 additions & 1 deletion modules/session/mod_session_crypto.c
Expand Up @@ -116,7 +116,7 @@ static apr_status_t crypt_init(request_rec * r,
res = apr_crypto_passphrase(driver, r->pool, *f, dconf->passphrase,
strlen(dconf->passphrase),
(unsigned char *) salt, salt ? sizeof(apr_uuid_t) : 0,
dconf->cipher, APR_MODE_CBC, 1, 4096, key, ivSize);
dconf->cipher, MODE_CBC, 1, 4096, key, ivSize);
#else
res = apr_crypto_passphrase(key, ivSize, dconf->passphrase,
strlen(dconf->passphrase),
Expand Down Expand Up @@ -498,7 +498,11 @@ static void *create_session_crypto_dir_config(apr_pool_t * p, char *dummy)
(session_crypto_dir_conf *) apr_pcalloc(p, sizeof(session_crypto_dir_conf));

/* default cipher AES256-SHA */
#if CRYPTO_VERSION < 200
new->cipher = KEY_AES_256;
#else
new->cipher = APR_KEY_AES_256;
#endif

return (void *) new;
}
Expand Down Expand Up @@ -612,11 +616,19 @@ static const char *set_crypto_passphrase(cmd_parms * cmd, void *config, const ch
}
else if (!strcasecmp(word, "cipher")) {
if (!strcasecmp(val, "3des192")) {
#if CRYPTO_VERSION < 200
dconf->cipher = KEY_3DES_192;
#else
dconf->cipher = APR_KEY_3DES_192;
#endif
dconf->cipher_set = 1;
}
else if (!strcasecmp(val, "aes256")) {
#if CRYPTO_VERSION < 200
dconf->cipher = KEY_AES_256;
#else
dconf->cipher = APR_KEY_AES_256;
#endif
dconf->cipher_set = 1;
}
else {
Expand Down

0 comments on commit 0a23ff4

Please sign in to comment.