Set alt name type to V_ASN1_IA5STRING

This commit is contained in:
Juliusz Sosinowicz
2022-10-28 19:58:01 +02:00
parent 319901a85c
commit 8bbbdfa3f9
2 changed files with 11 additions and 2 deletions

View File

@ -1969,11 +1969,12 @@ void* wolfSSL_X509_get_ext_d2i(const WOLFSSL_X509* x509, int nid, int* c,
break;
default:
if (wolfSSL_ASN1_STRING_set(gn->d.ia5, dns->name,
dns->len) != WOLFSSL_SUCCESS) {
if (wolfSSL_ASN1_STRING_set(gn->d.dNSName,
dns->name, dns->len) != WOLFSSL_SUCCESS) {
WOLFSSL_MSG("ASN1_STRING_set failed");
goto err;
}
gn->d.dNSName->type = V_ASN1_IA5STRING;
}
dns = dns->next;

View File

@ -32207,6 +32207,14 @@ static int test_wolfSSL_certs(void)
sk = (STACK_OF(GENERAL_NAME)*)X509_get_ext_d2i(x509ext, NID_subject_alt_name,
&crit, NULL);
{
int i;
for (i = 0; i < sk_GENERAL_NAME_num(sk); i++) {
GENERAL_NAME* gen = sk_GENERAL_NAME_value(sk, i);
AssertIntEQ(gen->type, GEN_DNS);
AssertIntEQ(gen->d.dNSName->type, V_ASN1_IA5STRING);
}
}
/* AssertNotNull(sk); no alt names set */
sk_GENERAL_NAME_free(sk);