[openssl] openssl-3.0 update

beldmit at gmail.com beldmit at gmail.com
Fri Dec 10 11:12:39 UTC 2021


The branch openssl-3.0 has been updated
       via  cec27290387fe2b1706131c4840123b1f8bfb34f (commit)
       via  6b7d7dd99cddf733aa5ee91012000ee51a60682e (commit)
      from  7174656d82b724a36948b2ac30a3c6f7e4cc12e4 (commit)


- Log -----------------------------------------------------------------
commit cec27290387fe2b1706131c4840123b1f8bfb34f
Author: Richard Levitte <levitte at openssl.org>
Date:   Mon Dec 6 21:06:06 2021 +0100

    Teach OpenSSL::ParseC about OPENSSL_EXPORT and OPENSSL_EXTERN
    
    Reviewed-by: Dmitry Belyavskiy <beldmit at gmail.com>
    Reviewed-by: Tomas Mraz <tomas at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/17215)
    
    (cherry picked from commit 7a2ad00f3ecffa6be350e9e72992d4ec003f54ae)

commit 6b7d7dd99cddf733aa5ee91012000ee51a60682e
Author: Richard Levitte <levitte at openssl.org>
Date:   Mon Dec 6 20:54:17 2021 +0100

    Make OSSL_provider_init() OPENSSL_EXPORT, not just extern
    
    On non-Windows systems, there's no difference at all.  On Windows systems,
    __declspec(dllexport) is added, which ensures it gets exported no matter
    what.
    
    Fixes #17203
    
    Reviewed-by: Dmitry Belyavskiy <beldmit at gmail.com>
    Reviewed-by: Tomas Mraz <tomas at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/17215)
    
    (cherry picked from commit d977a26ed8ca5066d4d72a6d73f1669c8619f4a1)

-----------------------------------------------------------------------

Summary of changes:
 include/openssl/core.h      | 2 +-
 util/perl/OpenSSL/ParseC.pm | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/include/openssl/core.h b/include/openssl/core.h
index 3356ef2088..9683ac70a5 100644
--- a/include/openssl/core.h
+++ b/include/openssl/core.h
@@ -195,7 +195,7 @@ typedef int (OSSL_provider_init_fn)(const OSSL_CORE_HANDLE *handle,
 #  pragma names save
 #  pragma names uppercase,truncated
 # endif
-extern OSSL_provider_init_fn OSSL_provider_init;
+OPENSSL_EXPORT OSSL_provider_init_fn OSSL_provider_init;
 # ifdef __VMS
 #  pragma names restore
 # endif
diff --git a/util/perl/OpenSSL/ParseC.pm b/util/perl/OpenSSL/ParseC.pm
index ee127e88c8..e3cfe07827 100644
--- a/util/perl/OpenSSL/ParseC.pm
+++ b/util/perl/OpenSSL/ParseC.pm
@@ -610,6 +610,12 @@ EOF
       },
     },
 
+    # OpenSSL's declaration of externs with possible export linkage
+    # (really only relevant on Windows)
+    { regexp   => qr/OPENSSL_(?:EXPORT|EXTERN)/,
+      massager => sub { return ("extern"); }
+    },
+
     # Spurious stuff found in the OpenSSL headers
     # Usually, these are just macros that expand to, well, something
     { regexp   => qr/__NDK_FPABI__/,


More information about the openssl-commits mailing list