Lines Matching refs:alg
343 struct crypto_alg *alg) in cryptd_init_instance() argument
345 if (snprintf(inst->alg.cra_driver_name, CRYPTO_MAX_ALG_NAME, in cryptd_init_instance()
347 alg->cra_driver_name) >= CRYPTO_MAX_ALG_NAME) in cryptd_init_instance()
350 memcpy(inst->alg.cra_name, alg->cra_name, CRYPTO_MAX_ALG_NAME); in cryptd_init_instance()
352 inst->alg.cra_priority = alg->cra_priority + 50; in cryptd_init_instance()
353 inst->alg.cra_blocksize = alg->cra_blocksize; in cryptd_init_instance()
354 inst->alg.cra_alignmask = alg->cra_alignmask; in cryptd_init_instance()
359 static void *cryptd_alloc_instance(struct crypto_alg *alg, unsigned int head, in cryptd_alloc_instance() argument
372 err = cryptd_init_instance(inst, alg); in cryptd_alloc_instance()
391 struct crypto_alg *alg; in cryptd_create_blkcipher() local
398 alg = crypto_get_attr_alg(tb, type, mask); in cryptd_create_blkcipher()
399 if (IS_ERR(alg)) in cryptd_create_blkcipher()
400 return PTR_ERR(alg); in cryptd_create_blkcipher()
402 inst = cryptd_alloc_instance(alg, 0, sizeof(*ctx)); in cryptd_create_blkcipher()
410 err = crypto_init_spawn(&ctx->spawn, alg, inst, in cryptd_create_blkcipher()
416 if (alg->cra_flags & CRYPTO_ALG_INTERNAL) in cryptd_create_blkcipher()
418 inst->alg.cra_flags = type; in cryptd_create_blkcipher()
419 inst->alg.cra_type = &crypto_ablkcipher_type; in cryptd_create_blkcipher()
421 inst->alg.cra_ablkcipher.ivsize = alg->cra_blkcipher.ivsize; in cryptd_create_blkcipher()
422 inst->alg.cra_ablkcipher.min_keysize = alg->cra_blkcipher.min_keysize; in cryptd_create_blkcipher()
423 inst->alg.cra_ablkcipher.max_keysize = alg->cra_blkcipher.max_keysize; in cryptd_create_blkcipher()
425 inst->alg.cra_ablkcipher.geniv = alg->cra_blkcipher.geniv; in cryptd_create_blkcipher()
427 inst->alg.cra_ctxsize = sizeof(struct cryptd_blkcipher_ctx); in cryptd_create_blkcipher()
429 inst->alg.cra_init = cryptd_blkcipher_init_tfm; in cryptd_create_blkcipher()
430 inst->alg.cra_exit = cryptd_blkcipher_exit_tfm; in cryptd_create_blkcipher()
432 inst->alg.cra_ablkcipher.setkey = cryptd_blkcipher_setkey; in cryptd_create_blkcipher()
433 inst->alg.cra_ablkcipher.encrypt = cryptd_blkcipher_encrypt_enqueue; in cryptd_create_blkcipher()
434 inst->alg.cra_ablkcipher.decrypt = cryptd_blkcipher_decrypt_enqueue; in cryptd_create_blkcipher()
444 crypto_mod_put(alg); in cryptd_create_blkcipher()
597 struct skcipher_alg *alg; in cryptd_create_skcipher() local
624 alg = crypto_spawn_skcipher_alg(&ctx->spawn); in cryptd_create_skcipher()
625 err = cryptd_init_instance(skcipher_crypto_instance(inst), &alg->base); in cryptd_create_skcipher()
629 inst->alg.base.cra_flags = CRYPTO_ALG_ASYNC | in cryptd_create_skcipher()
630 (alg->base.cra_flags & CRYPTO_ALG_INTERNAL); in cryptd_create_skcipher()
632 inst->alg.ivsize = crypto_skcipher_alg_ivsize(alg); in cryptd_create_skcipher()
633 inst->alg.chunksize = crypto_skcipher_alg_chunksize(alg); in cryptd_create_skcipher()
634 inst->alg.min_keysize = crypto_skcipher_alg_min_keysize(alg); in cryptd_create_skcipher()
635 inst->alg.max_keysize = crypto_skcipher_alg_max_keysize(alg); in cryptd_create_skcipher()
637 inst->alg.base.cra_ctxsize = sizeof(struct cryptd_skcipher_ctx); in cryptd_create_skcipher()
639 inst->alg.init = cryptd_skcipher_init_tfm; in cryptd_create_skcipher()
640 inst->alg.exit = cryptd_skcipher_exit_tfm; in cryptd_create_skcipher()
642 inst->alg.setkey = cryptd_skcipher_setkey; in cryptd_create_skcipher()
643 inst->alg.encrypt = cryptd_skcipher_encrypt_enqueue; in cryptd_create_skcipher()
644 inst->alg.decrypt = cryptd_skcipher_decrypt_enqueue; in cryptd_create_skcipher()
873 struct crypto_alg *alg; in cryptd_create_hash() local
884 alg = &salg->base; in cryptd_create_hash()
885 inst = cryptd_alloc_instance(alg, ahash_instance_headroom(), in cryptd_create_hash()
899 inst->alg.halg.base.cra_flags = CRYPTO_ALG_ASYNC | in cryptd_create_hash()
900 (alg->cra_flags & (CRYPTO_ALG_INTERNAL | in cryptd_create_hash()
903 inst->alg.halg.digestsize = salg->digestsize; in cryptd_create_hash()
904 inst->alg.halg.statesize = salg->statesize; in cryptd_create_hash()
905 inst->alg.halg.base.cra_ctxsize = sizeof(struct cryptd_hash_ctx); in cryptd_create_hash()
907 inst->alg.halg.base.cra_init = cryptd_hash_init_tfm; in cryptd_create_hash()
908 inst->alg.halg.base.cra_exit = cryptd_hash_exit_tfm; in cryptd_create_hash()
910 inst->alg.init = cryptd_hash_init_enqueue; in cryptd_create_hash()
911 inst->alg.update = cryptd_hash_update_enqueue; in cryptd_create_hash()
912 inst->alg.final = cryptd_hash_final_enqueue; in cryptd_create_hash()
913 inst->alg.finup = cryptd_hash_finup_enqueue; in cryptd_create_hash()
914 inst->alg.export = cryptd_hash_export; in cryptd_create_hash()
915 inst->alg.import = cryptd_hash_import; in cryptd_create_hash()
917 inst->alg.setkey = cryptd_hash_setkey; in cryptd_create_hash()
918 inst->alg.digest = cryptd_hash_digest_enqueue; in cryptd_create_hash()
928 crypto_mod_put(alg); in cryptd_create_hash()
1056 struct aead_alg *alg; in cryptd_create_aead() local
1080 alg = crypto_spawn_aead_alg(&ctx->aead_spawn); in cryptd_create_aead()
1081 err = cryptd_init_instance(aead_crypto_instance(inst), &alg->base); in cryptd_create_aead()
1085 inst->alg.base.cra_flags = CRYPTO_ALG_ASYNC | in cryptd_create_aead()
1086 (alg->base.cra_flags & CRYPTO_ALG_INTERNAL); in cryptd_create_aead()
1087 inst->alg.base.cra_ctxsize = sizeof(struct cryptd_aead_ctx); in cryptd_create_aead()
1089 inst->alg.ivsize = crypto_aead_alg_ivsize(alg); in cryptd_create_aead()
1090 inst->alg.maxauthsize = crypto_aead_alg_maxauthsize(alg); in cryptd_create_aead()
1092 inst->alg.init = cryptd_aead_init_tfm; in cryptd_create_aead()
1093 inst->alg.exit = cryptd_aead_exit_tfm; in cryptd_create_aead()
1094 inst->alg.setkey = cryptd_aead_setkey; in cryptd_create_aead()
1095 inst->alg.setauthsize = cryptd_aead_setauthsize; in cryptd_create_aead()
1096 inst->alg.encrypt = cryptd_aead_encrypt_enqueue; in cryptd_create_aead()
1097 inst->alg.decrypt = cryptd_aead_decrypt_enqueue; in cryptd_create_aead()
1141 switch (inst->alg.cra_flags & CRYPTO_ALG_TYPE_MASK) { in cryptd_free()