diff --git a/programs/aes/aescrypt2.c b/programs/aes/aescrypt2.c index 28f74d1a4..db7ed325e 100644 --- a/programs/aes/aescrypt2.c +++ b/programs/aes/aescrypt2.c @@ -93,6 +93,8 @@ int main( int argc, char *argv[] ) off_t filesize, offset; #endif + aes_init( &aes_ctx ); + /* * Parse the command-line arguments. */ @@ -357,7 +359,7 @@ int main( int argc, char *argv[] ) } memset( key, 0, sizeof( key ) ); - aes_setkey_dec( &aes_ctx, digest, 256 ); + aes_setkey_dec( &aes_ctx, digest, 256 ); sha256_hmac_starts( &sha_ctx, digest, 32, 0 ); /* @@ -426,7 +428,7 @@ exit: memset( buffer, 0, sizeof( buffer ) ); memset( digest, 0, sizeof( digest ) ); - memset( &aes_ctx, 0, sizeof( aes_context ) ); + aes_free( &aes_ctx ); memset( &sha_ctx, 0, sizeof( sha256_context ) ); return( ret ); diff --git a/programs/pkey/dh_client.c b/programs/pkey/dh_client.c index 154f5e3f4..92c5bca7d 100644 --- a/programs/pkey/dh_client.c +++ b/programs/pkey/dh_client.c @@ -84,6 +84,8 @@ int main( int argc, char *argv[] ) memset( &rsa, 0, sizeof( rsa ) ); memset( &dhm, 0, sizeof( dhm ) ); + aes_init( &aes ); + /* * 1. Setup the RNG */ @@ -279,6 +281,7 @@ exit: if( server_fd != -1 ) net_close( server_fd ); + aes_free( &aes ); rsa_free( &rsa ); dhm_free( &dhm ); entropy_free( &entropy ); diff --git a/programs/pkey/dh_server.c b/programs/pkey/dh_server.c index c2fdbbfee..8bb184f8f 100644 --- a/programs/pkey/dh_server.c +++ b/programs/pkey/dh_server.c @@ -84,6 +84,7 @@ int main( int argc, char *argv[] ) memset( &rsa, 0, sizeof( rsa ) ); memset( &dhm, 0, sizeof( dhm ) ); + aes_init( &aes ); /* * 1. Setup the RNG @@ -280,6 +281,7 @@ exit: if( client_fd != -1 ) net_close( client_fd ); + aes_free( &aes ); rsa_free( &rsa ); dhm_free( &dhm ); entropy_free( &entropy ); diff --git a/programs/test/benchmark.c b/programs/test/benchmark.c index b978f01cc..a17d6900b 100644 --- a/programs/test/benchmark.c +++ b/programs/test/benchmark.c @@ -273,8 +273,10 @@ int main( int argc, char *argv[] ) if( todo.arc4 ) { arc4_context arc4; + arc4_init( &arc4 ); arc4_setup( &arc4, tmp, 32 ); TIME_AND_TSC( "ARC4", arc4_crypt( &arc4, BUFSIZE, buf, buf ) ); + arc4_free( &arc4 ); } #endif @@ -282,17 +284,21 @@ int main( int argc, char *argv[] ) if( todo.des3 ) { des3_context des3; + des3_init( &des3 ); des3_set3key_enc( &des3, tmp ); TIME_AND_TSC( "3DES", des3_crypt_cbc( &des3, DES_ENCRYPT, BUFSIZE, tmp, buf, buf ) ); + des3_free( &des3 ); } if( todo.des ) { des_context des; + des_init( &des ); des_setkey_enc( &des, tmp ); TIME_AND_TSC( "DES", des_crypt_cbc( &des, DES_ENCRYPT, BUFSIZE, tmp, buf, buf ) ); + des_free( &des ); } #endif @@ -301,6 +307,7 @@ int main( int argc, char *argv[] ) if( todo.aes_cbc ) { aes_context aes; + aes_init( &aes ); for( keysize = 128; keysize <= 256; keysize += 64 ) { snprintf( title, sizeof( title ), "AES-CBC-%d", keysize ); @@ -312,6 +319,7 @@ int main( int argc, char *argv[] ) TIME_AND_TSC( title, aes_crypt_cbc( &aes, AES_ENCRYPT, BUFSIZE, tmp, buf, buf ) ); } + aes_free( &aes ); } #endif #if defined(POLARSSL_GCM_C) @@ -360,6 +368,7 @@ int main( int argc, char *argv[] ) if( todo.camellia ) { camellia_context camellia; + camellia_init( &camellia ); for( keysize = 128; keysize <= 256; keysize += 64 ) { snprintf( title, sizeof( title ), "CAMELLIA-CBC-%d", keysize ); @@ -372,6 +381,7 @@ int main( int argc, char *argv[] ) camellia_crypt_cbc( &camellia, CAMELLIA_ENCRYPT, BUFSIZE, tmp, buf, buf ) ); } + camellia_free( &camellia ); } #endif @@ -379,6 +389,8 @@ int main( int argc, char *argv[] ) if( todo.blowfish ) { blowfish_context blowfish; + blowfish_init( &blowfish ); + for( keysize = 128; keysize <= 256; keysize += 64 ) { snprintf( title, sizeof( title ), "BLOWFISH-CBC-%d", keysize ); @@ -391,6 +403,8 @@ int main( int argc, char *argv[] ) blowfish_crypt_cbc( &blowfish, BLOWFISH_ENCRYPT, BUFSIZE, tmp, buf, buf ) ); } + + blowfish_free( &blowfish ); } #endif diff --git a/tests/suites/test_suite_aes.function b/tests/suites/test_suite_aes.function index b92e80dc8..20f5889bc 100644 --- a/tests/suites/test_suite_aes.function +++ b/tests/suites/test_suite_aes.function @@ -22,6 +22,7 @@ void aes_encrypt_ecb( char *hex_key_string, char *hex_src_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + aes_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( src_str, hex_src_string ); @@ -34,6 +35,8 @@ void aes_encrypt_ecb( char *hex_key_string, char *hex_src_string, TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + aes_free( &ctx ); } /* END_CASE */ @@ -52,6 +55,7 @@ void aes_decrypt_ecb( char *hex_key_string, char *hex_src_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + aes_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( src_str, hex_src_string ); @@ -64,6 +68,8 @@ void aes_decrypt_ecb( char *hex_key_string, char *hex_src_string, TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + aes_free( &ctx ); } /* END_CASE */ @@ -85,6 +91,7 @@ void aes_encrypt_cbc( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + aes_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -98,6 +105,8 @@ void aes_encrypt_cbc( char *hex_key_string, char *hex_iv_string, TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + aes_free( &ctx ); } /* END_CASE */ @@ -119,6 +128,7 @@ void aes_decrypt_cbc( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + aes_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -132,6 +142,8 @@ void aes_decrypt_cbc( char *hex_key_string, char *hex_iv_string, TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + aes_free( &ctx ); } /* END_CASE */ @@ -153,6 +165,7 @@ void aes_encrypt_cfb128( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + aes_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -163,6 +176,8 @@ void aes_encrypt_cfb128( char *hex_key_string, char *hex_iv_string, hexify( dst_str, output, 16 ); TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); + + aes_free( &ctx ); } /* END_CASE */ @@ -184,6 +199,7 @@ void aes_decrypt_cfb128( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + aes_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -194,6 +210,8 @@ void aes_decrypt_cfb128( char *hex_key_string, char *hex_iv_string, hexify( dst_str, output, 16 ); TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); + + aes_free( &ctx ); } /* END_CASE */ @@ -214,6 +232,7 @@ void aes_encrypt_cfb8( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + aes_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -224,6 +243,8 @@ void aes_encrypt_cfb8( char *hex_key_string, char *hex_iv_string, hexify( dst_str, output, src_len ); TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); + + aes_free( &ctx ); } /* END_CASE */ @@ -244,6 +265,7 @@ void aes_decrypt_cfb8( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + aes_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -254,6 +276,8 @@ void aes_decrypt_cfb8( char *hex_key_string, char *hex_iv_string, hexify( dst_str, output, src_len ); TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); + + aes_free( &ctx ); } /* END_CASE */ diff --git a/tests/suites/test_suite_arc4.function b/tests/suites/test_suite_arc4.function index 73df59e53..f55a5e8d2 100644 --- a/tests/suites/test_suite_arc4.function +++ b/tests/suites/test_suite_arc4.function @@ -22,6 +22,7 @@ void arc4_crypt( char *hex_src_string, char *hex_key_string, memset(key_str, 0x00, 1000); memset(dst_str, 0x00, 1000); memset(dst_hexstr, 0x00, 2000); + arc4_init( &ctx ); src_len = unhexify( src_str, hex_src_string ); key_len = unhexify( key_str, hex_key_string ); @@ -31,6 +32,8 @@ void arc4_crypt( char *hex_src_string, char *hex_key_string, hexify( dst_hexstr, dst_str, src_len ); TEST_ASSERT( strcmp( (char *) dst_hexstr, hex_dst_string ) == 0 ); + + arc4_free( &ctx ); } /* END_CASE */ diff --git a/tests/suites/test_suite_blowfish.function b/tests/suites/test_suite_blowfish.function index 673b88c18..17a5b651b 100644 --- a/tests/suites/test_suite_blowfish.function +++ b/tests/suites/test_suite_blowfish.function @@ -22,6 +22,7 @@ void blowfish_encrypt_ecb( char *hex_key_string, char *hex_src_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + blowfish_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( src_str, hex_src_string ); @@ -34,6 +35,8 @@ void blowfish_encrypt_ecb( char *hex_key_string, char *hex_src_string, TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + blowfish_free( &ctx ); } /* END_CASE */ @@ -52,6 +55,7 @@ void blowfish_decrypt_ecb( char *hex_key_string, char *hex_src_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + blowfish_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( src_str, hex_src_string ); @@ -64,6 +68,8 @@ void blowfish_decrypt_ecb( char *hex_key_string, char *hex_src_string, TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + blowfish_free( &ctx ); } /* END_CASE */ @@ -85,6 +91,7 @@ void blowfish_encrypt_cbc( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + blowfish_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -99,6 +106,8 @@ void blowfish_encrypt_cbc( char *hex_key_string, char *hex_iv_string, TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + blowfish_free( &ctx ); } /* END_CASE */ @@ -120,6 +129,7 @@ void blowfish_decrypt_cbc( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + blowfish_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -133,6 +143,8 @@ void blowfish_decrypt_cbc( char *hex_key_string, char *hex_iv_string, TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + blowfish_free( &ctx ); } /* END_CASE */ @@ -154,6 +166,7 @@ void blowfish_encrypt_cfb64( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + blowfish_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -164,6 +177,8 @@ void blowfish_encrypt_cfb64( char *hex_key_string, char *hex_iv_string, hexify( dst_str, output, src_len ); TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); + + blowfish_free( &ctx ); } /* END_CASE */ @@ -185,6 +200,7 @@ void blowfish_decrypt_cfb64( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + blowfish_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -195,6 +211,8 @@ void blowfish_decrypt_cfb64( char *hex_key_string, char *hex_iv_string, hexify( dst_str, output, src_len ); TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); + + blowfish_free( &ctx ); } /* END_CASE */ @@ -218,6 +236,7 @@ void blowfish_encrypt_ctr( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + blowfish_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -228,5 +247,7 @@ void blowfish_encrypt_ctr( char *hex_key_string, char *hex_iv_string, hexify( dst_str, output, src_len ); TEST_ASSERT( strcmp( (char *) dst_str, hex_dst_string ) == 0 ); + + blowfish_free( &ctx ); } /* END_CASE */ diff --git a/tests/suites/test_suite_camellia.function b/tests/suites/test_suite_camellia.function index 8f9e97870..c5b66a61a 100644 --- a/tests/suites/test_suite_camellia.function +++ b/tests/suites/test_suite_camellia.function @@ -22,6 +22,7 @@ void camellia_encrypt_ecb( char *hex_key_string, char *hex_src_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + camellia_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( src_str, hex_src_string ); @@ -34,6 +35,8 @@ void camellia_encrypt_ecb( char *hex_key_string, char *hex_src_string, TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + camellia_free( &ctx ); } /* END_CASE */ @@ -52,6 +55,7 @@ void camellia_decrypt_ecb( char *hex_key_string, char *hex_src_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + camellia_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( src_str, hex_src_string ); @@ -64,6 +68,8 @@ void camellia_decrypt_ecb( char *hex_key_string, char *hex_src_string, TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + camellia_free( &ctx ); } /* END_CASE */ @@ -85,6 +91,7 @@ void camellia_encrypt_cbc( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + camellia_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -98,6 +105,8 @@ void camellia_encrypt_cbc( char *hex_key_string, char *hex_iv_string, TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + camellia_free( &ctx ); } /* END_CASE */ @@ -119,6 +128,7 @@ void camellia_decrypt_cbc( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + camellia_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -132,6 +142,8 @@ void camellia_decrypt_cbc( char *hex_key_string, char *hex_iv_string, TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + camellia_free( &ctx ); } /* END_CASE */ @@ -153,6 +165,7 @@ void camellia_encrypt_cfb128( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + camellia_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -163,6 +176,8 @@ void camellia_encrypt_cfb128( char *hex_key_string, char *hex_iv_string, hexify( dst_str, output, 16 ); TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); + + camellia_free( &ctx ); } /* END_CASE */ @@ -184,6 +199,7 @@ void camellia_decrypt_cfb128( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + camellia_init( &ctx ); key_len = unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -194,6 +210,8 @@ void camellia_decrypt_cfb128( char *hex_key_string, char *hex_iv_string, hexify( dst_str, output, 16 ); TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); + + camellia_free( &ctx ); } /* END_CASE */ diff --git a/tests/suites/test_suite_des.function b/tests/suites/test_suite_des.function index d5d0f11ed..0231757c1 100644 --- a/tests/suites/test_suite_des.function +++ b/tests/suites/test_suite_des.function @@ -34,6 +34,7 @@ void des_encrypt_ecb( char *hex_key_string, char *hex_src_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + des_init( &ctx ); unhexify( key_str, hex_key_string ); unhexify( src_str, hex_src_string ); @@ -43,6 +44,8 @@ void des_encrypt_ecb( char *hex_key_string, char *hex_src_string, hexify( dst_str, output, 8 ); TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); + + des_free( &ctx ); } /* END_CASE */ @@ -60,6 +63,7 @@ void des_decrypt_ecb( char *hex_key_string, char *hex_src_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + des_init( &ctx ); unhexify( key_str, hex_key_string ); unhexify( src_str, hex_src_string ); @@ -69,6 +73,8 @@ void des_decrypt_ecb( char *hex_key_string, char *hex_src_string, hexify( dst_str, output, 8 ); TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); + + des_free( &ctx ); } /* END_CASE */ @@ -89,6 +95,7 @@ void des_encrypt_cbc( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + des_init( &ctx ); unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -102,6 +109,8 @@ void des_encrypt_cbc( char *hex_key_string, char *hex_iv_string, TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + des_free( &ctx ); } /* END_CASE */ @@ -122,6 +131,7 @@ void des_decrypt_cbc( char *hex_key_string, char *hex_iv_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + des_init( &ctx ); unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -135,6 +145,8 @@ void des_decrypt_cbc( char *hex_key_string, char *hex_iv_string, TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + des_free( &ctx ); } /* END_CASE */ @@ -152,6 +164,7 @@ void des3_encrypt_ecb( int key_count, char *hex_key_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + des3_init( &ctx ); unhexify( key_str, hex_key_string ); unhexify( src_str, hex_src_string ); @@ -167,6 +180,8 @@ void des3_encrypt_ecb( int key_count, char *hex_key_string, hexify( dst_str, output, 8 ); TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); + + des3_free( &ctx ); } /* END_CASE */ @@ -184,6 +199,7 @@ void des3_decrypt_ecb( int key_count, char *hex_key_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + des3_init( &ctx ); unhexify( key_str, hex_key_string ); unhexify( src_str, hex_src_string ); @@ -199,6 +215,8 @@ void des3_decrypt_ecb( int key_count, char *hex_key_string, hexify( dst_str, output, 8 ); TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); + + des3_free( &ctx ); } /* END_CASE */ @@ -220,6 +238,7 @@ void des3_encrypt_cbc( int key_count, char *hex_key_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + des3_init( &ctx ); unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -240,6 +259,8 @@ void des3_encrypt_cbc( int key_count, char *hex_key_string, TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + des3_free( &ctx ); } /* END_CASE */ @@ -261,6 +282,7 @@ void des3_decrypt_cbc( int key_count, char *hex_key_string, memset(src_str, 0x00, 100); memset(dst_str, 0x00, 100); memset(output, 0x00, 100); + des3_init( &ctx ); unhexify( key_str, hex_key_string ); unhexify( iv_str, hex_iv_string ); @@ -281,6 +303,8 @@ void des3_decrypt_cbc( int key_count, char *hex_key_string, TEST_ASSERT( strcasecmp( (char *) dst_str, hex_dst_string ) == 0 ); } + + des3_free( &ctx ); } /* END_CASE */