Lines Matching refs:state
61 static void crypto_aegis128_update(struct aegis_state *state)
66 tmp = state->blocks[AEGIS128_STATE_BLOCKS - 1];
68 crypto_aegis_aesenc(&state->blocks[i], &state->blocks[i - 1],
69 &state->blocks[i]);
70 crypto_aegis_aesenc(&state->blocks[0], &tmp, &state->blocks[0]);
73 static void crypto_aegis128_update_a(struct aegis_state *state,
78 crypto_aegis128_update_simd(state, msg);
82 crypto_aegis128_update(state);
83 crypto_aegis_block_xor(&state->blocks[0], msg);
86 static void crypto_aegis128_update_u(struct aegis_state *state, const void *msg,
90 crypto_aegis128_update_simd(state, msg);
94 crypto_aegis128_update(state);
95 crypto_xor(state->blocks[0].bytes, msg, AEGIS_BLOCK_SIZE);
98 static void crypto_aegis128_init(struct aegis_state *state,
108 state->blocks[0] = key_iv;
109 state->blocks[1] = crypto_aegis_const[1];
110 state->blocks[2] = crypto_aegis_const[0];
111 state->blocks[3] = *key;
112 state->blocks[4] = *key;
114 crypto_aegis_block_xor(&state->blocks[3], &crypto_aegis_const[0]);
115 crypto_aegis_block_xor(&state->blocks[4], &crypto_aegis_const[1]);
118 crypto_aegis128_update_a(state, key, false);
119 crypto_aegis128_update_a(state, &key_iv, false);
123 static void crypto_aegis128_ad(struct aegis_state *state,
132 crypto_aegis128_update_a(state, src_blk, do_simd);
139 crypto_aegis128_update_u(state, src, do_simd);
147 static void crypto_aegis128_wipe_chunk(struct aegis_state *state, u8 *dst,
153 static void crypto_aegis128_encrypt_chunk(struct aegis_state *state, u8 *dst,
165 tmp = state->blocks[2];
166 crypto_aegis_block_and(&tmp, &state->blocks[3]);
167 crypto_aegis_block_xor(&tmp, &state->blocks[4]);
168 crypto_aegis_block_xor(&tmp, &state->blocks[1]);
171 crypto_aegis128_update_a(state, src_blk, false);
181 tmp = state->blocks[2];
182 crypto_aegis_block_and(&tmp, &state->blocks[3]);
183 crypto_aegis_block_xor(&tmp, &state->blocks[4]);
184 crypto_aegis_block_xor(&tmp, &state->blocks[1]);
187 crypto_aegis128_update_u(state, src, false);
201 tmp = state->blocks[2];
202 crypto_aegis_block_and(&tmp, &state->blocks[3]);
203 crypto_aegis_block_xor(&tmp, &state->blocks[4]);
204 crypto_aegis_block_xor(&tmp, &state->blocks[1]);
206 crypto_aegis128_update_a(state, &msg, false);
214 static void crypto_aegis128_decrypt_chunk(struct aegis_state *state, u8 *dst,
226 tmp = state->blocks[2];
227 crypto_aegis_block_and(&tmp, &state->blocks[3]);
228 crypto_aegis_block_xor(&tmp, &state->blocks[4]);
229 crypto_aegis_block_xor(&tmp, &state->blocks[1]);
232 crypto_aegis128_update_a(state, &tmp, false);
242 tmp = state->blocks[2];
243 crypto_aegis_block_and(&tmp, &state->blocks[3]);
244 crypto_aegis_block_xor(&tmp, &state->blocks[4]);
245 crypto_aegis_block_xor(&tmp, &state->blocks[1]);
248 crypto_aegis128_update_a(state, &tmp, false);
262 tmp = state->blocks[2];
263 crypto_aegis_block_and(&tmp, &state->blocks[3]);
264 crypto_aegis_block_xor(&tmp, &state->blocks[4]);
265 crypto_aegis_block_xor(&tmp, &state->blocks[1]);
270 crypto_aegis128_update_a(state, &msg, false);
276 static void crypto_aegis128_process_ad(struct aegis_state *state,
296 crypto_aegis128_update_a(state, &buf, do_simd);
302 crypto_aegis128_ad(state, src, left, do_simd);
318 crypto_aegis128_update_a(state, &buf, do_simd);
323 int crypto_aegis128_process_crypt(struct aegis_state *state,
325 void (*crypt)(struct aegis_state *state,
337 crypt(state, walk->dst.virt.addr, walk->src.virt.addr, nbytes);
344 static void crypto_aegis128_final(struct aegis_state *state,
357 crypto_aegis_block_xor(&tmp, &state->blocks[3]);
360 crypto_aegis128_update_a(state, &tmp, false);
363 crypto_aegis_block_xor(tag_xor, &state->blocks[i]);
396 struct aegis_state state;
399 crypto_aegis128_init(&state, &ctx->key, req->iv);
400 crypto_aegis128_process_ad(&state, req->src, req->assoclen, false);
401 crypto_aegis128_process_crypt(&state, &walk,
403 crypto_aegis128_final(&state, &tag, req->assoclen, cryptlen);
419 struct aegis_state state;
425 crypto_aegis128_init(&state, &ctx->key, req->iv);
426 crypto_aegis128_process_ad(&state, req->src, req->assoclen, false);
427 crypto_aegis128_process_crypt(&state, &walk,
429 crypto_aegis128_final(&state, &tag, req->assoclen, cryptlen);
457 struct aegis_state state;
463 crypto_aegis128_init_simd(&state, &ctx->key, req->iv);
464 crypto_aegis128_process_ad(&state, req->src, req->assoclen, true);
465 crypto_aegis128_process_crypt(&state, &walk,
467 crypto_aegis128_final_simd(&state, &tag, req->assoclen, cryptlen, 0);
482 struct aegis_state state;
491 crypto_aegis128_init_simd(&state, &ctx->key, req->iv);
492 crypto_aegis128_process_ad(&state, req->src, req->assoclen, true);
493 crypto_aegis128_process_crypt(&state, &walk,
496 if (unlikely(crypto_aegis128_final_simd(&state, &tag, req->assoclen,