Jim Meyering [Thu, 31 Jan 2008 12:51:10 +0000 (13:51 +0100)]
Remove alignment constraint from the sha*_read_ctx functions.
* lib/sha256.c (set_uint32): New function.
(sha256_read_ctx, sha224_read_ctx): Use it.
* lib/sha512.c (set_uint64): New function.
(sha512_read_ctx, sha384_read_ctx): Use it.
* lib/sha256.h: Remove warning about alignment constraint.
* lib/sha512.h: Likewise.
Prompted by similar changes in gnulib's sha1 and md[45] modules.
Jim Meyering [Thu, 31 Jan 2008 12:25:13 +0000 (13:25 +0100)]
Adapt to new version of vc-list-files.
* tests/check.mk (vc_exe_in_TESTS): Adapt to new constraint
that vc-list-files be run only from $(top_srcdir).
Jim Meyering [Thu, 31 Jan 2008 10:27:15 +0000 (11:27 +0100)]
Pull vc-list-files from gnulib.
* bootstrap.conf (gnulib_modules): Add vc-list-files.
* build-aux/vc-list-files: Remove file.
Jim Meyering [Fri, 11 Jan 2008 14:10:02 +0000 (15:10 +0100)]
Improve the cp/parent-perm test.
* tests/cp/parent-perm: Also check that perms of existing dest
dirs are changed to match those of corresponding src dir
Paul Eggert [Thu, 31 Jan 2008 08:22:49 +0000 (09:22 +0100)]
Don't modify argv in dd due to ',' in arguments.
* src/dd.c: Include quotearg.h.
(operand_matches): New function.
(parse_symbols, operand_is): Use it.
(parse_symbols): 1st arg is now const pointer. Don't modify it.
msgid arg is now just the message, not a format.
(scanargs): Add some 'const's to check for problems like the above.
Jim Meyering [Wed, 30 Jan 2008 18:37:07 +0000 (19:37 +0100)]
* src/c99-to-c89.diff: Adjust remove.c offsets, again.
Jim Meyering [Wed, 30 Jan 2008 18:29:01 +0000 (19:29 +0100)]
Now that system.h defines is_empty_dir, include "openat.h".
* src/system.h: Include "openat.h" here, ...
* src/chcon.c: ... not here.
* src/chmod.c: Likewise.
* src/chown-core.c: Likewise.
* src/remove.c: Likewise.
Signed-off-by: Jim Meyering <meyering@redhat.com>
Jim Meyering [Wed, 30 Jan 2008 15:15:18 +0000 (16:15 +0100)]
* src/c99-to-c89.diff: Adjust remove.c offsets.
Jim Meyering [Wed, 30 Jan 2008 12:43:15 +0000 (13:43 +0100)]
Improve "rmdir --ignore-fail-on-non-empty"
* src/rmdir.c (remove_parents, main): With --ignore-fail-on-non-empty,
suppress a diagnostic also for other errno values, which can arise
with read-only media or when the parent directory has the immutable
attribute (set via chattr +i).
(errno_may_be_empty, ignorable_failure): New functions.
* src/remove.c (is_empty_dir): Move function to ...
* src/system.h (is_empty_dir): ...here, and make it inline.
Suggested by Josselin Mouette in <http://bugs.debian.org/363011>
via Bob Proulx.
* NEWS: Mention the improvement.
Paul Eggert [Wed, 30 Jan 2008 06:33:01 +0000 (07:33 +0100)]
Don't modify argv in dd.
* src/dd.c (operand_is): New function.
(scanargs): Use it so that we don't need to modify argv, as a nicety.
Problem reported by Adam Goode in
<http://lists.gnu.org/archive/html/bug-coreutils/2008-01/msg00264.html>.
Jim Meyering [Tue, 29 Jan 2008 16:19:29 +0000 (17:19 +0100)]
* Makefile.am (BUILT_SOURCES): Ensure that .version exists.
Reported by Bob Proulx.
Bob Proulx [Tue, 29 Jan 2008 05:19:21 +0000 (22:19 -0700)]
Improve the man pages of --date=STRING for 'date' and 'touch'.
* man/date.x: Add a compact description of the --date=STRING.
* man/touch.x: Likewise.
Reported by A. Costa in http://bugs.debian.org/363011
Michael Stone [Tue, 29 Jan 2008 13:12:22 +0000 (14:12 +0100)]
Improve the description of when dd outputs its final statistics.
* doc/coreutils.texi (dd invocation): Say that dd prints stats
upon normal termination and upon SIGINT.
Signed-off-by: Jim Meyering <meyering@redhat.com>
Jim Meyering [Mon, 28 Jan 2008 14:16:17 +0000 (15:16 +0100)]
Avoid "make distcheck" failure: newly-created man/*.1 files not removed
* Makefile.am (EXTRA_DIST): Add .version.
(.version): New rule.
(dist-hook): Don't create $(distdir)/.version here, now that it's
being distributed.
* man/Makefile.am (common_dep): Use ../.version, not ../VERSION.
(../VERSION): Remove rule.
* GNUmakefile (dummy): Create .version, not VERSION.
Add an extra "...:= $(shell..." statement to ensure that
.version exists even when the preceding code is not run.
* .gitignore: Remove both .version and VERSION.
Signed-off-by: Jim Meyering <meyering@redhat.com>
Jim Meyering [Tue, 29 Jan 2008 07:56:48 +0000 (08:56 +0100)]
ls: don't segfault on files in /proc with an old libselinux
* src/ls.c (gobble_file): Work around a bug in libselinux1-2.0.15
whereby getfilecon returns 0 yet sets the context to NULL.
Reported by Jan Moringen via Michael Stone in
http://bugs.debian.org/463043
* tests/ls/Makefile.am (TESTS): Add proc-selinux-segfault.
* tests/ls/proc-selinux-segfault: Test for the above fix.
* NEWS: Mention the fix.
Jim Meyering [Sat, 26 Jan 2008 17:28:43 +0000 (18:28 +0100)]
Work around Darwin9's set-GID-like group ownership inheritance.
This avoids another spurious Mac OS 10.5.1 (Darwin 9.1) test failure.
* tests/cp/preserve-gid: Accept a group ID of 0, as well.
Reported by Elias Pipping.
Jim Meyering [Sat, 26 Jan 2008 18:37:23 +0000 (19:37 +0100)]
Emit "info coreutils 'PROG invocation'" into the man page,
rather than just "info PROG". The latter would often fail
or simply display the man page.
* man/help2man: Change the template.
Prompted by http://bugs.debian.org/399684
Jim Meyering [Sat, 26 Jan 2008 16:40:28 +0000 (17:40 +0100)]
chcon: correct description of --no-dereference (-h) option.
* src/chcon.c (usage): Remove invalid reference to lchown.
Reported by Göran Uddeborg.
Jim Meyering [Sat, 26 Jan 2008 14:48:53 +0000 (15:48 +0100)]
Ensure that each version string change propagates to man pages.
* man/Makefile.am (common_dep): Don't depend on configure.ac for
version changes. Instead, depend on ../VERSION.
(../VERSION): New rule.
* Makefile.am (DISTCLEANFILES): Define.
* GNUmakefile: Update ./VERSION.
* .gitignore: List VERSION.
Reported by Sven Joachim.
Jim Meyering [Sat, 26 Jan 2008 14:38:39 +0000 (15:38 +0100)]
Avoid cp/preserve-gid test failure on Mac OS 10.5.1 (Darwin 9.1)
* tests/cp/preserve-gid: Set group as well as owner on ".".
Reported by Elias Pipping.
Jim Meyering [Sat, 26 Jan 2008 11:29:41 +0000 (12:29 +0100)]
Improve a warning about non-portable "mv" usage.
* doc/coreutils.texi (mv invocation): Adjust the warning: moving a
dir-symlink-specified-with-a-trailing-slash works in a surprising
manner only on some systems. Reported by Tomas Pospisek in
http://bugs.debian.org/343652.
Mike Frysinger [Sat, 26 Jan 2008 09:09:59 +0000 (10:09 +0100)]
src/dircolors.hin (TERM): Add jfbterm.
Jim Meyering [Fri, 25 Jan 2008 18:26:08 +0000 (19:26 +0100)]
Clean up build-related rules.
* Makefile.cfg (gnulib_dir): Update comment.
* Makefile.maint (announcement) [cl_date, utc_date]: Don't set
now-unused variables.
Jim Meyering [Wed, 23 Jan 2008 21:47:44 +0000 (22:47 +0100)]
TODO: Update the note on getgrouplist.
Zvi Har'El [Wed, 23 Jan 2008 13:26:47 +0000 (14:26 +0100)]
Add a ";", so "make install" works with --enable-install-program=su.
* src/Makefile.am (install_su): Add a semicolon.
Jim Meyering [Wed, 23 Jan 2008 13:12:04 +0000 (14:12 +0100)]
Avoid misinterpreting mgetgroups failure in running root-only tests.
* src/setuidgid.c (main): Don't misinterpret as size_t an error
return from mgetgroups. Reported by Theodoros V. Kalamatianos.
Jim Meyering [Tue, 22 Jan 2008 23:18:24 +0000 (00:18 +0100)]
* README: Remove/convert a few stray mentions of CVS.
Jim Meyering [Tue, 22 Jan 2008 22:03:48 +0000 (23:03 +0100)]
Require automake-1.10.1, for its support of dist-lzma.
* configure.ac (AM_INIT_AUTOMAKE): Require 1.10.1.
Jim Meyering [Tue, 22 Jan 2008 07:12:02 +0000 (08:12 +0100)]
.prev-version: Record version: 6.10.
Jim Meyering [Mon, 21 Jan 2008 23:31:02 +0000 (00:31 +0100)]
Version 6.10
Jim Meyering [Mon, 21 Jan 2008 23:30:14 +0000 (00:30 +0100)]
* NEWS: Record release date.
Jim Meyering [Mon, 21 Jan 2008 23:28:23 +0000 (00:28 +0100)]
* README-hacking: Update to reflect existence of automake-1.10.1.
Jim Meyering [Fri, 18 Jan 2008 08:26:49 +0000 (09:26 +0100)]
Update README.
* README: Remove a note about failing tests on SunOS 4.
On Mac OS 10.5.1 (Darwin 9.1), you'll need --disable-acl.
(Running tests as root): Recommend using "check-root", not "check".
Jim Meyering [Thu, 17 Jan 2008 09:20:24 +0000 (10:20 +0100)]
Do not define-away __attribute__ when __STRICT_ANSI__ is set.
* src/system.h (__attribute__): Remove the __STRICT_ANSI__ disjunct.
It has been unnecessary since approximately gcc-2.6, and now, leaving
it would cause gcc -Werror -ansi to fail to compile csplit.c.
* gl/lib/randread.c (__attribute__): Likewise.
Jim Meyering [Wed, 16 Jan 2008 20:20:20 +0000 (21:20 +0100)]
NEWS: Mention the configure.ac fix.
Jim Meyering [Wed, 16 Jan 2008 19:18:47 +0000 (20:18 +0100)]
* TODO: Add an introduction.
Remove a few entries. Update a few others.
Jim Meyering [Sun, 13 Jan 2008 11:44:53 +0000 (12:44 +0100)]
Remove each output redirection target before writing to it.
* tests/check.mk (vc_exe_in_TESTS): Remove t1 and t2 _first_,
in case they exist beforehand and are not writable.
* build-aux/check.mk (am__check_pre): Likewise, remove $@-t.
Elias Pipping [Sun, 13 Jan 2008 08:16:09 +0000 (09:16 +0100)]
* configure.ac: Correct a non-portable use of sed.
Mike Frysinger [Sat, 12 Jan 2008 15:21:04 +0000 (16:21 +0100)]
* src/dircolors.hin (image formats): Add the .svg suffix.
Jim Meyering [Sat, 12 Jan 2008 08:55:29 +0000 (09:55 +0100)]
Use new version of announce-gen.
* Makefile.maint (announcement): Remove use of the
--gnulib-snapshot-time-stamp option.
Use new --gnulib-version option instead.
(gnulib-version): New variable.
Jim Meyering [Sat, 12 Jan 2008 00:17:10 +0000 (01:17 +0100)]
.prev-version: Record previous version: 6.9.92.
Jim Meyering [Fri, 11 Jan 2008 08:10:50 +0000 (09:10 +0100)]
Version 6.9.92
Jim Meyering [Fri, 11 Jan 2008 09:06:36 +0000 (10:06 +0100)]
tests/tr/Test.pm: Prefer en_US.ISO-8859-1 to en_US.iso88591.
Suggestions from James Youngman and Pádraig Brady in
http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/12218/focus=12227
Jim Meyering [Thu, 10 Jan 2008 13:43:17 +0000 (14:43 +0100)]
* README-hacking: Add Git to the list of required tools.
Paul Eggert [Wed, 9 Jan 2008 10:24:12 +0000 (11:24 +0100)]
Fix a minor race condition when using cp -p --parents.
* src/cp.c (make_dir_parents_private): If stat fails on the parent
directory, do not add it to the list of directories whose modes
might need fixing later. Also, do not bother invoking 'stat'
unless the stat results might be needed later.
Jim Meyering [Tue, 8 Jan 2008 14:50:51 +0000 (15:50 +0100)]
parent-perm: avoid a bizarre test failure.
* tests/cp/parent-perm: Accommodate the situation in which
chmod ("dir", 02755) returns 0 yet fails to set the S_ISGID bit.
Jim Meyering [Tue, 8 Jan 2008 09:34:56 +0000 (10:34 +0100)]
Remove uses of now-undefined Makefile variable.
* src/Makefile.am (dir_LDADD, ls_LDADD, vdir_LDADD): Remove uses
of no-longer-defined variable, $(LIB_ACL_TRIVIAL).
Jim Meyering [Mon, 7 Jan 2008 16:10:07 +0000 (17:10 +0100)]
cp (but not copy.c): plug a small leak.
* src/cp.c (do_copy) [--parents]: Free the attribute list.
Jim Meyering [Mon, 7 Jan 2008 13:21:34 +0000 (14:21 +0100)]
Make a racy test failure less likely to happen.
* tests/misc/tty-eof: Uncomment a debug "warn".
This change happens to make this test far less likely to fail.
With that statement commented out, this test would fail about
20% of the time on my desktop. Now, it's gone 100 iterations
in a row with no failure.
Jim Meyering [Mon, 7 Jan 2008 11:17:52 +0000 (12:17 +0100)]
NEWS: Mention the cp bug fix.
Jan Blunck [Mon, 7 Jan 2008 11:13:42 +0000 (12:13 +0100)]
cp --parents: don't use uninitialized memory when restoring permissions
* src/cp.c (make_dir_parents_private): Always stat each source
directory, in case its permissions are required in re_protect,
when setting permissions of a just-created destination directory.
Jim Meyering [Mon, 7 Jan 2008 10:57:27 +0000 (11:57 +0100)]
cp: add a test for today's bug fix.
* tests/cp/parent-perm: New script. Test today's change.
Based on reproducer from Jan Blunck.
* tests/cp/Makefile.am (TESTS): Add parent-perm.
Jim Meyering [Sun, 6 Jan 2008 11:38:18 +0000 (12:38 +0100)]
touch: add a test for today's change.
* tests/touch/now-owned-by-other: New script. Test today's change.
* tests/touch/Makefile.am (TESTS): Add now-owned-by-other.
* tests/Makefile.am (all_t): Add td, a new root-only test.
(td): New target.
* NEWS: Mention the improvement.
Paul Eggert [Sun, 6 Jan 2008 08:54:15 +0000 (09:54 +0100)]
touch: ignore "-d now" option, when appropriate
* src/touch.c (main): Treat "-d now" as if it were absent, if
neither -a nor -m is specified. Problem reported by Dan Jacobson in:
http://lists.gnu.org/archive/html/bug-coreutils/2008-01/msg00010.html
Jim Meyering [Sat, 5 Jan 2008 22:55:01 +0000 (23:55 +0100)]
Avoid tr case-conversion failure in some locales.
* src/tr.c (skip_construct): New function.
(main): When processing a pair of case-converting classes, don't
iterate through the elements of each [:upper:] or [:lower:] class.
Reported by Gerald Pfeifer in
<http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/12218>.
* tests/tr/Test.pm [tolower-F]: New test for the above fix.
[upcase-xtra, dncase-xtra]: New tests, for a related code path.
* NEWS: Mention the tr bug fix.
Jim Meyering [Wed, 2 Jan 2008 17:05:24 +0000 (18:05 +0100)]
* .gitignore: Ignore lzma-compressed files, too.
Signed-off-by: Jim Meyering <meyering@redhat.com>
Jim Meyering [Wed, 2 Jan 2008 17:05:09 +0000 (18:05 +0100)]
Update copyright date.
* tests/sample-test: Likewise.
* doc/coreutils.texi: Likewise.
Signed-off-by: Jim Meyering <meyering@redhat.com>
Jim Meyering [Mon, 31 Dec 2007 10:28:02 +0000 (11:28 +0100)]
Add a syntax check, so this doesn't recur. Reorganize existing checks.
* doc/Makefile.am (sc-exponent-grouping):
(syntax_checks): New variable.
(sc-avoid-io, sc-avoid-non-zero, sc-avoid-timezone):
(sc-avoid-zeroes, sc-use-small-caps-NUL): New rules, extracted
from check-texinfo.
(check-texinfo): Depend on $(syntax_checks).
Jim Meyering [Mon, 31 Dec 2007 10:22:53 +0000 (11:22 +0100)]
doc: Put braces around multi-digit exponents.
Reported by Darrel Francis.
Mike Frysinger [Sun, 30 Dec 2007 08:25:06 +0000 (09:25 +0100)]
* src/dircolors.hin (TERM): Add gnome-256color.
Ralf Wildenhues [Fri, 21 Dec 2007 18:33:43 +0000 (19:33 +0100)]
doc/coreutils.texi: Fix a typo. Avoid the term `relationals'.
Jim Meyering [Thu, 20 Dec 2007 16:38:57 +0000 (17:38 +0100)]
Use comma-separated list in ./configure --help output.
* configure.ac: Map commas to spaces in excluded-program list.
Use a comma-separated list, not a space-separated one.
* m4/include-exclude-prog.m4 (gl_INCLUDE_EXCLUDE_PROG):
Expect list of program names to be comma-separated.
Reported by Jan Bauke Douma.
Jim Meyering [Thu, 20 Dec 2007 13:19:56 +0000 (14:19 +0100)]
Avoid another "make check" failure due to omitted programs.
* tests/test-lib.sh (require_built_): New function.
* tests/misc/groups-version: Use it to skip this test if
either groups or id is not built.
Jim Meyering [Thu, 20 Dec 2007 13:03:12 +0000 (14:03 +0100)]
Avoid spurious "make check" failures due to omitted programs.
* man/Makefile.am (distcheck-hook): Make check rules dependents of
this target, not of check-local, so that people aren't distracted by
failures due to programs omitted via --enable-no-install-program=...
Paul Eggert [Wed, 19 Dec 2007 09:01:25 +0000 (10:01 +0100)]
Improve wording in uniq's --help "Note".
Jim Meyering [Tue, 18 Dec 2007 20:14:49 +0000 (21:14 +0100)]
* src/uniq.c (usage): Say "key-selection", not "field-selection".
Quote example commands consistently.
Jim Meyering [Tue, 18 Dec 2007 10:20:31 +0000 (11:20 +0100)]
Note that sorting uniq's input is often useful.
Suggested by Eric Blake.
Jim Meyering [Sat, 15 Dec 2007 09:13:44 +0000 (10:13 +0100)]
.prev-version: Record previous version: 6.9.91.
Jim Meyering [Sat, 15 Dec 2007 08:44:40 +0000 (09:44 +0100)]
Version 6.9.91.
Jim Meyering [Sat, 15 Dec 2007 08:43:43 +0000 (09:43 +0100)]
* Makefile.cfg (gpg_key_ID): Use new, longer signing subkey.
Jim Meyering [Wed, 12 Dec 2007 09:25:38 +0000 (10:25 +0100)]
* tests/mv/part-symlink: Redirect diff output to stderr.
Jim Meyering [Tue, 11 Dec 2007 20:26:32 +0000 (21:26 +0100)]
Add a test to exercise today's bug fix.
* tests/misc/selinux: Test for today's bug fix.
* NEWS: Mention the SELinux "ls -l" fix.
Paul Eggert [Tue, 11 Dec 2007 20:16:24 +0000 (21:16 +0100)]
"ls -l" wouldn't output "+" on SELinux hosts unless -Z was also given.
* src/ls.c (gobble_file): Also get the file context if -l is specified.
Treat getfilecon failures like file_has_acl failures.
(UNKNOWN_SECURITY_CONTEXT): New constant.
(clear_files): Don't free it.
(gobble_file): Set unknown security contexts to it; that way, we
don't have to have special cases for unknown contexts.
(print_long_format, print_file_name_and_frills): Don't worry
about scontext being null, since it's always some string now.
Jim Meyering [Tue, 11 Dec 2007 18:08:03 +0000 (19:08 +0100)]
* NEWS: Add the "Bug fixes" heading.
Jim Meyering [Sat, 8 Dec 2007 23:56:02 +0000 (00:56 +0100)]
"rm" as root would fail to unlink a non-directory on OS X 10.4.x
* src/remove.c (remove_entry) ["can unlink directories"]: Fix a
mistakenly reversed condition.
* NEWS: Mention this bug fix.
Reported by Pieter Bowman.
Jim Meyering [Sat, 8 Dec 2007 13:08:16 +0000 (14:08 +0100)]
* src/c99-to-c89.diff: Adjust shred.c offsets.
Jim Meyering [Mon, 3 Dec 2007 23:42:18 +0000 (00:42 +0100)]
Reflect change in gnulib: don't include getpagesize.h,
now that it's provided by unistd.h.
* src/cat.c: Don't include getpagesize.h.
* src/copy.c: Likewise.
* src/dd.c: Likewise.
* src/shred.c: Likewise.
* src/split.c: Likewise.
Jim Meyering [Sun, 2 Dec 2007 20:02:26 +0000 (21:02 +0100)]
Copy a .po file into place also when the target doesn't exist.
* bootstrap (gnulib_tool): ... not just when the checksum differs.
So now, if I manually remove po/xx.po, rerunning bootstrap will
copy the latest into place.
Signed-off-by: Jim Meyering <meyering@redhat.com>
Jim Meyering [Sun, 2 Dec 2007 19:53:43 +0000 (20:53 +0100)]
Make my-distcheck depend on "check".
* Makefile.maint (my-distcheck): Also depend on "check", so I can't tag
and release something that fails "make check" (however harmless) when
run in a checked-out-from-git dir, but not in the distributed tarball.
Signed-off-by: Jim Meyering <meyering@redhat.com>
Jim Meyering [Sun, 2 Dec 2007 17:39:40 +0000 (18:39 +0100)]
* NEWS: Add the usual "Noteworthy changes in release 6.9.91..." line.
Jim Meyering [Sun, 2 Dec 2007 15:19:04 +0000 (16:19 +0100)]
Remove just-installed su, if unable to make it set-UID root.
Normally, su isn't even installed. However, if you configure with
--enable-install-program=su, and then install with insufficient
privileges, we now make sure to remove the just-installed binary.
* src/Makefile.am (install-exec-hook): Rename from install-exec-local,
so that this rule is guaranteed to be run *after* installation.
If unable to chown and chmod the installed "su" program, remove it.
Reported by Greg Schaefer.
Bob Proulx [Sun, 2 Dec 2007 07:57:38 +0000 (08:57 +0100)]
Make test script, existing-perm-race, executable.
* tests/cp/existing-perm-race: Update file mode.
Jim Meyering [Sat, 1 Dec 2007 22:11:13 +0000 (23:11 +0100)]
.prev-version: Record previous version: 6.9.90.
Jim Meyering [Sat, 1 Dec 2007 21:46:33 +0000 (22:46 +0100)]
Version 6.9.90.
Jim Meyering [Sat, 1 Dec 2007 21:45:56 +0000 (22:45 +0100)]
NEWS: Remove the now-untrue statement about cp vs. dangling symlinks
Jim Meyering [Sat, 1 Dec 2007 18:52:45 +0000 (19:52 +0100)]
Change release procedure: tag *before* running e.g., "make stable".
* Makefile.maint (vc-dist): Don't tag. Now, you must apply the tag
before running "make beta", "make stable", etc.
(vc-tag-check): Remove rule. No longer makes sense.
Jim Meyering [Sat, 1 Dec 2007 18:03:00 +0000 (19:03 +0100)]
* Makefile.maint (vc-tag-check): Correct check for existing git tag.
Jim Meyering [Sat, 1 Dec 2007 17:50:40 +0000 (18:50 +0100)]
Defer NEWS and ChangeLog checks until after the version-changing tag.
* Makefile.maint (alpha beta major): Don't depend on the
news-date-check changelog-check targets. They must fail before
applying the version-changing tag. Instead, run them after "vc-dist".
Jim Meyering [Sat, 1 Dec 2007 17:05:53 +0000 (18:05 +0100)]
* NEWS: Mention some of the SELinux changes.
Record release date and new version number.
* src/stat.c (main): Adjust a comment.
Jim Meyering [Sat, 1 Dec 2007 16:42:40 +0000 (17:42 +0100)]
TODO: Add entries (documentation needed); remove the "add mktemp program" one.
Jim Meyering [Sat, 1 Dec 2007 16:04:30 +0000 (17:04 +0100)]
Add "extern" keyword to declaration of cp_options_default.
* src/copy.c (cp_options_default): Mark as "extern", so the
"sc_tight_scope" part of "make distcheck" passes.
Jim Meyering [Sat, 1 Dec 2007 15:18:00 +0000 (16:18 +0100)]
Change comments: say bug present up to coreutils-6.9, not fixed in 6.10.
* tests/cut/Test.pm: Adjust comment.
* tests/misc/cut: Likewise.
* tests/misc/ls-misc: Likewise.
* tests/misc/od: Likewise.
* tests/misc/stty-invalid: Likewise.
* tests/tr/Test.pm: Likewise.
Paul Eggert [Sat, 1 Dec 2007 09:10:52 +0000 (10:10 +0100)]
Add a test for cp -p and existing file permissions.
* tests/cp/Makefile.am (TESTS): Add existing-perm-race.
* tests/cp/existing-perm-race: New test. It isn't much of a
test yet, since it's hard to catch the race, but it has a FIXME
that will let us do a better test later.
Paul Eggert [Sat, 1 Dec 2007 09:09:57 +0000 (10:09 +0100)]
Fix a security race with "cp -p A B" when B already exists.
* src/copy.h (struct cp_options): New member owner_privileges.
* src/copy.c (USE_ACL): Define to 0 if not defined, for convenience.
(owner_failure_ok): New function.
(set_owner): Avoid a security-related race by doing an extra chmod
first if it looks like there might be trouble right after a chown.
Accept a source struct stat rather than a uid and gid, and
accept a boolean NEW_DST and destination struct stat.
All callers changed.
* src/copy.h (cp_options_default): New function, replacing the
old chown_privileges.
* src/copy.c (cp_options_default): Likewise.
* src/cp.c (cp_option_init): Use it.
* src/install.c (cp_option_init): Likewise.
* src/mv.c (cp_option_init): Likewise.
Jim Meyering [Fri, 30 Nov 2007 16:05:07 +0000 (17:05 +0100)]
Avoid a spurious test failure when build directory is set-GID.
* tests/cp/fail-perm: Ensure that '.'s set-GID bit is off.
Jim Meyering [Fri, 30 Nov 2007 12:45:38 +0000 (13:45 +0100)]
Be extra careful to quote $abs_top_builddir-derived names.
* tests/misc/ls-misc (shell_quote): New function.
Use it to quote file names derived from $abs_top_builddir,
in case it contains shell meta-characters. This is not currently
needed, since CuTmpdir detects the fishy name and skips the test.
But it's important enough to add the extra protection.
Reported by Ralf Wildenhues.
Jim Meyering [Fri, 30 Nov 2007 12:40:25 +0000 (13:40 +0100)]
Include test name in the "unsafe working directory name" diagnostic.
* tests/CuTmpdir.pm (import): If $ME is '-', use $prefix.
Ralf Wildenhues [Fri, 30 Nov 2007 11:14:57 +0000 (12:14 +0100)]
Add quotes to protect against white space in build dir name.
* tests/check.mk (TESTS_ENVIRONMENT): Quote $(abs_srcdir).
* tests/chmod/setgid: Quote absolute names.
* tests/misc/help-version: Likewise.
* tests/misc/pwd-unreadable-parent: Likewise.
* tests/rmdir/ignore: Likewise.
* tests/test-lib.sh: Likewise.
Ralf Wildenhues [Fri, 30 Nov 2007 09:25:09 +0000 (10:25 +0100)]
Define `tst', for CU_TEST_NAME.
* build-aux/check.mk (am__check_pre): Set `tst', for
CU_TEST_NAME in tests/check.mk.
Ralf Wildenhues [Fri, 30 Nov 2007 07:53:38 +0000 (08:53 +0100)]
* tests/CuTmpdir.pm (END): Do not do the cleanup if $dir is not
defined, because it then goes wild and changes the mode of all
directories below $HOME. Undefined $dir can happen if the test
is to be skipped because of an unsafe working directory name.