33 lines · c
1// SPDX-License-Identifier: GPL-2.0-or-later2/*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 12int 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(comp);17 18 return tfm->__crt_alg->cra_compress.coa_compress(tfm, src, slen, dst,19 dlen);20}21EXPORT_SYMBOL_GPL(crypto_comp_compress);22 23int 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(comp);28 29 return tfm->__crt_alg->cra_compress.coa_decompress(tfm, src, slen, dst,30 dlen);31}32EXPORT_SYMBOL_GPL(crypto_comp_decompress);33