1 /* SPDX-License-Identifier: LGPL-2.1+ */
3 Copyright 2017 Zbigniew Jędrzejewski-Szmek
7 #include "random-util.h"
10 static void test_acquire_random_bytes(bool high_quality_required) {
14 log_info("/* %s */", __func__);
16 for (i = 1; i < sizeof buf; i++) {
17 assert_se(acquire_random_bytes(buf, i, high_quality_required) == 0);
18 if (i + 1 < sizeof buf)
19 assert_se(buf[i] == 0);
21 hexdump(stdout, buf, i);
25 static void test_pseudorandom_bytes(void) {
29 log_info("/* %s */", __func__);
31 for (i = 1; i < sizeof buf; i++) {
32 pseudorandom_bytes(buf, i);
33 if (i + 1 < sizeof buf)
34 assert_se(buf[i] == 0);
36 hexdump(stdout, buf, i);
40 int main(int argc, char **argv) {
41 log_set_max_level(LOG_DEBUG);
42 log_parse_environment();
45 test_acquire_random_bytes(false);
46 test_acquire_random_bytes(true);
48 test_pseudorandom_bytes();