e1c9c92abd(human_readable_inexact): Allow an input block size that is not a multiple of the output block size, and vice versa.
Paul Eggert
2000-06-15 01:40:09 +00:00
44579f77cf(get_date): Apply relative times after time zone indicator, not before.
Paul Eggert
2000-06-14 17:57:26 +00:00
addd73b34aInitial revision
Paul Eggert
2000-06-08 20:17:44 +00:00
74497f7010glibc snapshot
Paul Eggert
2000-05-24 20:08:51 +00:00
0b9f42e41aInitial revision
Paul Eggert
2000-04-19 00:38:49 +00:00
a9d7ae22a8Initial revision
Paul Eggert
2000-02-27 17:52:01 +00:00
977e420a35(savedir): Work even if directory size is negative; this can happen with some NFS screwups.
Paul Eggert
2000-02-24 00:15:00 +00:00
3a19b8b0dfHandle two-digit years with leading zeros correctly.
Paul Eggert
2000-02-19 00:25:54 +00:00
19209ceaf7sh-utils-2.0f
Paul Eggert
2000-01-22 14:23:13 +00:00
8d5417b2efFrom Meyering
Paul Eggert
2000-01-19 14:00:07 +00:00
54bb77bfcaInitial revision
Paul Eggert
2000-01-17 06:23:01 +00:00
619c6ea42fChange quoting to be compatible with future autoconf versions.
Paul Eggert
2000-01-16 04:45:26 +00:00
ba2ef4d075Update copyright year.
Paul Eggert
2000-01-07 23:02:32 +00:00
e1fba9a30b1.13.17 news
Paul Eggert
2000-01-07 23:02:32 +00:00
40e03ba28dUpdate copyright.
Paul Eggert
2000-01-07 22:31:23 +00:00
c18999bad5(read_and): Invoke apply_nonancestor_delayed_set_stat on file names after handling them. (list_archive): Use consistent message for unexpected EOF. Use error message functions to report errors consistently. (read_header): Use xalloc_die to report memory exhaustion. Use consistent message for unexpected EOF. (decode_mode): Remove; moved to misc.c. (skip_file): Use consistent message for unexpected EOF. (skip_extended_headers): Likewise.
Paul Eggert
2000-01-07 19:25:23 +00:00
f74454cb37(find_new_file_size): Return size instead of storing through pointer. All callers changed. (deal_with_sparse): Don't keep reading after read errors. (finish_sparse_file): Just abort if there is an internal error. Use error message functions to report errors consistently. (dump_file): Fix typo: stat_warn and stat_error were interchanged. Quote file names with colons if possible. Don't restore access times on directories during incremental dumps until after dealing with the directory. If ignoring failed reads, count closedir errors as warnings, not errors. Fix buffer overrun problem when dumping sparse files. If ignoring failed reads, count read errors as warnings, not errors. Use error message functions to report errors consistently. If ignoring failed reads, count unknown files as warnings, not errors.
Paul Eggert
2000-01-07 19:25:23 +00:00
f2b8b4a42d(extract_mangle): Use xalloc_die to report memory exhaustion. Quote file names with colons if possible.
Paul Eggert
2000-01-07 19:25:23 +00:00
53f16a5971(extr_init): If we run out of memory, invoke apply_delayed_set_stat. (set_mode): Use Use error message functions to report errors consistently. (set_stat): Likewise. (repair_delayed_set_stat): Quote file names with colons if possible. (prepare_to_extract): Don't complain if we can't remove ".". (extract_sparse_file): Use consistent message for unexpected EOF. Use error message functions to report errors consistently. (extract_archive): Use consistent message for unexpected EOF. Use error message functions to report errors consistently. Quote file names with colons if possible. (apply_delayed_set_stat): New function. (apply_nonancestor_delayed_set_stat): Renamed from apply_delayed_set_stat. Don't remove head if it doesn't apply. (fatal_exit): Invoke apply_delayed_set_stat with no args.
Paul Eggert
2000-01-07 19:25:23 +00:00
c598438dd2(decode_options): Use xalloc_die to report memory exhaustion. --delete and -f - are now incompatible, since we didn't have time to fix their bugs.
Paul Eggert
2000-01-07 19:25:23 +00:00
cae3ad0d8e(archive_write_error): Add noreturn attribute to decl. (xclose): Use close_error. (xdup2): Regularize messages with rest of tar. (archive_write_error): Use write_fatal_details. (flush_read): Don't read past EOF. (flush_archive, close_archive, new_volume): Use close_warn.
Paul Eggert
2000-01-07 19:25:23 +00:00
db3693939d(append_file): Use error message functions to report errors consistently.
Paul Eggert
2000-01-07 19:25:23 +00:00
622da12896Sync tm_diff with the GNU C Library. (TM_YEAR_BASE): Renamed from TM_YEAR_ORIGIN. All uses changed. (tm_diff): Renamed from difftm. All uses changed. Replace body with that taken from GNU C Library 2.1.3pre1. (get_date): Prefer tm_gmtoff to tm_diff if available.
Paul Eggert
2000-01-06 18:07:38 +00:00
78646b1f11Initial revision
Paul Eggert
2000-01-04 22:54:54 +00:00
abdde50e1b(get_date): Fix typo when checking for time_t overflow in time zone calculations.
Paul Eggert
1999-12-22 18:10:37 +00:00
e844ee7e6cVersion 1.13.16
Paul Eggert
1999-12-13 05:35:02 +00:00
afec289954New sections for gzip and bzip2, Solaris. Remove mention of BACKLOG.
Paul Eggert
1999-12-13 05:34:39 +00:00
a78ab36e1e(<quotearg.h>): New include. (append_file): Don't assume that gettext preserves errno. Quote arbitrary strings in diagnostics. Check for close error.
Paul Eggert
1999-12-13 05:11:05 +00:00
c6720c5a8b("quotearg.h"): New include. (usage): Now has __attribute__ ((noreturn)). (confirm): Report errno if we can't open tty. (confirm, decode_options): Quote arbitrary strings in diagnostics. (OVERWRITE_OPTION): New constant. (long_options, usage, decode_options): New --overwrite option. (decode_options): --keep-old-files, --overwrite, and --unlink-first are now mutually exclusive. Don't assume that gettext preserves errno. (main): Set default quoting style to escape_quoting_style.
Paul Eggert
1999-12-13 05:11:05 +00:00
df2ff9e4e4(read_and, list_archive): Quote arbitrary strings in diagnostics. (from_header): Use locale_quoting_style to quote diagnostics. (print_header, print_for_mkdir): Quote with quotearg, not quote_copy_string.
Paul Eggert
1999-12-13 04:52:26 +00:00
aef747068b(decode_oflag): O_APPEND might not be defined.
Paul Eggert
1999-12-13 04:52:26 +00:00
a3f819a9d7(REM_BIAS): Increase from 128 to (1 << 30).
Paul Eggert
1999-12-13 04:52:26 +00:00
f0429c4a22(<quotearg.h>): New include. (name_init, name_next, name_close, names_notfound, collect_and_sort_names): Don't assume that gettext preserves errno. Quote arbitrary strings in diagnostics. (excluded_name): Fix typo that caused empty patterns to be mishandled.
Paul Eggert
1999-12-13 04:52:26 +00:00
6e9d1539b6(<quotearg.h>): New include. (enum permstatus): New enum. (struct delayed_set_stat): file_name is now at end of buffer, to avoid two mallocs. New members file_name_len, invert_permissions, permstatus. (extr_init): Remove hack that silently adjusted newdir_umask. (set_mode, set_stat): New args invert_permissions, permstatus, typeflag. Use these args to decide whether and how to set modes. (set_mode, set_stat, prepare_to_extract, extract_sparse_file, extract_archive): Don't assume that gettext preserves errno. (set_stat): Remove arg symlink_flag; subsumed by typeflag. (delay_set_stat, repair_delayed_set_stat): New functions. (make_directories): Avoid mkdir where last part of path is "..". Create a struct delayed_set_stat for each directory made. (prepare_to_extract): Renamed from unlink_destination, and return 0 immediately if to_stdout_option; all callers changed. (maybe_recoverable): New parameter interdir_made. Add support for --overwrite. (extract_sparse_file, extract_archive): Quote arbitrary strings in diagnostics. (extract_archive): By default, warn about ".." in member names, and skip them. Don't open files with O_NONBLOCK or O_APPEND. Open with O_TRUNC only if --overwrite; otherwise, use O_EXCL to avoid overwriting them. Pass only rwxrwxrwx permissions to open' and mkdir', minus the current umask. Keep track of intermediate directories made, to avoid looping when making x/../x when x doesn't exist; the earlier code solved this in a different way that didn't fit well into the new scheme. Don't extract permissions onto existing directories unless --overwrite is given. Do not add -wx------ permissions to new directories permanently; just do it temporarily. Remove no-longer-needed hack with MSDOS and directory time stamps. (apply_delayed_set_stat): New argument specifies which directories to fix statuses of. Do not wait until the end of extraction to fix statuses; instead, fix a directory's status once we exit that directory. This requires less memory and does the right thing in some cases where the old method didn't. (fatal_exit): New function.
Paul Eggert
1999-12-13 03:26:04 +00:00
ed7e2ec8a3(<quotearg.h>): New include. (start_header): Use member names' to refer to archive member names, not archive names'. Warn about ..' in member names. (finish_sparse_file, dump_file): Quote arbitrary strings in diagnostics. (finish_sparse_file, dump_file): Don't assume that gettext preserves errno. (dump_file): Don't use access' to determine whether a directory is readable; this isn't reliable if tar is setuid. Use `opendir' instead. Check for readdir and closedir failures. Don't dump sockets as if they were fifos; just warn and skip.
Paul Eggert
1999-12-13 03:07:14 +00:00
c291b38642Use ## on copyright notice.
Paul Eggert
1999-12-13 02:24:29 +00:00
1d0be6dc89Initial revision
Paul Eggert
1999-12-13 02:24:29 +00:00
79dd2b901cAdd --overwrite. --absolute-names rejects ".." in names.
Paul Eggert
1999-12-13 02:24:29 +00:00
8ac581c8d7(EXTRA_DIST): Add c-bs-a.m4.
Paul Eggert
1999-12-13 02:24:29 +00:00
c05634ea03Initial revision
Paul Eggert
1999-12-13 02:18:40 +00:00
1b1811108aversion 1.13.15
Paul Eggert
1999-12-03 13:52:46 +00:00
86b765527a(dump_file): Undo previous change about diagnosing unexpectely missing files. Instead, diagnose them a bit better.
Paul Eggert
1999-12-03 13:46:09 +00:00
c9f5ead8deRemove bogus errno FIXMEs.
Paul Eggert
1999-12-03 13:04:17 +00:00
bc9dc01ec3(name_next): If file names are given both in the command line (e.g. via -C) and in a file (via -T), do not ignore the command-line names.
Paul Eggert
1999-12-03 13:04:17 +00:00
3495d84e27(dump_file): Do not diagnose a file that the parent directory said should be there, but is absent. It was probably removed between then and now. Do not pass meaningless errno to ERROR when reporting that the file changed as we read it.
Paul Eggert
1999-12-03 13:04:17 +00:00
f02e40005cClarify getdate authorship.
Paul Eggert
1999-12-03 13:03:44 +00:00
20db0a5cf1Backport to autoconf 2.13.
Paul Eggert
1999-12-03 12:51:25 +00:00
822d481ab8Version 1.13.14.
Paul Eggert
1999-11-07 22:05:04 +00:00
04f1deefad(finish_header): Report block numbers with origin 0, not origin 1.
Paul Eggert
1999-11-07 22:01:27 +00:00
23842e32bbNew node create options for --ignore-failed-read. Remove unused version control symbols. Modernize texinfo usage.
Paul Eggert
1999-11-07 21:27:40 +00:00
859a4ec01f(usage): Add examples.
Paul Eggert
1999-11-07 21:15:15 +00:00
02519e5575Include getopt.h. (long_opts): New constant. (usage): New function. (main): Implement --help and --version. Output usage message if arguments are bad.
Paul Eggert
1999-11-07 21:06:38 +00:00
f87e585c51(to_chars): Remove trailing newline from warning. (dump_file): Ignore doors.
Paul Eggert
1999-11-07 21:06:38 +00:00
7be178a4d4(set_stat): Remove duplicate code.
Paul Eggert
1999-11-07 21:06:38 +00:00
26505948d9(from_header): Handle 32-bit two's complement negative time stamps even if the leading octal digit is 2 or 3.
Paul Eggert
1999-11-07 21:06:38 +00:00
0ca48105ea(AC_FUNC_FNMATCH): Include fnmatch.h when testing fnmatch.
Paul Eggert
1999-11-07 21:06:38 +00:00
12fa57c63bFix comment (from meyering fileutils).
Paul Eggert
1999-10-31 15:47:44 +00:00
a3bbec5628Initial revision
Paul Eggert
1999-10-30 08:03:14 +00:00
598799956cversion 1.13.13
Paul Eggert
1999-10-11 06:56:17 +00:00
bf9a7d3d97Remove --with-dmalloc. Add --disable-largefile. Remove old NeXT dirent problems, or AIX valloc problems. Remove old union wait advice, and old %lld advice. Remove advice about FreeBSD 2.1.7, ISC 4.1mu, Ultrix `make'.
Paul Eggert
1999-10-11 06:56:17 +00:00
23d6aeb946Clarify documentation for portable file names.
Paul Eggert
1999-10-11 06:56:17 +00:00
a46a204436(update_archive): Fix typo: last two args to dump_file were interchanged.
Paul Eggert
1999-10-11 06:56:17 +00:00
51f0c7c364(tartime): Now extern. (read_and): Invalid headers cause errors, not warnings.
Paul Eggert
1999-10-11 06:56:17 +00:00
3f3860fd6a(dump_file): Fix typo: last two args to dump_file were interchanged.
Paul Eggert
1999-10-11 06:56:17 +00:00
cf4065dfe9(decode_options): Invalid dates are now treated as (time_t) -1. Redo version message to conform to GNU standards.
Paul Eggert
1999-10-11 06:56:17 +00:00
9f9336cb0a(__attribute__): Don't use if GCC claims to be before 2.8; this is needed for OPENStep 4.2 cc. Also, don't use if strict ANSI.
Paul Eggert
1999-10-03 23:30:09 +00:00
f4f13c4705Initial revision
Paul Eggert
1999-09-26 19:03:20 +00:00
5af183358fA read error now causes a nonzero exit status.
Paul Eggert
1999-09-25 05:50:48 +00:00
29929863e8(write_error): Read error is an error, not just a warning.
Paul Eggert
1999-09-25 05:47:17 +00:00
559eeb2b52(to_chars): Fix base-256 output.
Paul Eggert
1999-09-25 05:47:17 +00:00
edf35a92f8Version 1.13.12
Paul Eggert
1999-09-25 00:33:06 +00:00
10f585ea2f(print_total_written): Use a format compatible with Amanda 2.4.1p1.
Paul Eggert
1999-09-25 00:25:36 +00:00
e6d8e9279f(update_archive): Remove call to name_expand; had no effect. Use chdir_do to change into directory. Use deref_stat instead of stat. Use add_avoided_name to mark names to be avoided; the old method of setting a bit with the name caused all descendants of that name to be avoided, in some circumstances.
Paul Eggert
1999-09-24 23:44:52 +00:00
825b72c52b(<time.h>): Include. (time): Declare if not defined. (confirm): Don't read past EOF. (long_options, usage): Add --no-same-owner, --no-same-permissions. (main): Use clock_gettime if available.
Paul Eggert
1999-09-24 23:44:52 +00:00
6e36ce5668(name_next): Go back to using plain chdir. (name_gather): Use chdir_arg to keep track of arguments to chdir. (addname): Likewise. (name_match): Use chdir_do to act on chdir args. (merge_sort): Moved here from incremen.c. (compare_names, add_hierarchy_to_namelist, collect_and_sort_names): Likewise. (name_expand): Remove. (name_from_list): Skip fack names. Use chdir_do to act on chdir args. (struct avoided_name): New struct. (avoided_names): New var. (add_avoided_name, is_avoided_name): New functions.
Paul Eggert
1999-09-23 06:22:31 +00:00
a7002a034e(to_chars): Fix typo in decl. Don't assign through char const *. Rename name_expand back to collect_and_sort_names.
Paul Eggert
1999-09-22 06:14:23 +00:00
e4e624848b(time): Declare if not defined. (base_64_digits): Moved here from create.c. (base64_map): Use UCHAR_MAX for size, not less-clear (unsigned char) -1. (read_and): Don't get time from header unless we need it now; as getting time can cause duplicate diagnostics if bogus. Remove "Hmm, " from diagnostic. Use "Skipping to next header" uniformly. (from_header): Renamed from from_chars. All uses changed. Allow different forms for unportable 2's complement numbers. Don't check for extended forms when parsing checksums. Parse base-256 output. (gid_from_header): Renamed from gid_from_chars. All uses changed. (major_from_header): Renamed from major_from_chars. All uses changed. (minor_from_header): Renamed from minor_from_chars. All uses changed. (mode_from_header): Renamed from mode_from_chars. All uses changed. (off_from_header): Renamed from off_from_chars. All uses changed. (size_from_header): Renamed from size_from_chars. All uses changed. (time_from_header): Renamed from time_from_chars. All uses changed. Warn about future timestamps. (uid_from_header): Renamed from uid_from_chars. All uses changed. (uintmax_from_header): Renamed from uintmax_from_chars. All uses changed. (tartime): New function, incorporating isotime. (isotime): Delete. (print_header): Use tartime.
Paul Eggert
1999-09-22 06:14:23 +00:00
d591c42003(<time.h>): Remove; not used. (time): Do not declare.
Paul Eggert
1999-09-22 06:14:23 +00:00
0d70f547f3(struct link): Remove unused linkcount member. (base_64_digits): Move to list.c. (base_8_digits): Remove. (to_octal): New function, with some of old contents of to_base. (to_base): Remove. (to_base256): New function. (to_chars): Use base 256, not base 64, for huge values. (mode_to_chars): Don't use two's complement in GNU format or POSIX format. (dump_file): Interchange last two arguments. If TOP_LEVEL is negative, it means we have an incremental dump where we don't know whether this is a top-level call. Use deref_stat instead of statx / stat / lstat. Cast result of alloca. Check for dates if 0 < top_level, not if listed_incremental_option. Move multiple-link check after directory check. Do not dump avoided names. Dump hard links to symbolic names as links, not as separate symbolic links. start_header cannot return a null pointer, so don't test for it. Likewise for find_next_block.
Paul Eggert
1999-09-21 15:13:33 +00:00
5ae88d8a13(<time.h>): No need to include. (time): No need to declare. (now): Remove variable. (extr_init): Don't initialize now'. Increment same_permissions_option and same_owner_option if we_are_root is nonzero; this supports the new --no-same-owner option. (set_stat): Use start_time instead of now'.
Paul Eggert
1999-09-21 15:13:33 +00:00
17e0cd7065(<human.h>): Include. (print_total_written): Also print human-readable byte count, and bytes/s. (open_archive, flush_write): Use start_time, not current time. (flush_read): Report about garbage bytes ignored at end of archive, but act on non-garbage bytes (instead of ignoring them). (new_volume): Use WARN for warnings.
Paul Eggert
1999-09-20 06:28:45 +00:00
8793fc2ca2Initial revision
Paul Eggert
1999-09-20 06:12:58 +00:00
269a3b3ed2(PC): New macro; use it when possible. (number): Handle `Nov 11 1996' example correctly. See Risks Digest 20.55 (1999-08-27).
Paul Eggert
1999-08-28 07:50:29 +00:00
77de7dbb2fFix typo in previous change.
Paul Eggert
1999-08-23 11:03:47 +00:00
4732e8a4da(first_mangle, mangled_num): Remove.
Paul Eggert
1999-08-23 10:55:51 +00:00
edf0754a95spelling fix
Paul Eggert
1999-08-23 09:55:55 +00:00
0b277662d5spelling corrections
Paul Eggert
1999-08-23 09:55:55 +00:00
bd5bbd4f65Remove lint. (name_gather): Handle trailing -C option correctly. (addname): use memcpy, not strncpy, to copy a string of known length. (name_match): Handle trailing -C option correctly. Propagate -C option to following files. Simplify matching code. (name_scan): Simplify matching code.
Paul Eggert
1999-08-23 09:55:55 +00:00
db16e89362Remove lint. (main): status is ssize_t, not long.
Paul Eggert
1999-08-23 09:55:55 +00:00
276d317d88Remove lint. (long_options, usage, main): -y is now -I (for --bzip). (usage): Fix misspelling. (OPTION_STRING): -y is now -I. (decode_options): Use -1, not EOF, for getopt_long result. Fix typo when invoking xstrtoumax: look for LONGINT_OK, not LONG_MAX. Handle operands after any "--" argument. (main): Report any output errors.
Paul Eggert
1999-08-23 09:55:55 +00:00
43085596a3Remove lint.
Paul Eggert
1999-08-23 09:55:55 +00:00
cc9d6c88f9Lint removal.
Paul Eggert
1999-08-23 09:55:55 +00:00
b8ae0938a4Lint cleanup. (open_archive): Use American spelling in diagnostic.
Paul Eggert
1999-08-23 09:55:55 +00:00
aeef457460Lint cleanup. (linklist): Now static. (to_chars): Fix wording of message to match from_chars.
Paul Eggert
1999-08-23 09:55:55 +00:00
aa904fd8ecLint cleanup. (from_chars): Report out-of-range values more precisely. (off_from_chars): Do not allow negative offsets. (uid_from_chars): Allow negative uids.
Paul Eggert
1999-08-23 09:55:55 +00:00
c270f6f1b2Lint cleanup.
Paul Eggert
1999-08-23 09:55:55 +00:00