Commit 02a247e0 authored by Matt Caswell's avatar Matt Caswell
Browse files

Deprecate COMP_zlib_cleanup() and make it a no-op



COMP_zlib_cleanup() should not be called expicitly - we should leave
auto-deinit to clean this up instead.

Reviewed-by: default avatarTim Hudson <tjh@openssl.org>
Reviewed-by: default avatarRichard Levitte <levitte@openssl.org>
parent 01d358a3
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -56,7 +56,7 @@
#include <stdlib.h>
#include <string.h>
#include <openssl/objects.h>
#include <openssl/comp.h>
#include "internal/comp.h"
#include <openssl/err.h>
#include "internal/cryptlib_int.h"
#include "internal/bio.h"
@@ -282,7 +282,7 @@ COMP_METHOD *COMP_zlib(void)
                zlib_loaded++;

            if (!OPENSSL_init_crypto(OPENSSL_INIT_ZLIB, NULL)) {
                COMP_zlib_cleanup();
                comp_zlib_cleanup_internal();
                return meth;
            }
            if (zlib_loaded)
@@ -297,7 +297,7 @@ COMP_METHOD *COMP_zlib(void)
    return (meth);
}

void COMP_zlib_cleanup(void)
void comp_zlib_cleanup_internal(void)
{
#ifdef ZLIB_SHARED
    if (zlib_dso != NULL)
+3 −3
Original line number Diff line number Diff line
@@ -64,7 +64,7 @@
#include <internal/conf.h>
#include <internal/async.h>
#include <internal/engine.h>
#include <openssl/comp.h>
#include <internal/comp.h>
#include <internal/err.h>
#include <stdlib.h>
#include <assert.h>
@@ -427,9 +427,9 @@ void OPENSSL_cleanup(void)
    if (zlib_inited) {
#ifdef OPENSSL_INIT_DEBUG
        fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: "
                        "COMP_zlib_cleanup()\n");
                        "comp_zlib_cleanup_internal()\n");
#endif
        COMP_zlib_cleanup();
        comp_zlib_cleanup_internal();
    }
#endif

+11 −0
Original line number Diff line number Diff line
/*
 * Licensed under the OpenSSL licenses, (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * https://www.openssl.org/source/license.html
 * or in the file LICENSE in the source distribution.
 */

#include <openssl/comp.h>

void comp_zlib_cleanup_internal(void);
+4 −1
Original line number Diff line number Diff line
@@ -79,7 +79,10 @@ int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen,
                      unsigned char *in, int ilen);

COMP_METHOD *COMP_zlib(void);
void COMP_zlib_cleanup(void);

#if OPENSSL_API_COMPAT < 0x10100000L
#define COMP_zlib_cleanup()
#endif

# ifdef HEADER_BIO_H
#  ifdef ZLIB