mirror of
https://github.com/Mbed-TLS/mbedtls.git
synced 2025-08-10 05:03:02 +03:00
Add tests for exceeded buffer size
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
This commit is contained in:
@@ -407,6 +407,22 @@ X509 Get Distinguished Name #5
|
|||||||
depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_SHA1_C
|
depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_SHA1_C
|
||||||
mbedtls_x509_dn_gets:"data_files/server1.commas.crt":"subject":"C=NL, O=PolarSSL\, Commas, CN=PolarSSL Server 1"
|
mbedtls_x509_dn_gets:"data_files/server1.commas.crt":"subject":"C=NL, O=PolarSSL\, Commas, CN=PolarSSL Server 1"
|
||||||
|
|
||||||
|
X509 Get Modified DN #1
|
||||||
|
depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_SHA1_C
|
||||||
|
mbedtls_x509_dn_gets_subject_replace:"data_files/server1.crt":"Modified":"C=NL, O=Modified, CN=PolarSSL Server 1":0
|
||||||
|
|
||||||
|
X509 Get Modified DN #2 Name exactly 255 bytes
|
||||||
|
depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_SHA1_C
|
||||||
|
mbedtls_x509_dn_gets_subject_replace:"data_files/server1.crt":"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345":"C=NL, O=123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345, CN=PolarSSL Server 1":0
|
||||||
|
|
||||||
|
X509 Get Modified DN #3 Name exceeds 255 bytes
|
||||||
|
depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_SHA1_C
|
||||||
|
mbedtls_x509_dn_gets_subject_replace:"data_files/server1.crt":"1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456":"":MBEDTLS_ERR_X509_BUFFER_TOO_SMALL
|
||||||
|
|
||||||
|
X509 Get Modified DN #4 Name exactly 255 bytes, with comma requiring escaping
|
||||||
|
depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_SHA1_C
|
||||||
|
mbedtls_x509_dn_gets_subject_replace:"data_files/server1.crt":"1234567890,1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234":"":MBEDTLS_ERR_X509_BUFFER_TOO_SMALL
|
||||||
|
|
||||||
X509 Time Expired #1
|
X509 Time Expired #1
|
||||||
depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_HAVE_TIME_DATE:MBEDTLS_SHA1_C
|
depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_HAVE_TIME_DATE:MBEDTLS_SHA1_C
|
||||||
mbedtls_x509_time_is_past:"data_files/server1.crt":"valid_from":1
|
mbedtls_x509_time_is_past:"data_files/server1.crt":"valid_from":1
|
||||||
|
@@ -768,6 +768,37 @@ exit:
|
|||||||
}
|
}
|
||||||
/* END_CASE */
|
/* END_CASE */
|
||||||
|
|
||||||
|
/* BEGIN_CASE depends_on:MBEDTLS_FS_IO:MBEDTLS_X509_CRT_PARSE_C:!MBEDTLS_X509_REMOVE_INFO */
|
||||||
|
void mbedtls_x509_dn_gets_subject_replace( char * crt_file, char * new_subject_ou, char * result_str, int ret )
|
||||||
|
{
|
||||||
|
mbedtls_x509_crt crt;
|
||||||
|
char buf[2000];
|
||||||
|
int res = 0;
|
||||||
|
|
||||||
|
mbedtls_x509_crt_init( &crt );
|
||||||
|
memset( buf, 0, 2000 );
|
||||||
|
|
||||||
|
TEST_ASSERT( mbedtls_x509_crt_parse_file( &crt, crt_file ) == 0 );
|
||||||
|
crt.subject.next->val.p = (unsigned char *) new_subject_ou;
|
||||||
|
crt.subject.next->val.len = strlen( new_subject_ou );
|
||||||
|
|
||||||
|
res = mbedtls_x509_dn_gets( buf, 2000, &crt.subject );
|
||||||
|
|
||||||
|
if ( ret != 0 )
|
||||||
|
{
|
||||||
|
TEST_ASSERT( res == ret );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
TEST_ASSERT( res != -1 );
|
||||||
|
TEST_ASSERT( res != -2 );
|
||||||
|
TEST_ASSERT( strcmp( buf, result_str ) == 0 );
|
||||||
|
}
|
||||||
|
exit:
|
||||||
|
mbedtls_x509_crt_free( &crt );
|
||||||
|
}
|
||||||
|
/* END_CASE */
|
||||||
|
|
||||||
/* BEGIN_CASE depends_on:MBEDTLS_FS_IO:MBEDTLS_X509_CRT_PARSE_C */
|
/* BEGIN_CASE depends_on:MBEDTLS_FS_IO:MBEDTLS_X509_CRT_PARSE_C */
|
||||||
void mbedtls_x509_time_is_past( char * crt_file, char * entity, int result )
|
void mbedtls_x509_time_is_past( char * crt_file, char * entity, int result )
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user