refactor: add tr_rand_obj() (#4238)

* refactor: add tr_rand_obj()

There are a lot of places in the codebase where we need to populate
an integral type or a fixed-size array with random data. To do this,
we instantiate a local on the stack, fill it with tr_rand_buffer(),
and then use it.

This PR creates a helper function to make this a one-liner.
This commit is contained in:
Charles Kerr
2022-11-25 15:04:37 -06:00
committed by GitHub
parent 342484d14a
commit 8a35aa0903
19 changed files with 47 additions and 67 deletions

View File

@@ -91,8 +91,7 @@ std::string tr_ssha1(std::string_view plaintext)
auto constexpr Salter = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ./"sv;
static_assert(std::size(Salter) == 64);
auto constexpr SaltSize = size_t{ 8 };
auto salt = std::array<char, SaltSize>{};
tr_rand_buffer(std::data(salt), std::size(salt));
auto salt = tr_rand_obj<std::array<char, SaltSize>>();
std::transform(
std::begin(salt),
std::end(salt),