at v5.3 1.1 kB view raw
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/types.h> 10#include <linux/crypto.h> 11#include <linux/errno.h> 12#include <linux/string.h> 13#include "internal.h" 14 15static int crypto_compress(struct crypto_tfm *tfm, 16 const u8 *src, unsigned int slen, 17 u8 *dst, unsigned int *dlen) 18{ 19 return tfm->__crt_alg->cra_compress.coa_compress(tfm, src, slen, dst, 20 dlen); 21} 22 23static int crypto_decompress(struct crypto_tfm *tfm, 24 const u8 *src, unsigned int slen, 25 u8 *dst, unsigned int *dlen) 26{ 27 return tfm->__crt_alg->cra_compress.coa_decompress(tfm, src, slen, dst, 28 dlen); 29} 30 31int crypto_init_compress_ops(struct crypto_tfm *tfm) 32{ 33 struct compress_tfm *ops = &tfm->crt_compress; 34 35 ops->cot_compress = crypto_compress; 36 ops->cot_decompress = crypto_decompress; 37 38 return 0; 39}