Lines Matching refs:caead

863 cryptodev_aead(struct csession *cse, struct crypt_aead *caead)  in cryptodev_aead()  argument
871 if (caead->len > 256*1024-4 || caead->aadlen > 256*1024-4) { in cryptodev_aead()
876 if ((caead->len % cse->blocksize) != 0) { in cryptodev_aead()
881 if (cse->hashsize == 0 || caead->tag == NULL) { in cryptodev_aead()
891 if (caead->flags & COP_F_CIPHER_FIRST) { in cryptodev_aead()
892 if (caead->op != COP_ENCRYPT) { in cryptodev_aead()
898 cod = cod_alloc(cse, caead->aadlen, caead->len + cse->hashsize); in cryptodev_aead()
899 dst = caead->dst; in cryptodev_aead()
904 error = copyin(caead->aad, cod->aad, caead->aadlen); in cryptodev_aead()
906 error = copyin(caead->aad, cod->buf, caead->aadlen); in cryptodev_aead()
913 crp->crp_aad_length = caead->aadlen; in cryptodev_aead()
918 crp->crp_payload_start = caead->aadlen; in cryptodev_aead()
919 error = copyin(caead->src, cod->buf + crp->crp_payload_start, in cryptodev_aead()
920 caead->len); in cryptodev_aead()
925 crp->crp_payload_length = caead->len; in cryptodev_aead()
926 if (caead->op == COP_ENCRYPT && cod->obuf != NULL) in cryptodev_aead()
928 caead->len; in cryptodev_aead()
930 crp->crp_digest_start = crp->crp_payload_start + caead->len; in cryptodev_aead()
936 switch (caead->op) { in cryptodev_aead()
957 crp->crp_flags = CRYPTO_F_CBIMM | (caead->flags & COP_F_BATCH); in cryptodev_aead()
958 crypto_use_buf(crp, cod->buf, crp->crp_payload_start + caead->len + in cryptodev_aead()
961 crypto_use_output_buf(crp, cod->obuf, caead->len + in cryptodev_aead()
966 if (caead->iv) { in cryptodev_aead()
973 caead->ivlen == AES_BLOCK_LEN) in cryptodev_aead()
974 caead->ivlen = AES_XTS_IV_LEN; in cryptodev_aead()
981 if (caead->ivlen != cse->ivsize) { in cryptodev_aead()
987 error = copyin(caead->iv, crp->crp_iv, cse->ivsize); in cryptodev_aead()
1000 error = copyin(caead->tag, cod->buf + crp->crp_digest_start, in cryptodev_aead()
1038 if (caead->dst != NULL) { in cryptodev_aead()
1050 crp->crp_digest_start, caead->tag, cse->hashsize); in cryptodev_aead()
1125 struct crypt_aead *caead; in crypto_ioctl() local
1225 caead = (struct crypt_aead *)data; in crypto_ioctl()
1226 cse = cse_find(fcr, caead->ses); in crypto_ioctl()
1231 error = cryptodev_aead(cse, caead); in crypto_ioctl()