From cd548ba2dc777b8b27d8d33182ba733c20222120 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Wed, 11 Dec 2013 16:59:41 +0100 Subject: random: Add a feature to close device file descriptors. * src/gcrypt.h.in (GCRYCTL_CLOSE_RANDOM_DEVICE): New. * src/global.c (_gcry_vcontrol): Call _gcry_random_close_fds. * random/random.c (_gcry_random_close_fds): New. * random/random-csprng.c (_gcry_rngcsprng_close_fds): New. * random/random-fips.c (_gcry_rngfips_close_fds): New. * random/random-system.c (_gcry_rngsystem_close_fds): New. * random/rndlinux.c (open_device): Add arg retry. (_gcry_rndlinux_gather_random): Add mode to close open fds. * tests/random.c (check_close_random_device): New. (main): Call new test. Signed-off-by: Werner Koch --- src/global.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/global.c') diff --git a/src/global.c b/src/global.c index 8521e589..8a5d3100 100644 --- a/src/global.c +++ b/src/global.c @@ -540,6 +540,10 @@ _gcry_vcontrol (enum gcry_ctl_cmds cmd, va_list arg_ptr) _gcry_use_random_daemon (!! va_arg (arg_ptr, int)); break; + case GCRYCTL_CLOSE_RANDOM_DEVICE: + _gcry_random_close_fds (); + break; + /* This command dumps information pertaining to the configuration of libgcrypt to the given stream. It may be used before the initialization has been finished but not -- cgit v1.2.1