From 0a94f16b9532894aeb7aed2aec5082dd3b521414 Mon Sep 17 00:00:00 2001 From: Joshua Peek Date: Mon, 21 Apr 2008 19:49:16 -0500 Subject: Fallback to Ruby's pseudo random number generator if the system does not have SHA512 installed. --- railties/lib/rails_generator/secret_key_generator.rb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/railties/lib/rails_generator/secret_key_generator.rb b/railties/lib/rails_generator/secret_key_generator.rb index 801b33c761..64fbbb90f8 100644 --- a/railties/lib/rails_generator/secret_key_generator.rb +++ b/railties/lib/rails_generator/secret_key_generator.rb @@ -76,7 +76,12 @@ module Rails OpenSSL::Random.seed(rand(0).to_s + Time.now.usec.to_s) end data = OpenSSL::BN.rand(2048, -1, false).to_s - return OpenSSL::Digest::SHA512.new(data).hexdigest + + if OpenSSL::OPENSSL_VERSION_NUMBER > 0x00908000 + OpenSSL::Digest::SHA512.new(data).hexdigest + else + generate_secret_with_prng + end end # Generate a random secret key with /dev/urandom. -- cgit v1.2.3