]>
Commit | Line | Data |
---|---|---|
7bf7a6d0 MTL |
1 | /* |
2 | * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. | |
3 | * | |
4 | * Licensed under the OpenSSL license (the "License"). You may not use | |
5 | * this file except in compliance with the License. You can obtain a copy | |
6 | * in the file LICENSE in the source distribution or at | |
7 | * https://www.openssl.org/source/license.html | |
8 | */ | |
9 | ||
10 | struct comp_method_st { | |
11 | int type; /* NID for compression library */ | |
12 | const char *name; /* A text string to identify the library */ | |
13 | int (*init) (COMP_CTX *ctx); | |
14 | void (*finish) (COMP_CTX *ctx); | |
15 | int (*compress) (COMP_CTX *ctx, | |
16 | unsigned char *out, unsigned int olen, | |
17 | unsigned char *in, unsigned int ilen); | |
18 | int (*expand) (COMP_CTX *ctx, | |
19 | unsigned char *out, unsigned int olen, | |
20 | unsigned char *in, unsigned int ilen); | |
21 | }; | |
22 | ||
23 | struct comp_ctx_st { | |
24 | struct comp_method_st *meth; | |
25 | unsigned long compress_in; | |
26 | unsigned long compress_out; | |
27 | unsigned long expand_in; | |
28 | unsigned long expand_out; | |
29 | void* data; | |
30 | }; |