1e71b7053SJung-uk Kim /* 2e71b7053SJung-uk Kim * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. 3e71b7053SJung-uk Kim * 4*b077aed3SPierre Pronchery * Licensed under the Apache License 2.0 (the "License"). You may not use 5e71b7053SJung-uk Kim * this file except in compliance with the License. You can obtain a copy 6e71b7053SJung-uk Kim * in the file LICENSE in the source distribution or at 7e71b7053SJung-uk Kim * https://www.openssl.org/source/license.html 8e71b7053SJung-uk Kim */ 9e71b7053SJung-uk Kim 10*b077aed3SPierre Pronchery #ifndef OPENSSL_COMP_H 11*b077aed3SPierre Pronchery # define OPENSSL_COMP_H 12*b077aed3SPierre Pronchery # pragma once 13*b077aed3SPierre Pronchery 14*b077aed3SPierre Pronchery # include <openssl/macros.h> 15*b077aed3SPierre Pronchery # ifndef OPENSSL_NO_DEPRECATED_3_0 16e71b7053SJung-uk Kim # define HEADER_COMP_H 17*b077aed3SPierre Pronchery # endif 18e71b7053SJung-uk Kim 19e71b7053SJung-uk Kim # include <openssl/opensslconf.h> 20e71b7053SJung-uk Kim 21e71b7053SJung-uk Kim # ifndef OPENSSL_NO_COMP 22e71b7053SJung-uk Kim # include <openssl/crypto.h> 23e71b7053SJung-uk Kim # include <openssl/comperr.h> 24e71b7053SJung-uk Kim # ifdef __cplusplus 25e71b7053SJung-uk Kim extern "C" { 26e71b7053SJung-uk Kim # endif 27e71b7053SJung-uk Kim 28e71b7053SJung-uk Kim 29e71b7053SJung-uk Kim 30e71b7053SJung-uk Kim COMP_CTX *COMP_CTX_new(COMP_METHOD *meth); 31e71b7053SJung-uk Kim const COMP_METHOD *COMP_CTX_get_method(const COMP_CTX *ctx); 32e71b7053SJung-uk Kim int COMP_CTX_get_type(const COMP_CTX* comp); 33e71b7053SJung-uk Kim int COMP_get_type(const COMP_METHOD *meth); 34e71b7053SJung-uk Kim const char *COMP_get_name(const COMP_METHOD *meth); 35e71b7053SJung-uk Kim void COMP_CTX_free(COMP_CTX *ctx); 36e71b7053SJung-uk Kim 37e71b7053SJung-uk Kim int COMP_compress_block(COMP_CTX *ctx, unsigned char *out, int olen, 38e71b7053SJung-uk Kim unsigned char *in, int ilen); 39e71b7053SJung-uk Kim int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen, 40e71b7053SJung-uk Kim unsigned char *in, int ilen); 41e71b7053SJung-uk Kim 42e71b7053SJung-uk Kim COMP_METHOD *COMP_zlib(void); 43e71b7053SJung-uk Kim 44*b077aed3SPierre Pronchery #ifndef OPENSSL_NO_DEPRECATED_1_1_0 45e71b7053SJung-uk Kim # define COMP_zlib_cleanup() while(0) continue 46e71b7053SJung-uk Kim #endif 47e71b7053SJung-uk Kim 48*b077aed3SPierre Pronchery # ifdef OPENSSL_BIO_H 49e71b7053SJung-uk Kim # ifdef ZLIB 50e71b7053SJung-uk Kim const BIO_METHOD *BIO_f_zlib(void); 51e71b7053SJung-uk Kim # endif 52e71b7053SJung-uk Kim # endif 53e71b7053SJung-uk Kim 54e71b7053SJung-uk Kim 55e71b7053SJung-uk Kim # ifdef __cplusplus 56e71b7053SJung-uk Kim } 57e71b7053SJung-uk Kim # endif 58e71b7053SJung-uk Kim # endif 59e71b7053SJung-uk Kim #endif 60