Merge pull request #5908 from ronald-cron-arm/tls13-fixes-doc
TLS 1.3: Fixes and add documentation
Validated by the internal CI, no need to wait for the Open CI.
diff --git a/include/mbedtls/x509.h b/include/mbedtls/x509.h
index b7e3645..213efa0 100644
--- a/include/mbedtls/x509.h
+++ b/include/mbedtls/x509.h
@@ -269,12 +269,21 @@
/**
* \brief Return the next relative DN in an X509 name.
*
+ * \note Intended use is to compare function result to dn->next
+ * in order to detect boundaries of multi-valued RDNs.
+ *
* \param dn Current node in the X509 name
*
* \return Pointer to the first attribute-value pair of the
* next RDN in sequence, or NULL if end is reached.
*/
-mbedtls_x509_name * mbedtls_x509_dn_get_next( mbedtls_x509_name *dn );
+static inline mbedtls_x509_name * mbedtls_x509_dn_get_next(
+ mbedtls_x509_name * dn )
+{
+ while( dn->MBEDTLS_PRIVATE(next_merged) && dn->next != NULL )
+ dn = dn->next;
+ return( dn->next );
+}
/**
* \brief Store the certificate serial in printable form into buf;
diff --git a/library/x509.c b/library/x509.c
index 17d1030..2e11c7f 100644
--- a/library/x509.c
+++ b/library/x509.c
@@ -797,15 +797,6 @@
}
/*
- * Return the next relative DN in an X509 name.
- */
-mbedtls_x509_name * mbedtls_x509_dn_get_next( mbedtls_x509_name * dn )
-{
- for( ; dn->next != NULL && dn->next_merged; dn = dn->next );
- return( dn->next );
-}
-
-/*
* Store the serial in printable form into buf; no more
* than size characters will be written
*/