[openssl-commits] [openssl] master update

Andy Polyakov appro at openssl.org
Tue Mar 6 22:20:34 UTC 2018

The branch master has been updated
       via  72983c0eab750dfc1b6298c516df7afb1a73ba54 (commit)
       via  107783d9c56e7dcb338c011fa202ffa8f066dbca (commit)
      from  49cd47eaababc8c57871b929080fc1357e2ad7b8 (commit)

- Log -----------------------------------------------------------------
commit 72983c0eab750dfc1b6298c516df7afb1a73ba54
Author: Andy Polyakov <appro at openssl.org>
Date:   Mon Mar 5 17:10:03 2018 +0100

    crypto/armcap.c: mask SHA512 hardware detection on iOS.
    When running iOS application from command line it's impossible to
    get past the failing capability detection. This is because it's
    executed under debugger and iOS debugger is impossible to deal with.
    [If Apple implements SHA512 in silicon, it would have to be detected
    with sysctlbyname.]
    Reviewed-by: Rich Salz <rsalz at openssl.org>

commit 107783d9c56e7dcb338c011fa202ffa8f066dbca
Author: Andy Polyakov <appro at openssl.org>
Date:   Mon Mar 5 16:55:48 2018 +0100

    Configurations/10-main.conf: add -fno-common back to darwin-ppc-cc.
    -fno-common was removed for all Darwin targets in
    0c8734198d4282f6997965a03cd2e0ceaf207549 with rationale "it's either
    'ranlib -c' or '-fno-common'." However, it's still absolutely required
    in 32-bit darwin-ppc-cc. And when trying things out I didn't quite
    see why it was formulated as one-or-another choice, as 'ranlib -c'
    shouldn't [and doesn't] have problems with object modules without
    commons. [Well, to be frank, I didn't manage to reproduce the problem
    the modification was meaning to resolve either...]
    Reviewed-by: Rich Salz <rsalz at openssl.org>


Summary of changes:
 Configurations/10-main.conf | 1 +
 crypto/armcap.c             | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/Configurations/10-main.conf b/Configurations/10-main.conf
index 3ee0717..7f07752 100644
--- a/Configurations/10-main.conf
+++ b/Configurations/10-main.conf
@@ -1647,6 +1647,7 @@ my %targets = (
         inherit_from     => [ "darwin-common", asm("ppc32_asm") ],
         cflags           => add("-arch ppc -std=gnu9x -Wa,-force_cpusubtype_ALL"),
         cppflags         => add("-DB_ENDIAN"),
+        shared_cflag     => add("-fno-common"),
         perlasm_scheme   => "osx32",
     "darwin64-ppc-cc" => {
diff --git a/crypto/armcap.c b/crypto/armcap.c
index d670733..1b3c272 100644
--- a/crypto/armcap.c
+++ b/crypto/armcap.c
@@ -191,7 +191,7 @@ void OPENSSL_cpuid_setup(void)
             OPENSSL_armcap_P |= ARMV8_SHA256;
-# ifdef __aarch64__
+# if defined(__aarch64__) && !defined(__APPLE__)
         if (sigsetjmp(ill_jmp, 1) == 0) {
             OPENSSL_armcap_P |= ARMV8_SHA512;

More information about the openssl-commits mailing list