aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2022-05-01 16:44:36 +0200
committerDenys Vlasenko <vda.linux@googlemail.com>2022-05-01 16:51:06 +0200
commit54867fec12e23a0606fd74e999ee30e34eea6a74 (patch)
tree3eed260e2c4ecda015951e6fedc138dfbc450ed3
parentb5624be6df95fd26d19051af5d02001bbe8f2dd8 (diff)
downloadbusybox-w32-54867fec12e23a0606fd74e999ee30e34eea6a74.tar.gz
busybox-w32-54867fec12e23a0606fd74e999ee30e34eea6a74.tar.bz2
busybox-w32-54867fec12e23a0606fd74e999ee30e34eea6a74.zip
seedrng: shorten --help, assorted small cleanups
function old new delta packed_usage 34295 34290 -5 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--util-linux/seedrng.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/util-linux/seedrng.c b/util-linux/seedrng.c
index 04e52a996..390dec12a 100644
--- a/util-linux/seedrng.c
+++ b/util-linux/seedrng.c
@@ -19,9 +19,8 @@
19 * 19 *
20 * This is based on code from <https://git.zx2c4.com/seedrng/about/>. 20 * This is based on code from <https://git.zx2c4.com/seedrng/about/>.
21 */ 21 */
22
23//config:config SEEDRNG 22//config:config SEEDRNG
24//config: bool "seedrng (2 kb)" 23//config: bool "seedrng (1.3 kb)"
25//config: default y 24//config: default y
26//config: help 25//config: help
27//config: Seed the kernel RNG from seed files, meant to be called 26//config: Seed the kernel RNG from seed files, meant to be called
@@ -33,12 +32,12 @@
33//kbuild:lib-$(CONFIG_SEEDRNG) += seedrng.o 32//kbuild:lib-$(CONFIG_SEEDRNG) += seedrng.o
34 33
35//usage:#define seedrng_trivial_usage 34//usage:#define seedrng_trivial_usage
36//usage: "[-d SEED_DIRECTORY] [-n]" 35//usage: "[-d DIR] [-n]"
37//usage:#define seedrng_full_usage "\n\n" 36//usage:#define seedrng_full_usage "\n\n"
38//usage: "Seed the kernel RNG from seed files" 37//usage: "Seed the kernel RNG from seed files"
39//usage: "\n" 38//usage: "\n"
40//usage: "\n -d DIR Use seed files from DIR (default: /var/lib/seedrng)" 39//usage: "\n -d DIR Use seed files in DIR (default: /var/lib/seedrng)"
41//usage: "\n -n Skip crediting seeds, even if creditable" 40//usage: "\n -n Do not credit randomness, even if creditable"
42 41
43#include "libbb.h" 42#include "libbb.h"
44 43
@@ -50,8 +49,8 @@
50#define GRND_INSECURE 0x0004 /* Apparently some headers don't ship with this yet. */ 49#define GRND_INSECURE 0x0004 /* Apparently some headers don't ship with this yet. */
51#endif 50#endif
52 51
53#define DEFAULT_SEED_DIR "/var/lib/seedrng" 52#define DEFAULT_SEED_DIR "/var/lib/seedrng"
54#define CREDITABLE_SEED_NAME "seed.credit" 53#define CREDITABLE_SEED_NAME "seed.credit"
55#define NON_CREDITABLE_SEED_NAME "seed.no-credit" 54#define NON_CREDITABLE_SEED_NAME "seed.no-credit"
56 55
57enum { 56enum {
@@ -75,7 +74,7 @@ static size_t determine_optimal_seed_len(void)
75 return MIN_SEED_LEN; 74 return MIN_SEED_LEN;
76 } 75 }
77 poolsize_str[n] = '\0'; 76 poolsize_str[n] = '\0';
78 poolsize = (bb_strtoul(poolsize_str, NULL, 10) + 7) / 8; 77 poolsize = (bb_strtou(poolsize_str, NULL, 10) + 7) / 8;
79 return MAX(MIN(poolsize, MAX_SEED_LEN), MIN_SEED_LEN); 78 return MAX(MIN(poolsize, MAX_SEED_LEN), MIN_SEED_LEN);
80} 79}
81 80
@@ -164,8 +163,8 @@ static void seed_from_file_if_exists(const char *filename, int dfd, bool credit,
164 } 163 }
165} 164}
166 165
167int seedrng_main(int argc, char *argv[]) MAIN_EXTERNALLY_VISIBLE; 166int seedrng_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
168int seedrng_main(int argc UNUSED_PARAM, char *argv[]) 167int seedrng_main(int argc UNUSED_PARAM, char **argv)
169{ 168{
170 const char *seed_dir; 169 const char *seed_dir;
171 int fd, dfd; 170 int fd, dfd;
@@ -236,7 +235,7 @@ int seedrng_main(int argc UNUSED_PARAM, char *argv[])
236 xwrite(fd, new_seed, new_seed_len); 235 xwrite(fd, new_seed, new_seed_len);
237 if (new_seed_creditable) { 236 if (new_seed_creditable) {
238 /* More paranoia when we create a file which we believe contains 237 /* More paranoia when we create a file which we believe contains
239 * genuine entropy: make sure disk is not full, quota was't exceeded, etc: 238 * genuine entropy: make sure disk is not full, quota isn't exceeded, etc:
240 */ 239 */
241 if (fsync(fd) < 0) 240 if (fsync(fd) < 0)
242 bb_perror_msg_and_die("can't write '%s'", NON_CREDITABLE_SEED_NAME); 241 bb_perror_msg_and_die("can't write '%s'", NON_CREDITABLE_SEED_NAME);