diff options
Diffstat (limited to 'lib/gnutls_mem.h')
-rw-r--r-- | lib/gnutls_mem.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/gnutls_mem.h b/lib/gnutls_mem.h index 41fb88d9d0..657d59aa83 100644 --- a/lib/gnutls_mem.h +++ b/lib/gnutls_mem.h @@ -37,4 +37,19 @@ svoid *gnutls_secure_calloc(size_t nmemb, size_t size); void *_gnutls_calloc(size_t nmemb, size_t size); char *_gnutls_strdup(const char *); +#define zrelease_mpi_key(mpi) if (*mpi!=NULL) { \ + _gnutls_mpi_clear(*mpi); \ + _gnutls_mpi_release(mpi); \ + } + +#define zeroize_key(x, size) memset(x, 0, size) + +#ifdef ENABLE_FIPS140 +# define zeroize_temp_key zeroize_key +# define zrelease_temp_mpi_key zrelease_mpi_key +#else +# define zeroize_temp_key(x, size) +# define zrelease_temp_mpi_key(mpi) _gnutls_mpi_release(mpi) +#endif + #endif /* GNUTLS_MEM_H */ |