Index: gnutls-3.8.4/lib/state.c =================================================================== --- gnutls-3.8.4.orig/lib/state.c +++ gnutls-3.8.4/lib/state.c @@ -830,6 +830,12 @@ void gnutls_deinit(gnutls_session_t sess gnutls_mutex_deinit(&session->internals.post_negotiation_lock); gnutls_mutex_deinit(&session->internals.epoch_lock); +#if defined(__linux__) +# if defined(ENABLE_FIPS140) + _rnd_system_entropy_deinit(); +# endif +#endif + gnutls_free(session); } Index: gnutls-3.8.4/lib/nettle/rnd.c =================================================================== --- gnutls-3.8.4.orig/lib/nettle/rnd.c +++ gnutls-3.8.4/lib/nettle/rnd.c @@ -79,6 +79,12 @@ struct generators_ctx_st { static void wrap_nettle_rnd_deinit(void *_ctx) { +#if defined(__linux__) +# if defined(ENABLE_FIPS140) + _rnd_system_entropy_deinit(); +# endif +#endif + gnutls_free(_ctx); }