From b3a30fbfec9a47562eda6d937b13d248785da297 Mon Sep 17 00:00:00 2001 From: obrien Date: Sat, 29 Mar 1997 22:40:46 +0000 Subject: Virgin import of GNU cpio v2.4.2. --- contrib/cpio/ChangeLog | 968 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 968 insertions(+) create mode 100644 contrib/cpio/ChangeLog (limited to 'contrib/cpio/ChangeLog') diff --git a/contrib/cpio/ChangeLog b/contrib/cpio/ChangeLog new file mode 100644 index 0000000..eaf14a9 --- /dev/null +++ b/contrib/cpio/ChangeLog @@ -0,0 +1,968 @@ +Tue Jan 16 19:03:05 1996 John Oleynick (juo@wombat.gnu.ai.mit.edu) + * util.c: An I/O error reading a file would cause the last byte + of the next file to be corrupted in the archive. Thanks to a + buggy NT NFS server for pointing out this problem. + * Version 2.4.2 released. + +Tue Jan 9 23:19:37 1996 John Oleynick (juo@wombat.gnu.ai.mit.edu) + * copyout.c: missed 1 part of last bug fix. + +Mon Jan 8 16:49:01 1996 John Oleynick (juo@wombat.gnu.ai.mit.edu) + * copyout.c, copypass.c: Use result of readlink() as length + of link name instead of size from lstat(). On some OS's lstat() + doesn't return the true length in size. Bug reported by + Robert Joop (rj@rainbow.IN-berlin.DE). + +Wed Dec 20 10:52:56 1995 John Oleynick (juo@wombat.gnu.ai.mit.edu) + * rmt.c: Added temporary kludge so make rmt will work on Linux. + * configure.in: Only define HAVE_UTIME_H if utime.h declares + struct utimbuf. + * Makefile.in: Change prefix, exec_prefix and bindir to get their + values from configure. Added cpio.info to DISTFILES. + * cpio.texi: Added INFO-DIR-ENTRY. + * Version 2.4.1 released. + +Wed Nov 22 19:37:05 1995 John Oleynick (juo@wombat.gnu.ai.mit.edu) + * cpio.texi: Updated release date and FSF's address. + * NEWS: Listed major new features for 2.4. + * mt.c, mt.1: Added seek and fsfm commands. + * Version 2.4 released. + +Tue Jun 27 19:14:27 1995 John Oleynick (juo@wombat.gnu.ai.mit.edu) + * configure.in: fixed for new autoconf. Added check to make + sure fnmatch() works. + * Makefile.in: changed realclean to maintainer-clean. Added + support to handle fnmatch separate from other LIBOBJS. + * cpio.texi: More changes for 2.4. + +Wed Dec 14 16:14:27 1994 John Oleynick (juo@wombat.gnu.ai.mit.edu) + * copypass.h: When given the -a option, set the access time of + the copy to be the access time of the original (instead of the + modification time of the original). Reported by + karney@pppl.gov (Charles Karney). + * cpio.texi: Updated with changes for 2.4. + +Wed Nov 3 18:18:07 1994 John Oleynick (juo@wombat.gnu.ai.mit.edu) + * safe-stat.h, Makefile.in: New file used by mkdir.c. This will go + away when we get the real safe-xstat.[ch]in for mkdir.c. + * main.c: Don't mention [--null] twice in -p's usage message. + Changed --no-absolute-paths to --no-absolute-filenames. + * cpio.1: Updated man page with new features. + * cpio.texi, texinfo.tex, Makefile.in: Added texi documentation + from Robert Carleton (rbc@gnu.ai.mit.edu). + +Mon Oct 3 00:46:30 1994 John Oleynick (juo@wombat.gnu.ai.mit.edu) + * makefile.pc, system.h: Changes to compile with Borland C++ 4.0. + +Thu Sep 29 22:15:50 1994 John Oleynick (juo@wombat.gnu.ai.mit.edu) + * makepath.c: Don't #define index if it is already #defined. + + * mt.c: Check for __hpux defined instead of __hpux__. Reported + by ericb@lsid.hp.com (Eric Backus). + +Thu Sep 29 11:21:31 1994 John Oleynick (juo@wombat.gnu.ai.mit.edu) + * extern.h, util.c, copyout.c, copypass.c, main.c, global.c: + Never mind --ignore-disk-input-errors flag, we'll just always + do that, like tar. + + * global.c, extern.h, main.c, copyin.c, copyout.c, copypass.c: + Added --quiet flag to supress printing number of blocks copied. + + * global.c, extern.h: If compiled with gcc, make input_bytes + and output_bytes `long long' instead of `long'. We need more + than 32 bits to keep track of the number of bytes copied to + and from tape drives that hold more than 4Gbytes. + + * util.c, copyin.c, main.c, global.c, extern.h: Added + --only-verify-crc flag to read a CRC format archive and verify + its contents' CRCs. + + * copyout.c: Fixed problem with creating oldc format archives + on machines with 16 bit ints. Reported by mpoole@cix.compulink.co.uk + (Martin Poole). + + * mt.c: Need to open tape WR_ONLY for erase command (and probably + others?). Reported by robert@hst.e.technik.uni-kl.de (Robert + Vogelgesan). Accept `eject' as a synonym for `offline'. Accept + `-t' as a synonym for `-f' (to be compatible with HPUX mt, which + only accepts `-t'). + +Wed Sep 28 12:01:55 1994 John Oleynick (juo@wombat.gnu.ai.mit.edu) + * extern.h, global.c, main.c, util.c: only write sparse files + when given --sparse flag. + * extern.h, util.c, copyout.c, copypass.c, main.c, global.c: + Added support for --ignore-disk-input-errors flag. + +Wed Aug 24 12:55:38 1994 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu) + + * configure.in: Replace calls to AC_REMOTE_TAPE and AC_RSH + with equivalent code, since those macros are going away. + +Sun Feb 13 00:56:48 1994 John Oleynick (juo@goldman.gnu.ai.mit.edu) + * extern.h, global.c, main.c, util.c: Added code to + tape_buffered_peek() to properly handle large, corrutped + archives, without overrunning the allocated buffer and + dumping core. Also changed the way the input and output + buffers are allocated in initialize_buffers(). + +Tue Jan 25 01:04:32 1994 John Oleynick (juo@goldman.gnu.ai.mit.edu) + * copyin.c, copyout.c, copypass.c, extern.h, main.c, tar.c, util.c: + Redid i/o buffer code. Previously, the same routines buffered input and + output for accessing the archive and the filesystem. Now there are + separate routines for buffering input and output and for buffering the + archive and the filesystem. This simplifies much of the buffer code + (e.g., only input from the archive has to check for end of tape and + allow the tape to be changed, only output to the filesystem has to + handle byte and word swapping, etc.; previously one routine had to + handle all of these special cases) This is how the routines got split + and renamed (old name -> new name): + + clear_rest_of_block -> tape_clear_rest_of_block + copy_files -> copy_files_tape_to_disk + " -> copy_files_disk_to_disk + " -> copy_files_disk_to_tape + copy_buf_out -> disk_buffered_write + " -> tape_buffered_write + copy_in_buf -> tape_buffered_read + empty_output_buffer -> tape_empty_output_buffer + " -> disk_empty_output_buffer + fill_input_buffer -> tape_fill_input_buffer + " -> disk_fill_input_buffer + pad_output -> tape_pad_output + peek_in_buf -> tape_buffered_peek + skip_padding -> tape_skip_padding + toss_input -> tape_toss_input + + * extern.h, global.c, main.c, util.c: Added support for + writing sparse files. + +Tue Dec 28 23:01:36 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu) + * util.c, system.h, makepath.c, extern.h: don't define chown() + and don't typedef uid_t and gid_t if we are being compiled + by DJGPP. + + * copyin.c, extern.h, global.c, main.c: Added support for + --rename-batch-file. + + * copyin.c, copyout.c, extern.h: Cleaned up to pass gcc -Wall. + +Wed Dec 22 02:17:44 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu) + + * makepath.c, copypass.c, copyin.c: If cpio was creating a + directory that contained `.' in the pathname (e.g. `foo/./bar'), + it would complain that it could not create `.', since it already + exists. From schwab@issan.informatik.uni-dortmund.de (Andreas + Schwab). + + * mt.c: Added "eject" as a synonym for "offline". + + * util.c: Slight modification to when we lseek with + BROKEN_LONG_TAPE_DRIVER (do it every 1Gb, instead + of every 2Gb). + + * copyin.c, global.c, extern.h: Added --no-absolute-paths option, + to ignore absolute paths in archives. + +Tue Dec 21 01:30:59 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu) + + * util.c: Fix for copying new_media_message_after_number. From + Christian.Kuehnke@arbi.informatik.uni-oldenburg.de (Christian + Kuehnke). + +Thu Jul 29 20:35:57 1993 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu) + + * Makefile.in (config.status): Run config.status --recheck, not + configure, to get the right args passed. + +Mon Jul 19 23:01:00 1993 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu) + + * Makefile.in (libdir): Use standard GNU value -- + $(exec_prefix)/lib, not /etc. + (.c.o): Put CFLAGS last. + +Thu Jul 8 19:43:39 1993 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) + + * Makefile.in: Add rules for remaking Makefile, configure, + config.status. + +Mon Jul 5 14:54:08 1993 John Oleynick (juo@spiff.gnu.ai.mit.edu) + + * cpio.1: Updated man page for 2.3. + * Makefile.in: Create distribution with .gz extension, instead of .z. + +Tue Jun 29 18:54:37 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu) + + * Makefile.in: Added installdirs target (using mkinstalldirs). + * Added mkinstalldirs script. + * main.c, mt.c: Added --help option. Changed usage() to + take a stream and exit value (so --help can print on stdout + and return a 0 exit status). + * extern.h: Removed usage()'s prototype (it was out of date, + and only used in main.c). + +Thu May 6 00:22:22 1993 John Oleynick (juo@hal.gnu.ai.mit.edu) + + * cpio.1: Added hpbin and hpodc. + +Tue May 4 00:32:29 1993 John Oleynick (juo@hal.gnu.ai.mit.edu) + + * copyin.c (process_copy_in), copypass.c (process_copy_pass): When + deleting an existing file, if the file is a directory, use rmdir() + instead of unlink(). + +Thu Apr 29 14:43:56 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu) + + * tar.c (read_in_tar_header): Clear non-protection bits from + mode, in case tar has left some device bits in there. + +Wed Apr 28 10:36:53 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu) + + * util.c: Added code to try and work around broken tape drivers + that have problems with tapes > 2Gb. + + * copyout.c (process_copy_out): Pass file_hdr to + writeout_other_defers() and add_link_defer() by reference, + not by value. + + * copyin.c (process_copy_in): Pass file_hdr to defer_copyin() + and create_defered_links() by reference, not by value. + + * defer.c: include (to build on BSD 4.3 on HP300) + +Fri Apr 16 18:01:17 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu) + + * mt.c, util.c: Include if HAVE_SYS_MTIO_H is + defined, not HAVE_MTIO_H. + +Wed Apr 14 17:37:46 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu) + + * util.c: Include if HAVE_SYS_IO_TRIOCTL_H + is defined. + + * mt.c: Only include if HAVE_SYS_MTIO_H is defined. + +Fri Apr 2 13:09:11 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu) + + * configure.in: Added fnmatch to AC_REPLACE_FUNCS. Added + sys/io/trioctl.h to AC_HAVE_HEADERS. + + * Makefile.in: Removed fnmatch.o from OBJS. + + * copyin.c: Only include "fnmatch.h" if FNM_PATHNAME isn't + defined yet. + + * mt.c: Include if HAVE_SYS_IO_TRIOCTL_H is + defined. + +Mon Mar 29 17:04:06 1993 John Oleynick (juo@hal.gnu.ai.mit.edu) + + * Many changes for supporting HPUX Context Dependent Files; + also some bug fixes to fix problems with multiply (hard) linked + device files; minor changes to support HPUX format archives + (slightly broken?) System V.4 posix tar archives and HPUX + posix tar archives. + + * Makefile.in: New files defer.o, defer,c and defer.h; added + -DSYMLINK_USES_UMASK and -DHPUX_CDF comments; changed dist rule + to use gzip with tar, instead of compress. + + * copyin.c: changes for new arf_hpbinary and arf_hpascii formats; + HPUX CDF's; DEBUG_CPIO; fixes to properly handle multiple + links in newc and crc format archives (new routines defer_copyin(), + create_defered_links(), create_final_defers()); move most + multiple (hard) link code to new routines link_name() and + link_to_maj_min_ino(); use new macro UMASKED_SYMLINK instead of + symlink(). + + * copyout.c: fixes to properly handle multiple links in newc + and crc format archives (new routines last_link(), + count_defered_links_to_dev_ino(), add_link_defer(), + writeout_other_defers(), writeout_final_defers(), + writeout_defered_file()); support for new arf_hpbinary and + arf_hpascii formats; support for HPUX CDF's. + + * copypass.c: move most multiple link code to new routines + link_name() and link_to_maj_min_ino(); use new macro UMASKED_SYMLINK + instead of symlink(); support for HPUX CDF's. + + * extern.h: added arf_hpascii and arf_hpbinary archive enum types; + added debug_flag. + + * global.c: added debug_flag. + + * main.c: added debug_flag; support for hpodc and hpbin formats. + + * makepath.c: split from standard makpath.c to add support + for HPUX CDF's. + + * mt.c: added !defined(__osf__) (from Andrew Marquis + ). + + * system.h: new macro UMASKED_SYMLINK + + * tar.c: minor changes to read (slightly broken?) System V.4 posix + tar archives and HPUX posix tar archives. + + * util.c: HPUX CDF support (including new routines + add_cdf_double_slashes() and islasparentcdf()); new routine + umasked_symlink(). + +Sun Mar 14 23:00:14 1993 Jim Meyering (meyering@comco.com) + + * copypass.c (process_copy_pass): Use <=, not just <, when comparing + mtimes. From Pieter Bowman . + +Fri Jan 15 14:35:37 1993 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu) + + * copyin.c: Move include of fnmatch.h to get right FNM* macros. + +Tue Nov 24 08:45:32 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) + + * Version 2.2. + + * copyout.c (process_copy_out): Add parens for gcc -Wall. + From Jim Meyering. + + * system.h: Use HAVE_FCNTL_H, not USG. + + * dstring.c, mt.c, system.h: Use HAVE_STRING_H, not USG. + +Fri Nov 20 22:47:18 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) + + * copyin.c (read_in_binary): Copy the dev and ino that are + already in `file_hdr' into `short_hdr'. + From dao@abars.att.com (David A Oshinsky). + + * system.h [!_POSIX_VERSION]: Declare lseek as off_t, not long. + From Karl Berry. + +Wed Oct 14 13:53:41 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) + + * Version 2.1. + +Tue Oct 13 22:51:34 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) + + * main.c: Add --swap equivalent to -b. + + * mt.c: Add f_force_local variable and -V --version option. + +Fri Oct 2 18:42:27 1992 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu) + + * main.c (long_opts, usage): Add --force-local option. + +Thu Oct 1 23:23:43 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) + + * main.c (process_args) [__MSDOS__]: Don't call geteuid. + + * copyin.c (read_in_{old,new}_ascii): Use `l' for sscanf into longs. + * copyout.c (write_out_header): Ditto for sprintf. + * global.c, extern.h: Make input_size and output_size long. + +Thu Sep 10 23:39:30 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) + + * global.c, extern.h: Add new var f_force_local to work with + rmt.h change from tar. + +Sun Aug 23 00:18:20 1992 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu) + + * Version 2.0. + + * tar.c (otoa): Compute value in an unsigned long, not an int. + * copyout.c (write_out_header) [__MSDOS__]: Don't use dev_t. + + * main.c (process_args): By default, don't chown for non-root users. + +Sat Aug 22 14:17:54 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) + + * global.c, extern.h: Use uid_t and gid_t. + + * main.c (main) [__EMX__]: Expand wildcards. + * system.h [__EMX__]: Alias some error names. From Kai Uwe Rommel. + + * extern.h [__STDC__]: Use prototypes. + + * copyin.c (process_copy_in), copyout.c (process_copy_out), + copypass.c (process_copy_pass): Open all files with O_BINARY. + Add cast to chmod call. + * util.c: Add cast to bcopy calls. Make hash_insert static. + From Kai Uwe Rommel. + +Thu Aug 20 22:03:49 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) + + * util.c (peek_in_buf): Don't print "end of file" before + getting the next reel of medium. + + * copyin.c (read_in_old_ascii): Allocate space for NUL terminator. + Print newline for dot line when done, even if appending. + +Thu Jul 23 16:34:53 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) + + * tar.c (write_out_tar_header, read_in_tar_header) + [__MSDOS__]: Don't try to get user and group names. + * extern.h: Don't declare the functions to do it (need uid_t). + + * main.c [__MSDOS__]: Ignore the -R option. + + * system.h: Define makedev if defining major and minor. + + * copyin.c, copyout.c [__MSDOS__]: setmode on archive_des, not + 0 and 1. + +Sat Jul 18 14:30:55 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) + + * tar.c, stripslash.c, userspec.c, cpiohdr.h, tar.h, tarhdr.h, + system.h: New files. + * Move portability stuff from various files to system.h. + * cpio.h: Rename header structure and members, and add + new structure for SVR4 format. + * copyin.c, copyout.c: Use the new structure internally, the + old one only for I/O in the old formats. + * copyin.c (read_in_header): Recognize the new archive formats. + (read_in_new_ascii, read_pattern_file, skip_padding): New functions. + (swab_array): Do the swapping using char pointers instead of + bitwise arithmetic. + (process_copy_in): Handle byte and halfword swapping and new formats. + Ok if a directory we want to make already exists, but set its perms. + Do chmod after chown to fix any set[ug]id bits. + Use `struct utimbuf' instead of a long array. + * copyout.c (write_out_header): Handle new formats. + (process_copy_out): Use `struct utimbuf'. + Handle appending and new formats. + Remove any leading `./' from filenames. + (read_for_checksum, clear_rest_of_block, pad_output): New functions. + * copypass.c (process_copy_pass): Use `struct utimbuf'. + Ok if a directory we want to make already exists, but set its perms. + Do chmod after chown to fix any set[ug]id bits. + Don't change perms of `.'. + * extern.h, global.c: Replace the separate format flags with + one variable. Add new variables for the new options. + * main.c: Add new options -A --append, -H --format, -C --io-size, + -M --message, --no-preserve-owner, -R --owner, -E --pattern-file, + -V --dot, -s --swap-bytes, -S --swap-halfwords, -b, -I, -k, -O. + (usage): Document them. + (process_args): Recognize them. Use open_archive. + (initialize_buffers): Allow room for tar archives and double buffers. + * util.c (empty_output_buffer_swap): New function. + (empty_output_buffer): Call it if swapping current file. + Check additional end of media indicators. + (swahw_array, peek_in_buf, prepare_append, open_archive, + set_new_media_message): New functions. + (fill_input_buffer): Don't print error message if end of media. + (toss_input): Don't seek, always read. + (copy_files): Update crc if needed. + (find_inode_file, add_inode): Check major and minor numbers as + well as dev. + (get_next_reel): Prompt user if archive name is unknown. + Print fancy messages. + Close the archive and reopen it. + + Above primarily from John Oleynick . + + * util.c (find_inode_file): Use modulus when computing initial + loop index. + (add_inode): Zero out new entry. + From scott@sctc.com (Scott Hammond). + + * cpio.h, copyin.c, copyout.c: Rename `struct cpio_header' + members from h_foo to c_foo. + +Wed May 20 00:09:26 1992 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu) + + * copyin.c: If we include a header file specifically to get + major et al., assume we have them. + +Mon Mar 9 19:29:20 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) + + * mt.c (main): rmtclose the tape file descriptor. + + * main.c (main): rmtclose the archive, if not in copy-pass mode. + + * util.c (create_all_directories): Don't print a message when + creating a directory, for UNIX compat. + + * copyin.c (process_copy_in), copypass.c (process_copy_pass): + Skip file if it has the same timestamp as existing file, not just + if it is older than existing file, for UNIX compat. + +Tue Mar 3 12:06:58 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu) + + * main.c, mt.c (usage): Document long options as starting with + -- instead of +. + + * extern.h: Only declare lseek if not _POSIX_VERSION. + +Tue Dec 24 00:19:45 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) + + * copyin.c: Use MAJOR_IN_MKDEV and MAJOR_IN_SYSMACROS instead + of USG and _POSIX_VERSION to find major and minor macros. + + * mt.c: Use unistd.h and stdlib.h if available. + + * copyin.c, copyout.c, copypass.c, util.c, extern.h: Change + POSIX ifdefs to HAVE_UNISTD_H and _POSIX_VERSION. + +Sun Aug 25 06:31:08 1991 David J. MacKenzie (djm at apple-gunkies) + + * Version 1.5. + + * bcopy.c: New file (moved from util.c). + + * mt.c (print_status): Not all hpux machines have mt_fileno + and mt_blkno; rather than trying to track HP's product line, + just assume none of them have them. + + * util.c (copy_buf_out, copy_in_buf): Use more efficient + copying technique for a big speedup. + +Fri Aug 2 04:06:45 1991 David J. MacKenzie (djm at apple-gunkies) + + * configure: Support +srcdir. Create config.status. + Remove it and Makefile if interrupted while creating them. + +Thu Jul 18 09:43:40 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) + + * Many files: use __MSDOS__ instead of MSDOS. + + * util.c, configure: Use NO_MTIO instead of HAVE_MTIO, to keep + up with tar and rtapelib.c. + +Mon Jul 15 13:45:30 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) + + * configure: Also look in sys/signal.h for signal decl. + +Thu Jul 11 01:50:32 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) + + * Version 1.4. + + * configure: Remove /etc and /usr/etc from PATH to avoid + finding /etc/install. + +Wed Jul 10 01:40:07 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) + + * makefile.pc: Rewrite for Turbo C 2.0. + * util.c [__TURBOC__] (utime): New function. + * alloca.c, tcexparg.c: New files. + + * extern.h [STDC_HEADERS]: Don't declare malloc and realloc. + + * main.c [MSDOS]: Make binary mode the default. + * copyin.c, copyout.c: Make stdin or stdout binary mode as + appropriate (so cpio archives don't get corrupted). + + * Many files: Use if STDC_HEADERS as well as if USG. + + * configure, Makefile.in: $(INSTALLPROG) -> $(INSTALL), + $(INSTALLTEXT) -> $(INSTALLDATA). + +Mon Jul 8 23:18:28 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) + + * configure: For some library functions that might be missing, + conditionally add the .o files to Makefile instead of + defining func_MISSING. + * mkdir.c: Renamed from mkrmdir.c. + +Sat Jul 6 02:27:22 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu) + + * configure: echo messages to stdout, not stderr. + Use a test program to see if alloca needs -lPW. + +Thu Jun 27 16:15:15 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu) + + * copyin.c (process_copy_in), copyout.c (process_copy_out), + copypass.c (process_copy_pass): Check close return value for + delayed error notification because of NFS. + +Thu Jun 20 02:43:33 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu) + + * configure: Include $DEFS when compiling test programs. + + * util.c: Only declare getpwuid and getgrgid if not POSIX. + + * Version 1.3. + + * copyin.c: Use time_t, not long, for time values. + + * mt.c (print_status): Special cases for HP-UX and Ultrix. + + * util.c: Compile bcopy if USG or STDC_HEADERS, not BCOPY_MISSING. + +Tue Jun 11 16:40:02 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu) + + * copyin.c: Don't include sys/sysmacros.h if _POSIX_SOURCE. + + * copyin.c, copyout.c, copypass.c: Don't include sys/file.h if POSIX. + + * util.c: Include sys/types.h before, not after, pwd.h and grp.h. + + * configure: New shell script to aid configuration and create + Makefile from Makefile.in. + + * copyin.c (process_copy_in): Use POSIX.2 fnmatch instead of + glob_match. + +Mon Jun 10 22:11:19 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu) + + * global.c, extern.h: New variable, name_end. + * main.c (process_args, usage): Add -0 +null option to set it. + * copypass.c (process_copy_pass), copyout.c (process_copy_out): + Use it. + + * dstring.c (ds_fgetstr): New function made from ds_fgets. + (ds_fgets, ds_fgetname): Implement as front ends to ds_fgetstr. + +Sun Jun 2 15:45:24 1991 David J. MacKenzie (djm at wheat-chex) + + * most files: use GPL version 2. + +Sat May 18 11:39:22 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu) + + * copyin.c, copypass.c: Take out #ifdef MSDOS around chown. + * util.c [MSDOS]: Provide dummy chown. + +Fri May 17 21:29:05 1991 David J. MacKenzie (djm at churchy.gnu.ai.mit.edu) + + * Version 1.2. + + * makefile.pc, cpio.cs: Update for new source and object files. + +Fri Mar 15 05:48:36 1991 David J. MacKenzie (djm at geech.ai.mit.edu) + + * global.c, extern.h: New variable `archive_desc'. + * main.c (process_args): Set it. + * copyout.c (process_copy_out), copyin.c (process_copy_in): + Use it. + + * copyout.c (process_copy_out), copyin.c (process_copy_in): + Remote tapes are special and not seekable; don't fstat them. + + * main.c (main, usage): Add -F, +file option. Use rmtopen. + (main): Exit after printing version number. + * util.c (empty_output_buffer): Use rmtwrite instead of write. + (fill_input_buffer): Use rmtread instead of read. + (tape_offline): Use rmtioctl instead of ioctl. + Test HAVE_MTIO instead of MTIO_MISSING, for tar compatibility. + +Thu Mar 14 17:49:57 1991 David J. MacKenzie (djm at geech.ai.mit.edu) + + * util.c (create_all_directories): Use make_path to do the work. + +Sat Jan 12 15:32:15 1991 David J. MacKenzie (djm at geech.ai.mit.edu) + + * copyin.c, copyout.c, copypass.c, util.c: Only declare + `errno' if not MSDOS. Some Unix errno.h do, some don't . . . . + + * global.c, extern.h: Make `input_size' and `output_size' + unsigned, for 16 bit machines. + + * copyin.c (print_name_with_quoting): All non-ctrl chars are + printable on MS-DOS. + + * util.c (empty_output_buffer): Never make sparse files; + can create unrunnable executables. + * copyin.c, copyout.c, copypass.c: Callers changed. + * util.c (finish_output_file): Function removed. + +Tue Nov 6 15:47:16 1990 David J. MacKenzie (djm at apple-gunkies) + + * copyin.c, util.c, extern.h: Rename copystring to xstrdup. + +Mon Oct 29 02:24:41 1990 David J. MacKenzie (djm at apple-gunkies) + + * util.c (empty_output_buffer): Only make sparse files if + NO_SPARSE_FILES is undefined, to accomodate dumb kernels. + +Wed Jul 25 18:48:35 1990 David J. MacKenzie (djm at albert.ai.mit.edu) + + * util.c (getuser, getgroup): Make uid and gid unsigned short, + not int. + +Sat Jul 21 00:44:44 1990 David J. MacKenzie (djm at apple-gunkies) + + * copyin.c, copyout.c, copypass.c, util.c, cpio.h: Add ifdefs + for MSDOS. + +Sun Jul 15 23:51:48 1990 David J. MacKenzie (djm at albert.ai.mit.edu) + + * copyin.c, copyout.c, copypass.c, global.c, extern.h, util.c: + Use longs where appropriate, for 16 bit machines. + +Sun Jul 8 22:58:06 1990 David J. MacKenzie (djm at apple-gunkies) + + * main.c (process_args, usage): Change -b option to -O (old), to + allow adding byte swapping later. + +Sat Jul 7 14:48:35 1990 David J. MacKenzie (dave at edfmd) + + * Version 1.1. + + * cpio.h: Make `mtime' and `filesize' unsigned long. + * copyin.c (read_in_binary), copyout.c (write_out_header): + High short-word of `mtime' and `filesize' always comes first. + + * (read_in_ascii, read_in_binary): New functions, from code in + read_in_header. + (read_in_header): Search for valid magic number, then fill in + rest of header using read_in_ascii and read_in_binary. + * global.c, extern.h: New variable, `binary_flag'. + * main.c (process_args): Recognize new -b +binary option. + * util.c [BCOPY_MISSING] (bcopy): New function. + +Wed Jul 4 00:40:58 1990 David J. MacKenzie (djm at apple-gunkies) + + * main.c (process_args): Add local pointers to functions to + work around a pcc bug found on a Convex. + + * copyin.c (process_copy_in), util.c (toss_input, + create_all_directories, add_inode): Don't use `index' as a + variable name. + +Tue Jul 3 02:33:36 1990 David J. MacKenzie (djm at apple-gunkies) + + * version 1.0. + +Mon Jul 2 23:18:56 1990 David J. MacKenzie (djm at twiddle) + + * copyin.c (process_copy_in), copyout.c (process_copy_out), + copypass.c (process_copy_pass): Print "1 block", not "1 blocks". + + * copyin.c (process_copy_in), copypass.c (process_copy_pass): + Unlink existing dest. file unless either it is newer and + not unconditional, or it is a directory. + +Mon Jul 2 03:57:41 1990 David J. MacKenzie (dave at edfmd) + + * util.c (xrealloc): New function. + * dstring.c (ds_resize): Use xrealloc instead of free and + xmalloc. Never shrink the string. + + * copypass.c (process_copy_pass): More efficient + string handling while constructing output filename. + + * global.c, extern.h, main.c, cpio.h: Change from an enum, + `copy_command', to a pointer to a void function, `copy_function'. + + * cpio.h (struct cpio_header): Make most fields unsigned. + Rename h_filesize to h_filesizes and h_mtime to h_mtimes, and + add new `long' fields with the old names at the end of the + structure. + * copyin.c (read_in_header): Set the long fields from the + short arrays, making sure longs are aligned properly. + (process_copy_in, long_format): Use the long fields. + * copyout.c (write_out_header): Set the short arrays from the + long fields, making sure longs are aligned properly. + (process_copy_out): Use the long fields. + + * global.c, extern.h: New variable `output_is_seekable'. + * util.c (empty_output_buffer): If output_is_seekable, use + lseek to write blocks of zeros. + (finish_output_file): New function. + * copyin.c (process_copy_in), copyout.c (process_copy_out), + copypass.c (process_copy_pass): Set `output_is_seekable' + correctly and call finish_output_file. + * main.c (initialize_buffers): Allocate space for sentinel in + `output_buffer'. + + * global.c, extern.h: New variable `numeric_uid'. + * main.c (process_args): Accept -n +numeric-uid-gid option, like ls. + * copyin.c (long_format): Use numeric_uid. + + * copyin.c (process_copy_in), copyout.c (process_copy_out), + copypass.c (process_copy_pass): Don't (for verbose) print the + names of files that are not copied because of errors. Try to + create missing directories for all file types. Free temporary + buffers on error. + +Sat Jun 30 14:28:45 1990 David J. MacKenzie (djm at apple-gunkies) + + * version.c: New file. + * main.c: Add -V, +version option. + * Makefile [dist]: Extract version number from version.c. + +Sat Jun 30 12:44:47 1990 David J. MacKenzie (dave at edfmd) + + * global.c, extern.h, copyin.c, copyout.c, util.c: Rename + `{input,output}_is_regular' to `{input,output}_is_special' and + reverse the truth value. + + * global.c, extern.h: New variable `input_is_seekable' to + control whether to skip data with lseek or read. + * copyin.c (process_copy_in): Set it. + * util.c (toss_input): Use it. + + * global.c, extern.h: New variable `xstat' that selects stat + or lstat for input files. + * main.c (process_args): New option -L, +dereference to set + xstat to stat instead of lstat. + (usage): Document it. + * copyout.c (process_copy_out), copypass.c + (process_copy_pass): Use *xstat on input file. + +Sat Jun 30 01:53:12 1990 David J. MacKenzie (dave at edfmd) + + * dstring.c (ds_init): Return void because return value was + never used. + (ds_resize): Ditto, and free old value instead of new one. + + * util.c (empty_output_buffer, fill_input_buffer, + copy_out_buf, copy_in_buf, toss_input, copy_files): Return + void instead of an error value and make errors fatal + immediately instead of several levels up, to prevent printing + of multiple error messages by different levels of functions. + + * copyin.c (read_in_header): Return void, because the error + handling all happens at lower levels. + (print_name_with_quoting): New function. + (long_format): Call print_name_with_quoting. Take additional + arg for name of linked-to file, and print it if nonzero. + (process_copy_in): For verbose listing of symlinks, read in + the linkname and pass it to long_format. + + * extern.h: Declare some more functions. + +Thu Jun 28 16:07:15 1990 David J. MacKenzie (dave at edfmd) + + * copypass.c (process_copy_pass): Warn about unknown file types. + + * copyout.c (process_copy_out): Check fstat return for error. + Record filesize of 0 for special files. Warn about unknown + file types. + + * copyin.c (process_copy_in): Warn about unknown file types. + (read_in_header): Warn about byte-reversed binary headers. + +Sat Jun 23 22:50:45 1990 David J. MacKenzie (dave at edfmd) + + * main.c (main): Set umask to 0 so permissions of created + files are preserved. + + * copyin.c, copyout.c, copypass.c, util.c: Pass file + descriptors as ints, not pointers to ints. + Cast file timestamps and sizes to long *, not int *, for 16 + bit machines. + Use lstat instead of stat, if available. + Handle FIFO's, sockets, and symlinks, if supported by O.S. + + * copyin.c (process_copy_in), copyout.c (process_copy_out): + Don't consider FIFO'S, sockets, etc. to be possible tape drives. + + * util.c (create_all_directories): Fix incorrect loop + termination check. Only copy string if it contains slashes. + Don't check whether directory "" exists. + (tape_offline): Code moved from get_next_reel. + (get_next_reel): Print message before taking tape offline. + Read a line of arbitrary length. + + * copyout.c, copyin.c, copypass.c: Always use utime, not utimes. + + * copyin.c (swab_short): New macro. + (swab_array): New function. + (read_in_header): In binary mode, if a byte-swapped header is + read, swap the bytes back. + (process_copy_in, process_copy_pass): Don't stat each file to + create unless !unconditional_flag. Create device files correctly. + Don't temporarily allow files being created to be read by + other users. Don't unnecessarily chmod special files. + +Thu May 31 20:51:43 1990 David J. MacKenzie (djm at albert.ai.mit.edu) + + * copyin.c (long_format): Use mode_string to format + file protections instead of doing it ourselves. + (protections): Function removed. + +Sat Apr 14 02:31:01 1990 David J. MacKenzie (djm at albert.ai.mit.edu) + + * cpio.h (struct cpio_header): Make inode, mode, uid, gid + fields unsigned. + + * util.c (getgroup): New function. + * copyin.c (long_format): Print group name of files. + Print file size, etc. as unsigned integers, not signed. + + * main.c (process_args): If -t is given and neither -i, -o, or + -p is given, assume -i. + + * Add -f, +nonmatching option. + * main.c: Rename +out to +create, +in to +extract, + +modification-time to +preserve-modification-time, + +pass to +pass-through. + + * copyin.c (process_copy_in), copypass.c (process_copy_pass): + Don't complain in chown fails because the user doesn't have + permission. + +Fri Apr 13 13:53:20 1990 David J. MacKenzie (djm at albert.ai.mit.edu) + + * Add ifdefs for USG/Xenix. + * util.c (cpio_error): Function removed. + * Use error instead of cpio_error, so system error messages + will be included. + * cpio.h: Rename 'hdr_struct' to 'struct cpio_header'. + * Move definition of xmalloc from dstring.c to util.c. + * global.c, extern.c: Add global `program_name'. + * main.c (main): Set program_name. + (process_args): Rename +reset-atime to +reset-access-time, + +table to +list. + Have +block-size take an argument. + +Thu Apr 12 13:33:32 1990 David J. MacKenzie (djm at rice-chex) + + * util.c (find_inode_file): Make inode an int, not a short. + + * Make functions that don't return a value have type void. + Add some casts to function calls. + +Wed Apr 11 14:55:28 1990 David J. MacKenzie (djm at albert.ai.mit.edu) + + * main.c (process_args): -i, -o, and -p don't take arguments. + + * main.c (process_args): Get the non-option args from the + correct elements of argv. + +Tue Apr 10 00:20:26 1990 David J. MacKenzie (djm at albert.ai.mit.edu) + + * Indent source code and update copyrights. + + * cpio.c (usage): Change `collection' to `archive' in message. + +Thu Dec 28 03:03:55 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu) + + * dstring.c (xmalloc): Don't return a null pointer if size is 0, + on the assumption that trying to allocate 0 bytes is a bug that + should be trapped. + +Wed Dec 20 03:24:48 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu) + + * All files: Change from GNU CPIO General Public License to + GNU General Public License. + +Mon Dec 18 13:18:36 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu) + + * Makefile: Add clean target and defines for CC and LDFLAGS. + Add dist target and SRCS, DISTFILES macros. Add tags and TAGS targets. + * dstring.c (ds_fgets): Read characters into an int, not char. + (xmalloc): New function. + (out_of_memory): Function removed. + Global: use xmalloc instead of malloc and out_of_memory. + * extern.h, global.c: Make flag variables ints instead of chars for + compatibility with getopt_long. + * extern.h: Declare more functions. + * main.c (usage): Put the whole usage message into a single string + and fix errors. + * util.c (create_all_directories): Remove unused variable. + (get_next_reel): Ditto. + * dstring.h: Declare function. + +Sat Dec 2 13:22:37 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu) + + * main.c: Change +copy-pass option to +pass, +copy-in to +in, + +copy-out to +out, and +mkdir to +make-directories, and add null + option to terminate table. + (process_args): Use the same code to handle long and short named + options. + (usage): Mention long options in message. + +Local Variables: +mode: indented-text +left-margin: 8 +version-control: never +End: -- cgit v1.1