Add parsing of SAN: rfc822Name
Signed-off-by: Przemek Stekiel <przemyslaw.stekiel@mobica.com>
This commit is contained in:
parent
ec718afb41
commit
ecee12f04f
2 changed files with 12 additions and 2 deletions
|
@ -294,7 +294,7 @@ typedef struct mbedtls_x509_subject_alternative_name {
|
||||||
int type; /**< The SAN type, value of MBEDTLS_X509_SAN_XXX. */
|
int type; /**< The SAN type, value of MBEDTLS_X509_SAN_XXX. */
|
||||||
union {
|
union {
|
||||||
mbedtls_x509_san_other_name other_name; /**< The otherName supported type. */
|
mbedtls_x509_san_other_name other_name; /**< The otherName supported type. */
|
||||||
mbedtls_x509_buf unstructured_name; /**< The buffer for the unconstructed types. Only dnsName and uniformResourceIdentifier are currently supported */
|
mbedtls_x509_buf unstructured_name; /**< The buffer for the unconstructed types. Only rfc822Name, dnsName and uniformResourceIdentifier are currently supported */
|
||||||
}
|
}
|
||||||
san; /**< A union of the supported SAN types */
|
san; /**< A union of the supported SAN types */
|
||||||
}
|
}
|
||||||
|
@ -386,7 +386,7 @@ int mbedtls_x509_time_is_future(const mbedtls_x509_time *from);
|
||||||
* of the subject alternative name encoded in \p san_raw.
|
* of the subject alternative name encoded in \p san_raw.
|
||||||
*
|
*
|
||||||
* \note Supported GeneralName types, as defined in RFC 5280:
|
* \note Supported GeneralName types, as defined in RFC 5280:
|
||||||
* "dnsName", "uniformResourceIdentifier" and "hardware_module_name"
|
* "rfc822Name", "dnsName", "uniformResourceIdentifier" and "hardware_module_name"
|
||||||
* of type "otherName", as defined in RFC 4108.
|
* of type "otherName", as defined in RFC 4108.
|
||||||
*
|
*
|
||||||
* \note This function should be called on a single raw data of
|
* \note This function should be called on a single raw data of
|
||||||
|
|
|
@ -1421,7 +1421,17 @@ int mbedtls_x509_parse_subject_alt_name(const mbedtls_x509_buf *san_buf,
|
||||||
|
|
||||||
memcpy(&san->san.unstructured_name,
|
memcpy(&san->san.unstructured_name,
|
||||||
san_buf, sizeof(*san_buf));
|
san_buf, sizeof(*san_buf));
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* RFC822 Name
|
||||||
|
*/
|
||||||
|
case (MBEDTLS_ASN1_CONTEXT_SPECIFIC | MBEDTLS_X509_SAN_RFC822_NAME):
|
||||||
|
{
|
||||||
|
memset(san, 0, sizeof(mbedtls_x509_subject_alternative_name));
|
||||||
|
san->type = MBEDTLS_X509_SAN_RFC822_NAME;
|
||||||
|
memcpy(&san->san.unstructured_name, san_buf, sizeof(*san_buf));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue