Jason A. Donenfeld 35a33ff380 random: use memmove instead of memcpy for remaining 32 bytes
In order to immediately overwrite the old key on the stack, before
servicing a userspace request for bytes, we use the remaining 32 bytes
of block 0 as the key. This means moving indices 8,9,a,b,c,d,e,f ->
4,5,6,7,8,9,a,b. Since 4 < 8, for the kernel implementations of
memcpy(), this doesn't actually appear to be a problem in practice. But
relying on that characteristic seems a bit brittle. So let's change that
to a proper memmove(), which is the by-the-books way of handling
overlapping memory copies.

Reviewed-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2022-04-16 12:53:31 +02:00
..
2022-03-29 08:50:14 -07:00
2022-03-23 18:23:13 -07:00
2022-03-20 12:37:15 -05:00
2022-03-28 14:32:39 -07:00
2021-06-04 15:35:03 +02:00
2022-03-22 09:17:20 -07:00
2021-07-27 12:17:21 +02:00