[openwrt/openwrt] nettle: update to 3.8

LEDE Commits lede-commits at lists.infradead.org
Sun Jul 3 12:06:08 PDT 2022


hauke pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/b32f1650480b08b39a75e9b0da2a3517955ebb56

commit b32f1650480b08b39a75e9b0da2a3517955ebb56
Author: Nick Hainke <vincent at systemli.org>
AuthorDate: Mon Jun 27 23:57:00 2022 +0200

    nettle: update to 3.8
    
    Refresh:
    - 100-portability.patch
    
    Changelog:
    
    ea4ea5e6 Document MacOS test workaround.
    b14fc902 Add missing file fat-arm64.c to tar file.
    6720f433 Update config.guess and config.sub to latest versions.
    a2be57f0 NEWS entries for Nettle-3.8.
    bff9a605 Update version numbers, for nettle-3.8.
    36386678 Fix comment typo
    e05fd5a9 Add ChangeLog entry for SM3 contribution.
    8739faa8 Document cbc_aes128_encrypt, cbc_aes192_encrypt and cbc_aes256_encrypt.
    efb2ec7f Deleted the manual's incomplete and out of date list of authors.
    af38c91f New more accurate AUTHORS file.
    ba084efa Fix ChangeLog typo.
    0fff3097 ChangeLog entries for s390x ghash update.
    75b687a8 Fix comment typo.
    5d0089ed Refactor s390x-specific code for new ghash organization
    2aabd5e2 ppc: Update fat setup for new ghash organization.
    8f5fddfb ppc: Update vpmsumd ghash to new organization.
    1227381e Comment fix.
    9939f866 arm64: Update fat setup for new ghash organization.
    ab62f731 Fix comment error
    b1645555 arm64: Update pclmul ghash to new organization.
    6b80b889 Update fat setup for new ghash organization.
    d382fcc0 Delete _ghash_digest.
    d11c4cd9 x86_64: Update pclmul ghash to new organization.
    f79cc0c1 x86_64: Update table-based ghash to new organization.
    bdc2fc31 Move _ghash_digest.
    1d438ad4 Refactor GCM C implementation.
    bdf820df New function block16_zero.
    d966ea0d Delete code for GCM_TABLE_BITS != 8.
    60edc290 x86_64: Fat setup for GCM.
    be245313 Fix comment typo.
    f8fa4f1f x86_64: Initial implementation of gcm using the pclmulqdq instructions.
    23f75f58 Rearrange gcm configuration defines, and add tests for internal functions.
    483ccbc9 Add tests for edge cases in poly1305 digest folding.
    f3656a44 x86_64: Rewrite of poly1305 assembly.
    b7268727 ChangeLog entry for arm64 implementation of chacha.
    1d4a985c ChangeLog entries for new ppc64 ecc files.
    99be366f ecc: Add powerpc64 assembly for ecc_448_modp
    53f7ae66 Move a comment.
    e643dcf1 ecc: Add powerpc64 assembly for ecc_25519_modp
    741191d1 ecc: Add powerpc64 assembly for ecc_224_modp
    4adcb4af Simplify poly1305-test, more use of tstring length.
    b48217c8 Add randomized tests of poly1305.
    dbf178c0 Arrange so that GMP or mini-gmp is always available for tests.
    7d83510e ChangeLog entries for new ppc64 ecc files.
    02bbf7d1 ecc: Add powerpc64 assembly for ecc_521_modp
    2bc7dfad ecc: Add powerpc64 assembly for ecc_384_modp
    9b6c0639 ecc: Add powerpc64 assembly for ecc_192_modp
    39af7b2e [Arm64] Optimize Chacha20
    c82876a5 [S390x] Alerting assembler of machine type
    044d24b0 [S390x] Optimize Chacha20
    94228f87 tests: Use inline function for dummy definition of test_randomize.
    7926debe Share ecc point validation function in testutils.c.
    25f73004 Whitespace cleanup
    0ec184d8 ppc: Reduce number of registers used for ecc_secp256r1_redc.
    c7cf1939 ppc: New configure test for ELFV2_ABI
    f57640ea x86_64: Improved ecc_secp256r1_redc
    dd65a63e ChangeLog for previous change.
    ecd4eacf ppc: Add powerpc64 assembly for ecc_256_redc
    b2758f7c doc: documentation for SM3 hash
    0ea74c02 Comment improvements for x86_64 ecc_secp256r1_redc
    78aabc69 nettle-benchmark: bench SM3 hashes
    7f77ccb4 hmac: add support for SM3 hash function
    e2edd9be testsuite: add test for SM3 hash function
    b72886e5 Add OSCCA SM3 hash algorithm
    d2e4e531 Delete function mpz_limbs_read_n.
    dd566239 Delete function mpz_limbs_cmp.
    07d5e755 gitlab-ci: Enable randomized tests
    64ce8c77 Randomize more tests
    a6f9bdeb Reduce allocation in modinv test
    957482d9 Fix sqrt_ratio test for v = 0 case.
    7f730943 Reduce allocation in sqrt tests
    2c9a600d Move NETTLE_TEST_SEED logic to testutils.c.
    48d61c28 Delete obsolete comment.
    ac95be13 Fix and test for sqrt(0) special case.
    ffe0f587 eccdata: Output ecc_sqrt_z and ECC_SQRT_E only when computed.
    65c95c79 Fix comment typo.
    8db66280 Let secp384r1 inverse and sqrt share most of the powering.
    5b2758a3 eccdata: Delete generation of unused values ecc_sqrt_t and ECC_SQRT_T_BITS.
    b3abfac5 eccdata: Generate both redc and non-redc versions of ecc_sqrt_z.
    2dbe065d Implement secp224r1 square root, based on patch by Wim Lewis.
    c8daa71c New function ecc_mod_equal_p, based on patch by Wim Lewis.
    4be1725f New function ecc_mod_pow_127m1, used for ecc_secp224r1_inv.
    4e987de3 Implement secp521r1 square root, based on patch by Wim Lewis.
    2adc4268 Implement secp384r1 square root, based on patch by Wim Lewis.
    bc07754f Implement secp256r1 square root, based on patch by Wim Lewis.
    35f12552 Implement secp192r1 square root, based on patch by Wim Lewis.
    c2726388 Renamed sqrt_itch --> sqrt_ratio_itch, and curve25519 and curve448 sqrt functions.
    03421be1 Rename ecc sqrt --> sqrt_ratio.
    652bdc79 New function ecc_mod_zero_p.
    571d2cc2 [S390x] Improvements on documentation and instruction set usage for SHA3 permute
    26b0f47b New function sec_zero_p.
    259ec19a [S390x] Remove lgr instructions by using xgrk instead of xgr instruction
    73722fb0 Rewrite of secp256r1 mod functions.
    45028ff2 Extend ecc-mod-test, with improved coverage of corner cases.
    806d6f6a [S390x] Optimize SHA3 permute using vector facility
    78f44318 Change "signature on digest" --> "of digest".
    0f90c076 Doc fixes.
    52c86f94 Delete a few old FIXME comments
    2b68ee47 Use @url and https consistently for references. Fix overlong lines.
    ea4b2e86 Use texi2pdf to generate the pdf manual
    54bbc09b ChangeLog entries for doc structure improvements.
    cc92638c Divide Cipher section into menu and nodes, and some other minor fixes.
    5e6af10b Delete explicit node pointers in nettle.texinfo
    55584f4e Change CBC-AES interface
    7a966ac3 Test AEAD encrypt/decrypt with message split into pieces.
    686fd559 More checks for null pointers in test_aead, to silent static analyzer.
    41a72c24 Fix checks of HAVE_NATIVE_cbc_aes*_encrypt
    d5b0b9cb Fix fat builds for x86_64 windows
    419d7af5 x86_64: Fat setup for assembly CBC AES.
    121290e0 x86_64: Assembly CBC AES aesni functions.
    1f58b09c Add specialized functions for cbc-aes.
    99dffa9c ChangeLog entries for recent contributions.
    38092fde gitlab-ci: Use mini-gmp for big-endian powerpc64 cross build
    4147279b gitlab-ci: Explicitly install cross libgmp-dev packages
    8c2321d2 gitlab-ci: No-assembly cross-build for s390x, to test big-endian
    d4cd2965 gitlab-ci: Delete mips build
    9765f8b9 [S390x] Optimize SHA256 and SHA512 compress functions
    463553ae x86_64: New 2-way aesni loop also for aes256
    c7391e5c x86_64: Refactor aesni assembly, with specific functions for each key size.
    4ea2a1f8 [S390x] Optimize SHA1 compress
    a47813c2 [AArch64] Utilize AES 1-block macros in 4-block macros
    5f7740a3 [AArch64] Load AES keys at function prologue
    76c7418c ChangeLog entries for previous change.
    f7bc3e1b [AArch64] Move AES round macros to machine.m4
    39d1e2a3 [AArch64] Optimize AES with fat build support
    b8054a1d [S390x] Optimize memxor3 using vector facility with fat support
    422219fe [S390x] Optimize memxor
    3900fe65 Add fat-s390x.c to OPT_SOURCES.
    c2f16582 Fix name of s390x/fat directory in make dist target.
    4fc00c4d [S390x] add FAT_TEST_LIST variable to enable fat build testing
    856c62ef [S390x] Replace inline assembly and fix fat filenames
    3be3ff3e [S390x] Fat build support for AES and GHASH
    9f9d4c4b arm64: Add sha2 to aarch64 fat tests.
    774917ec ChangeLog entry for arm64 sha256..
    7b446327 [AArch64] Fat build support for SHA-256 compress
    6c84092d [S390x] wipe parameter block content and leftover bytes of data from stack
    7d301d93 [S390x] wipe hash subkey from stack once GHASH operation completed
    d1c8417f [AArch64] Optimize SHA-256 compress
    33bfc509 [S390x] Use uppercase for macro names in machine.m4 and enhance the documentation for GHASH implementation
    94be863c Add sha1 to aarch64 fat tests.
    6c89ed3c ChangeLog entry for previous change.
    e5a9dbf4 arm64: Fat build support for SHA1 compress
    530e4c8d [S390x] Update configure.ac and Makefile.in
    b0525367 [S390x] Implement alloc_stack and free_stack macros in machine.m4
    72448928 [S390x] Optimize GHASH
    20fedc01 Update Nettle-3.7.3 NEWS.
    c80961c6 Add input check to rsa_decrypt family of functions.
    cd6059ae Change _rsa_sec_compute_root_tr to take a fix input size.
    401e0bdd Fix comment typos.
    fd6d9ba7 Add check that message length to _pkcs1_sec_decrypt is valid.
    e60d8367 ChangeLog entry for arm64 sha1.
    47cafcf2 aarch64: Optimize SHA1 Compress
    a46a17e9 Fix C++-style comments
    022e51a2 ChangeLog entries for aes keywrap.
    0145efbc Implement aes key wrap and key unwrap (RFC 3394)
    61bcbbf8 gitlab-ci: Explicitly pass --enable-s390x-msa to s390x build.
    3b1bb7cb Fix comment typo.
    c23701f3 Reorder and indent asm_replace_list.
    c2a14fa3 ChangeLog entry for new s390x AES implementation.
    1f38723e Append s390x-specific asm file names to asm_replace_list in configure.ac
    71dafe91 [S390x] Basic AES-192 and AES-256 optimizations
    8247fa21 ppc: Fix macro name SWAP_MASK to use all uppercase.
    b9f0ede2 Update config.guess and config.sub.
    46515038 [S390x] Basic AES-128 optimization
    f4dc5f20 Split aes-encrypt.c and aes-decrypt.c into one file per key size.
    0bff7a2b Initial config for s390x, contributed by Mamone Tarsha.
    06d6ef33 nettle-benchmark: avoid -Wmaybe-uninitialized warnings
    dda3f4fd gitlab-ci: Fix only: variables: check, and quote variables.
    c2b56cd7 gitlab-ci: Use pipeline variable S390X_ACCOUNT
    c25774e2 gitlab-ci: Add remote tests for s390x.
    d5972ced Add forward declaration of struct aes_table.
    085317d6 ChangeLog entries for arm64 fat build.
    944881d7 ChangeLog entry for nettle-3.7.2 release
    f9e0e1f4 NEWS entries for 3.7.2.
    1585f6ac [AArch64] Support fat build for GCM optimization
    03b8ba39 [AArch64] Use m4 macros in gcm-hash.asm and add documentation comments
    3f43c143 [AArch64] Update README to be on par with other architectures
    b30e0ca6 Fix canonical reduction in gostdsa_vko.
    d9b564e4 Similar fix for eddsa.
    fbaefb64 Analogous fix to ecc_gostdsa_verify.
    c24b3616 Ensure ecdsa_sign output is canonically reduced.
    2397757b Fix bug in ecc_ecdsa_verify.
    5b7608fd Use ecc_mod_mul_canonical for point comparison.
    2bf497ba New functions ecc_mod_mul_canonical and ecc_mod_sqr_canonical.
    a471ae85 aarch64: Rename arm64/v8/ --> arm64/crypto/
    0489825e aarch64: Use .arch armv8-a+crypto directive.
    d32152f4 aarch64: Move m4 definitions after .file directive
    f3dda9f4 ChangeLog entries for arm64 gcm_hash.
    b098f19b arch64: Fix clang build
    fd9dd9d7 arch64: Fix copyright line and typos
    a3f91c0e aarch64: Adjust gcm-hash assembly for big-endian systems
    09d77a10 aarch64: Implement GHASH using the crypto extension pmul instructions.
    0c5429d3 aarch64: Add README
    dbd16501 Add an empty machine.m64 to make configure happy
    ebf9ae83 Recognize arm64 in configure
    
    Signed-off-by: Nick Hainke <vincent at systemli.org>
---
 package/libs/nettle/Makefile                      | 4 ++--
 package/libs/nettle/patches/100-portability.patch | 8 ++++----
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/package/libs/nettle/Makefile b/package/libs/nettle/Makefile
index 87853baa82..0c06205ec2 100644
--- a/package/libs/nettle/Makefile
+++ b/package/libs/nettle/Makefile
@@ -8,13 +8,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=nettle
-PKG_VERSION:=3.7.3
+PKG_VERSION:=3.8
 PKG_RELEASE:=$(AUTORELEASE)
 PKG_USE_MIPS16:=0
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=@GNU/nettle
-PKG_HASH:=661f5eb03f048a3b924c3a8ad2515d4068e40f67e774e8a26827658007e3bcf0
+PKG_HASH:=7576c68481c198f644b08c160d1a4850ba9449e308069455b5213319f234e8e6
 
 PKG_LICENSE:=GPL-2.0-or-later
 PKG_LICENSE_FILES:=COPYING
diff --git a/package/libs/nettle/patches/100-portability.patch b/package/libs/nettle/patches/100-portability.patch
index 5bbae22752..b4677ec020 100644
--- a/package/libs/nettle/patches/100-portability.patch
+++ b/package/libs/nettle/patches/100-portability.patch
@@ -1,6 +1,6 @@
 --- a/configure
 +++ b/configure
-@@ -4661,6 +4661,7 @@ $as_echo_n "checking build system compil
+@@ -4704,6 +4704,7 @@ $as_echo_n "checking build system compil
  # remove anything that might look like compiler output to our "||" expression
  rm -f conftest* a.out b.out a.exe a_out.exe
  cat >conftest.c <<EOF
@@ -8,7 +8,7 @@
  int
  main ()
  {
-@@ -4693,6 +4694,7 @@ $as_echo_n "checking build system compil
+@@ -4736,6 +4737,7 @@ $as_echo_n "checking build system compil
  # remove anything that might look like compiler output to our "||" expression
  rm -f conftest* a.out b.out a.exe a_out.exe
  cat >conftest.c <<EOF
@@ -16,7 +16,7 @@
  int
  main ()
  {
-@@ -4729,6 +4731,7 @@ $as_echo_n "checking build system compil
+@@ -4772,6 +4774,7 @@ $as_echo_n "checking build system compil
  # remove anything that might look like compiler output to our "||" expression
  rm -f conftest* a.out b.out a.exe a_out.exe
  cat >conftest.c <<EOF
@@ -24,7 +24,7 @@
  int
  main ()
  {
-@@ -4779,6 +4782,7 @@ else
+@@ -4822,6 +4825,7 @@ else
    gmp_cv_prog_exeext_for_build="$EXEEXT"
  else
    cat >conftest.c <<EOF




More information about the lede-commits mailing list