mirror of
https://git.suyu.dev/suyu/mbedtls.git
synced 2025-12-24 00:06:32 +01:00
Add x509_crt_check_key_usage()
This commit is contained in:
parent
0f79babd4b
commit
603116c570
5 changed files with 85 additions and 0 deletions
|
|
@ -826,3 +826,28 @@ x509_oid_numstr:"2A864886F70D":"1.2.840.113549":15:14
|
|||
|
||||
X509 OID numstring #5 (arithmetic overflow)
|
||||
x509_oid_numstr:"2A8648F9F8F7F6F5F4F3F2F1F001":"":100:POLARSSL_ERR_OID_BUF_TOO_SMALL
|
||||
|
||||
X509 crt keyUsage #1 (no extension, expected KU)
|
||||
x509_check_key_usage:"data_files/server1.crt":KU_DIGITAL_SIGNATURE|KU_KEY_ENCIPHERMENT:0
|
||||
|
||||
X509 crt keyUsage #2 (no extension, suprising KU)
|
||||
x509_check_key_usage:"data_files/server1.crt":KU_KEY_CERT_SIGN:0
|
||||
|
||||
X509 crt keyUsage #3 (extension present, no KU)
|
||||
x509_check_key_usage:"data_files/server1.key_usage.crt":0:0
|
||||
|
||||
X509 crt keyUsage #4 (extension present, single KU present)
|
||||
x509_check_key_usage:"data_files/server1.key_usage.crt":KU_DIGITAL_SIGNATURE:0
|
||||
|
||||
X509 crt keyUsage #5 (extension present, single KU absent)
|
||||
x509_check_key_usage:"data_files/server1.key_usage.crt":KU_KEY_CERT_SIGN:POLARSSL_ERR_X509_BAD_INPUT_DATA
|
||||
|
||||
X509 crt keyUsage #6 (extension present, combined KU present)
|
||||
x509_check_key_usage:"data_files/server1.key_usage.crt":KU_DIGITAL_SIGNATURE|KU_KEY_ENCIPHERMENT:0
|
||||
|
||||
X509 crt keyUsage #7 (extension present, combined KU both absent)
|
||||
x509_check_key_usage:"data_files/server1.key_usage.crt":KU_KEY_CERT_SIGN|KU_CRL_SIGN:POLARSSL_ERR_X509_BAD_INPUT_DATA
|
||||
|
||||
X509 crt keyUsage #8 (extension present, combined KU one absent)
|
||||
x509_check_key_usage:"data_files/server1.key_usage.crt":KU_KEY_ENCIPHERMENT|KU_KEY_AGREEMENT:POLARSSL_ERR_X509_BAD_INPUT_DATA
|
||||
|
||||
|
|
|
|||
|
|
@ -316,6 +316,21 @@ void x509_oid_numstr( char *oid_str, char *numstr, int blen, int ret )
|
|||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:POLARSSL_X509_CRT_PARSE_C */
|
||||
void x509_check_key_usage( char *crt_file, int usage, int ret )
|
||||
{
|
||||
x509_crt crt;
|
||||
|
||||
x509_crt_init( &crt );
|
||||
|
||||
TEST_ASSERT( x509_crt_parse_file( &crt, crt_file ) == 0 );
|
||||
|
||||
TEST_ASSERT( x509_crt_check_key_usage( &crt, usage ) == ret );
|
||||
|
||||
x509_crt_free( &crt );
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:POLARSSL_X509_CRT_PARSE_C:POLARSSL_SELF_TEST */
|
||||
void x509_selftest()
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue