Fix no-comp build

Reviewed-by: Matt Caswell <matt@openssl.org>
This commit is contained in:
Emilia Kasper
2016-03-11 21:13:19 +01:00
parent 6f58da8811
commit e4ad0763e8
2 changed files with 9 additions and 1 deletions

View File

@@ -324,13 +324,16 @@ static void ossl_init_engine_afalg(void)
# endif
#endif
#ifndef OPENSSL_NO_COMP
static CRYPTO_ONCE zlib = CRYPTO_ONCE_STATIC_INIT;
static int zlib_inited = 0;
static void ossl_init_zlib(void)
{
/* Do nothing - we need to know about this for the later cleanup */
zlib_inited = 1;
}
#endif
static void ossl_init_thread_stop(struct thread_local_inits_st *locals)
{
@@ -426,6 +429,7 @@ void OPENSSL_cleanup(void)
* conditions for the various "*_inited" vars below.
*/
#ifndef OPENSSL_NO_COMP
if (zlib_inited) {
#ifdef OPENSSL_INIT_DEBUG
fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: "
@@ -433,6 +437,7 @@ void OPENSSL_cleanup(void)
#endif
COMP_zlib_cleanup();
}
#endif
#ifndef OPENSSL_NO_ASYNC
if (async_inited) {
@@ -600,9 +605,11 @@ int OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings)
}
#endif
#ifndef OPENSSL_NO_COMP
if ((opts & OPENSSL_INIT_ZLIB)
&& CRYPTO_THREAD_run_once(&zlib, ossl_init_zlib))
return 0;
#endif
return 1;
}

View File

@@ -214,7 +214,9 @@ static const EVP_CIPHER *ssl_cipher_methods[SSL_ENC_NUM_IDX] = {
static STACK_OF(SSL_COMP) *ssl_comp_methods = NULL;
#ifndef OPENSSL_NO_COMP
static CRYPTO_ONCE ssl_load_builtin_comp_once = CRYPTO_ONCE_STATIC_INIT;
#endif
/*
* Constant SSL_MAX_DIGEST equal to size of digests array should be defined
@@ -621,7 +623,6 @@ int ssl_cipher_get_evp(const SSL_SESSION *s, const EVP_CIPHER **enc,
#ifndef OPENSSL_NO_COMP
load_builtin_compressions();
#endif
*comp = NULL;
ctmp.id = s->compress_meth;
if (ssl_comp_methods != NULL) {