diff options
author | Matt Caswell <matt@openssl.org> | 2019-12-05 17:09:49 +0000 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2020-01-06 15:09:57 +0000 |
commit | c72fa2554f5adc03bcc3c6e4ebcd1929e70efed4 (patch) | |
tree | 181157c82b41fb40f46ada0f30d33468df50aefb /crypto/aes | |
parent | 2852c672a8ecb02a74d0adeeb93c661b7d2d7511 (diff) | |
download | openssl-new-c72fa2554f5adc03bcc3c6e4ebcd1929e70efed4.tar.gz |
Deprecate the low level AES functions
Use of the low level AES functions has been informally discouraged for a
long time. We now formally deprecate them.
Applications should instead use the EVP APIs, e.g. EVP_EncryptInit_ex,
EVP_EncryptUpdate, EVP_EncryptFinal_ex, and the equivalently named decrypt
functions.
Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org>
(Merged from https://github.com/openssl/openssl/pull/10580)
Diffstat (limited to 'crypto/aes')
-rw-r--r-- | crypto/aes/aes_cbc.c | 7 | ||||
-rw-r--r-- | crypto/aes/aes_cfb.c | 6 | ||||
-rw-r--r-- | crypto/aes/aes_core.c | 7 | ||||
-rw-r--r-- | crypto/aes/aes_ecb.c | 6 | ||||
-rw-r--r-- | crypto/aes/aes_ige.c | 6 | ||||
-rw-r--r-- | crypto/aes/aes_misc.c | 8 | ||||
-rw-r--r-- | crypto/aes/aes_ofb.c | 6 | ||||
-rw-r--r-- | crypto/aes/aes_wrap.c | 6 |
8 files changed, 49 insertions, 3 deletions
diff --git a/crypto/aes/aes_cbc.c b/crypto/aes/aes_cbc.c index d4e309195f..9017cc132c 100644 --- a/crypto/aes/aes_cbc.c +++ b/crypto/aes/aes_cbc.c @@ -7,6 +7,13 @@ * https://www.openssl.org/source/license.html */ +/* + * AES low level APIs are deprecated for public use, but still ok for internal + * use where we're using them to implement the higher level EVP interface, as is + * the case here. + */ +#include "internal/deprecated.h" + #include <openssl/aes.h> #include <openssl/modes.h> diff --git a/crypto/aes/aes_cfb.c b/crypto/aes/aes_cfb.c index 096280171f..f0442f61e8 100644 --- a/crypto/aes/aes_cfb.c +++ b/crypto/aes/aes_cfb.c @@ -7,6 +7,12 @@ * https://www.openssl.org/source/license.html */ +/* + * AES_encrypt is deprecated - but we need to use it to implement these other + * deprecated APIs. + */ +#include "internal/deprecated.h" + #include <openssl/aes.h> #include <openssl/modes.h> diff --git a/crypto/aes/aes_core.c b/crypto/aes/aes_core.c index a094a9adeb..d7e4bf1635 100644 --- a/crypto/aes/aes_core.c +++ b/crypto/aes/aes_core.c @@ -36,6 +36,13 @@ /* Note: rewritten a little bit to provide error control and an OpenSSL- compatible API */ +/* + * AES low level APIs are deprecated for public use, but still ok for internal + * use where we're using them to implement the higher level EVP interface, as is + * the case here. + */ +#include "internal/deprecated.h" + #include <assert.h> #include <stdlib.h> diff --git a/crypto/aes/aes_ecb.c b/crypto/aes/aes_ecb.c index f4a75f133b..7270fc31e8 100644 --- a/crypto/aes/aes_ecb.c +++ b/crypto/aes/aes_ecb.c @@ -9,6 +9,12 @@ #include <assert.h> +/* + * AES_encrypt/AES_decrypt are deprecated - but we need to use them to implement + * AES_ecb_encrypt + */ +#include "internal/deprecated.h" + #include <openssl/aes.h> #include "aes_local.h" diff --git a/crypto/aes/aes_ige.c b/crypto/aes/aes_ige.c index 3300e518d2..b40f4e53a6 100644 --- a/crypto/aes/aes_ige.c +++ b/crypto/aes/aes_ige.c @@ -7,6 +7,12 @@ * https://www.openssl.org/source/license.html */ +/* + * AES_encrypt/AES_decrypt are deprecated - but we need to use them to implement + * these functions + */ +#include "internal/deprecated.h" + #include "internal/cryptlib.h" #ifdef OPENSSL_NO_DEPRECATED_3_0 diff --git a/crypto/aes/aes_misc.c b/crypto/aes/aes_misc.c index 35be71d1c7..e706f5135f 100644 --- a/crypto/aes/aes_misc.c +++ b/crypto/aes/aes_misc.c @@ -11,11 +11,13 @@ #include <openssl/aes.h> #include "aes_local.h" +#ifndef OPENSSL_NO_DEPRECATED_3_0 const char *AES_options(void) { -#ifdef FULL_UNROLL +# ifdef FULL_UNROLL return "aes(full)"; -#else +# else return "aes(partial)"; -#endif +# endif } +#endif diff --git a/crypto/aes/aes_ofb.c b/crypto/aes/aes_ofb.c index e77546c89f..20f9814f69 100644 --- a/crypto/aes/aes_ofb.c +++ b/crypto/aes/aes_ofb.c @@ -7,6 +7,12 @@ * https://www.openssl.org/source/license.html */ +/* + * AES_encrypt is deprecated - but we need to use it to implement + * AES_ofb128_encrypt + */ +#include "internal/deprecated.h" + #include <openssl/aes.h> #include <openssl/modes.h> diff --git a/crypto/aes/aes_wrap.c b/crypto/aes/aes_wrap.c index b869b265cd..82bf6dbfb6 100644 --- a/crypto/aes/aes_wrap.c +++ b/crypto/aes/aes_wrap.c @@ -7,6 +7,12 @@ * https://www.openssl.org/source/license.html */ +/* + * AES_encrypt/AES_decrypt are deprecated - but we need to use them to implement + * these functions + */ +#include "internal/deprecated.h" + #include "internal/cryptlib.h" #include <openssl/aes.h> #include <openssl/modes.h> |