1 // SPDX-License-Identifier: GPL-2.0-or-later
5 * Compression operations.
7 * Copyright (c) 2002 James Morris <jmorris@intercode.com.au>
9 #include <linux/types.h>
10 #include <linux/crypto.h>
11 #include <linux/errno.h>
12 #include <linux/string.h>
15 static int crypto_compress(struct crypto_tfm
*tfm
,
16 const u8
*src
, unsigned int slen
,
17 u8
*dst
, unsigned int *dlen
)
19 return tfm
->__crt_alg
->cra_compress
.coa_compress(tfm
, src
, slen
, dst
,
23 static int crypto_decompress(struct crypto_tfm
*tfm
,
24 const u8
*src
, unsigned int slen
,
25 u8
*dst
, unsigned int *dlen
)
27 return tfm
->__crt_alg
->cra_compress
.coa_decompress(tfm
, src
, slen
, dst
,
31 int crypto_init_compress_ops(struct crypto_tfm
*tfm
)
33 struct compress_tfm
*ops
= &tfm
->crt_compress
;
35 ops
->cot_compress
= crypto_compress
;
36 ops
->cot_decompress
= crypto_decompress
;