Module Name:    src
Committed By:   riastradh
Date:           Tue Oct 15 21:04:06 UTC 2024

Modified Files:
        src/crypto/external/bsd/openssl/dist/crypto/evp: legacy_sha.c
        src/crypto/external/bsd/openssl/dist/include/openssl: sha.h
        src/crypto/external/bsd/openssl/dist/providers/implementations/digests:
            sha2_prov.c
        src/crypto/external/bsd/openssl/lib/libcrypto: crypto.expsym crypto.map
            sha.inc
Removed Files:
        src/crypto/external/bsd/openssl/lib/libcrypto: libc-sha1.c
            libc-sha256.c libc-sha2xx.c libc-sha512.c

Log Message:
openssl: Just rename the sha2 symbols.

Ditch all our other local changes related to them.

These symbols end up as private symbols in libcrypto, and our
libcrypto has never exported the sha2 symbols anyway so that can't
break existing applications.  So this might even be safe to pull up
to branches.

This changes some libcrypto symbols listed in crypto.map -- but those
symbols weren't defined anyway!  And ld apparently doesn't care if
they're not defined.

PR bin/51333
PR lib/58039


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 \
    src/crypto/external/bsd/openssl/dist/crypto/evp/legacy_sha.c
cvs rdiff -u -r1.3 -r1.4 \
    src/crypto/external/bsd/openssl/dist/include/openssl/sha.h
cvs rdiff -u -r1.2 -r1.3 \
    
src/crypto/external/bsd/openssl/dist/providers/implementations/digests/sha2_prov.c
cvs rdiff -u -r1.2 -r1.3 \
    src/crypto/external/bsd/openssl/lib/libcrypto/crypto.expsym
cvs rdiff -u -r1.13 -r1.14 \
    src/crypto/external/bsd/openssl/lib/libcrypto/crypto.map
cvs rdiff -u -r1.2 -r0 \
    src/crypto/external/bsd/openssl/lib/libcrypto/libc-sha1.c
cvs rdiff -u -r1.4 -r0 \
    src/crypto/external/bsd/openssl/lib/libcrypto/libc-sha256.c \
    src/crypto/external/bsd/openssl/lib/libcrypto/libc-sha2xx.c
cvs rdiff -u -r1.5 -r0 \
    src/crypto/external/bsd/openssl/lib/libcrypto/libc-sha512.c
cvs rdiff -u -r1.8 -r1.9 \
    src/crypto/external/bsd/openssl/lib/libcrypto/sha.inc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/crypto/external/bsd/openssl/dist/crypto/evp/legacy_sha.c
diff -u src/crypto/external/bsd/openssl/dist/crypto/evp/legacy_sha.c:1.2 src/crypto/external/bsd/openssl/dist/crypto/evp/legacy_sha.c:1.3
--- src/crypto/external/bsd/openssl/dist/crypto/evp/legacy_sha.c:1.2	Fri Mar 15 18:10:37 2024
+++ src/crypto/external/bsd/openssl/dist/crypto/evp/legacy_sha.c	Tue Oct 15 21:04:05 2024
@@ -49,9 +49,9 @@ static int nm##_init(EVP_MD_CTX *ctx)   
 #define sha512_256_Init    sha512_256_init
 
 #define sha512_224_Update  SHA512_Update
-#define sha512_224_Final   sha512_224_final /* XXX NetBSD libc sha2 */
+#define sha512_224_Final   SHA512_Final
 #define sha512_256_Update  SHA512_Update
-#define sha512_256_Final   sha512_256_final /* XXX NetBSD libc sha2 */
+#define sha512_256_Final   SHA512_Final
 
 IMPLEMENT_LEGACY_EVP_MD_METH(sha1, SHA1)
 IMPLEMENT_LEGACY_EVP_MD_METH(sha224, SHA224)

Index: src/crypto/external/bsd/openssl/dist/include/openssl/sha.h
diff -u src/crypto/external/bsd/openssl/dist/include/openssl/sha.h:1.3 src/crypto/external/bsd/openssl/dist/include/openssl/sha.h:1.4
--- src/crypto/external/bsd/openssl/dist/include/openssl/sha.h:1.3	Sun May  7 18:40:26 2023
+++ src/crypto/external/bsd/openssl/dist/include/openssl/sha.h	Tue Oct 15 21:04:05 2024
@@ -70,16 +70,16 @@ typedef struct SHA256state_st {
     unsigned int num, md_len;
 } SHA256_CTX;
 
-OSSL_DEPRECATEDIN_3_0 int SHA224_Init(SHA256_CTX *c);
+OSSL_DEPRECATEDIN_3_0 int SHA224_Init(SHA256_CTX *c) __RENAME(_OpenSSL_SHA224_Init);
 OSSL_DEPRECATEDIN_3_0 int SHA224_Update(SHA256_CTX *c,
-                                        const void *data, size_t len);
-OSSL_DEPRECATEDIN_3_0 int SHA224_Final(unsigned char *md, SHA256_CTX *c);
-OSSL_DEPRECATEDIN_3_0 int SHA256_Init(SHA256_CTX *c);
+                                        const void *data, size_t len) __RENAME(_OpenSSL_SHA224_Update);
+OSSL_DEPRECATEDIN_3_0 int SHA224_Final(unsigned char *md, SHA256_CTX *c) __RENAME(_OpenSSL_SHA224_Final);
+OSSL_DEPRECATEDIN_3_0 int SHA256_Init(SHA256_CTX *c) __RENAME(_OpenSSL_SHA256_Init);
 OSSL_DEPRECATEDIN_3_0 int SHA256_Update(SHA256_CTX *c,
-                                        const void *data, size_t len);
-OSSL_DEPRECATEDIN_3_0 int SHA256_Final(unsigned char *md, SHA256_CTX *c);
+                                        const void *data, size_t len) __RENAME(_OpenSSL_SHA256_Update);
+OSSL_DEPRECATEDIN_3_0 int SHA256_Final(unsigned char *md, SHA256_CTX *c) __RENAME(_OpenSSL_SHA256_Final);
 OSSL_DEPRECATEDIN_3_0 void SHA256_Transform(SHA256_CTX *c,
-                                            const unsigned char *data);
+                                            const unsigned char *data) __RENAME(_OpenSSL_SHA256_Transform);
 # endif
 
 unsigned char *SHA224(const unsigned char *d, size_t n, unsigned char *md);
@@ -120,16 +120,16 @@ typedef struct SHA512state_st {
     unsigned int num, md_len;
 } SHA512_CTX;
 
-OSSL_DEPRECATEDIN_3_0 int SHA384_Init(SHA512_CTX *c);
+OSSL_DEPRECATEDIN_3_0 int SHA384_Init(SHA512_CTX *c) __RENAME(_OpenSSL_SHA384_Init);
 OSSL_DEPRECATEDIN_3_0 int SHA384_Update(SHA512_CTX *c,
-                                        const void *data, size_t len);
-OSSL_DEPRECATEDIN_3_0 int SHA384_Final(unsigned char *md, SHA512_CTX *c);
-OSSL_DEPRECATEDIN_3_0 int SHA512_Init(SHA512_CTX *c);
+                                        const void *data, size_t len) __RENAME(_OpenSSL_SHA384_Update);
+OSSL_DEPRECATEDIN_3_0 int SHA384_Final(unsigned char *md, SHA512_CTX *c) __RENAME(_OpenSSL_SHA384_Final);
+OSSL_DEPRECATEDIN_3_0 int SHA512_Init(SHA512_CTX *c) __RENAME(_OpenSSL_SHA512_Init);
 OSSL_DEPRECATEDIN_3_0 int SHA512_Update(SHA512_CTX *c,
-                                        const void *data, size_t len);
-OSSL_DEPRECATEDIN_3_0 int SHA512_Final(unsigned char *md, SHA512_CTX *c);
+                                        const void *data, size_t len) __RENAME(_OpenSSL_SHA512_Update);
+OSSL_DEPRECATEDIN_3_0 int SHA512_Final(unsigned char *md, SHA512_CTX *c) __RENAME(_OpenSSL_SHA512_Final);
 OSSL_DEPRECATEDIN_3_0 void SHA512_Transform(SHA512_CTX *c,
-                                            const unsigned char *data);
+                                            const unsigned char *data) __RENAME(_OpenSSL_SHA512_Transform);
 # endif
 
 unsigned char *SHA384(const unsigned char *d, size_t n, unsigned char *md);

Index: src/crypto/external/bsd/openssl/dist/providers/implementations/digests/sha2_prov.c
diff -u src/crypto/external/bsd/openssl/dist/providers/implementations/digests/sha2_prov.c:1.2 src/crypto/external/bsd/openssl/dist/providers/implementations/digests/sha2_prov.c:1.3
--- src/crypto/external/bsd/openssl/dist/providers/implementations/digests/sha2_prov.c:1.2	Fri Mar 15 18:10:37 2024
+++ src/crypto/external/bsd/openssl/dist/providers/implementations/digests/sha2_prov.c	Tue Oct 15 21:04:06 2024
@@ -86,12 +86,10 @@ IMPLEMENT_digest_functions(sha512, SHA51
 /* ossl_sha512_224_functions */
 IMPLEMENT_digest_functions(sha512_224, SHA512_CTX,
                            SHA512_CBLOCK, SHA224_DIGEST_LENGTH, SHA2_FLAGS,
-                           sha512_224_init, SHA512_Update,
-                           /* XXX NetBSD libc sha2 */sha512_224_final)
+                           sha512_224_init, SHA512_Update, SHA512_Final)
 
 /* ossl_sha512_256_functions */
 IMPLEMENT_digest_functions(sha512_256, SHA512_CTX,
                            SHA512_CBLOCK, SHA256_DIGEST_LENGTH, SHA2_FLAGS,
-                           sha512_256_init, SHA512_Update,
-                           /* XXX NetBSD libc sha2 */sha512_256_final)
+                           sha512_256_init, SHA512_Update, SHA512_Final)
 

Index: src/crypto/external/bsd/openssl/lib/libcrypto/crypto.expsym
diff -u src/crypto/external/bsd/openssl/lib/libcrypto/crypto.expsym:1.2 src/crypto/external/bsd/openssl/lib/libcrypto/crypto.expsym:1.3
--- src/crypto/external/bsd/openssl/lib/libcrypto/crypto.expsym:1.2	Tue Jun 18 18:58:22 2024
+++ src/crypto/external/bsd/openssl/lib/libcrypto/crypto.expsym	Tue Oct 15 21:04:06 2024
@@ -4880,6 +4880,20 @@ ZINT64_it@@OPENSSL_3.0.0
 ZLONG_it@@OPENSSL_3.0.0
 ZUINT32_it@@OPENSSL_3.0.0
 ZUINT64_it@@OPENSSL_3.0.0
+_OpenSSL_SHA224_Final@@OPENSSL_3.0.0
+_OpenSSL_SHA224_Init@@OPENSSL_3.0.0
+_OpenSSL_SHA224_Update@@OPENSSL_3.0.0
+_OpenSSL_SHA256_Final@@OPENSSL_3.0.0
+_OpenSSL_SHA256_Init@@OPENSSL_3.0.0
+_OpenSSL_SHA256_Transform@@OPENSSL_3.0.0
+_OpenSSL_SHA256_Update@@OPENSSL_3.0.0
+_OpenSSL_SHA384_Final@@OPENSSL_3.0.0
+_OpenSSL_SHA384_Init@@OPENSSL_3.0.0
+_OpenSSL_SHA384_Update@@OPENSSL_3.0.0
+_OpenSSL_SHA512_Final@@OPENSSL_3.0.0
+_OpenSSL_SHA512_Init@@OPENSSL_3.0.0
+_OpenSSL_SHA512_Transform@@OPENSSL_3.0.0
+_OpenSSL_SHA512_Update@@OPENSSL_3.0.0
 a2d_ASN1_OBJECT@@OPENSSL_3.0.0
 a2i_ASN1_ENUMERATED@@OPENSSL_3.0.0
 a2i_ASN1_INTEGER@@OPENSSL_3.0.0

Index: src/crypto/external/bsd/openssl/lib/libcrypto/crypto.map
diff -u src/crypto/external/bsd/openssl/lib/libcrypto/crypto.map:1.13 src/crypto/external/bsd/openssl/lib/libcrypto/crypto.map:1.14
--- src/crypto/external/bsd/openssl/lib/libcrypto/crypto.map:1.13	Tue Jun 18 17:31:17 2024
+++ src/crypto/external/bsd/openssl/lib/libcrypto/crypto.map	Tue Oct 15 21:04:06 2024
@@ -3910,23 +3910,23 @@ OPENSSL_3.0.0 {
         SHA1_Transform;
         SHA1_Update;
         SHA224;
-        SHA224_Final;
-        SHA224_Init;
-        SHA224_Update;
+        _OpenSSL_SHA224_Final;
+        _OpenSSL_SHA224_Init;
+        _OpenSSL_SHA224_Update;
         SHA256;
-        SHA256_Final;
-        SHA256_Init;
-        SHA256_Transform;
-        SHA256_Update;
+        _OpenSSL_SHA256_Final;
+        _OpenSSL_SHA256_Init;
+        _OpenSSL_SHA256_Transform;
+        _OpenSSL_SHA256_Update;
         SHA384;
-        SHA384_Final;
-        SHA384_Init;
-        SHA384_Update;
+        _OpenSSL_SHA384_Final;
+        _OpenSSL_SHA384_Init;
+        _OpenSSL_SHA384_Update;
         SHA512;
-        SHA512_Final;
-        SHA512_Init;
-        SHA512_Transform;
-        SHA512_Update;
+        _OpenSSL_SHA512_Final;
+        _OpenSSL_SHA512_Init;
+        _OpenSSL_SHA512_Transform;
+        _OpenSSL_SHA512_Update;
         SMIME_crlf_copy;
         SMIME_read_ASN1;
         SMIME_read_ASN1_ex;

Index: src/crypto/external/bsd/openssl/lib/libcrypto/sha.inc
diff -u src/crypto/external/bsd/openssl/lib/libcrypto/sha.inc:1.8 src/crypto/external/bsd/openssl/lib/libcrypto/sha.inc:1.9
--- src/crypto/external/bsd/openssl/lib/libcrypto/sha.inc:1.8	Sat Aug 17 15:18:30 2024
+++ src/crypto/external/bsd/openssl/lib/libcrypto/sha.inc	Tue Oct 15 21:04:06 2024
@@ -1,22 +1,16 @@
-#	$NetBSD: sha.inc,v 1.8 2024/08/17 15:18:30 rin Exp $
+#	$NetBSD: sha.inc,v 1.9 2024/10/15 21:04:06 riastradh Exp $
 
 .PATH:	${OPENSSLSRC}/crypto/sha
 
-
-SHA_SRCS += sha1dgst.c sha3.c
-
-# Replaced OpenSSL version to avoid overlap with libc
-SHA_SRCS+= libc-sha1.c libc-sha512.c libc-sha256.c libc-sha2xx.c
-
 .if !defined(KECCAKNI)
 SHA_SRCS+= keccak1600.c
 .endif
-#SHA_SRCS += \
-#sha1_one.c \
-#sha1dgst.c \
-#sha256.c \
-#sha3.c \
-#sha512.c \
+SHA_SRCS += \
+sha1_one.c \
+sha1dgst.c \
+sha256.c \
+sha3.c \
+sha512.c \
 
 SRCS += ${SHA_SRCS}
 

Reply via email to