Lines Matching defs:inst
502 struct aead_instance *inst = aead_alg_instance(tfm);
503 struct chachapoly_instance_ctx *ictx = aead_instance_ctx(inst);
546 static void chachapoly_free(struct aead_instance *inst)
548 struct chachapoly_instance_ctx *ctx = aead_instance_ctx(inst);
552 kfree(inst);
559 struct aead_instance *inst;
572 inst = kzalloc(sizeof(*inst) + sizeof(*ctx), GFP_KERNEL);
573 if (!inst)
575 ctx = aead_instance_ctx(inst);
578 err = crypto_grab_skcipher(&ctx->chacha, aead_crypto_instance(inst),
584 err = crypto_grab_ahash(&ctx->poly, aead_crypto_instance(inst),
601 if (snprintf(inst->alg.base.cra_name, CRYPTO_MAX_ALG_NAME,
605 if (snprintf(inst->alg.base.cra_driver_name, CRYPTO_MAX_ALG_NAME,
610 inst->alg.base.cra_priority = (chacha->base.cra_priority +
612 inst->alg.base.cra_blocksize = 1;
613 inst->alg.base.cra_alignmask = chacha->base.cra_alignmask |
615 inst->alg.base.cra_ctxsize = sizeof(struct chachapoly_ctx) +
617 inst->alg.ivsize = ivsize;
618 inst->alg.chunksize = crypto_skcipher_alg_chunksize(chacha);
619 inst->alg.maxauthsize = POLY1305_DIGEST_SIZE;
620 inst->alg.init = chachapoly_init;
621 inst->alg.exit = chachapoly_exit;
622 inst->alg.encrypt = chachapoly_encrypt;
623 inst->alg.decrypt = chachapoly_decrypt;
624 inst->alg.setkey = chachapoly_setkey;
625 inst->alg.setauthsize = chachapoly_setauthsize;
627 inst->free = chachapoly_free;
629 err = aead_register_instance(tmpl, inst);
632 chachapoly_free(inst);