Lines Matching refs:crp
312 ossl_process_hash(struct ossl_session *s, struct cryptop *crp,
322 if (crp->crp_auth_key == NULL) {
327 axf->Setkey(&ctx, crp->crp_auth_key,
330 hmac_init_ipad(axf, crp->crp_auth_key,
335 if (crp->crp_aad != NULL)
336 error = axf->Update(&ctx, crp->crp_aad, crp->crp_aad_length);
338 error = crypto_apply(crp, crp->crp_aad_start,
339 crp->crp_aad_length, axf->Update, &ctx);
343 error = crypto_apply(crp, crp->crp_payload_start,
344 crp->crp_payload_length, axf->Update, &ctx);
351 if (crp->crp_auth_key == NULL)
354 hmac_init_opad(axf, crp->crp_auth_key,
360 if (crp->crp_op & CRYPTO_OP_VERIFY_DIGEST) {
363 crypto_copydata(crp, crp->crp_digest_start, s->hash.mlen,
369 crypto_copyback(crp, crp->crp_digest_start, s->hash.mlen,
380 ossl_process_cipher(struct ossl_session *s, struct cryptop *crp,
383 return (s->cipher.cipher->process(&s->cipher, crp, csp));
387 ossl_process_eta(struct ossl_session *s, struct cryptop *crp,
392 if (CRYPTO_OP_IS_ENCRYPT(crp->crp_op)) {
393 error = s->cipher.cipher->process(&s->cipher, crp, csp);
395 error = ossl_process_hash(s, crp, csp);
397 error = ossl_process_hash(s, crp, csp);
399 error = s->cipher.cipher->process(&s->cipher, crp, csp);
406 ossl_process_aead(struct ossl_session *s, struct cryptop *crp,
410 if (CRYPTO_OP_IS_ENCRYPT(crp->crp_op))
411 return (ossl_chacha20_poly1305_encrypt(crp, csp));
413 return (ossl_chacha20_poly1305_decrypt(crp, csp));
415 return (s->cipher.cipher->process(&s->cipher, crp, csp));
420 ossl_process(device_t dev, struct cryptop *crp, int hint)
427 s = crypto_get_driver_session(crp->crp_session);
428 csp = crypto_get_params(crp->crp_session);
439 error = ossl_process_hash(s, crp, csp);
442 error = ossl_process_cipher(s, crp, csp);
445 error = ossl_process_eta(s, crp, csp);
448 error = ossl_process_aead(s, crp, csp);
457 crp->crp_etype = error;
458 crypto_done(crp);