Lines Matching refs:cop
636 cryptodev_op(struct csession *cse, const struct crypt_op *cop) in cryptodev_op() argument
644 if (cop->len > 256*1024-4) { in cryptodev_op()
649 if ((cop->len % cse->blocksize) != 0) { in cryptodev_op()
654 if (cop->mac && cse->hashsize == 0) { in cryptodev_op()
664 if (cop->flags & COP_F_CIPHER_FIRST) { in cryptodev_op()
665 if (cop->op != COP_ENCRYPT) { in cryptodev_op()
671 cod = cod_alloc(cse, 0, cop->len + cse->hashsize); in cryptodev_op()
672 dst = cop->dst; in cryptodev_op()
676 error = copyin(cop->src, cod->buf, cop->len); in cryptodev_op()
682 crp->crp_payload_length = cop->len; in cryptodev_op()
684 crp->crp_digest_start = cop->len; in cryptodev_op()
689 switch (cop->op) { in cryptodev_op()
703 if (cop->len == 0 || in cryptodev_op()
704 (cop->iv == NULL && cop->len == cse->ivsize)) { in cryptodev_op()
709 switch (cop->op) { in cryptodev_op()
723 switch (cop->op) { in cryptodev_op()
738 if (cse->ivsize != 0 && cop->iv == NULL) { in cryptodev_op()
745 switch (cop->op) { in cryptodev_op()
766 crp->crp_flags = CRYPTO_F_CBIMM | (cop->flags & COP_F_BATCH); in cryptodev_op()
767 crypto_use_buf(crp, cod->buf, cop->len + cse->hashsize); in cryptodev_op()
769 crypto_use_output_buf(crp, cod->obuf, cop->len + cse->hashsize); in cryptodev_op()
773 if (cop->iv) { in cryptodev_op()
779 error = copyin(cop->iv, crp->crp_iv, cse->ivsize); in cryptodev_op()
799 error = copyin(cop->mac, cod->buf + crp->crp_digest_start, in cryptodev_op()
838 if (cop->dst != NULL) { in cryptodev_op()
848 if (cop->mac != NULL && (crp->crp_op & CRYPTO_OP_VERIFY_DIGEST) == 0) { in cryptodev_op()
850 crp->crp_digest_start, cop->mac, cse->hashsize); in cryptodev_op()
1127 struct crypt_op *cop; in crypto_ioctl() local
1215 cop = (struct crypt_op *)data; in crypto_ioctl()
1216 cse = cse_find(fcr, cop->ses); in crypto_ioctl()
1221 error = cryptodev_op(cse, cop); in crypto_ioctl()