summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/comp/comp.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/comp/comp.h')
-rw-r--r--src/lib/libcrypto/comp/comp.h59
1 files changed, 59 insertions, 0 deletions
diff --git a/src/lib/libcrypto/comp/comp.h b/src/lib/libcrypto/comp/comp.h
new file mode 100644
index 0000000000..ab48b78ae9
--- /dev/null
+++ b/src/lib/libcrypto/comp/comp.h
@@ -0,0 +1,59 @@
1
2#ifndef HEADER_COMP_H
3#define HEADER_COMP_H
4
5#include <openssl/crypto.h>
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11typedef struct comp_method_st
12 {
13 int type; /* NID for compression library */
14 const char *name; /* A text string to identify the library */
15 int (*init)();
16 void (*finish)();
17 int (*compress)();
18 int (*expand)();
19 long (*ctrl)();
20 long (*callback_ctrl)();
21 } COMP_METHOD;
22
23typedef struct comp_ctx_st
24 {
25 COMP_METHOD *meth;
26 unsigned long compress_in;
27 unsigned long compress_out;
28 unsigned long expand_in;
29 unsigned long expand_out;
30
31 CRYPTO_EX_DATA ex_data;
32 } COMP_CTX;
33
34
35COMP_CTX *COMP_CTX_new(COMP_METHOD *meth);
36void COMP_CTX_free(COMP_CTX *ctx);
37int COMP_compress_block(COMP_CTX *ctx, unsigned char *out, int olen,
38 unsigned char *in, int ilen);
39int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen,
40 unsigned char *in, int ilen);
41COMP_METHOD *COMP_rle(void );
42COMP_METHOD *COMP_zlib(void );
43
44/* BEGIN ERROR CODES */
45/* The following lines are auto generated by the script mkerr.pl. Any changes
46 * made after this point may be overwritten when the script is next run.
47 */
48void ERR_load_COMP_strings(void);
49
50/* Error codes for the COMP functions. */
51
52/* Function codes. */
53
54/* Reason codes. */
55
56#ifdef __cplusplus
57}
58#endif
59#endif