+2004-02-15 Paul Eggert <eggert@twinsun.com>
+
+ Fix Debian bug 230872, originally reported by Jeff King in
+ <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=230872>.
+
+ * doc/tar.texi (posix compliance): Remove. The whole section
+ was a misunderstanding of what POSIXLY_CORRECT is supposed to
+ mean. The GNU Coding Standards says that POSIXLY_CORRECT
+ is for disabling extensions that are incompatible with POSIX:
+ it is not for disabling compatible extensions. All references
+ to this section removed.
+ (posix): This format is created only if the posix format is
+ specified; it is no longer created if gnu format is specified
+ and POSIXLY_CORRECT is set.
+ * src/tar.c (decode_options): Ignore POSIXLY_CORRECT.
+ POSIX does not specify the behavior of tar, so we should
+ not worry about POSIXLY_CORRECT here.
+
+2004-01-21 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * Makefile.am: Removed m4
+ * configure.ac: Require automake-1.8/autoconf-2.59. Removed
+ m4/Makefile.
+ * README-alpha: Updated
+ * bootstrap: Updated TP URL, improved help output. Default
+ to :ext:anoncvs and set CVS_RSH, unless already set.
+ * m4/Makefile.am: Removed
+
+2004-01-21 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * bootstrap: Bugfix by Marco Gerards <metgerards@student.han.nl>:
+ Use $option instead of $1 so all options will be parsed.
+
+2004-01-04 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ Started rewriting buffer.c ...
+
+ * bootstrap: New option --no-po
+ * src/buffer.c (new_volume,check_label_pattern): Changed return type.
+ (time_to_start_writing): Changed data type
+ (file_to_switch_to): Removed. Variable never assigned to.
+ (open_archive) Moved option compatibility checks to tar.c
+ Other minor changes.
+ * src/common.h (maybe_backup_file): Changed return type
+ * src/misc.c: Likewise.
+ * src/create.c: Updated invocations of safer_name_suffix
+ * src/extract.c: Likewise
+ * src/delete.c: Updated assignment to write_archive_to_stdout
+ * src/tar.c (decode_options): More option compatibility checks
+ (moved from buffer.c)
+ * src/update.c (time_to_start_writing): Changed data type.
+ * tests/recurse.sh: New test case.
+ * tests/mksparse.c: New file.
+ * tests/Makefile.am: Added recurse.sh and mksparse.c
+
+2004-01-02 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/sparse.c (sparse_diff_file): Bugfix. Thanks
+ Martin Simmons for the patch.
+ * src/create.c (dump_dir0): Bugfix. Thanks Piotr Czerwinski
+ <pius@pld-linux.org> for the patch.
+
+2003-12-26 Paul Eggert <eggert@twinsun.com>
+
+ Synchronize with Gettext 0.13.1, Automake 1.8, Autoconf 2.59,
+ and translation website.
+
+ * bootstrap: Don't bother skipping codeset.m4, glibc21.m4,
+ intdiv0.m4, inttypes_h.m4, inttypes.m4, inttypes-pri.m4,
+ isc-posix.m4, and lcmessage.m4 from gnulib. This list of files is
+ a bit obsolete anyway, now that gettext 0.13.1 is out. Also, the
+ files are replaced by autoreconf. Also, there seems to be a bug
+ in gettext/autoconf/automake if we try to omit these files after
+ autoreconf has replaced them, even though the gettext manual says
+ they're optional. So give up and just include them for now, even
+ though they make 'configure' longer and slower.
+
+ Change translation URL from
+ <http://www.iro.umontreal.ca/contrib/po/maint/tar/> to
+ <http://www2.iro.umontreal.ca/~gnutra/po/maint/tar/> to
+ accommodate translator website revamp.
+
+ Fail if autoreconf fails.
+
+ * m4/.cvsignore: Add intmax.m4, longdouble.m4, printf-posix.m4,
+ signed.m4, size_max.m4, wchar_t.m4, wint_t.m4, xsize.m4, to
+ ignore files now supplied by gettext 0.13.1.
+
+2003-12-25 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ Synchronized with the backup repository on Mirddin
+
+2003-12-19 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * configure.ac: Check for varios members of struct stat
+ that may represent file modification times with a subsecond
+ precision.
+ Check for utimes (for future use)
+ * src/buffer.c (short_read): Issue a warning on short reads.
+ * src/common.h (sys_stat_nanoseconds): New function
+ * src/create.c (dump_file0): Use sys_stat_nanoseconds().
+ * src/list.c (read_and): Treat only two successive zero
+ filled blocks as an EOF indicator. Issue a warning if
+ a single one is encountered.
+ * src/system.c (sys_stat_nanoseconds): New function
+ * src/tar.h (tar_stat_info.atime_nsec,mtime_nsec,ctime_nsec): New
+ members.
+ * src/xheader.c (code_time,decode_time): Support for subsecond
+ precision.
+ (atime_coder,atime_decoder,ctime_coder,ctime_decoder)
+ (mtime_coder,mtime_decoder): Update invocations of code_time and
+ decode_time.
+ (gid_decoder,size_decoder,uid_decoder,sparse_size_decoder)
+ (sparse_numblocks_decoder,sparse_offset_decoder)
+ (sparse_numbytes_decoder): Updated
+
+2003-12-18 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/names.c (safer_name_suffix): Reverted change made
+ 2003-11-14. Reason: Discussion with Paul Eggert and
+ Jean-Louis Martineau. See also ChangeLog entry from
+ 1999-08-14.
+ * tests/delete03.sh: Likewise.
+ * tests/extrac04.sh: Likewise.
+ * tests/multiv01.sh: Likewise.
+
+2003-12-12 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/incremen.c (write_directory_file): Use sys_truncate
+ * src/list.c (print_header): Use archive_file_size member
+ when printing real file size.
+ * src/sparse.c (sparse_scan_file): Correctly handle files with
+ a hole at the end.
+ (sparse_dump_region,sparse_extract_region): Allow for zero size
+ trailing blocks
+
+2003-12-12 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * configure.ac: Raised version number to 1.13.92
+ * src/list.c (decode_header): Discern between pax and ustar
+ formats
+ Initialize current_stat_info.archive_file_size.
+
+ NOTE: Modifications from this date on are temporarily
+ stored on local CVS on mirddin. This repository will
+ be synchronized with Savannah as soon as the latter
+ becomes operational again.
+
+2003-12-01 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * TODO: Updated
+ * src/sparse.c: Initial implementation of GNU/pax sparse
+ file format.
+ * src/common.h (xheader_store): Changed prototype.
+ * src/create.c: Update calls to xheader_store
+ * src/extract.c (extract_archive): Check reported size vs.
+ archive file size to determine if we have to do with a
+ sparse file.
+ * src/tar.c (usage): Cleaned up the sample argument to --newer
+ option.
+ (decode_options): Allow --sparse for POSIX_FORMAT archives.
+ * src/xheader.c (struct xhdr_tab.coder; all coder function): Added
+ extra argument
+ Implemented GNU.sparse.* keywords.
+
+2003-11-30 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * configure.ac: Check for setlocale. Thanks Bruno Haible for
+ reporting.
+
+2003-11-25 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/create.c (write_gnu_long_link): Use oldgnu
+ magic with @LongLink blocks.
+
+2003-11-17 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/tar.h: Support for star sparse format.
+ * src/sparse.c: Likewise.
+
+2003-11-17 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/sparse.c (sparse_diff_file): New function
+ * src/common.h (sys_compare_uid,sys_compare_gid): New functions
+ (sys_compare_uid_gid): Removed.
+ (sys_compare_links,report_difference): Changed prototype
+ (sparse_diff_file): New function
+ * src/system.c (sys_compare_uid,sys_compare_gid): New functions
+ (sys_compare_uid_gid): Removed.
+ (sys_compare_links): Changed declaration
+ * src/compare.c (diff_archive): Use sparse_diff_file.
+
+2003-11-16 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ Rewritten sparse file handling.
+
+ * src/sparse.c: New file. Provides a universal framework
+ for various methods for sparse files handling.
+ * src/Makefile.am: Added sparse.c
+ * src/common.h (struct sp_array,sparsearray,sp_array_size)
+ (init_sparsearray,fill_in_sparse_array): Removed
+ (enum dump_status): New data type
+ (pad_archive,close_diag,open_diag,read_diag_details)
+ (readlink_diag,savedir_diag,seek_diag_details,stat_diag): New
+ functions.
+ (sparse_file_p,sparse_dump_file,sparse_extract_file): New
+ functions.
+ (print_header): Changed prototype declaration.
+ * src/tar.h (struct sp_array): Declaration from common.h
+ (struct tar_stat_info): New members archive_file_size,
+ sparse_map_avail,sparse_map.
+ * src/create.c: Major rewrite.
+ * src/extract.c: Use new sparse file interface.
+ * src/compare.c (diff_sparse_files): Temporary placeholder.
+
+ * src/buffer.c: Minor changes
+ * src/tar.c: Likewise.
+ * src/list.c: Likewise.
+ * src/misc.c (close_diag,open_diag,read_diag_details)
+ (readlink_diag,savedir_diag,seek_diag_details,stat_diag): New
+ diagnostics functions.
+ * src/incremen.c: Use new diagnostics functions.
+ * src/names.c: Likewise.
+
+2003-11-14 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * configure.ac: Fixed check for setsockopt
+
+ * src/create.c: Do not zero-terminate name field if
+ the name is exactly 100 characters long.
+ (write_ustar_long_name): Fixed cheking for unsplittable
+ names.
+
+2003-11-14 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/create.c (start_header): Removed debugging hook
+ (dump_file): Fixed handling of linkname field.
+ * src/names.c (safer_name_suffix): If the input
+ file name ends with a slash, output one should do so
+ as well.
+ * doc/tar.texi: Documented --format=ustar
+
+2003-11-14 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/tar.h (archive_format): USTAR_FORMAT: New type.
+ * src/create.c: Added POSIX.1-1988 support.
+ * src/names.c (safer_name_suffix): Skip leading ./
+ * src/tar.c: New option --format=ustar forces
+ POSIX.1-1988 archive format.
+ * tests/delete03.sh: Updated.
+ * tests/extrac04.sh: Updated.
+ * tests/multiv01.sh: Updated.
+
+2003-11-13 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/list.c (read_and): Initialize current_stat_info
+ and extended_header at the start of the loop.
+ * src/names.c (all_names_found): Check if the argument
+ contains valid filename. Fixes coredump on `not_a_tar_file'
+ * src/xheader.c (atime_decoder,gid_decoder,ctime_decoder)
+ (mtime_decoder,size_decoder,uid_decoder): Use xstrtoumax.
+ Fixes `pax-big-10g' bug.
+
+2003-11-12 Paul Eggert <eggert@twinsun.com>
+
+ Fix some C compatibility bugs reported by Joerg Schilling.
+
+ * src/common.h (stripped_prefix_len): Fix misspelling
+ "stripped_path_len" in declaration.
+ * src/rmt.c (main): Use "return FOO;" rather than
+ "exit (FOO);"; we no longer have to worry about
+ pre-ANSI hosts that mishandled returned values from "main".
+ * src/tar.c (main): Likewise. This avoids warnings on some
+ compilers.
+ * src/system.c: Include signal.h, for 'kill'.
+ * src/system.h (DEV_BSIZE): Remove.
+ (DEFAULT_ST_BLKSIZE): New macro.
+ (ST_BLKSIZE): Use it, instead of DEV_BSIZE.
+ * src/tar.c (enum): Remove comma just before }.
+
+2003-11-12 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * src/list.c (decode_header): Initialize st_atime and
+ st_ctime.
+
+2003-11-11 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * configure.ac (tar_save_LIBS): Bugfix. Thanks Adrian
+ Bunk <bunk@fs.tum.de> for reporting.
+ * doc/tar.texi: Fixed spelling. Thanks Martin Buchholz
+ <martin@xemacs.org> for spotting.
+