Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libcryptopp for openSUSE:Factory 
checked in at 2023-12-22 22:41:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libcryptopp (Old)
 and      /work/SRC/openSUSE:Factory/.libcryptopp.new.28375 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libcryptopp"

Fri Dec 22 22:41:35 2023 rev:39 rq:1134568 version:8.9.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/libcryptopp/libcryptopp.changes  2023-07-18 
21:55:04.470611711 +0200
+++ /work/SRC/openSUSE:Factory/.libcryptopp.new.28375/libcryptopp.changes       
2023-12-22 22:41:49.277073566 +0100
@@ -1,0 +2,40 @@
+Thu Dec 21 13:48:35 UTC 2023 - pgaj...@suse.com
+
+- version update to 8.9.0
+  * Crypto++ 8.9 was released on October 1, 2023. The 8.9 release
+    was a minor, unplanned release. There were no CVEs and one
+    memory error.
+
+  * The 8.9 release was driven by the fix for `ProcessData`, and
+    the failures when `inString==outString`. Also see GH #1231,
+    Rabbit Produces null Keystream When inString == outString.
+
+  * Release notes
+  * ===========
+
+  * minor release, recompile of programs required
+  * expanded community input and support
+  * 88 unique contributors as of this release
+  * add additional tests to datatest.cpp
+  * fix SIMON128 Asan finding on POWER8
+  * fix AES/CFB and AES/CTR modes self test failures when using
+    Cryptogams AES on ARMv7
+  * fix ARIA/CTR mode self test failures when inString==outString
+  * fix HIGHT/CTR mode self test failures when
+    inString==outString
+  * fix Rabbit/CTR mode self test failures when
+    inString==outString
+  * fix HC128/CTR and HC256/CTR mode self test failures when
+    inString==outString
+  * fix Prime Table and dangling reference to a temporary
+  * fix Singleton::Ref() when using C++11 memory fences
+  * remove unneeded call to Crop() in Randomize()
+- modified patches
+  % libcryptopp-shared.patch (refreshed)
+- modified sources
+  % baselibs.conf
+- added patches
+  fix CVE-2023-50980 [bsc#1218219], DoS via malformed DER public key file
+  + libcryptopp-CVE-2023-50980.patch
+
+-------------------------------------------------------------------

Old:
----
  CRYPTOPP_8_8_0.tar.gz

New:
----
  CRYPTOPP_8_9_0.tar.gz
  libcryptopp-CVE-2023-50980.patch

BETA DEBUG BEGIN:
  New:  fix CVE-2023-50980 [bsc#1218219], DoS via malformed DER public key file
  + libcryptopp-CVE-2023-50980.patch
BETA DEBUG END:

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

Other differences:
------------------
++++++ libcryptopp.spec ++++++
--- /var/tmp/diff_new_pack.xKNaXC/_old  2023-12-22 22:41:50.185106852 +0100
+++ /var/tmp/diff_new_pack.xKNaXC/_new  2023-12-22 22:41:50.185106852 +0100
@@ -17,7 +17,7 @@
 
 
 %define major 8
-%define minor 8
+%define minor 9
 %define patch 0
 %define pkg_version %{major}%{minor}%patch
 # There is no upstream interface version information.
@@ -36,6 +36,8 @@
 Source2:        baselibs.conf
 # PATCH-FEATURE-OPENSUSE libcryptopp-shared.patch -- improve shared library 
creation
 Patch1:         libcryptopp-shared.patch
+# CVE-2023-50980 [bsc#1218219], DoS via malformed DER public key file
+Patch2:         libcryptopp-CVE-2023-50980.patch
 BuildRequires:  dos2unix
 BuildRequires:  gcc-c++
 BuildRequires:  pkgconfig
@@ -68,8 +70,7 @@
 curve crypto. This package is used for crypto++ development.
 
 %prep
-%setup -q -n "cryptopp-CRYPTOPP_%{major}_%{minor}_%patch"
-%autopatch -p1
+%autosetup -p1 -n "cryptopp-CRYPTOPP_%{major}_%{minor}_%patch"
 
 %build
 %ifarch %{arm} i586

++++++ CRYPTOPP_8_8_0.tar.gz -> CRYPTOPP_8_9_0.tar.gz ++++++
/work/SRC/openSUSE:Factory/libcryptopp/CRYPTOPP_8_8_0.tar.gz 
/work/SRC/openSUSE:Factory/.libcryptopp.new.28375/CRYPTOPP_8_9_0.tar.gz differ: 
char 13, line 1

++++++ baselibs.conf ++++++
--- /var/tmp/diff_new_pack.xKNaXC/_old  2023-12-22 22:41:50.257109491 +0100
+++ /var/tmp/diff_new_pack.xKNaXC/_new  2023-12-22 22:41:50.261109637 +0100
@@ -1,2 +1,2 @@
-libcryptopp8_8_0
+libcryptopp8_9_0
 

++++++ libcryptopp-CVE-2023-50980.patch ++++++
diff --git a/gf2n.cpp b/gf2n.cpp
index 452e6982..8993baae 100644
--- a/gf2n.cpp
+++ b/gf2n.cpp
@@ -135,6 +135,9 @@ PolynomialMod2 PolynomialMod2::Monomial(size_t i)
 
 PolynomialMod2 PolynomialMod2::Trinomial(size_t t0, size_t t1, size_t t2)
 {
+       CRYPTOPP_ASSERT(t0 > t1);
+       CRYPTOPP_ASSERT(t1 > t2);
+
        PolynomialMod2 r((word)0, t0+1);
        r.SetBit(t0);
        r.SetBit(t1);
@@ -144,6 +147,11 @@ PolynomialMod2 PolynomialMod2::Trinomial(size_t t0, size_t 
t1, size_t t2)
 
 PolynomialMod2 PolynomialMod2::Pentanomial(size_t t0, size_t t1, size_t t2, 
size_t t3, size_t t4)
 {
+       CRYPTOPP_ASSERT(t0 > t1);
+       CRYPTOPP_ASSERT(t1 > t2);
+       CRYPTOPP_ASSERT(t2 > t3);
+       CRYPTOPP_ASSERT(t3 > t4);
+
        PolynomialMod2 r((word)0, t0+1);
        r.SetBit(t0);
        r.SetBit(t1);
diff --git a/gf2n.h b/gf2n.h
index 4aef31ee..38e2a910 100644
--- a/gf2n.h
+++ b/gf2n.h
@@ -69,9 +69,11 @@ public:
                static PolynomialMod2 CRYPTOPP_API Monomial(size_t i);
                /// \brief Provides x^t0 + x^t1 + x^t2
                /// \return x^t0 + x^t1 + x^t2
+               /// \pre The coefficients should be provided in descending 
order. That is, <pre>t0 > t1 > t2<pre>.
                static PolynomialMod2 CRYPTOPP_API Trinomial(size_t t0, size_t 
t1, size_t t2);
                /// \brief Provides x^t0 + x^t1 + x^t2 + x^t3 + x^t4
                /// \return x^t0 + x^t1 + x^t2 + x^t3 + x^t4
+               /// \pre The coefficients should be provided in descending 
order. That is, <pre>t0 > t1 > t2 > t3 > t4<pre>.
                static PolynomialMod2 CRYPTOPP_API Pentanomial(size_t t0, 
size_t t1, size_t t2, size_t t3, size_t t4);
                /// \brief Provides x^(n-1) + ... + x + 1
                /// \return x^(n-1) + ... + x + 1
diff --git a/gf2n.cpp b/gf2n.cpp
index 8993baae..87d9961b 100644
--- a/gf2n.cpp
+++ b/gf2n.cpp
@@ -135,9 +135,14 @@ PolynomialMod2 PolynomialMod2::Monomial(size_t i)
 
 PolynomialMod2 PolynomialMod2::Trinomial(size_t t0, size_t t1, size_t t2)
 {
+       // Asserts and checks due to Bing Shi
        CRYPTOPP_ASSERT(t0 > t1);
        CRYPTOPP_ASSERT(t1 > t2);
 
+       // The test is odd because of ECIES<EC2N>. The basis is t0, but the 
other coefficients are not in descending order.
+       if (t1 > t0 || t2 > t0)
+               throw InvalidArgument("PolynomialMod2: coefficients must be in 
descending order");
+
        PolynomialMod2 r((word)0, t0+1);
        r.SetBit(t0);
        r.SetBit(t1);
@@ -147,11 +152,16 @@ PolynomialMod2 PolynomialMod2::Trinomial(size_t t0, 
size_t t1, size_t t2)
 
 PolynomialMod2 PolynomialMod2::Pentanomial(size_t t0, size_t t1, size_t t2, 
size_t t3, size_t t4)
 {
+       // Asserts and checks due to Bing Shi
        CRYPTOPP_ASSERT(t0 > t1);
        CRYPTOPP_ASSERT(t1 > t2);
        CRYPTOPP_ASSERT(t2 > t3);
        CRYPTOPP_ASSERT(t3 > t4);
 
+       // The test is odd because of ECIES<EC2N>. The basis is t0, but the 
other coefficients are not in descending order.
+       if (t1 > t0 || t2 > t0 || t3 > t0 || t4 > t0)
+               throw InvalidArgument("PolynomialMod2: coefficients must be in 
descending order");
+
        PolynomialMod2 r((word)0, t0+1);
        r.SetBit(t0);
        r.SetBit(t1);
@@ -663,7 +673,12 @@ GF2NT::GF2NT(unsigned int c0, unsigned int c1, unsigned 
int c2)
        , t0(c0), t1(c1)
        , result((word)0, m)
 {
+       // Asserts and checks due to Bing Shi
        CRYPTOPP_ASSERT(c0 > c1 && c1 > c2 && c2==0);
+
+       // The test is odd because of ECIES<EC2N>. The basis is c0, but the 
other coefficients are not in descending order.
+       if (c1 > c0 || c2 > c0)
+               throw InvalidArgument("GF2NT: coefficients must be in 
descending order");
 }
 
 const GF2NT::Element& GF2NT::MultiplicativeInverse(const Element &a) const
@@ -972,7 +987,12 @@ GF2NP * BERDecodeGF2NP(BufferedTransformation &bt)
 GF2NT233::GF2NT233(unsigned int c0, unsigned int c1, unsigned int c2)
        : GF2NT(c0, c1, c2)
 {
+       // Asserts and checks due to Bing Shi
        CRYPTOPP_ASSERT(c0 > c1 && c1 > c2 && c2==0);
+
+       // The test is odd because of ECIES<EC2N>. The basis is c0, but the 
other coefficients are not in descending order.
+       if (c1 > c0 || c2 > c0)
+               throw InvalidArgument("GF2NT: coefficients must be in 
descending order");
 }
 
 const GF2NT::Element& GF2NT233::Multiply(const Element &a, const Element &b) 
const

++++++ libcryptopp-shared.patch ++++++
--- /var/tmp/diff_new_pack.xKNaXC/_old  2023-12-22 22:41:50.289110664 +0100
+++ /var/tmp/diff_new_pack.xKNaXC/_new  2023-12-22 22:41:50.293110810 +0100
@@ -1,8 +1,8 @@
-Index: b/GNUmakefile
+Index: cryptopp-CRYPTOPP_8_9_0/GNUmakefile
 ===================================================================
---- a/GNUmakefile
-+++ b/GNUmakefile
-@@ -173,7 +173,7 @@ else
+--- cryptopp-CRYPTOPP_8_9_0.orig/GNUmakefile
++++ cryptopp-CRYPTOPP_8_9_0/GNUmakefile
+@@ -198,7 +198,7 @@ else
    PC_PREFIX = $(PREFIX)
  endif
  ifeq ($(LIBDIR),)
@@ -11,7 +11,7 @@
    PC_LIBDIR = $${prefix}/lib
  else
    PC_LIBDIR = $(LIBDIR)
-@@ -1128,7 +1128,7 @@ SOLIB_COMPAT_SUFFIX=.$(LIB_MAJOR)
+@@ -1151,7 +1151,7 @@ SOLIB_COMPAT_SUFFIX=.$(LIB_MAJOR)
  ifneq ($(IS_LINUX)$(IS_HURD),00)
  # Linux uses full version suffix for shared library
  SOLIB_VERSION_SUFFIX=.$(LIB_MAJOR).$(LIB_MINOR).$(LIB_PATCH)

Reply via email to