X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=ChangeLog;h=bb3a1013b9b2d5b18b5629c9298e3a7269c93a59;hb=6fed155b3e90a247158b29d1ffe75ddba9ab4208;hp=55d521abff46a1766bf4d8c08971fc9bcaef4752;hpb=ee168310ec4227174ace489bf5f81f8c2f91cde0;p=debian%2Ftar diff --git a/ChangeLog b/ChangeLog index 55d521ab..bb3a1013 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,315 @@ +2011-03-12 Sergey Poznyakoff + + Version 1.26 + * NEWS, configure.ac: Update. + * po/POTFILES.in: Remove paxexit.c (see bb971a1e). + +2011-03-08 Paul Eggert + + --atime-preserve=replace: fix correctness and performance bugs + reported by Eric Blake in + . + * src/compare.c (diff_file): Do not restore atime of size-zero + files. + * src/create.c (dump_file0): Likewise. Also, do not restore atime + when fd is zero, because that indicates a file we haven't opened. + +2011-02-23 Paul Eggert + + * doc/tar.texi: Adjust example commands and output for accuracy. + The original problem was reported by Michael Witten in + . + +2011-02-16 Paul Eggert + + tar: if (p) free (p); -> free (p); + There is no longer (since SunOS 4) any need to guard against + free (NULL), so replace each "if (p) free (p);" with "free (p);". + From Jim Meyering in + . + * src/incremen.c (scan_directory, read_directory_file): As above. + (try_purge_directory): Likewise. + * src/list.c (read_header): Likewise. + * src/misc.c (assign_string): Likewise. + +2010-12-14 Sergey Poznyakoff + + Correctly store long sparse file names in PAX archives. + * src/sparse.c (pax_dump_header_1): Make sure the created header + name is + shorter than NAME_FIELD_SIZE bytes. + * tests/sparse04.at: New testcase. + * tests/Makefile.am (TESTSUITE_AT): Add sparse04.at. + * tests/testsuite.at: Include sparse04.at. + * NEWS: Update. + +2010-12-07 Paul Eggert + + tests: make the truncate test smaller and less buggy (tiny change) + Reported by Solar Designer in + . + * tests/truncate.at: Use a smaller test case, and make its + race condition less likely. + +2010-11-27 Paul Eggert + + tests: skip SIGPIPE-dependent tests in environments ignoring + SIGPIPE + Problem reported by Sven Joachim in + . + * tests/remfiles01.at: Use AT_SIGPIPE_PREREQ. + * tests/sigpipe.at: Likewise. + * tests/testsuite.at (AT_SIGPIPE_PREREQ): New macro. + +2010-11-25 Paul Eggert + + tar: work around NetBSD and Tru64 symlink incompatibility + with POSIX + Problem reported by Bruno Haible in + . + * src/extract.c (maybe_recoverable): Also treat EFTYPE (if + defined) + and ENOTSUP like ELOOP. + +2010-11-24 Paul Eggert + + tar: adjust to paxutils change: paxexit.c -> paxexit-status.c + * lib/Makefile.am (libtar_a_SOURCES): paxexit.c renamed to + paxexit-status.c. + + tar: remove unused function dir_removed_diag + * src/common.h (dir_removed_diag): Remove unused decl. + * src/misc.c (dir_removed_diag): Remove unused function. + +2010-11-23 Paul Eggert + + tar: work around FreeBSD symlink incompatibility with POSIX + * src/extract.c (maybe_recoverable): Treat EMLINK like ELOOP, for + FreeBSD. Problem reported by Christian Weisgerber in + . + + * src/names.c: tar: fix bug with --one-file-system + --listed-incremental + Problem (and idea for fix) reported by Martin Weigel + . + * src/common.h (is_individual_file): Remove decl. + * src/create.c (dump_file0): Replace "is_individual_file (p)" + with "top_level". + * src/incremen.c (procdir): Replace "!is_individual_file + (name_buffer)" with "st->parent". Fix bug with --one-file-system + and --listed-incremental. + * src/names.c (individual_file_table, register_individual_file): + (is_individual_file): Remove. All uses removed. + + tests: new test listed04 for --one-file-system + --listed-incremental + * tests/Makefile.am (TESTSUITE_AT): Add listed04.at. + * tests/listed04.at: New file. + * tests/testsuite.at: Include it. + + scripts: fix option parsing + Problem reported by Dennis Wydra in + . + * scripts/backup.in: Accept "-l LEVEL". Be more systematic about + backslashes inside ``; it shouldn't matter for modern shells but + it might matter for older ones. + * scripts/restore.in: Likewise. + * scripts/backup.in: Adjust implementation of -t/--time to match + the new implementation of -l/--level. + +2010-11-15 Sergey Poznyakoff + + Issue a warning if the archive being compared contais transformed + file names. + * src/common.h (transform_program_p): New proto. + * src/transform.c (transform_program_p): New function. + * src/compare.c (verify_volume): Warn if the archive contains + transformed file names. + + Minor change. + * doc/tar.texi: Reword the description of decompress-program. + +2010-11-15 Paul Eggert + + tar: fix --verify option, which broke in 1.24 + * NEWS: Document this. + * src/compare.c (verify_volume): Decode the header before invoking + diff_archive, as diff_archive no longer does this as of the + 2010-06-28 commit. Also, don't try to invoke diff_archive on a + zero block. + * tests/Makefile.am (TESTSUITE_AT): Add verify.at. + * tests/testsuite.at: Include verify.at. + * tests/verify.at: New file. + +2010-11-08 Paul Eggert + + Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/tar + +2010-11-08 Jim Meyering + + tests: avoid spurious failure when VERSION_CONTROL envvar is set + * tests/backup01.at: Unset VERSION_CONTROL. Otherwise, + when set to e.g., 'always', it would cause this test to fail. + +2010-11-07 Sergey Poznyakoff + + Version 1.25 + * configure.ac: Version 1.25 + * NEWS: Describe the changes. + +2010-11-05 Sergey Poznyakoff + + Run alternative decompression programs if the principal one is + not available. + Some compression programs are able to handle various compression + formats + (e.g. `gzip' can decompress files created by `compress', `xz' + is able + to handle lzma, etc.) Tar tries to use such programs for + decompression + if the principal decompressor cannot be started. + + * src/buffer.c (compress_type): Swap ct_none and ct_tar. + (archive_compression_type): New static variable. + (zip_magic): Remove program and option fields. + (zip_program): New structure and static. + (compress_program): Remove macro. + (find_zip_program): New static function. + (first_decompress_program,next_decompress_program): New functions. + (open_compressed_archive): Set archive_compression_type instead of + use_compress_program_option. + * src/common.h (first_decompress_program) + (next_decompress_program): New functions. + (WARN_DECOMPRESS_PROGRAM): New flag. + (WARN_VERBOSE_WARNINGS): Include WARN_DECOMPRESS_PROGRAM. + * src/warning.c (warning_args): Add "decompress-program". + (warning_types): Add WARN_DECOMPRESS_PROGRAM. + * src/system.c (run_decompress_program): New function. + (sys_child_open_for_uncompress): Use run_decompress_program + instead of calling execlp directly. + +2010-11-02 Paul Eggert + + tests: fix some issues with signals, timestamps, "test" typo + * tests/extrac17.at: Add --warning=no-timestamp, to avoid + bogus warning due to NFS clock skew. + * tests/remfiles01.at: Discard diagnostics that some shells + generate about broken pipes. + * tests/sigpipe.at: Likewise. + * tests/remfiles01.at: Fix typo: "test $EC" was written where + "test $EC -ne 0" was intended. + +2010-11-01 Sergey Poznyakoff + + Fix extraction of device nodes. + * src/extract.c (extract_node): Do not mask out node type. + The bug was introduced in commit ea964cce. + +2010-10-28 Paul Eggert + + tar: don't cross struct member boundaries with OLDGNU_MAGIC + * src/create.c (write_gnu_long_link, start_header): Access + header->buffer + offsetof (struct posix_header, magic), instead of + header->header.magic, when reading or writing the OLDGNU_MAGIC + pattern. The code violates the C standard without this change, + and GCC warns about this if fortify checking is enabled. It's not + a bug on traditional (i.e., non-debugging) platforms, but it does + violate the C standard so it should be fixed. Problem originally + reported by John Emil Karlson in + . + * src/list.c (decode_header): Likewise. + + tests: port to sh variants that squirrel away file descriptors + OpenBSD /bin/sh, and some other sh variants, squirrel away file + descriptors before closing them. For example, for "cat 3<&-" they + first dup file descriptor 3 to a fd that is 10 or greater, then + close 3 (because if "cat" had been a builtin command like ":" then + they would have wanted to avoid the fork and restore the fd after + ":" finished); and they treat ordinary (forking) commands the same + as builtin commands. This approach fails after "ulimit -n 10". + Work around this deficiency by closing the file descriptors before + invoking ulimit. Problem reported by Christian Weisgerber in + ; + solution suggested by Jilles Tjoelker in + . + + * tests/extrac11.at (scarce file descriptors): Close file + descriptors before invoking ulimit -n. + +2010-10-27 Sergey Poznyakoff + + Transform file names when updating and appendig to archives. + This complements 28e91b48. + + * src/common.h (transform_stat_info): New prototype. + * src/list.c (transform_stat_info): Remove static qualifier. + * src/update.c (update_archive): Call transform_stat_info. + * tests/Makefile.am (TESTSUITE_AT): Add append03.at + * tests/testsuite.at: Include append03.at + +2010-10-27 Paul Eggert + + tests: port to Solaris diff + * tests/extrac13.at: Don't assume that "diff -c" outputs nothing + when there are no differences. This is not true on Solaris, + where it outputs "No differences encounted". + + tar: fix -x --overwrite bug (no --dereference, ! O_NOFOLLOW) + This bug was discovered on Solaris 8. On older hosts lacking + O_NOFOLLOW, tar -x --overwrite (without --dereference) follows + symbolic links, causing the "extract over symlinks" test to fail. + + * src/extract.c (open_output_file): If O_NOFOLLOW is needed but + does not work, check for a symlink separately. + + tar: don't use "((" in shell scripts + * tests/extrac11.at: Replace "((" with "( (" in shell scripts, as + "((" is not portable to the Korn shell, and POSIX 1003.1-2008 says + that "((" is not portable. + +2010-10-26 Sergey Poznyakoff + + Make sure name matching occurs before name transformation. + The commit 9c194c99 altered that order. + + * src/list.c (transform_stat_info): New function. Split off from + decode_header. + (read_and): Call transform_stat_info right before do_something, + and after deciding if we should proceed with this member name, + so that name matching occurs before name transformation. + + * tests/extrac17.at: New file. + * tests/Makefile.am (TESTSUITE_AT): Add extrac17.at + * tests/testsuite.at: Include extrac17.at. + +2010-10-26 Paul Eggert + + tar: don't assume stdin is open when testing fd limits + * tests/extrac11.at: Redirect stdin from /dev/null, in case + the parent 'make' is running with stdin closed. + +2010-10-26 Sergey Poznyakoff + + Further fixes in bootstrap. + * bootstrap: Restore the default for gnulib_path + (symlink_to_dir): Re-apply 67cad07. + +2010-10-26 Paul Eggert + + tar: fix bug with -C and extracting directories + Problem reported by Denis Excoffier in + . + + * src/extract.c (extract_dir): Use mkdirat, not mkdir. + * tests/extrac16.at: New file, to test for this bug. + * tests/Makefile.am (TESTSUITE_AT): Add it. + * tests/testsuite.at: Include it. + + This file is a placeholder. It will be replaced with the actual + ChangeLog + by make dist. Run make ChangeLog if you wish to create it + earlier. + 2010-10-25 Sergey Poznyakoff Version 1.24 @@ -1021,9 +1333,8 @@ * tests/extrac05.at: Skip test if creating sparse file fails. - Fix eventual memory override and fd exhaustion in create.c - Both bugs reported by Kamil Dudka. - + Fix eventual memory override and fd exhaustion in create.c Both + bugs reported by Kamil Dudka. * src/create.c (check_exclusion_tags): Do not keep pointer to a location within tagname: it may change after xrealloc. Use byte offset instead.