linux/crypto/compress.c
<<
>>
Prefs
   1/*
   2 * Cryptographic API.
   3 *
   4 * Compression operations.
   5 *
   6 * Copyright (c) 2002 James Morris <jmorris@intercode.com.au>
   7 *
   8 * This program is free software; you can redistribute it and/or modify it
   9 * under the terms of the GNU General Public License as published by the Free
  10 * Software Foundation; either version 2 of the License, or (at your option) 
  11 * any later version.
  12 *
  13 */
  14#include <linux/types.h>
  15#include <linux/crypto.h>
  16#include <linux/errno.h>
  17#include <asm/scatterlist.h>
  18#include <linux/string.h>
  19#include "internal.h"
  20
  21static int crypto_compress(struct crypto_tfm *tfm,
  22                            const u8 *src, unsigned int slen,
  23                            u8 *dst, unsigned int *dlen)
  24{
  25        return tfm->__crt_alg->cra_compress.coa_compress(tfm, src, slen, dst,
  26                                                         dlen);
  27}
  28
  29static int crypto_decompress(struct crypto_tfm *tfm,
  30                             const u8 *src, unsigned int slen,
  31                             u8 *dst, unsigned int *dlen)
  32{
  33        return tfm->__crt_alg->cra_compress.coa_decompress(tfm, src, slen, dst,
  34                                                           dlen);
  35}
  36
  37int crypto_init_compress_flags(struct crypto_tfm *tfm, u32 flags)
  38{
  39        return flags ? -EINVAL : 0;
  40}
  41
  42int crypto_init_compress_ops(struct crypto_tfm *tfm)
  43{
  44        struct compress_tfm *ops = &tfm->crt_compress;
  45
  46        ops->cot_compress = crypto_compress;
  47        ops->cot_decompress = crypto_decompress;
  48        
  49        return 0;
  50}
  51
  52void crypto_exit_compress_ops(struct crypto_tfm *tfm)
  53{
  54}
  55
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.