/Linux-v5.4/net/ipv6/ |
D | esp6.c | 53 static void *esp_alloc_tmp(struct crypto_aead *aead, int nfrags, int seqihlen) in esp_alloc_tmp() argument 59 len += crypto_aead_ivsize(aead); in esp_alloc_tmp() 62 len += crypto_aead_alignmask(aead) & in esp_alloc_tmp() 67 len += sizeof(struct aead_request) + crypto_aead_reqsize(aead); in esp_alloc_tmp() 80 static inline u8 *esp_tmp_iv(struct crypto_aead *aead, void *tmp, int seqhilen) in esp_tmp_iv() argument 82 return crypto_aead_ivsize(aead) ? in esp_tmp_iv() 84 crypto_aead_alignmask(aead) + 1) : tmp + seqhilen; in esp_tmp_iv() 87 static inline struct aead_request *esp_tmp_req(struct crypto_aead *aead, u8 *iv) in esp_tmp_req() argument 91 req = (void *)PTR_ALIGN(iv + crypto_aead_ivsize(aead), in esp_tmp_req() 93 aead_request_set_tfm(req, aead); in esp_tmp_req() [all …]
|
D | esp6_offload.c | 179 struct crypto_aead *aead; in esp6_gso_segment() local 192 aead = x->data; in esp6_gso_segment() 198 if (!pskb_may_pull(skb, sizeof(*esph) + crypto_aead_ivsize(aead))) in esp6_gso_segment() 201 __skb_pull(skb, sizeof(*esph) + crypto_aead_ivsize(aead)); in esp6_gso_segment() 217 struct crypto_aead *aead = x->data; in esp6_input_tail() local 220 if (!pskb_may_pull(skb, sizeof(struct ip_esp_hdr) + crypto_aead_ivsize(aead))) in esp6_input_tail() 237 struct crypto_aead *aead; in esp6_xmit() local 258 aead = x->data; in esp6_xmit() 259 alen = crypto_aead_authsize(aead); in esp6_xmit() 264 blksize = ALIGN(crypto_aead_blocksize(aead), 4); in esp6_xmit()
|
/Linux-v5.4/net/ipv4/ |
D | esp4.c | 44 static void *esp_alloc_tmp(struct crypto_aead *aead, int nfrags, int extralen) in esp_alloc_tmp() argument 50 len += crypto_aead_ivsize(aead); in esp_alloc_tmp() 53 len += crypto_aead_alignmask(aead) & in esp_alloc_tmp() 58 len += sizeof(struct aead_request) + crypto_aead_reqsize(aead); in esp_alloc_tmp() 71 static inline u8 *esp_tmp_iv(struct crypto_aead *aead, void *tmp, int extralen) in esp_tmp_iv() argument 73 return crypto_aead_ivsize(aead) ? in esp_tmp_iv() 75 crypto_aead_alignmask(aead) + 1) : tmp + extralen; in esp_tmp_iv() 78 static inline struct aead_request *esp_tmp_req(struct crypto_aead *aead, u8 *iv) in esp_tmp_req() argument 82 req = (void *)PTR_ALIGN(iv + crypto_aead_ivsize(aead), in esp_tmp_req() 84 aead_request_set_tfm(req, aead); in esp_tmp_req() [all …]
|
D | esp4_offload.c | 152 struct crypto_aead *aead; in esp4_gso_segment() local 165 aead = x->data; in esp4_gso_segment() 171 if (!pskb_may_pull(skb, sizeof(*esph) + crypto_aead_ivsize(aead))) in esp4_gso_segment() 174 __skb_pull(skb, sizeof(*esph) + crypto_aead_ivsize(aead)); in esp4_gso_segment() 192 struct crypto_aead *aead = x->data; in esp_input_tail() local 195 if (!pskb_may_pull(skb, sizeof(struct ip_esp_hdr) + crypto_aead_ivsize(aead))) in esp_input_tail() 211 struct crypto_aead *aead; in esp_xmit() local 234 aead = x->data; in esp_xmit() 235 alen = crypto_aead_authsize(aead); in esp_xmit() 240 blksize = ALIGN(crypto_aead_blocksize(aead), 4); in esp_xmit()
|
/Linux-v5.4/crypto/ |
D | aead.c | 90 struct crypto_aead *aead = crypto_aead_reqtfm(req); in crypto_aead_encrypt() local 91 struct crypto_alg *alg = aead->base.__crt_alg; in crypto_aead_encrypt() 96 if (crypto_aead_get_flags(aead) & CRYPTO_TFM_NEED_KEY) in crypto_aead_encrypt() 99 ret = crypto_aead_alg(aead)->encrypt(req); in crypto_aead_encrypt() 107 struct crypto_aead *aead = crypto_aead_reqtfm(req); in crypto_aead_decrypt() local 108 struct crypto_alg *alg = aead->base.__crt_alg; in crypto_aead_decrypt() 113 if (crypto_aead_get_flags(aead) & CRYPTO_TFM_NEED_KEY) in crypto_aead_decrypt() 115 else if (req->cryptlen < crypto_aead_authsize(aead)) in crypto_aead_decrypt() 118 ret = crypto_aead_alg(aead)->decrypt(req); in crypto_aead_decrypt() 126 struct crypto_aead *aead = __crypto_aead_cast(tfm); in crypto_aead_exit_tfm() local [all …]
|
D | algif_aead.c | 40 struct crypto_aead *aead; member 51 struct crypto_aead *tfm = aeadc->aead; in aead_sufficient_data() 68 struct crypto_aead *tfm = aeadc->aead; in aead_sendmsg() 97 struct crypto_aead *tfm = aeadc->aead; in _aead_recvmsg() 396 if (crypto_aead_get_flags(tfm->aead) & CRYPTO_TFM_NEED_KEY) in aead_check_key() 476 struct crypto_aead *aead; in aead_bind() local 483 aead = crypto_alloc_aead(name, type, mask); in aead_bind() 484 if (IS_ERR(aead)) { in aead_bind() 486 return ERR_CAST(aead); in aead_bind() 491 crypto_free_aead(aead); in aead_bind() [all …]
|
D | gcm.c | 45 struct crypto_aead_spawn aead; member 93 static int crypto_gcm_setkey(struct crypto_aead *aead, const u8 *key, in crypto_gcm_setkey() argument 96 struct crypto_gcm_ctx *ctx = crypto_aead_ctx(aead); in crypto_gcm_setkey() 111 crypto_skcipher_set_flags(ctr, crypto_aead_get_flags(aead) & in crypto_gcm_setkey() 114 crypto_aead_set_flags(aead, crypto_skcipher_get_flags(ctr) & in crypto_gcm_setkey() 141 crypto_ahash_set_flags(ghash, crypto_aead_get_flags(aead) & in crypto_gcm_setkey() 144 crypto_aead_set_flags(aead, crypto_ahash_get_flags(ghash) & in crypto_gcm_setkey() 186 struct crypto_aead *aead = crypto_aead_reqtfm(req); in crypto_gcm_init_crypt() local 187 struct crypto_gcm_ctx *ctx = crypto_aead_ctx(aead); in crypto_gcm_init_crypt() 420 struct crypto_aead *aead = crypto_aead_reqtfm(req); in gcm_enc_copy_hash() local [all …]
|
D | ccm.c | 88 static int crypto_ccm_setkey(struct crypto_aead *aead, const u8 *key, in crypto_ccm_setkey() argument 91 struct crypto_ccm_ctx *ctx = crypto_aead_ctx(aead); in crypto_ccm_setkey() 97 crypto_skcipher_set_flags(ctr, crypto_aead_get_flags(aead) & in crypto_ccm_setkey() 100 crypto_aead_set_flags(aead, crypto_skcipher_get_flags(ctr) & in crypto_ccm_setkey() 106 crypto_ahash_set_flags(mac, crypto_aead_get_flags(aead) & in crypto_ccm_setkey() 109 crypto_aead_set_flags(aead, crypto_ahash_get_flags(mac) & in crypto_ccm_setkey() 138 struct crypto_aead *aead = crypto_aead_reqtfm(req); in format_input() local 143 m = crypto_aead_authsize(aead); in format_input() 180 struct crypto_aead *aead = crypto_aead_reqtfm(req); in crypto_ccm_auth() local 181 struct crypto_ccm_ctx *ctx = crypto_aead_ctx(aead); in crypto_ccm_auth() [all …]
|
D | essiv.c | 52 struct crypto_aead *aead; member 111 crypto_aead_clear_flags(tctx->u.aead, CRYPTO_TFM_REQ_MASK); in essiv_aead_setkey() 112 crypto_aead_set_flags(tctx->u.aead, crypto_aead_get_flags(tfm) & in essiv_aead_setkey() 114 err = crypto_aead_setkey(tctx->u.aead, key, keylen); in essiv_aead_setkey() 115 crypto_aead_set_flags(tfm, crypto_aead_get_flags(tctx->u.aead) & in essiv_aead_setkey() 148 return crypto_aead_setauthsize(tctx->u.aead, authsize); in essiv_aead_setauthsize() 259 aead_request_set_tfm(subreq, tctx->u.aead); in essiv_aead_crypt() 340 struct crypto_aead *aead; in essiv_aead_init_tfm() local 347 aead = crypto_spawn_aead(&ictx->u.aead_spawn); in essiv_aead_init_tfm() 348 if (IS_ERR(aead)) in essiv_aead_init_tfm() [all …]
|
/Linux-v5.4/drivers/crypto/cavium/nitrox/ |
D | nitrox_aead.c | 34 static int nitrox_aes_gcm_setkey(struct crypto_aead *aead, const u8 *key, in nitrox_aes_gcm_setkey() argument 38 struct nitrox_crypto_ctx *nctx = crypto_aead_ctx(aead); in nitrox_aes_gcm_setkey() 44 crypto_aead_set_flags(aead, CRYPTO_TFM_RES_BAD_KEY_LEN); in nitrox_aes_gcm_setkey() 61 static int nitrox_aead_setauthsize(struct crypto_aead *aead, in nitrox_aead_setauthsize() argument 64 struct nitrox_crypto_ctx *nctx = crypto_aead_ctx(aead); in nitrox_aead_setauthsize() 72 aead->authsize = authsize; in nitrox_aead_setauthsize() 191 struct crypto_aead *aead = crypto_aead_reqtfm(areq); in nitrox_aes_gcm_enc() local 192 struct nitrox_crypto_ctx *nctx = crypto_aead_ctx(aead); in nitrox_aes_gcm_enc() 203 rctx->dstlen = rctx->srclen + aead->authsize; in nitrox_aes_gcm_enc() 222 struct crypto_aead *aead = crypto_aead_reqtfm(areq); in nitrox_aes_gcm_dec() local [all …]
|
/Linux-v5.4/drivers/crypto/caam/ |
D | caamalg.c | 89 struct aead_alg aead; member 117 static int aead_null_set_sh_desc(struct crypto_aead *aead) in aead_null_set_sh_desc() argument 119 struct caam_ctx *ctx = crypto_aead_ctx(aead); in aead_null_set_sh_desc() 167 static int aead_set_sh_desc(struct crypto_aead *aead) in aead_set_sh_desc() argument 169 struct caam_aead_alg *alg = container_of(crypto_aead_alg(aead), in aead_set_sh_desc() 170 struct caam_aead_alg, aead); in aead_set_sh_desc() 171 unsigned int ivsize = crypto_aead_ivsize(aead); in aead_set_sh_desc() 172 struct caam_ctx *ctx = crypto_aead_ctx(aead); in aead_set_sh_desc() 188 return aead_null_set_sh_desc(aead); in aead_set_sh_desc() 308 static int gcm_set_sh_desc(struct crypto_aead *aead) in gcm_set_sh_desc() argument [all …]
|
D | caamalg_qi.c | 43 struct aead_alg aead; member 72 static int aead_set_sh_desc(struct crypto_aead *aead) in aead_set_sh_desc() argument 74 struct caam_aead_alg *alg = container_of(crypto_aead_alg(aead), in aead_set_sh_desc() 75 typeof(*alg), aead); in aead_set_sh_desc() 76 struct caam_ctx *ctx = crypto_aead_ctx(aead); in aead_set_sh_desc() 77 unsigned int ivsize = crypto_aead_ivsize(aead); in aead_set_sh_desc() 187 static int aead_setkey(struct crypto_aead *aead, const u8 *key, in aead_setkey() argument 190 struct caam_ctx *ctx = crypto_aead_ctx(aead); in aead_setkey() 245 ret = aead_set_sh_desc(aead); in aead_setkey() 271 crypto_aead_set_flags(aead, CRYPTO_TFM_RES_BAD_KEY_LEN); in aead_setkey() [all …]
|
D | caamalg_qi2.c | 50 struct aead_alg aead; member 163 static int aead_set_sh_desc(struct crypto_aead *aead) in aead_set_sh_desc() argument 165 struct caam_aead_alg *alg = container_of(crypto_aead_alg(aead), in aead_set_sh_desc() 166 typeof(*alg), aead); in aead_set_sh_desc() 167 struct caam_ctx *ctx = crypto_aead_ctx(aead); in aead_set_sh_desc() 168 unsigned int ivsize = crypto_aead_ivsize(aead); in aead_set_sh_desc() 280 static int aead_setkey(struct crypto_aead *aead, const u8 *key, in aead_setkey() argument 283 struct caam_ctx *ctx = crypto_aead_ctx(aead); in aead_setkey() 314 return aead_set_sh_desc(aead); in aead_setkey() 316 crypto_aead_set_flags(aead, CRYPTO_TFM_RES_BAD_KEY_LEN); in aead_setkey() [all …]
|
/Linux-v5.4/Documentation/crypto/ |
D | api-aead.rst | 4 .. kernel-doc:: include/crypto/aead.h 7 .. kernel-doc:: include/crypto/aead.h 13 .. kernel-doc:: include/crypto/aead.h 19 .. kernel-doc:: include/crypto/aead.h 22 .. kernel-doc:: include/crypto/aead.h
|
/Linux-v5.4/include/crypto/internal/ |
D | aead.h | 53 static inline struct aead_instance *aead_alg_instance(struct crypto_aead *aead) in aead_alg_instance() argument 55 return aead_instance(crypto_tfm_alg_instance(&aead->base)); in aead_alg_instance() 110 static inline void crypto_aead_set_reqsize(struct crypto_aead *aead, in crypto_aead_set_reqsize() argument 113 aead->reqsize = reqsize; in crypto_aead_set_reqsize() 121 static inline unsigned int crypto_aead_maxauthsize(struct crypto_aead *aead) in crypto_aead_maxauthsize() argument 123 return crypto_aead_alg_maxauthsize(crypto_aead_alg(aead)); in crypto_aead_maxauthsize()
|
/Linux-v5.4/net/xfrm/ |
D | xfrm_algo.c | 31 .aead = { 50 .aead = { 69 .aead = { 88 .aead = { 107 .aead = { 126 .aead = { 145 .aead = { 164 .aead = { 734 const struct xfrm_aead_name *aead = data; in xfrm_aead_name_match() local 735 const char *name = aead->name; in xfrm_aead_name_match() [all …]
|
/Linux-v5.4/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ |
D | ipsec.c | 156 struct crypto_aead *aead; in mlx5e_ipsec_build_accel_xfrm_attrs() local 163 crypto_data_len = (x->aead->alg_key_len + 7) / 8; in mlx5e_ipsec_build_accel_xfrm_attrs() 166 memcpy(aes_gcm->aes_key, x->aead->alg_key, key_len); in mlx5e_ipsec_build_accel_xfrm_attrs() 170 aead = x->data; in mlx5e_ipsec_build_accel_xfrm_attrs() 171 geniv_ctx = crypto_aead_ctx(aead); in mlx5e_ipsec_build_accel_xfrm_attrs() 172 ivsize = crypto_aead_ivsize(aead); in mlx5e_ipsec_build_accel_xfrm_attrs() 174 memcpy(&aes_gcm->salt, x->aead->alg_key + key_len, in mlx5e_ipsec_build_accel_xfrm_attrs() 178 aes_gcm->icv_len = x->aead->alg_icv_len; in mlx5e_ipsec_build_accel_xfrm_attrs() 247 if (!x->aead) { in mlx5e_xfrm_validate_state() 251 if (x->aead->alg_icv_len != 128) { in mlx5e_xfrm_validate_state() [all …]
|
/Linux-v5.4/arch/arm64/crypto/ |
D | aes-ce-ccm-glue.c | 69 struct crypto_aead *aead = crypto_aead_reqtfm(req); in ccm_init_mac() local 97 maciv[0] |= (crypto_aead_authsize(aead) - 2) << 2; in ccm_init_mac() 142 struct crypto_aead *aead = crypto_aead_reqtfm(req); in ccm_calculate_auth_mac() local 143 struct crypto_aes_ctx *ctx = crypto_aead_ctx(aead); in ccm_calculate_auth_mac() 230 struct crypto_aead *aead = crypto_aead_reqtfm(req); in ccm_encrypt() local 231 struct crypto_aes_ctx *ctx = crypto_aead_ctx(aead); in ccm_encrypt() 280 crypto_aead_authsize(aead), 1); in ccm_encrypt() 287 struct crypto_aead *aead = crypto_aead_reqtfm(req); in ccm_decrypt() local 288 struct crypto_aes_ctx *ctx = crypto_aead_ctx(aead); in ccm_decrypt() 289 unsigned int authsize = crypto_aead_authsize(aead); in ccm_decrypt()
|
/Linux-v5.4/arch/x86/crypto/ |
D | aegis128-aesni-glue.c | 135 static struct aegis_ctx *crypto_aegis128_aesni_ctx(struct crypto_aead *aead) in crypto_aegis128_aesni_ctx() argument 137 u8 *ctx = crypto_aead_ctx(aead); in crypto_aegis128_aesni_ctx() 142 static int crypto_aegis128_aesni_setkey(struct crypto_aead *aead, const u8 *key, in crypto_aegis128_aesni_setkey() argument 145 struct aegis_ctx *ctx = crypto_aegis128_aesni_ctx(aead); in crypto_aegis128_aesni_setkey() 148 crypto_aead_set_flags(aead, CRYPTO_TFM_RES_BAD_KEY_LEN); in crypto_aegis128_aesni_setkey() 232 static int crypto_aegis128_aesni_init_tfm(struct crypto_aead *aead) in crypto_aegis128_aesni_init_tfm() argument 237 static void crypto_aegis128_aesni_exit_tfm(struct crypto_aead *aead) in crypto_aegis128_aesni_exit_tfm() argument
|
/Linux-v5.4/net/tls/ |
D | tls_device_fallback.c | 49 struct crypto_aead *aead, char *aad, in tls_enc_record() argument 121 struct crypto_aead *aead) in tls_init_aead_request() argument 123 aead_request_set_tfm(aead_req, aead); in tls_init_aead_request() 127 static struct aead_request *tls_alloc_aead_request(struct crypto_aead *aead, in tls_alloc_aead_request() argument 131 crypto_aead_reqsize(aead); in tls_alloc_aead_request() 136 tls_init_aead_request(aead_req, aead); in tls_alloc_aead_request() 141 struct crypto_aead *aead, struct scatterlist *sg_in, in tls_enc_records() argument 152 rc = tls_enc_record(aead_req, aead, aad, iv, in tls_enc_records()
|
/Linux-v5.4/drivers/net/netdevsim/ |
D | ipsec.c | 93 if (!xs->aead) { in nsim_ipsec_parse_proto_keys() 98 if (xs->aead->alg_icv_len != NSIM_IPSEC_AUTH_BITS) { in nsim_ipsec_parse_proto_keys() 104 key_data = &xs->aead->alg_key[0]; in nsim_ipsec_parse_proto_keys() 105 key_len = xs->aead->alg_key_len; in nsim_ipsec_parse_proto_keys() 106 alg_name = xs->aead->alg_name; in nsim_ipsec_parse_proto_keys() 165 sa.crypt = xs->ealg || xs->aead; in nsim_ipsec_add_sa()
|
/Linux-v5.4/tools/testing/selftests/net/ |
D | l2tp.sh | 252 spi 0x1000 proto esp aead 'rfc4106(gcm(aes))' \ 257 spi 0x1001 proto esp aead 'rfc4106(gcm(aes))' \ 262 spi 0x1000 proto esp aead 'rfc4106(gcm(aes))' \ 267 spi 0x1001 proto esp aead 'rfc4106(gcm(aes))' \ 291 spi 0x1000 proto esp aead 'rfc4106(gcm(aes))' \ 296 spi 0x1001 proto esp aead 'rfc4106(gcm(aes))' \ 301 spi 0x1000 proto esp aead 'rfc4106(gcm(aes))' \ 306 spi 0x1001 proto esp aead 'rfc4106(gcm(aes))' \
|
/Linux-v5.4/drivers/net/ethernet/intel/ixgbe/ |
D | ixgbe_ipsec.c | 435 if (!xs->aead) { in ixgbe_ipsec_parse_proto_keys() 440 if (xs->aead->alg_icv_len != IXGBE_IPSEC_AUTH_BITS) { in ixgbe_ipsec_parse_proto_keys() 446 key_data = &xs->aead->alg_key[0]; in ixgbe_ipsec_parse_proto_keys() 447 key_len = xs->aead->alg_key_len; in ixgbe_ipsec_parse_proto_keys() 448 alg_name = xs->aead->alg_name; in ixgbe_ipsec_parse_proto_keys() 604 rsa.decrypt = xs->ealg || xs->aead; in ixgbe_ipsec_add_sa() 714 tsa.encrypt = xs->ealg || xs->aead; in ixgbe_ipsec_add_sa() 928 aead_len = sizeof(*xs->aead) + IXGBE_IPSEC_KEY_BITS / 8; in ixgbe_ipsec_vf_add_sa() 929 xs->aead = kzalloc(aead_len, GFP_KERNEL); in ixgbe_ipsec_vf_add_sa() 930 if (unlikely(!xs->aead)) { in ixgbe_ipsec_vf_add_sa() [all …]
|
/Linux-v5.4/drivers/crypto/bcm/ |
D | cipher.c | 2571 struct crypto_aead *aead = crypto_aead_reqtfm(req); in aead_need_fallback() local 2572 struct iproc_ctx_s *ctx = crypto_aead_ctx(aead); in aead_need_fallback() 2641 struct crypto_aead *aead = crypto_aead_reqtfm(req); in aead_complete() local 2645 areq->tfm = crypto_aead_tfm(aead); in aead_complete() 2655 struct crypto_aead *aead = crypto_aead_reqtfm(req); in aead_do_fallback() local 2656 struct crypto_tfm *tfm = crypto_aead_tfm(aead); in aead_do_fallback() 2687 aead_request_set_tfm(req, aead); in aead_do_fallback() 2701 struct crypto_aead *aead = crypto_aead_reqtfm(req); in aead_enqueue() local 2702 struct iproc_ctx_s *ctx = crypto_aead_ctx(aead); in aead_enqueue() 3129 .alg.aead = { [all …]
|
/Linux-v5.4/drivers/crypto/ |
D | picoxcell_crypto.c | 312 struct crypto_aead *aead = crypto_aead_reqtfm(areq); in spacc_aead_make_ddts() local 323 total += crypto_aead_authsize(aead); in spacc_aead_make_ddts() 414 struct crypto_aead *aead = crypto_aead_reqtfm(areq); in spacc_aead_free_ddts() local 416 (req->is_encrypt ? crypto_aead_authsize(aead) : 0); in spacc_aead_free_ddts() 417 struct spacc_aead_ctx *aead_ctx = crypto_aead_ctx(aead); in spacc_aead_free_ddts() 513 struct crypto_aead *aead = crypto_aead_reqtfm(aead_req); in spacc_aead_need_fallback() local 514 struct aead_alg *alg = crypto_aead_alg(aead); in spacc_aead_need_fallback() 516 struct spacc_aead_ctx *ctx = crypto_aead_ctx(aead); in spacc_aead_need_fallback() 559 struct crypto_aead *aead = crypto_aead_reqtfm(aead_req); in spacc_aead_submit() local 560 unsigned int authsize = crypto_aead_authsize(aead); in spacc_aead_submit() [all …]
|