Renaming x509_get_subject_alt_name to x509_get_general_names and mbedtls_x509_parse_subject_alt_name to mbedtls_x509_parse_general_name so they can be used not only to collect subject alt name, but the V3 authority cert issuer that is also GeneralName type.
Also updated the x509_get_general_names function to be able to parse rfc822Names
Test are also updated according these changes.
Signed-off-by: toth92g <toth92g@gmail.com>
diff --git a/include/mbedtls/x509.h b/include/mbedtls/x509.h
index 1654843..4aa52b0 100644
--- a/include/mbedtls/x509.h
+++ b/include/mbedtls/x509.h
@@ -249,7 +249,7 @@
typedef struct mbedtls_x509_authority
{
mbedtls_x509_buf keyIdentifier;
- mbedtls_x509_name authorityCertIssuer;
+ mbedtls_x509_sequence authorityCertIssuer;
mbedtls_x509_buf authorityCertSerialNumber;
mbedtls_x509_buf raw;
}
diff --git a/include/mbedtls/x509_crt.h b/include/mbedtls/x509_crt.h
index b38adb6..982a30f 100644
--- a/include/mbedtls/x509_crt.h
+++ b/include/mbedtls/x509_crt.h
@@ -610,7 +610,7 @@
* \param san The target structure to populate with the parsed presentation
* of the subject alternative name encoded in \p san_raw.
*
- * \note Only "dnsName" and "otherName" of type hardware_module_name
+ * \note Only "dnsName" and "otherName" and "rfc822Name" of type hardware_module_name
* as defined in RFC 4180 is supported.
*
* \note This function should be called on a single raw data of
@@ -628,7 +628,7 @@
* SAN type.
* \return Another negative value for any other failure.
*/
-int mbedtls_x509_parse_subject_alt_name( const mbedtls_x509_buf *san_buf,
+int mbedtls_x509_parse_general_name( const mbedtls_x509_buf *san_buf,
mbedtls_x509_subject_alternative_name *san );
#if !defined(MBEDTLS_X509_REMOVE_INFO)