#include <linux/module.h>
#include <linux/sched.h>
#include <linux/delay.h>
#include <linux/scatterlist.h>
#include <linux/crypto.h>
#include <crypto/algapi.h>
#include <crypto/aes.h>
#include <crypto/ctr.h>
#include <crypto/scatterwalk.h>
#include "ccp-crypto.h"
static int ccp_aes_complete(struct crypto_async_request *async_req, int ret)
{ … }
static int ccp_aes_setkey(struct crypto_skcipher *tfm, const u8 *key,
unsigned int key_len)
{ … }
static int ccp_aes_crypt(struct skcipher_request *req, bool encrypt)
{ … }
static int ccp_aes_encrypt(struct skcipher_request *req)
{ … }
static int ccp_aes_decrypt(struct skcipher_request *req)
{ … }
static int ccp_aes_init_tfm(struct crypto_skcipher *tfm)
{ … }
static int ccp_aes_rfc3686_complete(struct crypto_async_request *async_req,
int ret)
{ … }
static int ccp_aes_rfc3686_setkey(struct crypto_skcipher *tfm, const u8 *key,
unsigned int key_len)
{ … }
static int ccp_aes_rfc3686_crypt(struct skcipher_request *req, bool encrypt)
{ … }
static int ccp_aes_rfc3686_encrypt(struct skcipher_request *req)
{ … }
static int ccp_aes_rfc3686_decrypt(struct skcipher_request *req)
{ … }
static int ccp_aes_rfc3686_init_tfm(struct crypto_skcipher *tfm)
{ … }
static const struct skcipher_alg ccp_aes_defaults = …;
static const struct skcipher_alg ccp_aes_rfc3686_defaults = …;
struct ccp_aes_def { … };
static struct ccp_aes_def aes_algs[] = …;
static int ccp_register_aes_alg(struct list_head *head,
const struct ccp_aes_def *def)
{ … }
int ccp_register_aes_algs(struct list_head *head)
{ … }