+2005-04-14 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/list.c: Handle Solaris 'X' type flag
+ * src/tar.h (SOLARIS_XHDTYPE): New define
+
+2005-04-06 Sergey Poznyakoff <gray@mirddin.farlep.net>
+
+ * src/tar.c: Minor fixes to text messages. Proposed by Benno
+ Schulenberg.
+ * src/extract.c: Likewise
+ (extract_file): Assign orig_file_name
+ to save_name uniformly over the program. This fixes matching
+ directory names at the start of an archive volume.
+ * src/buffer.c (flush_write): Warn when the name of the archive
+ straddling volume boundary is longer than 100 characters. Earlier
+ behavior was to issue a fatal error.
+ (struct zip_magic): Reverted part of changes from 2005-04-04.
+ They make the maintenance too costly. Removing `unsigned'
+ qualifier from `magic' member should be enough.
+ * src/compare.c (diff_init): Read directory file if in listed
+ incremental. This prevents spurious 'Contents differ' diagnostics.
+ (diff_archive): Minor fixes to text messages
+ (diff_file,diff_dumpdir,diff_multivol): Assign orig_file_name
+ to save_name uniformly over the program. This fixes matching
+ directory names at the start of an archive volume.
+ * src/create.c: Assign orig_file_name
+ to save_name uniformly over the program. This fixes matching
+ directory names at the start of an archive volume.
+ * src/list.c: Likewise
+
+ * tests/multiv03.at: Modified to match the new behavior
+ * tests/multiv04.at: New file. Test splittind directory members between
+ the archive volumes.
+ * tests/Makefile.am: Add multiv04.at
+ * tests/testsuite.at: Likewise.
+
+2005-04-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ * configure.ac (AC_CONFIG_AUX_DIR): Rename from config to build-aux,
+ for reasons discussed in the thread beginning at
+ <http://lists.gnu.org/archive/html/bug-gnulib/2005-03/msg00119.html>.
+ * .cvsignore: Remove config; add build-aux.
+
+ * src/buffer.c (struct zip_magic): Use char arrays, not pointers.
+ The unsigned char * pointer ran afoul of pedantic C compilers, and
+ we didn't need pointers anyway. Put the size field before the
+ data to avoid unnecessary padding. All uses changed.
+ (magic) Make it const, since it doesn't change. All uses changed.
+
+2005-04-02 Paul Eggert <eggert@cs.ucla.edu>
+
+ * src/xheader.c (decode_record): Don't dump core when given
+ a corrupted extended header. Problem reported by Jim Meyering.
+ Also, check for other ways that the header might be invalid,
+ e.g., missing newline at end. Do not allow keys with nulls.
+ Allow blanks before and after length, as POSIX requires.
+ Do not allow leading "-" in length. Check for length overflow.
+ (xheader_decode, xheader_decode_global): Let decode_record
+ check for exhaustion of record.
+ (xheader_read): Null-terminate the extended record;
+ decode_record relies on this.
+
+2005-03-21 Paul Eggert <eggert@cs.ucla.edu>
+
+ * bootstrap (TP_URL): Change from
+ <http://www2.iro.umontreal.ca/~gnutra/po/maint/tar/> to
+ <http://www.iro.umontreal.ca/translation/maint/tar/> to avoid
+ some redirection glitches.
+ Use "trap - 0" rather than "trap 0" to fix a POSIX-conformance bug.
+ * doc/.cvsignore: Change "tar.info" to "tar.info*". Sort.
+ * lib/.cvsignore: Add intprops.h (new gnulib file).
+
+2005-03-04 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/list.c (print_header): Print UID/GID in case of
+ empty user/group name. This could occur when dumping
+ files belonging to non-existing users and when listing
+ broken archives.
+ Reported by Igor Lautar.
+
+ * src/create.c: Correctly parse empty uname/gname
+ * src/sparse.c (sparse_scan_file): Bugfix. offset had
+ incorrect type.
+
+ * scripts/backup.in: Use `head -n 1'. Provide missing
+ argument to ${MT_STATUS}. Proposed by Jan Merka.
+ * scripts/backup.sh.in: Likewise. Fixed typo in
+ MT_OFFLINE assignment.
+ * scripts/restore.in (restore_fs): Use root_fs
+
+2005-02-15 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/create.c: Replace strdup with xstrdup
+ * src/names.c: Likewise
+ * src/tar.c: Likewise
+
+ * tests/append01.at: Added reference to bug-tar archive
+ * tests/listed02.at: Use -print with find.
+
+2005-02-11 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * THANKS: Added Tim Adye. Fixed UTF.
+ * src/list.c (read_header): Removed assignment to
+ oldgnu_header.isextended. It was breaking append mode.
+
+ * tests/append01.at: New test.
+ * tests/Makefile.am: Added append01.at
+ * tests/testsuite.at: Likewise
+
+2005-02-06 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * gnulib.modules: New file. List of required gnulib
+ modules.
+ * bootstrap: Merge list of required modules from
+ paxutils with that from tar proper.
+ * src/tar.c: Various fixes in help and diagnostic messages.
+
+2005-02-05 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/common.h (EXTRACT_OVER_PIPE): New macro
+ * src/compare.c: Code clean up.
+ * src/extract.c (extract_archive): Do not check for
+ EXTRACT_OVER_PIPE, decode_options() does this.
+ * src/misc.c (exec_error,fork_error,dup2_error)
+ (pipe_error): Removed unneeded functions.
+ * src/system.c (sys_exec_command): Use xclose, xpipe,
+ xfork, xdup2 and exec_fatal.
+ * src/tar.c (options): Improved sorting. Document --backup=off.
+ (decode_options): Clear backup_option if necessary.
+
+2005-02-05 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ Initial implementation of --to-command option proposed
+ by Hansjoerg Lipp.
+
+ * bootstrap: Get setenv module from gnulib
+ * src/buffer.c: Do not use 8-bit chars in comments
+ * src/common.h (to_command_option)
+ (ignore_command_error_option): New globals
+ (sys_exec_command,sys_wait_command): New commands
+ * src/extract.c (extract_file): Handle to_command_option
+ Fix error recovery: decrease `size' by `written', not
+ by `count', otherwise tar misses the next header
+ Do not diagnose write error if to_command_option
+ is set, since the command may have exited prematurely.
+ It would be better to check for sigpipe, though.
+ (prepare_to_extract): Handle to_command_option
+ * src/misc.c (exec_error, fork_error, dup_error)
+ (pipe_error): New functions
+ * src/system.c (sys_exec_command)
+ (sys_wait_command): New functions
+ * src/tar.c: Handle new options --to-command,
+ --ignore-command-error
+ * THANKS: Added Hansjoerg Lipp
+
+2005-02-03 Paul Eggert <eggert@cs.ucla.edu>
+
+ * src/list.c (from_header): New arg OCTAL_ONLY, normally false.
+ All uses changed. Fix typo that sometimes suppressed all "Archive
+ contains obsolescent base-64 headers" warnings, not just the first
+ one.
+ (tar_checksum): Accept only octal checksums, since they aren't
+ supposed to overflow into weird formats.
+
+ Adjust to gnulib changes.
+ * lib/.cvsignore: Add chdir-long.c, chdir-long.h, memrchr.c,
+ memrchr.h, openat.c, openat.h. Remove pathmax.h (added by
+ mistake, perhaps?), sysexit.h (my typo), xstrdup.c (gnulib removed
+ this file). Sort entries.
+
+2005-02-04 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/extract.c: Further rewrite.
+ * src/buffer.c: Removed unused variables.
+ * src/list.c: Likewise
+ * src/tar.c (update_argv): Changed type to void
+
+ * src/common.h (OLDGNU_NAME_FIELD_SIZE): New constant
+ * src/create.c (start_private_header,write_header_name)
+ (dump_hard_link): Restore compatibility with 1.13.25
+ * src/extract.c (extract_archive): Rewritten
+ * src/list.c: Add translators' comments
+ * src/tar.c (options) Minor spelling fix
+ * tests/star/quicktest.sh: Determine path to the tar executable.
+
+2005-02-03 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * po/POTFILES.in: Added tests/genfile.c
+ * src/buffer.c (short_read): Use ngettext()
+ (new_volume): use quote().
+ * src/create.c: Use quote()
+ * src/extract.c: Likewise
+ * src/xheader.c: Likewise
+ * src/misc.c: Add comments to translators
+
+ * tests/same-order01.at: sort ls output
+ * tests/sparse01.at (RE_CHECK): Added missing space
+
+ * tests/sparse02.at: Test extracting sparse files over a pipe.
+ * tests/Makefile.am: Added sparse02.at
+ * tests/testsuite.at: Likewise
+ * tests/listed02.at: Skip the test on filesystems that do not
+ update ctime of a file when renaming it. To be reverted when
+ the new incremental mode is ready.
+ * tests/sparse01.at: Extract and compare sparse file
+
+2005-02-02 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/sparse.c: Extract sparse files even if the output
+ fd is not seekable.
+
+2005-02-01 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * bootstrap: Add a comment to lib/Makefile.am saying that this
+ is an autogenerated file.
+ Exit with code 1 if any of autotools fails.
+ * lib/Makefile.tmpl: Insert Emacs magic to the first line.
+ * tests/Makefile.am: Add append.at
+
+ * m4/.cvsignore: Ignore all *.m4 files
+
+2005-01-18 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ Rewritten handling of -T (--files-from) option. Now it
+ inserts the file names immediately into argv array which allows
+ for:
+ 1) any valid tar options (including another -T) to be used in the file
+ 2) any number of -T options to be given in command line
+
+ * configure.ac: Raised version number to 1.15.2
+ * src/common.h: Include obstack.h
+ (files_from_option): Removed
+ (unquote_option): New variable
+ (stat_fatal): New function
+ (name_close): Removed function.
+ * src/incremen.c: Remove inclusion of obstack.h
+ * src/xheader.c: Likewise.
+ * src/misc.c (stat_fatal): New function
+ * src/names.c (name_file): Removed variable.
+ (read_name_from_file): Removed function. All callers changed.
+ (name_close): Removed function. All callers changed.
+ * src/tar.c: New options --unquote (--no-unquote) and
+ --add-file
+ (add_file_id,read_name_from_file,update_argv): New functions
+ (parse_opt): Rewritten handling of -T option. Handle hidden
+ --HANG option for debugging purposes.
+ (decode_options): Init unquote_option to true. Init argv_stk.
+ Remove unneeded references to files_from_option
+
+ * doc/tar.texi: Document new options.
+ Moved rendition macros and option value definitions into
+ separate files
+ * doc/rendition.texi: New file
+ * doc/value.texi: New file
+ * doc/Makefile.am: Updated
+
+2005-01-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ * tests/testsuite.at (RE_CHECK): Use "join - file", not
+ "join file -", to work around a bug in Solaris 8 join.
+ Problem reported by Tomohiro Suzuki.
+
+2005-01-13 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/list.c (read_header): Fixed calculation of the
+ size for GNU long name/link. Tar was reading one block
+ more if name_size was divisible by 512. Thanks Josef
+ Bauer.
+ * tests/long01.at: New file. Test listing of GNU long names
+ divisible by 512.
+ * tests/pipe.at: Sort tar output.
+ * tests/Makefile.am: Added long01.at
+ * tests/testsuite.at: Likewise.
+ * THANKS: Added Josef Bauer
+ * lib/.cvsignore: Updated
+ * m4/.cvsignore: Updated
+ * NEWS: Updated
+
+2005-01-11 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * directory: Updated for 1.15.1
+ * doc/Makefile.am: Use gendocs.sh to generate web documentation
+ * doc/gendocs_template: Template file for gendocs.sh
+ * doc/tar.texi: Updated docs for --[no-]same-permissions
+ * src/tar.c: Reworded docstrings for --[no-]same-permissions
+
+2005-01-06 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * bootstrap: Create m4/paxutils.m4
+ * configure.ac: Call tar_PAXUTILS
+ * tests/options02.at: Test that tar correctly handles non-option
+ arguments interspersed with options.
+ * tests/Makefile.am: Add options02.at
+ * tests/testsuite.at: Likewise
+ * tests/listed02.at: Do not create useless directory
+
+2005-01-05 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/tar.c (parse_opt): Bugfix: Use ARGP_KEY_ARG. Thanks
+ Mike Frysinger <vapier@gentoo.org> for reporting.
+
+2005-01-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ * lib/Makefile.tmpl (localedir.h): Omit needless quotes and a
+ needless sed command. Problem reported by Paul Jarc.
+
+2004-12-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ Accommodate latest gnulib.
+ * doc/.cvsignore: Add getdate.texi.
+ * bootstrap: Do not treat alloca-opt specially; this is no
+ longer needed (and breaks builds) with latest gnulib.
+
+2004-12-22 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/tar.c (main): Reverted recent changes (#ifdef).
+
+2004-12-21 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * configure.ac: Raise version number to 1.15.1
+ Check for locale.h
+ * NEWS: Entry for 1.15.1
+ * src/buffer.c: Bugfix. Changes introduced 2004-11-26
+ broke extraction from stdin.
+ * src/list.c (from_header, tar_checksum): Changed declaration.
+ All callers updated.
+ * src/common.h: Likewise
+ * src/tar.c (main): Protect invocation of setlocale by
+ ifdef.
+
+ * tests/comprec.at: New test
+ * tests/pipe.at: New test
+ * tests/Makefile.am (comprec.at,pipe.at): New tests
+ * tests/testsuite.at: Likewise
+ * tests/gzip.at: Use AT_GZIP_PREREQ
+ * tests/star/pax-big-10g.at: Likewise
+ * tests/star/ustar-big-2g.at: Likewise
+ * tests/star/ustar-big-8g.at: Likewise
+
+ * tests/extrac04.at: Discard stderr from sort, on some
+ systems it spits out lots of irrelevant info.
+ * tests/listed02.at: Likewise
+
+ * doc/index.html.in: Rewritten in xhtml to follow recent
+ GNU site standards.
+ * THANKS: Updated
+
+2004-12-20 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ Released version 1.15. Sources up to this point are
+ tagged release_1_15.
+
+ * configure.ac: Raised version number to 1.15
+ * NEWS: Likewise
+ * directory: Updated
+ * bootstrap (update_po): Give -r to wget. Always remove index.html
+ Ignore alloca-opt module (it duplicates alloca)
+
+ * tests/Makefile.am: Distribute star/quicktest.sh
+ * tests/star/README: Document quicktest.sh
+ * tests/star/qucktest.sh: Removed.
+ * tests/star/quicktest.sh: New file.
+
+2004-12-18 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * NEWS: Updated
+ * doc/tar.texi: Document auto-detection of compressed archive
+ formats.
+ * src/tar.c (decode_options): Ignore --seek if used with --delete.
+ Delete.c is based on the assumption that the archive is being
+ actually read, not lseeked.
+
+ * tests/delete05.at: New file
+ * tests/extrac02.at: Fixed typo in AT_SETUP
+ * tests/Makefile.am: Added delete05.at
+ * tests/testsuite.at: Likewise.
+
+2004-12-17 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/delete.c (delete_archive_members): Bugfix: when
+ attempting to delete an nonexistent member, the last
+ blocking_factor blocks were zeroed.
+
+2004-12-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ * TODO: Mention sub-second resolution, lutimes, lchmod.
+
+2004-11-27 Paul Eggert <eggert@cs.ucla.edu>
+
+ Adjust to recent gnulib changes.
+ * doc/getdate.texi: Remove, since bootstrap gets it from gnulib now.
+ * .cvsignore: Add rmt, rmt/*, rmt/*/*.
+ * lib/.cvsignore: Add allocsa.c, allocsa.h, allocsa.valgrind,
+ charset.alias, config.charset, getcwd.c, getcwd.h, localcharset.c,
+ localcharset.h, ref-add.sed, ref-add.sin, ref-del.sed,
+ ref-del.sin, setenv.c, setenv.h, unsetenv.c. Remove pathmax.h,
+ xstrdup.c.
+ * m4/.cvsignore: Add allocsa.m4, eealloc.m4, getcwd-path-max.m4,
+ localcharset.m4, realloc.m4, setenv.m4. Remove malloc.m4,
+ pathmax.m4, realloc.m4.
+