1 | // SPDX-License-Identifier: GPL-2.0-or-later |
2 | /* |
3 | * Cryptographic API. |
4 | * |
5 | * Compression operations. |
6 | * |
7 | * Copyright (c) 2002 James Morris <jmorris@intercode.com.au> |
8 | */ |
9 | #include <linux/crypto.h> |
10 | #include "internal.h" |
11 | |
12 | int crypto_comp_compress(struct crypto_comp *comp, |
13 | const u8 *src, unsigned int slen, |
14 | u8 *dst, unsigned int *dlen) |
15 | { |
16 | struct crypto_tfm *tfm = crypto_comp_tfm(tfm: comp); |
17 | |
18 | return tfm->__crt_alg->cra_compress.coa_compress(tfm, src, slen, dst, |
19 | dlen); |
20 | } |
21 | EXPORT_SYMBOL_GPL(crypto_comp_compress); |
22 | |
23 | int crypto_comp_decompress(struct crypto_comp *comp, |
24 | const u8 *src, unsigned int slen, |
25 | u8 *dst, unsigned int *dlen) |
26 | { |
27 | struct crypto_tfm *tfm = crypto_comp_tfm(tfm: comp); |
28 | |
29 | return tfm->__crt_alg->cra_compress.coa_decompress(tfm, src, slen, dst, |
30 | dlen); |
31 | } |
32 | EXPORT_SYMBOL_GPL(crypto_comp_decompress); |
33 | |