From 0121e48c52737e66f152f8786f87672105308ebd Mon Sep 17 00:00:00 2001 From: Oyvind Albrigtsen Date: Thu, 30 Jul 2026 13:38:20 +0200 Subject: [PATCH] - bundled pyasn1: fix CVE-2026-59886 Resolves: RHEL-217924 --- ...24-fix-bundled-pyasn1-CVE-2026-59886.patch | 52 +++++++++++++++++++ resource-agents.spec | 8 ++- 2 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 RHEL-217924-fix-bundled-pyasn1-CVE-2026-59886.patch diff --git a/RHEL-217924-fix-bundled-pyasn1-CVE-2026-59886.patch b/RHEL-217924-fix-bundled-pyasn1-CVE-2026-59886.patch new file mode 100644 index 0000000..a4ba526 --- /dev/null +++ b/RHEL-217924-fix-bundled-pyasn1-CVE-2026-59886.patch @@ -0,0 +1,52 @@ +From e60c691cb91addb8fcefa2f537e85ede6fb1e886 Mon Sep 17 00:00:00 2001 +From: Simon Pichugin +Date: Wed, 8 Jul 2026 17:32:09 -0700 +Subject: [PATCH] Merge commit from fork + +--- + pyasn1/type/univ.py | 21 +++++++++---- + tests/codec/ber/test_decoder.py | 53 +++++++++++++++++++++++++++------ + tests/codec/cer/test_decoder.py | 10 +++++++ + tests/codec/der/test_decoder.py | 19 ++++++++++++ + tests/type/test_univ.py | 40 +++++++++++++++++++++++++ + 5 files changed, 129 insertions(+), 14 deletions(-) + +diff --git a/gcp/google-cloud-sdk/lib/third_party/pyasn1/type/univ.py b/gcp/google-cloud-sdk/lib/third_party/pyasn1/type/univ.py +index 9aff5e69..8b786dd9 100644 +--- a/gcp/google-cloud-sdk/lib/third_party/pyasn1/type/univ.py ++++ b/gcp/google-cloud-sdk/lib/third_party/pyasn1/type/univ.py +@@ -1362,7 +1362,7 @@ class Pi(Real): + def __normalizeBase10(value): + m, b, e = value + while m and m % 10 == 0: +- m /= 10 ++ m //= 10 + e += 1 + return m, b, e + +@@ -1490,10 +1490,21 @@ def __int__(self): + def __float__(self): + if self._value in self._inf: + return self._value +- else: +- return float( +- self._value[0] * pow(self._value[1], self._value[2]) +- ) ++ ++ mantissa, base, exponent = self._value ++ ++ if not mantissa: ++ return 0.0 ++ ++ if base == 2: ++ return math.ldexp(float(mantissa), exponent) ++ ++ # base is 10 (prettyIn() rejects everything else); refuse to ++ # materialize astronomically large integers via pow() ++ if exponent > sys.float_info.max_10_exp: ++ raise OverflowError('Real value too large to convert to float') ++ ++ return float(mantissa * pow(base, exponent)) + + def __abs__(self): + return self.clone(abs(float(self))) diff --git a/resource-agents.spec b/resource-agents.spec index 776c7f1..9ee6045 100644 --- a/resource-agents.spec +++ b/resource-agents.spec @@ -73,7 +73,7 @@ Name: resource-agents Summary: Open Source HA Reusable Cluster Resource Scripts Version: 4.9.0 -Release: 54%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}}%{?dist}.36 +Release: 54%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}}%{?dist}.37 License: GPLv2+ and LGPLv2+ URL: https://github.com/ClusterLabs/resource-agents %if 0%{?fedora} || 0%{?centos_version} || 0%{?rhel} @@ -209,6 +209,7 @@ Patch1015: RHEL-140787-RHEL-146289-fix-bundled-urllib3-CVE-2026-21441.patch Patch1016: RHEL-142448-fix-bundled-pyasn1-CVE-2026-23490.patch Patch1017: RHEL-157190-fix-bundled-pyasn1-CVE-2026-30922.patch Patch1018: RHEL-178598-fix-bundled-urllib3-CVE-2026-44431.patch +Patch1019: RHEL-217924-fix-bundled-pyasn1-CVE-2026-59886.patch Obsoletes: heartbeat-resources <= %{version} Provides: heartbeat-resources = %{version} @@ -777,6 +778,7 @@ pushd %{buildroot}/usr/lib/%{name}/%{bundled_lib_dir} /usr/bin/patch --no-backup-if-mismatch -p1 --fuzz=0 < %{PATCH1016} /usr/bin/patch --no-backup-if-mismatch -p1 --fuzz=2 < %{PATCH1017} /usr/bin/patch --no-backup-if-mismatch -p1 --fuzz=0 < %{PATCH1018} +/usr/bin/patch --no-backup-if-mismatch -p1 --fuzz=0 < %{PATCH1019} popd %endif @@ -1071,6 +1073,10 @@ ccs_update_schema > /dev/null 2>&1 ||: %{_usr}/lib/ocf/lib/heartbeat/OCF_*.pm %changelog +* Thu Jul 30 2026 Oyvind Albrigtsen - 4.9.0-54.37 +- bundled pyasn1: fix CVE-2026-59886 + Resolves: RHEL-217924 + * Thu Jul 9 2026 RHEL Packaging Agent - 4.9.0-54.36 - bundled urllib3: fix CVE-2026-44431