X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=crypto%2Fo_init.c;h=b7f8d10fa0cbfce61a804380ce69c357e2e0f833;hp=1a042ffc99103ef38f3f3a5104ea75acae55b6e5;hb=4ec93a10bdbed94268fbd019b0944604ee894b83;hpb=c4acfb1fd049f52fb074b103be01cab5cf5c04f8 diff --git a/crypto/o_init.c b/crypto/o_init.c index 1a042ffc99..b7f8d10fa0 100644 --- a/crypto/o_init.c +++ b/crypto/o_init.c @@ -54,6 +54,10 @@ #include #include +#ifdef OPENSSL_FIPS +#include +#include +#endif #if defined(__GNUC__) && __GNUC__>=2 void OPENSSL_init(void) __attribute__((constructor)); @@ -116,7 +120,13 @@ void OPENSSL_init(void) if (done) return; done = 1; -#if 1 +#ifdef OPENSSL_FIPS + FIPS_set_locking_callbacks(CRYPTO_lock, CRYPTO_add_lock); + FIPS_set_error_callbacks(ERR_put_error, ERR_add_error_vdata); + FIPS_set_malloc_callbacks(CRYPTO_malloc, CRYPTO_free); + RAND_init_fips(); +#endif +#if 0 fprintf(stderr, "Called OPENSSL_init\n"); #endif }