CHACHA_KEY_SIZE
.min_keysize = CHACHA_KEY_SIZE,
.max_keysize = CHACHA_KEY_SIZE,
.min_keysize = CHACHA_KEY_SIZE,
.max_keysize = CHACHA_KEY_SIZE,
.min_keysize = CHACHA_KEY_SIZE,
.max_keysize = CHACHA_KEY_SIZE,
if (keysize != CHACHA_KEY_SIZE)
if (keylen != ctx->saltlen + CHACHA_KEY_SIZE)
u8 key[CHACHA_KEY_SIZE] __aligned(__alignof__(long));
u8 key[CHACHA_KEY_SIZE];
u8 key[CHACHA_KEY_SIZE];
static void crng_fast_key_erasure(u8 key[CHACHA_KEY_SIZE],
memcpy(&chacha_state->x[4], key, CHACHA_KEY_SIZE);
memcpy(key, first_block, CHACHA_KEY_SIZE);
memcpy(random_data, first_block + CHACHA_KEY_SIZE, random_data_len);
CHACHA_KEY_SIZE);
if (iov_iter_count(iter) <= CHACHA_KEY_SIZE) {
ret = copy_to_iter(&chacha_state.x[4], CHACHA_KEY_SIZE, iter);
if (keylen != CHACHA_KEY_SIZE + saltlen)
if (keylen != CHACHA_KEY_SIZE)
.min_keysize = CHACHA_KEY_SIZE,
.max_keysize = CHACHA_KEY_SIZE,
if (keylen != CHACHA_KEY_SIZE + saltlen)
if (memcmp(ctx->key, key, CHACHA_KEY_SIZE))
memcpy(ctx->key, key, CHACHA_KEY_SIZE);
ctx->key_len = CHACHA_KEY_SIZE;
if (len != CHACHA_KEY_SIZE)
.min_keysize = CHACHA_KEY_SIZE,
.max_keysize = CHACHA_KEY_SIZE,
if (len != CHACHA_KEY_SIZE)
u32 key[CHACHA_KEY_SIZE / sizeof(u32) + 1];
memcpy(key, ctx->key, CHACHA_KEY_SIZE);
key[CHACHA_KEY_SIZE / sizeof(u32)] = ctx->nonce;
CHACHA_KEY_SIZE +
CHACHA_KEY_SIZE);
u32 key[CHACHA_KEY_SIZE / sizeof(u32)];