mirror of
https://github.com/yuzu-emu/mbedtls.git
synced 2024-12-26 00:25:35 +00:00
Add buffers with raw issuer/subject data to CRT structure
This commit is contained in:
parent
a632e3638c
commit
f8a42862b7
|
@ -64,6 +64,9 @@ typedef struct mbedtls_x509_crt
|
||||||
mbedtls_x509_buf issuer_raw; /**< The raw issuer data (DER). Used for quick comparison. */
|
mbedtls_x509_buf issuer_raw; /**< The raw issuer data (DER). Used for quick comparison. */
|
||||||
mbedtls_x509_buf subject_raw; /**< The raw subject data (DER). Used for quick comparison. */
|
mbedtls_x509_buf subject_raw; /**< The raw subject data (DER). Used for quick comparison. */
|
||||||
|
|
||||||
|
mbedtls_x509_buf_raw subject_raw_no_hdr;
|
||||||
|
mbedtls_x509_buf_raw issuer_raw_no_hdr;
|
||||||
|
|
||||||
mbedtls_x509_name issuer; /**< The parsed issuer data (named information object). */
|
mbedtls_x509_name issuer; /**< The parsed issuer data (named information object). */
|
||||||
mbedtls_x509_name subject; /**< The parsed subject data (named information object). */
|
mbedtls_x509_name subject; /**< The parsed subject data (named information object). */
|
||||||
|
|
||||||
|
|
|
@ -848,6 +848,7 @@ static int x509_crt_parse_der_core( mbedtls_x509_crt *crt,
|
||||||
mbedtls_x509_crt_free( crt );
|
mbedtls_x509_crt_free( crt );
|
||||||
return( MBEDTLS_ERR_X509_INVALID_FORMAT + ret );
|
return( MBEDTLS_ERR_X509_INVALID_FORMAT + ret );
|
||||||
}
|
}
|
||||||
|
crt->issuer_raw_no_hdr.p = p;
|
||||||
|
|
||||||
if( ( ret = mbedtls_x509_get_name( &p, p + len, &crt->issuer ) ) != 0 )
|
if( ( ret = mbedtls_x509_get_name( &p, p + len, &crt->issuer ) ) != 0 )
|
||||||
{
|
{
|
||||||
|
@ -855,6 +856,7 @@ static int x509_crt_parse_der_core( mbedtls_x509_crt *crt,
|
||||||
return( ret );
|
return( ret );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
crt->issuer_raw_no_hdr.len = p - crt->issuer_raw_no_hdr.p;
|
||||||
crt->issuer_raw.len = p - crt->issuer_raw.p;
|
crt->issuer_raw.len = p - crt->issuer_raw.p;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -882,12 +884,15 @@ static int x509_crt_parse_der_core( mbedtls_x509_crt *crt,
|
||||||
return( MBEDTLS_ERR_X509_INVALID_FORMAT + ret );
|
return( MBEDTLS_ERR_X509_INVALID_FORMAT + ret );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
crt->subject_raw_no_hdr.p = p;
|
||||||
|
|
||||||
if( len && ( ret = mbedtls_x509_get_name( &p, p + len, &crt->subject ) ) != 0 )
|
if( len && ( ret = mbedtls_x509_get_name( &p, p + len, &crt->subject ) ) != 0 )
|
||||||
{
|
{
|
||||||
mbedtls_x509_crt_free( crt );
|
mbedtls_x509_crt_free( crt );
|
||||||
return( ret );
|
return( ret );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
crt->subject_raw_no_hdr.len = p - crt->subject_raw_no_hdr.p;
|
||||||
crt->subject_raw.len = p - crt->subject_raw.p;
|
crt->subject_raw.len = p - crt->subject_raw.p;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in a new issue