SHA256
1
0
forked from pool/coreutils

Accepting request 1108292 from home:kukuk:no-utmp

All problems solved, all tests passed

OBS-URL: https://build.opensuse.org/request/show/1108292
OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=352
This commit is contained in:
Dirk Mueller 2023-09-04 07:48:00 +00:00 committed by Git OBS Bridge
parent e7f4664e8f
commit ca11210de3
13 changed files with 881 additions and 627 deletions

View File

@ -1,4 +1,5 @@
<multibuild>
<flavor>systemd</flavor>
<flavor>single</flavor>
<flavor>testsuite</flavor>
</multibuild>

BIN
coreutils-9.3.tar.xz (Stored with Git LFS)

Binary file not shown.

View File

@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEbDfcEhIaUAa8HbgE32/ZcTBgN9kFAmQ+r2YACgkQ32/ZcTBg
N9m/sRAAjHEe77ReKYJyJt5xvMY3mq8iSKL5hpKFX3onZwanElPzN+GFQdrvEEl9
8wSR4YObmcYg3H42oqqC94Ea+qtpUAwJ1DG6JXrBM2x2kKjmV7J1MwsLqkjCprBj
9VSMS6+xy/JB23x2pu+DGCbnBwCO7FZsbmt5h1orb73rR350ty0JOx5whAD6GL6p
+EJ1wNoVRknlGQskuVJBt0mpIf59s5fMlT8mGC22YReuqjf92qO8+CnTGWgUni9n
Lj5IHXUx/AQ4q+cVKHXf3Krwg7wLLRiNaUt/xmEn9buZuVCP09aKa6K+7QfGRE/L
YXaAwcTdAmzk8E0mXr9Z/XOT2+grbPhgJn5pb4L2IVKsqKw8VtJ8btBum1zQR0lP
PzXMpaHMJ/LZPNfeLC48GQ2R+x7uef3quUmTh5EQmq7IVnmZUdP5LUb5Nw44udLv
xUbeRP8aEni0IGTes+UkfP15HXIaqNG6Ij7pQoSzJZskRYJ/hmPp+py24Dv0I20B
rBTRvu+W0Bwpge7c2OcZJSnGEMjagGAzQ1jMpFlqLh9gotUymTy01jjFe1MD/ilL
IPStptSJFV4+LETgeEOdEvPN0E5UQqk7yqUp6bc81DOT6NFnSdWGetMrBy/PJSCn
KyTsNVeKUirimtozwfejUbhIdVA9a8KcDj4/KFLUe4F4cDa+inU=
=YhvD
-----END PGP SIGNATURE-----

BIN
coreutils-9.4.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

16
coreutils-9.4.tar.xz.sig Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEbDfcEhIaUAa8HbgE32/ZcTBgN9kFAmTuCiAACgkQ32/ZcTBg
N9ldkg//bS5pBA3f/2p6sHpZVvtgXhbLPTIczMRuANfzGfjrWqC5UMa3t2g04A2T
gCx4p2cmDv0eBF2esUGirYHq+chGP12dLWKQLdhnyB6gDQS0MTSHNtjT61UXJ2jp
L4vrggrbpDIWzprXfRZH75GbC+D/A2O/Gdm3EKRSv5Jcoe1BgDtoHR8zn4TP4dJP
PlP1QMMoyG6ta/PuTh7/KlaYFLWdBh7mS1FMEl5w2LuG65Ms4MOJZ+wXsdHDA6gk
pgjQYAPSH37dDTSJzfxGNxlEdcTztoSNcOBGGngnCAvxRr3W3KM/ktQlphbYlu3J
9JKGDn3oOnkNxX1iUJLGs4/x0v6d89pdBFhiKqe47ZyJfJ0QQVWoTn79CUc7Gv2G
/NKOoEsnk/1eh4TCxb8WHFu5JU+E1PmLRD3I5uiFFEWhDhPj4xeo6Y74R6+6KLAw
ZArS1gL35aGLfed6Pmr9Nkh7j3jGAcsHVCre7PkCCYOyQArch81iTvG+aHFzSbnM
YLnsoZtfNtmspATFryZ+y8qOyVVK2+aOrgzpXDHUTtY7S1IUJjO8cQUHuG9JpQU1
YNkr7/w/JVe+2MvGODMiKQPP0/gKDfRQg5WIlKFVSVrEoGcX+ivA9nG6jCf7nWd9
RdONbO/I69ZI24n0TYkGfal+P1hbt9cogGr4j5kRpstj8eXSDws=
=GOzh
-----END PGP SIGNATURE-----

File diff suppressed because it is too large Load Diff

View File

@ -1,30 +0,0 @@
While uid_t and gid_t are both unsigned, the values (uid_t) -1 and
(gid_t) -1 are reserved. A uid or gid argument of -1 to the chown(2)
system call means to leave the uid/gid unchanged. Catch this case
so that trying to set a uid or gid to -1 will result in an error.
Test cases:
chown 4294967295 file
chown :4294967295 file
chgrp 4294967295 file
Andreas Gruenbacher <agruen@suse.de>
---
src/chgrp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: src/chgrp.c
===================================================================
--- src/chgrp.c.orig
+++ src/chgrp.c
@@ -89,7 +89,7 @@ parse_group (char const *name)
{
uintmax_t tmp;
if (! (xstrtoumax (name, NULL, 10, &tmp, "") == LONGINT_OK
- && tmp <= GID_T_MAX))
+ && tmp <= GID_T_MAX && (gid_t) tmp != (gid_t) -1))
die (EXIT_FAILURE, 0, _("invalid group: %s"),
quote (name));
gid = tmp;

View File

@ -1,6 +1,6 @@
---
gnulib-tests/test-isnanl.h | 5 +++--
tests/misc/help-version.sh | 1 +
tests/help/help-version.sh | 1 +
tests/other-fs-tmpdir | 3 +++
3 files changed, 7 insertions(+), 2 deletions(-)
@ -33,10 +33,10 @@ Index: gnulib-tests/test-isnanl.h
+#endif
return 0;
}
Index: tests/misc/help-version.sh
Index: tests/help/help-version.sh
===================================================================
--- tests/misc/help-version.sh.orig
+++ tests/misc/help-version.sh
--- tests/help/help-version.sh.orig
+++ tests/help/help-version.sh
@@ -241,6 +241,7 @@ parted_setup () { args="-s $tmp_in mklab
for i in $built_programs; do
# Skip these.

View File

@ -12,18 +12,18 @@ Valgrind diagnoses problems in 'mkstemp64' deep down in glibc on PowerPC:
by 0x1000A427: maybe_create_temp (sort.c:1176)
by 0x100031BF: main (sort.c:1223)
* tests/misc/sort-stale-thread-mem.sh: Skip on ppc/ppc64.
* tests/misc/sort-u-FMR.sh: Likewise.
* tests/sort/sort-stale-thread-mem.sh: Skip on ppc/ppc64.
* tests/sort/sort-u-FMR.sh: Likewise.
---
tests/misc/sort-stale-thread-mem.sh | 4 ++++
tests/misc/sort-u-FMR.sh | 4 ++++
tests/sort/sort-stale-thread-mem.sh | 4 ++++
tests/sort/sort-u-FMR.sh | 4 ++++
2 files changed, 8 insertions(+)
Index: tests/misc/sort-stale-thread-mem.sh
Index: tests/sort/sort-stale-thread-mem.sh
===================================================================
--- tests/misc/sort-stale-thread-mem.sh.orig
+++ tests/misc/sort-stale-thread-mem.sh
--- tests/sort/sort-stale-thread-mem.sh.orig
+++ tests/sort/sort-stale-thread-mem.sh
@@ -27,6 +27,10 @@ require_valgrind_
grep '^#define HAVE_PTHREAD_T 1' "$CONFIG_HEADER" > /dev/null ||
skip_ 'requires pthreads'
@ -35,10 +35,10 @@ Index: tests/misc/sort-stale-thread-mem.sh
# gensort output seems to trigger the failure more often,
# so prefer gensort if it is available.
(gensort -a 10000 in) 2>/dev/null ||
Index: tests/misc/sort-u-FMR.sh
Index: tests/sort/sort-u-FMR.sh
===================================================================
--- tests/misc/sort-u-FMR.sh.orig
+++ tests/misc/sort-u-FMR.sh
--- tests/sort/sort-u-FMR.sh.orig
+++ tests/sort/sort-u-FMR.sh
@@ -20,6 +20,10 @@
print_ver_ sort
require_valgrind_

View File

@ -1,11 +1,11 @@
---
tests/misc/shuf-reservoir.sh | 3 +--
tests/shuf/shuf-reservoir.sh | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
Index: tests/misc/shuf-reservoir.sh
Index: tests/shuf/shuf-reservoir.sh
===================================================================
--- tests/misc/shuf-reservoir.sh.orig
+++ tests/misc/shuf-reservoir.sh
--- tests/shuf/shuf-reservoir.sh.orig
+++ tests/shuf/shuf-reservoir.sh
@@ -37,8 +37,7 @@ run_shuf_n()
# Critical memory-related bugs will cause a segfault here

View File

@ -1,3 +1,68 @@
-------------------------------------------------------------------
Thu Aug 31 09:56:48 UTC 2023 - Thorsten Kukuk <kukuk@suse.com>
- Update to 9.4:
Bug fixes:
* b2sum --check will no longer read unallocated memory when
presented with malformed checksum lines.
[bug introduced in coreutils-9.2]
* cp --parents again succeeds when preserving mode for absolute directories.
Previously it would have failed with a "No such file or directory" error.
[bug introduced in coreutils-9.1]
* cp --sparse=never will avoid copy-on-write (reflinking) and copy offloading,
to ensure no holes present in the destination copy.
[bug introduced in coreutils-9.0]
* cksum again diagnoses read errors in its default CRC32 mode.
[bug introduced in coreutils-9.0]
* cksum --check now ensures filenames with a leading backslash character
are escaped appropriately in the status output.
This also applies to the standalone checksumming utilities.
[bug introduced in coreutils-8.25]
* dd again supports more than two multipliers for numbers.
Previously numbers of the form '1024x1024x32' gave "invalid number" errors.
[bug introduced in coreutils-9.1]
* factor, numfmt, and tsort now diagnose read errors on the input.
[This bug was present in "the beginning".]
* install --strip now supports installing to files with a leading hyphen.
Previously such file names would have caused the strip process to fail.
[This bug was present in "the beginning".]
* ls now shows symlinks specified on the command line that can't be traversed.
Previously a "Too many levels of symbolic links" diagnostic was given.
[This bug was present in "the beginning".]
* pr --length=1 --double-space no longer enters an infinite loop.
[This bug was present in "the beginning".]
* tac now handles short reads on its input. Previously it may have exited
erroneously, especially with large input files with no separators.
[This bug was present in "the beginning".]
* uptime no longer incorrectly prints "0 users" on OpenBSD,
and is being built again on FreeBSD and Haiku.
[bugs introduced in coreutils-9.2]
* wc -l and cksum no longer crash with an "Illegal instruction" error
on x86 Linux kernels that disable XSAVE YMM. This was seen on Xen VMs.
[bug introduced in coreutils-9.0]
Changes in behavior:
* cp -v and mv -v will no longer output a message for each file skipped
due to -i, or -u. Instead they only output this information with --debug.
I.e., 'cp -u -v' etc. will have the same verbosity as before coreutils-9.3.
* cksum -b no longer prints base64-encoded checksums. Rather that
short option is reserved to better support emulation of the standalone
checksum utilities with cksum.
* mv dir x now complains differently if x/dir is a nonempty directory.
Previously it said "mv: cannot move 'dir' to 'x/dir': Directory not empty",
where it was unclear whether 'dir' or 'x/dir' was the problem.
Now it says "mv: cannot overwrite 'x/dir': Directory not empty".
Similarly for other renames where the destination must be the problem.
[problem introduced in coreutils-6.0]
- Enable systemd-logind support
- Add gnulib-readutmp.patch: Fix seg.fault of who, pinky, uptime [dgo#65617]
- Create -systemd flavor with binaries linked against libsystemd
- Drop coreutils-invalid-ids.patch to get consistent behavior, most tools
where already removed from that patch.
- coreutils-misc.patch: adjust paths
- coreutils-skip-some-sort-tests-on-ppc.patch: adjust paths
- coreutils-test_without_valgrind.patch: adjust paths
- coreutils-i18n.patch: update from Fedora
-------------------------------------------------------------------
Thu Apr 20 09:19:20 UTC 2023 - Bernhard Voelker <mail@bernhard-voelker.de>

View File

@ -24,11 +24,13 @@
%global psuffix -single
%elif "%{flavor}" == "testsuite"
%global psuffix -testsuite
%elif "%{flavor}" == "systemd"
%global psuffix -systemd
%else
%global psuffix %{nil}
%endif
Name: coreutils%{?psuffix}
Version: 9.3
Version: 9.4
Release: 0
Summary: GNU Core Utilities
License: GPL-3.0-or-later
@ -42,13 +44,15 @@ Patch1: coreutils-remove_hostname_documentation.patch
Patch3: coreutils-remove_kill_documentation.patch
Patch4: coreutils-i18n.patch
Patch8: coreutils-sysinfo.patch
Patch16: coreutils-invalid-ids.patch
# OBS / RPMLINT require /usr/bin/timeout to be built with the -fpie option.
Patch100: coreutils-build-timeout-as-pie.patch
# There is no network in the build root so make the test succeed
Patch112: coreutils-getaddrinfo.patch
# Assorted fixes
Patch113: coreutils-misc.patch
# gnulib seg.faults if there is no session
# https://debbugs.gnu.org/cgi/bugreport.cgi?bug=65617
Patch114: gnulib-readutmp.patch
# Skip 2 valgrind'ed sort tests on ppc/ppc64 which would fail due to
# a glibc issue in mkstemp.
Patch300: coreutils-skip-some-sort-tests-on-ppc.patch
@ -73,6 +77,9 @@ BuildRequires: libselinux-devel
BuildRequires: makeinfo
BuildRequires: perl
BuildRequires: xz
%if "%{name}" == "coreutils-systemd"
BuildRequires: pkgconfig(libsystemd)
%endif
%if 0%{?suse_version} > 1320
BuildRequires: gcc-PIE
%endif
@ -101,6 +108,10 @@ Conflicts: coreutils
Provides: coreutils = %{version}-%{release}
%endif
%endif
%if "%{name}" == "coreutils-systemd"
Provides: coreutils:%{_bindir}/who
Requires: coreutils = %{version}
%endif
# ================================================
%description
@ -133,17 +144,17 @@ This package contains the documentation for the GNU Core Utilities.
%prep
%setup -q -n coreutils-%{version}
%patch4
%patch4 -p1
%patch1
%patch3
%patch8
%patch16
#
%if 0%{?suse_version} <= 1320
%patch100
%endif
%patch112
%patch113
%patch114 -p1
%patch300
@ -172,6 +183,9 @@ export CFLAGS="%{optflags}"
--enable-single-binary \
--without-openssl \
--without-gmp \
%endif
%if "%{name}" == "coreutils-systemd"
--enable-systemd \
%endif
DEFAULT_POSIX2_VERSION=200112 \
alternative=199209
@ -220,6 +234,10 @@ rm -rf %{buildroot}%{_datadir}/locale
> coreutils.lang
%endif
%endif
%if "%{name}" == "coreutils-systemd"
mkdir -p %{buildroot}%{_bindir}
install src/{pinky,uptime,users,who} %{buildroot}%{_bindir}/
%endif
# ================================================
%post
@ -239,6 +257,10 @@ rm -rf %{buildroot}%{_datadir}/locale
%license COPYING
%doc NEWS README THANKS
%exclude %{_bindir}/pinky
%exclude %{_bindir}/uptime
%exclude %{_bindir}/users
%exclude %{_bindir}/who
%{_bindir}/*
%{_libdir}/%{name}
@ -250,6 +272,14 @@ rm -rf %{buildroot}%{_datadir}/locale
%{_mandir}/man1/*.1%{?ext_man}
%endif
%elif "%{name}" == "coreutils-systemd"
%license COPYING
%doc NEWS README THANKS
%{_bindir}/pinky
%{_bindir}/uptime
%{_bindir}/users
%{_bindir}/who
%else
# test-suite

13
gnulib-readutmp.patch Normal file
View File

@ -0,0 +1,13 @@
diff --git a/lib/readutmp.c b/lib/readutmp.c
index 0173b7e0c1..e99158677c 100644
--- a/lib/readutmp.c
+++ b/lib/readutmp.c
@@ -795,7 +795,7 @@ read_utmp_from_systemd (idx_t *n_entries, STRUCT_UTMP **utmp_buf, int options)
{
char **sessions;
int num_sessions = sd_get_sessions (&sessions);
- if (num_sessions >= 0)
+ if (num_sessions > 0)
{
char **session_ptr;
for (session_ptr = sessions; *session_ptr != NULL; session_ptr++)