Create the .rnd file it it does not exist
authorBernd Edlinger <bernd.edlinger@hotmail.de>
Thu, 13 Sep 2018 16:25:37 +0000 (18:25 +0200)
committerBernd Edlinger <bernd.edlinger@hotmail.de>
Sun, 23 Sep 2018 06:29:37 +0000 (08:29 +0200)
It's a bit annoying, since some commands try to read a .rnd file,
and print an error message if the file does not exist.

But previously a .rnd file was created on exit, and that does no longer
happen.

Fixed by continuing in app_RAND_load_conf regardless of the error in
RAND_load_file.

If the random number generator is still not initalized on exit, the
function RAND_write_file will fail and no .rnd file would be created.

Remove RANDFILE from openssl.cnf

Reviewed-by: Kurt Roeckx <kurt@roeckx.be>
(Merged from https://github.com/openssl/openssl/pull/7217)

(cherry picked from commit 0f58220973a02248ca5c69db59e615378467b9c8)

apps/app_rand.c
apps/openssl-vms.cnf
apps/openssl.cnf

index 28caad41a7d8f124a29a25d2876537b72aed4e92..d0b2e834340635bb961767c43949eaa308e782f7 100644 (file)
@@ -26,7 +26,6 @@ void app_RAND_load_conf(CONF *c, const char *section)
     if (RAND_load_file(randfile, -1) < 0) {
         BIO_printf(bio_err, "Can't load %s into RNG\n", randfile);
         ERR_print_errors(bio_err);
-        return;
     }
     if (save_rand_file == NULL)
         save_rand_file = OPENSSL_strdup(randfile);
index f4a25112dc820e169cb32431f77c338b18676e4b..178a0b0f2d3036bf79c629d844fa29fc8508ae4a 100644 (file)
@@ -10,7 +10,6 @@
 # This definition stops the following lines choking if HOME isn't
 # defined.
 HOME                   = .
-RANDFILE               = $ENV::HOME/.rnd
 
 # Extra OBJECT IDENTIFIER info:
 #oid_file              = $ENV::HOME/.oid
@@ -57,7 +56,6 @@ crlnumber     = $dir]crlnumber.       # the current crl number
                                        # must be commented out to leave a V1 CRL
 crl            = $dir]crl.pem          # The current CRL
 private_key    = $dir.private]cakey.pem# The private key
-RANDFILE       = $dir.private].rand    # private random number file
 
 x509_extensions        = usr_cert              # The extensions to add to the cert
 
index 7d1a8bb6e7f06b7abf6df53dca4e3170b7fdd2f6..6df2878d5021551e8cceae297ac07b5675f627dd 100644 (file)
@@ -10,7 +10,6 @@
 # This definition stops the following lines choking if HOME isn't
 # defined.
 HOME                   = .
-RANDFILE               = $ENV::HOME/.rnd
 
 # Extra OBJECT IDENTIFIER info:
 #oid_file              = $ENV::HOME/.oid
@@ -57,7 +56,6 @@ crlnumber     = $dir/crlnumber        # the current crl number
                                        # must be commented out to leave a V1 CRL
 crl            = $dir/crl.pem          # The current CRL
 private_key    = $dir/private/cakey.pem# The private key
-RANDFILE       = $dir/private/.rand    # private random number file
 
 x509_extensions        = usr_cert              # The extensions to add to the cert