1#ifndef __VSF_LINUX_CRYPTO_HASH_H__
2#define __VSF_LINUX_CRYPTO_HASH_H__
33#define SHASH_DESC_ON_STACK(shash, ctx) \
34 char __##shash##_desc[sizeof(struct shash_desc) + sizeof(psa_hash_operation_t)]\
35 VSF_CAL_ALIGN(__alignof__(struct shash_desc));\
36 struct shash_desc *shash = (struct shash_desc *)__##shash##_desc
43static inline void *crypto_shash_ctx(
struct crypto_shash *tfm)
45 return crypto_tfm_ctx(&tfm->
base);
55 return __crypto_shash_alg(crypto_shash_tfm(tfm)->__crt_alg);
58static inline unsigned int crypto_shash_descsize(
struct crypto_shash *tfm)
60 return crypto_shash_alg(tfm)->
descsize;
69static inline void crypto_free_shash(
struct crypto_shash *tfm)
82static inline int crypto_shash_digest(
struct shash_desc *desc,
const u8 *
data,
unsigned int len,
u8 *out)
90static inline int crypto_shash_tfm_digest(
struct crypto_shash *tfm,
const u8 *
data,
unsigned int len,
u8 *out)
94 return crypto_shash_digest(desc,
data, len, out);
#define vsf_container_of(__ptr, __type, __member)
Definition __type.h:164
void crypto_destroy_tfm(void *mem, struct crypto_tfm *tfm)
Definition vsf_linux_core_crypto.c:348
#define EIO
Definition errno.h:19
int crypto_shash_init(struct shash_desc *desc)
Definition vsf_linux_core_crypto.c:426
#define SHASH_DESC_ON_STACK(shash, ctx)
Definition hash.h:33
int crypto_shash_update(struct shash_desc *desc, const u8 *data, unsigned int len)
Definition vsf_linux_core_crypto.c:500
int crypto_shash_setkey(struct crypto_shash *tfm, const u8 *key, unsigned int keylen)
Definition vsf_linux_core_crypto.c:407
int crypto_shash_finup(struct shash_desc *desc, const u8 *data, unsigned int len, u8 *out)
Definition vsf_linux_core_crypto.c:476
int crypto_shash_export(struct shash_desc *desc, void *out)
Definition vsf_linux_core_crypto.c:446
int crypto_shash_import(struct shash_desc *desc, const void *in)
Definition vsf_linux_core_crypto.c:461
int crypto_shash_final(struct shash_desc *desc, u8 *out)
Definition vsf_linux_core_crypto.c:519
struct ieee80211_ext_chansw_ie data
Definition ieee80211.h:80
void * crypto_alloc_tfm(const char *alg_name, const struct crypto_type *frontend, u32 type, u32 mask)
Definition vsf_linux_core_crypto.c:327
uint8_t u8
Definition lvgl.h:40
uint32_t u32
Definition lvgl.h:43
struct crypto_tfm base
Definition hash.h:30
struct crypto_alg base
Definition hash.h:13
unsigned int digestsize
Definition hash.h:12
unsigned int descsize
Definition hash.h:21
struct hash_alg_common halg
Definition hash.h:25
struct crypto_shash * tfm
Definition hash.h:17
vk_av_control_type_t type
Definition vsf_audio.h:170
const struct crypto_type crypto_shash_type
Definition vsf_linux_core_crypto.c:66