Skip to Content.
Sympa Menu

sm-commit - Re: [[SM-Commit] ] GIT changes to master grimoire by Pavel Vinogradov (6327a9e951471af34adac3985f84a05c71ebef8c)

sm-commit AT lists.ibiblio.org

Subject: Source Mage code commit list

List archive

Chronological Thread  
  • From: public AT sourcemage.org
  • To: sm-commit AT lists.ibiblio.org, sm-commit AT lists.sourcemage.org
  • Subject: Re: [[SM-Commit] ] GIT changes to master grimoire by Pavel Vinogradov (6327a9e951471af34adac3985f84a05c71ebef8c)
  • Date: Thu, 5 Jun 2025 00:13:14 -0400

Tried patching both Makefile.in and configure. both times failed.

On Wed, Jun 04, 2025 at 03:51:25PM +0200, Ismael Luceno wrote:
> Please provide a patch to the Makefile.in file instead of calling
> autoreconf.
>
> On 30/May/2025 18:57, Pavel Vinogradov wrote:
> > GIT changes to master grimoire by Pavel Vinogradov
> > <public AT sourcemage.org>:
> >
> > utils/coreutils/DEPENDS | 2
> > utils/coreutils/DETAILS | 2
> > utils/coreutils/HISTORY | 6 +
> > utils/coreutils/PRE_BUILD | 6 +
> > utils/coreutils/patches/CVE-2025-5278.patch | 123
> > ++++++++++++++++++++++++++++
> > 5 files changed, 137 insertions(+), 2 deletions(-)
> >
> > New commits:
> > commit 6327a9e951471af34adac3985f84a05c71ebef8c
> > Author: Pavel Vinogradov <public AT sourcemage.org>
> > Commit: Pavel Vinogradov <public AT sourcemage.org>
> >
> > utils/coreutils: SECURITY_PATCH++ for 9.7 and automake 1.18 fix
> >
> > diff --git a/utils/coreutils/DEPENDS b/utils/coreutils/DEPENDS
> > index e9391c7..b34012c 100755
> > --- a/utils/coreutils/DEPENDS
> > +++ b/utils/coreutils/DEPENDS
> > @@ -1,3 +1,5 @@
> > +depends autoconf &&
> > +depends automake &&
> > depends xz-utils &&
> > depends smgl-fhs &&
> >
> > diff --git a/utils/coreutils/DETAILS b/utils/coreutils/DETAILS
> > index a77957d..7ef993b 100755
> > --- a/utils/coreutils/DETAILS
> > +++ b/utils/coreutils/DETAILS
> > @@ -1,7 +1,7 @@
> > # Watch: https://ftp.gnu.org/gnu/coreutils/
> > SPELL=coreutils
> > VERSION=9.7
> > - SECURITY_PATCH=2
> > + SECURITY_PATCH=3
> > SOURCE=$SPELL-$VERSION.tar.xz
> > SOURCE2=$SOURCE.sig
> > SOURCE_DIRECTORY="$BUILD_DIRECTORY/$SPELL-$VERSION"
> > diff --git a/utils/coreutils/HISTORY b/utils/coreutils/HISTORY
> > index 410fbe9..ddc9602 100644
> > --- a/utils/coreutils/HISTORY
> > +++ b/utils/coreutils/HISTORY
> > @@ -1,3 +1,9 @@
> > +2025-05-30 Pavel Vinogradov <public AT sourcemage.org>
> > + * DETAILS: SECURITY_PATCH++, (CVE-2025-5278)
> > + * DEPENDS: added autoconf and automake
> > + * PRE_BUILD, patches/CVE-2025-5278.patch: added the patch and
> > autoreconf
> > + to fix building with automake 1.18
> > +
> > 2025-04-09 Pavel Vinogradov <public AT sourcemage.org>
> > * DETAILS: version 9.7
> >
> > diff --git a/utils/coreutils/PRE_BUILD b/utils/coreutils/PRE_BUILD
> > index 7817709..13c1aa6 100755
> > --- a/utils/coreutils/PRE_BUILD
> > +++ b/utils/coreutils/PRE_BUILD
> > @@ -3,4 +3,8 @@ cd "${SOURCE_DIRECTORY}" &&
> >
> > if [[ "${SMACK}" == "y" ]]; then
> > patch -p1 < "$SPELL_DIRECTORY/coreutils-smack.patch"
> > -fi
> > +fi &&
> > +
> > +apply_patch_dir "patches" &&
> > +
> > +autoreconf -f
> > diff --git a/utils/coreutils/patches/CVE-2025-5278.patch
> > b/utils/coreutils/patches/CVE-2025-5278.patch
> > new file mode 100644
> > index 0000000..c55b7a8
> > --- /dev/null
> > +++ b/utils/coreutils/patches/CVE-2025-5278.patch
> > @@ -0,0 +1,123 @@
> > +From 8c9602e3a145e9596dc1a63c6ed67865814b6633 Mon Sep 17 00:00:00 2001
> > +From: Pádraig Brady <P AT draigBrady.com>
> > +Date: Tue, 20 May 2025 16:03:44 +0100
> > +Subject: sort: fix buffer under-read (CWE-127)
> > +
> > +* src/sort.c (begfield): Check pointer adjustment
> > +to avoid Out-of-range pointer offset (CWE-823).
> > +(limfield): Likewise.
> > +* tests/sort/sort-field-limit.sh: Add a new test,
> > +which triggers with ASAN or Valgrind.
> > +* tests/local.mk: Reference the new test.
> > +* NEWS: Mention bug fix introduced in v7.2 (2009).
> > +Fixes https://bugs.gnu.org/78507
> > +---
> > + NEWS | 5 +++++
> > + src/sort.c | 12 ++++++++++--
> > + tests/local.mk | 1 +
> > + tests/sort/sort-field-limit.sh | 35 +++++++++++++++++++++++++++++++++++
> > + 4 files changed, 51 insertions(+), 2 deletions(-)
> > + create mode 100755 tests/sort/sort-field-limit.sh
> > +
> > +diff --git a/NEWS b/NEWS
> > +index 6ff403206..923aa72f8 100644
> > +--- a/NEWS
> > ++++ b/NEWS
> > +@@ -8,6 +8,11 @@ GNU coreutils NEWS
> > -*- outline -*-
> > + copying to non-NFS files from NFSv4 files with trivial ACLs.
> > + [bug introduced in coreutils-9.6]
> > +
> > ++ sort with key character offsets of SIZE_MAX, could induce
> > ++ a read of 1 byte before an allocated heap buffer. For example:
> > ++ 'sort +0.18446744073709551615R input' on 64 bit systems.
> > ++ [bug introduced in coreutils-7.2]
> > ++
> > +
> > + * Noteworthy changes in release 9.7 (2025-04-09) [stable]
> > +
> > +diff --git a/src/sort.c b/src/sort.c
> > +index b10183b6f..7af1a2512 100644
> > +--- a/src/sort.c
> > ++++ b/src/sort.c
> > +@@ -1644,7 +1644,11 @@ begfield (struct line const *line, struct
> > keyfield const *key)
> > + ++ptr;
> > +
> > + /* Advance PTR by SCHAR (if possible), but no further than LIM. */
> > +- ptr = MIN (lim, ptr + schar);
> > ++ size_t remaining_bytes = lim - ptr;
> > ++ if (schar < remaining_bytes)
> > ++ ptr += schar;
> > ++ else
> > ++ ptr = lim;
> > +
> > + return ptr;
> > + }
> > +@@ -1746,7 +1750,11 @@ limfield (struct line const *line, struct
> > keyfield const *key)
> > + ++ptr;
> > +
> > + /* Advance PTR by ECHAR (if possible), but no further than LIM.
> > */
> > +- ptr = MIN (lim, ptr + echar);
> > ++ size_t remaining_bytes = lim - ptr;
> > ++ if (echar < remaining_bytes)
> > ++ ptr += echar;
> > ++ else
> > ++ ptr = lim;
> > + }
> > +
> > + return ptr;
> > +diff --git a/tests/local.mk b/tests/local.mk
> > +index 4da6756ac..642d225fa 100644
> > +--- a/tests/local.mk
> > ++++ b/tests/local.mk
> > +@@ -388,6 +388,7 @@ all_tests = \
> > + tests/sort/sort-debug-keys.sh \
> > + tests/sort/sort-debug-warn.sh \
> > + tests/sort/sort-discrim.sh \
> > ++ tests/sort/sort-field-limit.sh \
> > + tests/sort/sort-files0-from.pl \
> > + tests/sort/sort-float.sh \
> > + tests/sort/sort-h-thousands-sep.sh \
> > +diff --git a/tests/sort/sort-field-limit.sh
> > b/tests/sort/sort-field-limit.sh
> > +new file mode 100755
> > +index 000000000..52d8e1d17
> > +--- /dev/null
> > ++++ b/tests/sort/sort-field-limit.sh
> > +@@ -0,0 +1,35 @@
> > ++#!/bin/sh
> > ++# From 7.2-9.7, this would trigger an out of bounds mem read
> > ++
> > ++# Copyright (C) 2025 Free Software Foundation, Inc.
> > ++
> > ++# This program is free software: you can redistribute it and/or modify
> > ++# it under the terms of the GNU General Public License as published by
> > ++# the Free Software Foundation, either version 3 of the License, or
> > ++# (at your option) any later version.
> > ++
> > ++# This program is distributed in the hope that it will be useful,
> > ++# but WITHOUT ANY WARRANTY; without even the implied warranty of
> > ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> > ++# GNU General Public License for more details.
> > ++
> > ++# You should have received a copy of the GNU General Public License
> > ++# along with this program. If not, see <https://www.gnu.org/licenses/>.
> > ++
> > ++. "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
> > ++print_ver_ sort
> > ++getlimits_
> > ++
> > ++# This issue triggers with valgrind or ASAN
> > ++valgrind --error-exitcode=1 sort --version 2>/dev/null &&
> > ++ VALGRIND='valgrind --error-exitcode=1'
> > ++
> > ++{ printf '%s\n' aa bb; } > in || framework_failure_
> > ++
> > ++_POSIX2_VERSION=200809 $VALGRIND sort +0.${SIZE_MAX}R in > out || fail=1
> > ++compare in out || fail=1
> > ++
> > ++_POSIX2_VERSION=200809 $VALGRIND sort +1 -1.${SIZE_MAX}R in > out ||
> > fail=1
> > ++compare in out || fail=1
> > ++
> > ++Exit $fail
> > +--
> > +cgit v1.2.3
> > +



Archive powered by MHonArc 2.6.24.

Top of Page