import CS perl-JSON-XS-4.04-1.el10

This commit is contained in:
eabdullin 2025-10-01 08:39:01 +00:00
parent 7420c1f895
commit 090181fd98
8 changed files with 98 additions and 91 deletions

View File

@ -1 +0,0 @@
1

10
.gitignore vendored
View File

@ -1,9 +1 @@
JSON-XS-2.27.tar.gz
/JSON-XS-2.3.tar.gz
/JSON-XS-2.32.tar.gz
/JSON-XS-2.33.tar.gz
/JSON-XS-2.34.tar.gz
/JSON-XS-3.01.tar.gz
/JSON-XS-3.02.tar.gz
/JSON-XS-3.03.tar.gz
/JSON-XS-3.04.tar.gz
JSON-XS-4.04.tar.gz

View File

@ -1,40 +0,0 @@
Fix for CVE-2025-40928
Fix heap overflow causing crashes, possibly information disclosure or
worse (CVE-2025-40928), and causes JSON::XS to accept invalid JSON texts
as valid in some cases.
diff -up JSON-XS-3.04/XS.xs.cve JSON-XS-3.04/XS.xs
--- JSON-XS-3.04/XS.xs.cve 2017-08-17 03:54:33.000000000 +0200
+++ JSON-XS-3.04/XS.xs 2025-09-15 13:09:42.314411248 +0200
@@ -247,16 +247,16 @@ json_atof_scan1 (const char *s, NV *accu
// if we recurse too deep, skip all remaining digits
// to avoid a stack overflow attack
if (expect_false (--maxdepth <= 0))
- while (((U8)*s - '0') < 10)
+ while (*s >= '0' && *s <= '9')
++s;
for (;;)
{
- U8 dig = (U8)*s - '0';
+ U8 dig = *s - '0';
if (expect_false (dig >= 10))
{
- if (dig == (U8)((U8)'.' - (U8)'0'))
+ if (dig == (U8)('.' - '0'))
{
++s;
json_atof_scan1 (s, accum, expo, 1, maxdepth);
@@ -276,8 +276,8 @@ json_atof_scan1 (const char *s, NV *accu
else if (*s == '+')
++s;
- while ((dig = (U8)*s - '0') < 10)
- exp2 = exp2 * 10 + *s++ - '0';
+ while (*s >= '0' && *s <= '9')
+ exp2 = exp2 * 10 + (*s++ - '0');
*expo += neg ? -exp2 : exp2;
}

View File

@ -1,7 +0,0 @@
# RHEL
--- !Policy
product_versions:
- rhel-8
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

View File

@ -1,14 +1,11 @@
Name: perl-JSON-XS
Summary: JSON serializing/de-serializing, done correctly and fast
Epoch: 1
Version: 3.04
Release: 4%{?dist}
License: GPL+ or Artistic
Group: Development/Libraries
URL: http://search.cpan.org/dist/JSON-XS/
Source0: http://www.cpan.org/authors/id/M/ML/MLEHMANN/JSON-XS-%{version}.tar.gz
# Fix for CVE-2025-40928 in upstream since 4.04
Patch1: JSON-XS-3.04-Fix-for-CVE-2025-40928.patch
Version: 4.04
Release: 1%{?dist}
License: GPL-1.0-or-later OR Artistic-1.0-Perl
URL: https://metacpan.org/release/JSON-XS
Source0: https://cpan.metacpan.org/modules/by-module/JSON/JSON-XS-%{version}.tar.gz
# Build
BuildRequires: coreutils
BuildRequires: gcc
@ -39,7 +36,7 @@ BuildRequires: perl(Tie::Hash)
BuildRequires: perl(utf8)
BuildRequires: perl(warnings)
# Dependencies
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
# (none)
%{?perl_default_filter}
@ -60,7 +57,6 @@ with "%{_libexecdir}/%{name}/test".
%prep
%setup -q -n JSON-XS-%{version}
%patch -P1 -p1
sed -i 's/\r//' t/*
perl -MConfig -pi -e 's|^#!/opt/bin/perl|$Config{startperl}|' eg/*
@ -73,11 +69,11 @@ for F in t/*.t; do
done
%build
%{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}" NO_PACKLIST=1
make %{?_smp_mflags}
%{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}" NO_PACKLIST=1 NO_PERLLOCAL=1 </dev/null
%{make_build}
%install
make pure_install DESTDIR=%{buildroot}
%{make_install}
# Install tests
mkdir -p %{buildroot}%{_libexecdir}/%{name}
cp -a t %{buildroot}%{_libexecdir}/%{name}
@ -107,9 +103,93 @@ make test
%{_libexecdir}/%{name}
%changelog
* Mon Sep 15 2025 Jitka Plesnikova <jplesnik@redhat.com> - 1:3.04-4
- Resolves: RHEL-113630 - Fix CVE-2025-40928
- Package tests
* Thu Sep 11 2025 Jitka Plesnikova <jplesnik@redhat.com> - 1:4.04-1
- Update to 4.04
- Resolves: RHEL-113624 - Fix CVE-2025-40928
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1:4.03-16
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
* Thu Aug 08 2024 Troy Dawson <tdawson@redhat.com> - 1:4.03-15
- Bump release for Aug 2024 java mass rebuild
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 1:4.03-14
- Bump release for June 2024 mass rebuild
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.03-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.03-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.03-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Tue Jul 11 2023 Jitka Plesnikova <jplesnik@redhat.com> - 1:4.03-10
- Perl 5.38 rebuild
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.03-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.03-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Tue May 31 2022 Jitka Plesnikova <jplesnik@redhat.com> - 1:4.03-7
- Perl 5.36 rebuild
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.03-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.03-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri May 21 2021 Jitka Plesnikova <jplesnik@redhat.com> - 1:4.03-4
- Perl 5.34 rebuild
* Mon Feb 22 2021 Petr Pisar <ppisar@redhat.com> - 1:4.03-3
- Package tests manually
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.03-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Wed Oct 28 2020 Paul Howarth <paul@city-fan.org> - 1:4.03-1
- Update to 4.03
- Use %%{make_build} and %%{make_install}
- Simplify files list a bit
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.02-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jun 23 2020 Jitka Plesnikova <jplesnik@redhat.com> - 1:4.02-5
- Perl 5.32 rebuild
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.02-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.02-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri May 31 2019 Jitka Plesnikova <jplesnik@redhat.com> - 1:4.02-2
- Perl 5.30 rebuild
* Wed Mar 6 2019 Paul Howarth <paul@city-fan.org> - 1:4.02-1
- Update to 4.02
* Mon Feb 25 2019 Paul Howarth <paul@city-fan.org> - 1:4.01-1
- Update to 4.01
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Tue Nov 20 2018 Paul Howarth <paul@city-fan.org> - 1:4.0-1
- Update to 4.0
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.04-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Thu Jun 28 2018 Jitka Plesnikova <jplesnik@redhat.com> - 1:3.04-4
- Perl 5.28 rebuild
* Wed Feb 21 2018 Paul Howarth <paul@city-fan.org> - 1:3.04-3
- Specify all dependencies

View File

@ -1,5 +0,0 @@
summary: Sanity tests
discover:
how: fmf
execute:
how: tmt

View File

@ -1 +1 @@
SHA512 (JSON-XS-3.04.tar.gz) = 69c2e199385b5b5e331d905b64805304de80e1a3b393acaf7dce21c45254b1f23f1a83b246dcd3a80c2cfdadaf8ce3634ee587c469629cb69106f0c2239c73db
SHA512 (JSON-XS-4.04.tar.gz) = 018d02c7db58a8469afd8454c7822602a50d09a1658e41511ae38bc0f0cfe88f180758ae1dc0f1a933869c8e5c1e7535a2e4d312a9d206544df0ccb4cba11295

View File

@ -1,12 +0,0 @@
summary: Upstream tests
contact: Jitka Plesnikova <jplesnik@redhat.com>
component: perl-JSON-XS
require: perl-JSON-XS-tests
test: /usr/libexec/perl-JSON-XS/test
enabled: true
tag:
- rhel-buildroot
adjust:
- enabled: false
when: distro < rhel-8 or distro < centos-stream-8
continue: false