diff --git a/tests/suites/test_suite_debug.function b/tests/suites/test_suite_debug.function
index 02381ca..05cc630 100644
--- a/tests/suites/test_suite_debug.function
+++ b/tests/suites/test_suite_debug.function
@@ -39,6 +39,8 @@
     debug_print_crt( &ssl, 0, {file}, {line}, {prefix}, &crt);
 
     TEST_ASSERT( strcmp( buffer.buf, {result_str} ) == 0 );
+
+    x509_free( &crt );
 }
 END_CASE
 
diff --git a/tests/suites/test_suite_pkcs1_v21.function b/tests/suites/test_suite_pkcs1_v21.function
index b7d3813..0c5db1a 100644
--- a/tests/suites/test_suite_pkcs1_v21.function
+++ b/tests/suites/test_suite_pkcs1_v21.function
@@ -47,6 +47,8 @@
 
         TEST_ASSERT( strcasecmp( (char *) output_str, {result_hex_str} ) == 0 );
     }
+
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -95,6 +97,7 @@
     }
 
     mpi_free( &P1 ); mpi_free( &Q1 ); mpi_free( &H ); mpi_free( &G );
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -190,6 +193,7 @@
     }
 
     mpi_free( &P1 ); mpi_free( &Q1 ); mpi_free( &H ); mpi_free( &G );
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -257,5 +261,7 @@
     }
 
     TEST_ASSERT( rsa_pkcs1_verify( &ctx, RSA_PUBLIC, {digest}, 0, hash_result, result_str ) == {result} );
+
+    rsa_free( &ctx );
 }
 END_CASE
diff --git a/tests/suites/test_suite_rsa.function b/tests/suites/test_suite_rsa.function
index 312f451..6c9c434 100644
--- a/tests/suites/test_suite_rsa.function
+++ b/tests/suites/test_suite_rsa.function
@@ -101,6 +101,7 @@
     }
 
     mpi_free( &P1 ); mpi_free( &Q1 ); mpi_free( &H ); mpi_free( &G );
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -168,6 +169,8 @@
     }
 
     TEST_ASSERT( rsa_pkcs1_verify( &ctx, RSA_PUBLIC, {digest}, 0, hash_result, result_str ) == {result} );
+
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -218,6 +221,7 @@
     TEST_ASSERT( strcasecmp( (char *) output_str, {result_hex_str} ) == 0 );
 
     mpi_free( &P1 ); mpi_free( &Q1 ); mpi_free( &H ); mpi_free( &G );
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -246,6 +250,8 @@
     unhexify( result_str, {result_hex_str} );
 
     TEST_ASSERT( rsa_pkcs1_verify( &ctx, RSA_PUBLIC, SIG_RSA_RAW, hash_len, hash_result, result_str ) == {correct} );
+
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -281,6 +287,8 @@
 
         TEST_ASSERT( strcasecmp( (char *) output_str, {result_hex_str} ) == 0 );
     }
+
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -313,6 +321,8 @@
 
         TEST_ASSERT( strcasecmp( (char *) output_str, {result_hex_str} ) == 0 );
     }
+
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -362,6 +372,7 @@
     }
 
     mpi_free( &P1 ); mpi_free( &Q1 ); mpi_free( &H ); mpi_free( &G );
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -393,6 +404,8 @@
 
         TEST_ASSERT( strcasecmp( (char *) output_str, {result_hex_str} ) == 0 );
     }
+
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -440,6 +453,7 @@
     }
 
     mpi_free( &P1 ); mpi_free( &Q1 ); mpi_free( &H ); mpi_free( &G );
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -470,6 +484,8 @@
     }
 
     TEST_ASSERT( rsa_check_pubkey( &ctx ) == {result} );
+
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -515,6 +531,8 @@
     }
 
     TEST_ASSERT( rsa_check_privkey( &ctx ) == {result} );
+
+    rsa_free( &ctx );
 }
 END_CASE
 
@@ -537,6 +555,8 @@
     {
         TEST_ASSERT( rsa_check_privkey( &ctx ) == 0 );
     }
+
+    rsa_free( &ctx );
 }
 END_CASE
 
diff --git a/tests/suites/test_suite_x509write.function b/tests/suites/test_suite_x509write.function
index 984a346..2cf98f1 100644
--- a/tests/suites/test_suite_x509write.function
+++ b/tests/suites/test_suite_x509write.function
@@ -60,5 +60,14 @@
 
     TEST_ASSERT( memcmp( c, pem.buf, pem.buflen ) == 0 );
     TEST_ASSERT( pem.buflen == (size_t) ret );
+
+    while( ( cur = req_name.next ) != NULL )
+    {
+        req_name.next = cur->next;
+        free( cur );
+    }
+
+    rsa_free( &rsa );
+    pem_free( &pem );
 }
 END_CASE
