RANDOM_BLOCKSIZE
uint8_t remainder_buf[RANDOM_BLOCKSIZE];
chunk_size = rounddown(chunk_size, RANDOM_BLOCKSIZE);
else if (bytecount >= RANDOM_BLOCKSIZE)
RANDOM_BLOCKSIZE);
blockcount = howmany(bytecount, RANDOM_BLOCKSIZE);
CTASSERT(RANDOM_FORTUNA_BLOCKS_PER_KEY * RANDOM_BLOCKSIZE ==
CTASSERT(RANDOM_BLOCKSIZE == sizeof(uint128_t));
CTASSERT(RANDOM_KEYSIZE == 2*RANDOM_BLOCKSIZE);
KASSERT(bytecount % RANDOM_BLOCKSIZE == 0,
blockcount = bytecount / RANDOM_BLOCKSIZE;
(void *)ctr, RANDOM_BLOCKSIZE * 8, d_out);
d_out = (char *)d_out + RANDOM_BLOCKSIZE;
CTASSERT(RANDOM_KEYSIZE == 2*RANDOM_BLOCKSIZE);
_Static_assert(CHACHA_STATELEN == RANDOM_BLOCKSIZE, "");
#define RANDOM_BLOCKSIZE_WORDS (RANDOM_BLOCKSIZE/sizeof(uint32_t))
#define RANDOM_KEYS_PER_BLOCK (RANDOM_KEYSIZE/RANDOM_BLOCKSIZE)
buffersize = i + RANDOM_BLOCKSIZE;
buffersize -= buffersize%RANDOM_BLOCKSIZE;