diff --git a/tests/suites/test_suite_debug.data b/tests/suites/test_suite_debug.data index a84d1c27e..57aa9f011 100644 --- a/tests/suites/test_suite_debug.data +++ b/tests/suites/test_suite_debug.data @@ -1,5 +1,29 @@ +Debug print return value #1 +debug_print_ret:"MyFile":999:"Test return value":0:"MyFile(0999)\: Test return value() returned 0 (-0x0000)\n" + +Debug print return value #2 +debug_print_ret:"MyFile":999:"Test return value":-0x1000:"MyFile(0999)\: Test return value() returned -4096 (-0x1000)\n" + +Debug print return value #3 +debug_print_ret:"MyFile":999:"Test return value":-0xFFFF:"MyFile(0999)\: Test return value() returned -65535 (-0xffff)\n" + +Debug print buffer #1 +debug_print_buf:"MyFile":999:"Test return value":"":"MyFile(0999)\: dumping 'Test return value' (0 bytes)\n" + +Debug print buffer #2 +debug_print_buf:"MyFile":999:"Test return value":"00":"MyFile(0999)\: dumping 'Test return value' (1 bytes)\nMyFile(0999)\: 0000\: 00\n" + +Debug print buffer #3 +debug_print_buf:"MyFile":999:"Test return value":"000102030405060708090A0B0C0D0E0F":"MyFile(0999)\: dumping 'Test return value' (16 bytes)\nMyFile(0999)\: 0000\: 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f\n" + +Debug print buffer #4 +debug_print_buf:"MyFile":999:"Test return value":"000102030405060708090A0B0C0D0E0F00":"MyFile(0999)\: dumping 'Test return value' (17 bytes)\nMyFile(0999)\: 0000\: 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f\nMyFile(0999)\: 0010\: 00\n" + +Debug print buffer #5 +debug_print_buf:"MyFile":999:"Test return value":"000102030405060708090A0B0C0D0E0F000102030405060708090A0B0C0D0E0F000102030405060708090A0B0C0D0E0F00":"MyFile(0999)\: dumping 'Test return value' (49 bytes)\nMyFile(0999)\: 0000\: 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f\nMyFile(0999)\: 0010\: 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f\nMyFile(0999)\: 0020\: 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f\nMyFile(0999)\: 0030\: 00\n" + Debug print certificate #1 (RSA) -depends_on:POLARSSL_PEM_PARSE_C:POLARSSL_BASE64_C +depends_on:POLARSSL_PEM_PARSE_C:POLARSSL_BASE64_C:POLARSSL_RSA_C debug_print_crt:"data_files/server1.crt":"MyFile":999:"PREFIX_":"MyFile(0999)\: PREFIX_ #1\:\nMyFile(0999)\: cert. version \: 3\nMyFile(0999)\: serial number \: 01\nMyFile(0999)\: issuer name \: C=NL, O=PolarSSL, CN=PolarSSL Test CA\nMyFile(0999)\: subject name \: C=NL, O=PolarSSL, CN=PolarSSL Server 1\nMyFile(0999)\: issued on \: 2011-02-12 14\:44\:06\nMyFile(0999)\: expires on \: 2021-02-12 14\:44\:06\nMyFile(0999)\: signed using \: RSA with SHA1\nMyFile(0999)\: RSA key size \: 2048 bits\nMyFile(0999)\: basic constraints \: CA=false\nMyFile(0999)\: value of 'crt->rsa.N' (2048 bits) is\:\nMyFile(0999)\: a9 02 1f 3d 40 6a d5 55 53 8b fd 36 ee 82 65 2e\nMyFile(0999)\: 15 61 5e 89 bf b8 e8 45 90 db ee 88 16 52 d3 f1\nMyFile(0999)\: 43 50 47 96 12 59 64 87 6b fd 2b e0 46 f9 73 be\nMyFile(0999)\: dd cf 92 e1 91 5b ed 66 a0 6f 89 29 79 45 80 d0\nMyFile(0999)\: 83 6a d5 41 43 77 5f 39 7c 09 04 47 82 b0 57 39\nMyFile(0999)\: 70 ed a3 ec 15 19 1e a8 33 08 47 c1 05 42 a9 fd\nMyFile(0999)\: 4c c3 b4 df dd 06 1f 4d 10 51 40 67 73 13 0f 40\nMyFile(0999)\: f8 6d 81 25 5f 0a b1 53 c6 30 7e 15 39 ac f9 5a\nMyFile(0999)\: ee 7f 92 9e a6 05 5b e7 13 97 85 b5 23 92 d9 d4\nMyFile(0999)\: 24 06 d5 09 25 89 75 07 dd a6 1a 8f 3f 09 19 be\nMyFile(0999)\: ad 65 2c 64 eb 95 9b dc fe 41 5e 17 a6 da 6c 5b\nMyFile(0999)\: 69 cc 02 ba 14 2c 16 24 9c 4a dc cd d0 f7 52 67\nMyFile(0999)\: 73 f1 2d a0 23 fd 7e f4 31 ca 2d 70 ca 89 0b 04\nMyFile(0999)\: db 2e a6 4f 70 6e 9e ce bd 58 89 e2 53 59 9e 6e\nMyFile(0999)\: 5a 92 65 e2 88 3f 0c 94 19 a3 dd e5 e8 9d 95 13\nMyFile(0999)\: ed 29 db ab 70 12 dc 5a ca 6b 17 ab 52 82 54 b1\nMyFile(0999)\: value of 'crt->rsa.E' (17 bits) is\:\nMyFile(0999)\: 01 00 01\n" Debug print certificate #2 (EC) diff --git a/tests/suites/test_suite_debug.function b/tests/suites/test_suite_debug.function index e7c2add2c..6010f7470 100644 --- a/tests/suites/test_suite_debug.function +++ b/tests/suites/test_suite_debug.function @@ -18,10 +18,53 @@ void string_debug(void *data, int level, const char *str) /* END_HEADER */ /* BEGIN_DEPENDENCIES - * depends_on:POLARSSL_DEBUG_C:POLARSSL_BIGNUM_C:POLARSSL_SSL_TLS_C:POLARSSL_RSA_C + * depends_on:POLARSSL_DEBUG_C:POLARSSL_SSL_TLS_C * END_DEPENDENCIES */ +/* BEGIN_CASE */ +void debug_print_ret( char *file, int line, char *text, int value, + char *result_str ) +{ + ssl_context ssl; + struct buffer_data buffer; + + memset( &ssl, 0, sizeof( ssl_context ) ); + memset( buffer.buf, 0, 2000 ); + buffer.ptr = buffer.buf; + + ssl_set_dbg(&ssl, string_debug, &buffer); + + debug_print_ret( &ssl, 0, file, line, text, value); + + TEST_ASSERT( strcmp( buffer.buf, result_str ) == 0 ); +} +/* END_CASE */ + +/* BEGIN_CASE */ +void debug_print_buf( char *file, int line, char *text, char *data_string, + char *result_str ) +{ + unsigned char data[10000]; + ssl_context ssl; + struct buffer_data buffer; + size_t data_len; + + memset( &data, 0, sizeof( data ) ); + memset( &ssl, 0, sizeof( ssl_context ) ); + memset( buffer.buf, 0, 2000 ); + buffer.ptr = buffer.buf; + + data_len = unhexify( data, data_string ); + + ssl_set_dbg(&ssl, string_debug, &buffer); + + debug_print_buf( &ssl, 0, file, line, text, data, data_len ); + + TEST_ASSERT( strcmp( buffer.buf, result_str ) == 0 ); +} +/* END_CASE */ + /* BEGIN_CASE depends_on:POLARSSL_FS_IO:POLARSSL_X509_CRT_PARSE_C */ void debug_print_crt( char *crt_file, char *file, int line, char *prefix, char *result_str ) @@ -33,7 +76,7 @@ void debug_print_crt( char *crt_file, char *file, int line, char *prefix, x509_crt_init( &crt ); memset( &ssl, 0, sizeof( ssl_context ) ); memset( buffer.buf, 0, 2000 ); - buffer.ptr = buffer.buf; + buffer.ptr = buffer.buf; ssl_set_dbg(&ssl, string_debug, &buffer); @@ -46,7 +89,7 @@ void debug_print_crt( char *crt_file, char *file, int line, char *prefix, } /* END_CASE */ -/* BEGIN_CASE */ +/* BEGIN_CASE depends_on:POLARSSL_BIGNUM_C */ void debug_print_mpi( int radix, char *value, char *file, int line, char *prefix, char *result_str ) { @@ -58,7 +101,7 @@ void debug_print_mpi( int radix, char *value, char *file, int line, memset( &ssl, 0, sizeof( ssl_context ) ); memset( buffer.buf, 0, 2000 ); - buffer.ptr = buffer.buf; + buffer.ptr = buffer.buf; TEST_ASSERT( mpi_read_string( &val, radix, value ) == 0 ); ssl_set_dbg(&ssl, string_debug, &buffer);