diff --git a/security/boringssl/Makefile b/security/boringssl/Makefile index 815a71d24774..3de7280cd4d7 100644 --- a/security/boringssl/Makefile +++ b/security/boringssl/Makefile @@ -1,54 +1,53 @@ PORTNAME= boringssl -PORTVERSION= 0.0.0.0.2021.12.21.01 -PORTREVISION= 3 +PORTVERSION= 0.0.0.0.2022.01.05.01 CATEGORIES= security MAINTAINER= osa@FreeBSD.org COMMENT= Fork of OpenSSL LICENSE= OpenSSL LICENSE_FILE= ${WRKSRC}/LICENSE USES= cmake:insource cpe go:no_targets localbase perl5 CONFLICTS_INSTALL= security/libressl \ security/libressl-devel \ security/openssl \ security/openssl-devel \ security/openssl-quictls CPE_VENDOR= google USE_GITHUB= yes GH_ACCOUNT= google -GH_TAGNAME= 9bcc12d +GH_TAGNAME= 295b313 GH_TUPLE= golang:crypto:c07d793c2f9a:golang_crypto/vendor/golang.org/x/crypto \ golang:net:04defd469f4e:golang_net/vendor/golang.org/x/net \ golang:sys:04245dca01da:golang_sys/vendor/golang.org/x/sys \ golang:term:7de9c90e9dd1:golang_term/vendor/golang.org/x/term CMAKE_ARGS+= -DBUILD_SHARED_LIBS=1 \ -DCMAKE_BUILD_TYPE=Release USE_LDCONFIG= yes LDFLAGS+= -Wl,-rpath,${LOCALBASE}/lib TEST_TARGET= run_tests GO_BUILDFLAGS+= -mod=vendor MAKE_ENV+= GOPATH=${WRKSRC}/vendor GOPROXY=off post-patch: @${GREP} -FRl -- '-D_XOPEN_SOURCE=700' ${WRKSRC} | \ ${XARGS} ${REINPLACE_CMD} -e 's,-D_XOPEN_SOURCE=700,,' @${GREP} -FRl '${GO_EXECUTABLE} run ' ${WRKSRC} | \ ${XARGS} ${REINPLACE_CMD} -r -e 's,([$][{]GO_EXECUTABLE[}] run),\1 ${GO_BUILDFLAGS},' @${FIND} ${WRKSRC}/include -name '*.bak' -delete do-install: ${INSTALL_PROGRAM} ${WRKSRC}/tool/bssl ${STAGEDIR}${PREFIX}/bin/ (cd ${WRKSRC}/include && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/include) ${INSTALL_LIB} ${WRKSRC}/crypto/libcrypto.so ${STAGEDIR}${PREFIX}/lib/libcrypto.so.1.0.0 ${INSTALL_LIB} ${WRKSRC}/ssl/libssl.so ${STAGEDIR}${PREFIX}/lib/libssl.so.1.0.0 ${LN} -sf libcrypto.so.1 ${STAGEDIR}${PREFIX}/lib/libcrypto.so ${LN} -sf libcrypto.so.1.0.0 ${STAGEDIR}${PREFIX}/lib/libcrypto.so.1 ${LN} -sf libssl.so.1 ${STAGEDIR}${PREFIX}/lib/libssl.so ${LN} -sf libssl.so.1.0.0 ${STAGEDIR}${PREFIX}/lib/libssl.so.1 .include diff --git a/security/boringssl/distinfo b/security/boringssl/distinfo index e2ac64e11294..0dd914cbdba4 100644 --- a/security/boringssl/distinfo +++ b/security/boringssl/distinfo @@ -1,11 +1,11 @@ -TIMESTAMP = 1641280446 -SHA256 (google-boringssl-0.0.0.0.2021.12.21.01-9bcc12d_GH0.tar.gz) = 529e77f24d8a1e5286ab9cd1fc649e8ffe484d7d149c4889650067bc2537f274 -SIZE (google-boringssl-0.0.0.0.2021.12.21.01-9bcc12d_GH0.tar.gz) = 30725757 +TIMESTAMP = 1641475926 +SHA256 (google-boringssl-0.0.0.0.2022.01.05.01-295b313_GH0.tar.gz) = b85cf7a822752612438333c9910957b9a085a303136b81f88c0dbb7e4676ae42 +SIZE (google-boringssl-0.0.0.0.2022.01.05.01-295b313_GH0.tar.gz) = 30725404 SHA256 (golang-crypto-c07d793c2f9a_GH0.tar.gz) = bd1e0856c43287c6ebd20d59e2b4f2ffa91c5cc275dbb02bb2cfc822e6dc18a4 SIZE (golang-crypto-c07d793c2f9a_GH0.tar.gz) = 1732023 SHA256 (golang-net-04defd469f4e_GH0.tar.gz) = 6009a6f0989341df975799276ff1c49af650d4a4ed3fd6db3501b91eb601810d SIZE (golang-net-04defd469f4e_GH0.tar.gz) = 1252122 SHA256 (golang-sys-04245dca01da_GH0.tar.gz) = b90ec2bae1f7e395eb368638a6627199efdc28fa9c592a72aac0ae32351fd5d7 SIZE (golang-sys-04245dca01da_GH0.tar.gz) = 1231301 SHA256 (golang-term-7de9c90e9dd1_GH0.tar.gz) = 73603eaab2ab2bfe05061d64ad09f8ed7469de6964a672398f7bf82cffb4b1da SIZE (golang-term-7de9c90e9dd1_GH0.tar.gz) = 15239 diff --git a/security/boringssl/files/patch-crypto_cpu-aarch64-linux.c b/security/boringssl/files/patch-crypto_cpu_aarch64_linux.c similarity index 79% rename from security/boringssl/files/patch-crypto_cpu-aarch64-linux.c rename to security/boringssl/files/patch-crypto_cpu_aarch64_linux.c index 479b9e76a46d..68403a2b75dd 100644 --- a/security/boringssl/files/patch-crypto_cpu-aarch64-linux.c +++ b/security/boringssl/files/patch-crypto_cpu_aarch64_linux.c @@ -1,74 +1,79 @@ ---- crypto/cpu-aarch64-linux.c.orig 2019-12-02 17:52:12 UTC -+++ crypto/cpu-aarch64-linux.c -@@ -14,49 +14,46 @@ +--- crypto/cpu_aarch64_linux.c.orig 2022-01-05 15:30:33.000000000 -0500 ++++ crypto/cpu_aarch64_linux.c 2022-01-06 10:24:03.703277000 -0500 +@@ -14,10 +14,8 @@ #include -#if defined(OPENSSL_AARCH64) && defined(OPENSSL_LINUX) && \ - !defined(OPENSSL_STATIC_ARMCAP) +#if defined(OPENSSL_AARCH64) -#include -- + #include - #include "internal.h" +@@ -26,41 +24,41 @@ -- extern uint32_t OPENSSL_armcap_P; -void OPENSSL_cpuid_setup(void) { - unsigned long hwcap = getauxval(AT_HWCAP); ++#if defined(OPENSSL_FREEBSD) +#include +#include +#include ++#endif - // See /usr/include/asm/hwcap.h on an aarch64 installation for the source of - // these values. - static const unsigned long kNEON = 1 << 1; - static const unsigned long kAES = 1 << 3; - static const unsigned long kPMULL = 1 << 4; - static const unsigned long kSHA1 = 1 << 5; - static const unsigned long kSHA256 = 1 << 6; +- static const unsigned long kSHA512 = 1 << 21; +#ifndef ID_AA64ISAR0_AES_VAL +#define ID_AA64ISAR0_AES_VAL ID_AA64ISAR0_AES +#endif +#ifndef ID_AA64ISAR0_SHA1_VAL +#define ID_AA64ISAR0_SHA1_VAL ID_AA64ISAR0_SHA1 +#endif +#ifndef ID_AA64ISAR0_SHA2_VAL +#define ID_AA64ISAR0_SHA2_VAL ID_AA64ISAR0_SHA2 +#endif - if ((hwcap & kNEON) == 0) { - // Matching OpenSSL, if NEON is missing, don't report other features - // either. - return; - } +void OPENSSL_cpuid_setup(void) { + uint64_t id_aa64isar0; + id_aa64isar0 = READ_SPECIALREG(id_aa64isar0_el1); + OPENSSL_armcap_P |= ARMV7_NEON; - if (hwcap & kAES) { + if (ID_AA64ISAR0_AES_VAL(id_aa64isar0) >= ID_AA64ISAR0_AES_BASE) { OPENSSL_armcap_P |= ARMV8_AES; } - if (hwcap & kPMULL) { + if (ID_AA64ISAR0_AES_VAL(id_aa64isar0) == ID_AA64ISAR0_AES_PMULL) { OPENSSL_armcap_P |= ARMV8_PMULL; } - if (hwcap & kSHA1) { + if (ID_AA64ISAR0_SHA1_VAL(id_aa64isar0) == ID_AA64ISAR0_SHA1_BASE) { OPENSSL_armcap_P |= ARMV8_SHA1; } - if (hwcap & kSHA256) { -+ if(ID_AA64ISAR0_SHA2_VAL(id_aa64isar0) >= ID_AA64ISAR0_SHA2_BASE) { ++ if (ID_AA64ISAR0_SHA2_VAL(id_aa64isar0) >= ID_AA64ISAR0_SHA2_BASE) { OPENSSL_armcap_P |= ARMV8_SHA256; } +- if (hwcap & kSHA512) { +- OPENSSL_armcap_P |= ARMV8_SHA512; +- } } -- --#endif // OPENSSL_AARCH64 && !OPENSSL_STATIC_ARMCAP + +-#endif // OPENSSL_AARCH64 && OPENSSL_LINUX && !OPENSSL_STATIC_ARMCAP +#endif // OPENSSL_AARCH64