add AES macro guards and reduce code in GetName

This commit is contained in:
Jacob Barthelmeh 2018-02-23 13:45:42 -07:00
parent 6500c40015
commit 79f13478df
3 changed files with 29 additions and 42 deletions

View File

@ -8374,15 +8374,21 @@ int wc_AesGetKeySize(Aes* aes, word32* keySize)
}
switch (aes->rounds) {
#ifdef WOLFSSL_AES_128
case 10:
*keySize = 16;
break;
#endif
#ifdef WOLFSSL_AES_192
case 12:
*keySize = 24;
break;
#endif
#ifdef WOLFSSL_AES_256
case 14:
*keySize = 32;
break;
#endif
default:
*keySize = 0;
ret = BAD_FUNC_ARG;

View File

@ -4164,9 +4164,9 @@ static int GetName(DecodedCert* cert, int nameType)
/* v1 name types */
if (joint[0] == 0x55 && joint[1] == 0x04) {
byte id;
byte copy = FALSE;
const char* copy = NULL;
int strLen;
byte id;
cert->srcIdx += 2;
id = cert->source[cert->srcIdx++];
@ -4189,22 +4189,14 @@ static int GetName(DecodedCert* cert, int nameType)
cert->subjectCNEnc = b;
}
if (!tooBig) {
XMEMCPY(&full[idx], "/CN=", 4);
idx += 4;
copy = TRUE;
}
copy = WOLFSSL_COMMON_NAME;
#if defined(OPENSSL_EXTRA) || defined(OPENSSL_EXTRA_X509_SMALL)
dName->cnIdx = cert->srcIdx;
dName->cnLen = strLen;
#endif /* OPENSSL_EXTRA */
}
else if (id == ASN_SUR_NAME) {
if (!tooBig) {
XMEMCPY(&full[idx], "/SN=", 4);
idx += 4;
copy = TRUE;
}
copy = WOLFSSL_SUR_NAME;
#ifdef WOLFSSL_CERT_GEN
if (nameType == SUBJECT) {
cert->subjectSN = (char*)&cert->source[cert->srcIdx];
@ -4218,11 +4210,7 @@ static int GetName(DecodedCert* cert, int nameType)
#endif /* OPENSSL_EXTRA */
}
else if (id == ASN_COUNTRY_NAME) {
if (!tooBig) {
XMEMCPY(&full[idx], "/C=", 3);
idx += 3;
copy = TRUE;
}
copy = WOLFSSL_COUNTRY_NAME;
#ifdef WOLFSSL_CERT_GEN
if (nameType == SUBJECT) {
cert->subjectC = (char*)&cert->source[cert->srcIdx];
@ -4236,11 +4224,7 @@ static int GetName(DecodedCert* cert, int nameType)
#endif /* OPENSSL_EXTRA */
}
else if (id == ASN_LOCALITY_NAME) {
if (!tooBig) {
XMEMCPY(&full[idx], "/L=", 3);
idx += 3;
copy = TRUE;
}
copy = WOLFSSL_LOCALITY_NAME;
#ifdef WOLFSSL_CERT_GEN
if (nameType == SUBJECT) {
cert->subjectL = (char*)&cert->source[cert->srcIdx];
@ -4254,11 +4238,7 @@ static int GetName(DecodedCert* cert, int nameType)
#endif /* OPENSSL_EXTRA */
}
else if (id == ASN_STATE_NAME) {
if (!tooBig) {
XMEMCPY(&full[idx], "/ST=", 4);
idx += 4;
copy = TRUE;
}
copy = WOLFSSL_STATE_NAME;
#ifdef WOLFSSL_CERT_GEN
if (nameType == SUBJECT) {
cert->subjectST = (char*)&cert->source[cert->srcIdx];
@ -4272,11 +4252,7 @@ static int GetName(DecodedCert* cert, int nameType)
#endif /* OPENSSL_EXTRA */
}
else if (id == ASN_ORG_NAME) {
if (!tooBig) {
XMEMCPY(&full[idx], "/O=", 3);
idx += 3;
copy = TRUE;
}
copy = WOLFSSL_ORG_NAME;
#ifdef WOLFSSL_CERT_GEN
if (nameType == SUBJECT) {
cert->subjectO = (char*)&cert->source[cert->srcIdx];
@ -4290,11 +4266,7 @@ static int GetName(DecodedCert* cert, int nameType)
#endif /* OPENSSL_EXTRA */
}
else if (id == ASN_ORGUNIT_NAME) {
if (!tooBig) {
XMEMCPY(&full[idx], "/OU=", 4);
idx += 4;
copy = TRUE;
}
copy = WOLFSSL_ORGUNIT_NAME;
#ifdef WOLFSSL_CERT_GEN
if (nameType == SUBJECT) {
cert->subjectOU = (char*)&cert->source[cert->srcIdx];
@ -4308,17 +4280,15 @@ static int GetName(DecodedCert* cert, int nameType)
#endif /* OPENSSL_EXTRA */
}
else if (id == ASN_SERIAL_NUMBER) {
if (!tooBig) {
XMEMCPY(&full[idx], "/serialNumber=", 14);
idx += 14;
copy = TRUE;
}
copy = WOLFSSL_SERIAL_NUMBER;
#if defined(OPENSSL_EXTRA) || defined(OPENSSL_EXTRA_X509_SMALL)
dName->snIdx = cert->srcIdx;
dName->snLen = strLen;
#endif /* OPENSSL_EXTRA */
}
if (copy && !tooBig) {
XMEMCPY(&full[idx], copy, XSTRLEN(copy));
idx += XSTRLEN(copy);
XMEMCPY(&full[idx], &cert->source[cert->srcIdx], strLen);
idx += strLen;
}

View File

@ -115,6 +115,17 @@ enum DN_Tags {
ASN_DOMAIN_COMPONENT = 0x19 /* DC */
};
/* DN Tag Strings */
#define WOLFSSL_COMMON_NAME "/CN"
#define WOLFSSL_SUR_NAME "/SN"
#define WOLFSSL_SERIAL_NUMBER "/serialNumber="
#define WOLFSSL_COUNTRY_NAME "/C"
#define WOLFSSL_LOCALITY_NAME "/L"
#define WOLFSSL_STATE_NAME "/ST"
#define WOLFSSL_ORG_NAME "/O"
#define WOLFSSL_ORGUNIT_NAME "/OU"
#define WOLFSSL_DOMAIN_COMPONENT "/DC"
enum PBES {
PBE_MD5_DES = 0,
PBE_SHA1_RC4_128 = 1,