Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libnettle for openSUSE:Factory 
checked in at 2023-06-08 21:42:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libnettle (Old)
 and      /work/SRC/openSUSE:Factory/.libnettle.new.15902 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libnettle"

Thu Jun  8 21:42:00 2023 rev:46 rq:1091398 version:3.9.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/libnettle/libnettle.changes      2023-05-17 
10:52:42.235209363 +0200
+++ /work/SRC/openSUSE:Factory/.libnettle.new.15902/libnettle.changes   
2023-06-08 21:42:06.873832780 +0200
@@ -1,0 +2,13 @@
+Thu Jun  8 08:01:19 UTC 2023 - Pedro Monreal <pmonr...@suse.com>
+
+- Include the nettle library manual in HTML and PDF formats in
+  the devel package.
+
+-------------------------------------------------------------------
+Wed Jun  7 06:04:06 UTC 2023 - Andreas Stieger <andreas.stie...@gmx.de>
+
+- update to 3.9.1: [bsc#1212112]
+  * Fix bug in the new OCB code may be exploitable for denial of
+    service or worse due to memory corruption
+
+-------------------------------------------------------------------

Old:
----
  nettle-3.9.tar.gz
  nettle-3.9.tar.gz.sig

New:
----
  nettle-3.9.1.tar.gz
  nettle-3.9.1.tar.gz.sig

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libnettle.spec ++++++
--- /var/tmp/diff_new_pack.CmOSog/_old  2023-06-08 21:42:08.533842563 +0200
+++ /var/tmp/diff_new_pack.CmOSog/_new  2023-06-08 21:42:08.569842775 +0200
@@ -19,7 +19,7 @@
 %define soname 8
 %define hogweed_soname 6
 Name:           libnettle
-Version:        3.9
+Version:        3.9.1
 Release:        0
 Summary:        Cryptographic Library
 License:        GPL-2.0-or-later AND LGPL-2.1-or-later
@@ -152,7 +152,7 @@
 
 %files -n libnettle-devel
 %license COPYING*
-%doc AUTHORS ChangeLog NEWS README
+%doc AUTHORS ChangeLog NEWS README descore.README nettle.html nettle.pdf
 %{_includedir}/nettle
 %{_libdir}/libnettle.so
 %{_libdir}/libhogweed.so


++++++ nettle-3.9.tar.gz -> nettle-3.9.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nettle-3.9/ChangeLog new/nettle-3.9.1/ChangeLog
--- old/nettle-3.9/ChangeLog    2023-05-14 17:03:43.000000000 +0200
+++ new/nettle-3.9.1/ChangeLog  2023-06-01 20:40:35.000000000 +0200
@@ -1,3 +1,33 @@
+2023-06-01  Niels Möller  <ni...@lysator.liu.se>
+
+       * Released Nettle-3.9.1.
+
+2023-05-26  Niels Möller  <ni...@lysator.liu.se>
+
+       * configure.ac: Bump package version, to 3.9.1.
+       (LIBNETTLE_MINOR): Bump minor number, to 8.8.
+       (LIBHOGWEED_MINOR): Bump minor number, to 6.8.
+
+2023-05-19  Niels Möller  <ni...@lysator.liu.se>
+
+       From Jussi Kivilinna:
+       * ocb.c (ocb_crypt_n): Fix broken loop logic.
+       * testsuite/ocb-test.c (test_main): Add test vector from libgcrypt,
+       with larger message, to exercise above loop.
+
+2023-05-16  Niels Möller  <ni...@lysator.liu.se>
+
+       * x86_64/ghash-update.asm: Use separate unaligned load
+       instructions (movups) to load the tabulated values, since they are
+       only 8-byte aligned and pand memory operands require 16-byte
+       alignment.
+
+2023-05-15  Niels Möller  <ni...@lysator.liu.se>
+
+       * eccdata.c (output_bignum_redc): Add missing mpz_clear, reported
+       by Noah Watkins.
+       (output_digits): Delete a gratuitous mpz_init.
+
 2023-05-14  Niels Möller  <ni...@lysator.liu.se>
 
        * Released nettle-3.9.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nettle-3.9/NEWS new/nettle-3.9.1/NEWS
--- old/nettle-3.9/NEWS 2023-05-14 17:03:43.000000000 +0200
+++ new/nettle-3.9.1/NEWS       2023-06-01 20:40:35.000000000 +0200
@@ -1,3 +1,27 @@
+NEWS for the Nettle 3.9.1 release
+
+       This is a bugfix release, fixing a few bugs reported for
+       Nettle-3.9. The bug in the new OCB code may be exploitable for
+       denial of service or worse, since triggering it leads to
+       memory corruption. Upgrading from Nettle-3.9 to the new
+       version is strongly recommended.
+
+       The new version is intended to be fully source and binary
+       compatible with Nettle-3.6. The shared library names are
+       libnettle.so.8.8 and libhogweed.so.6.8, with sonames
+       libnettle.so.8 and libhogweed.so.6.
+
+       Bug fixes:
+
+       * Fix OCB loop for processing messages of size 272 bytes or
+         larger. Reported and fixed by Jussi Kivilinna.
+
+       * Fix alignment bug in the new x86_64 non-pclmul assembly
+         implementation of ghash. Reported by Henrik Grubbström.
+
+       * Fix build-time memory leak in eccdata. Reported by Noah
+         Watkins.
+
 NEWS for the Nettle 3.9 release
 
        This release includes bug fixes, several new features, a few
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nettle-3.9/configure new/nettle-3.9.1/configure
--- old/nettle-3.9/configure    2023-05-14 17:03:43.000000000 +0200
+++ new/nettle-3.9.1/configure  2023-06-01 20:40:35.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for nettle 3.9.
+# Generated by GNU Autoconf 2.69 for nettle 3.9.1.
 #
 # Report bugs to <nettle-b...@lists.lysator.liu.se>.
 #
@@ -580,8 +580,8 @@
 # Identity of this package.
 PACKAGE_NAME='nettle'
 PACKAGE_TARNAME='nettle'
-PACKAGE_VERSION='3.9'
-PACKAGE_STRING='nettle 3.9'
+PACKAGE_VERSION='3.9.1'
+PACKAGE_STRING='nettle 3.9.1'
 PACKAGE_BUGREPORT='nettle-b...@lists.lysator.liu.se'
 PACKAGE_URL=''
 
@@ -1351,7 +1351,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures nettle 3.9 to adapt to many kinds of systems.
+\`configure' configures nettle 3.9.1 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1417,7 +1417,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of nettle 3.9:";;
+     short | recursive ) echo "Configuration of nettle 3.9.1:";;
    esac
   cat <<\_ACEOF
 
@@ -1547,7 +1547,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-nettle configure 3.9
+nettle configure 3.9.1
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2191,7 +2191,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by nettle $as_me 3.9, which was
+It was created by nettle $as_me 3.9.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2576,10 +2576,10 @@
 
 
 LIBNETTLE_MAJOR=8
-LIBNETTLE_MINOR=7
+LIBNETTLE_MINOR=8
 
 LIBHOGWEED_MAJOR=6
-LIBHOGWEED_MINOR=7
+LIBHOGWEED_MINOR=8
 
 MAJOR_VERSION=`echo $PACKAGE_VERSION | sed 's/^\([^.]*\)\..*/\1/'`
 MINOR_VERSION=`echo $PACKAGE_VERSION | sed 's/^[^.]*\.\([0-9]*\).*/\1/'`
@@ -8359,7 +8359,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by nettle $as_me 3.9, which was
+This file was extended by nettle $as_me 3.9.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -8425,7 +8425,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-nettle config.status 3.9
+nettle config.status 3.9.1
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nettle-3.9/configure.ac new/nettle-3.9.1/configure.ac
--- old/nettle-3.9/configure.ac 2023-05-14 17:03:43.000000000 +0200
+++ new/nettle-3.9.1/configure.ac       2023-06-01 20:40:35.000000000 +0200
@@ -2,7 +2,7 @@
 
 dnl Process this file with autoconf to produce a configure script.
 
-AC_INIT([nettle], [3.9], [nettle-b...@lists.lysator.liu.se])
+AC_INIT([nettle], [3.9.1], [nettle-b...@lists.lysator.liu.se])
 AC_PREREQ(2.61)
 AC_CONFIG_SRCDIR([nettle-types.h])
 # Needed to stop autoconf from looking for files in parent directories.
@@ -11,10 +11,10 @@
 AC_CONFIG_HEADER([config.h])
 
 LIBNETTLE_MAJOR=8
-LIBNETTLE_MINOR=7
+LIBNETTLE_MINOR=8
 
 LIBHOGWEED_MAJOR=6
-LIBHOGWEED_MINOR=7
+LIBHOGWEED_MINOR=8
 
 dnl Note double square brackets, for extra m4 quoting.
 MAJOR_VERSION=`echo $PACKAGE_VERSION | sed 's/^\([[^.]]*\)\..*/\1/'`
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nettle-3.9/eccdata.c new/nettle-3.9.1/eccdata.c
--- old/nettle-3.9/eccdata.c    2023-05-14 17:03:43.000000000 +0200
+++ new/nettle-3.9.1/eccdata.c  2023-06-01 20:40:35.000000000 +0200
@@ -1074,7 +1074,7 @@
   unsigned i;
   const char *suffix;
 
-  mpz_init (t);
+  mpz_init_set (t, x);
   mpz_init (mask);
   mpz_init (limb);
 
@@ -1083,8 +1083,6 @@
 
   suffix = bits_per_limb > 32 ? "ULL" : "UL";
 
-  mpz_init_set (t, x);
-
   for (i = 0; i < size; i++)
     {
       if ( (i % 8) == 0)
@@ -1120,6 +1118,7 @@
   mpz_mul_2exp (t, x, size * bits_per_limb);
   mpz_mod (t, t, p);
   output_bignum (name, t, size, bits_per_limb);
+  mpz_clear (t);
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nettle-3.9/nettle.html new/nettle-3.9.1/nettle.html
--- old/nettle-3.9/nettle.html  2023-05-14 17:03:43.000000000 +0200
+++ new/nettle-3.9.1/nettle.html        2023-06-01 20:40:35.000000000 +0200
@@ -379,6 +379,8 @@
 </td></tr>
 <tr><td align="left" valign="top">&bull; <a 
href="#ChaCha_002dPoly1305">ChaCha-Poly1305</a></td><td>&nbsp;&nbsp;</td><td 
align="left" valign="top">
 </td></tr>
+<tr><td align="left" valign="top">&bull; <a 
href="#OCB">OCB</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+</td></tr>
 <tr><td align="left" valign="top">&bull; <a 
href="#SIV_002dCMAC">SIV-CMAC</a></td><td>&nbsp;&nbsp;</td><td align="left" 
valign="top">
 </td></tr>
 <tr><td align="left" valign="top">&bull; <a 
href="#SIV_002dGCM">SIV-GCM</a></td><td>&nbsp;&nbsp;</td><td align="left" 
valign="top">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nettle-3.9/nettle.info new/nettle-3.9.1/nettle.info
--- old/nettle-3.9/nettle.info  2023-05-14 17:03:43.000000000 +0200
+++ new/nettle-3.9.1/nettle.info        2023-06-01 20:40:35.000000000 +0200
@@ -99,6 +99,7 @@
 * GCM::
 * CCM::
 * ChaCha-Poly1305::
+* OCB::
 * SIV-CMAC::
 * SIV-GCM::
 * nettle_aead abstraction::
@@ -7441,71 +7442,71 @@
 
 Tag Table:
 Node: Top543
-Node: Introduction2985
-Node: Copyright4564
-Node: Conventions5391
-Node: Example7545
-Node: Linking8844
-Node: Compatibility9709
-Node: Reference13335
-Node: Hash functions13786
-Node: Recommended hash functions15335
-Node: Miscellaneous hash functions28690
-Node: Legacy hash functions32931
-Ref: GOSTHASH94CP40477
-Node: nettle_hash abstraction42907
-Node: Cipher functions45182
-Node: AES49275
-Node: Arcfour53620
-Node: Arctwo56134
-Node: Blowfish58825
-Node: Camellia63460
-Node: CAST12868026
-Node: ChaCha69965
-Node: DES73061
-Node: DES375479
-Node: Salsa2078592
-Node: Serpent82637
-Node: SM484150
-Node: Twofish85439
-Node: nettle_cipher abstraction86741
-Node: Cipher modes89276
-Node: CBC90460
-Node: CTR95389
-Node: CFB and CFB898011
-Node: XTS103793
-Node: Authenticated encryption110164
-Node: EAX113476
-Node: GCM119618
-Node: CCM134144
-Node: ChaCha-Poly1305146933
-Node: OCB150432
-Node: SIV-CMAC159890
-Node: SIV-GCM164611
-Node: nettle_aead abstraction169530
-Node: Keyed hash functions171211
-Node: HMAC172862
-Node: UMAC181550
-Node: CMAC187421
-Node: Poly1305190745
-Node: Key derivation functions193403
-Node: Public-key algorithms205090
-Node: RSA209161
-Node: RSA-Footnotes229729
-Ref: RSA-Footnote-1229782
-Node: DSA229960
-Node: Elliptic curves245494
-Node: Side-channel silence246879
-Node: ECDSA248326
-Node: GOSTDSA253149
-Node: Curve 25519 and Curve 448257145
-Node: Randomness265060
-Node: ASCII encoding280544
-Node: Miscellaneous functions287271
-Node: Compatibility functions288431
-Node: Nettle soup289120
-Node: Installation290117
-Node: Index291493
+Node: Introduction2993
+Node: Copyright4572
+Node: Conventions5399
+Node: Example7553
+Node: Linking8852
+Node: Compatibility9717
+Node: Reference13343
+Node: Hash functions13794
+Node: Recommended hash functions15343
+Node: Miscellaneous hash functions28698
+Node: Legacy hash functions32939
+Ref: GOSTHASH94CP40485
+Node: nettle_hash abstraction42915
+Node: Cipher functions45190
+Node: AES49283
+Node: Arcfour53628
+Node: Arctwo56142
+Node: Blowfish58833
+Node: Camellia63468
+Node: CAST12868034
+Node: ChaCha69973
+Node: DES73069
+Node: DES375487
+Node: Salsa2078600
+Node: Serpent82645
+Node: SM484158
+Node: Twofish85447
+Node: nettle_cipher abstraction86749
+Node: Cipher modes89284
+Node: CBC90468
+Node: CTR95397
+Node: CFB and CFB898019
+Node: XTS103801
+Node: Authenticated encryption110172
+Node: EAX113484
+Node: GCM119626
+Node: CCM134152
+Node: ChaCha-Poly1305146941
+Node: OCB150440
+Node: SIV-CMAC159898
+Node: SIV-GCM164619
+Node: nettle_aead abstraction169538
+Node: Keyed hash functions171219
+Node: HMAC172870
+Node: UMAC181558
+Node: CMAC187429
+Node: Poly1305190753
+Node: Key derivation functions193411
+Node: Public-key algorithms205098
+Node: RSA209169
+Node: RSA-Footnotes229737
+Ref: RSA-Footnote-1229790
+Node: DSA229968
+Node: Elliptic curves245502
+Node: Side-channel silence246887
+Node: ECDSA248334
+Node: GOSTDSA253157
+Node: Curve 25519 and Curve 448257153
+Node: Randomness265068
+Node: ASCII encoding280552
+Node: Miscellaneous functions287279
+Node: Compatibility functions288439
+Node: Nettle soup289128
+Node: Installation290125
+Node: Index291501
 
 End Tag Table
 
Binary files old/nettle-3.9/nettle.pdf and new/nettle-3.9.1/nettle.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nettle-3.9/nettle.texinfo 
new/nettle-3.9.1/nettle.texinfo
--- old/nettle-3.9/nettle.texinfo       2023-05-14 17:03:43.000000000 +0200
+++ new/nettle-3.9.1/nettle.texinfo     2023-06-01 20:40:35.000000000 +0200
@@ -122,6 +122,7 @@
 * GCM::
 * CCM::
 * ChaCha-Poly1305::
+* OCB::
 * SIV-CMAC::
 * SIV-GCM::
 * nettle_aead abstraction::
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nettle-3.9/ocb.c new/nettle-3.9.1/ocb.c
--- old/nettle-3.9/ocb.c        2023-05-14 17:03:42.000000000 +0200
+++ new/nettle-3.9.1/ocb.c      2023-06-01 20:40:35.000000000 +0200
@@ -230,14 +230,14 @@
        : OCB_MAX_BLOCKS - 1 + (ctx->message_count & 1);
 
       ocb_fill_n (key, &ctx->offset, ctx->message_count, blocks, o);
-      ctx->message_count += n;
+      ctx->message_count += blocks;
 
       size = blocks * OCB_BLOCK_SIZE;
       memxor3 (block[0].b, o[0].b, src, size);
       f (cipher, size, block[0].b, block[0].b);
       memxor3 (dst, block[0].b, o[0].b, size);
 
-      n -= blocks; src += size; dst -= size;
+      n -= blocks; src += size; dst += size;
     }
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nettle-3.9/testsuite/ocb-test.c 
new/nettle-3.9.1/testsuite/ocb-test.c
--- old/nettle-3.9/testsuite/ocb-test.c 2023-05-14 17:03:43.000000000 +0200
+++ new/nettle-3.9.1/testsuite/ocb-test.c       2023-06-01 20:40:36.000000000 
+0200
@@ -297,4 +297,109 @@
            SHEX("0001020304050607"), /* auth data */
            SHEX("0001020304050607"), /* plaintext */
            SHEX("6820B3657B6F615A5725BDA0D3B4EB3A257C9AF1F8F03009")); /* 
ciphertext */
+
+  /* Test-vector from libgcrypt:tests/basic.c: */
+  test_aead(&nettle_ocb_aes128, (nettle_hash_update_func *) set_nonce_tag96,
+          SHEX("0F0E0D0C0B0A09080706050403020100"), /* key */
+          SHEX("000102030405060708090A0B0C0D0E0F1011121314151617"
+               "18191A1B1C1D1E1F2021222324252627"), /* auth data */
+          /* test vector for checksumming */
+          SHEX("01000000000000000000000000000000"
+               "02000000000000000000000000000000"
+               "04000000000000000000000000000000"
+               "08000000000000000000000000000000"
+               "10000000000000000000000000000000"
+               "20000000000000000000000000000000"
+               "40000000000000000000000000000000"
+               "80000000000000000000000000000000"
+               "00010000000000000000000000000000"
+               "00020000000000000000000000000000"
+               "00040000000000000000000000000000"
+               "00080000000000000000000000000000"
+               "00100000000000000000000000000000"
+               "00200000000000000000000000000000"
+               "00400000000000000000000000000000"
+               "00800000000000000000000000000000"
+               "00000100000000000000000000000000"
+               "00000200000000000000000000000000"
+               "00000400000000000000000000000000"
+               "00000800000000000000000000000000"
+               "00001000000000000000000000000000"
+               "00002000000000000000000000000000"
+               "00004000000000000000000000000000"
+               "00008000000000000000000000000000"
+               "00000001000000000000000000000000"
+               "00000002000000000000000000000000"
+               "00000004000000000000000000000000"
+               "00000008000000000000000000000000"
+               "00000010000000000000000000000000"
+               "00000020000000000000000000000000"
+               "00000040000000000000000000000000"
+               "00000080000000000000000000000000"
+               "00000000010000000000000000000000"
+               "00000000020000000000000000000000"
+               "00000000040000000000000000000000"
+               "00000000080000000000000000000000"
+               "00000000100000000000000000000000"
+               "00000000200000000000000000000000"
+               "00000000400000000000000000000000"
+               "00000000800000000000000000000000"
+               "00000000000100000000000000000000"
+               "00000000000200000000000000000000"
+               "00000000000400000000000000000000"
+               "00000000000800000000000000000000"
+               "00000000001000000000000000000000"
+               "00000000002000000000000000000000"
+               "00000000004000000000000000000000"
+               "00000000008000000000000000000000"), /* plaintext */
+          SHEX("01105c6e36f6ac480f022c51e31ed702"
+               "90fda4b7b783194d4b4be8e4e1e2dff4"
+               "6a0804d1c5f9f808ea7933e31c063233"
+               "2bf65a22b20bb13cde3b80b3682ba965"
+               "b1207c58916f7856fa9968b410e50dee"
+               "98b35c071163d1b352b9bbccd09fde29"
+               "b850f40e71a8ae7d2e2d577f5ee39c46"
+               "7fa28130b50a123c29958e4665dda9a5"
+               "e0793997f8f19633a96392141d6e0e88"
+               "77850ed4364065d1d2f8746e2f1d5fd1"
+               "996cdde03215306503a30e41f58ef3c4"
+               "400365cfea4fa6381157c12a46598edf"
+               "18604854462ec66e3d3cf26d4723cb6a"
+               "9d801095048086a606fdb9192760889b"
+               "a8ce2e70e1b55a469137a9e2e6734565"
+               "283cb1e2c74f37e0854d03e33f8ba499"
+               "ef5d9af4edfce077c6280338f0a64286"
+               "2e6bc27ebd5a4c91b3778e22631251c8"
+               "c5bb75a10945597a9d6c274fc82d3338"
+               "b403a0a549d1375f26e71ef22bce0941"
+               "93ea87e2ed72fce0546148c351eec3be"
+               "867bb1b96070c377fff3c98e21562beb"
+               "475cfe28abcaaedf49981f6599b15140"
+               "ea6130d24407079f18ba9d4a8960b082"
+               "b39c57320e2e064f02fde88c23112146"
+               "1cac3655868aef584714826ee4f361fb"
+               "e6d692e1589cbb9dd3c74fa628df2a1f"
+               "3b0029b1d62b7e9978013ed3c793c1dd"
+               "1f184c8f7022a853cac40b74ac749aa3"
+               "f33f0d14732dfda0f2c3c20591bf1f5a"
+               "710ec0d0bca342baa5146068a78ff58c"
+               "66316312b7a98af35a0f4e92799b4047"
+               "f047ae61f25c28d232ce5c168cc745d6"
+               "6da13cb0f9e38a696635dba7a21571cf"
+               "cd64ec8cc33db7879f59a90d9edd00f6"
+               "a899e39ab36b9269a3ac04ebad9326bf"
+               "53cd9b400168a61714cd628a4056d236"
+               "bd8622c76daa54cb65f5db2fe03bafbe"
+               "0b23549ae31136f607293e8093a21934"
+               "74fd5e9c2451b4c8e0499e6ad34fafc8"
+               "ab77722a282f7f84b14ddebf7e696300"
+               "c1ef92d4a0263c6cca104530f996e272"
+               "f58992ff68d642b071a5848dc4acf2ae"
+               "28fb1f27ae0f297d5136a7a0a4a03e89"
+               "b588755b8217a1c62773790e69261269"
+               "19f45daf7b3ccf18e3fc590a9a0e172f"
+               "033ac4d13c3decc4c62d7de718ace802"
+               "140452dc850989f6762e3578bbb04be3"), /* ciphertext */
+          SHEX("BBAA9988776655443322110D"), /* nonce */
+          SHEX("1a237c599c4649f4e586b2de")); /* tag */
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nettle-3.9/x86_64/ghash-update.asm 
new/nettle-3.9.1/x86_64/ghash-update.asm
--- old/nettle-3.9/x86_64/ghash-update.asm      2023-05-14 17:03:43.000000000 
+0200
+++ new/nettle-3.9.1/x86_64/ghash-update.asm    2023-06-01 20:40:35.000000000 
+0200
@@ -44,6 +44,8 @@
 define(`M1', `%xmm3')
 define(`M2', `%xmm4')
 define(`M3', `%xmm5')
+define(`T0', `%xmm6')
+define(`T1', `%xmm7')
 
        .file "ghash-update.asm"
 
@@ -54,7 +56,7 @@
        .text
        ALIGN(16)
 PROLOGUE(_nettle_ghash_update)
-       W64_ENTRY(4, 6)
+       W64_ENTRY(4, 8)
        sub     $1, BLOCKS
        movups  (XP), X
        jc      .Ldone
@@ -77,10 +79,18 @@
        pshufd  $0xaa, M3, M2
        pshufd  $0xff, M3, M3
        pslld   $1, X
-       pand    (KEY, CNT), M0
-       pand    (KEY32, CNT), M1
-       pand    16(KEY, CNT), M2
-       pand    16(KEY32, CNT), M3
+       C Tabulated values are only 8-byte aligned, and therefore
+       C can't be used as memory operands to pand. It would be nice
+       C if we could force 16-byte alignment on nettle_block16, using
+       C C11 alignas.
+       movups  (KEY, CNT), T0
+       movups  (KEY32, CNT), T1
+       pand    T0, M0
+       pand    T1, M1
+       movups  16(KEY, CNT), T0
+       movups  16(KEY32, CNT), T1
+       pand    T0, M2
+       pand    T1, M3
        pxor    M0, M1
        pxor    M2, M3
        pxor    M1, R
@@ -98,6 +108,6 @@
 .Ldone:
        movups  X, (XP)
        mov     SRC, %rax
-       W64_EXIT(4, 6)
+       W64_EXIT(4, 8)
        ret
 EPILOGUE(_nettle_ghash_update)

Reply via email to