X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=providers%2Fimplementations%2Fciphers%2Fcipher_aes_cbc_hmac_sha256_hw.c;h=f2a233710ca865e30843ff3f56833fc9ba2f4957;hp=4352476264415e88005769cda3753824c9c6f757;hb=7cc5e0d283800c757e46d1476273d271120aa38d;hpb=0d2bfe52bb7e839f7bddcdb1160c335f2994df2f diff --git a/providers/implementations/ciphers/cipher_aes_cbc_hmac_sha256_hw.c b/providers/implementations/ciphers/cipher_aes_cbc_hmac_sha256_hw.c index 4352476264..f2a233710c 100644 --- a/providers/implementations/ciphers/cipher_aes_cbc_hmac_sha256_hw.c +++ b/providers/implementations/ciphers/cipher_aes_cbc_hmac_sha256_hw.c @@ -1,5 +1,5 @@ /* - * Copyright 2011-2019 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2011-2020 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -7,16 +7,28 @@ * https://www.openssl.org/source/license.html */ +/* + * All 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 "cipher_aes_cbc_hmac_sha.h" -#ifndef AES_CBC_HMAC_SHA_CAPABLE +#if !defined(AES_CBC_HMAC_SHA_CAPABLE) || !defined(AESNI_CAPABLE) int cipher_capable_aes_cbc_hmac_sha256(void) { return 0; } + +const PROV_CIPHER_HW_AES_HMAC_SHA *PROV_CIPHER_HW_aes_cbc_hmac_sha256(void) +{ + return NULL; +} #else -# include "crypto/rand.h" +# include # include "crypto/evp.h" # include "internal/constant_time.h" @@ -132,7 +144,7 @@ static size_t tls1_multi_block_encrypt(void *vctx, # endif /* ask for IVs in bulk */ - if (rand_bytes_ex(ctx->base.libctx, (IVs = blocks[0].c), 16 * x4) <= 0) + if (RAND_bytes_ex(ctx->base.libctx, (IVs = blocks[0].c), 16 * x4) <= 0) return 0; mctx = (SHA256_MB_CTX *) (storage + 32 - ((size_t)storage % 32)); /* align */ @@ -807,7 +819,7 @@ static int aesni_cbc_hmac_sha256_tls1_multiblock_encrypt( param->inp, param->len, param->interleave / 4); } -#endif +# endif static const PROV_CIPHER_HW_AES_HMAC_SHA cipher_hw_aes_hmac_sha256 = { { @@ -828,4 +840,4 @@ const PROV_CIPHER_HW_AES_HMAC_SHA *PROV_CIPHER_HW_aes_cbc_hmac_sha256(void) return &cipher_hw_aes_hmac_sha256; } -#endif /* AES_CBC_HMAC_SHA_CAPABLE */ +#endif /* !defined(AES_CBC_HMAC_SHA_CAPABLE) || !defined(AESNI_CAPABLE) */