Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
BACKPORT: random32: add periodic reseeding
Clean cherry pick of commmit 6d31920246a9fc80be4f16acd27c0bbe8d7b8494. The current Tausworthe PRNG is never reseeded with truly random data after the first attempt in late_initcall. As this PRNG is used for some critical random data as e.g. UDP port randomization we should try better and reseed the PRNG once in a while with truly random data from get_random_bytes(). When we reseed with prandom_seed we now make also sure to throw the first output away. This suffices the reseeding procedure. The delay calculation is based on a proposal from Eric Dumazet. Joint work with Daniel Borkmann. Cc: Eric Dumazet <eric.dumazet@gmail.com> Cc: Theodore Ts'o <tytso@mit.edu> Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org> Signed-off-by: Daniel Borkmann <dborkman@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net> Bug: http://b/29621447 Change-Id: I990d00f4a29a56a22357cec1c17477c4721054ae (cherry picked from commit 6d31920246a9fc80be4f16acd27c0bbe8d7b8494)
- Loading branch information