Adapt test for authority_key_id (parsing subject alt name)
Signed-off-by: Przemek Stekiel <przemyslaw.stekiel@mobica.com>
diff --git a/tests/suites/test_suite_x509parse.function b/tests/suites/test_suite_x509parse.function
index 6346a6c..c7d341d 100644
--- a/tests/suites/test_suite_x509parse.function
+++ b/tests/suites/test_suite_x509parse.function
@@ -1506,6 +1506,8 @@
int bufferCounter = 0;
size_t issuerCounter = 0;
unsigned int result = 0;
+ mbedtls_x509_subject_alternative_name san = { 0 };
+ mbedtls_x509_name *pname = NULL;
mbedtls_x509_crt_init(&crt);
@@ -1518,14 +1520,18 @@
/* Issuer test */
mbedtls_x509_sequence *issuerPtr = &crt.authority_key_id.authorityCertIssuer;
- while (issuerPtr != NULL) {
- /* First 9 bytes are always ASN1 coding related information that does not matter right now. Only the values are asserted */
- for (issuerCounter = 9u; issuerCounter < issuerPtr->buf.len; issuerCounter++) {
+
+ TEST_ASSERT(mbedtls_x509_parse_subject_alt_name(&issuerPtr->buf, &san) == 0);
+
+ pname = &san.san.directory_name;
+
+ while (pname != NULL) {
+ for (issuerCounter = 0; issuerCounter < pname->val.len; issuerCounter++) {
result |=
- (authorityKeyId_issuer[bufferCounter++] != issuerPtr->buf.p[issuerCounter]);
+ (authorityKeyId_issuer[bufferCounter++] != pname->val.p[issuerCounter]);
}
bufferCounter++; /* Skipping the slash */
- issuerPtr = issuerPtr->next;
+ pname = pname->next;
}
TEST_ASSERT(result == 0);