Avoid memory leak with repeated [gc]ccm_setkey()
diff --git a/library/ccm.c b/library/ccm.c
index 75de8cb..aa2d675 100644
--- a/library/ccm.c
+++ b/library/ccm.c
@@ -81,6 +81,8 @@
     if( cipher_info->block_size != 16 )
         return( MBEDTLS_ERR_CCM_BAD_INPUT );
 
+    mbedtls_cipher_free( &ctx->cipher_ctx );
+
     if( ( ret = mbedtls_cipher_setup( &ctx->cipher_ctx, cipher_info ) ) != 0 )
         return( ret );