X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=Configure;h=3baa8ce016f81bad5149fc89e79f4fb57d0dcc7e;hp=c9f6ea760b4ca6f23205e4c5f402fddfcc0e0f4e;hb=3e9a0eb2c86641f5777dcbd8a51d7643f8c71540;hpb=9f22c527232d8babfa4827dff34a6707e8880dd9 diff --git a/Configure b/Configure index c9f6ea760b..3baa8ce016 100755 --- a/Configure +++ b/Configure @@ -1010,9 +1010,18 @@ if (scalar(@seed_sources) == 0) { print "Using os-specific seed configuration\n"; push @seed_sources, 'os'; } -die "Cannot seed with none and anything else" - if scalar(grep { $_ eq 'none' } @seed_sources) > 0 - && scalar(@seed_sources) > 1; +if (scalar(grep { $_ eq 'none' } @seed_sources) > 0) { + die "Cannot seed with none and anything else" if scalar(@seed_sources) > 1; + warn <<_____ if scalar(@seed_sources) == 1; +You have selected the --with-rand-seed=none option, which effectively disables +automatic reseeding of the OpenSSL random generator. All operations depending +on the random generator such as creating keys will not work unless the random +generator is seeded manually by the application. + +Please read the 'Note on random number generation' section in the INSTALL +instructions and the RAND_DRBG(7) manual page for more details. +_____ +} push @{$config{openssl_other_defines}}, map { (my $x = $_) =~ tr|[\-a-z]|[_A-Z]|; "OPENSSL_RAND_SEED_$x" } @seed_sources; @@ -1432,7 +1441,7 @@ if (!$disabled{makedepend}) { } } -if (!$disabled{asm}) { +if (!$disabled{asm} && !$predefined{__MACH__} && $^O ne 'VMS') { # probe for -Wa,--noexecstack option... if ($predefined{__clang__}) { # clang has builtin assembler, which doesn't recognize --help, @@ -1440,7 +1449,7 @@ if (!$disabled{asm}) { # supported platforms even when it's meaningless. In other words # probe would fail, but probed option always accepted... push @{$config{cflags}}, "-Wa,--noexecstack", "-Qunused-arguments"; - } elsif ($^O ne 'VMS') { + } else { my $cc = $config{CROSS_COMPILE}.$config{CC}; open(PIPE, "$cc -Wa,--help -c -o null.$$.o -x assembler /dev/null 2>&1 |"); while() {