| /crypto/ |
| A D | ahash.c | 394 req->saved_data = req->base.data; in ahash_save_req() 396 req->base.data = req; in ahash_save_req() 402 req->base.data = req->saved_data; in ahash_restore_req() 419 req->src = req->sg_head + 1; in ahash_update_finish() 421 req->src = sg_chain_ptr(req->src); in ahash_update_finish() 477 if (req->src != req->sg_head + 1) in crypto_ahash_update() 478 sg_chain(req->sg_head, 2, req->src); in crypto_ahash_update() 479 req->src = req->sg_head; in crypto_ahash_update() 507 req->src = req->sg_head + 1; in ahash_finup_finish() 509 req->src = sg_chain_ptr(req->src); in ahash_finup_finish() [all …]
|
| A D | seqiv.c | 65 info = req->iv; in seqiv_aead_encrypt() 67 if (req->src != req->dst) in seqiv_aead_encrypt() 68 memcpy_sglist(req->dst, req->src, in seqiv_aead_encrypt() 69 req->assoclen + req->cryptlen); in seqiv_aead_encrypt() 73 info = kmemdup(req->iv, ivsize, req->base.flags & in seqiv_aead_encrypt() 80 data = req; in seqiv_aead_encrypt() 84 aead_request_set_crypt(subreq, req->dst, req->dst, in seqiv_aead_encrypt() 89 scatterwalk_map_and_copy(info, req->dst, req->assoclen, ivsize, 1); in seqiv_aead_encrypt() 115 aead_request_set_crypt(subreq, req->src, req->dst, in seqiv_aead_decrypt() 116 req->cryptlen - ivsize, req->iv); in seqiv_aead_decrypt() [all …]
|
| A D | gcm.c | 164 if (req->src != req->dst) { in crypto_gcm_init_common() 182 dst = req->src == req->dst ? pctx->src : pctx->dst; in crypto_gcm_init_crypt() 371 req->src, req->assoclen, flags) ?: in gcm_hash_init_continue() 413 req->assoclen + req->cryptlen, in gcm_enc_copy_hash() 452 crypto_gcm_init_crypt(req, req->cryptlen); in crypto_gcm_encrypt() 736 if (req->src != req->dst) { in crypto_rfc4106_crypt() 763 req = crypto_rfc4106_crypt(req); in crypto_rfc4106_encrypt() 776 req = crypto_rfc4106_crypt(req); in crypto_rfc4106_decrypt() 930 if (req->src != req->dst) { in crypto_rfc4543_crypt() 934 memcpy_sglist(req->dst, req->src, nbytes); in crypto_rfc4543_crypt() [all …]
|
| A D | echainiv.c | 41 info = req->iv; in echainiv_encrypt() 43 if (req->src != req->dst) in echainiv_encrypt() 44 memcpy_sglist(req->dst, req->src, in echainiv_encrypt() 45 req->assoclen + req->cryptlen); in echainiv_encrypt() 48 req->base.complete, req->base.data); in echainiv_encrypt() 49 aead_request_set_crypt(subreq, req->dst, req->dst, in echainiv_encrypt() 57 scatterwalk_map_and_copy(info, req->dst, req->assoclen, ivsize, 1); in echainiv_encrypt() 88 data = req->base.data; in echainiv_decrypt() 91 aead_request_set_crypt(subreq, req->src, req->dst, in echainiv_decrypt() 92 req->cryptlen - ivsize, req->iv); in echainiv_decrypt() [all …]
|
| A D | chacha20poly1305.c | 63 err = cont(req); in async_done_continue() 112 src = scatterwalk_ffwd(rctx->src, req->src, req->assoclen); in chacha_decrypt() 114 if (req->src != req->dst) in chacha_decrypt() 115 dst = scatterwalk_ffwd(rctx->dst, req->dst, req->assoclen); in chacha_decrypt() 149 if (sg != req->dst) in poly_hash() 150 memcpy_sglist(req->dst, sg, req->assoclen); in poly_hash() 153 sg = req->dst; in poly_hash() 233 return poly_hash(req); in poly_genkey() 254 src = scatterwalk_ffwd(rctx->src, req->src, req->assoclen); in chacha_encrypt() 256 if (req->src != req->dst) in chacha_encrypt() [all …]
|
| A D | cts.c | 135 err = cts_cbc_encrypt(req); in crypto_cts_encrypt_done() 161 req->base.data); in crypto_cts_encrypt() 162 skcipher_request_set_crypt(subreq, req->src, req->dst, nbytes, in crypto_cts_encrypt() 163 req->iv); in crypto_cts_encrypt() 172 skcipher_request_set_crypt(subreq, req->src, req->dst, in crypto_cts_encrypt() 173 offset, req->iv); in crypto_cts_encrypt() 256 req->base.data); in crypto_cts_decrypt() 257 skcipher_request_set_crypt(subreq, req->src, req->dst, nbytes, in crypto_cts_decrypt() 258 req->iv); in crypto_cts_decrypt() 276 skcipher_request_set_crypt(subreq, req->src, req->dst, in crypto_cts_decrypt() [all …]
|
| A D | krb5enc.c | 150 src = scatterwalk_ffwd(areq_ctx->src, req->src, req->assoclen); in krb5enc_dispatch_encrypt() 151 if (req->src == req->dst) in krb5enc_dispatch_encrypt() 154 dst = scatterwalk_ffwd(areq_ctx->dst, req->dst, req->assoclen); in krb5enc_dispatch_encrypt() 173 req->assoclen + req->cryptlen, in krb5enc_insert_checksum() 220 ahash_request_set_crypt(ahreq, req->src, hash, req->assoclen + req->cryptlen); in krb5enc_dispatch_encrypt_hash() 242 return krb5enc_dispatch_encrypt(req, aead_request_flags(req)); in krb5enc_encrypt() 292 req->assoclen + req->cryptlen - authsize); in krb5enc_dispatch_decrypt_hash() 318 src = scatterwalk_ffwd(areq_ctx->src, req->src, req->assoclen); in krb5enc_dispatch_decrypt() 321 if (req->src != req->dst) in krb5enc_dispatch_decrypt() 326 req->base.complete, req->base.data); in krb5enc_dispatch_decrypt() [all …]
|
| A D | acompress.c | 174 req->base.data = state; in acomp_save_req() 242 acomp_virt_to_sg(req); in acomp_do_one_req() 243 return comp ? crypto_acomp_reqtfm(req)->compress(req) : in acomp_do_one_req() 244 crypto_acomp_reqtfm(req)->decompress(req); in acomp_do_one_req() 250 acomp_restore_req(req); in acomp_reqchain_finish() 291 return crypto_acomp_reqtfm(req)->compress(req); in crypto_acomp_compress() 303 return crypto_acomp_reqtfm(req)->decompress(req); in crypto_acomp_decompress() 576 if (nreq == req) in acomp_request_clone() 577 return req; in acomp_request_clone() 579 if (req->src == &req->chain.ssg) in acomp_request_clone() [all …]
|
| A D | authenc.c | 123 req->assoclen + req->cryptlen, in authenc_geniv_ahash_done() 144 req->assoclen + req->cryptlen); in crypto_authenc_genicv() 152 scatterwalk_map_and_copy(hash, req->dst, req->assoclen + req->cryptlen, in crypto_authenc_genicv() 185 src = scatterwalk_ffwd(areq_ctx->src, req->src, req->assoclen); in crypto_authenc_encrypt() 188 if (req->src != req->dst) { in crypto_authenc_encrypt() 189 memcpy_sglist(req->dst, req->src, req->assoclen); in crypto_authenc_encrypt() 202 return crypto_authenc_genicv(req, aead_request_flags(req)); in crypto_authenc_encrypt() 228 if (req->src != req->dst) in crypto_authenc_decrypt_tail() 233 req->base.complete, req->base.data); in crypto_authenc_decrypt_tail() 235 req->cryptlen - authsize, req->iv); in crypto_authenc_decrypt_tail() [all …]
|
| A D | cryptd.c | 182 if (!req) in cryptd_queue_worker() 266 skcipher_request_set_crypt(subreq, req->src, req->dst, req->cryptlen, in cryptd_skcipher_prepare() 267 req->iv); in cryptd_skcipher_prepare() 289 req->base.data = req; in cryptd_skcipher_complete() 330 req->base.data = req; in cryptd_skcipher_enqueue() 500 req->base.data = req; in cryptd_hash_enqueue() 532 req->base.data = req; in cryptd_hash_complete() 767 aead_request_set_crypt(subreq, req->src, req->dst, req->cryptlen, in cryptd_aead_crypt() 768 req->iv); in cryptd_aead_crypt() 785 req->base.data = req; in cryptd_aead_crypt() [all …]
|
| A D | xts.c | 94 req = &rctx->subreq; in xts_xor_tweak() 96 skcipher_request_set_tfm(req, tfm); in xts_xor_tweak() 145 struct skcipher_request *req = data; in xts_cts_done() local 156 skcipher_request_complete(req, err); in xts_cts_done() 184 req); in xts_cts_final() 201 struct skcipher_request *req = data; in xts_encrypt_done() local 216 skcipher_request_complete(req, err); in xts_encrypt_done() 221 struct skcipher_request *req = data; in xts_decrypt_done() local 247 if (req->cryptlen < XTS_BLOCK_SIZE) in xts_init_crypt() 251 skcipher_request_set_callback(subreq, req->base.flags, compl, req); in xts_init_crypt() [all …]
|
| A D | rsa-pkcs1pad.c | 99 sg_copy_to_buffer(req->dst, sg_nents_for_len(req->dst, len), in pkcs1pad_encrypt_complete() 101 sg_copy_from_buffer(req->dst, in pkcs1pad_encrypt_complete() 107 req->dst_len = ctx->key_size; in pkcs1pad_encrypt_complete() 142 req->dst_len = ctx->key_size; in pkcs1pad_encrypt() 158 ctx->key_size - 1 - req->src_len, req->src); in pkcs1pad_encrypt() 166 req->dst, ctx->key_size - 1, req->dst_len); in pkcs1pad_encrypt() 214 if (req->dst_len < dst_len - pos) in pkcs1pad_decrypt_complete() 216 req->dst_len = dst_len - pos; in pkcs1pad_decrypt_complete() 219 sg_copy_from_buffer(req->dst, in pkcs1pad_decrypt_complete() 220 sg_nents_for_len(req->dst, req->dst_len), in pkcs1pad_decrypt_complete() [all …]
|
| A D | authencesn.c | 44 aead_request_complete(req, err); in authenc_esn_request_complete() 107 struct aead_request *req = data; in authenc_esn_geniv_ahash_done() local 110 aead_request_complete(req, err); in authenc_esn_geniv_ahash_done() 145 crypto_authenc_esn_genicv_tail(req, aead_request_flags(req)); in crypto_authenc_esn_genicv() 176 if (req->src != req->dst) { in crypto_authenc_esn_encrypt() 177 memcpy_sglist(req->dst, req->src, assoclen); in crypto_authenc_esn_encrypt() 191 return crypto_authenc_esn_genicv(req, aead_request_flags(req)); in crypto_authenc_esn_encrypt() 229 req->base.complete, req->base.data); in crypto_authenc_esn_decrypt_tail() 237 struct aead_request *req = data; in authenc_esn_verify_ahash_done() local 261 if (req->src != dst) in crypto_authenc_esn_decrypt() [all …]
|
| A D | ccm.c | 233 req->assoclen + req->cryptlen, in crypto_ccm_encrypt_done() 271 if (req->src != req->dst) { in crypto_ccm_init_crypt() 303 if (req->src != req->dst) in crypto_ccm_encrypt() 331 dst = sg_next(req->src == req->dst ? pctx->src : pctx->dst); in crypto_ccm_decrypt_done() 365 if (req->src != req->dst) in crypto_ccm_decrypt() 623 if (req->src != req->dst) { in crypto_rfc4309_crypt() 635 req->src == req->dst ? rctx->src : rctx->dst, in crypto_rfc4309_crypt() 644 if (req->assoclen != 16 && req->assoclen != 20) in crypto_rfc4309_encrypt() 647 req = crypto_rfc4309_crypt(req); in crypto_rfc4309_encrypt() 654 if (req->assoclen != 16 && req->assoclen != 20) in crypto_rfc4309_decrypt() [all …]
|
| A D | lrw.c | 153 req = &rctx->subreq; in lrw_xor_tweak() 205 return lrw_xor_tweak(req, true); in lrw_xor_tweak_post() 216 err = lrw_xor_tweak_post(req); in lrw_crypt_done() 231 req); in lrw_init_crypt() 233 skcipher_request_set_crypt(subreq, req->dst, req->dst, in lrw_init_crypt() 234 req->cryptlen, req->iv); in lrw_init_crypt() 248 lrw_init_crypt(req); in lrw_encrypt() 249 return lrw_xor_tweak_pre(req) ?: in lrw_encrypt() 251 lrw_xor_tweak_post(req); in lrw_encrypt() 259 lrw_init_crypt(req); in lrw_decrypt() [all …]
|
| A D | essiv.c | 147 crypto_cipher_encrypt_one(tctx->essiv_cipher, req->iv, req->iv); in essiv_skcipher_crypt() 150 skcipher_request_set_crypt(subreq, req->src, req->dst, req->cryptlen, in essiv_skcipher_crypt() 151 req->iv); in essiv_skcipher_crypt() 192 crypto_cipher_encrypt_one(tctx->essiv_cipher, req->iv, req->iv); in essiv_aead_crypt() 200 if (req->src == req->dst || !enc) { in essiv_aead_crypt() 201 scatterwalk_map_and_copy(req->iv, req->dst, in essiv_aead_crypt() 218 memcpy(iv, req->iv, ivsize); in essiv_aead_crypt() 235 req->src->offset); in essiv_aead_crypt() 239 sg = scatterwalk_ffwd(rctx->sg + 2, req->src, req->assoclen); in essiv_aead_crypt() 249 essiv_aead_done, req); in essiv_aead_crypt() [all …]
|
| A D | skcipher.c | 48 walk->total = req->cryptlen; in skcipher_walk_virt() 50 walk->iv = req->iv; in skcipher_walk_virt() 51 walk->oiv = req->iv; in skcipher_walk_virt() 81 walk->iv = req->iv; in skcipher_walk_aead_common() 82 walk->oiv = req->iv; in skcipher_walk_aead_common() 89 scatterwalk_start_at_pos(&walk->in, req->src, req->assoclen); in skcipher_walk_aead_common() 90 scatterwalk_start_at_pos(&walk->out, req->dst, req->assoclen); in skcipher_walk_aead_common() 104 walk->total = req->cryptlen; in skcipher_walk_aead_encrypt() 195 return alg->encrypt(req); in crypto_skcipher_encrypt() 208 return alg->decrypt(req); in crypto_skcipher_decrypt() [all …]
|
| A D | aegis128-core.c | 392 unsigned int cryptlen = req->cryptlen; in crypto_aegis128_encrypt_generic() 398 crypto_aegis128_process_ad(&state, req->src, req->assoclen, false); in crypto_aegis128_encrypt_generic() 403 scatterwalk_map_and_copy(tag.bytes, req->dst, req->assoclen + cryptlen, in crypto_aegis128_encrypt_generic() 419 scatterwalk_map_and_copy(tag.bytes, req->src, req->assoclen + cryptlen, in crypto_aegis128_decrypt_generic() 424 crypto_aegis128_process_ad(&state, req->src, req->assoclen, false); in crypto_aegis128_decrypt_generic() 453 unsigned int cryptlen = req->cryptlen; in crypto_aegis128_encrypt_simd() 458 return crypto_aegis128_encrypt_generic(req); in crypto_aegis128_encrypt_simd() 462 crypto_aegis128_process_ad(&state, req->src, req->assoclen, true); in crypto_aegis128_encrypt_simd() 467 scatterwalk_map_and_copy(tag.bytes, req->dst, req->assoclen + cryptlen, in crypto_aegis128_encrypt_simd() 485 scatterwalk_map_and_copy(tag.bytes, req->src, req->assoclen + cryptlen, in crypto_aegis128_decrypt_simd() [all …]
|
| A D | pcrypt.c | 68 struct aead_request *req = data; in pcrypt_aead_done() local 83 ret = crypto_aead_encrypt(req); in pcrypt_aead_enc() 100 u32 flags = aead_request_flags(req); in pcrypt_aead_encrypt() 112 pcrypt_aead_done, req); in pcrypt_aead_encrypt() 113 aead_request_set_crypt(creq, req->src, req->dst, in pcrypt_aead_encrypt() 114 req->cryptlen, req->iv); in pcrypt_aead_encrypt() 134 ret = crypto_aead_decrypt(req); in pcrypt_aead_dec() 151 u32 flags = aead_request_flags(req); in pcrypt_aead_decrypt() 163 pcrypt_aead_done, req); in pcrypt_aead_decrypt() 164 aead_request_set_crypt(creq, req->src, req->dst, in pcrypt_aead_decrypt() [all …]
|
| A D | adiantum.c | 284 struct scatterlist *dst = req->dst; in adiantum_finish() 330 struct skcipher_request *req = data; in adiantum_streamcipher_done() local 333 err = adiantum_finish(req); in adiantum_streamcipher_done() 335 skcipher_request_complete(req, err); in adiantum_streamcipher_done() 344 struct scatterlist *src = req->src; in adiantum_crypt() 360 adiantum_hash_header(req); in adiantum_crypt() 409 req->dst, stream_len, &rctx->rbuf); in adiantum_crypt() 411 req->base.flags, in adiantum_crypt() 414 adiantum_finish(req); in adiantum_crypt() 419 return adiantum_crypt(req, true); in adiantum_encrypt() [all …]
|
| A D | chacha.c | 48 static int chacha_stream_xor(struct skcipher_request *req, in chacha_stream_xor() argument 56 err = skcipher_walk_virt(&walk, req, false); in chacha_stream_xor() 81 struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req); in crypto_chacha_crypt_generic() 84 return chacha_stream_xor(req, ctx, req->iv, false); in crypto_chacha_crypt_generic() 89 struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req); in crypto_chacha_crypt_arch() 92 return chacha_stream_xor(req, ctx, req->iv, true); in crypto_chacha_crypt_arch() 97 struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req); in crypto_xchacha_crypt() 104 chacha_init(&state, ctx->key, req->iv); in crypto_xchacha_crypt() 116 return chacha_stream_xor(req, &subctx, real_iv, arch); in crypto_xchacha_crypt() 121 return crypto_xchacha_crypt(req, false); in crypto_xchacha_crypt_generic() [all …]
|
| A D | crypto_engine.c | 49 if (engine->cur_req == req) { in crypto_finalize_request() 56 crypto_request_complete(req, err); in crypto_finalize_request() 189 struct crypto_async_request *req, in crypto_transfer_request() argument 230 struct aead_request *req) in crypto_transfer_aead_request_to_engine() argument 243 struct akcipher_request *req) in crypto_transfer_akcipher_request_to_engine() argument 256 struct ahash_request *req) in crypto_transfer_hash_request_to_engine() argument 269 struct kpp_request *req) in crypto_transfer_kpp_request_to_engine() argument 282 struct skcipher_request *req) in crypto_transfer_skcipher_request_to_engine() argument 296 struct aead_request *req, int err) in crypto_finalize_aead_request() argument 324 struct ahash_request *req, int err) in crypto_finalize_hash_request() argument [all …]
|
| A D | zstd.c | 92 out_len = zstd_compress_cctx(ctx->cctx, dst, req->dlen, src, req->slen, in zstd_compress_one() 102 static int zstd_compress(struct acomp_req *req) in zstd_compress() argument 119 ret = acomp_walk_virt(&walk, req, true); in zstd_compress() 142 if (dcur == req->dlen && scur == req->slen) { in zstd_compress() 186 req->dlen = 0; in zstd_compress() 188 req->dlen = total_out; in zstd_compress() 204 out_len = zstd_decompress_dctx(ctx->dctx, dst, req->dlen, src, req->slen); in zstd_decompress_one() 228 ret = acomp_walk_virt(&walk, req, true); in zstd_decompress() 250 if (dcur == req->dlen && scur == req->slen) { in zstd_decompress() 283 req->dlen = 0; in zstd_decompress() [all …]
|
| A D | hctr2.c | 229 static int hctr2_finish(struct skcipher_request *req) in hctr2_finish() argument 257 struct skcipher_request *req = data; in hctr2_xctr_done() local 260 err = hctr2_finish(req); in hctr2_xctr_done() 262 skcipher_request_complete(req, err); in hctr2_xctr_done() 275 if (req->cryptlen < BLOCKCIPHER_BLOCK_SIZE) in hctr2_crypt() 290 err = hctr2_hash_tweak(req); in hctr2_crypt() 318 req->base.flags, in hctr2_crypt() 319 hctr2_xctr_done, req); in hctr2_crypt() 321 hctr2_finish(req); in hctr2_crypt() 326 return hctr2_crypt(req, true); in hctr2_encrypt() [all …]
|
| A D | akcipher.c | 30 struct akcipher_request *req; member 174 struct akcipher_request *req; in crypto_akcipher_sync_prep() local 182 len = sizeof(*req) + reqsize + mlen; in crypto_akcipher_sync_prep() 186 req = kzalloc(len, GFP_KERNEL); in crypto_akcipher_sync_prep() 187 if (!req) in crypto_akcipher_sync_prep() 190 data->req = req; in crypto_akcipher_sync_prep() 191 akcipher_request_set_tfm(req, data->tfm); in crypto_akcipher_sync_prep() 193 buf = (u8 *)(req + 1) + reqsize; in crypto_akcipher_sync_prep() 213 data->dlen = data->req->dst_len; in crypto_akcipher_sync_post() 214 kfree_sensitive(data->req); in crypto_akcipher_sync_post() [all …]
|