Commit Graph

  • 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
  • 196caec187 (xclose, xdup2, child_open_for_compress, child_open_for_uncompress, archive_write_error, archive_read_error, flush_archive, close_archive, init_volume_number, new_volume): Don't assume that gettext preserves errno. Paul Eggert 1999-12-13 02:51:14 +00:00
  • c291b38642 Use ## on copyright notice. Paul Eggert 1999-12-13 02:24:29 +00:00
  • 1d0be6dc89 Initial revision Paul Eggert 1999-12-13 02:24:29 +00:00
  • 79dd2b901c Add --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
  • c05634ea03 Initial revision Paul Eggert 1999-12-13 02:18:40 +00:00
  • 1b1811108a version 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
  • c9f5ead8de Remove 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
  • f02e40005c Clarify getdate authorship. Paul Eggert 1999-12-03 13:03:44 +00:00
  • 20db0a5cf1 Backport to autoconf 2.13. Paul Eggert 1999-12-03 12:51:25 +00:00
  • 822d481ab8 Version 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
  • 23842e32bb New 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
  • 02519e5575 Include 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
  • 12fa57c63b Fix comment (from meyering fileutils). Paul Eggert 1999-10-31 15:47:44 +00:00
  • a3bbec5628 Initial revision Paul Eggert 1999-10-30 08:03:14 +00:00
  • 598799956c version 1.13.13 Paul Eggert 1999-10-11 06:56:17 +00:00
  • bf9a7d3d97 Remove --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
  • 23d6aeb946 Clarify 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
  • f4f13c4705 Initial revision Paul Eggert 1999-09-26 19:03:20 +00:00
  • 5af183358f A 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
  • edf35a92f8 Version 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
  • 8793fc2ca2 Initial revision Paul Eggert 1999-09-20 06:12:58 +00:00
  • ed0fa614f7 Add --no-same-owner, --no-same-permissions. Modernize sample backup script. Paul Eggert 1999-09-20 06:12:58 +00:00
  • a9e349319b (EXTRA_DIST): Add fnmatch.m4. Paul Eggert 1999-09-20 06:12:58 +00:00
  • 26fd2b79db (get_date): Rename outermost local probe' to quarter'. (get_date): Rename latter local `tm' to probe_tm. From: Jim Meyering <meyering@ascend.com> Message-ID: <uryn1vafyyc.fsf@ixi.eng.ascend.com> Paul Eggert 1999-08-29 21:32:29 +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
  • 77de7dbb2f Fix 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
  • edf0754a95 spelling fix Paul Eggert 1999-08-23 09:55:55 +00:00
  • 0b277662d5 spelling corrections Paul Eggert 1999-08-23 09:55:55 +00:00
  • bd5bbd4f65 Remove 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
  • db16e89362 Remove lint. (main): status is ssize_t, not long. Paul Eggert 1999-08-23 09:55:55 +00:00
  • 276d317d88 Remove 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
  • 43085596a3 Remove lint. Paul Eggert 1999-08-23 09:55:55 +00:00
  • cc9d6c88f9 Lint removal. Paul Eggert 1999-08-23 09:55:55 +00:00
  • b8ae0938a4 Lint cleanup. (open_archive): Use American spelling in diagnostic. Paul Eggert 1999-08-23 09:55:55 +00:00
  • aeef457460 Lint cleanup. (linklist): Now static. (to_chars): Fix wording of message to match from_chars. Paul Eggert 1999-08-23 09:55:55 +00:00
  • aa904fd8ec Lint 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
  • c270f6f1b2 Lint cleanup. Paul Eggert 1999-08-23 09:55:55 +00:00
  • c0d324c43c Add copyright notice. (<stdio.h>): Include only if testing. (ISUPPER): Remove. (ISLOWER): New macro. (<string.h>): Include if HAVE_STRING_H, not USG. (bcopy): Remove. (yymaxdepth, ..., yycheck): Don't bother to redefine, since we can assume bison. (EPOCH_YEAR): Renamed from EPOCH. (table): Renamed from TABLE. (meridian): Now an anonymous enum. (struct parser_control): New type. (YYLEX_PARAM, YYPARSE_PARAM, YYSTYPE): New macros. (yyInput, ..., yyRelYear): Migrated into struct parser_control. (%pure_parser): Added, so that the parser is pure. (%union): Removed; the type is now just plain int. All %type directives removed. (tLOCAL_ZONE): New %token. (month_day_table): Renamed from MonthDayTable. (gmtime, localtime, mktime, time): Declare only if not defined. (meridian_table): New table. (dst_table): New table. (units_table): renamed from UnitsTable. (relative_time_table): Renamed from OtherTable. (time_zone_table): Renamed from TimezoneTable. Modernized. (military_table): Renamed from MilitaryTable. (to_hour): Renamed from ToHour. (to_year): Renamed from ToYear. (lookup_zone): New function. (LookupWord): Renamed from lookup_word. Use lookup_zone for time zones. (yylex): Now reentrant. All callers changed. (get_date): Add support for local time zone abbreviations. Make it reentrant. Paul Eggert 1999-08-23 09:55:55 +00:00
  • 38d825f34b 1.13.11 Paul Eggert 1999-08-23 09:55:55 +00:00
  • 6b6064c3fa --bzip2 is now -I. Remove bogus time zone info. Fix spelling. Paul Eggert 1999-08-23 09:55:55 +00:00
  • 984190dcc6 (time): Do not declare if defined. (first_mangle, mangled_num): Now static. Paul Eggert 1999-08-23 09:55:55 +00:00
  • 2ac3be1648 version 1.13.10 Paul Eggert 1999-08-20 09:13:42 +00:00
  • f74aea3ae3 (name_next): Use chdir_from_initial_wd, not chdir. (name_gather): Handle `-C x -C y' correctly. Do not rely on addname to handle -C. (addname): New CHANGE_DIR parameter. Remove ugly calls to getcwd; no longer needed now that we have save-cwd. (name_match): Use chdir_from_initial_wd, not chdir. (name_from_list): Likewise. Paul Eggert 1999-08-20 08:53:21 +00:00
  • 2eaf29f3fb (decode_options): Adjust to addname's new signature. Paul Eggert 1999-08-20 08:53:21 +00:00
  • 2c3d0a2dcd (to_chars): Generate GNU base-64 representation if we are generating an old or new GNU format tar file for a number that can't be represented with the POSIX format. Paul Eggert 1999-08-20 08:41:32 +00:00
  • 6dccec3ba4 (max): New macro. (isotime): Now takes time_t, not time_t *. Report the decimal values of times that can't be broken down. (print_header): Don't assume that major and minor device numbers can fit into uintmax_t. Paul Eggert 1999-08-20 08:41:32 +00:00
  • f34eafea87 (TimezoneTable): Modernize to current tz data. Paul Eggert 1999-08-20 08:41:32 +00:00
  • 6a5e9283fb (EXTRA_DIST): Add getline.m4. Paul Eggert 1999-08-20 08:41:32 +00:00
  • 22ee808ffe (from_chars): Skip only the initial null byte from buggy tars, so that we don't complain about all-null fields. Paul Eggert 1999-08-18 09:24:42 +00:00
  • 3c47b1f080 (EXTRA_DIST): Add signedchar.m4. Paul Eggert 1999-08-18 08:37:16 +00:00
  • d9c7673472 version 1.13.9 Paul Eggert 1999-08-18 08:05:06 +00:00
  • f9d278ba35 Comment fix. Paul Eggert 1999-08-18 07:52:26 +00:00
  • f5116dd1db (write_eot): Write at least two zero blocks. Paul Eggert 1999-08-18 07:52:26 +00:00
  • c62fe41ec5 (read_and, list_archive): Simplify code. (read_header): Fix computation of signed checksums on machines where char is unsigned. Do not consider a block to be zero unless all its bytes are zero, even the checksum bytes. Do not attempt to parse the checksum of a zero block. Fix memory leak with long names and links. (from_chars): Accommodate a buggy tar that outputs leading NUL if the previous field overflows. (skip_extended_headers): Don't assume find_next_block yields nonnull. Paul Eggert 1999-08-18 07:52:26 +00:00
  • 72290b64a6 (extract_sparse_file, extract_archive): Don't assume find_next_block yields nonnull. (extract_archive): Fix sparse array bug: we did not find end of array correctly. Paul Eggert 1999-08-18 07:52:26 +00:00
  • 34183f8d77 Fix a few more white-space glitches. Paul Eggert 1999-08-18 07:49:49 +00:00
  • 9939476576 Comment fix. Paul Eggert 1999-08-18 07:49:49 +00:00
  • fcde5487eb Ghostscript 6.0 Paul Eggert 1999-08-17 19:59:28 +00:00
  • c977f9dd60 version 1.13.8 Paul Eggert 1999-08-16 08:13:20 +00:00
  • 0357ce3365 indenting fixes. Paul Eggert 1999-08-16 08:13:20 +00:00
  • 14b1583256 indenting fixes Paul Eggert 1999-08-16 08:13:20 +00:00
  • f536f68bfb Remove punctuation glitches. Paul Eggert 1999-08-16 08:13:20 +00:00
  • da82a07e93 Fix bugs when interpreting POSIX-compliant headers that do not contain null bytes in the header or link names. Paul Eggert 1999-08-16 08:13:20 +00:00
  • 5e0e027651 (make_directories): Do not chown intermediate directories, even if we are root. Paul Eggert 1999-08-16 08:13:20 +00:00