--- coreutils-8.21.orig/debian/README.source +++ coreutils-8.21/debian/README.source @@ -0,0 +1,38 @@ +This package uses dpatch to manage all modifications to the upstream +source. Changes are stored in the source package as diffs in +debian/patches and applied during the build. + +To get the fully patched source after unpacking the source package, cd +to the root level of the source package and run: + + debian/rules patch + +Removing a patch is as simple as removing its entry from the +debian/patches/00list file, and please also remove the patch file +itself. + +Creating a new patch is done with "dpatch-edit-patch patch XX_patchname" +where you should replace XX with a new number and patchname with a +descriptive shortname of the patch. You can then simply edit all the +files your patch wants to edit, and then simply "exit 0" from the shell +to actually create the patch file. + +To tweak an already existing patch, call "dpatch-edit-patch XX_patchname" +and replace XX_patchname with the actual filename from debian/patches +you want to use. + +To clean up afterwards again, "debian/rules unpatch" will do the +work for you - or you can of course choose to call +"fakeroot debian/rules clean" all together. + + +--- + +this documentation is part of dpatch package, and may be used by +packages using dpatch to comply with policy on README.source. This +documentation is meant to be useful to users who are not proficient in +dpatch in doing work with dpatch-based packages. Please send any +improvements to the BTS of dpatch package. + +original text by Gerfried Fuchs, edited by Junichi Uekawa +10 Aug 2008. --- coreutils-8.21.orig/debian/changelog +++ coreutils-8.21/debian/changelog @@ -0,0 +1,1241 @@ +coreutils (8.21-1ubuntu5.3) trusty; urgency=medium + + * Fix ftbfs on buildd by updating total-unprocessed testcase from + upstream. (LP: #1432871) + + -- Dave Chiluk Thu, 03 Dec 2015 09:48:11 -0600 + +coreutils (8.21-1ubuntu5.2) trusty; urgency=medium + + * Add support for correctly processing /proc/self/mountinfo. + * Fix df to prioritize mounts of the root of a device over bind mounts. + (LP: #1432871) + + -- Dave Chiluk Thu, 05 Nov 2015 10:39:01 -0600 + +coreutils (8.21-1ubuntu5.1) trusty-security; urgency=medium + + * SECURITY UPDATE: infinite loop or crash in TZ environment variable + handling. + - debian/patches/CVE-2014-9471.dpatch: modify lib/parse-datetime.y and + tests/misc/date.pl to avoid crashing with malformed TZ + - CVE-2014-9471 + + -- Seth Arnold Tue, 13 Jan 2015 19:31:37 -0800 + +coreutils (8.21-1ubuntu5) trusty; urgency=medium + + * Pull patch from upstream to fix nohup test with the new bash. + + -- Adam Conrad Mon, 24 Mar 2014 00:42:22 -0600 + +coreutils (8.21-1ubuntu4) trusty; urgency=medium + + * Fix detection of floating point endianness. + + -- Colin Watson Wed, 18 Dec 2013 13:29:08 +0000 + +coreutils (8.21-1ubuntu3) trusty; urgency=low + + * Update list of autopkgtest-runnable unit tests (LP: #1246805). + * Ignore skipped tests in autopkgtest harness. + * Depend on acl and strace for autopkgtests. + + -- Colin Watson Thu, 31 Oct 2013 11:22:35 -0700 + +coreutils (8.21-1ubuntu2) trusty; urgency=low + + * Backport from gnulib upstream (Paul Eggert): + - xvasprintf-tests: port to GCC with hardening flags + + -- Colin Watson Thu, 31 Oct 2013 08:33:23 -0700 + +coreutils (8.21-1ubuntu1) trusty; urgency=low + + * Resynchronise with Debian. Remaining changes: + - Make 'uname -i -p' return the real processor/hardware, instead of + unknown. + - debian/tests/upstream: Adjust for changed test layout in 8.20. + - Configure with --disable-silent-rules. + - Let it cross build: + + Preseed some autoconf tests. + + Don't rebuild the man pages. + - (aarch64): Make add_ssaaaa and sub_ddmmss actually work. + * Re-enable tests, except when cross-building. + + -- Colin Watson Thu, 31 Oct 2013 07:24:28 -0700 + +coreutils (8.21-1) unstable; urgency=low + + * New upstream version + * Disable tests by default. I'm not entirely happy about doing this, as the + build tests have uncovered more than one library bug that would have been + problematic, but of late they've failed more because of buildd oddities + than real problems. I am trying this early in the jessie cycle, and will + turn the tests back on if it ends up being an issue. + + -- Michael Stone Sat, 20 Jul 2013 15:45:55 -0400 + +coreutils (8.20-3ubuntu5) raring; urgency=low + + * Backport from gmp upstream: + - (aarch64): Make add_ssaaaa and sub_ddmmss actually work. + + -- Colin Watson Thu, 17 Jan 2013 04:21:35 +0000 + +coreutils (8.20-3ubuntu4) raring; urgency=low + + * Configure with --disable-silent-rules. + * Let it cross build: + - Preseed some autoconf tests. + - Build make-prime-list with the build compiler. + - Don't rebuild the man pages. + + -- Matthias Klose Wed, 12 Dec 2012 18:38:55 +0100 + +coreutils (8.20-3ubuntu3) raring; urgency=low + + * debian/tests/upstream: Adjust for changed test layout in 8.20. + + -- Martin Pitt Fri, 30 Nov 2012 22:08:22 +0100 + +coreutils (8.20-3ubuntu2) raring; urgency=low + + * Avoid PPC64 instructions unless _LP64 is defined. + * Revert build-dependency from gettext:any to gettext, now that gettext is + Multi-Arch: foreign. + + -- Colin Watson Thu, 29 Nov 2012 14:32:40 +0000 + +coreutils (8.20-3ubuntu1) raring; urgency=low + + * Resynchronise with Debian. Remaining changes: + - Make 'uname -i -p' return the real processor/hardware, instead of + unknown. + - Build-depend on gettext:any instead of on gettext, so that apt-get can + properly resolve build-dependencies on the tool when cross-building. + + -- Colin Watson Wed, 28 Nov 2012 03:03:42 +0000 + +coreutils (8.20-3) unstable; urgency=low + + * actually include autopkgtest changes + + -- Michael Stone Sun, 18 Nov 2012 10:17:12 -0500 + +coreutils (8.20-2) unstable; urgency=low + + * Add upstream patch to fix build failure on hppa (Closes: #693578) + * Disable df test which seems to fail on some buildds + * Get rid of realpath (provided by other package) (Closes: #693211) + * Add autopkgtest. Thanks Martin Pitt. (Closes: #692748) + * Fix HAVE_LONG_LONG typo in factor. Thanks Daniel Schepler + (Closes: #693337) + + -- Michael Stone Sun, 18 Nov 2012 09:26:57 -0500 + +coreutils (8.20-1) unstable; urgency=low + + * New upstream version + - fixes possible data loss in sort -u (from 8.6) (Closes: #685238) + - df prefers shorter device names (Closes: #653073) + * Update watch file (Closes: #693171) + + -- Michael Stone Tue, 13 Nov 2012 20:49:45 -0500 + +coreutils (8.13-3.3) unstable; urgency=low + + * Non-maintainer upload + * [50] Updates to Danish, German, Spanish, French, and Vietnamese + translations from translationproject.org (Closes: #671807) + * [51] (Etienne Millon) Fix typo in "/usr/bin/[ --help" output with + LANG=fr (Closes: #598481) + * [52] (Michael Below) Fix typos in ln -s "permission denied" + message with LANG=de (Closes: #683401) + * [55] Touch pot file to ensure binary message catalogs are + regenerated during the build. + + -- Jonathan Nieder Mon, 10 Sep 2012 22:02:19 -0700 + +coreutils (8.13-3.2ubuntu7) raring; urgency=low + + * Backport require_valgrind_ so that tests work better. + * Make valgrind failures non-fatal; we don't have sufficiently accurate + suppressions for linker startup issues on all architectures. However, + do still run those tests and check for corrupted output. + * Don't build-depend on valgrind on armhf, as it apparently breaks there. + + -- Colin Watson Fri, 09 Nov 2012 10:01:28 +0000 + +coreutils (8.13-3.2ubuntu6) raring; urgency=low + + * Backport upstream patch to avoid data-corrupting free-memory-read in + cp/mv/install when dealing with a very fragmented and sparse input file + on certain filesystems (LP: #1073514). + * Build-depend on valgrind in order to be able to run the test for the + above fix. + * Fix 99_sort_-u_data_loss.dpatch so that the added test is actually run. + + -- Colin Watson Thu, 08 Nov 2012 16:24:07 +0000 + +coreutils (8.13-3.2ubuntu5) raring; urgency=low + + * debian/tests/upstream: Drop the three tests that fail with "skipped test: + this shell lacks ulimit support" in our test environment. + + -- Martin Pitt Thu, 08 Nov 2012 06:01:55 +0100 + +coreutils (8.13-3.2ubuntu4) raring; urgency=low + + [ Paul Larson ] + * Fix debian/tests/upstream: Make the test script count the number of test + failures, declare them at the end of the test run, and exit with the + number of failed tests. (LP: #1075612) + + [ Martin Pitt ] + * debian/tests/upstream: Drop du/bigtime test, does not work in our test + environment. + + -- Martin Pitt Wed, 07 Nov 2012 15:51:30 +0100 + +coreutils (8.13-3.2ubuntu3) raring; urgency=low + + * Add debian/tests/: autopkgtest for running a subset of the upstream tests + against the system installed binaries. The other upstream tests need a + built tree, and are run during package build. (LP: #1073445) + * Add 01_gnulib-gets.dpatch: Avoid assuming that gets is declared in bundled + gnulib. Backported from upstream gnulib SVN to fix FTBFS. + + -- Martin Pitt Tue, 06 Nov 2012 13:21:20 +0100 + +coreutils (8.13-3.2ubuntu2) quantal; urgency=low + + * Update config.guess,sub for aarch64 + + -- Wookey Mon, 01 Oct 2012 15:41:06 +0100 + +coreutils (8.13-3.2ubuntu1) quantal; urgency=low + + * Resynchronise with Debian. Remaining changes: + - [80] Make 'uname -i -p' return the real processor/hardware, instead of + unknown. + - Build-depend on gettext:any instead of on gettext, so that apt-get can + properly resolve build-dependencies on the tool when cross-building. + * Backport upstream patches to fix data-loss and free-memory read bugs in + 'sort -u' (LP: #1038468). + + -- Colin Watson Mon, 10 Sep 2012 14:07:50 +0100 + +coreutils (8.13-3.2) unstable; urgency=low + + * Non-maintainer upload. + * Don't declare separate build-arch/build-indep targets when they just + fall through to the same common build rule, since they don't have correct + target dependencies themselves. Closes: #670481. + * Enable hardening build flags. Thanks to Moritz Muehlenhoff for the + patch. Closes: #653743. + * debian/patches/99_Werror-format-string.dpatch: fix the gnulib test suite + so that it doesn't fail to build with hardening flags on. + * Mark coreutils Multi-Arch: foreign. Thanks to Colin Watson. + Closes: #649397. + * debian/patches/99_tests-misc-sort-continue-Port-to-Fedora-15.dpatch: + cherry-pick from upstream to fix a build failure whenever the build + system happens to be holding an fd open, as happens when running in + certain environments (e.g., Lucas's test rebuild farm, or bzr-builddeb). + Closes: #669555. + + -- Steve Langasek Wed, 02 May 2012 02:27:43 +0000 + +coreutils (8.13-3.1ubuntu1) quantal; urgency=low + + * Merge from Debian unstable, remaining changes: + - [80] Make 'uname -i -p' return the real processor/hardware, instead of + unknown. + - Build-depend on gettext:any instead of on gettext, so that apt-get can + properly resolve build-dependencies on the tool when cross-building. + * Incorporate changes from Debian NMU to DELAYED/5-days: + - Don't declare separate build-arch/build-indep targets when they just + fall through to the same common build rule, since they don't have + correct target dependencies themselves. Closes: #670481. + - Enable hardening build flags. Thanks to Moritz Muehlenhoff for the + patch. Closes: #653743. + - debian/patches/99_Werror-format-string.dpatch: fix the gnulib test + suite so that it doesn't fail to build with hardening flags on. + - Mark coreutils Multi-Arch: foreign. Thanks to Colin Watson. + Closes: #649397. + - debian/patches/99_tests-misc-sort-continue-Port-to-Fedora-15.dpatch: + cherry-pick from upstream to fix a build failure whenever the build + system happens to be holding an fd open, as happens when running in + certain environments (e.g., Lucas's test rebuild farm, or + bzr-builddeb). Closes: #669555. + * Dropped changes, superseded by the above NMU: + - Filter out -Werror=format-security from CFLAGS when building tests, to + avoid a build failure in gnulib-tests/test-xvasprintf.c. + + -- Steve Langasek Tue, 01 May 2012 22:07:44 -0700 + +coreutils (8.13-3.1) unstable; urgency=low + + * Non-maintainer upload. + * Use architecture wildcards instead of type-handling virtual packages in + Build-Depends (closes: #587859). Thanks to Sebastian Andrzej Siewior for + the bug report and Guillem Jover for the patch. + + -- Jakub Wilk Wed, 29 Feb 2012 00:11:27 +0100 + +coreutils (8.13-3ubuntu3) precise; urgency=low + + * Build-depend on gettext:any instead of on gettext, so that apt-get can + properly resolve build-dependencies on the tool when cross-building. + + -- Steve Langasek Sat, 31 Mar 2012 14:54:13 -0700 + +coreutils (8.13-3ubuntu2) precise; urgency=low + + * Mark coreutils Multi-Arch: foreign. + + -- Colin Watson Sun, 20 Nov 2011 17:21:08 +0000 + +coreutils (8.13-3ubuntu1) precise; urgency=low + + * Resynchronise with Debian. Remaining changes: + - [80] Make 'uname -i -p' return the real processor/hardware, instead of + unknown. + * Filter out -Werror=format-security from CFLAGS when building tests, to + avoid a build failure in gnulib-tests/test-xvasprintf.c. + + -- Colin Watson Tue, 18 Oct 2011 10:59:14 +0100 + +coreutils (8.13-3) unstable; urgency=low + + * revert previous change to -mlong-double-64 + + -- Michael Stone Sat, 01 Oct 2011 12:31:33 -0400 + +coreutils (8.13-2) unstable; urgency=low + + * Fix typo in kfbsd test patch + * Move libstdbuf.so back to /usr/lib + * [85] kfbsd ignores fractional part of timeouts over 100000s + (Closes: #641832) + * PPC uses -mlong-double-64 to prevent test failures (Closes: #641907) + * Minor build changes + + -- Michael Stone Mon, 19 Sep 2011 19:52:02 -0400 + +coreutils (8.13-1) unstable; urgency=low + + * New upstream version + - no diagnostic when tail -f from pipe (Closes: #622182) + - du ignores specified dir when part of cycle (Closes: #598438) + - corrects translation errors (Closes: #595019, #545347) + - fixes missing prototype which caused FTBFS in some cases (Closes: #585509) + - documentation updates (Closes: #395430, #115833, #545347) + * preserve upstream man pages in clean (Closes: #630735) + * respect CFLAGS in build (Closes: #596262) + * remove LC_TIME symlinks (Closes: #584837) + + -- Michael Stone Mon, 12 Sep 2011 17:21:19 -0400 + +coreutils (8.5-1ubuntu6) natty; urgency=low + + * Backport from upstream (Jim Meyering): + - tail: avoid new diagnostic when applying -f to a pipe on linux-2.6.38. + + -- Colin Watson Wed, 23 Feb 2011 13:06:43 +0000 + +coreutils (8.5-1ubuntu5) natty; urgency=low + + * debian/patches/80_fedora_sysinfo.dpatch: make 'uname -i -p' return the + real processor/hardware, instead of unknown. Patch cherry-picked from + Fedora 12 (original: coreutils-4.5.3-sysinfo.patch, from the + coreutils-7.6-5.src.rpm). LP: #470550. + + -- C de-Avillez Tue, 10 Nov 2009 12:38:24 -0600 + +coreutils (8.5-1ubuntu4) natty; urgency=low + + * No-change upload to drop upstream changelog, and build with natty + toolchain. + + -- Martin Pitt Fri, 03 Dec 2010 08:40:09 +0100 + +coreutils (8.5-1ubuntu3) maverick; urgency=low + + * Maybe test that the package builds first before uploading; dpatch is a + picky one, isn't it? + + -- Steve Langasek Fri, 11 Jun 2010 06:49:02 +0000 + +coreutils (8.5-1ubuntu2) maverick; urgency=low + + [ John Rigby ] + * debian/patches/99_stat_prototype_for_linkat.dpatch: Add missing header + include for stat() prototype. LP: #591968. + + -- Steve Langasek Fri, 11 Jun 2010 06:03:58 +0000 + +coreutils (8.5-1ubuntu1) maverick; urgency=low + + * Merge from Debian unstable, remaining changes: + - debian/rules: Do not install dangling LC_TIME symlinks + + -- Steve Langasek Mon, 07 Jun 2010 01:41:56 +0000 + +coreutils (8.5-1) unstable; urgency=low + + * New upstream version + * kfbsd patch to work around fstat bug (from jwilk) (Closes: #573940) + * temporarily killing tests on mipsel due to longstanding gcc bug #519006 + + -- Michael Stone Tue, 27 Apr 2010 20:32:54 -0400 + +coreutils (8.4-2) unstable; urgency=low + + * Fix kfbsd build test problems (Closes: #569020) + + -- Michael Stone Fri, 05 Mar 2010 19:06:22 -0500 + +coreutils (8.4-1) unstable; urgency=low + + * New upstream version + - fixes "Bad file descriptor" message from cp & touch (Closes: #563754) + - tail -F won't abort when file is moved (Closes: #561481, #561854) + - mktemp man page describes template (Closes: #548316) + * temporarily disable tests/misc/ls-time to work around some spurious + build failures (on btrfs) + + -- Michael Stone Sat, 16 Jan 2010 14:37:32 -0500 + +coreutils (8.1-1) unstable; urgency=low + + * New upstream version + - adds nproc(1) + + -- Michael Stone Sat, 21 Nov 2009 16:44:35 -0500 + +coreutils (8.0-1) unstable; urgency=low + + * New upstream version + * touch accepts leap seconds (Closes: #510347) + * ln adds -L and -P + * rm -rf should be faster + * remove usr/share/info/dir in build rules (Closes: #546016) + * replaces: timeout (Closes: #552509) + + -- Michael Stone Sat, 14 Nov 2009 16:41:02 -0500 + +coreutils (7.5-6) unstable; urgency=low + + * remove usr/share/info/dir.gz in build rules (Closes: #546016) + * [83] make sure tail -f flushes initial output before waiting + (Closes: #545422) + + -- Michael Stone Fri, 11 Sep 2009 05:59:32 -0400 + +coreutils (7.5-5) unstable; urgency=low + + * update standards version to 3.8.3.0 (no changes) + * [82] fix "function not implemented" in cp -a of symlink on older + linux kernels (Closes: #545306) + + -- Michael Stone Thu, 10 Sep 2009 20:07:24 -0400 + +coreutils (7.5-4) unstable; urgency=low + + * [81] fix tail -f - with inotify (Closes: #545422) + + -- Michael Stone Tue, 08 Sep 2009 20:54:42 -0400 + +coreutils (7.5-3) unstable; urgency=low + + * [61] update who --ips to support more ipv6 ranges (Closes: #508924) + + -- Michael Stone Fri, 04 Sep 2009 17:48:31 -0400 + +coreutils (7.5-2) unstable; urgency=low + + * [79] fix ls-misc build test problem if files are created world-writable + (Closes: #544965) + * [80] fix tail/wait build test problem on kfreebsd (Closes: #545009) + * add -mieee to sh4 build flags (Closes: #544977) + + -- Michael Stone Fri, 04 Sep 2009 16:34:34 -0400 + +coreutils (7.5-1) unstable; urgency=low + + * new upstream version + - fix ls -1 output error (Closes: #539476) + - new program "stdbuf" + - chroot adds --userspec and --groups + - cp adds --reflink + - sort adds --human-numeric-sort + - tail --follow uses inotify + * update package description (Closes: #535458) + * tweak section and priority for mktemp package + * conflict with package "timeout". I think coreutils timeout is just + different enough that it shouldn't replace that package. + + -- Michael Stone Wed, 02 Sep 2009 20:50:02 -0400 + +coreutils (7.4-2ubuntu2) lucid; urgency=low + + * rebuild rest of main for armel armv7/thumb2 optimization; + UbuntuSpec:mobile-lucid-arm-gcc-v7-thumb2 + + -- Alexander Sack Fri, 05 Mar 2010 04:06:08 +0100 + +coreutils (7.4-2ubuntu1) karmic; urgency=low + + * debian/rules: Do not install dangling LC_TIME symlinks, they are not + needed. (LP: #42293) + + -- Martin Pitt Tue, 06 Oct 2009 12:22:48 +0200 + +coreutils (7.4-2) unstable; urgency=low + + * move mktemp to /bin instead of /usr/bin (Closes: #531842) + * include fake non-essential mktemp package (Closes: #531846) + + -- Michael Stone Thu, 04 Jun 2009 17:40:56 -0400 + +coreutils (7.4-1) unstable; urgency=low + + * new upstream version (Closes: #285609) + * replaces: mktemp + * adds: arch(1) (Closes: #516050) + + -- Michael Stone Wed, 03 Jun 2009 21:26:52 -0400 + +coreutils (7.3-1) unstable; urgency=low + + * new upstream version (Closes: #525048, #524500) + + -- Michael Stone Sat, 02 May 2009 12:28:58 -0400 + +coreutils (7.2-1) unstable; urgency=low + + * new upstream version (Closes: #517558) + * [78] fix kfreebsd build problem (Closes: #520368) + + -- Michael Stone Tue, 07 Apr 2009 19:21:42 -0400 + +coreutils (7.1-2) unstable; urgency=low + + * remove timeout binary, conflicts with package "timeout" (Closes: #516652) + + -- Michael Stone Sun, 22 Feb 2009 17:35:32 -0500 + +coreutils (7.1-1) unstable; urgency=low + + * New upstream version + + -- Michael Stone Sun, 22 Feb 2009 12:36:29 -0500 + +coreutils (6.12-2) unstable; urgency=low + + * [77] fall back if utimensat doesn't exist (Closes: #515731) + + -- Michael Stone Tue, 17 Feb 2009 22:11:52 -0500 + +coreutils (6.12-1) unstable; urgency=low + + * New upstream version + * Switch to dpatch + + -- Michael Stone Mon, 16 Feb 2009 12:42:44 -0500 + +coreutils (6.10-6) unstable; urgency=low + + * [76] Add ubuntu/upstream patch to prevent failure of cp of a special + (e.g., fifo) file to an existing file + * [71] change getgrouplist patch to skip the autoconf test and use + getgrouplist unconditionally. (Patch isn't immediately ready for + upstream anyway, and I assume that glibc provides this function + on all our supported platforms. If this turns out to not be true, + I'll revisit.) (Closes: #459615) + + -- Michael Stone Fri, 04 Apr 2008 10:02:18 -0400 + +coreutils (6.10-5) unstable; urgency=low + + * [75] Fix that last patch so that it doesn't display error messages + on non-selinux systems (closes: 473739) + + -- Michael Stone Tue, 01 Apr 2008 06:55:03 -0400 + +coreutils (6.10-4) unstable; urgency=low + + * [74] upstream patch to allow dd & other commands to use /dev/stdin + (Thanks Paul Eggert) (closes: #290727) + * [75] prevent ls from displaying a + for files with an selinux context. + (this will change in future, but the exact future output isn't certain + yet) (Thanks Russell Coker) (closes: #472590) + * Add a watch file to keep people from complaining about not having a watch + file. (closes: #441108) + * printf(1) now references printf(3) (closes: #465522) + + -- Michael Stone Mon, 31 Mar 2008 18:19:52 -0400 + +coreutils (6.10-3) unstable; urgency=low + + * [71] use getgrouplist to get list of groups, e.g., for id(1) + (Closes: #459615) + * [72] display warning if user is in too many groups + (Closes: #175994) + * [73] prevent segfault in ls -l /proc/sys/fs/inotify/ + (Thanks Jan Moringen) (Closes: #463043) + * Try upstream fix for info references in man pages + (Closes: #388684) + * Upstream change in documentation for mv in the case of a + moving a symlink to a directory with a trailing '/' + (Closes: #343652) + * move kill to /bin on hurd (Closes: #380387) + * Fix some minor typos/formatting in debian packaging + * Add link to upstream FAQ in README.Debian + + -- Michael Stone Mon, 28 Jan 2008 21:11:32 -0500 + +coreutils (6.10-2) unstable; urgency=low + + * run make check with VERBOSE enabled; this no longer makes the logs + unreadably huge (thanks Julien Cristau for asking the obvious + question) + * print cpu info during build to help debug build failures + * bump policy version + * lose perl-base & bzip2 build-deps. Someday need to support lzma tarball + * drop more legacy fileutils/shellutils/textutils upgrade support. + hopefully people have finished upgrading to etch + + -- Michael Stone Wed, 23 Jan 2008 20:36:12 -0500 + +coreutils (6.10-1) unstable; urgency=low + + * new upstream release + - cp, by default, refuses to copy through a dangling destination symlink + Set POSIXLY_CORRECT if you require the old, risk-prone behavior. + + -- Michael Stone Tue, 22 Jan 2008 20:01:35 -0500 + +coreutils (6.10~20071127-1) experimental; urgency=low + + * new snapshot + * coreutils now includes mktemp, but it is not included in this package + because debian already has a mktemp package with similar syntax. + + -- Michael Stone Fri, 30 Nov 2007 14:21:47 -0500 + +coreutils (6.10~20070907-3) experimental; urgency=low + + * use correct upstream changelog + * make su suid on hurd again (Closes: #439249) + + -- Michael Stone Sat, 15 Sep 2007 12:47:01 -0400 + +coreutils (6.10~20070907-2) experimental; urgency=low + + * forgot to add bison to build-deps + + -- Michael Stone Sat, 08 Sep 2007 14:09:40 -0400 + +coreutils (6.10~20070907-1) experimental; urgency=low + + * SELinux support has been integrated upstream. This may break things + in the short term (I encourage SELinux users to test) but is + expected to simplify coreutils development since the size of the + debian diff is greatly reduced. + * Bumped policy number + * Killed off textutils/fileutils/shellutils transition packages + * most debian patches are gone, except for whoips & dd appenderrors + * may need some, like s390 no sha2, returned (see how autobuilds do) + + -- Michael Stone Sat, 08 Sep 2007 07:55:11 -0400 + +coreutils (5.97-5.4) unstable; urgency=medium + + * Non-maintainer upload. + * New patch 64_coreutils-futimens: rename futimens to cu_futimens, + since glibc now defines an futimens function with a different + prototype. Closes: #433394. + * Urgency medium for the RC bug fix. + + -- Daniel Schepler Sat, 18 Aug 2007 16:41:21 -0400 + +coreutils (5.97-5.3) unstable; urgency=high + + * This is a non-maintainer upload done with the maintainer's blessing, + to fix a FTBS bug, and to get the SELinux changes in through to Etch. + * Bug fix: "coreutils - FTBFS", thanks to Bastian Blank and Andreas + Barth. The problem is with a build time test suite, which did not + take into account that there could be two directory names with the + same inode, which is what happens if there is a bind mount. So this + is not anything s390 specific, nor is it a problem with the coreutils + package itself, just with the build time test. Applied a version of + the patch being used by upstream to fix the test. + (Closes: #380552, #407628). + + -- Manoj Srivastava Tue, 23 Jan 2007 15:00:28 -0600 + +coreutils (5.97-5.2) unstable; urgency=low + + * This is an follow up non-maintainer upload to fix an issue introduced + in my last NMU. This fixes an FTBS bugs when building for non-SELinux + environments, for example, for non Linux architectures. + * Bug fix: "coreutils: FTBFS on hurd and kfreebsd: Unguarded usage of + SELinux code", thanks to Michael Banck. I missed out on guarding + assignments one. Rather than use the suggested patch (which adds two + members to a struct on non-selinux machines that would never get used, + I went back and corrected the non-selinux patch, since that is the + correct location to add this fix. The version of the patch included + in this version should do the right thing. (Closes: #396655). + + -- Manoj Srivastava Sun, 5 Nov 2006 16:04:08 -0600 + +coreutils (5.97-5.1) unstable; urgency=low + + * With permission from the maintainer, this upload (from a non-maintainer) + updates the SELinux patch, synchronizing with the latest patches from + fedora core (:pserver:anonymous@cvs.fedora.redhat.com:/cvs/dist, + repository rpms/coreutils/devel). The patches had to be tweaked for + Debian. This bring coreutils into compatibility with the latest + version of SELinux now in Debian. + * Bug fix: "coreutils: Updated SELinux patch", thanks to Manoj + Srivastava. The NMU patch is available in that bug report, + essentially, this is a minimal change upload. (Closes: #394287). + + -- Manoj Srivastava Fri, 20 Oct 2006 15:11:27 -0500 + +coreutils (5.97-5) unstable; urgency=medium + + * Actually kill sha384 and sha512 on s390. Finally got logged into an s390 + system, which makes debugging easier. (Conversely, buildds that fail a + build without providing a log make debugging harder.) Note to debian + developers: if you want introduce a dependency on sha384 or sha512, talk + to me first. + + -- Michael Stone Thu, 31 Aug 2006 07:38:19 -0400 + +coreutils (5.97-4) unstable; urgency=medium + + * s390 just doesn't seem to like sha384 (tests fail). I'm gonna kill that & + sha512 on s390 until someone with access to that arch & interest in the + problem steps up. + * add new catalan translation Closes: #384563 + + -- Michael Stone Thu, 03 Aug 2006 20:53:46 -0400 + +coreutils (5.97-3) unstable; urgency=low + + * Update sha2 patch to fix alignment issue on sparc + (Thanks David Madore) + + -- Michael Stone Thu, 03 Aug 2006 20:53:46 -0400 + +coreutils (5.97-2) unstable; urgency=low + + * Update sha2 patch to fix FTBFS on various architectures + (Thanks David Madore) + + -- Michael Stone Tue, 01 Aug 2006 20:21:05 -0400 + +coreutils (5.97-1) unstable; urgency=low + + * New upstream version + - cat options work in /proc Closes: 370583 + * [70] add sha2 utilities Closes: 325205 + * remove spurious removal of /usr/share/man/man1/md5sum.textutils + in preinst + + -- Michael Stone Wed, 26 Jul 2006 07:34:44 -0400 + +coreutils (5.96-5) unstable; urgency=low + + * [62] fix segfault when diropen fails on remove Closes: #375333 + * [63] warn on append with trunc Closes: #373736 + * fix idiotic typo in build rules for hurd Closes: #344166 + + -- Michael Stone Sun, 25 Jun 2006 13:30:21 -0400 + +coreutils (5.96-4) unstable; urgency=low + + * Fix deprecation messages Closes: #375335 + * Try to clobber chcon man page build on hurd Closes: #344166 + + -- Michael Stone Sun, 25 Jun 2006 13:30:21 -0400 + +coreutils (5.96-3) unstable; urgency=low + + * Follow strategy from Ian Jackson to better deal with the dpkg md5sum + mess. Only remove dpkg's mad md5sum diversion `once' (ie, on upgrade + from non-/usr/bin/md5sum-supplying coreutils). This preserves any later + sysadmin-installed diversions of md5sum.textutils. + * Add NEWS.Debian notes on the POSIX2_VERSION change + * add who --ips option to display IPs instead of hostnames. Code taken + from last.c in sysvinit-2.86.ds1. + Closes: #363126 + + -- Michael Stone Sat, 27 May 2006 14:05:44 -0400 + +coreutils (5.96-2) unstable; urgency=low + + * [60] Add deprecation warnings for tail +n and sort +n, but allow that + syntax + * Build-depend on autoconf 2.59.cvs.2006.05.25-1 to avoid bug that could + affect coreutils performance. Backporters may be able to weaken that + dependency. + + -- Michael Stone Sat, 27 May 2006 09:21:43 -0400 + +coreutils (5.96-1) unstable; urgency=low + + * New upstream version + * Don't override posix version at build time anymore. Upstream has + made this less painful; is this viable for etch? + * Update copyright file (Closes: #356532) + + -- Michael Stone Tue, 23 May 2006 21:08:13 -0400 + +coreutils (5.94-2) unstable; urgency=low + + * Reorder 55_coreutils.selinux.patch to fix builds on hurd + (Closes: #344166) + * [58_getcwd-chroot] fix pwd failure on certain bind mounts + (Closes: #355810) + * [59_dircolors-moreterms] add rxvt-unicode & mlterm to dircolors + (Closes: #270139, #317503) + * Update copyright file (thanks Joost van Baal) (Closes: #356532) + * Extend the diversion hackery (Closes: #361799) + + -- Michael Stone Sat, 15 Apr 2006 21:48:43 -0400 + +coreutils (5.94-1) unstable; urgency=low + + * New upstream version (Closes: #349530, #273781, #332779, #341912) + - upstream has reverted the behavior for stat --format + and added a new --printf option with the new behavior + (Closes: #339136) + - tail -f works on append-only files again (Closes: #339400) + - tail -c 3 works again (Closes: #340364) + - tail -0f work for multiple files (but use -n 0 -f instead) + (Closes: #341785) + * [99_dircolors-shell] dircolors test doesn't depend on the shell + * Fix md5sum diversion problems with a hacksaw (Closes: #340119) + + -- Michael Stone Wed, 15 Feb 2006 14:11:23 -0500 + +coreutils (5.93-5) unstable; urgency=low + + * Actually conflict with apt-move instead of just thinking about it + (Closes: #339136) + * Drop help2man build-dep (we're actually using one in the build tree) + + -- Michael Stone Wed, 16 Nov 2005 07:46:45 -0500 + +coreutils (5.93-4) unstable; urgency=low + + * Conflict with apt-move expecting particular stat syntax (Closes: #339136) + I need to think more about what to do with upstream changes to stat -c + * For now, add upstream patch so that stat -c "%whatever\n" actually works + + -- Michael Stone Tue, 15 Nov 2005 09:30:56 -0500 + +coreutils (5.93-3) unstable; urgency=low + + * Remove --enable-pam from selinux rules (we don't use our su for selinux) + * [99] Revert change to POSIX version override (I forgot about +n usage) + I once again *strongly* urge people to convert to more portable syntax. + (search NEWS for POSIX 1003.1-2001) + (Closes: #339085) + * [57] Patch from Petr Salinger to fix selinux build problems on non-linux + systems (Closes: #338821) + + -- Michael Stone Mon, 14 Nov 2005 20:55:57 -0500 + +coreutils (5.93-2) unstable; urgency=low + + * Change section to utils (base ain't what it used to be) + * Trust the autoreconf wrapper because things are too complicated otherwise + * [56] Recognize cifs as remote so it can be ignored, e.g., in df -l + (Closes: #324934) + + -- Michael Stone Sat, 12 Nov 2005 20:28:53 -0500 + +coreutils (5.93-1) unstable; urgency=low + + * New upstream version + - tail's --allow-missing option has been removed. Use --retry instead + - stat's --link and -l options have been removed. Use --dereference + - support things like head -NUM when conforming to POSIX 1003.1-2001. + because of this, debian no longer forces POSIX version 199209 + - many other changes documented in /usr/share/doc/coreutils/NEWS.gz + * Need automake 1.9 now + * Allow build check to be skipped with nocheck option (Closes: #278915) + * Work around dpkg changes (Closes: #314713) + * Try to recover from badly planned move on part of dpkg maintainer to + put a *local* diversion on md5sum. There is no good way to handle this; + hopefully nobody will do something so stupid in the future. + * Remove some ancient debian-specific patches + - install no longer calls strip with special options + - no more --reversible option to cat + - no more --first-eof option to paste + - no more field seperator option to uniq + * [54] Update acl patch using fedora devel patch + * [55] Add selinux support from fedora devel & Manoj Srivastava + (Closes: #312426) + + -- Michael Stone Sat, 12 Nov 2005 13:34:05 -0500 + +coreutils (5.2.1-3) unstable; urgency=low + + * fix info install + * install the right upstream changelog + + -- Michael Stone Fri, 16 Jul 2004 07:28:41 -0400 + +coreutils (5.2.1-2) unstable; urgency=low + + * remove su for kfreebsd (Closes: #225131) + * add yacc to build depends. forgot that the date patch [31] forced a + rebuild from getdate.y (Closes: #259563) + + -- Michael Stone Fri, 16 Jul 2004 07:28:41 -0400 + +coreutils (5.2.1-1) unstable; urgency=low + + * New upstream version (Closes: #245360, #244784, #259282, #246509) + - Fixes ls --block-size="1" (Closes: #237330) + - `chown user.group file' now has its traditional meaning even when + conforming to POSIX 1003.1-2001, so long as no user has a name + containing `.' that happens to equal `user.group'. + - time stamps output by stat now include actual fractional seconds, + when available -- or .0000000 for files without that information. + - rmdir -p exits with status 1 on error; formerly it sometimes exited + with status 0 when given more than one argument. + - chgrp and chown now accept POSIX-mandated -L, -H, and -P options + - du can now process hierarchies of virtually unlimited depth. + - du's -H option will soon have the meaning required by POSIX + (--dereference-args, aka -D) rather then the current meaning of --si. + Now, using -H elicits a warning to that effect. + * [53] Update acl patch for 5.2.1. Now based on FC2 coreutils patch. + * Removed xattr patch. AFAICT this isn't particularly useful for anything + except selinux, and other selinux support isn't included. Also, the + option added with this patch isn't being used consistently between + different linux distributions and I'd rather not support something that + will cause incompatibilities. If anyone was depending on this support + please contact me with details. (Closes: #244603) + * fix minor typo in README.Debian (Closes: #218333) + * [31] seconds defaults to 0 when using something like + date -d '21:04 +0100' (Closes: #238046) + * rebuild should fix hppa problem (Closes: #219458) + * remove join -n + * update documentation for test so that the FD parameter to test -t is + mandatory (Closes: #255694) + + -- Michael Stone Wed, 14 Jul 2004 06:13:38 -0400 + +coreutils (5.0.91-2) unstable; urgency=low + + * add bzip2 to build-deps (Closes: #214094) + * fix stupid typo in preinst info cleanup script (Closes: #214134) + * make sure /usr/share/info doesn't contain a dir file + (Closes: #214050, #214138) + + -- Michael Stone Sat, 04 Oct 2003 18:35:32 -0400 + +coreutils (5.0.91-1) unstable; urgency=low + + * New upstream version + - date accepts a new option --rfc-2822, an alias for --rfc-822 + - split accepts a new option -d or --numeric-suffixes + - cp, install, mv, and touch now preserve microsecond resolution + - sort now supports the zero byte (NUL) as a field separator; use -t '\0' + The -t '' option, which formerly had no effect, is now an error + - sort option order no longer matters for -S, -d, -i, -o, and -t + - tail --allow-missing option is deprecated; use --retry instead + - `sha1sum --check' now accepts the BSD format for SHA1 message digests + - who -l now means `who --login', not `who --lookup', per POSIX. Feature + was deprecated in woody + - mv renaming file onto differently-cased form of the same name no longer + causes data loss on case-insensitive filesystem like vfat. Name-mapping + filesystems such as ntfs or hpfs can still have problems, see NEWS file + for details. (Closes: #189319) + - seq's default step is 1, even if LAST < FIRST (Closes: #208494) + * [30] upstream patch for du -D with symlinks (Closes: #211591) + * make sure buildinfo is cleaned up + * debian/newfiles aren't used any more + * old {file,shell,text}utils info doc indices are cleaned up (Closes: #209160) + * add sha1sum to description (Closes: #211724) + + -- Michael Stone Fri, 03 Oct 2003 23:01:28 -0400 + +coreutils (5.0.90-3) unstable; urgency=low + + * [28,29] don't hang in who or pinky trying to look up the fake + host entries that screen puts in utmp + * [50,51] acl support + - libacl1-dev build dependency + - probably won't work on non-linux, patches welcome for hurd et al. if + they break + * [52] extended attribute support + - libattr1-dev build dependency (still necessary with new libc?) + - not sure about this one, it might come out (is it always valid to + preserve ea's even if we don't know what they are for?) + + -- Michael Stone Mon, 18 Aug 2003 19:47:29 -0400 + +coreutils (5.0.90-2) unstable; urgency=medium + + * [27] tail -n 0 -f no longer causes busy wait/hang (Closes: #205251) + + -- Michael Stone Wed, 13 Aug 2003 22:46:30 -0400 + +coreutils (5.0.90-1) unstable; urgency=low + + * New upstream version + - `test -t', `test --help', and `test --version' now silently exit + with status 0. To test whether standard output is a terminal, use + `test -t 1'. To get help and version info for `test', use + `[ --help' and `[ --version'. + `test' now exits with status 2 (not 1) if there is an error. + - rm without --recursive (aka -r or -R) no longer prompts regarding + unwritable directories, as required by POSIX. + - uniq -c now uses a SPACE, not a TAB between the count and the + corresponding line, as required by POSIX. + - expr now exits with status 2 if the expression is syntactically valid, + and with status 3 if an error occurred. POSIX requires this. + - md5sum --check now accepts the output of the BSD/OpenSSL md5sum program + - chown: `.' is no longer recognized as a separator when POSIX2 version + is >= 200112 + * [26] split-fail test doesn't fail + * revert 17, patch doesn't work anyway. 26 is a new patch for the problem + of building as non-root in a chroot owned by the builder. + (Closes: #204778) + * use dh_buildinfo + * standards-version 3.6.0 + * add readlink to description (Closes: #204974) + * temporarily override posix version to 199209 so I can upload this package. + need a transition plan. try setting the environment variable + _POSIX2_VERSION on your system to "200112" and see how much breaks. + I encourage debian developers to update their packages so the above works. + + -- Michael Stone Mon, 11 Aug 2003 17:31:34 -0400 + +coreutils (5.0-5) unstable; urgency=low + + * [23] upstream patch to make split --verbose actually verbose + (Closes: #199205) + * enable kill & su for freebsd (Closes: #194743) + * [24] upstream fix for du not displaying / on last line of du / + (Closes: #200542) + * Build-conflict on automake1.4 (Closes: #200378) + * [25] chown no longer preserves setuid bits (Closes: #112597) + + -- Michael Stone Sat, 12 Jul 2003 09:11:08 -0400 + +coreutils (5.0-4) unstable; urgency=medium + + * upstream patch to prevent fd leak (Closes: #197655) + + -- Michael Stone Mon, 16 Jun 2003 17:34:51 -0400 + +coreutils (5.0-3) unstable; urgency=low + + * More hurd stuff, again (Closes: 190738) + * uname -i and -p don't exist anymore, stop complaining + + -- Michael Stone Tue, 13 May 2003 16:57:55 -0400 + +coreutils (5.0-2) unstable; urgency=low + + * Cope with symlinks at LC_TIME for woody upgrades (Closes: 191338) + * Upstream patch to fix FTBFS on hurd (Closes: 190738) + + -- Michael Stone Sun, 11 May 2003 10:29:21 -0400 + +coreutils (5.0-1) unstable; urgency=low + + * New upstream version + - false --help now exits nonzero + - a number of printf fixes + - a couple of seq fixes + + -- Michael Stone Mon, 14 Apr 2003 20:03:36 -0400 + +coreutils (4.5.10-1) unstable; urgency=low + + * New upstream version + - printf no longer segfaults for a negative field width or precision + - shred now always enables --exact for non-regular files + - du no longer lists hard-linked files more than once + - du no longer dumps core on some systems due to `infinite' recursion + via nftw's use of the buggy replacement function in getcwd.c + (Closes: #183962) + - portability patches for a few vendor compilers and 64-bit systems + - du -S *really* now works like it did before the change in 4.5.5 + * make it clearer that {file,shell,text}utils are obsolete + (Closes: #184191, #183631) + + -- Michael Stone Tue, 18 Mar 2003 19:35:23 -0500 + +coreutils (4.5.9-1) unstable; urgency=low + + * New upstream version + - du no longer truncates file sizes or sums to fit in 32-bit size_t + - work around Linux kernel bug in getcwd (fixed in 2.4.21-pre4), so that pwd + now fails if the name of the working directory is so long that getcwd + truncates it. Before it would print the truncated name and exit successfully. + - `df /some/mount-point' no longer hangs on a GNU libc system when another + hard-mounted NFS file system (preceding /some/mount-point in /proc/mounts) + is inaccessible. + - rm -rf now gives an accurate diagnostic when failing to remove a file + under certain unusual conditions + - mv and `cp --preserve=links' now preserve multiple hard links even under + certain unusual conditions where they used to fail + + -- Michael Stone Thu, 06 Mar 2003 07:09:05 -0500 + +coreutils (4.5.8-2) unstable; urgency=medium + + * Fix typesize problem in du that caused wrapping at 2G + (Closes: #183210, #183393) + * Added upstream patch to fix behavior where mv would fail to move files + under certain (rare) conditions + * Added upstream patch to fix error message "cannot chdir" when rm -rf fails + to remove a file because of insufficient permission (Closes: #178471) + + -- Michael Stone Tue, 04 Mar 2003 20:33:14 -0500 + +coreutils (4.5.8-1) unstable; urgency=low + + * New upstream version + - du -S once again works like it did before the change in 4.5.5 + - stat accepts a new file format, %B, for the size of each block + reported by %b + - du accepts new option: --apparent-size + - du --bytes (-b) works the same way it did in fileutils-3.16 and before + - du reports proper sizes for directories (not zero) + - df now always displays under `Filesystem', the device file name + corresponding to the listed mount point. Before, for a block- or + character- special file command line argument, df would display that + argument. E.g., `df /dev/hda' would list `/dev/hda' as the + `Filesystem', rather than say /dev/hda3 (the device on which `/' is + mounted), as it does now. + - test now works properly when invoked from a set user ID or set group ID + context and when testing access to files subject to alternate protection + mechanisms. For example, without this change, a set-UID program that + invoked `test -w F' (to see if F is writable) could mistakenly report + that it *was* writable, even though F was on a read-only file system, or + F had an ACL prohibiting write access, or F was marked as immutable. + * Add ipv6 support for name resolution (from "J.H.M. Dassen (Ray)" + ) (Closes: 181817) + * Provide readlink (Replaces: debianutils <= 2.3.1) + + -- Michael Stone Sun, 02 Mar 2003 11:34:07 -0500 + +coreutils (4.5.7-1) unstable; urgency=low + + * New upstream version + - Includes upstream's fix for 175135 + * {shell,text,file}utils now priority extra, section misc + * putty added to dircolors known terminal list (Closes: #180312) + * split will not terminate prematurely on non-full buffer read + (Closes: #177559) + + -- Michael Stone Sun, 09 Feb 2003 09:09:19 -0500 + +coreutils (4.5.6-2) unstable; urgency=medium + + * du behaves properly when multiple relative paths are specified on the + command line (Closes: #180228) + + -- Michael Stone Sat, 08 Feb 2003 11:01:53 -0500 + +coreutils (4.5.6-1) unstable; urgency=low + + * New upstream version + - Fixes coloring of executables on ext2 (Closes: #175135) + - uses new dirent format for info doc (currently reverted + pending dpkg install-info update) + * dd closes output before printing stats (Closes: #178400) + + -- Michael Stone Fri, 07 Feb 2003 07:49:42 -0500 + +coreutils (4.5.4-1) unstable; urgency=low + + * New upstream version + * touch gives correct error message when trying to update the time of an + unowned file + * Upstream is using newer config.{sub,guess} (Closes: #171498) + * touch test succeeds if unprivileged user can write to / (Closes: #171893) + * again with ls -s of symlink--covered all the cases yet? + also fixes ls -i of symlink (Closes: #173793) + * shred -z no longer expects argument (Closes: #172019) + + -- Michael Stone Wed, 01 Jan 2003 13:25:48 -0500 + +coreutils (4.5.3-4) unstable; urgency=low + + * ls on explicit symlink to directory properly shows directory contents + (Closes: #171459) + * ls -L on broken symlink generates error again + * run make check on package build again + + -- Michael Stone Tue, 03 Dec 2002 17:41:46 -0500 + +coreutils (4.5.3-3) unstable; urgency=low + + * printf %b works (Closes: #170983) + * remove cycle breaking patch in tsort (Closes: #168914) + + -- Michael Stone Wed, 27 Nov 2002 17:50:59 -0500 + +coreutils (4.5.3-2) unstable; urgency=low + + * ls --color works properly with -d on directories (Closes: #168203) + * explicit ls for broken symlink works (Closes: #168203) + * explicit ls -s of symlink works (Closes: #167964) + * document du -m (Closes: #167769) + + -- Michael Stone Sat, 09 Nov 2002 22:39:10 -0500 + +coreutils (4.5.3-1) unstable; urgency=low + + * New upstream version + * backed out more specific uname processor output + - Closes: #164691, #164710, #165530, #166621 + - basically no positive feedback :) + * remove /usr/share/doc/coreutils/ABOUT-NLS.gz (Closes: #164920) + * printf with a trailing \ doesn't cause end-of-string to be ignored + (Closes: #166201) + + -- Michael Stone Thu, 31 Oct 2002 21:20:37 -0500 + +coreutils (4.5.2-1) unstable; urgency=low + + * New upstream version + - translations fixed (Closes: #161629, #163712) + * .jar color fixed (Closes: #163838) + * dired test doesn't break for non-english locale (Closes: #161069) + * more specific uname processor output (Closes: #88070) + - let's see how people react to this one :) + + -- Michael Stone Tue, 08 Oct 2002 21:42:27 -0400 + +coreutils (4.5.1-2) unstable; urgency=high + + * don't provide stat (causes nasty upgrade problem) + (Closes: #161245, #161249) + * bump standards-version + * register info file properly + * DEB_BUILD_OPTIONS (Closes: #152189) + + -- Michael Stone Tue, 17 Sep 2002 21:40:51 -0400 + +coreutils (4.5.1-1) unstable; urgency=low + + * New upstream release + * Replaces fileutils, shellutils, and textutils + + -- Michael Stone Fri, 13 Sep 2002 21:00:15 -0400 + + --- coreutils-8.21.orig/debian/compat +++ coreutils-8.21/debian/compat @@ -0,0 +1 @@ +5 --- coreutils-8.21.orig/debian/control +++ coreutils-8.21/debian/control @@ -0,0 +1,39 @@ +Source: coreutils +Maintainer: Ubuntu Developers +XSBC-Original-Maintainer: Michael Stone +Section: utils +Priority: required +Standards-Version: 3.9.4.0 +Build-Depends: gettext (>= 0.10.37), debhelper (>= 5.0.0), dh-buildinfo, texinfo (>= 4.2), groff, dpatch, libattr1-dev [linux-any], libacl1-dev [linux-any], libselinux1-dev (>= 1.32) [linux-any], gperf, bison +XS-Testsuite: autopkgtest + +Package: coreutils +Architecture: any +Multi-Arch: foreign +Pre-Depends: ${shlibs:Depends} +Essential: yes +Replaces: mktemp, timeout +Conflicts: timeout +Depends: ${misc:Depends} +Description: GNU core utilities + This package contains the basic file, shell and text manipulation + utilities which are expected to exist on every operating system. + . + Specifically, this package includes: + arch base64 basename cat chcon chgrp chmod chown chroot cksum comm cp + csplit cut date dd df dir dircolors dirname du echo env expand expr + factor false flock fmt fold groups head hostid id install join link ln + logname ls md5sum mkdir mkfifo mknod mktemp mv nice nl nohup nproc od + paste pathchk pinky pr printenv printf ptx pwd readlink rm rmdir runcon + sha*sum seq shred sleep sort split stat stty sum sync tac tail tee test + timeout touch tr true truncate tsort tty uname unexpand uniq unlink + users vdir wc who whoami yes +Homepage: http://gnu.org/software/coreutils + +Package: mktemp +Pre-Depends: coreutils (>= 7.4-1) +Priority: extra +Section: oldlibs +Architecture: all +Description: coreutils mktemp transitional package + Empty package to facilitate upgrades, can be safely removed. --- coreutils-8.21.orig/debian/coreutils.NEWS +++ coreutils-8.21/debian/coreutils.NEWS @@ -0,0 +1,14 @@ +coreutils (5.96-3) unstable; urgency=low + + * The POSIX compatibility level is now set to POSIX 1003.1-2001, + which affects the syntax for several commands. For transition + purposes, "sort +number" and "tail +number" will be supported + for the etch release. Note that these usages are deprecated, and + will be removed in etch+1; the recommended usage is "sort -k number" + and "tail -n +number". Also, "uniq +number" should be replaced with + "uniq -s number" and "touch number filename" should be replaced with + "touch -t number filename". To revert to the older syntax, set the + environment variable _POSIX2_VERSION to "199209". + + -- Michael Stone Sat, 27 May 2006 12:56:18 -0400 + --- coreutils-8.21.orig/debian/coreutils.README.Debian +++ coreutils-8.21/debian/coreutils.README.Debian @@ -0,0 +1,10 @@ +Most of the coreutils documentation is available as info pages. (Try "info +coreutils" at a command prompt). A version of this documentation is also +available online at +http://www.gnu.org/software/coreutils/manual/html_node/index.html +(Note that the online version may not reflect the version of coreutils in this +package.) + +There is also a frequently asked questions document available at +http://www.gnu.org/software/coreutils/faq/coreutils-faq.html + --- coreutils-8.21.orig/debian/coreutils.copyright +++ coreutils-8.21/debian/coreutils.copyright @@ -0,0 +1,299 @@ +This is the Debian GNU/Linux packaged version of the GNU core +utilities. + +This package is maintained by Michael Stone and +built from sources obtained from: + ftp://ftp.gnu.org/gnu/coreutils/coreutils-8.20.tar.xz + +This debian package was first created by Michael Stone , +from coreutils 4.5.1. + +Changes: + * added Debian GNU/Linux package maintenance system files + * at times, bug fixes awaiting inclusion in the upstream source + + +Authors +======= + +See the file AUTHORS. + + +Copyright Holders and License +============================= + +lib/fts.c +--------- + + Copyright (C) 2004, 2005, 2006, 2007, 2008 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 . */ + +/*- + * Copyright (c) 1990, 1993, 1994 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + + +lib/fts_.h +---------- + + Copyright (C) 2004, 2005, 2006, 2007 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 . */ + +/* + * Copyright (c) 1989, 1993 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + + +lib/rand-isaac.[ch] +------------------- + + Copyright (C) 1999-2006 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999 Colin Plumb. + + 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 . + + +lib/inet_ntop.c +--------------- + + Copyright (C) 2005, 2006 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, 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, write to the Free Software Foundation, + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + +/* + * Copyright (c) 1996-1999 by Internet Software Consortium. + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS + * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE + * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL + * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR + * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS + * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + * SOFTWARE. + */ + + +m4/autobuild.m4 +--------------- +dnl Copyright (C) 2004, 2006, 2007 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl From Simon Josefsson + + +src/cut.c +--------- + + Copyright (C) 1997-2007 Free Software Foundation, Inc. + Copyright (C) 1984 David M. Ihnat + + 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 . */ + + +src/dircolors.c +--------------- + + Copyright (C) 1996-2007 Free Software Foundation, Inc. + Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000 H. Peter Anvin + + 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 . */ + + +src/paste.c +----------- + + Copyright (C) 1997-2005 Free Software Foundation, Inc. + Copyright (C) 1984 David M. Ihnat + + 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 . */ + + +src/shred.c +----------- + + Copyright (C) 1999-2007 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999 Colin Plumb. + + 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 . + + +doc/coreutils.texi (The GNU Coreutils Manual) +--------------------------------------------- + +Copyright @copyright{} 1994-1996, 2000-2008 Free Software Foundation, Inc. + +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no +Invariant Sections, with no Front-Cover Texts, and with no Back-Cover +Texts. A copy of the license is included in the section entitled ``GNU +Free Documentation License''. + + +all other files +--------------- + +Copyright (C) 1984-2008 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 . + +On Debian systems, the complete text of the GNU General +Public License can be found in `/usr/share/common-licenses/GPL-3'. --- coreutils-8.21.orig/debian/coreutils.dirs +++ coreutils-8.21/debian/coreutils.dirs @@ -0,0 +1,2 @@ +bin +usr/share/doc/coreutils --- coreutils-8.21.orig/debian/mktemp.copyright +++ coreutils-8.21/debian/mktemp.copyright @@ -0,0 +1,3 @@ +The empty package mktemp is created by Michael Stone +and either is in the public domain or too trivial to copyright. + --- coreutils-8.21.orig/debian/patches/00list +++ coreutils-8.21/debian/patches/00list @@ -0,0 +1,14 @@ +61_whoips +63_dd-appenderrors +72_id_checkngroups +80_fedora_sysinfo +85_timer_settime +99_kfbsd_fstat_patch +99_hppa_longlong +99_arm64_longlong +99_test_xasprintf_hardening +99_float_endian_detection +99_test_nohup_tty +CVE-2014-9471 +99_mountinfo +99_df_check_fsroot --- coreutils-8.21.orig/debian/patches/61_whoips.dpatch +++ coreutils-8.21/debian/patches/61_whoips.dpatch @@ -0,0 +1,130 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run + +@DPATCH@ +diff -urNad coreutils-8.0~/src/who.c coreutils-8.0/src/who.c +--- coreutils-8.0~/src/who.c 2009-09-23 04:25:44.000000000 -0400 ++++ coreutils-8.0/src/who.c 2009-11-14 17:16:07.581713057 -0500 +@@ -28,6 +28,8 @@ + #include + + #include ++#include ++#include + #include "system.h" + + #include "c-ctype.h" +@@ -101,6 +103,9 @@ + /* If true, attempt to canonicalize hostnames via a DNS lookup. */ + static bool do_lookup; + ++/* If true, display ips instead of hostnames */ ++static bool do_ips; ++ + /* If true, display only a list of usernames and count of + the users logged on. + Ignored for `who am i'. */ +@@ -156,7 +161,8 @@ + /* for long options with no corresponding short option, use enum */ + enum + { +- LOOKUP_OPTION = CHAR_MAX + 1 ++ LOOKUP_OPTION = CHAR_MAX + 1, ++ IPS_OPTION = CHAR_MAX + 2 + }; + + static struct option const longopts[] = +@@ -166,6 +172,7 @@ + {"count", no_argument, NULL, 'q'}, + {"dead", no_argument, NULL, 'd'}, + {"heading", no_argument, NULL, 'H'}, ++ {"ips", no_argument, NULL, IPS_OPTION}, + {"login", no_argument, NULL, 'l'}, + {"lookup", no_argument, NULL, LOOKUP_OPTION}, + {"message", no_argument, NULL, 'T'}, +@@ -418,6 +425,63 @@ + } + #endif + ++ /* Needs configure check for ut_addr_v6, etc */ ++ if (do_ips && ++ memcmp(utmp_ent->ut_addr_v6, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 16)) ++ { ++ /* Following code is from sysvinit-2.87dsf ++ (GPL Copyright 1991-2004 Miquel van Smoorenburg) */ ++ struct sockaddr_in sin; ++ struct sockaddr_in6 sin6; ++ struct sockaddr *sa; ++ int salen, flags; ++ unsigned int azero=0; ++ unsigned int glblunicast=0, linklocal=0, localunicast=0; ++ int mapped = 0; ++ int *a = utmp_ent->ut_addr_v6; ++ ++ hoststr = xrealloc(hoststr, 256); ++ ++ flags = do_lookup ? 0 : NI_NUMERICHOST; ++ ++ /* ++ * IPv4 or IPv6 ? We use 2 heuristics: ++ * 1. Current IPv6 range uses 2000-3fff or fc00-fdff or fec0-feff. ++ * Outside of that is illegal and must be IPv4. ++ * 2. If last 3 bytes are 0, must be IPv4 ++ * 3. If IPv6 in IPv4, handle as IPv4 ++ * ++ * Ugly. ++ */ ++ if (a[0] == 0 && a[1] == 0 && a[2] == htonl (0xffff)) ++ mapped = 1; ++ ++ azero = ntohl((unsigned int)a[0]) >> 16; ++ glblunicast = (azero >= 0x2000 && azero <= 0x3fff) ? 1 : 0; ++ localunicast = (azero >= 0xfc00 && azero <= 0xfdff) ? 1 : 0; ++ linklocal = (azero >= 0xfec0 && azero <= 0xfeff) ? 1 : 0; ++ ++ if (!(glblunicast || linklocal || localunicast) || mapped || ++ (a[1] == 0 && a[2] == 0 && a[3] == 0)) { ++ /* IPv4 */ ++ sin.sin_family = AF_INET; ++ sin.sin_port = 0; ++ sin.sin_addr.s_addr = mapped ? a[3] : a[0]; ++ sa = (struct sockaddr *)&sin; ++ salen = sizeof(sin); ++ } else { ++ /* IPv6 */ ++ memset(&sin6, 0, sizeof(sin6)); ++ sin6.sin6_family = AF_INET6; ++ sin6.sin6_port = 0; ++ memcpy(sin6.sin6_addr.s6_addr, a, 16); ++ sa = (struct sockaddr *)&sin6; ++ salen = sizeof(sin6); ++ } ++ ++ getnameinfo(sa, salen, hoststr, 256, NULL, 0, flags); ++ } ++ + print_line (sizeof UT_USER (utmp_ent), UT_USER (utmp_ent), mesg, + sizeof utmp_ent->ut_line, utmp_ent->ut_line, + time_string (utmp_ent), idlestr, pidstr, +@@ -640,6 +704,11 @@ + -H, --heading print line of column headings\n\ + "), stdout); + fputs (_("\ ++ --ips print ips instead of hostnames. with --lookup,\n\ ++ canonicalizes based on stored IP, if available,\n\ ++ rather than stored hostname\n\ ++"), stdout); ++ fputs (_("\ + -l, --login print system login processes\n\ + "), stdout); + fputs (_("\ +@@ -857,6 +857,10 @@ + do_lookup = true; + break; + ++ case IPS_OPTION: ++ do_ips = true; ++ break; ++ + case_GETOPT_HELP_CHAR; + + case_GETOPT_VERSION_CHAR (PROGRAM_NAME, AUTHORS); --- coreutils-8.21.orig/debian/patches/63_dd-appenderrors.dpatch +++ coreutils-8.21/debian/patches/63_dd-appenderrors.dpatch @@ -0,0 +1,15 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run + +@DPATCH@ +--- coreutils-5.97/src/dd.c.orig 2006-06-26 10:17:02.143014002 -0400 ++++ coreutils-6.10/src/dd.c 2006-06-26 10:20:17.456920048 -0400 +@@ -1243,6 +1243,9 @@ + if (multiple_bits_set (input_flags & (O_DIRECT | O_NOCACHE)) + || multiple_bits_set (output_flags & (O_DIRECT | O_NOCACHE))) + error (EXIT_FAILURE, 0, _("cannot combine direct and nocache")); ++ if ((output_flags & O_APPEND) && ++ ((conversions_mask & C_NOTRUNC) != C_NOTRUNC)) ++ error (0, 0, _("you probably want conv=notrunc with oflag=append")); + + if (input_flags & O_NOCACHE) + { --- coreutils-8.21.orig/debian/patches/72_id_checkngroups.dpatch +++ coreutils-8.21/debian/patches/72_id_checkngroups.dpatch @@ -0,0 +1,16 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run + +@DPATCH@ +--- coreutils-6.10/src/id.c.orig 2008-01-28 20:14:06.147283549 -0500 ++++ coreutils-6.10/src/id.c 2008-01-28 20:27:39.523284910 -0500 +@@ -370,6 +370,10 @@ + ok = false; + return; + } ++ else if (sysconf(_SC_NGROUPS_MAX) > 0 && n_groups > sysconf(_SC_NGROUPS_MAX)) ++ { ++ fprintf (stderr, _("Warning: user %s is in more groups than system's configured maximum.\n"), (username != NULL)?username:""); ++ } + + if (n_groups > 0) + fputs (_(" groups="), stdout); --- coreutils-8.21.orig/debian/patches/80_fedora_sysinfo.dpatch +++ coreutils-8.21/debian/patches/80_fedora_sysinfo.dpatch @@ -0,0 +1,75 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run + +@DPATCH@ +--- a/src/uname.c ++++ b/src/uname.c +@@ -258,7 +258,7 @@ + int + main (int argc, char **argv) + { +- static char const unknown[] = "unknown"; ++ static char unknown[] = "unknown"; + + /* Mask indicating which elements to print. */ + unsigned int toprint = 0; +@@ -299,13 +299,35 @@ + + if (toprint & PRINT_PROCESSOR) + { +- char const *element = unknown; ++ char *element = unknown; + #if HAVE_SYSINFO && defined SI_ARCHITECTURE + { + static char processor[257]; + if (0 <= sysinfo (SI_ARCHITECTURE, processor, sizeof processor)) + element = processor; + } ++#else ++ { ++ struct utsname u; ++ uname(&u); ++ element = u.machine; ++#ifdef linux ++ if(!strcmp(element, "i686")) { /* Check for Athlon */ ++ char cinfo[1024]; ++ FILE *f=fopen("/proc/cpuinfo", "r"); ++ if(f) { ++ while(fgets(cinfo, 1024, f)) { ++ if(!strncmp(cinfo, "vendor_id", 9)) { ++ if(strstr(cinfo, "AuthenticAMD")) ++ element="athlon"; ++ break; ++ } ++ } ++ fclose(f); ++ } ++ } ++#endif ++ } + #endif + #ifdef UNAME_PROCESSOR + if (element == unknown) +@@ -343,7 +365,7 @@ + + if (toprint & PRINT_HARDWARE_PLATFORM) + { +- char const *element = unknown; ++ char *element = unknown; + #if HAVE_SYSINFO && defined SI_PLATFORM + { + static char hardware_platform[257]; +@@ -351,6 +373,14 @@ + hardware_platform, sizeof hardware_platform)) + element = hardware_platform; + } ++#else ++ { ++ struct utsname u; ++ uname(&u); ++ element = u.machine; ++ if(strlen(element)==4 && element[0]=='i' && element[2]=='8' && element[3]=='6') ++ element[1]='3'; ++ } + #endif + #ifdef UNAME_HARDWARE_PLATFORM + if (element == unknown) --- coreutils-8.21.orig/debian/patches/85_timer_settime.dpatch +++ coreutils-8.21/debian/patches/85_timer_settime.dpatch @@ -0,0 +1,32 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 85_timer_settime.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: timeout ignores fractional part of sleep times when timeout is more +## DP: than 100000s (approximately 1 day) on kfbsd. prevents failure modes +## DP: in libc implementation when timeout approaches max(time_t) + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.13~/src/timeout.c coreutils-8.13/src/timeout.c +--- coreutils-8.13~/src/timeout.c 2011-09-01 13:16:21.000000000 -0400 ++++ coreutils-8.13/src/timeout.c 2011-09-19 10:23:22.685116620 -0400 +@@ -113,6 +113,11 @@ + resolution provided by alarm(). */ + + #if HAVE_TIMER_SETTIME ++#ifdef __FreeBSD_kernel__ ++if (duration < 100000) { ++#else ++if (true) { ++#endif + struct timespec ts = dtotimespec (duration); + struct itimerspec its = { {0, 0}, ts }; + timer_t timerid; +@@ -128,6 +133,7 @@ + } + else if (errno != ENOSYS) + error (0, errno, _("warning: timer_create")); ++} + #endif + + unsigned int timeint; --- coreutils-8.21.orig/debian/patches/99_arm64_longlong.dpatch +++ coreutils-8.21/debian/patches/99_arm64_longlong.dpatch @@ -0,0 +1,43 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 99_arm64_longlong.dpatch by Colin Watson +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: (aarch64): Make add_ssaaaa and sub_ddmmss actually work. +## DP: Author: Torbjorn Granlund +## DP: Origin: upstream, http://gmplib.org:8000/gmp/rev/187b7b1646ee + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.20~/src/longlong.h coreutils-8.20/src/longlong.h +--- coreutils-8.20~/src/longlong.h 2013-01-17 04:05:16.000000000 +0000 ++++ coreutils-8.20/src/longlong.h 2013-01-17 04:05:46.000000000 +0000 +@@ -530,23 +530,16 @@ + #endif /* __arm__ */ + + #if defined (__aarch64__) && W_TYPE_SIZE == 64 ++/* FIXME: Extend the immediate range for the low word by using both ++ ADDS and SUBS, since they set carry in the same way. */ + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ ("adds\t%1, %4, %5\n\tadc\t%0, %2, %3" \ ++ __asm__ ("adds\t%1, %x4, %5\n\tadc\t%0, %x2, %x3" \ + : "=r" (sh), "=&r" (sl) \ +- : "r" (ah), "rZ" (bh), "%r" (al), "rI" (bl) __CLOBBER_CC) ++ : "rZ" (ah), "rZ" (bh), "%r" (al), "rI" (bl) __CLOBBER_CC) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- do { \ +- if (__builtin_constant_p (bl)) \ +- { \ +- __asm__ ("subs\t%1, %4, %5\n\tsbc\t%0, %2, %3" \ +- : "=r" (sh), "=&r" (sl) \ +- : "r" (ah), "r" (bh), "r" (al), "rI" (bl) __CLOBBER_CC); \ +- } \ +- else /* only bh might be a constant */ \ +- __asm__ ("subs\t%1, %4, %5\n\tsbc\t%0, %2, %3" \ +- : "=r" (sh), "=&r" (sl) \ +- : "r" (ah), "rZ" (bh), "r" (al), "rI" (bl) __CLOBBER_CC);\ +- } while (0) ++ __asm__ ("subs\t%1, %x4, %5\n\tsbc\t%0, %x2, %x3" \ ++ : "=r,r" (sh), "=&r,&r" (sl) \ ++ : "rZ,rZ" (ah), "rZ,rZ" (bh), "r,Z" (al), "rI,r" (bl) __CLOBBER_CC) + #define umul_ppmm(ph, pl, m0, m1) \ + do { \ + UDItype __m0 = (m0), __m1 = (m1); \ --- coreutils-8.21.orig/debian/patches/99_df_check_fsroot.dpatch +++ coreutils-8.21/debian/patches/99_df_check_fsroot.dpatch @@ -0,0 +1,541 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 99_mountinfo.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Make df prioritize fileystem root mounts over bind mounts +## DP: Pulled in enablement for /proc/self/mountinfo in order to succeed in above +## DP: Please see pad.lv/1432871 for more info +## +## Bug-Ubuntu: http://pad.lv/1432871 +## Auther: Dave Chiluk +## Origin: upstream, coreutils - http://git.savannah.gnu.org/gitweb/?p=coreutils.git +## commit: http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=commit;h=616fa9c7b335117243c0c157a6c45445e20fdfa0 +## commit: http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=commit;h=3ebc58cc4370567be7301e02b661a2fe5478d86c +## commit: http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=commit;h=2dc5d044a88fd64e11e35886e78b54a4a9fc2b23 +## commit: http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=commit;h=9d736f8dbfef2b33d431dccf852dace9cfc84d59 +## commit: http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=commit;h=25a2c948b24163ce0e0e9e52f6a5fef33d7d7842 +## commit: http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=commit;h=1b1c40e1d6f8cf30b6c7c9d31bbddbc3d5cc72e6 +## commit: http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=commit;h=2e81e62243409c5c574b899f52b08c000e4d99fd +## commit: http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=commit;h=3babaf83875ceac896c8dd3a64248e955dfecef9 + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/NEWS coreutils-8.21/NEWS +--- coreutils-8.21~/NEWS 2013-02-14 09:52:18.000000000 -0600 ++++ coreutils-8.21/NEWS 2015-12-03 10:24:36.000000000 -0600 +@@ -82,6 +82,9 @@ + nl no longer supports the --page-increment option, which has been + deprecated since coreutils-7.5. Use --line-increment instead. + ++ df now prefers sources towards the root of a device when ++ eliding duplicate bind mounted entries. ++ + ** Improvements + + readlink now supports multiple arguments, and a complementary +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/init.cfg coreutils-8.21/init.cfg +--- coreutils-8.21~/init.cfg 2013-01-30 18:46:24.000000000 -0600 ++++ coreutils-8.21/init.cfg 2015-12-03 10:24:36.000000000 -0600 +@@ -79,7 +79,7 @@ + require_mount_list_() + { + local mount_list_fail='cannot read table of mounted file systems' +- df 2>&1 | grep -F "$mount_list_fail" >/dev/null && ++ df --local 2>&1 | grep -F "$mount_list_fail" >/dev/null && + skip_ "$mount_list_fail" + } + +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/src/df.c coreutils-8.21/src/df.c +--- coreutils-8.21~/src/df.c 2013-02-04 17:40:31.000000000 -0600 ++++ coreutils-8.21/src/df.c 2015-12-03 10:24:36.000000000 -0600 +@@ -45,12 +45,12 @@ + + /* Filled with device numbers of examined file systems to avoid + duplicities in output. */ +-struct devlist ++static struct devlist + { + dev_t dev_num; + struct mount_entry *me; + struct devlist *next; +-}; ++} *device_list; + + /* If true, show even file systems with zero size or + uninteresting types. */ +@@ -287,7 +287,7 @@ + alloc_table_row (void) + { + nrows++; +- table = xnrealloc (table, nrows, sizeof (char *)); ++ table = xnrealloc (table, nrows, sizeof (char **)); + table[nrows - 1] = xnmalloc (ncolumns, sizeof (char *)); + } + +@@ -539,7 +539,7 @@ + char *num = human_readable (output_block_size, buf, opts, 1, 1); + + /* Reset the header back to the default in OUTPUT_MODE. */ +- header = N_("blocks"); ++ header = _("blocks"); + + /* TRANSLATORS: this is the "1K-blocks" header in "df" output. */ + if (asprintf (&cell, _("%s-%s"), num, header) == -1) +@@ -599,75 +599,139 @@ + } + + /* Filter mount list by skipping duplicate entries. +- In the case of duplicities - based on to the device number - the mount entry ++ In the case of duplicities - based on the device number - the mount entry + with a '/' in its me_devname (i.e. not pseudo name like tmpfs) wins. + If both have a real devname (e.g. bind mounts), then that with the shorter +- me_mountdir wins. */ ++ me_mountdir wins. With DEVICES_ONLY == true (set with df -a), only update ++ the global device_list, rather than filtering the global mount_list. */ + + static void +-filter_mount_list (void) ++filter_mount_list (bool devices_only) + { + struct mount_entry *me; + +- /* Store of already-processed device numbers. */ +- struct devlist *devlist_head = NULL; +- +- /* Sort all 'wanted' entries into the list devlist_head. */ +- for (me = mount_list; me; me = me->me_next) ++ /* Sort all 'wanted' entries into the list device_list. */ ++ for (me = mount_list; me;) + { + struct stat buf; + struct devlist *devlist; ++ struct mount_entry *discard_me = NULL; + +- if (-1 == stat (me->me_mountdir, &buf)) ++ /* Avoid stating remote file systems as that may hang. ++ TODO: On Linux we might avoid this stat() and another in get_dev() ++ by using the device IDs available from /proc/self/mountinfo. ++ read_file_system_list() could populate me_dev from those ++ for efficiency and accuracy. */ ++ if ((me->me_remote && show_local_fs) ++ || -1 == stat (me->me_mountdir, &buf)) + { +- ; /* Stat failed - add ME to be able to complain about it later. */ ++ /* If remote, and showing just local, add ME for filtering later. ++ If stat failed; add ME to be able to complain about it later. */ ++ buf.st_dev = me->me_dev; + } + else + { +- /* If the device name is a real path name ... */ +- if (strchr (me->me_devname, '/')) +- { +- /* ... try to find its device number in the devlist. */ +- for (devlist = devlist_head; devlist; devlist = devlist->next) +- if (devlist->dev_num == buf.st_dev) +- break; ++ /* If we've already seen this device... */ ++ for (devlist = device_list; devlist; devlist = devlist->next) ++ if (devlist->dev_num == buf.st_dev) ++ break; + +- if (devlist) ++ if (devlist) ++ { ++ bool target_nearer_root = strlen (devlist->me->me_mountdir) ++ > strlen (me->me_mountdir); ++ /* With bind mounts, prefer items nearer the root of the source */ ++ bool source_below_root = devlist->me->me_mntroot != NULL ++ && me->me_mntroot != NULL ++ && (strlen (devlist->me->me_mntroot) ++ < strlen (me->me_mntroot)); ++ if (! print_grand_total && me->me_remote && devlist->me->me_remote ++ && ! STREQ (devlist->me->me_devname, me->me_devname)) + { +- /* Let the shorter mountdir win. */ +- if ( !strchr (devlist->me->me_devname, '/') +- || ( strlen (devlist->me->me_mountdir) +- > strlen (me->me_mountdir))) +- { +- /* FIXME: free ME - the others are also not free()d. */ +- devlist->me = me; +- } +- continue; /* ... with the loop over the mount_list. */ ++ /* Don't discard remote entries with different locations, ++ as these are more likely to be explicitly mounted. ++ However avoid this when producing a total to give ++ a more accurate value in that case. */ + } ++ else if ((strchr (me->me_devname, '/') ++ /* let "real" devices with '/' in the name win. */ ++ && ! strchr (devlist->me->me_devname, '/')) ++ /* let points towards the root of the device win. */ ++ || (target_nearer_root && ! source_below_root) ++ /* let an entry overmounted on a new device win... */ ++ || (! STREQ (devlist->me->me_devname, me->me_devname) ++ /* ... but only when matching an existing mnt point, ++ to avoid problematic replacement when given ++ inaccurate mount lists, seen with some chroot ++ environments for example. */ ++ && STREQ (me->me_mountdir, ++ devlist->me->me_mountdir))) ++ { ++ /* Discard mount entry for existing device. */ ++ discard_me = devlist->me; ++ devlist->me = me; ++ } ++ else ++ { ++ /* Discard mount entry currently being processed. */ ++ discard_me = me; ++ } ++ + } + } + +- /* Add the device number to the global list devlist. */ +- devlist = xmalloc (sizeof *devlist); +- devlist->me = me; +- devlist->dev_num = buf.st_dev; +- devlist->next = devlist_head; +- devlist_head = devlist; ++ if (discard_me) ++ { ++ me = me->me_next; ++ if (! devices_only) ++ free_mount_entry (discard_me); ++ } ++ else ++ { ++ /* Add the device number to the global list devlist. */ ++ devlist = xmalloc (sizeof *devlist); ++ devlist->me = me; ++ devlist->dev_num = buf.st_dev; ++ devlist->next = device_list; ++ device_list = devlist; ++ ++ me = me->me_next; ++ } + } + + /* Finally rebuild the mount_list from the devlist. */ +- mount_list = NULL; +- while (devlist_head) ++ if (! devices_only) { ++ mount_list = NULL; ++ while (device_list) ++ { ++ /* Add the mount entry. */ ++ me = device_list->me; ++ me->me_next = mount_list; ++ mount_list = me; ++ /* Free devlist entry and advance. */ ++ struct devlist *devlist = device_list->next; ++ free (device_list); ++ device_list = devlist; ++ } ++ } ++} ++ ++/* Search a mount entry list for device id DEV. ++ Return the corresponding device name if found or NULL if not. */ ++ ++static char const * _GL_ATTRIBUTE_PURE ++devname_for_dev (dev_t dev) ++{ ++ struct devlist *dl = device_list; ++ ++ while (dl) + { +- /* Add the mount entry. */ +- me = devlist_head->me; +- me->me_next = mount_list; +- mount_list = me; +- /* Free devlist entry and advance. */ +- struct devlist *devlist = devlist_head->next; +- free (devlist_head); +- devlist_head = devlist; ++ if (dl->dev_num == dev) ++ return dl->me->me_devname; ++ dl = dl->next; + } ++ ++ return NULL; + } + + /* Return true if N is a known integer value. On many file systems, +@@ -851,9 +915,40 @@ + fsu = *force_fsu; + else if (get_fs_usage (stat_file, disk, &fsu)) + { +- error (0, errno, "%s", quote (stat_file)); +- exit_status = EXIT_FAILURE; +- return; ++ /* If we can't access a system provided entry due ++ to it not being present (now), or due to permissions, ++ just output placeholder values rather than failing. */ ++ if (process_all && (errno == EACCES || errno == ENOENT)) ++ { ++ if (! show_all_fs) ++ return; ++ ++ fstype = "-"; ++ fsu.fsu_blocksize = fsu.fsu_blocks = fsu.fsu_bfree = ++ fsu.fsu_bavail = fsu.fsu_files = fsu.fsu_ffree = UINTMAX_MAX; ++ } ++ else ++ { ++ error (0, errno, "%s", quote (stat_file)); ++ exit_status = EXIT_FAILURE; ++ return; ++ } ++ } ++ else if (process_all && show_all_fs) ++ { ++ /* Ensure we don't output incorrect stats for over-mounted directories. ++ Discard stats when the device name doesn't match. */ ++ struct stat sb; ++ if (stat (stat_file, &sb) == 0) ++ { ++ char const * devname = devname_for_dev (sb.st_dev); ++ if (devname && ! STREQ (devname, disk)) ++ { ++ fstype = "-"; ++ fsu.fsu_blocksize = fsu.fsu_blocks = fsu.fsu_bfree = ++ fsu.fsu_bavail = fsu.fsu_files = fsu.fsu_ffree = UINTMAX_MAX; ++ } ++ } + } + + if (fsu.fsu_blocks == 0 && !show_all_fs && !show_listed_fs) +@@ -1165,8 +1260,7 @@ + { + struct mount_entry *me; + +- if (!show_all_fs) +- filter_mount_list (); ++ filter_mount_list (show_all_fs); + + for (me = mount_list; me; me = me->me_next) + get_dev (me->me_devname, me->me_mountdir, NULL, me->me_type, +@@ -1219,7 +1313,6 @@ + -B, --block-size=SIZE scale sizes by SIZE before printing them. E.g.,\n\ + '-BM' prints sizes in units of 1,048,576 bytes.\n\ + See SIZE format below.\n\ +- --total produce a grand total\n\ + -h, --human-readable print sizes in human readable format (e.g., 1K 234M 2G)\ + \n\ + -H, --si likewise, but use powers of 1000 not 1024\n\ +@@ -1236,6 +1329,12 @@ + or print all fields if FIELD_LIST is omitted.\n\ + -P, --portability use the POSIX output format\n\ + --sync invoke sync before getting usage info\n\ ++"), stdout); ++ fputs (_("\ ++ --total elide all entries insignificant to available space,\n\ ++ and produce a grand total\n\ ++"), stdout); ++ fputs (_("\ + -t, --type=TYPE limit listing to file systems of type TYPE\n\ + -T, --print-type print file system type\n\ + -x, --exclude-type=TYPE limit listing to file systems not of type TYPE\n\ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/tests/df/no-mtab-status.sh coreutils-8.21/tests/df/no-mtab-status.sh +--- coreutils-8.21~/tests/df/no-mtab-status.sh 2013-01-30 18:46:24.000000000 -0600 ++++ coreutils-8.21/tests/df/no-mtab-status.sh 2015-12-03 10:24:36.000000000 -0600 +@@ -20,7 +20,8 @@ + . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src + print_ver_ df + +-df || skip_ "df fails" ++# Protect against inaccessible remote mounts etc. ++timeout 10 df || skip_ "df fails" + + # Simulate "mtab" failure. + cat > k.c <<'EOF' || framework_failure_ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/tests/df/skip-duplicates.sh coreutils-8.21/tests/df/skip-duplicates.sh +--- coreutils-8.21~/tests/df/skip-duplicates.sh 2013-01-30 18:46:24.000000000 -0600 ++++ coreutils-8.21/tests/df/skip-duplicates.sh 2015-12-03 10:24:36.000000000 -0600 +@@ -20,38 +20,67 @@ + . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src + print_ver_ df + +-df || skip_ "df fails" ++# We use --local here so as to not activate ++# potentially very many remote mounts. ++df --local || skip_ "df fails" + +-# Simulate an mtab file with two entries of the same device number. ++export CU_NONROOT_FS=$(df --local --output=target 2>&1 | grep /. | head -n1) ++export CU_REMOTE_FS=$(df --local --output=target 2>&1 | grep /. | ++ tail -n+2 | head -n1) ++ ++unique_entries=1 ++test -z "$CU_NONROOT_FS" || unique_entries=$(expr $unique_entries + 1) ++test -z "$CU_REMOTE_FS" || unique_entries=$(expr $unique_entries + 2) ++ ++# Simulate an mtab file to test various cases. + cat > k.c <<'EOF' || framework_failure_ + #include ++#include ++#include + #include + ++#define STREQ(a, b) (strcmp (a, b) == 0) ++ + struct mntent *getmntent (FILE *fp) + { ++ static char *nonroot_fs; ++ static char *remote_fs; ++ static int done; ++ + /* Prove that LD_PRELOAD works. */ +- static int done = 0; + if (!done) + { + fclose (fopen ("x", "w")); + ++done; + } + +- static struct mntent mntent; ++ static struct mntent mntents[] = { ++ {.mnt_fsname="/short", .mnt_dir="/invalid/mount/dir"}, ++ {.mnt_fsname="fsname", .mnt_dir="/",}, ++ {.mnt_fsname="/fsname", .mnt_dir="/."}, ++ {.mnt_fsname="/fsname", .mnt_dir="/"}, ++ {.mnt_fsname="virtfs", .mnt_dir="/NONROOT"}, ++ {.mnt_fsname="virtfs2", .mnt_dir="/NONROOT"}, ++ }; + +- while (done++ < 4) ++ if (done == 1) + { +- /* File system - Mounted on +- fsname / +- /fsname /root +- /fsname / +- */ +- mntent.mnt_fsname = (done == 2) ? "fsname" : "/fsname"; +- mntent.mnt_dir = (done == 3) ? "/root" : "/"; +- mntent.mnt_type = "-"; ++ nonroot_fs = getenv ("CU_NONROOT_FS"); ++ if (!nonroot_fs || !*nonroot_fs) ++ nonroot_fs = "/"; /* merge into / entries. */ ++ } + +- return &mntent; ++ if (done == 1 && !getenv ("CU_TEST_DUPE_INVALID")) ++ done++; /* skip the first entry. */ ++ ++ while (done++ <= 6) ++ { ++ mntents[done-2].mnt_type = "-"; ++ if (STREQ (mntents[done-2].mnt_dir, "/NONROOT")) ++ mntents[done-2].mnt_dir = nonroot_fs; ++ return &mntents[done-2]; + } ++ + return NULL; + } + EOF +@@ -64,20 +93,38 @@ + LD_PRELOAD=./k.so df + test -f x || skip_ "internal test failure: maybe LD_PRELOAD doesn't work?" + +-# The fake mtab file should only contain 2 entries, both ++# The fake mtab file should only contain entries + # having the same device number; thus the output should +-# consist of a header and one entry. ++# consist of a header and unique entries. + LD_PRELOAD=./k.so df >out || fail=1 +-test $(wc -l out || fail=1 ++test "$CU_REMOTE_FS" && elide_remote=1 || elide_remote=0 ++test $(wc -l out || fail=1 ++test $(wc -l out || fail=1 +-test $(wc -l out || fail=1 +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/tests/df/total-unprocessed.sh coreutils-8.21/tests/df/total-unprocessed.sh +--- coreutils-8.21~/tests/df/total-unprocessed.sh 2013-01-30 18:46:24.000000000 -0600 ++++ coreutils-8.21/tests/df/total-unprocessed.sh 2015-12-03 10:25:19.474020804 -0600 +@@ -2,7 +2,7 @@ + # Ensure that df exits non-Zero and writes an error message when + # --total is used but no file system has been processed. + +-# Copyright (C) 2012-2013 Free Software Foundation, Inc. ++# Copyright (C) 2012-2014 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 +@@ -25,11 +25,13 @@ + df: no file systems processed + EOF + +-# The following simply finds no match for the combination +-# of the options --local and FS-type nfs together with the +-# argument ".". It must exit non-Zero nonetheless. +-df --local -t nfs --total '.' 2>out && fail=1 +-compare exp out || fail=1 ++# Check we exit with non-Zero. ++# Note we don't check when the file system can't be determined ++# as -t filtering is not applied in that case. ++if test "$(df --output=fstype . | tail -n1)" != '-'; then ++ df -t _non_existent_fstype_ --total . 2>out && fail=1 ++ compare exp out || fail=1 ++fi + + cat <<\EOF > exp || framework_failure_ + df: '_does_not_exist_': No such file or directory +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/tests/df/total-verify.sh coreutils-8.21/tests/df/total-verify.sh +--- coreutils-8.21~/tests/df/total-verify.sh 2013-01-30 18:46:24.000000000 -0600 ++++ coreutils-8.21/tests/df/total-verify.sh 2015-12-03 10:24:36.000000000 -0600 +@@ -20,7 +20,8 @@ + print_ver_ df + require_perl_ + +-df || skip_ "df fails" ++# Protect against inaccessible remote mounts etc. ++timeout 10 df || skip_ "df fails" + + cat <<\EOF > check-df || framework_failure_ + my ($total, $used, $avail) = (0, 0, 0); --- coreutils-8.21.orig/debian/patches/99_float_endian_detection.dpatch +++ coreutils-8.21/debian/patches/99_float_endian_detection.dpatch @@ -0,0 +1,67 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 99_float_endian_detection.dpatch by Colin Watson +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix detection of floating point endianness +## DP: See https://lists.gnu.org/archive/html/bug-gnulib/2013-12/msg00104.html +## DP: Based on a suggestion by Alan Modra. + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils~/gnulib-tests/test-isnanl.h coreutils/gnulib-tests/test-isnanl.h +--- coreutils~/gnulib-tests/test-isnanl.h 2013-10-30 15:35:33.000000000 +0000 ++++ coreutils/gnulib-tests/test-isnanl.h 2013-12-18 13:27:45.944005833 +0000 +@@ -24,6 +24,12 @@ + #include "nan.h" + #include "macros.h" + ++#ifdef __FLOAT_WORD_ORDER__ ++# define FLOAT_BIG_ENDIAN (__FLOAT_WORD_ORDER__ != __ORDER_LITTLE_ENDIAN__) ++#else ++# define FLOAT_BIG_ENDIAN (LDBL_EXPBIT0_WORD < NWORDS / 2) ++#endif ++ + int + main () + { +@@ -56,10 +62,10 @@ + # if LDBL_EXPBIT0_BIT > 0 + m.word[LDBL_EXPBIT0_WORD] ^= (unsigned int) 1 << (LDBL_EXPBIT0_BIT - 1); + # else +- m.word[LDBL_EXPBIT0_WORD + (LDBL_EXPBIT0_WORD < NWORDS / 2 ? 1 : - 1)] ++ m.word[LDBL_EXPBIT0_WORD + (FLOAT_BIG_ENDIAN ? 1 : - 1)] + ^= (unsigned int) 1 << (sizeof (unsigned int) * CHAR_BIT - 1); + # endif +- m.word[LDBL_EXPBIT0_WORD + (LDBL_EXPBIT0_WORD < NWORDS / 2 ? 1 : - 1)] ++ m.word[LDBL_EXPBIT0_WORD + (FLOAT_BIG_ENDIAN ? 1 : - 1)] + |= (unsigned int) 1 << LDBL_EXPBIT0_BIT; + ASSERT (isnanl (m.value)); + } +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils~/gnulib-tests/test-signbit.c coreutils/gnulib-tests/test-signbit.c +--- coreutils~/gnulib-tests/test-signbit.c 2013-10-30 15:35:33.000000000 +0000 ++++ coreutils/gnulib-tests/test-signbit.c 2013-12-18 13:27:45.944005833 +0000 +@@ -36,6 +36,12 @@ + double zerod = 0.0; + long double zerol = 0.0L; + ++#ifdef __FLOAT_WORD_ORDER__ ++# define FLOAT_BIG_ENDIAN (__FLOAT_WORD_ORDER__ != __ORDER_LITTLE_ENDIAN__) ++#else ++# define FLOAT_BIG_ENDIAN (LDBL_EXPBIT0_WORD < NWORDS / 2) ++#endif ++ + static void + test_signbitf () + { +@@ -156,10 +162,10 @@ + # if LDBL_EXPBIT0_BIT > 0 + m.word[LDBL_EXPBIT0_WORD] ^= (unsigned int) 1 << (LDBL_EXPBIT0_BIT - 1); + # else +- m.word[LDBL_EXPBIT0_WORD + (LDBL_EXPBIT0_WORD < NWORDS / 2 ? 1 : - 1)] ++ m.word[LDBL_EXPBIT0_WORD + (FLOAT_BIG_ENDIAN ? 1 : - 1)] + ^= (unsigned int) 1 << (sizeof (unsigned int) * CHAR_BIT - 1); + # endif +- m.word[LDBL_EXPBIT0_WORD + (LDBL_EXPBIT0_WORD < NWORDS / 2 ? 1 : - 1)] ++ m.word[LDBL_EXPBIT0_WORD + (FLOAT_BIG_ENDIAN ? 1 : - 1)] + |= (unsigned int) 1 << LDBL_EXPBIT0_BIT; + (void) signbit (m.value); + #undef NWORDS --- coreutils-8.21.orig/debian/patches/99_hppa_longlong.dpatch +++ coreutils-8.21/debian/patches/99_hppa_longlong.dpatch @@ -0,0 +1,29 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 99_hppa_longlong by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: disable test of zero-len format string + +@DPATCH@ +diff --git a/src/longlong.h b/src/longlong.h +index 8d71611..6ee157c 100644 +--- a/src/longlong.h ++++ b/src/longlong.h +@@ -679,7 +679,13 @@ extern UWtype __MPN(udiv_qrnnd) (UWtype *, UWtype, UWtype, UWtype); + /* These macros are for ABI=2.0w. In ABI=2.0n they can't be used, since GCC + (3.2) puts longlong into two adjacent 32-bit registers. Presumably this + is just a case of no direct support for 2.0n but treating it like 1.0. */ +-#if defined (__hppa) && W_TYPE_SIZE == 64 && ! defined (_LONG_LONG_LIMB) ++#if defined (__hppa) && W_TYPE_SIZE == 64 && ! defined (_LONG_LONG_LIMB) \ ++ && defined (_PA_RISC2_0) && defined (_LP64) ++/* Note the _PA_RISC2_0 above is to exclude this code from GCC with ++ default -march options which doesn't support these instructions. ++ Also the width check for 'long' is to avoid ilp32 runtimes where ++ GNU/Linux and narrow HP-UX kernels are known to have issues with ++ clobbering of context between the add and add,dc instructions. */ + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ + __asm__ ("add%I5 %5,%r4,%1\n\tadd,dc %r2,%r3,%0" \ + : "=r" (sh), "=&r" (sl) \ +-- +1.7.2.5 + --- coreutils-8.21.orig/debian/patches/99_kfbsd_fstat_patch.dpatch +++ coreutils-8.21/debian/patches/99_kfbsd_fstat_patch.dpatch @@ -0,0 +1,26 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 99_kfbsd_fstat_patch.dpatch by Michael Stone +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: No description. + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.5~/lib/fstatat.c coreutils-8.5/lib/fstatat.c +--- coreutils-8.5~/lib/fstatat.c 2010-04-23 09:44:00.000000000 -0400 ++++ coreutils-8.5/lib/fstatat.c 2010-04-27 20:30:37.200596044 -0400 +@@ -107,4 +107,15 @@ + # undef AT_FUNC_POST_FILE_PARAM_DECLS + # undef AT_FUNC_POST_FILE_ARGS + ++#ifdef __FreeBSD_kernel__ ++ ++int __fxstatat(int version, int fd, const char *file, struct stat *st, int flag) ++{ ++ typedef int (*tp)(int, const char *, struct stat *, int); ++ volatile tp f = fstatat; ++ return f(fd, file, st, flag); ++} ++ ++#endif ++ + #endif /* !HAVE_FSTATAT */ --- coreutils-8.21.orig/debian/patches/99_mountinfo.dpatch +++ coreutils-8.21/debian/patches/99_mountinfo.dpatch @@ -0,0 +1,462 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 99_mountinfo.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Make df prioritize fileystem root mounts over bind mounts +## DP: Pulled in enablement for /proc/self/mountinfo in order to succeed in above +## DP: Please see pad.lv/1432871 for more info +## +## Bug-Ubuntu: http://pad.lv/1432871 +## Author: Dave Chiluk +## Origin: upstream, gnulib - http://git.savannah.gnu.org/gitweb/?p=gnulib.git +## commit: http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commit;h=62bb7a8bf95807d6339e1e17fc0d21c319b280a2 +## commit: http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commit;h=41d1b6c42641a5b9e21486ca2074198ee7909bd7 +## commit: http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commit;h=3ea43e02541ece750ffc6cd1dfe34195421b4ef3 +## commit: http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commit;h=2768ceb7994506e2cfba88be3b6bd13ef5440a90 +## commit: http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commit;h=de1cbdd48244c66c51a3e2bc1594ac3ad32ce038 +## commit: http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commit;h=3fb6e360363744462ce15c381f0b116c6fc4ce82 +## commit: http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commit;h=c6148bca89e9465fd6ba3a10d273ec4cb58c2dbe + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/ChangeLog coreutils-8.21/ChangeLog +--- coreutils-8.21~/ChangeLog 2013-02-14 10:22:58.000000000 -0600 ++++ coreutils-8.21/ChangeLog 2015-11-05 08:29:58.000000000 -0600 +@@ -1,3 +1,75 @@ ++2015-09-08 Dave Chiluk ++ ++ mountlist: add me_mntroot field on Linux machines ++ * lib/mountlist.c (read_file_system_list): Populate me_mntroot in ++ mount_entry so Linux machines based on /proc/self/mountinfo can ++ distinguish between bind mounts and original mounts. In reality bind ++ mounts aren't treated differently than mountroot=/ mounts by the ++ kernel, but the user often wants these bind mounts distinguished. ++ * lib/mountlist.h (struct mount_entry): Add me_mntroot element. ++ More details at https://pad.lv/1432871 ++ ++2015-04-02 Pádraig Brady ++ ++ mountlist: remove dependency on libmount ++ * lib/mountlist.c (read_file_system_list): Parse /proc/self/mountinfo ++ directly, rather than depending on libmount, which has many ++ dependencies due to its dependence on libselinux, as detailed at: ++ http://lists.gnu.org/archive/html/bug-gnulib/2015-01/msg00063.html ++ Note we restrict this to __linux__ as that's probably where this ++ interface will remain. If ever porting, it would be best ++ to first pull the makedev() wrapper from coreutils to a gnulib module. ++ Note also we don't add a getline dependency to the mountlist module, ++ as all Linux versions are sufficient. ++ ++2015-02-11 Pádraig Brady ++ ++ mountlist: only use libmount when specified ++ There are currently many shared libs dependencies introduced by ++ libmount with associated runtime and virt mem overhead. ++ Therefore don't enable by default. ++ * m4/ls-mntd-fs.m4: Use --with-libmount to enable at build time. ++ ++2014-10-30 Pádraig Brady ++ ++ mountlist: don't use libmount to decide on dummy/remote ++ * lib/mountlist.c (read_file_system_list): Don't use the libmount ++ routines to determine whether a file system is dummy or remote, ++ as they're not currently compatible. For example the remoteness ++ is determined on file system type (for which the list seems incomplete), ++ rather than simply checking for a ':' in the device name. ++ Also libmount currently determines that 'tmpfs' is a dummy file system ++ even though it has associated storage. ++ ++2014-09-09 Fridolin Pokorny ++ ++ mountlist: use /proc/self/mountinfo when available ++ Use libmount to propagate device IDs provided by Linux in ++ /proc/self/mountinfo. This will give more accurate output when ++ using df in chroot'ed environments as the device IDs are not ++ determined by stat() which may be inaccurate within the chroot. ++ * lib/mountlist.c (read_file_system_list): Use the libmount routines ++ from util-linux to parse "/proc/self/mountinfo" or fall back to ++ standard getmntent() processing. ++ * m4/ls-mntd-fs.m4: Check for libmount only when 1-argument ++ getmntent() is used, as is the case on GNU/Linux. ++ ++2013-07-09 Pádraig Brady ++ ++ mountlist: add support for deallocating returned list entries ++ * lib/mountlist.c (free_mount_entry): A new exported function ++ to deallocate a mount list entry. ++ (read_file_system_list): Refactor to use the new deallocation function. ++ Suggested by Anton Ovchinnikov. ++ ++2013-02-19 Paul Eggert ++ ++ mountlist: port to HP NonStop ++ Reported by Joachim Schmitz in ++ . ++ * lib/mountlist.c (hasmntopt) [!HAVE_HASMNTOPT]: New function. ++ (MNT_IGNORE) [MNTOPT_IGNORE]: Use it. ++ + 2013-02-14 Pádraig Brady + + version 8.21 +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/lib/mountlist.c coreutils-8.21/lib/mountlist.c +--- coreutils-8.21~/lib/mountlist.c 2013-02-07 10:44:47.000000000 -0600 ++++ coreutils-8.21/lib/mountlist.c 2015-11-05 08:29:58.000000000 -0600 +@@ -58,6 +58,7 @@ + + #ifdef MOUNTED_GETMNTENT1 /* 4.3BSD, SunOS, HP-UX, Dynix, Irix. */ + # include ++# include + # if !defined MOUNTED + # if defined _PATH_MOUNTED /* GNU libc */ + # define MOUNTED _PATH_MOUNTED +@@ -128,8 +129,12 @@ + # include + #endif + ++#ifndef HAVE_HASMNTOPT ++# define hasmntopt(mnt, opt) ((char *) 0) ++#endif ++ + #undef MNT_IGNORE +-#if defined MNTOPT_IGNORE && defined HAVE_HASMNTOPT ++#ifdef MNTOPT_IGNORE + # define MNT_IGNORE(M) hasmntopt (M, MNTOPT_IGNORE) + #else + # define MNT_IGNORE(M) 0 +@@ -172,10 +177,9 @@ + we grant an exception to any with "bind" in its list of mount options. + I.e., those are *not* dummy entries. */ + #ifdef MOUNTED_GETMNTENT1 +-# define ME_DUMMY(Fs_name, Fs_type, Fs_ent) \ ++# define ME_DUMMY(Fs_name, Fs_type, Bind) \ + (ME_DUMMY_0 (Fs_name, Fs_type) \ +- || (strcmp (Fs_type, "none") == 0 \ +- && !hasmntopt (Fs_ent, "bind"))) ++ || (strcmp (Fs_type, "none") == 0 && !Bind)) + #else + # define ME_DUMMY(Fs_name, Fs_type) \ + (ME_DUMMY_0 (Fs_name, Fs_type) || strcmp (Fs_type, "none") == 0) +@@ -378,6 +382,34 @@ + + #endif + ++#if defined MOUNTED_GETMNTENT1 && defined __linux__ ++ ++/* Unescape the paths in mount tables. ++ STR is updated in place. */ ++ ++static void ++unescape_tab (char *str) ++{ ++ size_t i, j = 0; ++ size_t len = strlen (str) + 1; ++ for (i = 0; i < len; i++) ++ { ++ if (str[i] == '\\' && (i + 4 < len) ++ && str[i + 1] >= '0' && str[i + 1] <= '3' ++ && str[i + 2] >= '0' && str[i + 2] <= '7' ++ && str[i + 3] >= '0' && str[i + 3] <= '7') ++ { ++ str[j++] = (str[i + 1] - '0') * 64 + ++ (str[i + 2] - '0') * 8 + ++ (str[i + 3] - '0'); ++ i += 3; ++ } ++ else ++ str[j++] = str[i]; ++ } ++} ++#endif ++ + /* Return a list of the currently mounted file systems, or NULL on error. + Add each entry to the tail of the list so that they stay in order. + If NEED_FS_TYPE is true, ensure that the file system type fields in +@@ -410,6 +442,7 @@ + me = xmalloc (sizeof *me); + me->me_devname = xstrdup (mnt->mnt_fsname); + me->me_mountdir = xstrdup (mnt->mnt_dir); ++ me->me_mntroot = NULL; + me->me_type = xstrdup (mnt->mnt_type); + me->me_type_malloced = 1; + me->me_dummy = ME_DUMMY (me->me_devname, me->me_type); +@@ -424,32 +457,132 @@ + + #ifdef MOUNTED_GETMNTENT1 /* GNU/Linux, 4.3BSD, SunOS, HP-UX, Dynix, Irix. */ + { +- struct mntent *mnt; +- char const *table = MOUNTED; + FILE *fp; + +- fp = setmntent (table, "r"); +- if (fp == NULL) +- return NULL; +- +- while ((mnt = getmntent (fp))) ++#ifdef __linux__ ++ /* Try parsing mountinfo first, as that make device IDs available. ++ Note we could use libmount routines to simplify this parsing a little ++ (and that code is in previous versions of this function), however ++ libmount depends on libselinux which pulls in many dependencies. */ ++ char const *mountinfo = "/proc/self/mountinfo"; ++ fp = fopen (mountinfo, "r"); ++ if (fp != NULL) + { +- me = xmalloc (sizeof *me); +- me->me_devname = xstrdup (mnt->mnt_fsname); +- me->me_mountdir = xstrdup (mnt->mnt_dir); +- me->me_type = xstrdup (mnt->mnt_type); +- me->me_type_malloced = 1; +- me->me_dummy = ME_DUMMY (me->me_devname, me->me_type, mnt); +- me->me_remote = ME_REMOTE (me->me_devname, me->me_type); +- me->me_dev = dev_from_mount_options (mnt->mnt_opts); ++ char *line = NULL; ++ size_t buf_size = 0; + +- /* Add to the linked list. */ +- *mtail = me; +- mtail = &me->me_next; ++ while (getline (&line, &buf_size, fp) != -1) ++ { ++ unsigned int devmaj, devmin; ++ int target_s, target_e, type_s, type_e; ++ int source_s, source_e, mntroot_s, mntroot_e; ++ char test; ++ char *dash; ++ int rc; ++ ++ rc = sscanf(line, "%*u " /* id - discarded */ ++ "%*u " /* parent - discarded */ ++ "%u:%u " /* dev major:minor */ ++ "%n%*s%n " /* mountroot */ ++ "%n%*s%n" /* target, start and end */ ++ "%c", /* more data... */ ++ &devmaj, &devmin, ++ &mntroot_s, &mntroot_e, ++ &target_s, &target_e, ++ &test); ++ ++ if (rc != 3 && rc != 7) /* 7 if %n included in count. */ ++ continue; ++ ++ /* skip optional fields, terminated by " - " */ ++ dash = strstr (line + target_e, " - "); ++ if (! dash) ++ continue; ++ ++ rc = sscanf(dash, " - " ++ "%n%*s%n " /* FS type, start and end */ ++ "%n%*s%n " /* source, start and end */ ++ "%c", /* more data... */ ++ &type_s, &type_e, ++ &source_s, &source_e, ++ &test); ++ if (rc != 1 && rc != 5) /* 5 if %n included in count. */ ++ continue; ++ ++ /* manipulate the sub-strings in place. */ ++ line[mntroot_e] = '\0'; ++ line[target_e] = '\0'; ++ dash[type_e] = '\0'; ++ dash[source_e] = '\0'; ++ unescape_tab (dash + source_s); ++ unescape_tab (line + target_s); ++ unescape_tab (line + mntroot_s); ++ ++ me = xmalloc (sizeof *me); ++ ++ me->me_devname = xstrdup (dash + source_s); ++ me->me_mountdir = xstrdup (line + target_s); ++ me->me_mntroot = xstrdup (line + mntroot_s); ++ me->me_type = xstrdup (dash + type_s); ++ me->me_type_malloced = 1; ++ me->me_dev = makedev (devmaj, devmin); ++ /* we pass "false" for the "Bind" option as that's only ++ significant when the Fs_type is "none" which will not be ++ the case when parsing "/proc/self/mountinfo", and only ++ applies for static /etc/mtab files. */ ++ me->me_dummy = ME_DUMMY (me->me_devname, me->me_type, false); ++ me->me_remote = ME_REMOTE (me->me_devname, me->me_type); ++ ++ /* Add to the linked list. */ ++ *mtail = me; ++ mtail = &me->me_next; ++ } ++ ++ free (line); ++ ++ if (ferror (fp)) ++ { ++ int saved_errno = errno; ++ fclose (fp); ++ errno = saved_errno; ++ goto free_then_fail; ++ } ++ ++ if (fclose (fp) == EOF) ++ goto free_then_fail; + } ++ else /* fallback to /proc/self/mounts (/etc/mtab). */ ++#endif /* __linux __ */ ++ { ++ struct mntent *mnt; ++ char const *table = MOUNTED; + +- if (endmntent (fp) == 0) +- goto free_then_fail; ++ fp = setmntent (table, "r"); ++ if (fp == NULL) ++ return NULL; ++ ++ while ((mnt = getmntent (fp))) ++ { ++ bool bind = hasmntopt (mnt, "bind"); ++ ++ me = xmalloc (sizeof *me); ++ me->me_devname = xstrdup (mnt->mnt_fsname); ++ me->me_mountdir = xstrdup (mnt->mnt_dir); ++ me->me_mntroot = NULL; ++ me->me_type = xstrdup (mnt->mnt_type); ++ me->me_type_malloced = 1; ++ me->me_dummy = ME_DUMMY (me->me_devname, me->me_type, bind); ++ me->me_remote = ME_REMOTE (me->me_devname, me->me_type); ++ me->me_dev = dev_from_mount_options (mnt->mnt_opts); ++ ++ /* Add to the linked list. */ ++ *mtail = me; ++ mtail = &me->me_next; ++ } ++ ++ if (endmntent (fp) == 0) ++ goto free_then_fail; ++ } + } + #endif /* MOUNTED_GETMNTENT1. */ + +@@ -468,6 +601,7 @@ + me = xmalloc (sizeof *me); + me->me_devname = xstrdup (fsp->f_mntfromname); + me->me_mountdir = xstrdup (fsp->f_mntonname); ++ me->me_mntroot = NULL; + me->me_type = fs_type; + me->me_type_malloced = 0; + me->me_dummy = ME_DUMMY (me->me_devname, me->me_type); +@@ -494,6 +628,7 @@ + me = xmalloc (sizeof *me); + me->me_devname = xstrdup (fsp->f_mntfromname); + me->me_mountdir = xstrdup (fsp->f_mntonname); ++ me->me_mntroot = NULL; + me->me_type = xstrdup (fsp->f_fstypename); + me->me_type_malloced = 1; + me->me_dummy = ME_DUMMY (me->me_devname, me->me_type); +@@ -520,6 +655,7 @@ + me = xmalloc (sizeof *me); + me->me_devname = xstrdup (fsd.fd_req.devname); + me->me_mountdir = xstrdup (fsd.fd_req.path); ++ me->me_mntroot = NULL; + me->me_type = gt_names[fsd.fd_req.fstype]; + me->me_type_malloced = 0; + me->me_dummy = ME_DUMMY (me->me_devname, me->me_type); +@@ -618,6 +754,7 @@ + me->me_devname = xstrdup (fi.device_name[0] != '\0' + ? fi.device_name : fi.fsh_name); + me->me_mountdir = xstrdup (re != NULL ? re->name : fi.fsh_name); ++ me->me_mntroot = NULL; + me->me_type = xstrdup (fi.fsh_name); + me->me_type_malloced = 1; + me->me_dev = fi.dev; +@@ -667,6 +804,7 @@ + me = xmalloc (sizeof *me); + me->me_devname = xstrdup (stats[counter].f_mntfromname); + me->me_mountdir = xstrdup (stats[counter].f_mntonname); ++ me->me_mntroot = NULL; + me->me_type = xstrdup (FS_TYPE (stats[counter])); + me->me_type_malloced = 1; + me->me_dummy = ME_DUMMY (me->me_devname, me->me_type); +@@ -703,6 +841,7 @@ + strcpy (me->me_devname + 5, mnt.mt_dev); + # endif + me->me_mountdir = xstrdup (mnt.mt_filsys); ++ me->me_mntroot = NULL; + me->me_dev = (dev_t) -1; /* Magic; means not known yet. */ + me->me_type = ""; + me->me_type_malloced = 0; +@@ -750,6 +889,7 @@ + me = xmalloc (sizeof *me); + me->me_devname = xstrdup ((*ent)->mt_resource); + me->me_mountdir = xstrdup ((*ent)->mt_directory); ++ me->me_mntroot = NULL; + me->me_type = xstrdup ((*ent)->mt_fstype); + me->me_type_malloced = 1; + me->me_dummy = ME_DUMMY (me->me_devname, me->me_type); +@@ -812,6 +952,7 @@ + me = xmalloc (sizeof *me); + me->me_devname = xstrdup (mnt.mnt_special); + me->me_mountdir = xstrdup (mnt.mnt_mountp); ++ me->me_mntroot = NULL; + me->me_type = xstrdup (mnt.mnt_fstype); + me->me_type_malloced = 1; + me->me_dummy = MNT_IGNORE (&mnt) != 0; +@@ -888,6 +1029,7 @@ + vmp->vmt_data[VMT_OBJECT].vmt_off); + } + me->me_mountdir = xstrdup (thisent + vmp->vmt_data[VMT_STUB].vmt_off); ++ me->me_mntroot = NULL; + me->me_type = xstrdup (fstype_to_string (vmp->vmt_gfstype)); + me->me_type_malloced = 1; + options = thisent + vmp->vmt_data[VMT_ARGS].vmt_off; +@@ -931,6 +1073,7 @@ + me = xmalloc (sizeof *me); + me->me_devname = xstrdup (dev.f_mntfromname); + me->me_mountdir = xstrdup (dev.f_mntonname); ++ me->me_mntroot = NULL; + me->me_type = xstrdup (dev.f_fstypename); + me->me_type_malloced = 1; + me->me_dummy = ME_DUMMY (me->me_devname, me->me_type); +@@ -957,11 +1100,7 @@ + while (mount_list) + { + me = mount_list->me_next; +- free (mount_list->me_devname); +- free (mount_list->me_mountdir); +- if (mount_list->me_type_malloced) +- free (mount_list->me_type); +- free (mount_list); ++ free_mount_entry (mount_list); + mount_list = me; + } + +@@ -969,3 +1108,15 @@ + return NULL; + } + } ++ ++/* Free a mount entry as returned from read_file_system_list (). */ ++ ++void free_mount_entry (struct mount_entry *me) ++{ ++ free (me->me_devname); ++ free (me->me_mountdir); ++ free (me->me_mntroot); ++ if (me->me_type_malloced) ++ free (me->me_type); ++ free (me); ++} +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/lib/mountlist.h coreutils-8.21/lib/mountlist.h +--- coreutils-8.21~/lib/mountlist.h 2013-01-02 06:34:46.000000000 -0600 ++++ coreutils-8.21/lib/mountlist.h 2015-11-05 08:29:58.000000000 -0600 +@@ -27,6 +27,8 @@ + { + char *me_devname; /* Device node name, including "/dev/". */ + char *me_mountdir; /* Mount point directory name. */ ++ char *me_mntroot; /* Directory on filesystem of device used */ ++ /* as root for the (bind) mount. */ + char *me_type; /* "nfs", "4.2", etc. */ + dev_t me_dev; /* Device number of me_mountdir. */ + unsigned int me_dummy : 1; /* Nonzero for dummy file systems. */ +@@ -36,5 +38,6 @@ + }; + + struct mount_entry *read_file_system_list (bool need_fs_type); ++void free_mount_entry (struct mount_entry *entry); + + #endif +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/m4/ls-mntd-fs.m4 coreutils-8.21/m4/ls-mntd-fs.m4 --- coreutils-8.21.orig/debian/patches/99_test_nohup_tty.dpatch +++ coreutils-8.21/debian/patches/99_test_nohup_tty.dpatch @@ -0,0 +1,32 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run + +@DPATCH@ +From 5dce6bdfafc930dfd17d5d16aea7d1add3472066 Mon Sep 17 00:00:00 2001 +From: Pádraig Brady +Date: Wed, 05 Mar 2014 15:14:07 +0000 +Subject: tests: fix false failure in nohup.sh in non tty builds + +* tests/misc/nohup.sh: When running tests without a controlling tty, +an exec failure is triggered in a subshell, which causes POSIX +shells to immediately exit the subshell. This was brought +to notice by the newly conforming bash 4.3. +Fixes http:/bugs.gnu.org/16940 +--- +diff --git a/tests/misc/nohup.sh b/tests/misc/nohup.sh +index 6d2b515..2328b43 100755 +--- a/tests/misc/nohup.sh ++++ b/tests/misc/nohup.sh +@@ -63,6 +63,11 @@ rm -f nohup.out err + # to stderr must be fatal. Requires stdout to be terminal. + if test -w /dev/full && test -c /dev/full; then + ( ++ # POSIX shells immediately exit the subshell on exec error. ++ # So check we can write to /dev/tty before the exec, which ++ # isn't possible if we've no controlling tty for example. ++ test -c /dev/tty && >/dev/tty || exit 0 ++ + exec >/dev/tty + test -t 1 || exit 0 + nohup echo hi 2> /dev/full +-- +cgit v0.9.0.2 --- coreutils-8.21.orig/debian/patches/99_test_xasprintf_hardening.dpatch +++ coreutils-8.21/debian/patches/99_test_xasprintf_hardening.dpatch @@ -0,0 +1,25 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 99_test_xasprintf_hardening.dpatch by Colin Watson +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Backport from gnulib upstream (Paul Eggert): +## DP: xvasprintf-tests: port to GCC with hardening flags + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils~/gnulib-tests/test-xvasprintf.c coreutils/gnulib-tests/test-xvasprintf.c +--- coreutils~/gnulib-tests/test-xvasprintf.c 2013-10-30 08:35:33.000000000 -0700 ++++ coreutils/gnulib-tests/test-xvasprintf.c 2013-10-31 08:30:04.396586301 -0700 +@@ -93,9 +93,11 @@ + } + + { +- /* Silence gcc warning about zero-length format string. */ ++ /* Silence gcc warning about zero-length format string, ++ and about "format not a string literal and no format" ++ (whatever that means) . */ + const char *empty = ""; +- result = xasprintf (empty); ++ result = xasprintf (empty, empty); + ASSERT (result != NULL); + ASSERT (strcmp (result, "") == 0); + free (result); --- coreutils-8.21.orig/debian/patches/CVE-2014-9471.dpatch +++ coreutils-8.21/debian/patches/CVE-2014-9471.dpatch @@ -0,0 +1,54 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## CVE-2014-9471.dpatch by Seth Arnold +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Origin: http://debbugs.gnu.org/cgi/bugreport.cgi?msg=11;filename=date-tz-crash.patch;att=1;bug=16872 +## DP: Origin: http://debbugs.gnu.org/cgi/bugreport.cgi?msg=19;filename=coreutils-date-crash.patch;att=1;bug=16872 +## DP: Combined from previous two URLs, dropping NEWS entries +## DP: Description: parse-datetime: fix crash or infloop in TZ="" parsing +## DP: Author: =?UTF-8?q?P=C3=A1draig=20Brady?= + + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/lib/parse-datetime.y coreutils-8.21/lib/parse-datetime.y +--- coreutils-8.21~/lib/parse-datetime.y 2013-01-02 04:34:46.000000000 -0800 ++++ coreutils-8.21/lib/parse-datetime.y 2015-01-08 18:45:33.768522794 -0800 +@@ -1303,8 +1303,6 @@ + char tz1buf[TZBUFSIZE]; + bool large_tz = TZBUFSIZE < tzsize; + bool setenv_ok; +- /* Free tz0, in case this is the 2nd or subsequent time through. */ +- free (tz0); + tz0 = get_tz (tz0buf); + z = tz1 = large_tz ? xmalloc (tzsize) : tz1buf; + for (s = tzbase; *s != '"'; s++) +@@ -1316,7 +1314,12 @@ + if (!setenv_ok) + goto fail; + tz_was_altered = true; ++ + p = s + 1; ++ while (c = *p, c_isspace (c)) ++ p++; ++ ++ break; + } + } + +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' coreutils-8.21~/tests/misc/date.pl coreutils-8.21/tests/misc/date.pl +--- coreutils-8.21~/tests/misc/date.pl 2013-01-30 16:46:24.000000000 -0800 ++++ coreutils-8.21/tests/misc/date.pl 2015-01-08 18:53:26.136401021 -0800 +@@ -287,6 +287,13 @@ + {ERR => "date: invalid date '\\260'\n"}, + {EXIT => 1}, + ], ++ ++ # From coreutils-5.3.0 to 8.22 inclusive ++ # this would either infinite loop or crash ++ ['invalid-TZ-crash', "-d 'TZ=\"\"\"'", ++ {ERR => "date: invalid date 'TZ=\"\"\"'\n"}, ++ {EXIT => 1}, ++ ], + ); + + # Repeat the cross-dst test, using Jan 1, 2005 and every interval from 1..364. --- coreutils-8.21.orig/debian/rules +++ coreutils-8.21/debian/rules @@ -0,0 +1,211 @@ +#!/usr/bin/make -f +# This file is public domain software, originally written by Joey Hess. + +# Uncomment this to turn on verbose mode. +export DH_VERBOSE=1 + +# work around dpkg changes +DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU 2>/dev/null) +DEB_HOST_ARCH_OS := $(shell dpkg-architecture -qDEB_HOST_ARCH_OS 2>/dev/null) +ifeq ($(DEB_HOST_ARCH_CPU),) + DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_GNU_CPU) + ifeq ($(DEB_HOST_ARCH_CPU),x86_64) + DEB_HOST_ARCH_CPU := amd64 + endif +endif +ifeq ($(DEB_HOST_ARCH_OS),) + DEB_HOST_ARCH_OS := $(subst -gnu,,$(shell dpkg-architecture -qDEB_HOST_GNU_SYSTEM)) + ifeq ($(DEB_HOST_ARCH_OS),gnu) + DEB_HOST_ARCH_OS := hurd + endif +endif + +# implement no optimization build option +CFLAGS = $(shell dpkg-buildflags --get CFLAGS) +LDFLAGS = $(shell dpkg-buildflags --get LDFLAGS) +CPPFLAGS = $(shell dpkg-buildflags --get CPPFLAGS) +CFLAGS += -DSYSLOG_SUCCESS -DSYSLOG_FAILURE -DSYSLOG_NON_ROOT + +# Renesas SH(sh4) need -mieee option. +ifeq ($(DEB_HOST_ARCH_CPU),sh4) + CFLAGS += -mieee +endif + +ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) + cross_build := yes + CROSS_CONFIGURE_FLAGS = --cache-file=./config.cache +endif + +# programs to include/not include +ifeq ($(DEB_HOST_ARCH_OS),hurd) + BUILDPROG_OPTS := --enable-install-program=su,arch +else + BUILDPROG_OPTS := --enable-install-program=arch +endif + +BIN_PROGS = cat chgrp chmod chown cp date dd df dir echo false ln ls mkdir \ + mknod mv pwd readlink rm rmdir vdir sleep stty sync touch true uname \ + mktemp +d=debian/coreutils + +default: binary + +configure: patch configure-stamp +configure-stamp: + dh_testdir + +ifeq ($(cross_build),yes) + echo 'fu_cv_sys_stat_statfs2_bsize=yes' > config.cache +endif + CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" \ + LDFLAGS='$(LDFLAGS)' ./configure \ + --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) \ + --prefix=/usr -v \ + --libexecdir=/usr/lib \ + --infodir=/usr/share/info --mandir=/usr/share/man \ + --disable-silent-rules \ + $(BUILDPROG_OPTS) + + echo configured > configure-stamp + +build: patch configure build-stamp +build-stamp: + dh_testdir +ifeq ($(cross_build),yes) + $(MAKE) run_help2man=$(CURDIR)/man/dummy-man +else + $(MAKE) +ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) + $(MAKE) check VERBOSE=yes +endif +endif # cross build + echo built > build-stamp + +clean: unpatch clean1 +clean1: + dh_testdir + rm -f build-stamp configure-stamp + rm -rf debian/buildinfo + make distclean || true + rm -f config.log + rm -f config.status + dh_clean + +patch: patch-stamp +patch-stamp: + dpatch apply-all + dpatch cat-all > patch-stamp + touch man/*.1 + touch patch-stamp + +unpatch: + dpatch deapply-all + rm -rf patch-stamp debian-patched + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + +ifeq ($(cross_build),yes) + $(MAKE) install DESTDIR=$(CURDIR)/$(d) EXTRA_MANS= +else + $(MAKE) install DESTDIR=$(CURDIR)/$(d) +endif + + # some things go in root rather than usr + for f in $(BIN_PROGS); do \ + mv $(d)/usr/bin/$$f $(d)/bin/$$f; \ + done + + # backward compatability + ln -s /usr/bin/md5sum $(d)/usr/bin/md5sum.textutils + ln -s /usr/share/man/man1/md5sum.1 $(d)/usr/share/man/man1/md5sum.textutils.1 +ifneq ($(DEB_HOST_ARCH_OS),hurd) + # touch used to be in /usr/bin, don't break scripts + ln -s /bin/touch $(d)/usr/bin/touch +endif + + # remove stuff provided by other packages +ifeq ($(DEB_HOST_ARCH_OS),linux) + # kill from procps is linux-specific + rm -f $(d)/usr/bin/kill $(d)/usr/share/man/man1/kill.1 +else + mv $(d)/usr/bin/kill $(d)/bin +endif +ifneq ($(DEB_HOST_ARCH_OS),hurd) + rm -f $(d)/usr/bin/su $(d)/usr/share/man/man1/su.1 +endif + rm -f $(d)/usr/bin/hostname $(d)/usr/share/man/man1/hostname.1 + rm -f $(d)/usr/bin/uptime $(d)/usr/share/man/man1/uptime.1 + rm -f $(d)/usr/bin/realpath $(d)/usr/share/man/man1/realpath.1 + + # the [ program doesn't have its own man page yet + ln -s test.1 $(d)/usr/share/man/man1/[.1 + + # gnu thinks chroot is in bin, debian thinks it's in sbin + install -d $(d)/usr/sbin $(d)/usr/share/man/man8 + mv $(d)/usr/bin/chroot $(d)/usr/sbin/chroot + sed s/\"1\"/\"8\"/1 $(d)/usr/share/man/man1/chroot.1 > $(d)/usr/share/man/man8/chroot.8 + rm $(d)/usr/share/man/man1/chroot.1 + + # some build environments will leave a dangling info dir + rm -f $(d)/usr/share/info/dir + + # unneeded + rm -rf $(d)/usr/share/locale/*/LC_TIME + + cp AUTHORS \ + NEWS README \ + THANKS \ + TODO \ + $(d)/usr/share/doc/coreutils + + dh_install + +# Build architecture-independent files here. +binary-indep: build install + dh_testdir -i + dh_testroot -i + dh_installchangelogs -i + dh_installdocs -i + dh_buildinfo + dh_installexamples -i + dh_installinfo -i + dh_installman -i + dh_link -i + dh_compress -i + dh_fixperms -i + dh_installdeb -i + dh_gencontrol -i + dh_md5sums -i + dh_builddeb -i + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir -a + dh_testroot -a + dh_installchangelogs -a ChangeLog + dh_installdocs -a + dh_buildinfo -a + dh_installexamples -a + dh_installinfo -a doc/coreutils.info + dh_installman -a +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + dh_strip -a +endif + dh_link -a + dh_compress -a + dh_fixperms -a +ifeq ($(DEB_HOST_ARCH_OS),hurd) + chmod u+s $(d)/usr/bin/su +endif + dh_installdeb -a + dh_shlibdeps -a + dh_gencontrol -a + dh_md5sums -a + dh_builddeb -a + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install patch unpatch clean1 --- coreutils-8.21.orig/debian/tests/control +++ coreutils-8.21/debian/tests/control @@ -0,0 +1,2 @@ +Tests: upstream +Depends: coreutils, acl, strace --- coreutils-8.21.orig/debian/tests/upstream +++ coreutils-8.21/debian/tests/upstream @@ -0,0 +1,347 @@ +#!/bin/sh +# Run a subset of the upstream tests which work in an unbuilt tree against the +# system installed package; these have been selected with +# +# for t in tests/*/*; do if env LANG= LANGUAGE= LC_ALL=C CONFIG_HEADER=/dev/null $t >/dev/null 2>&1; then echo ${t#tests/}; fi; done +set -e + +# ensure that we do not stumble over translations +unset LANG +unset LANGUAGE +export LC_ALL=C +fails=0 + +for test in \ + chgrp/basic.sh \ + chgrp/default-no-deref.sh \ + chgrp/deref.sh \ + chgrp/no-x.sh \ + chgrp/posix-H.sh \ + chgrp/recurse.sh \ + chmod/c-option.sh \ + chmod/equal-x.sh \ + chmod/equals.sh \ + chmod/inaccessible.sh \ + chmod/no-x.sh \ + chmod/octal.sh \ + chmod/setgid.sh \ + chmod/silent.sh \ + chmod/thru-dangling.sh \ + chmod/umask-x.sh \ + chmod/usage.sh \ + chown/deref.sh \ + chown/preserve-root.sh \ + chown/separator.sh \ + cp/abuse.sh \ + cp/attr-existing.sh \ + cp/backup-1.sh \ + cp/backup-dir.sh \ + cp/backup-is-src.sh \ + cp/cp-HL.sh \ + cp/cp-deref.sh \ + cp/cp-i.sh \ + cp/cp-mv-backup.sh \ + cp/cp-parents.sh \ + cp/deref-slink.sh \ + cp/dir-rm-dest.sh \ + cp/dir-slash.sh \ + cp/dir-vs-file.sh \ + cp/existing-perm-dir.sh \ + cp/existing-perm-race.sh \ + cp/fail-perm.sh \ + cp/fiemap-FMR.sh \ + cp/file-perm-race.sh \ + cp/into-self.sh \ + cp/link-no-deref.sh \ + cp/link-preserve.sh \ + cp/link-symlink.sh \ + cp/link.sh \ + cp/no-deref-link1.sh \ + cp/no-deref-link2.sh \ + cp/no-deref-link3.sh \ + cp/parent-perm-race.sh \ + cp/parent-perm.sh \ + cp/preserve-2.sh \ + cp/preserve-link.sh \ + cp/preserve-mode.sh \ + cp/proc-short-read.sh \ + cp/proc-zero-len.sh \ + cp/r-vs-symlink.sh \ + cp/reflink-perm.sh \ + cp/same-file.sh \ + cp/slink-2-slink.sh \ + cp/sparse-to-pipe.sh \ + cp/sparse.sh \ + cp/special-f.sh \ + cp/src-base-dot.sh \ + cp/symlink-slash.sh \ + cp/thru-dangling.sh \ + dd/bytes.sh \ + dd/direct.sh \ + dd/misc.sh \ + dd/nocache.sh \ + dd/not-rewound.sh \ + dd/reblock.sh \ + dd/skip-seek2.sh \ + dd/sparse.sh \ + dd/stderr.sh \ + dd/unblock-sync.sh \ + df/df-P.sh \ + df/header.sh \ + df/skip-duplicates.sh \ + df/total-unprocessed.sh \ + df/total-verify.sh \ + df/unreadable.sh \ + du/8gb.sh \ + du/basic.sh \ + du/bigtime.sh \ + du/deref-args.sh \ + du/deref.sh \ + du/exclude.sh \ + du/files0-from-dir.sh \ + du/hard-link.sh \ + du/inacc-dest.sh \ + du/inacc-dir.sh \ + du/inaccessible-cwd.sh \ + du/long-from-unreadable.sh \ + du/long-sloop.sh \ + du/max-depth.sh \ + du/no-deref.sh \ + du/no-x.sh \ + du/restore-wd.sh \ + du/slash.sh \ + du/trailing-slash.sh \ + du/two-args.sh \ + fmt/goal-option.sh \ + fmt/long-line.sh \ + install/trap.sh \ + ln/backup-1.sh \ + ln/hard-backup.sh \ + ln/hard-to-sym.sh \ + ln/relative.sh \ + ln/sf-1.sh \ + ln/slash-decorated-nonexistent-dest.sh \ + ln/target-1.sh \ + ls/abmon-align.sh \ + ls/block-size.sh \ + ls/color-clear-to-eol.sh \ + ls/color-dtype-dir.sh \ + ls/color-norm.sh \ + ls/dangle.sh \ + ls/dired.sh \ + ls/file-type.sh \ + ls/follow-slink.sh \ + ls/infloop.sh \ + ls/inode.sh \ + ls/m-option.sh \ + ls/multihardlink.sh \ + ls/no-arg.sh \ + ls/proc-selinux-segfault.sh \ + ls/readdir-mountpoint-inode.sh \ + ls/recursive.sh \ + ls/root-rel-symlink-color.sh \ + ls/rt-1.sh \ + ls/slink-acl.sh \ + ls/stat-dtype.sh \ + ls/stat-failed.sh \ + ls/stat-free-symlinks.sh \ + ls/stat-vs-dirent.sh \ + ls/symlink-slash.sh \ + ls/time-style-diag.sh \ + ls/x-option.sh \ + misc/cat-proc.sh \ + misc/chcon-fail.sh \ + misc/chroot-fail.sh \ + misc/csplit-1000.sh \ + misc/csplit-heap.sh \ + misc/csplit.sh \ + misc/date-sec.sh \ + misc/env-null.sh \ + misc/false-status.sh \ + misc/head-c.sh \ + misc/head-pos.sh \ + misc/id-groups.sh \ + misc/invalid-opt.pl \ + misc/ls-time.sh \ + misc/md5sum-bsd.sh \ + misc/md5sum-parallel.sh \ + misc/mknod.sh \ + misc/nice-fail.sh \ + misc/nice.sh \ + misc/nl.sh \ + misc/nproc-avail.sh \ + misc/nproc-positive.sh \ + misc/od-N.sh \ + misc/od-float.sh \ + misc/od-multiple-t.sh \ + misc/od-x8.sh \ + misc/pathchk1.sh \ + misc/printenv.sh \ + misc/printf-hex.sh \ + misc/printf-surprise.sh \ + misc/ptx-overrun.sh \ + misc/pwd-option.sh \ + misc/readlink-root.sh \ + misc/runcon-no-reorder.sh \ + misc/shred-exact.sh \ + misc/shred-passes.sh \ + misc/shred-remove.sh \ + misc/sort-NaN-infloop.sh \ + misc/sort-compress.sh \ + misc/sort-debug-keys.sh \ + misc/sort-debug-warn.sh \ + misc/sort-exit-early.sh \ + misc/sort-merge-fdlimit.sh \ + misc/sort-month.sh \ + misc/sort-rand.sh \ + misc/sort-u-FMR.sh \ + misc/sort-unique.sh \ + misc/sort-version.sh \ + misc/stat-fmt.sh \ + misc/stat-hyphen.sh \ + misc/stat-mount.sh \ + misc/stat-nanoseconds.sh \ + misc/stat-slash.sh \ + misc/stty-invalid.sh \ + misc/stty-row-col.sh \ + misc/sum-sysv.sh \ + misc/tac-2-nonseekable.sh \ + misc/tee-dash.sh \ + misc/tee.sh \ + misc/timeout-group.sh \ + misc/timeout.sh \ + misc/tr-case-class.sh \ + misc/truncate-dangling-symlink.sh \ + misc/truncate-dir-fail.sh \ + misc/truncate-fail-diag.sh \ + misc/truncate-fifo.sh \ + misc/truncate-no-create-missing.sh \ + misc/truncate-parameters.sh \ + misc/truncate-relative.sh \ + misc/uniq-perf.sh \ + misc/wc-files0.sh \ + misc/wc-parallel.sh \ + mkdir/p-1.sh \ + mkdir/p-2.sh \ + mkdir/p-3.sh \ + mkdir/p-slashdot.sh \ + mkdir/p-thru-slink.sh \ + mkdir/p-v.sh \ + mkdir/parents.sh \ + mkdir/perm.sh \ + mkdir/special-1.sh \ + mkdir/t-slash.sh \ + mv/atomic.sh \ + mv/atomic2.sh \ + mv/backup-dir.sh \ + mv/childproof.sh \ + mv/diag.sh \ + mv/dir-file.sh \ + mv/dir2dir.sh \ + mv/dup-source.sh \ + mv/force.sh \ + mv/hard-2.sh \ + mv/hard-3.sh \ + mv/hard-4.sh \ + mv/hard-verbose.sh \ + mv/i-2.sh \ + mv/i-3.sh \ + mv/i-4.sh \ + mv/i-5.sh \ + mv/i-link-no.sh \ + mv/into-self-3.sh \ + mv/into-self-4.sh \ + mv/into-self.sh \ + mv/mv-n.sh \ + mv/no-target-dir.sh \ + mv/perm-1.sh \ + mv/symlink-onto-hardlink-to-self.sh \ + mv/symlink-onto-hardlink.sh \ + mv/trailing-slash.sh \ + mv/update.sh \ + readlink/multi.sh \ + readlink/rl-1.sh \ + rm/cycle.sh \ + rm/d-1.sh \ + rm/d-2.sh \ + rm/d-3.sh \ + rm/dangling-symlink.sh \ + rm/deep-1.sh \ + rm/deep-2.sh \ + rm/dir-no-w.sh \ + rm/dir-nonrecur.sh \ + rm/dot-rel.sh \ + rm/empty-inacc.sh \ + rm/f-1.sh \ + rm/fail-eacces.sh \ + rm/i-1.sh \ + rm/i-never.sh \ + rm/i-no-r.sh \ + rm/ignorable.sh \ + rm/inaccessible.sh \ + rm/interactive-always.sh \ + rm/interactive-once.sh \ + rm/ir-1.sh \ + rm/isatty.sh \ + rm/one-file-system2.sh \ + rm/r-1.sh \ + rm/r-2.sh \ + rm/r-3.sh \ + rm/r-4.sh \ + rm/readdir-bug.sh \ + rm/rm1.sh \ + rm/rm2.sh \ + rm/rm3.sh \ + rm/rm4.sh \ + rm/rm5.sh \ + rm/sunos-1.sh \ + rm/unread2.sh \ + rm/unread3.sh \ + rm/v-slash.sh \ + rmdir/fail-perm.sh \ + rmdir/ignore.sh \ + rmdir/t-slash.sh \ + split/additional-suffix.sh \ + split/b-chunk.sh \ + split/filter.sh \ + split/guard-input.sh \ + split/l-chunk.sh \ + split/lines.sh \ + split/numeric.sh \ + split/r-chunk.sh \ + split/suffix-auto-length.sh \ + split/suffix-length.sh \ + tail-2/F-vs-rename.sh \ + tail-2/flush-initial.sh \ + tail-2/follow-name.sh \ + tail-2/follow-stdin.sh \ + tail-2/infloop-1.sh \ + tail-2/inotify-hash-abuse.sh \ + tail-2/inotify-hash-abuse2.sh \ + tail-2/pipe-f.sh \ + tail-2/pipe-f2.sh \ + tail-2/proc-ksyms.sh \ + tail-2/start-middle.sh \ + tail-2/tail-n0f.sh \ + tail-2/wait.sh \ + touch/60-seconds.sh \ + touch/dangling-symlink.sh \ + touch/dir-1.sh \ + touch/empty-file.sh \ + touch/fail-diag.sh \ + touch/fifo.sh \ + touch/no-create-missing.sh \ + touch/no-rights.sh \ + touch/not-owner.sh \ + touch/obsolescent.sh \ + touch/read-only.sh \ + touch/relative.sh \ + touch/trailing-slash.sh \ +; do + echo "$test" + chmod a+x "tests/$test" + OUT=$(tests/$test 2>&1 9>&1) || [ $? = 77 ] || { fails=$((fails+1)); echo "FAIL:"; echo "$OUT"; } +done + +echo $fails tests failed +exit $fails --- coreutils-8.21.orig/debian/watch +++ coreutils-8.21/debian/watch @@ -0,0 +1,3 @@ +version=3 +opts=uversionmangle=s/\.(gz|bz2|lzma|xz)$// \ +ftp://ftp.gnu.org/gnu/coreutils/coreutils-([\d+\.]+)\.tar\.(gz|bz2|lzma|xz) debian uupdate