• Home
  • Raw
  • Download

Lines Matching refs:tfm

333 static int crypto_init_ops(struct crypto_tfm *tfm, u32 type, u32 mask)  in crypto_init_ops()  argument
335 const struct crypto_type *type_obj = tfm->__crt_alg->cra_type; in crypto_init_ops()
338 return type_obj->init(tfm, type, mask); in crypto_init_ops()
342 static void crypto_exit_ops(struct crypto_tfm *tfm) in crypto_exit_ops() argument
344 const struct crypto_type *type = tfm->__crt_alg->cra_type; in crypto_exit_ops()
346 if (type && tfm->exit) in crypto_exit_ops()
347 tfm->exit(tfm); in crypto_exit_ops()
386 struct crypto_tfm *tfm = NULL; in __crypto_alloc_tfm() local
390 tfm_size = sizeof(*tfm) + crypto_ctxsize(alg, type, mask); in __crypto_alloc_tfm()
391 tfm = kzalloc(tfm_size, GFP_KERNEL); in __crypto_alloc_tfm()
392 if (tfm == NULL) in __crypto_alloc_tfm()
395 tfm->__crt_alg = alg; in __crypto_alloc_tfm()
397 err = crypto_init_ops(tfm, type, mask); in __crypto_alloc_tfm()
401 if (!tfm->exit && alg->cra_init && (err = alg->cra_init(tfm))) in __crypto_alloc_tfm()
407 crypto_exit_ops(tfm); in __crypto_alloc_tfm()
411 kfree(tfm); in __crypto_alloc_tfm()
413 tfm = ERR_PTR(err); in __crypto_alloc_tfm()
415 return tfm; in __crypto_alloc_tfm()
443 struct crypto_tfm *tfm; in crypto_alloc_base() local
455 tfm = __crypto_alloc_tfm(alg, type, mask); in crypto_alloc_base()
456 if (!IS_ERR(tfm)) in crypto_alloc_base()
457 return tfm; in crypto_alloc_base()
460 err = PTR_ERR(tfm); in crypto_alloc_base()
480 struct crypto_tfm *tfm = NULL; in crypto_create_tfm_node() local
486 total = tfmsize + sizeof(*tfm) + frontend->extsize(alg); in crypto_create_tfm_node()
492 tfm = (struct crypto_tfm *)(mem + tfmsize); in crypto_create_tfm_node()
493 tfm->__crt_alg = alg; in crypto_create_tfm_node()
494 tfm->node = node; in crypto_create_tfm_node()
496 err = frontend->init_tfm(tfm); in crypto_create_tfm_node()
500 if (!tfm->exit && alg->cra_init && (err = alg->cra_init(tfm))) in crypto_create_tfm_node()
506 crypto_exit_ops(tfm); in crypto_create_tfm_node()
560 void *tfm; in crypto_alloc_tfm_node() local
572 tfm = crypto_create_tfm_node(alg, frontend, node); in crypto_alloc_tfm_node()
573 if (!IS_ERR(tfm)) in crypto_alloc_tfm_node()
574 return tfm; in crypto_alloc_tfm_node()
577 err = PTR_ERR(tfm); in crypto_alloc_tfm_node()
600 void crypto_destroy_tfm(void *mem, struct crypto_tfm *tfm) in crypto_destroy_tfm() argument
607 alg = tfm->__crt_alg; in crypto_destroy_tfm()
609 if (!tfm->exit && alg->cra_exit) in crypto_destroy_tfm()
610 alg->cra_exit(tfm); in crypto_destroy_tfm()
611 crypto_exit_ops(tfm); in crypto_destroy_tfm()