ossl: Use crypto_cursor_segment().
Reviewed by: markj Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D30447
This commit is contained in:
parent
86be314d09
commit
1c09320d58
@ -65,15 +65,13 @@ ossl_chacha20(struct cryptop *crp, const struct crypto_session_params *csp)
|
||||
resid = crp->crp_payload_length;
|
||||
crypto_cursor_init(&cc_in, &crp->crp_buf);
|
||||
crypto_cursor_advance(&cc_in, crp->crp_payload_start);
|
||||
inseg = crypto_cursor_segbase(&cc_in);
|
||||
inlen = crypto_cursor_seglen(&cc_in);
|
||||
inseg = crypto_cursor_segment(&cc_in, &inlen);
|
||||
if (CRYPTO_HAS_OUTPUT_BUFFER(crp)) {
|
||||
crypto_cursor_init(&cc_out, &crp->crp_obuf);
|
||||
crypto_cursor_advance(&cc_out, crp->crp_payload_output_start);
|
||||
} else
|
||||
cc_out = cc_in;
|
||||
outseg = crypto_cursor_segbase(&cc_out);
|
||||
outlen = crypto_cursor_seglen(&cc_out);
|
||||
outseg = crypto_cursor_segment(&cc_out, &outlen);
|
||||
while (resid >= CHACHA_BLK_SIZE) {
|
||||
if (inlen < CHACHA_BLK_SIZE) {
|
||||
crypto_cursor_copydata(&cc_in, CHACHA_BLK_SIZE, block);
|
||||
@ -111,16 +109,14 @@ ossl_chacha20(struct cryptop *crp, const struct crypto_session_params *csp)
|
||||
|
||||
if (out == block) {
|
||||
crypto_cursor_copyback(&cc_out, CHACHA_BLK_SIZE, block);
|
||||
outseg = crypto_cursor_segbase(&cc_out);
|
||||
outlen = crypto_cursor_seglen(&cc_out);
|
||||
outseg = crypto_cursor_segment(&cc_out, &outlen);
|
||||
} else {
|
||||
crypto_cursor_advance(&cc_out, todo);
|
||||
outseg += todo;
|
||||
outlen -= todo;
|
||||
}
|
||||
if (in == block) {
|
||||
inseg = crypto_cursor_segbase(&cc_in);
|
||||
inlen = crypto_cursor_seglen(&cc_in);
|
||||
inseg = crypto_cursor_segment(&cc_in, &inlen);
|
||||
} else {
|
||||
crypto_cursor_advance(&cc_in, todo);
|
||||
inseg += todo;
|
||||
@ -196,15 +192,13 @@ ossl_chacha20_poly1305_encrypt(struct cryptop *crp,
|
||||
resid = crp->crp_payload_length;
|
||||
crypto_cursor_init(&cc_in, &crp->crp_buf);
|
||||
crypto_cursor_advance(&cc_in, crp->crp_payload_start);
|
||||
inseg = crypto_cursor_segbase(&cc_in);
|
||||
inlen = crypto_cursor_seglen(&cc_in);
|
||||
inseg = crypto_cursor_segment(&cc_in, &inlen);
|
||||
if (CRYPTO_HAS_OUTPUT_BUFFER(crp)) {
|
||||
crypto_cursor_init(&cc_out, &crp->crp_obuf);
|
||||
crypto_cursor_advance(&cc_out, crp->crp_payload_output_start);
|
||||
} else
|
||||
cc_out = cc_in;
|
||||
outseg = crypto_cursor_segbase(&cc_out);
|
||||
outlen = crypto_cursor_seglen(&cc_out);
|
||||
outseg = crypto_cursor_segment(&cc_out, &outlen);
|
||||
while (resid >= CHACHA_BLK_SIZE) {
|
||||
if (inlen < CHACHA_BLK_SIZE) {
|
||||
crypto_cursor_copydata(&cc_in, CHACHA_BLK_SIZE, block);
|
||||
@ -243,16 +237,14 @@ ossl_chacha20_poly1305_encrypt(struct cryptop *crp,
|
||||
|
||||
if (out == block) {
|
||||
crypto_cursor_copyback(&cc_out, CHACHA_BLK_SIZE, block);
|
||||
outseg = crypto_cursor_segbase(&cc_out);
|
||||
outlen = crypto_cursor_seglen(&cc_out);
|
||||
outseg = crypto_cursor_segment(&cc_out, &outlen);
|
||||
} else {
|
||||
crypto_cursor_advance(&cc_out, todo);
|
||||
outseg += todo;
|
||||
outlen -= todo;
|
||||
}
|
||||
if (in == block) {
|
||||
inseg = crypto_cursor_segbase(&cc_in);
|
||||
inlen = crypto_cursor_seglen(&cc_in);
|
||||
inseg = crypto_cursor_segment(&cc_in, &inlen);
|
||||
} else {
|
||||
crypto_cursor_advance(&cc_in, todo);
|
||||
inseg += todo;
|
||||
@ -368,15 +360,13 @@ ossl_chacha20_poly1305_decrypt(struct cryptop *crp,
|
||||
resid = crp->crp_payload_length;
|
||||
crypto_cursor_init(&cc_in, &crp->crp_buf);
|
||||
crypto_cursor_advance(&cc_in, crp->crp_payload_start);
|
||||
inseg = crypto_cursor_segbase(&cc_in);
|
||||
inlen = crypto_cursor_seglen(&cc_in);
|
||||
inseg = crypto_cursor_segment(&cc_in, &inlen);
|
||||
if (CRYPTO_HAS_OUTPUT_BUFFER(crp)) {
|
||||
crypto_cursor_init(&cc_out, &crp->crp_obuf);
|
||||
crypto_cursor_advance(&cc_out, crp->crp_payload_output_start);
|
||||
} else
|
||||
cc_out = cc_in;
|
||||
outseg = crypto_cursor_segbase(&cc_out);
|
||||
outlen = crypto_cursor_seglen(&cc_out);
|
||||
outseg = crypto_cursor_segment(&cc_out, &outlen);
|
||||
while (resid >= CHACHA_BLK_SIZE) {
|
||||
if (inlen < CHACHA_BLK_SIZE) {
|
||||
crypto_cursor_copydata(&cc_in, CHACHA_BLK_SIZE, block);
|
||||
@ -414,16 +404,14 @@ ossl_chacha20_poly1305_decrypt(struct cryptop *crp,
|
||||
|
||||
if (out == block) {
|
||||
crypto_cursor_copyback(&cc_out, CHACHA_BLK_SIZE, block);
|
||||
outseg = crypto_cursor_segbase(&cc_out);
|
||||
outlen = crypto_cursor_seglen(&cc_out);
|
||||
outseg = crypto_cursor_segment(&cc_out, &outlen);
|
||||
} else {
|
||||
crypto_cursor_advance(&cc_out, todo);
|
||||
outseg += todo;
|
||||
outlen -= todo;
|
||||
}
|
||||
if (in == block) {
|
||||
inseg = crypto_cursor_segbase(&cc_in);
|
||||
inlen = crypto_cursor_seglen(&cc_in);
|
||||
inseg = crypto_cursor_segment(&cc_in, &inlen);
|
||||
} else {
|
||||
crypto_cursor_advance(&cc_in, todo);
|
||||
inseg += todo;
|
||||
|
Loading…
Reference in New Issue
Block a user