#include <linux/kernel.h>
#include <linux/string.h>
#include <linux/err.h>
#include <linux/slab.h>
#include <linux/wait.h>
#include <linux/sched.h>
#include "glob.h"
#include "crypto_ctx.h"
struct crypto_ctx_list { … };
static struct crypto_ctx_list ctx_list;
static inline void free_aead(struct crypto_aead *aead)
{ … }
static void free_shash(struct shash_desc *shash)
{ … }
static struct crypto_aead *alloc_aead(int id)
{ … }
static struct shash_desc *alloc_shash_desc(int id)
{ … }
static void ctx_free(struct ksmbd_crypto_ctx *ctx)
{ … }
static struct ksmbd_crypto_ctx *ksmbd_find_crypto_ctx(void)
{ … }
void ksmbd_release_crypto_ctx(struct ksmbd_crypto_ctx *ctx)
{ … }
static struct ksmbd_crypto_ctx *____crypto_shash_ctx_find(int id)
{ … }
struct ksmbd_crypto_ctx *ksmbd_crypto_ctx_find_hmacmd5(void)
{ … }
struct ksmbd_crypto_ctx *ksmbd_crypto_ctx_find_hmacsha256(void)
{ … }
struct ksmbd_crypto_ctx *ksmbd_crypto_ctx_find_cmacaes(void)
{ … }
struct ksmbd_crypto_ctx *ksmbd_crypto_ctx_find_sha256(void)
{ … }
struct ksmbd_crypto_ctx *ksmbd_crypto_ctx_find_sha512(void)
{ … }
static struct ksmbd_crypto_ctx *____crypto_aead_ctx_find(int id)
{ … }
struct ksmbd_crypto_ctx *ksmbd_crypto_ctx_find_gcm(void)
{ … }
struct ksmbd_crypto_ctx *ksmbd_crypto_ctx_find_ccm(void)
{ … }
void ksmbd_crypto_destroy(void)
{ … }
int ksmbd_crypto_create(void)
{ … }