tree 7342fe6a27499d1cb6265922812ae9961d3c9ee9
parent 2492622289039005536e6e949c0000ce13b52f72
author Hanno Becker <hanno.becker@arm.com> 1550755850 +0000
committer Hanno Becker <hanno.becker@arm.com> 1561449986 +0100

Add function to traverse raw SubjectAltName extension

This commit adds a new function `x509_subject_alt_name_traverse()`
which allows to traverse the raw ASN.1 data of a `SubjectAlternativeNames`
extension.

The `SubjectAlternativeNames` extension needs to be traversed
in the following situations:
1 Initial traversal to check well-formedness of ASN.1 data
2 Traversal to check for a particular name component
3 Building the legacy linked list presentation

Analogously to how multiple tasks related to X.509 name comparison
are implemented through the workhorse `mbedtlS_x509_name_cmp_raw()`,
the new function `x509_subject_alt_name_traverse()` allows to pass
an arbitrary callback which is called on any component of the
`SubjectAlternativeNames` extension found. This way, the above
three tasks can be implemented by passing
1 a NULL callback,
2 a name comparison callback
3 a linked list building callback.
