diff options
author | Rich Salz <rsalz@openssl.org> | 2015-04-30 17:57:32 -0400 |
---|---|---|
committer | Rich Salz <rsalz@openssl.org> | 2015-04-30 17:57:32 -0400 |
commit | 4b45c6e52b208deff7da333d1c7f84bcd3986609 (patch) | |
tree | db26f7a51ad582f203dce2145a43c3e0d4376f69 /crypto/modes | |
parent | 68dc682499ea3fe27d909c946d7abd39062d6efd (diff) | |
download | openssl-4b45c6e52b208deff7da333d1c7f84bcd3986609.tar.gz |
free cleanup almost the finale
Add OPENSSL_clear_free which merges cleanse and free.
(Names was picked to be similar to BN_clear_free, etc.)
Removed OPENSSL_freeFunc macro.
Fixed the small simple ones that are left:
CRYPTO_free CRYPTO_free_locked OPENSSL_free_locked
Reviewed-by: Richard Levitte <levitte@openssl.org>
Diffstat (limited to 'crypto/modes')
-rw-r--r-- | crypto/modes/gcm128.c | 5 | ||||
-rw-r--r-- | crypto/modes/ocb128.c | 5 |
2 files changed, 2 insertions, 8 deletions
diff --git a/crypto/modes/gcm128.c b/crypto/modes/gcm128.c index 4ac28b32fb..780b326221 100644 --- a/crypto/modes/gcm128.c +++ b/crypto/modes/gcm128.c @@ -1709,10 +1709,7 @@ GCM128_CONTEXT *CRYPTO_gcm128_new(void *key, block128_f block) void CRYPTO_gcm128_release(GCM128_CONTEXT *ctx) { - if (ctx) { - OPENSSL_cleanse(ctx, sizeof(*ctx)); - OPENSSL_free(ctx); - } + OPENSSL_clear_free(ctx, sizeof(*ctx)); } #if defined(SELFTEST) diff --git a/crypto/modes/ocb128.c b/crypto/modes/ocb128.c index 0d82e5089c..efa403b0f1 100644 --- a/crypto/modes/ocb128.c +++ b/crypto/modes/ocb128.c @@ -588,10 +588,7 @@ int CRYPTO_ocb128_tag(OCB128_CONTEXT *ctx, unsigned char *tag, size_t len) void CRYPTO_ocb128_cleanup(OCB128_CONTEXT *ctx) { if (ctx) { - if (ctx->l) { - OPENSSL_cleanse(ctx->l, ctx->max_l_index * 16); - OPENSSL_free(ctx->l); - } + OPENSSL_clear_free(ctx->l, ctx->max_l_index * 16); OPENSSL_cleanse(ctx, sizeof(*ctx)); } } |