diff options
Diffstat (limited to 'Cryptlib/Include/openssl/comp.h')
-rw-r--r-- | Cryptlib/Include/openssl/comp.h | 69 |
1 files changed, 40 insertions, 29 deletions
diff --git a/Cryptlib/Include/openssl/comp.h b/Cryptlib/Include/openssl/comp.h index 260ff1e0..df599ba3 100644 --- a/Cryptlib/Include/openssl/comp.h +++ b/Cryptlib/Include/openssl/comp.h @@ -1,46 +1,59 @@ -/* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. - * - * Licensed under the OpenSSL license (the "License"). You may not use - * this file except in compliance with the License. You can obtain a copy - * in the file LICENSE in the source distribution or at - * https://www.openssl.org/source/license.html - */ #ifndef HEADER_COMP_H # define HEADER_COMP_H -# include <openssl/opensslconf.h> - -# ifndef OPENSSL_NO_COMP # include <openssl/crypto.h> -# ifdef __cplusplus -extern "C" { + +# ifdef OPENSSL_NO_COMP +# error COMP is disabled. # endif +#ifdef __cplusplus +extern "C" { +#endif +typedef struct comp_ctx_st COMP_CTX; + +struct comp_method_st { + int type; /* NID for compression library */ + const char *name; /* A text string to identify the library */ + int (*init) (COMP_CTX *ctx); + void (*finish) (COMP_CTX *ctx); + int (*compress) (COMP_CTX *ctx, + unsigned char *out, unsigned int olen, + unsigned char *in, unsigned int ilen); + int (*expand) (COMP_CTX *ctx, + unsigned char *out, unsigned int olen, + unsigned char *in, unsigned int ilen); + /* + * The following two do NOTHING, but are kept for backward compatibility + */ + long (*ctrl) (void); + long (*callback_ctrl) (void); +}; + +struct comp_ctx_st { + COMP_METHOD *meth; + unsigned long compress_in; + unsigned long compress_out; + unsigned long expand_in; + unsigned long expand_out; + CRYPTO_EX_DATA ex_data; +}; COMP_CTX *COMP_CTX_new(COMP_METHOD *meth); -const COMP_METHOD *COMP_CTX_get_method(const COMP_CTX *ctx); -int COMP_CTX_get_type(const COMP_CTX* comp); -int COMP_get_type(const COMP_METHOD *meth); -const char *COMP_get_name(const COMP_METHOD *meth); void COMP_CTX_free(COMP_CTX *ctx); - int COMP_compress_block(COMP_CTX *ctx, unsigned char *out, int olen, unsigned char *in, int ilen); int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen, unsigned char *in, int ilen); - +COMP_METHOD *COMP_rle(void); COMP_METHOD *COMP_zlib(void); - -#if OPENSSL_API_COMPAT < 0x10100000L -#define COMP_zlib_cleanup() while(0) continue -#endif +void COMP_zlib_cleanup(void); # ifdef HEADER_BIO_H # ifdef ZLIB -const BIO_METHOD *BIO_f_zlib(void); +BIO_METHOD *BIO_f_zlib(void); # endif # endif @@ -49,8 +62,7 @@ const BIO_METHOD *BIO_f_zlib(void); * The following lines are auto generated by the script mkerr.pl. Any changes * made after this point may be overwritten when the script is next run. */ - -int ERR_load_COMP_strings(void); +void ERR_load_COMP_strings(void); /* Error codes for the COMP functions. */ @@ -65,8 +77,7 @@ int ERR_load_COMP_strings(void); # define COMP_R_ZLIB_INFLATE_ERROR 100 # define COMP_R_ZLIB_NOT_SUPPORTED 101 -# ifdef __cplusplus +#ifdef __cplusplus } -# endif -# endif +#endif #endif |