]> Dogcows Code - chaz/tar/blobdiff - ChangeLog
Merge recent gnulib changes, and remove some lint.
[chaz/tar] / ChangeLog
index 8cbe23b6b7b2baf33a6ccf3e466abd6cae2dbec6..c85ad8c398e5439250131fd0ac540e284891cbba 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,157 @@
+2004-04-04  Paul Eggert  <eggert@twinsun.com>
+
+       Merge recent gnulib changes, and remove some lint.
+
+       Improve support for nanosecond-resolution time stamps.
+       * bootstrap: Add gettime, timespec modules.
+       * configure.ac (gl_GETTIME, gl_TIMESPEC): Add.
+       * lib/.cvsignore (getopt_int.h, gettime.c, gettimeofday.c,
+       timespec.h): Add.
+       * lib/Makefile.am (libtar_a_SOURCES): Add gettime.c, timespec.h.
+       * m4/.cvsignore: Add clock_time.m4, gettime.m4, gettimeofday.m4,
+       st_mtim.m4, timespec.m4.  Remove malloc.m4, realloc.m4.
+       * src/common.h (newer_mtime_option): Now a struct timespec, not
+       time_t.  All uses changed.
+       (NEWER_OPTION_INITIALIZED, OLDER_STAT_MTIME): New macros.
+       * src/create.c (dump_file0): Use OLDER_STAT_TIME to compare times.
+       * src/incremen.c (scan_path): Likewise.
+       * src/list.c (read_and): Likewise.
+       * src/list.c (read_and): Use NEWER_OPTION_INITIALIZED to decide
+       whether newer_mtime_option is initialized.
+       * src/tar.c (decode_options): Likewise.
+       * src/tar.c (decode_options): Adjust to new signature for get_date.
+
+       * src/buffer.c (short_read, flush_read): Use size_t, not ssize_t, for
+       result of safe_read, full_write, and similar functions.
+       Detect safe_read error by comparing to SAFE_READ_ERROR;
+       detect full_write error by comparing to 0.
+       All uses changed.
+       * src/common.h (write_error_details, sys_write_archive_buffer):
+       Likewise.
+       * src/misc.c (write_error_details): Likewise.
+       * src/rmt.c (main): Likewise.
+       * src/rmt.h (rmt_read__, rmt_write__): Likewise.
+       * src/rtapelib.c (rmt_read__, rmt_write__, rmt_ioctl__): Likewise.
+       * src/sparse.c (sparse_scan_file, sparse_dump_region,
+       check_sparse_region, check_data_region): Likewise.
+       * src/system.c (sys_write_archive_buffer, sys_drain_input_pipe,
+       sys_child_open_for_compress, sys_child_open_for_uncompress): Likewise.
+       * src/update.c (append_file): Likewise.
+
+       * src/buffer.c (clear_read_error_count): Use explicit (void)
+       to indicate a function with no arguments.
+       * src/create.c (check_links): Likewise.
+       * src/system.c (sys_get_archive_stat, sys_save_archive_dev_ino,
+       sys_detect_dev_null_output, sys_drain_input_pipe, sys_spawn_shell,
+       sys_reset_uid_gid, sys_get_archive_stat, sys_save_archive_dev_ino,
+       sys_detect_dev_null_output, sys_drain_input_pipe, sys_spawn_shell):
+       Likewise.
+       * src/utf8.c (get_input_charset): Likewise.
+       * src/xheader.c (xheader_ghdr_name, xheader_write_global,
+       xheader_decode_global, extended_header_init): Likewise.
+       * tests/mksparse.c (usage): Likewise.
+
+       * src/buffer.c (new_volume): Rename local variables to avoid
+       shadowing warnings.
+       * src/common.h (file_dumpable_p, sys_stat_nanoseconds,
+       sparse_file_p, sparse_member_p, sparse_fixup_header,
+       sparse_dump_file, sparce_extract_file, sparse_skip_file,
+       sparse_diff_file): Likewise.
+       * src/compare.c (diff_archive): Likewise.
+       * src/create.c (file_dumpable_p, dump_regular_file, dump_dir0,
+       dump_dir, dump_hard_link, file_count_links, dump_file0, dump_file):
+       Likewise.
+       * src/extract.c (repair_delayed_set_stat): Likewise.
+       * src/misc.c (maybe_backup_file, add_hierarchy_to_namelist):
+       Likewise.
+       * src/sparse.c (struct tar_sparse_optab, tar_sparse_dump_region,
+       tar_sparse_extract_region, sparse_dump_region, sparse_extract_region,
+       sparse_dump_file, sparse_file_p, sparse_member_p,
+       sparse_fixup_header, sparse_extract_file, sparse_skip_file,
+       check_data_region, sparse_diff_file): Likewise.
+       * src/system.c (sys_stat_nanoseconds): Likewise.
+       * src/xheader.c (xheader_format_name): Likewise.
+
+       * src/common.h (enum old_files): Remove comma before }; not portable.
+
+       * src/common.h (read_fatal_details): Add __attribute__ ((noreturn)).
+       * src/rmt.c (usage): Likewise.
+       * src/xheader.c (xheader_set_single_keyword): Likewise.
+       * tests/genfile.c (usage): Likewise.
+       * tests/mksparse.c (die, usage): Likewise.  Also add printf attribute
+       to die.
+
+       * src/common.h (gname_to_gid, uname_to_uid): Add const to avoid
+       some gcc warnings.
+       * src/names.c (uname_to_uid, gname_to_gid): Likewise.
+       * src/utf8.c (struct langtab.lang, struct langtab.terr, struct
+       langtab.charset, charset_lookup): Likewise.
+
+       * src/common.h (name_init): Remove unused args.  All callers changed.
+       * src/names.c (name_init): Likewise.
+
+       * src/common.h (usage, xheader_write, xheader_write_global,
+       sys_reset_uid_gid): New decls.
+
+       * src/compare.c (report_difference, process_noop): Add
+       __attribute__ ((unused)) for unused attributes.
+       * src/sparse.c (oldgnu_sparse_member_p, star_sparse_member_p):
+       Likewise.
+       * src/xheader.c (dummy_coder, dummy_decoder, atime_coder,
+       gid_coder, gname_coder, linkpath_coder, ctime_coder, mtime_coder,
+       path_coder, size_coder, uid_coder, uname_coder,
+       sparse_numblocks_coder): Likewise.
+
+       * src/create.c (dump_regular_finish, dump_dir0, dump_dir,
+       dump_file0): Now static.
+       * src/utf8.c (charset_lookup): Likewise.
+       * src/xheader.c (xheader_protected_pattern_p,
+       xheader_protected_keyword_p, xheader_set_single_keyword,
+       xheader_keyword_deleted_p, xheader_keyword_override_p,
+       xheader_list_append, xheader_list_destroy, xheader_set_keyword_equal):
+       Likewise.
+       * tests/genfile.c (usage): Likewise.
+       * tests/mksparse.c (die, mkhole, mksparse, usage, xlat_suffix):
+       Likewise.
+
+       * src/create.c (hash_link): Rewrite to avoid cast.
+
+       * src/extract.c (file_newer_p): Use parameter, not global var.
+       * src/misc.c (write_error_details): Likewise.
+
+       * src/extract.c (prepare_to_extract): Remove directory arg; not
+       used.  All callers changed.
+
+       * src/misc.c (close_fatal): Remove; not used.
+       * src/system.c (sys_utimes): Likewise.
+
+       * src/rmt.c (get_string): Avoid buffer overrun (off by 1 error).
+
+       * src/rmt.c (main): Update copyright date to 2004.
+       * src/tar.c (decode_options): Likewise.
+
+       * src/rtapelib.c (get_status_string): Don't lose errno when
+       skipping the error messages.
+       (get_status): Report an error if atol returns a negative number.
+
+       * src/utf8.c (struct langtab, langtab, charset_lookup,
+       get_input_charset) [!defined HAVE_LIBCONV]: Omit unused
+       definitions.
+       (iconv_open, iconv, iconv_close) [!defined HAVE_LIBCONV]:
+       Use macros, not definitions, to avoid type clashes with system
+       headers.
+       (charset_lookup): Local var is now auto, not static.
+       (utf8_convert): Use ICONV_CONST instead of const, to avoid
+       type clashes.
+
+       * src/utf8.c (langtab): Initialize all elements of struct, to
+       avoid gcc warning.
+       * src/xheader.c (xhdr_tab): Likewise.
+
+       * src/xheader.c: Include fnmatch.h, since we use fnmatch.
+
+       * tests/mksparse.c (mkhole): Fix typo: bool was assigned to off_t.
+
 2004-04-04  Sergey Poznyakoff  <gray@Noldor.runasimi.org>
 
        * NEWS: Updated
 2004-04-04  Sergey Poznyakoff  <gray@Noldor.runasimi.org>
 
        * NEWS: Updated
        * tests/multiv02.sh: New file
        * tests/Makefile.am: Add sparse01.sh and multiv02.sh
        * tests/longv7.sh: Added missing call to 'after'
        * tests/multiv02.sh: New file
        * tests/Makefile.am: Add sparse01.sh and multiv02.sh
        * tests/longv7.sh: Added missing call to 'after'
-       
+
        * src/common.h: Added missing prototypes
        * src/compare.c (diff_archive): Use is_sparse member
        instead of GNUTYPE_SPARSE.
        * src/common.h: Added missing prototypes
        * src/compare.c (diff_archive): Use is_sparse member
        instead of GNUTYPE_SPARSE.
        (sparse_numbytes_decoder): Removed unused variable
        * src/.cvsignore: Added .gdbinit
        * THANKS: Added Mads Martin Joergensen
        (sparse_numbytes_decoder): Removed unused variable
        * src/.cvsignore: Added .gdbinit
        * THANKS: Added Mads Martin Joergensen
-       
+
 2004-03-26  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
        * src/create.c (write_long_name): Do not allow more than
 2004-03-26  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
        * src/create.c (write_long_name): Do not allow more than
 
        which is grossly wrong, since even if new_volume() below succeeds,
        the subsequent call to rmtread will overwrite the chunk of data
 
        which is grossly wrong, since even if new_volume() below succeeds,
        the subsequent call to rmtread will overwrite the chunk of data
-        already read in the buffer and thus spoil everything.
+       already read in the buffer and thus spoil everything.
        * src/system.c (sys_child_open_for_uncompress): Minor stylistic
        fix.
        * tests/star/multi-fail.sh: New test.
        * tests/Makefile.am: Added multi-fail.sh
        * tests/star/README: Updated
        * src/system.c (sys_child_open_for_uncompress): Minor stylistic
        fix.
        * tests/star/multi-fail.sh: New test.
        * tests/Makefile.am: Added multi-fail.sh
        * tests/star/README: Updated
-       
+
 2004-02-29  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
        * NEWS: Updated
 2004-02-29  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
        * NEWS: Updated
        * src/extract.c: Handle --keep-newer-files option
        * src/list.c (tartime): Print UTC if --utc was given.
        * src/tar.c: New options: --utc and keep-newer-files
        * src/extract.c: Handle --keep-newer-files option
        * src/list.c (tartime): Print UTC if --utc was given.
        * src/tar.c: New options: --utc and keep-newer-files
-       
+
        * tests/Makefile.am: Added new tests
        * tests/after: Rewritten
        * tests/before: Rewritten
        * tests/Makefile.am: Added new tests
        * tests/after: Rewritten
        * tests/before: Rewritten
        * tests/options.sh: Likewise
        * tests/version.sh: Likewise
        * tests/volume.sh: Likewise
        * tests/options.sh: Likewise
        * tests/version.sh: Likewise
        * tests/volume.sh: Likewise
-       
+
        * tests/star: New directory
        * tests/star/README: New file
        * tests/star/gtarfail.sh: New file
        * tests/star: New directory
        * tests/star/README: New file
        * tests/star/gtarfail.sh: New file
 
        Added UTF-8 support. Finished global extended header
        support.
 
        Added UTF-8 support. Finished global extended header
        support.
-       
+
        * NEWS: Minor fix
        * configure.ac: Detect libiconv
        * src/utf8.c: New file. Conversions to and from utf-8.
        * NEWS: Minor fix
        * configure.ac: Detect libiconv
        * src/utf8.c: New file. Conversions to and from utf-8.
        missing gettext markers
        (decode_record): Rewritten using caller-provided handler and
        data closure.
        missing gettext markers
        (decode_record): Rewritten using caller-provided handler and
        data closure.
-       * tests/listed01.sh: Give credit to Andreas Schuldei.   
+       * tests/listed01.sh: Give credit to Andreas Schuldei.
 
 2004-02-21  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
 
 2004-02-21  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
        <andreas@schuldei.org>.
 
        This is due to the condition
        <andreas@schuldei.org>.
 
        This is due to the condition
-     
-          (0 < top_level || !incremental_option) 
+
+         (0 < top_level || !incremental_option)
 
        Removing it makes incremental backups work for individual
        files as well as for directories. On the other hand, it does
 
        Removing it makes incremental backups work for individual
        files as well as for directories. On the other hand, it does
 
              (!incremental_option)
 
 
              (!incremental_option)
 
-        Now, let's consider the effect of its removal. There are two cases:
+       Now, let's consider the effect of its removal. There are two cases:
 
        1) when incremental_option==1
        This means incremental backup in progress. In this case dump_file
 
        1) when incremental_option==1
        This means incremental backup in progress. In this case dump_file
        irrelevant, and its removal won't alter the behavior of tar,
        *except* that it will enable incremental backups on individual
        files, which is the wanted effect.
        irrelevant, and its removal won't alter the behavior of tar,
        *except* that it will enable incremental backups on individual
        files, which is the wanted effect.
-     
-        2) when incremental_option==0
+
+       2) when incremental_option==0
        In this case the condition yields true and its removal does not
        affect the functionality.
 
        In this case the condition yields true and its removal does not
        affect the functionality.
 
        * tests/listed01.sh: New test. Check listed incremental
        backups on individual files.
        * tests/Makefile.am: Added listed01.sh
        * tests/listed01.sh: New test. Check listed incremental
        backups on individual files.
        * tests/Makefile.am: Added listed01.sh
-       
+
 2004-02-20  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
        * src/common.h (simple_finish_header,start_private_header): New
 2004-02-20  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
        * src/common.h (simple_finish_header,start_private_header): New
 
        * src/update.c (update_archive): Write global extended header if
        constructed.
 
        * src/update.c (update_archive): Write global extended header if
        constructed.
-       * src/xheader.c (xheader_format_name): Bugfix. 
+       * src/xheader.c (xheader_format_name): Bugfix.
        (xheader_xhdr_name): Changed the default extended header name
        to '%d/PaxHeaders.%p/%f', as POSIX requires.
        (xheader_ghdr_name): Removed unused argument.
        (xheader_xhdr_name): Changed the default extended header name
        to '%d/PaxHeaders.%p/%f', as POSIX requires.
        (xheader_ghdr_name): Removed unused argument.
        unconditionally.
        * src/list.c (decode_header): Likewise.
        * src/incremen.c (sort_obstack): Fixed typo in the comment
        unconditionally.
        * src/list.c (decode_header): Likewise.
        * src/incremen.c (sort_obstack): Fixed typo in the comment
-       
+
        * doc/tar.texi: Document new default for extended
        header names.
        * doc/tar.texi: Document new default for extended
        header names.
-       
+
        * tests/before: Accept an optional list of allowed archive
        formats. Exit with the status 77 if the current archive
        format does not match any of them.
        * tests/delete03.sh: Require gnu, oldgnu or posix format
        * tests/incremen.sh: Require gnu or oldgnu format
        * tests/multiv01.sh: Likewise
        * tests/before: Accept an optional list of allowed archive
        formats. Exit with the status 77 if the current archive
        format does not match any of them.
        * tests/delete03.sh: Require gnu, oldgnu or posix format
        * tests/incremen.sh: Require gnu or oldgnu format
        * tests/multiv01.sh: Likewise
-       
+
 2004-02-20  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 2004-02-20  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
-       
+
        * doc/tar.texi (Option Summary): Documented --pax-option
        * src/tar.c: Likewise.
        * NEWS: Likewise.
        * src/create.c (to_chars): Added a comment.
        * src/tar.h: Comment to GNU_FORMAT
        * doc/tar.texi (Option Summary): Documented --pax-option
        * src/tar.c: Likewise.
        * NEWS: Likewise.
        * src/create.c (to_chars): Added a comment.
        * src/tar.h: Comment to GNU_FORMAT
-       
+
 2004-02-18  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
        * README: Updated
 2004-02-18  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
        * README: Updated
        * src/tar.c: New option --pax-option (equivalent to -o option
        of pax).
        * src/xheader.c: Implement pax -o option. Fixed misleading
        * src/tar.c: New option --pax-option (equivalent to -o option
        of pax).
        * src/xheader.c: Implement pax -o option. Fixed misleading
-       heading comment (introduced 2003-09-02). 
+       heading comment (introduced 2003-09-02).
        * src/incremen.c: Minor fixes
        * m4/.cvsignore: Updated
        * src/incremen.c: Minor fixes
        * m4/.cvsignore: Updated
-       
+
 2004-02-17  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
        * src/incremen.c: Removed accumulator stuff in favor of obstack.
        (get_directory_contents): Split into two functions
        * src/update.c: Minor changes
        * doc/tar.texi: Fixed typo
 2004-02-17  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
        * src/incremen.c: Removed accumulator stuff in favor of obstack.
        (get_directory_contents): Split into two functions
        * src/update.c: Minor changes
        * doc/tar.texi: Fixed typo
-       
+
 2004-02-15  Paul Eggert  <eggert@twinsun.com>
 
        Fix Debian bug 230872, originally reported by Jeff King in
 2004-02-15  Paul Eggert  <eggert@twinsun.com>
 
        Fix Debian bug 230872, originally reported by Jeff King in
 
 2003-09-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
 
 2003-09-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
 
-        * src/create.c (start_header): Store long file names
-        in "path" keyword of an extended header if in POSIX
-        mode.
-        (finish_header): print header before calling write_extended().
-        * src/list.c (list_archive): Always decode the header. This
-        is necessary so the extended header is processed and the correct
-        filename is printed no matter what the state of verbose_option.
-        * src/xheader.c (xhdr_tab): Reserved GNU keywords (commented out
-        for the time being).
+       * src/create.c (start_header): Store long file names
+       in "path" keyword of an extended header if in POSIX
+       mode.
+       (finish_header): print header before calling write_extended().
+       * src/list.c (list_archive): Always decode the header. This
+       is necessary so the extended header is processed and the correct
+       filename is printed no matter what the state of verbose_option.
+       * src/xheader.c (xhdr_tab): Reserved GNU keywords (commented out
+       for the time being).
 
 2003-09-01  Paul Eggert  <eggert@twinsun.com>
 
 
 2003-09-01  Paul Eggert  <eggert@twinsun.com>
 
This page took 0.03014 seconds and 4 git commands to generate.