mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-08-01 03:34:39 +02:00
EVP Fix
There are some cases when the EVP wrapper code could call strncmp with a null pointer. This was refactored to remove this possibility.
This commit is contained in:
@@ -58,98 +58,98 @@ enum {
|
||||
#ifndef NO_AES
|
||||
#ifdef HAVE_AES_CBC
|
||||
#ifdef WOLFSSL_AES_128
|
||||
static char *EVP_AES_128_CBC = NULL;
|
||||
static const char EVP_AES_128_CBC[] = "AES-128-CBC";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
static char *EVP_AES_192_CBC = NULL;
|
||||
static const char EVP_AES_192_CBC[] = "AES-192-CBC";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
static char *EVP_AES_256_CBC = NULL;
|
||||
static const char EVP_AES_256_CBC[] = "AES-256-CBC";
|
||||
#endif
|
||||
#endif /* HAVE_AES_CBC */
|
||||
|
||||
#ifdef WOLFSSL_AES_OFB
|
||||
#ifdef WOLFSSL_AES_128
|
||||
static char *EVP_AES_128_OFB = NULL;
|
||||
static const char EVP_AES_128_OFB[] = "AES-128-OFB";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
static char *EVP_AES_192_OFB = NULL;
|
||||
static const char EVP_AES_192_OFB[] = "AES-192-OFB";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
static char *EVP_AES_256_OFB = NULL;
|
||||
static const char EVP_AES_256_OFB[] = "AES-256-OFB";
|
||||
#endif
|
||||
#endif /* WOLFSSL_AES_OFB */
|
||||
|
||||
#ifdef WOLFSSL_AES_XTS
|
||||
#ifdef WOLFSSL_AES_128
|
||||
static char *EVP_AES_128_XTS = NULL;
|
||||
static const char EVP_AES_128_XTS[] = "AES-128-XTS";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
static char *EVP_AES_256_XTS = NULL;
|
||||
static const char EVP_AES_256_XTS[] = "AES-256-XTS";
|
||||
#endif
|
||||
#endif /* WOLFSSL_AES_XTS */
|
||||
|
||||
#ifdef WOLFSSL_AES_CFB
|
||||
#ifdef WOLFSSL_AES_128
|
||||
static char *EVP_AES_128_CFB1 = NULL;
|
||||
static const char EVP_AES_128_CFB1[] = "AES-128-CFB1";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
static char *EVP_AES_192_CFB1 = NULL;
|
||||
static const char EVP_AES_192_CFB1[] = "AES-192-CFB1";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
static char *EVP_AES_256_CFB1 = NULL;
|
||||
static const char EVP_AES_256_CFB1[] = "AES-256-CFB1";
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_128
|
||||
static char *EVP_AES_128_CFB8 = NULL;
|
||||
static const char EVP_AES_128_CFB8[] = "AES-128-CFB8";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
static char *EVP_AES_192_CFB8 = NULL;
|
||||
static const char EVP_AES_192_CFB8[] = "AES-192-CFB8";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
static char *EVP_AES_256_CFB8 = NULL;
|
||||
static const char EVP_AES_256_CFB8[] = "AES-256-CFB8";
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_128
|
||||
static char *EVP_AES_128_CFB128 = NULL;
|
||||
static const char EVP_AES_128_CFB128[] = "AES-128-CFB128";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
static char *EVP_AES_192_CFB128 = NULL;
|
||||
static const char EVP_AES_192_CFB128[] = "AES-192-CFB128";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
static char *EVP_AES_256_CFB128 = NULL;
|
||||
static const char EVP_AES_256_CFB128[] = "AES-256-CFB128";
|
||||
#endif
|
||||
#endif /* WOLFSSL_AES_CFB */
|
||||
|
||||
#ifdef HAVE_AESGCM
|
||||
#ifdef WOLFSSL_AES_128
|
||||
static char *EVP_AES_128_GCM = NULL;
|
||||
static const char EVP_AES_128_GCM[] = "AES-128-GCM";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
static char *EVP_AES_192_GCM = NULL;
|
||||
static const char EVP_AES_192_GCM[] = "AES-192-GCM";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
static char *EVP_AES_256_GCM = NULL;
|
||||
static const char EVP_AES_256_GCM[] = "AES-256-GCM";
|
||||
#endif
|
||||
#endif /* HAVE_AESGCM */
|
||||
#ifdef WOLFSSL_AES_128
|
||||
static char *EVP_AES_128_CTR = NULL;
|
||||
static const char EVP_AES_128_CTR[] = "AES-128-CTR";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
static char *EVP_AES_192_CTR = NULL;
|
||||
static const char EVP_AES_192_CTR[] = "AES-192-CTR";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
static char *EVP_AES_256_CTR = NULL;
|
||||
static const char EVP_AES_256_CTR[] = "AES-256-CTR";
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_128
|
||||
static char *EVP_AES_128_ECB = NULL;
|
||||
static const char EVP_AES_128_ECB[] = "AES-128-ECB";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
static char *EVP_AES_192_ECB = NULL;
|
||||
static const char EVP_AES_192_ECB[] = "AES-192-ECB";
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
static char *EVP_AES_256_ECB = NULL;
|
||||
static const char EVP_AES_256_ECB[] = "AES-256-ECB";
|
||||
#endif
|
||||
#define EVP_AES_SIZE 11
|
||||
#ifdef WOLFSSL_AES_CFB
|
||||
@@ -158,21 +158,30 @@ enum {
|
||||
#endif
|
||||
|
||||
#ifndef NO_DES3
|
||||
static char *EVP_DES_CBC = NULL;
|
||||
static char *EVP_DES_ECB = NULL;
|
||||
static const char EVP_DES_CBC[] = "DES-CBC";
|
||||
static const char EVP_DES_ECB[] = "DES-ECB";
|
||||
|
||||
static char *EVP_DES_EDE3_CBC = NULL;
|
||||
static char *EVP_DES_EDE3_ECB = NULL;
|
||||
static const char EVP_DES_EDE3_CBC[] = "DES-EDE3-CBC";
|
||||
static const char EVP_DES_EDE3_ECB[] = "DES-EDE3-ECB";
|
||||
|
||||
#define EVP_DES_SIZE 7
|
||||
#define EVP_DES_EDE3_SIZE 12
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_IDEA
|
||||
static char *EVP_IDEA_CBC;
|
||||
static const char EVP_IDEA_CBC[] = "IDEA-CBC";
|
||||
#define EVP_IDEA_SIZE 8
|
||||
#endif
|
||||
|
||||
#ifndef NO_RC4
|
||||
static const char EVP_ARC4[] = "ARC4";
|
||||
#define EVP_ARC4_SIZE 4
|
||||
#endif
|
||||
|
||||
static const char EVP_NULL[] = "NULL";
|
||||
#define EVP_NULL_SIZE 4
|
||||
|
||||
|
||||
static unsigned int cipherType(const WOLFSSL_EVP_CIPHER *cipher);
|
||||
|
||||
|
||||
@@ -979,119 +988,119 @@ static unsigned int cipherType(const WOLFSSL_EVP_CIPHER *cipher)
|
||||
{
|
||||
if (cipher == NULL) return 0; /* dummy for #ifdef */
|
||||
#ifndef NO_DES3
|
||||
else if (EVP_DES_CBC && XSTRNCMP(cipher, EVP_DES_CBC, EVP_DES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_DES_CBC, EVP_DES_SIZE) == 0)
|
||||
return DES_CBC_TYPE;
|
||||
else if (EVP_DES_EDE3_CBC && XSTRNCMP(cipher, EVP_DES_EDE3_CBC, EVP_DES_EDE3_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_DES_EDE3_CBC, EVP_DES_EDE3_SIZE) == 0)
|
||||
return DES_EDE3_CBC_TYPE;
|
||||
#if !defined(NO_DES3)
|
||||
else if (EVP_DES_ECB && XSTRNCMP(cipher, EVP_DES_ECB, EVP_DES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_DES_ECB, EVP_DES_SIZE) == 0)
|
||||
return DES_ECB_TYPE;
|
||||
else if (EVP_DES_EDE3_ECB && XSTRNCMP(cipher, EVP_DES_EDE3_ECB, EVP_DES_EDE3_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_DES_EDE3_ECB, EVP_DES_EDE3_SIZE) == 0)
|
||||
return DES_EDE3_ECB_TYPE;
|
||||
#endif /* NO_DES3 && HAVE_AES_ECB */
|
||||
#endif
|
||||
#if !defined(NO_AES)
|
||||
#if defined(HAVE_AES_CBC)
|
||||
#ifdef WOLFSSL_AES_128
|
||||
else if (EVP_AES_128_CBC && XSTRNCMP(cipher, EVP_AES_128_CBC, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_128_CBC, EVP_AES_SIZE) == 0)
|
||||
return AES_128_CBC_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
else if (EVP_AES_192_CBC && XSTRNCMP(cipher, EVP_AES_192_CBC, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_192_CBC, EVP_AES_SIZE) == 0)
|
||||
return AES_192_CBC_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
else if (EVP_AES_256_CBC && XSTRNCMP(cipher, EVP_AES_256_CBC, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_256_CBC, EVP_AES_SIZE) == 0)
|
||||
return AES_256_CBC_TYPE;
|
||||
#endif
|
||||
#endif /* HAVE_AES_CBC */
|
||||
#if defined(HAVE_AESGCM)
|
||||
#ifdef WOLFSSL_AES_128
|
||||
else if (EVP_AES_128_GCM && XSTRNCMP(cipher, EVP_AES_128_GCM, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_128_GCM, EVP_AES_SIZE) == 0)
|
||||
return AES_128_GCM_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
else if (EVP_AES_192_GCM && XSTRNCMP(cipher, EVP_AES_192_GCM, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_192_GCM, EVP_AES_SIZE) == 0)
|
||||
return AES_192_GCM_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
else if (EVP_AES_256_GCM && XSTRNCMP(cipher, EVP_AES_256_GCM, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_256_GCM, EVP_AES_SIZE) == 0)
|
||||
return AES_256_GCM_TYPE;
|
||||
#endif
|
||||
#endif /* HAVE_AESGCM */
|
||||
#if defined(WOLFSSL_AES_COUNTER)
|
||||
#ifdef WOLFSSL_AES_128
|
||||
else if (EVP_AES_128_CTR && XSTRNCMP(cipher, EVP_AES_128_CTR, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_128_CTR, EVP_AES_SIZE) == 0)
|
||||
return AES_128_CTR_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
else if (EVP_AES_192_CTR && XSTRNCMP(cipher, EVP_AES_192_CTR, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_192_CTR, EVP_AES_SIZE) == 0)
|
||||
return AES_192_CTR_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
else if (EVP_AES_256_CTR && XSTRNCMP(cipher, EVP_AES_256_CTR, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_256_CTR, EVP_AES_SIZE) == 0)
|
||||
return AES_256_CTR_TYPE;
|
||||
#endif
|
||||
#endif /* HAVE_AES_CBC */
|
||||
#if defined(HAVE_AES_ECB)
|
||||
#ifdef WOLFSSL_AES_128
|
||||
else if (EVP_AES_128_ECB && XSTRNCMP(cipher, EVP_AES_128_ECB, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_128_ECB, EVP_AES_SIZE) == 0)
|
||||
return AES_128_ECB_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
else if (EVP_AES_192_ECB && XSTRNCMP(cipher, EVP_AES_192_ECB, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_192_ECB, EVP_AES_SIZE) == 0)
|
||||
return AES_192_ECB_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
else if (EVP_AES_256_ECB && XSTRNCMP(cipher, EVP_AES_256_ECB, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_256_ECB, EVP_AES_SIZE) == 0)
|
||||
return AES_256_ECB_TYPE;
|
||||
#endif
|
||||
#endif /*HAVE_AES_CBC */
|
||||
#if defined(WOLFSSL_AES_XTS)
|
||||
#ifdef WOLFSSL_AES_128
|
||||
else if (EVP_AES_128_XTS && XSTRNCMP(cipher, EVP_AES_128_XTS, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_128_XTS, EVP_AES_SIZE) == 0)
|
||||
return AES_128_XTS_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
else if (EVP_AES_256_XTS && XSTRNCMP(cipher, EVP_AES_256_XTS, EVP_AES_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_256_XTS, EVP_AES_SIZE) == 0)
|
||||
return AES_256_XTS_TYPE;
|
||||
#endif
|
||||
#endif /* WOLFSSL_AES_XTS */
|
||||
#if defined(WOLFSSL_AES_CFB)
|
||||
#ifdef WOLFSSL_AES_128
|
||||
else if (EVP_AES_128_CFB1 && XSTRNCMP(cipher, EVP_AES_128_CFB1, EVP_AESCFB_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_128_CFB1, EVP_AESCFB_SIZE) == 0)
|
||||
return AES_128_CFB1_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
else if (EVP_AES_192_CFB1 && XSTRNCMP(cipher, EVP_AES_192_CFB1, EVP_AESCFB_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_192_CFB1, EVP_AESCFB_SIZE) == 0)
|
||||
return AES_192_CFB1_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
else if (EVP_AES_256_CFB1 && XSTRNCMP(cipher, EVP_AES_256_CFB1, EVP_AESCFB_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_256_CFB1, EVP_AESCFB_SIZE) == 0)
|
||||
return AES_256_CFB1_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_128
|
||||
else if (EVP_AES_128_CFB8 && XSTRNCMP(cipher, EVP_AES_128_CFB8, EVP_AESCFB_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_128_CFB8, EVP_AESCFB_SIZE) == 0)
|
||||
return AES_128_CFB8_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
else if (EVP_AES_192_CFB8 && XSTRNCMP(cipher, EVP_AES_192_CFB8, EVP_AESCFB_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_192_CFB8, EVP_AESCFB_SIZE) == 0)
|
||||
return AES_192_CFB8_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
else if (EVP_AES_256_CFB8 && XSTRNCMP(cipher, EVP_AES_256_CFB8, EVP_AESCFB_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_256_CFB8, EVP_AESCFB_SIZE) == 0)
|
||||
return AES_256_CFB8_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_128
|
||||
else if (EVP_AES_128_CFB128 && XSTRNCMP(cipher, EVP_AES_128_CFB128, EVP_AESCFB_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_128_CFB128, EVP_AESCFB_SIZE) == 0)
|
||||
return AES_128_CFB128_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
else if (EVP_AES_192_CFB128 && XSTRNCMP(cipher, EVP_AES_192_CFB128, EVP_AESCFB_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_192_CFB128, EVP_AESCFB_SIZE) == 0)
|
||||
return AES_192_CFB128_TYPE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
else if (EVP_AES_256_CFB128 && XSTRNCMP(cipher, EVP_AES_256_CFB128, EVP_AESCFB_SIZE) == 0)
|
||||
else if (XSTRNCMP(cipher, EVP_AES_256_CFB128, EVP_AESCFB_SIZE) == 0)
|
||||
return AES_256_CFB128_TYPE;
|
||||
#endif
|
||||
#endif /*HAVE_AES_CBC */
|
||||
@@ -2650,10 +2659,10 @@ static const struct cipher{
|
||||
|
||||
#ifndef NO_AES
|
||||
#ifdef WOLFSSL_AES_128
|
||||
{AES_128_CBC_TYPE, "AES-128-CBC", NID_aes_128_cbc},
|
||||
{AES_128_CBC_TYPE, EVP_AES_128_CBC, NID_aes_128_cbc},
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
{AES_192_CBC_TYPE, "AES-192-CBC", NID_aes_192_cbc},
|
||||
{AES_192_CBC_TYPE, EVP_AES_192_CBC, NID_aes_192_cbc},
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
{AES_256_CBC_TYPE, "AES-256-CBC", NID_aes_256_cbc},
|
||||
@@ -2794,7 +2803,7 @@ int wolfSSL_EVP_CIPHER_nid(const WOLFSSL_EVP_CIPHER *cipher)
|
||||
const WOLFSSL_EVP_CIPHER *wolfSSL_EVP_get_cipherbyname(const char *name)
|
||||
{
|
||||
|
||||
static const struct alias {
|
||||
const struct alias {
|
||||
const char *name;
|
||||
const char *alias;
|
||||
} alias_tbl[] =
|
||||
@@ -2817,16 +2826,16 @@ const WOLFSSL_EVP_CIPHER *wolfSSL_EVP_get_cipherbyname(const char *name)
|
||||
#ifndef NO_AES
|
||||
#ifdef HAVE_AES_CBC
|
||||
#ifdef WOLFSSL_AES_128
|
||||
{"AES-128-CBC", "AES128-CBC"},
|
||||
{"AES-128-CBC", "aes128-cbc"},
|
||||
{EVP_AES_128_CBC, "AES128-CBC"},
|
||||
{EVP_AES_128_CBC, "aes128-cbc"},
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
{"AES-192-CBC", "AES192-CBC"},
|
||||
{"AES-192-CBC", "aes192-cbc"},
|
||||
{EVP_AES_192_CBC, "AES192-CBC"},
|
||||
{EVP_AES_192_CBC, "aes192-cbc"},
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
{"AES-256-CBC", "AES256-CBC"},
|
||||
{"AES-256-CBC", "aes256-cbc"},
|
||||
{EVP_AES_256_CBC, "AES256-CBC"},
|
||||
{EVP_AES_256_CBC, "aes256-cbc"},
|
||||
#endif
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_128
|
||||
@@ -2981,124 +2990,7 @@ const WOLFSSL_EVP_CIPHER *wolfSSL_EVP_get_cipherbynid(int id)
|
||||
|
||||
void wolfSSL_EVP_init(void)
|
||||
{
|
||||
#ifndef NO_AES
|
||||
#ifdef HAVE_AES_CBC
|
||||
#ifdef WOLFSSL_AES_128
|
||||
EVP_AES_128_CBC = (char *)EVP_get_cipherbyname("AES-128-CBC");
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
EVP_AES_192_CBC = (char *)EVP_get_cipherbyname("AES-192-CBC");
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
EVP_AES_256_CBC = (char *)EVP_get_cipherbyname("AES-256-CBC");
|
||||
#endif
|
||||
#endif /* HAVE_AES_CBC */
|
||||
|
||||
#ifdef WOLFSSL_AES_CFB
|
||||
#ifdef WOLFSSL_AES_128
|
||||
EVP_AES_128_CFB1 = (char *)EVP_get_cipherbyname("AES-128-CFB1");
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_192
|
||||
EVP_AES_192_CFB1 = (char *)EVP_get_cipherbyname("AES-192-CFB1");
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_256
|
||||
EVP_AES_256_CFB1 = (char *)EVP_get_cipherbyname("AES-256-CFB1");
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_128
|
||||
EVP_AES_128_CFB8 = (char *)EVP_get_cipherbyname("AES-128-CFB8");
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_192
|
||||
EVP_AES_192_CFB8 = (char *)EVP_get_cipherbyname("AES-192-CFB8");
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_256
|
||||
EVP_AES_256_CFB8 = (char *)EVP_get_cipherbyname("AES-256-CFB8");
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_128
|
||||
EVP_AES_128_CFB128 = (char *)EVP_get_cipherbyname("AES-128-CFB128");
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_192
|
||||
EVP_AES_192_CFB128 = (char *)EVP_get_cipherbyname("AES-192-CFB128");
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_256
|
||||
EVP_AES_256_CFB128 = (char *)EVP_get_cipherbyname("AES-256-CFB128");
|
||||
#endif
|
||||
#endif /* WOLFSSL_AES_CFB */
|
||||
|
||||
#ifdef WOLFSSL_AES_OFB
|
||||
#ifdef WOLFSSL_AES_128
|
||||
EVP_AES_128_OFB = (char *)EVP_get_cipherbyname("AES-128-OFB");
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_192
|
||||
EVP_AES_192_OFB = (char *)EVP_get_cipherbyname("AES-192-OFB");
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_256
|
||||
EVP_AES_256_OFB = (char *)EVP_get_cipherbyname("AES-256-OFB");
|
||||
#endif
|
||||
#endif /* WOLFSSL_AES_OFB */
|
||||
|
||||
#ifdef WOLFSSL_AES_XTS
|
||||
#ifdef WOLFSSL_AES_128
|
||||
EVP_AES_128_XTS = (char *)EVP_get_cipherbyname("AES-128-XTS");
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_256
|
||||
EVP_AES_256_XTS = (char *)EVP_get_cipherbyname("AES-256-XTS");
|
||||
#endif
|
||||
#endif /* WOLFSSL_AES_XTS */
|
||||
|
||||
#ifdef HAVE_AESGCM
|
||||
#ifdef WOLFSSL_AES_128
|
||||
EVP_AES_128_GCM = (char *)EVP_get_cipherbyname("AES-128-GCM");
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
EVP_AES_192_GCM = (char *)EVP_get_cipherbyname("AES-192-GCM");
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
EVP_AES_256_GCM = (char *)EVP_get_cipherbyname("AES-256-GCM");
|
||||
#endif
|
||||
#endif /* HAVE_AESGCM*/
|
||||
#ifdef WOLFSSL_AES_128
|
||||
EVP_AES_128_CTR = (char *)EVP_get_cipherbyname("AES-128-CTR");
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
EVP_AES_192_CTR = (char *)EVP_get_cipherbyname("AES-192-CTR");
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
EVP_AES_256_CTR = (char *)EVP_get_cipherbyname("AES-256-CTR");
|
||||
#endif
|
||||
|
||||
#ifdef WOLFSSL_AES_128
|
||||
EVP_AES_128_ECB = (char *)EVP_get_cipherbyname("AES-128-ECB");
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
EVP_AES_192_ECB = (char *)EVP_get_cipherbyname("AES-192-ECB");
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
EVP_AES_256_ECB = (char *)EVP_get_cipherbyname("AES-256-ECB");
|
||||
#endif
|
||||
#endif /* ifndef NO_AES*/
|
||||
|
||||
#ifndef NO_DES3
|
||||
EVP_DES_CBC = (char *)EVP_get_cipherbyname("DES-CBC");
|
||||
EVP_DES_ECB = (char *)EVP_get_cipherbyname("DES-ECB");
|
||||
|
||||
EVP_DES_EDE3_CBC = (char *)EVP_get_cipherbyname("DES-EDE3-CBC");
|
||||
EVP_DES_EDE3_ECB = (char *)EVP_get_cipherbyname("DES-EDE3-ECB");
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_IDEA
|
||||
EVP_IDEA_CBC = (char *)EVP_get_cipherbyname("IDEA-CBC");
|
||||
#endif
|
||||
/* Does nothing. */
|
||||
}
|
||||
|
||||
#if !defined(NO_PWDBASED)
|
||||
@@ -3565,8 +3457,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_128_cbc(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_128_cbc");
|
||||
if (EVP_AES_128_CBC == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_128_CBC;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_128 */
|
||||
@@ -3576,8 +3466,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_192_cbc(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_192_cbc");
|
||||
if (EVP_AES_192_CBC == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_192_CBC;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_192 */
|
||||
@@ -3587,8 +3475,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_256_cbc(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_256_cbc");
|
||||
if (EVP_AES_256_CBC == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_256_CBC;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_256 */
|
||||
@@ -3600,8 +3486,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_128_cfb1(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_128_cfb1");
|
||||
if (EVP_AES_128_CFB1 == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_128_CFB1;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_128 */
|
||||
@@ -3610,8 +3494,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_192_cfb1(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_192_cfb1");
|
||||
if (EVP_AES_192_CFB1 == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_192_CFB1;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_192 */
|
||||
@@ -3620,8 +3502,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_256_cfb1(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_256_cfb1");
|
||||
if (EVP_AES_256_CFB1 == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_256_CFB1;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_256 */
|
||||
@@ -3630,8 +3510,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_128_cfb8(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_128_cfb8");
|
||||
if (EVP_AES_128_CFB8 == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_128_CFB8;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_128 */
|
||||
@@ -3640,8 +3518,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_192_cfb8(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_192_cfb8");
|
||||
if (EVP_AES_192_CFB8 == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_192_CFB8;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_192 */
|
||||
@@ -3650,8 +3526,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_256_cfb8(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_256_cfb8");
|
||||
if (EVP_AES_256_CFB8 == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_256_CFB8;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_256 */
|
||||
@@ -3661,8 +3535,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_128_cfb128(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_128_cfb128");
|
||||
if (EVP_AES_128_CFB128 == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_128_CFB128;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_128 */
|
||||
@@ -3671,8 +3543,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_192_cfb128(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_192_cfb128");
|
||||
if (EVP_AES_192_CFB128 == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_192_CFB128;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_192 */
|
||||
@@ -3681,8 +3551,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_256_cfb128(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_256_cfb128");
|
||||
if (EVP_AES_256_CFB128 == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_256_CFB128;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_256 */
|
||||
@@ -3693,8 +3561,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_128_ofb(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_128_ofb");
|
||||
if (EVP_AES_128_OFB == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_128_OFB;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_128 */
|
||||
@@ -3703,8 +3569,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_192_ofb(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_192_ofb");
|
||||
if (EVP_AES_192_OFB == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_192_OFB;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_192 */
|
||||
@@ -3713,8 +3577,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_256_ofb(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_256_ofb");
|
||||
if (EVP_AES_256_OFB == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_256_OFB;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_256 */
|
||||
@@ -3725,8 +3587,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_128_xts(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_128_xts");
|
||||
if (EVP_AES_128_XTS == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_128_XTS;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_128 */
|
||||
@@ -3735,8 +3595,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_256_xts(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_256_xts");
|
||||
if (EVP_AES_256_XTS == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_256_XTS;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_256 */
|
||||
@@ -3747,8 +3605,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_128_gcm(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_128_gcm");
|
||||
if (EVP_AES_128_GCM == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_128_GCM;
|
||||
}
|
||||
#endif /* WOLFSSL_GCM_128 */
|
||||
@@ -3757,8 +3613,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_192_gcm(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_192_gcm");
|
||||
if (EVP_AES_192_GCM == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_192_GCM;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_192 */
|
||||
@@ -3767,8 +3621,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_256_gcm(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_256_gcm");
|
||||
if (EVP_AES_256_GCM == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_256_GCM;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_256 */
|
||||
@@ -3778,8 +3630,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_128_ctr(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_128_ctr");
|
||||
if (EVP_AES_128_CTR == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_128_CTR;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_2128 */
|
||||
@@ -3789,8 +3639,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_192_ctr(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_192_ctr");
|
||||
if (EVP_AES_192_CTR == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_192_CTR;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_192 */
|
||||
@@ -3800,8 +3648,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_256_ctr(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_256_ctr");
|
||||
if (EVP_AES_256_CTR == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_256_CTR;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_256 */
|
||||
@@ -3810,8 +3656,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_128_ecb(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_128_ecb");
|
||||
if (EVP_AES_128_ECB == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_128_ECB;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_128 */
|
||||
@@ -3821,8 +3665,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_192_ecb(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_192_ecb");
|
||||
if (EVP_AES_192_ECB == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_192_ECB;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_192*/
|
||||
@@ -3832,8 +3674,6 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_aes_256_ecb(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_aes_256_ecb");
|
||||
if (EVP_AES_256_ECB == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_AES_256_ECB;
|
||||
}
|
||||
#endif /* WOLFSSL_AES_256 */
|
||||
@@ -3843,32 +3683,24 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_des_cbc(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_des_cbc");
|
||||
if (EVP_DES_CBC == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_DES_CBC;
|
||||
}
|
||||
#ifdef WOLFSSL_DES_ECB
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_des_ecb(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_des_ecb");
|
||||
if (EVP_DES_ECB == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_DES_ECB;
|
||||
}
|
||||
#endif
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_des_ede3_cbc(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_des_ede3_cbc");
|
||||
if (EVP_DES_EDE3_CBC == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_DES_EDE3_CBC;
|
||||
}
|
||||
#ifdef WOLFSSL_DES_ECB
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_des_ede3_ecb(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_des_ede3_ecb");
|
||||
if (EVP_DES_EDE3_ECB == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_DES_EDE3_ECB;
|
||||
}
|
||||
#endif
|
||||
@@ -3877,9 +3709,8 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
#ifndef NO_RC4
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_rc4(void)
|
||||
{
|
||||
static const char* type = "ARC4";
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_rc4");
|
||||
return type;
|
||||
return EVP_ARC4;
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -3887,16 +3718,13 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_idea_cbc(void)
|
||||
{
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_idea_cbc");
|
||||
if (EVP_IDEA_CBC == NULL)
|
||||
wolfSSL_EVP_init();
|
||||
return EVP_IDEA_CBC;
|
||||
}
|
||||
#endif
|
||||
const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_enc_null(void)
|
||||
{
|
||||
static const char* type = "NULL";
|
||||
WOLFSSL_ENTER("wolfSSL_EVP_enc_null");
|
||||
return type;
|
||||
return EVP_NULL;
|
||||
}
|
||||
|
||||
int wolfSSL_EVP_MD_CTX_cleanup(WOLFSSL_EVP_MD_CTX* ctx)
|
||||
@@ -5014,8 +4842,8 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
}
|
||||
#endif /* NO_DES3 */
|
||||
#ifndef NO_RC4
|
||||
if (ctx->cipherType == ARC4_TYPE || (type &&
|
||||
XSTRNCMP(type, "ARC4", 4) == 0)) {
|
||||
if (ctx->cipherType == ARC4_TYPE ||
|
||||
(type && XSTRNCMP(type, EVP_ARC4, 4) == 0)) {
|
||||
WOLFSSL_MSG("ARC4");
|
||||
ctx->cipherType = ARC4_TYPE;
|
||||
ctx->flags &= ~WOLFSSL_EVP_CIPH_MODE;
|
||||
@@ -5051,8 +4879,8 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md)
|
||||
wc_IdeaSetIV(&ctx->cipher.idea, iv);
|
||||
}
|
||||
#endif /* HAVE_IDEA */
|
||||
if (ctx->cipherType == NULL_CIPHER_TYPE || (type &&
|
||||
XSTRNCMP(type, "NULL", 4) == 0)) {
|
||||
if (ctx->cipherType == NULL_CIPHER_TYPE ||
|
||||
(type && XSTRNCMP(type, EVP_NULL, 4) == 0)) {
|
||||
WOLFSSL_MSG("NULL cipher");
|
||||
ctx->cipherType = NULL_CIPHER_TYPE;
|
||||
ctx->keyLen = 0;
|
||||
@@ -6404,15 +6232,15 @@ int wolfSSL_EVP_CIPHER_iv_length(const WOLFSSL_EVP_CIPHER* cipher)
|
||||
#ifndef NO_AES
|
||||
#ifdef HAVE_AES_CBC
|
||||
#ifdef WOLFSSL_AES_128
|
||||
if (EVP_AES_128_CBC && XSTRNCMP(name, EVP_AES_128_CBC, XSTRLEN(EVP_AES_128_CBC)) == 0)
|
||||
if (XSTRNCMP(name, EVP_AES_128_CBC, XSTRLEN(EVP_AES_128_CBC)) == 0)
|
||||
return AES_BLOCK_SIZE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
if (EVP_AES_192_CBC && XSTRNCMP(name, EVP_AES_192_CBC, XSTRLEN(EVP_AES_192_CBC)) == 0)
|
||||
if (XSTRNCMP(name, EVP_AES_192_CBC, XSTRLEN(EVP_AES_192_CBC)) == 0)
|
||||
return AES_BLOCK_SIZE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
if (EVP_AES_256_CBC && XSTRNCMP(name, EVP_AES_256_CBC, XSTRLEN(EVP_AES_256_CBC)) == 0)
|
||||
if (XSTRNCMP(name, EVP_AES_256_CBC, XSTRLEN(EVP_AES_256_CBC)) == 0)
|
||||
return AES_BLOCK_SIZE;
|
||||
#endif
|
||||
#endif /* HAVE_AES_CBC */
|
||||
@@ -6420,41 +6248,41 @@ int wolfSSL_EVP_CIPHER_iv_length(const WOLFSSL_EVP_CIPHER* cipher)
|
||||
(defined(HAVE_FIPS_VERSION) && (HAVE_FIPS_VERSION > 2))
|
||||
#ifdef HAVE_AESGCM
|
||||
#ifdef WOLFSSL_AES_128
|
||||
if (EVP_AES_128_GCM && XSTRNCMP(name, EVP_AES_128_GCM, XSTRLEN(EVP_AES_128_GCM)) == 0)
|
||||
if (XSTRNCMP(name, EVP_AES_128_GCM, XSTRLEN(EVP_AES_128_GCM)) == 0)
|
||||
return GCM_NONCE_MID_SZ;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
if (EVP_AES_192_GCM && XSTRNCMP(name, EVP_AES_192_GCM, XSTRLEN(EVP_AES_192_GCM)) == 0)
|
||||
if (XSTRNCMP(name, EVP_AES_192_GCM, XSTRLEN(EVP_AES_192_GCM)) == 0)
|
||||
return GCM_NONCE_MID_SZ;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
if (EVP_AES_256_GCM && XSTRNCMP(name, EVP_AES_256_GCM, XSTRLEN(EVP_AES_256_GCM)) == 0)
|
||||
if (XSTRNCMP(name, EVP_AES_256_GCM, XSTRLEN(EVP_AES_256_GCM)) == 0)
|
||||
return GCM_NONCE_MID_SZ;
|
||||
#endif
|
||||
#endif /* HAVE_AESGCM */
|
||||
#endif /* (HAVE_FIPS && !HAVE_SELFTEST) || HAVE_FIPS_VERSION > 2 */
|
||||
#ifdef WOLFSSL_AES_COUNTER
|
||||
#ifdef WOLFSSL_AES_128
|
||||
if (EVP_AES_128_CTR && XSTRNCMP(name, EVP_AES_128_CTR, XSTRLEN(EVP_AES_128_CTR)) == 0)
|
||||
if (XSTRNCMP(name, EVP_AES_128_CTR, XSTRLEN(EVP_AES_128_CTR)) == 0)
|
||||
return AES_BLOCK_SIZE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_192
|
||||
if (EVP_AES_192_CTR && XSTRNCMP(name, EVP_AES_192_CTR, XSTRLEN(EVP_AES_192_CTR)) == 0)
|
||||
if (XSTRNCMP(name, EVP_AES_192_CTR, XSTRLEN(EVP_AES_192_CTR)) == 0)
|
||||
return AES_BLOCK_SIZE;
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_256
|
||||
if (EVP_AES_256_CTR && XSTRNCMP(name, EVP_AES_256_CTR, XSTRLEN(EVP_AES_256_CTR)) == 0)
|
||||
if (XSTRNCMP(name, EVP_AES_256_CTR, XSTRLEN(EVP_AES_256_CTR)) == 0)
|
||||
return AES_BLOCK_SIZE;
|
||||
#endif
|
||||
#endif
|
||||
#ifdef WOLFSSL_AES_XTS
|
||||
#ifdef WOLFSSL_AES_128
|
||||
if (EVP_AES_128_XTS && XSTRNCMP(name, EVP_AES_128_XTS, XSTRLEN(EVP_AES_128_XTS)) == 0)
|
||||
if (XSTRNCMP(name, EVP_AES_128_XTS, XSTRLEN(EVP_AES_128_XTS)) == 0)
|
||||
return AES_BLOCK_SIZE;
|
||||
#endif /* WOLFSSL_AES_128 */
|
||||
|
||||
#ifdef WOLFSSL_AES_256
|
||||
if (EVP_AES_256_XTS && XSTRNCMP(name, EVP_AES_256_XTS, XSTRLEN(EVP_AES_256_XTS)) == 0)
|
||||
if (XSTRNCMP(name, EVP_AES_256_XTS, XSTRLEN(EVP_AES_256_XTS)) == 0)
|
||||
return AES_BLOCK_SIZE;
|
||||
#endif /* WOLFSSL_AES_256 */
|
||||
#endif /* WOLFSSL_AES_XTS */
|
||||
@@ -6462,14 +6290,14 @@ int wolfSSL_EVP_CIPHER_iv_length(const WOLFSSL_EVP_CIPHER* cipher)
|
||||
#endif
|
||||
|
||||
#ifndef NO_DES3
|
||||
if ((EVP_DES_CBC && XSTRNCMP(name, EVP_DES_CBC, XSTRLEN(EVP_DES_CBC)) == 0) ||
|
||||
(EVP_DES_EDE3_CBC && XSTRNCMP(name, EVP_DES_EDE3_CBC, XSTRLEN(EVP_DES_EDE3_CBC)) == 0)) {
|
||||
if ((XSTRNCMP(name, EVP_DES_CBC, XSTRLEN(EVP_DES_CBC)) == 0) ||
|
||||
(XSTRNCMP(name, EVP_DES_EDE3_CBC, XSTRLEN(EVP_DES_EDE3_CBC)) == 0)) {
|
||||
return DES_BLOCK_SIZE;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_IDEA
|
||||
if (EVP_IDEA_CBC && XSTRNCMP(name, EVP_IDEA_CBC, XSTRLEN(EVP_IDEA_CBC)) == 0)
|
||||
if (XSTRNCMP(name, EVP_IDEA_CBC, XSTRLEN(EVP_IDEA_CBC)) == 0)
|
||||
return IDEA_BLOCK_SIZE;
|
||||
#endif
|
||||
|
||||
|
Reference in New Issue
Block a user