/ [cpio] / cpio / ChangeLog
To checkout: cvs -d:pserver:anonymous@cvs.gnu.org.ua:/cvsmirror/cpio co cpio/ChangeLog
Puszcza

Contents of /cpio/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.87 - (show annotations)
Thu Mar 6 15:56:20 2008 UTC (13 years, 7 months ago) by gray
Branch: MAIN
CVS Tags: HEAD
Changes since 1.86: +4 -1 lines
Update

1 2008-03-06 Sergey Poznyakoff <gray@gnu.org.ua>
2
3 * bootstrap: Update .cvsignore files.
4 * po/.cvsignore: Update.
5
6 * bootstrap: Sync with tar.
7 * po/.cvsignore: New file.
8
9 2008-02-09 Sergey Poznyakoff <gray@gnu.org.ua>
10
11 * NEWS, configure.ac: Raise the patchlevel number.
12 * THANKS: Update
13
14 * doc/cpio.texi: Fix a typo.
15 * src/extern.h (warn_if_file_changed): Fix type of the 2nd
16 argument.
17 * src/tar.c (write_out_tar_header): Stylistic change.
18 * src/util.c (copy_files_disk_to_disk): Fix types of automatic
19 variables.
20 (warn_if_file_changed): Fix type of the 2nd argument.
21
22 Patches supplied by Ladislav Michnovic.
23
24 2008-02-08 Sergey Poznyakoff <gray@gnu.org.ua>
25
26 * po/POTFILES.in: Add missing files.
27 * src/Makefile.am (INCLUDES): Add -I$(top_builddir)/lxib
28 * src/extern.h (warn_if_file_changed): Fix type of the 3rd
29 argument.
30 * src/util.c (copy_files_tape_to_disk)
31 (copy_files_disk_to_tape): Fix types of size and k.
32 (warn_if_file_changed): Fix type of the 3rd argument.
33
34 2007-12-05 Sergey Poznyakoff <gray@gnu.org.ua>
35
36 Fix mingw build. Thanks to Robert Millan.
37
38 * NEWS, THANKS: Update.
39 * bootstrap: Create lib/system.c, m4/sysdep.m4, update lib/system.h.
40 * mingw.m4, sysdep.m4: New files.
41 * configure.ac: Raise version number to 2.9.90.
42 Call CPIO_SYSDEP. Remove the call to gl_USE_SYSTEM_EXTENSIONS.
43 (AC_CHECK_HEADERS): Add process.h sys/ioctl.h
44 * lib/Makefile.am (libcpio_a_SOURCES): Add system.c
45 * src/idcache.c: Include system.h
46 * src/userspec.c: Remove alloca stuff (already handled by
47 gnulib). Include alloca.h.
48 Remove useless declarations of get.* functions.
49 * src/util.c: Include sys/ioctl.h conditionally.
50
51 2007-09-28 Sergey Poznyakoff <gray@gnu.org.ua>
52
53 * src/copyin.c (read_in_binary): Fix passing improper argument
54 to swab_array. Reported by Dr. David Alan Gilbert.
55
56 2007-06-28 Sergey Poznyakoff <gray@gnu.org.ua>
57
58 * bootstrap: Update for the change of the TP URL
59
60 * NEWS: Update
61 * src/extern.h, src/makepath.c (make_path): Remove mode
62 argument. All callers updated.
63 * src/util.c (apply_delayed_set_stat): Use inverted permissions
64 from data->stat.
65 * tests/interdir.at: New test case.
66 * tests/Makefile.am, tests/testsuite.at: Add interdir.at
67
68 * src/copyin.c, src/copypass.c: Save current umask before
69 processing and call apply_delayed_set_stat afterwards
70 * src/extern.h (newdir_umask): New global
71 (delay_set_stat,repair_delayed_set_stat)
72 (apply_delayed_set_stat): New functions
73
74 * src/global.c (newdir_umask): New global
75 * src/idcache.c: Include xalloc.h
76 * src/main.c: New warning control option -W interdir
77 * src/makepath.c: Rewrite using delayed set_stat functions
78 * src/util.c (create_all_directories): Update call to make_path
79 (delay_set_stat,repair_delayed_set_stat)
80 (apply_delayed_set_stat): New functions
81
82 * NEWS, doc/cpio.1, doc/cpio.texi: Update
83 * src/copyin.c, src/copyout.c, src/copypass.c: Number of blocks is
84 size_t.
85 * src/extern.h, src/global.c: Use size_t for buffer sizes and
86 off_t for total I/O bytes.
87
88 2007-06-27 Sergey Poznyakoff <gray@gnu.org.ua>
89
90 Relicense under GPLv3
91
92 2007-06-08 Sergey Poznyakoff <gray@gnu.org.ua>
93
94 * configure.ac, NEWS: Version number 2.8
95 * bootstrap.conf: Update
96
97 2007-06-07 Sergey Poznyakoff <gray@gnu.org.ua>
98
99 * NEWS: Update
100 * configure.ac: Raise version to 2.7.90
101 * doc/cpio.texi: Update
102 * src/extern.h (set_perms, set_file_times): Take file descriptor
103 as the first argument.
104 * src/util.c (set_perms): Take file descriptor
105 as the first argument and use fchmod/fchown if available. Fixes
106 CAN-2005-1111.
107 * src/copyin.c, src/copyout.c, src/copypass.c: Update calls to
108 set_perms.
109 * src/makepath.c: Remove useless includes.
110
111 * src/util.c (set_perms, stat_to_cpio): Use CPIO_UID and CPIO_GID
112 macros to set uid and gid
113 * src/main.c (process_args): Allow to use --owner in copy-out mode.
114 * THANKS: Add Mike Frysinger
115
116 2007-05-18 Sergey Poznyakoff <gray@gnu.org.ua>
117
118 * bootstrap: Update from tar repository
119 * doc/cpio.texi: Fix typo
120 * src/copyin.c (from_ascii): Bugfix: allow for empty fields
121 * src/copyout.c (process_copy_out): Fix memory leaks on
122 orig_file_name.
123 * src/copypass.c (process_copy_pass): symlink_error takes two
124 arguments.
125 * src/extern.h: Add missing includes.
126
127 2006-12-18 Sergey Poznyakoff <gray@gnu.org.ua>
128
129 * README-cvs: New file
130 * lib/Makefile.tmpl, lib/bcopy.c, lib/mkdir.c, lib/strdup.c,
131 lib/strerror.c, lib/.cvsignore, po/.cvsignore,
132 po/Makevars: Removed
133 * lib/Makefile.am: New file
134 * po/POTFILES.in: Update
135 * bootstrap: Synch with tar.
136 * configure.ac: Update
137 * gnulib.modules: Add lchown, strerror
138 * src/Makefile.am: Update
139 * src/main.c, src/mt.c: Include rmt-command.h instead of localedir.h
140 * .cvsignore, doc/.cvsignore: Sort
141
142 * src/util.c (sparse_write): Static. Provide a forward
143 declaration. Define enum sparse_write_states inside the function.
144
145 * src/copyin.c (long_format): Use PRIuMAX for printing file size
146 * src/copyout.c (write_out_binary_header): Fix size conversion
147 * src/extern.h (tape_toss_input, warn_if_file_changed): Last
148 argument is off_t
149 * src/util.c (tape_toss_input, warn_if_file_changed): Last
150 argument is off_t
151 (warn_if_file_changed): Use ngettext
152
153 2006-11-15 Sergey Poznyakoff <gray@gnu.org.ua>
154
155 * src/copypass.c: Fix setting output file permissions
156
157 2006-11-13 Sergey Poznyakoff <gray@gnu.org.ua>
158
159 * doc/cpio.texi: Consistently use @option{} for displaying command
160 line options.
161 Fix formatting in "Invoking `cpio'" section
162 * src/main.c (process_args): Fix usage error diagnostics in
163 copy-pass mode.
164
165 2006-10-24 Sergey Poznyakoff <gray@gnu.org.ua>
166
167 * src/copyout.c (process_copy_out): Add terminating zero to the
168 link_name.
169
170 * tests/symlink.at: New testcase
171 * tests/Makefile.am: New test symlink.at
172 * tests/inout.at: Add keywords
173 * tests/testsuite.at (AT_SKIP_TEST): New macro
174 New test symlink.at
175
176 2006-10-21 Sergey Poznyakoff <gray@gnu.org.ua>
177
178 * configure.ac, NEWS: Version 2.7
179 * gnulib.modules: Add stdint
180 * src/util.c: Use STRINGIFY_BIGINT to display num_bytes
181
182 2006-09-27 Sergey Poznyakoff <gray@gnu.org.ua>
183
184 * TODO: Update
185 * README-alpha: Update
186 * bootstrap: Imported from tar
187 * configure.ac: Require autoconf 2.59 and gettext 1.15
188 * gnulib.modules: add inttypes
189 * doc/cpio.texi: Minor fixes
190 * po/Makevars: Remove automatically generated file
191 * po/.cvsignore: Add Makevars
192 * lib/.cvsignore: Update
193 * src/copyin.c, src/copyout.c, src/copypass.c, src/cpio.h,
194 src/cpiohdr.h, src/defer.c, src/defer.h, src/extern.h,
195 src/global.c, src/main.c, src/makepath.c, src/tar.c,
196 src/util.c: Update copyright year.
197
198 2006-07-04 Sergey Poznyakoff <gray@gnu.org.ua>
199
200 * bootstrap (update_po): Fix single translation update
201 * lib/Makefile.tmpl: Initialize AM_CPPFLAGS
202 (noinst_HEADERS): Add system-ioctl.h
203
204 Start rewriting using a better suited internal representation for
205 the file meta-data.
206
207 * src/cpiohdr.h (struct old_cpio_header): Remove unused fields
208 c_mtime, c_filesize and c_name.
209 (struct old_ascii_header): New data type
210 (struct new_ascii_header): New data type. Describes the header
211 structure, not its internal representation.
212 (struct cpio_file_stat): New data type. Describes internal
213 representation of a file metadata
214
215 * src/copyin.c (from_ascii): New function
216 Use cpio_file_stat for internal header representation.
217 * src/copyout.c: Use cpio_file_stat for internal header
218 representation. Among other things this fixes bug reported by
219 Peter Vrabec on Mar 2, 2006
220 (http://lists.gnu.org/archive/html/bug-cpio/2006-03/msg00000.html)
221 * src/copypass.c: Use cpio_file_stat for internal header
222 representation.
223 * src/tar.c: Likewise
224 * src/util.c: Likewise
225 * src/defer.c: Likewise
226 * src/defer.h: Likewise
227 * src/extern.h: Likewise
228 (from_ascii): New prototype
229 (LG_8,LG_16,FROM_OCTAL,FROM_HEX): New defines
230 * src/main.c: New command line option --HANG (hidden)
231
232 2006-03-12 Sergey Poznyakoff <gray@gnu.org.ua>
233
234 * tests/Makefile.am (AM_CPPFLAGS): Define LOCALEDIR
235
236 2006-02-18 Sergey Poznyakoff <gray@gnu.org.ua>
237
238 * gnulib.modules: Add stpcpy. Thanks Benigno B. Junior for
239 reporting.
240 * THANKS: Add Benigno B. Junior
241 * src/makepath.c: Fix indentation.
242
243 2005-11-16 Sergey Poznyakoff <gray@gnu.org.ua>
244
245 * src/copyout.c (process_copy_out): Fix typo.
246
247 2005-11-12 Sergey Poznyakoff <gray@gnu.org.ua>
248
249 * bootstrap: Minor fix
250 * src/copyout.c (write_out_header): Rewritten using separate
251 functions for each file format. Use to_ascii to convert numbers to
252 ascii representation. Check for overflows and report them if
253 appropriate. Return 0 if it is OK to proceed with archiving this
254 file, 1 otherwise. All callers updated.
255 * src/extern.h (write_out_header): Return int.
256
257 2005-10-28 Sergey Poznyakoff <gray@gnu.org.ua>
258
259 * src/util.c: Include paxlib.
260 * bootstrap: If file `.bootstrap' exists in the cwd and is
261 readable, prepend its contents to the command line.
262
263 Fix Debian bug 335580:
264
265 * src/copyout.c (read_for_checksum,write_out_header): CRC is a
266 32-bit unsigned value. Patch proposed by Jim Castleberry and
267 Peter Vrabec.
268 * src/extern.h (crc): Change declaration
269 * src/global.c: Likewise
270 * src/tar.c (tar_checksum): Return unsigned int
271
272 * THANKS: Add Jim Castleberry
273 * NEWS: Updated
274
275 2005-09-30 Sergey Poznyakoff <gray@gnu.org.ua>
276
277 * src/copyout.c (process_copy_out): Discern between original and
278 (eventually fixed) file name (in tar terminology, `file name'
279 vs. `member name'.
280
281 2005-09-08 Sergey Poznyakoff <gray@gnu.org.ua>
282
283 * gnulib.modules: Add utimens
284 * src/util.c (cpio_safer_name_suffix): Preserve ./ no matter what
285 the value of strip_leading_dots is.
286 (set_file_times): New function
287 * src/extern.h (set_file_times): New function
288 * src/copyin.c: Use set_file_times() to update file atime/mtime
289 * src/copyout.c: Likewise.
290 * src/copypass.c: Likewise.
291
292 2005-05-25 Sergey Poznyakoff <gray@Mirddin.farlep.net>
293
294 * src/copyin.c: Use cpio_safer_name_suffix() and CPIO_TRAILER_NAME
295 define instead of hardcoding the trailer file name.
296 * src/copyout.c: Likewise.
297 * src/cpio.h (CPIO_TRAILER_NAME): New define
298 * src/extern.h (cpio_safer_name_suffix): New proto
299 * src/tar.c: Use CPIO_TRAILER_NAME define instead of hardcoding
300 the trailer file name.
301 * src/util.c (cpio_safer_name_suffix): New function
302 (add_cdf_double_slashes): Add FIXME warning.
303
304 * lib/fatal.c: New file
305 * lib/Makefile.tmpl (libcpio_a_SOURCES): Add fatal.c
306 * src/copyout.c: Use error reporting functions from paxlib
307 * src/makepath.c: Likewise
308 * src/mt.c: Likewise
309 * src/main.c (fatal_exit): Moved to lib/fatal.c
310
311 2005-05-24 Sergey Poznyakoff <gray@Mirddin.farlep.net>
312
313 * src/copyin.c (process_copy_in): Use safer_name_suffix no matter
314 what the value of no_abs_paths_flag. The function knows better
315 what to do in any case.
316 * src/copyout.c (process_copy_out): Honor no_abs_paths_flag.
317 * src/main.c (options): Minor fixes.
318
319 2005-05-23 Sergey Poznyakoff <gray@Mirddin.farlep.net>
320
321 * bootstrap (copy_files): Create destination directory if it does
322 not exist.
323 Preserve longlong.m4 as longlong_gl.m4
324 * src/main.c: Include paxlib.h
325
326 2005-05-22 Sergey Poznyakoff <gray@Mirddin.farlep.net>
327
328 * lib/.cvsignore: Updated
329 * gnulib.modules: Add hash
330 * doc/cpio.texi (Reports): New chapter
331 * lib/Makefile.tmpl: Add new paxutils files.
332 * po/POTFILES.in: Likewise
333 * src/copyin.c [!HAVE_LCHOWN] (lchown): Define to 0 to avoid
334 changing ownership of the target file.
335 (process_copy_in): Use safer_name_suffix()
336 * src/main.c (parse_opt): Handle new --absolute-filenames option.
337 (process_args): Updated
338 * src/util.c: Rewrite inode lookup/insertion functions using hash
339 module.
340
341 u2005-05-20 Sergey Poznyakoff <gray@Mirddin.farlep.net>
342
343 * configure.ac: Raised version number to 2.6.90
344 * NEWS: Updated
345 * src/copyin.c: Use set_perms.
346 * src/copypass.c: Likewise.
347 * src/copyout.c (process_copy_out): Use stat_to_cpio() to convert
348 struct stat to struct new_cpio_header.
349 * src/defer.h: Remove legacy P_() stuff.
350 * src/dstring.c: Likewise
351 * src/extern.h: Likewise
352 * src/util.c (stat_to_cpio,set_perms): New functions
353 * doc/.cvsignore: Updated
354 * lib/.cvsignore: Updated
355 * tests/.cvsignore: Updated
356 * .cvsignore: Updated
357 * COPYING: Added to the repository
358
359 2005-05-19 Sergey Poznyakoff <gray@Mirddin.farlep.net>
360
361 * po/POTFILES.in: Add paxerror.c paxexit.c paxconvert.c
362
363 * bootstrap (copy_files): Accept optional third argument: a prefix
364 to be appended to destination file names.
365 Import paxutils/paxlib files.
366 * lib/Makefile.tmpl (libcpio_a_SOURCES): Add paxerror.c paxexit.c
367 paxconvert.c
368 * src/copyin.c: Use paxutils error reporting functions
369 * src/copyout.c: Likewise
370 * src/copypass.c: Likewise
371 * src/util.c: Likewise. Add missing includes
372 * src/main.c (USAGE_ERROR): Removed
373 (CHECK_USAGE,parse_opt,process_args): Use error() instead of USAGE_ERROR
374 (fatal_exit): New function
375 * src/tar.c (is_tar_filename_too_long): Removed unused variable
376
377 * Makefile.am, configure.ac, doc/Makefile.am,
378 doc/cpio.texi, doc/gendocs_template, headers/Makefile.am,
379 headers/fnmatch.h, lib/Makefile.tmpl, lib/mkdir.c,
380 lib/strdup.c, lib/strerror.c, src/Makefile.am,
381 src/copyin.c, src/copyout.c, src/copypass.c, src/cpio.h,
382 src/cpiohdr.h, src/defer.c, src/defer.h, src/dstring.c,
383 src/dstring.h, src/extern.h, src/filemode.c,
384 src/filetypes.h, src/global.c, src/idcache.c,
385 src/main.c, src/makepath.c, src/mt.c, src/tar.c,
386 src/tar.h, src/tarhdr.h, src/userspec.c, src/util.c,
387 tests/Makefile.am, tests/inout.at, tests/testsuite.at,
388 tests/version.at: Updated FSF postal mail address.
389
390 * bootstrap: Port recent changes from tar bootstrap.
391 * gnulib.modules: New file
392 * tests/Makefile.am (genfile_SOURCES,LDADD): Updated
393
394 * THANKS: Updated
395 * configure.ac: Remove check for gethostname, it is never used.
396 Remove check for setsockopt, it is provided by paxutils.
397
398 Fix LFS support issues. Proposed by Peter Vrabec and Dmitry V. Levin
399
400 * src/extern.h (copy_files_tape_to_disk, copy_files_disk_to_tape,
401 copy_files_disk_to_disk): Change num_bytes argument type from
402 long to off_t.
403 * src/util.c (copy_files_tape_to_disk, copy_files_disk_to_tape,
404 copy_files_disk_to_disk, disk_fill_input_buffer,
405 write_nuls_to_file): Likewise.
406 (write_nuls_to_file, copy_files_disk_to_tape,
407 copy_files_disk_to_disk): Handle `off_t num_bytes' properly.
408
409 * src/util.c (find_inode_file): Fix typos causing function to
410 occasionally miss inodes and, therefore, to copy out the same
411 (hard-linked) file several times to archive. Proposed by Brian
412 Mays.
413
414 2005-03-24 Sergey Poznyakoff <gray@Mirddin.farlep.net>
415
416 * src/main.c (process_args): Fixed discrepancy I have been
417 overlooking so far: cpio still does not handle --sparse option
418 the same way tar is handling it. --sparse is allowed in copy-in
419 and copy-pass modes, just as docs say it. Thanks Dmitry Levin.
420 * THANKS: Updated
421
422 2005-03-21 Sergey Poznyakoff <gray@Mirddin.farlep.net>
423
424 * src/util.c (disk_buffered_write): Fix typo introduced
425 2005-01-11.
426 * src/main.c (process_args): Fixed error message
427
428 2005-01-31 Sergey Poznyakoff <gray@Mirddin.farlep.net>
429
430 * src/main.c (main): Remove umask(0). Fixes CAN-1999-1572.
431 [__TURBOC__,__EMX__]: Removed
432 * src/copypass.c (process_copy_pass): Set umask 0
433 * src/copyin.c (process_copy_in): Likewise
434 * src/util.c (open_archive): Use MODE_RW.
435
436 2005-01-11 Sergey Poznyakoff <gray@Mirddin.farlep.net>
437
438 * doc/gendocs_template: Template file for gendocs.sh.
439 * doc/Makefile.am: Use gendocs.sh to generate webdocs.
440 * doc/cpio.texi: Updated.
441
442 * src/copyin.c: Use memset instead of bzero, memmove
443 (or memcpy, if appropriate), instead of bcopy, and
444 strchr/strrchr instead of index/rindex.
445 * src/copypass.c: Likewise.
446 * src/main.c: Likewise.
447 * src/makepath.c: Likewise.
448 * src/tar.c: Likewise.
449 * src/util.c: Likewise.
450 (write_nuls_to_file): Made extern. All callers updated
451
452 * src/copyout.c: Likewise. Use write_nuls_to_file instead
453 of explicitely accessing zeros_512
454 * src/userspec.c: Likewise.
455 Rename isnumber to isnumber_p. Proposed by
456 Albert Chin
457 * src/extern.h (zeros_512): Removed
458 (write_nuls_to_file): New function
459 * src/global.c (zeros_512): Removed
460
461 2005-01-06 Sergey Poznyakoff <gray@Mirddin.farlep.net>
462
463 * bootstrap: Add 'fileblocks' gnulib module
464 Create paxutils.m4
465 * configure.ac: Call cpio_PAXUTILS
466 * src/main.c: Remove ifdef around setlocale
467 * src/mt.c: Likewise
468
469 2004-12-21 Sergey Poznyakoff <gray@Mirddin.farlep.net>
470
471 * configure.ac: New option --enable-mt
472 Check for locale.h
473 * doc/cpio.info: Removed
474 * src/mt.c (main): Use argmatch_invalid()
475
476 2004-12-20 Sergey Poznyakoff <gray@Mirddin.farlep.net>
477
478 Released version 2.6. Sources up to this point are tagged
479 release_2_6.
480
481 * configure.ac: Raised version number to 2.6
482 * NEWS: Likewise
483 * bootstrap (update_po): Give -r to wget. Always remove index.html
484 Ignore alloca-opt module (it duplicates alloca)
485
486 2004-11-23 Sergey Poznyakoff <gray@Mirddin.farlep.net>
487
488 * src/main.c (enum cpio_options): Bugfix: Initialize first enum
489 value to 256.
490 * bootstrap: Add unlocked-io
491 * headers/argp.h: Removed
492 * headers/getopt.h: Removed
493 * headers/Makefile.am: Updated
494
495 2004-10-14 Sergey Poznyakoff <gray@Mirddin.farlep.net>
496
497 * src/copyout.c: Add trailing slash to directory names in
498 ustar format.
499 * src/makepath.c: Removed redeclaration of error().
500 * src/tar.c: Fixed deviations from POSIX.1-1988:
501 Properly split long file names. Fill in octal fields with zeros,
502 not spaces. Save only protection modes, not the whole mode.
503
504 * NEWS: Updated
505
506 2004-09-08 Sergey Poznyakoff <gray@Mirddin.farlep.net>
507
508 * NEWS: Updated
509 * TODO: Updated
510 * bootstrap: Install po files by default
511 * po/LINGUAS: Removed. File is generated automatically
512 * po/.cvsignore: Updated
513 * src/copyin.c: Implemented --to-stdout option
514 * src/copyout.c: Display the annoying 'truncating inode number'
515 message only if the user wishes it.
516 * src/extern.h: Added new globals.
517 * src/global.c: Likewise.
518
519 * src/main.c: Added support for --to-stdout and --warning options
520 * src/tar.c (read_in_tar_header): Use warn_junk_bytes()
521 * src/util.c (create_all_directories): Use dir_name.
522
523 * configure.ac: Added support for the test suite
524 * Makefile.am: Likewise
525
526 * tests: New directory
527 * tests/.cvsignore: New file
528 * tests/Makefile.am: New file
529 * tests/testsuite.at: New file
530 * tests/inout.at: New file
531 * tests/version.at: New file
532 * tests/atlocal.in: New file
533
534 2004-09-07 Sergey Poznyakoff <gray@Mirddin.farlep.net>
535
536 * src/main.c (process_args): Bugfix. Allow extra arguments
537 in copy_in mode.
538 * src/util.c (write_nuls_to_file): Use buffered I/O. All
539 callers changed. Thanks Matthew Braithwaite <mab@cnet.com>
540 for noticing.
541 Bugfix: extra_bytes was mistakenly used instead of blocks.
542 * THANKS: Added Matthew Braithwaite.
543
544 2004-09-06 Sergey Poznyakoff <gray@Mirddin.farlep.net>
545
546 Started merging with tar into paxutils. Sources before
547 this point are tagged alpha-2_50_90.
548
549 * bootstrap: New file
550 * autogen.sh: Removed
551 * Makefile.am: Updated
552 * NEWS: Updated
553 * README-alpha: Updated
554 * configure.ac: Updated
555 * doc/cpio.1: Updated
556 * po/POTFILES.in: Updated
557
558 * src/Makefile.am: Updated
559 * src/error.c: Removed
560 * src/dirname.c: Likewise
561 * src/xmalloc.c: Likewise
562 * src/stripslash.c: Likewise
563 * src/xstrdup.c
564 * src/gettext.h: Likewise
565 * src/system.h: Likewise
566 * src/rmt.h: Likewise
567 * src/getopt.c: Likewise
568 * src/getopt1.c: Likewise
569 * src/bcopy.c: Likewise
570 * src/fnmatch.c: Likewise
571 * src/mkdir.c: Likewise
572 * src/strdup.c: Likewise
573 * src/argp-ba.c: Likewise
574 * src/argp-eexst.c: Likewise
575 * src/argp-fmtstream.c: Likewise
576 * src/argp-fs-xinl.c: Likewise
577 * src/argp-help.c: Likewise
578 * src/argp-parse.c: Likewise
579 * src/argp-pv.c: Likewise
580 * src/argp-pvh.c: Likewise
581 * src/argp-xinl.c: Likewise
582 * src/pin.c: Likewise
583 * src/alloca.c: Likewise
584 * src/argmatch.c: Likewise
585 * src/rmt.c: Likewise
586 * src/rtapelib.c: Likewise
587 * src/strerror.c: Likewise
588
589 * src/copyin.c: Switched to ANSI C (sigh)
590 * src/copyout.c: Likewise
591 * src/copypass.c: Likewise
592 * src/defer.c: Likewise
593 * src/defer.h: Likewise
594 * src/dstring.c: Likewise
595 * src/dstring.h: Likewise
596 * src/extern.h: Likewise
597 * src/filemode.c: Likewise
598 * src/global.c: Likewise
599 * src/idcache.c: Likewise
600 * src/main.c: Likewise
601 * src/makepath.c: Likewise
602 * src/mt.c: Likewise
603 * src/tar.c: Likewise
604 * src/userspec.c: Likewise
605 * src/util.c: Likewise
606
607 * lib: New directory
608 * lib/Makefile.tmpl: New file
609 * lib/bcopy.c: Moved from ../src
610 * lib/mkdir.c: Likewise.
611 * lib/strdup.c: Likewise.
612 * lib/strerror.c: Likewise.
613
614 2004-08-30 Sergey Poznyakoff <gray@Mirddin.farlep.net>
615
616 * Makefile.am: Added headers to SUBDIRS.
617 * configure.ac: Check for AC_SYS_LARGEFILE.
618 Use AC_CONFIG_LINKS to provide for fnmatch.h and getopt.h on
619 the systems where these are missing
620 Check for argp and replace it if necessary.
621 * src/Makefile.am: Updated
622 * src/fnmatch.h: Moved to headers/
623 * src/getopt.h: Likewise.
624 * src/main.c: Option parsing rewritten using argp. Improved
625 option consistency checking.
626 * src/rmt.c: Include getopt.h
627
628 * src/argp-ba.c: New file
629 * src/argp-eexst.c: New file
630 * src/argp-fmtstream.c: New file
631 * src/argp-fs-xinl.c: New file
632 * src/argp-help.c: New file
633 * src/argp-parse.c: New file
634 * src/argp-pv.c: New file
635 * src/argp-pvh.c: New file
636 * src/argp-xinl.c: New file
637 * src/pin.c: New file
638
639 * headers: New directory
640 * headers/Makefile.am: New file
641 * headers/getopt.h: New file
642 * headers/argp.h: New file
643 * headers/fnmatch.h: New file
644 * headers/.cvsignore: New file
645
646 2004-03-02 Sergey Poznyakoff <gray@Mirddin.farlep.net>
647
648 * src/util.c (copy_files_disk_to_disk): Bugfix. If a file
649 grew n bytes in copy-pass mode, these n bytes got prepended
650 to the contents of all subsequent files. Fix provided by
651 Holger Fleischmann <holger_fleischmann@mra.man.de>
652 * THANKS: Added Holger Fleischmann.
653
654 2004-02-27 Sergey Poznyakoff <gray@Mirddin.farlep.net>
655
656 * src/makepath.c: Remove unneded typedefs
657
658 * src/copyin.c: Remove __MSDOS__ conditionals
659 * src/copyout.c: Likewise
660 * src/copypass.c: Likewise
661 * src/main.c: Likewise
662 * src/tar.c: Likewise
663 * src/util.c: Likewise
664
665 2004-02-27 Sergey Poznyakoff <gray@Mirddin.farlep.net>
666
667 Changed from flat to deep package layout. Added the framework
668 for NLS support.
669
670 * .cvsignore: Updated
671 * Makefile.am: Updated
672 * configure.ac: Updated
673 * NEWS: Updated
674 * README-alpha: Updated
675 * THANKS: Updated
676
677 * autogen.sh: New file
678
679 * alloca.c: Moved to src
680 * argmatch.c: Likewise
681 * bcopy.c: Likewise
682 * dstring.h: Likewise
683 * copyin.c: Likewise
684 * copyout.c: Likewise
685 * copypass.c: Likewise
686 * cpio.h: Likewise
687 * cpiohdr.h: Likewise
688 * defer.c: Likewise
689 * defer.h: Likewise
690 * dirname.c: Likewise
691 * dstring.c: Likewise
692 * dstring.h: Likewise
693 * error.c: Likewise
694 * extern.h: Likewise
695 * filemode.c: Likewise
696 * filetypes.h: Likewise
697 * fnmatch.c: Likewise
698 * fnmatch.h: Likewise
699 * getopt.c: Likewise
700 * getopt.h: Likewise
701 * getopt1.c: Likewise
702 * global.c: Likewise
703 * idcache.c: Likewise
704 * main.c: Likewise
705 * makepath.c: Likewise
706 * mkdir.c: Likewise
707 * mt.c: Likewise
708 * rmt.c: Likewise
709 * rmt.h: Likewise
710 * rtapelib.c: Likewise
711 * safe-stat.h: Likewise
712 * strdup.c: Likewise
713 * strerror.c: Likewise
714 * stripslash.c: Likewise
715 * system.h: Likewise
716 * tar.c: Likewise
717 * tar.h: Likewise
718 * tarhdr.h: Likewise
719 * userspec.c: Likewise
720 * util.c: Likewise
721 * xmalloc.c: Likewise
722 * xstrdup.c: Likewise
723
724 * cpio.1: Moved to doc
725 * cpio.texi: Likewise
726 * mt.1: Likewise
727
728 * src: New directory
729 * src/.cvsignore: New file
730 * src/Makefile.am: Likewise
731 * src/alloca.c: Likewise
732 * src/argmatch.c: Likewise
733 * src/bcopy.c: Likewise
734 * src/copyin.c: Likewise
735 * src/copyout.c: Likewise
736 * src/copypass.c: Likewise
737 * src/cpio.h: Likewise
738 * src/cpiohdr.h: Likewise
739 * src/defer.c: Likewise
740 * src/defer.h: Likewise
741 * src/dirname.c: Likewise
742 * src/dstring.c: Likewise
743 * src/dstring.h: Likewise
744 * src/error.c: Likewise
745 * src/extern.h: Likewise
746 * src/filemode.c: Likewise
747 * src/filetypes.h: Likewise
748 * src/fnmatch.c: Likewise
749 * src/fnmatch.h: Likewise
750 * src/getopt.c: Likewise
751 * src/getopt.h: Likewise
752 * src/getopt1.c: Likewise
753 * src/gettext.h: Likewise
754 * src/global.c: Likewise
755 * src/idcache.c: Likewise
756 * src/main.c: Likewise
757 * src/makepath.c: Likewise
758 * src/mkdir.c: Likewise
759 * src/mt.c: Likewise
760 * src/rmt.c: Likewise
761 * src/rmt.h: Likewise
762 * src/rtapelib.c: Likewise
763 * src/safe-stat.h: Likewise
764 * src/strdup.c: Likewise
765 * src/strerror.c: Likewise
766 * src/stripslash.c: Likewise
767 * src/system.h: Likewise
768 * src/tar.c: Likewise
769 * src/tar.h: Likewise
770 * src/tarhdr.h: Likewise
771 * src/userspec.c: Likewise
772 * src/util.c: Likewise
773 * src/xmalloc.c: Likewise
774 * src/xstrdup.c: Likewise
775
776 * doc: New directory
777 * doc/.cvsignore: New file
778 * doc/Makefile.am: New file
779 * doc/cpio.1: New file
780 * doc/cpio.info: New file
781 * doc/cpio.texi: New file
782 * doc/mt.1: New file
783
784 * po: New directory
785 * po/.cvsignore: New file
786 * po/LINGUAS: New file
787 * po/Makevars: New file
788 * po/POTFILES.in: New file
789
790 2003-11-28 Sergey Poznyakoff <gray@Mirddin.farlep.net>
791
792 * configure.ac: Added various checks
793 * Makefile.am (rmt_LDADD): Added.
794 * error.c: Updated
795 * rmt.c: Removed useless private_errstring
796 * system.h: Updated
797 * userspec.c: Changed the way of handling declared vs. undeclared
798 system calls.
799 * strerror.c: New file. Borrowed from GNU Radius.
800
801 * copyin.c: Removed kludgy declaration of delayed_seek_count.
802 * copypass.c: Likewise
803 * extern.h: Declare delayed_seek_count.
804 * mkdir.c: Fixed handling of undeclared errno
805 * mt.c: Likewise
806 * util.c: Likewise
807 * rtapelib.c: Likewise
808
809 2003-11-28 Sergey Poznyakoff <gray@Mirddin.farlep.net>
810
811 * TODO: New file
812
813 * README-alpha: New file
814 * Makefile.am: Require at least version 1.7.1
815 * configure.ac: Check for locale.h
816 * main.c (main): Call setlocale. Thanks
817 Mitsuru Chinen <mchinen@yamato.ibm.com> for the patch.
818 * THANKS: Updated
819
820 2003-11-21 Sergey Poznyakoff <gray@Mirddin.farlep.net>
821
822 * configure.ac: Added to the repository
823 * Makefile.am: Likewise
824 * NEWS: Likewise
825 * README: Likewise
826 * AUTHORS: Likewise
827 * .cvsignore: Likewise
828
829 * configure.in: Removed
830 * Makefile.in: Removed
831 * makefile.pc: Removed
832 * configure: Removed
833
834 * alloca.c: Added to the repository
835 * argmatch.c: Likewise
836 * bcopy.c: Likewise
837 * cpio.h: Likewise
838 * cpiohdr.h: Likewise
839 * defer.c: Likewise
840 * defer.h: Likewise
841 * dirname.c: Likewise
842 * dstring.c: Likewise
843 * dstring.h: Likewise
844 * error.c: Likewise
845 * filemode.c: Likewise
846 * filetypes.h: Likewise
847 * fnmatch.c: Likewise
848 * fnmatch.h: Likewise
849 * getopt.c: Likewise
850 * getopt.h: Likewise
851 * getopt1.c: Likewise
852 * idcache.c: Likewise
853 * mkdir.c: Likewise
854 * rmt.h: Likewise
855 * rtapelib.c: Likewise
856 * safe-stat.h: Likewise
857 * strdup.c: Likewise
858 * stripslash.c: Likewise
859 * tar.c: Likewise
860 * tar.h: Likewise
861 * tarhdr.h: Likewise
862 * xmalloc.c: Likewise
863 * xstrdup.c: Likewise
864
865 * makepath.c: Updated
866 * mt.c: Likewise.
867 * rmt.c: Likewise.
868 * util.c: Likewise.
869 * copyin.c: Likewise.
870 * copyout.c: Likewise.
871 * copypass.c: Likewise.
872 * global.c: Likewise.
873 * main.c: Likewise.
874
875 Thu Jun 13 20:14:48 2002 John Oleynick (juo@gnu.org)
876 * copyin.c: Strip leading / on absolute filenames after
877 comparing to the list of files specified on the command line
878 (instead of before). Problem reported by Jeff Holt.
879 * Version 2.5 released.
880
881 Thu Jun 13 00:20:30 2002 John Oleynick (juo@gnu.org)
882 * Makefile.in: Fixed problem of looking in srcdir for info files.
883 Bug reported by Mike Castle.
884 * cpio.texi: Fixed typo. Problem reported by Fabrice Bauzac.
885
886 Sun Jan 13 18:45:02 2002 John Oleynick (juo@gnu.org)
887 * copyin.c: Fixed a problem skipping files with multiple links
888 in a newc or CRC format archive. If the file with the shared copy
889 of the data was skipped, but other links were not skipped, the
890 other links were created as empty files. Bug reported by
891 Hendrik-Jan Thomassen.
892
893 Thu Dec 6 20:05:10 2001 John Oleynick (juo@gnu.org)
894 * mt.c, mt.1: Merged Debian --rsh-command option and -V fix.
895 * copyout.c, copypass.c, util.c, extern.h: Modified to warn
896 if a file grows or its mtime is changed while it is being
897 copied.
898
899 Wed Dec 6 00:02:04 2001 John Oleynick (juo@gnu.org)
900 * Many files: Updated FSF's address in copyright notices.
901
902 Wed Aug 29 23:57:05 2001 John Oleynick (juo@gnu.org)
903 * Many files: Numerous fixes from Debian, Red Hat and SuSE
904 GNU/Linux distributions.
905
906 Tue Jan 16 19:03:05 1996 John Oleynick (juo@wombat.gnu.ai.mit.edu)
907 * util.c: An I/O error reading a file would cause the last byte
908 of the next file to be corrupted in the archive. Thanks to a
909 buggy NT NFS server for pointing out this problem.
910 * Version 2.4.2 released.
911
912 Tue Jan 9 23:19:37 1996 John Oleynick (juo@wombat.gnu.ai.mit.edu)
913 * copyout.c: missed 1 part of last bug fix.
914
915 Mon Jan 8 16:49:01 1996 John Oleynick (juo@wombat.gnu.ai.mit.edu)
916 * copyout.c, copypass.c: Use result of readlink() as length
917 of link name instead of size from lstat(). On some OS's lstat()
918 doesn't return the true length in size. Bug reported by
919 Robert Joop (rj@rainbow.IN-berlin.DE).
920
921 Wed Dec 20 10:52:56 1995 John Oleynick (juo@wombat.gnu.ai.mit.edu)
922 * rmt.c: Added temporary kludge so make rmt will work on Linux.
923 * configure.in: Only define HAVE_UTIME_H if utime.h declares
924 struct utimbuf.
925 * Makefile.in: Change prefix, exec_prefix and bindir to get their
926 values from configure. Added cpio.info to DISTFILES.
927 * cpio.texi: Added INFO-DIR-ENTRY.
928 * Version 2.4.1 released.
929
930 Wed Nov 22 19:37:05 1995 John Oleynick (juo@wombat.gnu.ai.mit.edu)
931 * cpio.texi: Updated release date and FSF's address.
932 * NEWS: Listed major new features for 2.4.
933 * mt.c, mt.1: Added seek and fsfm commands.
934 * Version 2.4 released.
935
936 Tue Jun 27 19:14:27 1995 John Oleynick (juo@wombat.gnu.ai.mit.edu)
937 * configure.in: fixed for new autoconf. Added check to make
938 sure fnmatch() works.
939 * Makefile.in: changed realclean to maintainer-clean. Added
940 support to handle fnmatch separate from other LIBOBJS.
941 * cpio.texi: More changes for 2.4.
942
943 Wed Dec 14 16:14:27 1994 John Oleynick (juo@wombat.gnu.ai.mit.edu)
944 * copypass.h: When given the -a option, set the access time of
945 the copy to be the access time of the original (instead of the
946 modification time of the original). Reported by
947 karney@pppl.gov (Charles Karney).
948 * cpio.texi: Updated with changes for 2.4.
949
950 Wed Nov 3 18:18:07 1994 John Oleynick (juo@wombat.gnu.ai.mit.edu)
951 * safe-stat.h, Makefile.in: New file used by mkdir.c. This will go
952 away when we get the real safe-xstat.[ch]in for mkdir.c.
953 * main.c: Don't mention [--null] twice in -p's usage message.
954 Changed --no-absolute-paths to --no-absolute-filenames.
955 * cpio.1: Updated man page with new features.
956 * cpio.texi, texinfo.tex, Makefile.in: Added texi documentation
957 from Robert Carleton (rbc@gnu.ai.mit.edu).
958
959 Mon Oct 3 00:46:30 1994 John Oleynick (juo@wombat.gnu.ai.mit.edu)
960 * makefile.pc, system.h: Changes to compile with Borland C++ 4.0.
961
962 Thu Sep 29 22:15:50 1994 John Oleynick (juo@wombat.gnu.ai.mit.edu)
963 * makepath.c: Don't #define index if it is already #defined.
964
965 * mt.c: Check for __hpux defined instead of __hpux__. Reported
966 by ericb@lsid.hp.com (Eric Backus).
967
968 Thu Sep 29 11:21:31 1994 John Oleynick (juo@wombat.gnu.ai.mit.edu)
969 * extern.h, util.c, copyout.c, copypass.c, main.c, global.c:
970 Never mind --ignore-disk-input-errors flag, we'll just always
971 do that, like tar.
972
973 * global.c, extern.h, main.c, copyin.c, copyout.c, copypass.c:
974 Added --quiet flag to supress printing number of blocks copied.
975
976 * global.c, extern.h: If compiled with gcc, make input_bytes
977 and output_bytes `long long' instead of `long'. We need more
978 than 32 bits to keep track of the number of bytes copied to
979 and from tape drives that hold more than 4Gbytes.
980
981 * util.c, copyin.c, main.c, global.c, extern.h: Added
982 --only-verify-crc flag to read a CRC format archive and verify
983 its contents' CRCs.
984
985 * copyout.c: Fixed problem with creating oldc format archives
986 on machines with 16 bit ints. Reported by mpoole@cix.compulink.co.uk
987 (Martin Poole).
988
989 * mt.c: Need to open tape WR_ONLY for erase command (and probably
990 others?). Reported by robert@hst.e.technik.uni-kl.de (Robert
991 Vogelgesan). Accept `eject' as a synonym for `offline'. Accept
992 `-t' as a synonym for `-f' (to be compatible with HPUX mt, which
993 only accepts `-t').
994
995 Wed Sep 28 12:01:55 1994 John Oleynick (juo@wombat.gnu.ai.mit.edu)
996 * extern.h, global.c, main.c, util.c: only write sparse files
997 when given --sparse flag.
998 * extern.h, util.c, copyout.c, copypass.c, main.c, global.c:
999 Added support for --ignore-disk-input-errors flag.
1000
1001 Wed Aug 24 12:55:38 1994 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu)
1002
1003 * configure.in: Replace calls to AC_REMOTE_TAPE and AC_RSH
1004 with equivalent code, since those macros are going away.
1005
1006 Sun Feb 13 00:56:48 1994 John Oleynick (juo@goldman.gnu.ai.mit.edu)
1007 * extern.h, global.c, main.c, util.c: Added code to
1008 tape_buffered_peek() to properly handle large, corrutped
1009 archives, without overrunning the allocated buffer and
1010 dumping core. Also changed the way the input and output
1011 buffers are allocated in initialize_buffers().
1012
1013 Tue Jan 25 01:04:32 1994 John Oleynick (juo@goldman.gnu.ai.mit.edu)
1014 * copyin.c, copyout.c, copypass.c, extern.h, main.c, tar.c, util.c:
1015 Redid i/o buffer code. Previously, the same routines buffered input and
1016 output for accessing the archive and the filesystem. Now there are
1017 separate routines for buffering input and output and for buffering the
1018 archive and the filesystem. This simplifies much of the buffer code
1019 (e.g., only input from the archive has to check for end of tape and
1020 allow the tape to be changed, only output to the filesystem has to
1021 handle byte and word swapping, etc.; previously one routine had to
1022 handle all of these special cases) This is how the routines got split
1023 and renamed (old name -> new name):
1024
1025 clear_rest_of_block -> tape_clear_rest_of_block
1026 copy_files -> copy_files_tape_to_disk
1027 " -> copy_files_disk_to_disk
1028 " -> copy_files_disk_to_tape
1029 copy_buf_out -> disk_buffered_write
1030 " -> tape_buffered_write
1031 copy_in_buf -> tape_buffered_read
1032 empty_output_buffer -> tape_empty_output_buffer
1033 " -> disk_empty_output_buffer
1034 fill_input_buffer -> tape_fill_input_buffer
1035 " -> disk_fill_input_buffer
1036 pad_output -> tape_pad_output
1037 peek_in_buf -> tape_buffered_peek
1038 skip_padding -> tape_skip_padding
1039 toss_input -> tape_toss_input
1040
1041 * extern.h, global.c, main.c, util.c: Added support for
1042 writing sparse files.
1043
1044 Tue Dec 28 23:01:36 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu)
1045 * util.c, system.h, makepath.c, extern.h: don't define chown()
1046 and don't typedef uid_t and gid_t if we are being compiled
1047 by DJGPP.
1048
1049 * copyin.c, extern.h, global.c, main.c: Added support for
1050 --rename-batch-file.
1051
1052 * copyin.c, copyout.c, extern.h: Cleaned up to pass gcc -Wall.
1053
1054 Wed Dec 22 02:17:44 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu)
1055
1056 * makepath.c, copypass.c, copyin.c: If cpio was creating a
1057 directory that contained `.' in the pathname (e.g. `foo/./bar'),
1058 it would complain that it could not create `.', since it already
1059 exists. From schwab@issan.informatik.uni-dortmund.de (Andreas
1060 Schwab).
1061
1062 * mt.c: Added "eject" as a synonym for "offline".
1063
1064 * util.c: Slight modification to when we lseek with
1065 BROKEN_LONG_TAPE_DRIVER (do it every 1Gb, instead
1066 of every 2Gb).
1067
1068 * copyin.c, global.c, extern.h: Added --no-absolute-paths option,
1069 to ignore absolute paths in archives.
1070
1071 Tue Dec 21 01:30:59 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu)
1072
1073 * util.c: Fix for copying new_media_message_after_number. From
1074 Christian.Kuehnke@arbi.informatik.uni-oldenburg.de (Christian
1075 Kuehnke).
1076
1077 Thu Jul 29 20:35:57 1993 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu)
1078
1079 * Makefile.in (config.status): Run config.status --recheck, not
1080 configure, to get the right args passed.
1081
1082 Mon Jul 19 23:01:00 1993 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu)
1083
1084 * Makefile.in (libdir): Use standard GNU value --
1085 $(exec_prefix)/lib, not /etc.
1086 (.c.o): Put CFLAGS last.
1087
1088 Thu Jul 8 19:43:39 1993 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
1089
1090 * Makefile.in: Add rules for remaking Makefile, configure,
1091 config.status.
1092
1093 Mon Jul 5 14:54:08 1993 John Oleynick (juo@spiff.gnu.ai.mit.edu)
1094
1095 * cpio.1: Updated man page for 2.3.
1096 * Makefile.in: Create distribution with .gz extension, instead of .z.
1097
1098 Tue Jun 29 18:54:37 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu)
1099
1100 * Makefile.in: Added installdirs target (using mkinstalldirs).
1101 * Added mkinstalldirs script.
1102 * main.c, mt.c: Added --help option. Changed usage() to
1103 take a stream and exit value (so --help can print on stdout
1104 and return a 0 exit status).
1105 * extern.h: Removed usage()'s prototype (it was out of date,
1106 and only used in main.c).
1107
1108 Thu May 6 00:22:22 1993 John Oleynick (juo@hal.gnu.ai.mit.edu)
1109
1110 * cpio.1: Added hpbin and hpodc.
1111
1112 Tue May 4 00:32:29 1993 John Oleynick (juo@hal.gnu.ai.mit.edu)
1113
1114 * copyin.c (process_copy_in), copypass.c (process_copy_pass): When
1115 deleting an existing file, if the file is a directory, use rmdir()
1116 instead of unlink().
1117
1118 Thu Apr 29 14:43:56 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu)
1119
1120 * tar.c (read_in_tar_header): Clear non-protection bits from
1121 mode, in case tar has left some device bits in there.
1122
1123 Wed Apr 28 10:36:53 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu)
1124
1125 * util.c: Added code to try and work around broken tape drivers
1126 that have problems with tapes > 2Gb.
1127
1128 * copyout.c (process_copy_out): Pass file_hdr to
1129 writeout_other_defers() and add_link_defer() by reference,
1130 not by value.
1131
1132 * copyin.c (process_copy_in): Pass file_hdr to defer_copyin()
1133 and create_defered_links() by reference, not by value.
1134
1135 * defer.c: include <sys/types.h> (to build on BSD 4.3 on HP300)
1136
1137 Fri Apr 16 18:01:17 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu)
1138
1139 * mt.c, util.c: Include <sys/mtio.h> if HAVE_SYS_MTIO_H is
1140 defined, not HAVE_MTIO_H.
1141
1142 Wed Apr 14 17:37:46 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu)
1143
1144 * util.c: Include <sys/io/trioctl.h> if HAVE_SYS_IO_TRIOCTL_H
1145 is defined.
1146
1147 * mt.c: Only include <sys/mtio.h> if HAVE_SYS_MTIO_H is defined.
1148
1149 Fri Apr 2 13:09:11 1993 John Oleynick (juo@goldman.gnu.ai.mit.edu)
1150
1151 * configure.in: Added fnmatch to AC_REPLACE_FUNCS. Added
1152 sys/io/trioctl.h to AC_HAVE_HEADERS.
1153
1154 * Makefile.in: Removed fnmatch.o from OBJS.
1155
1156 * copyin.c: Only include "fnmatch.h" if FNM_PATHNAME isn't
1157 defined yet.
1158
1159 * mt.c: Include <sys/io/trioctl.h> if HAVE_SYS_IO_TRIOCTL_H is
1160 defined.
1161
1162 Mon Mar 29 17:04:06 1993 John Oleynick (juo@hal.gnu.ai.mit.edu)
1163
1164 * Many changes for supporting HPUX Context Dependent Files;
1165 also some bug fixes to fix problems with multiply (hard) linked
1166 device files; minor changes to support HPUX format archives
1167 (slightly broken?) System V.4 posix tar archives and HPUX
1168 posix tar archives.
1169
1170 * Makefile.in: New files defer.o, defer,c and defer.h; added
1171 -DSYMLINK_USES_UMASK and -DHPUX_CDF comments; changed dist rule
1172 to use gzip with tar, instead of compress.
1173
1174 * copyin.c: changes for new arf_hpbinary and arf_hpascii formats;
1175 HPUX CDF's; DEBUG_CPIO; fixes to properly handle multiple
1176 links in newc and crc format archives (new routines defer_copyin(),
1177 create_defered_links(), create_final_defers()); move most
1178 multiple (hard) link code to new routines link_name() and
1179 link_to_maj_min_ino(); use new macro UMASKED_SYMLINK instead of
1180 symlink().
1181
1182 * copyout.c: fixes to properly handle multiple links in newc
1183 and crc format archives (new routines last_link(),
1184 count_defered_links_to_dev_ino(), add_link_defer(),
1185 writeout_other_defers(), writeout_final_defers(),
1186 writeout_defered_file()); support for new arf_hpbinary and
1187 arf_hpascii formats; support for HPUX CDF's.
1188
1189 * copypass.c: move most multiple link code to new routines
1190 link_name() and link_to_maj_min_ino(); use new macro UMASKED_SYMLINK
1191 instead of symlink(); support for HPUX CDF's.
1192
1193 * extern.h: added arf_hpascii and arf_hpbinary archive enum types;
1194 added debug_flag.
1195
1196 * global.c: added debug_flag.
1197
1198 * main.c: added debug_flag; support for hpodc and hpbin formats.
1199
1200 * makepath.c: split from standard makpath.c to add support
1201 for HPUX CDF's.
1202
1203 * mt.c: added !defined(__osf__) (from Andrew Marquis
1204 <amarquis@genome.wi.mit.edu>).
1205
1206 * system.h: new macro UMASKED_SYMLINK
1207
1208 * tar.c: minor changes to read (slightly broken?) System V.4 posix
1209 tar archives and HPUX posix tar archives.
1210
1211 * util.c: HPUX CDF support (including new routines
1212 add_cdf_double_slashes() and islasparentcdf()); new routine
1213 umasked_symlink().
1214
1215 Sun Mar 14 23:00:14 1993 Jim Meyering (meyering@comco.com)
1216
1217 * copypass.c (process_copy_pass): Use <=, not just <, when comparing
1218 mtimes. From Pieter Bowman <bowman@math.utah.edu>.
1219
1220 Fri Jan 15 14:35:37 1993 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu)
1221
1222 * copyin.c: Move include of fnmatch.h to get right FNM* macros.
1223
1224 Tue Nov 24 08:45:32 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
1225
1226 * Version 2.2.
1227
1228 * copyout.c (process_copy_out): Add parens for gcc -Wall.
1229 From Jim Meyering.
1230
1231 * system.h: Use HAVE_FCNTL_H, not USG.
1232
1233 * dstring.c, mt.c, system.h: Use HAVE_STRING_H, not USG.
1234
1235 Fri Nov 20 22:47:18 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
1236
1237 * copyin.c (read_in_binary): Copy the dev and ino that are
1238 already in `file_hdr' into `short_hdr'.
1239 From dao@abars.att.com (David A Oshinsky).
1240
1241 * system.h [!_POSIX_VERSION]: Declare lseek as off_t, not long.
1242 From Karl Berry.
1243
1244 Wed Oct 14 13:53:41 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
1245
1246 * Version 2.1.
1247
1248 Tue Oct 13 22:51:34 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
1249
1250 * main.c: Add --swap equivalent to -b.
1251
1252 * mt.c: Add f_force_local variable and -V --version option.
1253
1254 Fri Oct 2 18:42:27 1992 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu)
1255
1256 * main.c (long_opts, usage): Add --force-local option.
1257
1258 Thu Oct 1 23:23:43 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
1259
1260 * main.c (process_args) [__MSDOS__]: Don't call geteuid.
1261
1262 * copyin.c (read_in_{old,new}_ascii): Use `l' for sscanf into longs.
1263 * copyout.c (write_out_header): Ditto for sprintf.
1264 * global.c, extern.h: Make input_size and output_size long.
1265
1266 Thu Sep 10 23:39:30 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
1267
1268 * global.c, extern.h: Add new var f_force_local to work with
1269 rmt.h change from tar.
1270
1271 Sun Aug 23 00:18:20 1992 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu)
1272
1273 * Version 2.0.
1274
1275 * tar.c (otoa): Compute value in an unsigned long, not an int.
1276 * copyout.c (write_out_header) [__MSDOS__]: Don't use dev_t.
1277
1278 * main.c (process_args): By default, don't chown for non-root users.
1279
1280 Sat Aug 22 14:17:54 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
1281
1282 * global.c, extern.h: Use uid_t and gid_t.
1283
1284 * main.c (main) [__EMX__]: Expand wildcards.
1285 * system.h [__EMX__]: Alias some error names. From Kai Uwe Rommel.
1286
1287 * extern.h [__STDC__]: Use prototypes.
1288
1289 * copyin.c (process_copy_in), copyout.c (process_copy_out),
1290 copypass.c (process_copy_pass): Open all files with O_BINARY.
1291 Add cast to chmod call.
1292 * util.c: Add cast to bcopy calls. Make hash_insert static.
1293 From Kai Uwe Rommel.
1294
1295 Thu Aug 20 22:03:49 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
1296
1297 * util.c (peek_in_buf): Don't print "end of file" before
1298 getting the next reel of medium.
1299
1300 * copyin.c (read_in_old_ascii): Allocate space for NUL terminator.
1301 Print newline for dot line when done, even if appending.
1302
1303 Thu Jul 23 16:34:53 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
1304
1305 * tar.c (write_out_tar_header, read_in_tar_header)
1306 [__MSDOS__]: Don't try to get user and group names.
1307 * extern.h: Don't declare the functions to do it (need uid_t).
1308
1309 * main.c [__MSDOS__]: Ignore the -R option.
1310
1311 * system.h: Define makedev if defining major and minor.
1312
1313 * copyin.c, copyout.c [__MSDOS__]: setmode on archive_des, not
1314 0 and 1.
1315
1316 Sat Jul 18 14:30:55 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
1317
1318 * tar.c, stripslash.c, userspec.c, cpiohdr.h, tar.h, tarhdr.h,
1319 system.h: New files.
1320 * Move portability stuff from various files to system.h.
1321 * cpio.h: Rename header structure and members, and add
1322 new structure for SVR4 format.
1323 * copyin.c, copyout.c: Use the new structure internally, the
1324 old one only for I/O in the old formats.
1325 * copyin.c (read_in_header): Recognize the new archive formats.
1326 (read_in_new_ascii, read_pattern_file, skip_padding): New functions.
1327 (swab_array): Do the swapping using char pointers instead of
1328 bitwise arithmetic.
1329 (process_copy_in): Handle byte and halfword swapping and new formats.
1330 Ok if a directory we want to make already exists, but set its perms.
1331 Do chmod after chown to fix any set[ug]id bits.
1332 Use `struct utimbuf' instead of a long array.
1333 * copyout.c (write_out_header): Handle new formats.
1334 (process_copy_out): Use `struct utimbuf'.
1335 Handle appending and new formats.
1336 Remove any leading `./' from filenames.
1337 (read_for_checksum, clear_rest_of_block, pad_output): New functions.
1338 * copypass.c (process_copy_pass): Use `struct utimbuf'.
1339 Ok if a directory we want to make already exists, but set its perms.
1340 Do chmod after chown to fix any set[ug]id bits.
1341 Don't change perms of `.'.
1342 * extern.h, global.c: Replace the separate format flags with
1343 one variable. Add new variables for the new options.
1344 * main.c: Add new options -A --append, -H --format, -C --io-size,
1345 -M --message, --no-preserve-owner, -R --owner, -E --pattern-file,
1346 -V --dot, -s --swap-bytes, -S --swap-halfwords, -b, -I, -k, -O.
1347 (usage): Document them.
1348 (process_args): Recognize them. Use open_archive.
1349 (initialize_buffers): Allow room for tar archives and double buffers.
1350 * util.c (empty_output_buffer_swap): New function.
1351 (empty_output_buffer): Call it if swapping current file.
1352 Check additional end of media indicators.
1353 (swahw_array, peek_in_buf, prepare_append, open_archive,
1354 set_new_media_message): New functions.
1355 (fill_input_buffer): Don't print error message if end of media.
1356 (toss_input): Don't seek, always read.
1357 (copy_files): Update crc if needed.
1358 (find_inode_file, add_inode): Check major and minor numbers as
1359 well as dev.
1360 (get_next_reel): Prompt user if archive name is unknown.
1361 Print fancy messages.
1362 Close the archive and reopen it.
1363
1364 Above primarily from John Oleynick <juo@klinzhai.rutgers.edu>.
1365
1366 * util.c (find_inode_file): Use modulus when computing initial
1367 loop index.
1368 (add_inode): Zero out new entry.
1369 From scott@sctc.com (Scott Hammond).
1370
1371 * cpio.h, copyin.c, copyout.c: Rename `struct cpio_header'
1372 members from h_foo to c_foo.
1373
1374 Wed May 20 00:09:26 1992 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu)
1375
1376 * copyin.c: If we include a header file specifically to get
1377 major et al., assume we have them.
1378
1379 Mon Mar 9 19:29:20 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
1380
1381 * mt.c (main): rmtclose the tape file descriptor.
1382
1383 * main.c (main): rmtclose the archive, if not in copy-pass mode.
1384
1385 * util.c (create_all_directories): Don't print a message when
1386 creating a directory, for UNIX compat.
1387
1388 * copyin.c (process_copy_in), copypass.c (process_copy_pass):
1389 Skip file if it has the same timestamp as existing file, not just
1390 if it is older than existing file, for UNIX compat.
1391
1392 Tue Mar 3 12:06:58 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu)
1393
1394 * main.c, mt.c (usage): Document long options as starting with
1395 -- instead of +.
1396
1397 * extern.h: Only declare lseek if not _POSIX_VERSION.
1398
1399 Tue Dec 24 00:19:45 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
1400
1401 * copyin.c: Use MAJOR_IN_MKDEV and MAJOR_IN_SYSMACROS instead
1402 of USG and _POSIX_VERSION to find major and minor macros.
1403
1404 * mt.c: Use unistd.h and stdlib.h if available.
1405
1406 * copyin.c, copyout.c, copypass.c, util.c, extern.h: Change
1407 POSIX ifdefs to HAVE_UNISTD_H and _POSIX_VERSION.
1408
1409 Sun Aug 25 06:31:08 1991 David J. MacKenzie (djm at apple-gunkies)
1410
1411 * Version 1.5.
1412
1413 * bcopy.c: New file (moved from util.c).
1414
1415 * mt.c (print_status): Not all hpux machines have mt_fileno
1416 and mt_blkno; rather than trying to track HP's product line,
1417 just assume none of them have them.
1418
1419 * util.c (copy_buf_out, copy_in_buf): Use more efficient
1420 copying technique for a big speedup.
1421
1422 Fri Aug 2 04:06:45 1991 David J. MacKenzie (djm at apple-gunkies)
1423
1424 * configure: Support +srcdir. Create config.status.
1425 Remove it and Makefile if interrupted while creating them.
1426
1427 Thu Jul 18 09:43:40 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
1428
1429 * Many files: use __MSDOS__ instead of MSDOS.
1430
1431 * util.c, configure: Use NO_MTIO instead of HAVE_MTIO, to keep
1432 up with tar and rtapelib.c.
1433
1434 Mon Jul 15 13:45:30 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
1435
1436 * configure: Also look in sys/signal.h for signal decl.
1437
1438 Thu Jul 11 01:50:32 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
1439
1440 * Version 1.4.
1441
1442 * configure: Remove /etc and /usr/etc from PATH to avoid
1443 finding /etc/install.
1444
1445 Wed Jul 10 01:40:07 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
1446
1447 * makefile.pc: Rewrite for Turbo C 2.0.
1448 * util.c [__TURBOC__] (utime): New function.
1449 * alloca.c, tcexparg.c: New files.
1450
1451 * extern.h [STDC_HEADERS]: Don't declare malloc and realloc.
1452
1453 * main.c [MSDOS]: Make binary mode the default.
1454 * copyin.c, copyout.c: Make stdin or stdout binary mode as
1455 appropriate (so cpio archives don't get corrupted).
1456
1457 * Many files: Use <string.h> if STDC_HEADERS as well as if USG.
1458
1459 * configure, Makefile.in: $(INSTALLPROG) -> $(INSTALL),
1460 $(INSTALLTEXT) -> $(INSTALLDATA).
1461
1462 Mon Jul 8 23:18:28 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
1463
1464 * configure: For some library functions that might be missing,
1465 conditionally add the .o files to Makefile instead of
1466 defining func_MISSING.
1467 * mkdir.c: Renamed from mkrmdir.c.
1468
1469 Sat Jul 6 02:27:22 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu)
1470
1471 * configure: echo messages to stdout, not stderr.
1472 Use a test program to see if alloca needs -lPW.
1473
1474 Thu Jun 27 16:15:15 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu)
1475
1476 * copyin.c (process_copy_in), copyout.c (process_copy_out),
1477 copypass.c (process_copy_pass): Check close return value for
1478 delayed error notification because of NFS.
1479
1480 Thu Jun 20 02:43:33 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu)
1481
1482 * configure: Include $DEFS when compiling test programs.
1483
1484 * util.c: Only declare getpwuid and getgrgid if not POSIX.
1485
1486 * Version 1.3.
1487
1488 * copyin.c: Use time_t, not long, for time values.
1489
1490 * mt.c (print_status): Special cases for HP-UX and Ultrix.
1491
1492 * util.c: Compile bcopy if USG or STDC_HEADERS, not BCOPY_MISSING.
1493
1494 Tue Jun 11 16:40:02 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu)
1495
1496 * copyin.c: Don't include sys/sysmacros.h if _POSIX_SOURCE.
1497
1498 * copyin.c, copyout.c, copypass.c: Don't include sys/file.h if POSIX.
1499
1500 * util.c: Include sys/types.h before, not after, pwd.h and grp.h.
1501
1502 * configure: New shell script to aid configuration and create
1503 Makefile from Makefile.in.
1504
1505 * copyin.c (process_copy_in): Use POSIX.2 fnmatch instead of
1506 glob_match.
1507
1508 Mon Jun 10 22:11:19 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu)
1509
1510 * global.c, extern.h: New variable, name_end.
1511 * main.c (process_args, usage): Add -0 +null option to set it.
1512 * copypass.c (process_copy_pass), copyout.c (process_copy_out):
1513 Use it.
1514
1515 * dstring.c (ds_fgetstr): New function made from ds_fgets.
1516 (ds_fgets, ds_fgetname): Implement as front ends to ds_fgetstr.
1517
1518 Sun Jun 2 15:45:24 1991 David J. MacKenzie (djm at wheat-chex)
1519
1520 * most files: use GPL version 2.
1521
1522 Sat May 18 11:39:22 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu)
1523
1524 * copyin.c, copypass.c: Take out #ifdef MSDOS around chown.
1525 * util.c [MSDOS]: Provide dummy chown.
1526
1527 Fri May 17 21:29:05 1991 David J. MacKenzie (djm at churchy.gnu.ai.mit.edu)
1528
1529 * Version 1.2.
1530
1531 * makefile.pc, cpio.cs: Update for new source and object files.
1532
1533 Fri Mar 15 05:48:36 1991 David J. MacKenzie (djm at geech.ai.mit.edu)
1534
1535 * global.c, extern.h: New variable `archive_desc'.
1536 * main.c (process_args): Set it.
1537 * copyout.c (process_copy_out), copyin.c (process_copy_in):
1538 Use it.
1539
1540 * copyout.c (process_copy_out), copyin.c (process_copy_in):
1541 Remote tapes are special and not seekable; don't fstat them.
1542
1543 * main.c (main, usage): Add -F, +file option. Use rmtopen.
1544 (main): Exit after printing version number.
1545 * util.c (empty_output_buffer): Use rmtwrite instead of write.
1546 (fill_input_buffer): Use rmtread instead of read.
1547 (tape_offline): Use rmtioctl instead of ioctl.
1548 Test HAVE_MTIO instead of MTIO_MISSING, for tar compatibility.
1549
1550 Thu Mar 14 17:49:57 1991 David J. MacKenzie (djm at geech.ai.mit.edu)
1551
1552 * util.c (create_all_directories): Use make_path to do the work.
1553
1554 Sat Jan 12 15:32:15 1991 David J. MacKenzie (djm at geech.ai.mit.edu)
1555
1556 * copyin.c, copyout.c, copypass.c, util.c: Only declare
1557 `errno' if not MSDOS. Some Unix errno.h do, some don't . . . .
1558
1559 * global.c, extern.h: Make `input_size' and `output_size'
1560 unsigned, for 16 bit machines.
1561
1562 * copyin.c (print_name_with_quoting): All non-ctrl chars are
1563 printable on MS-DOS.
1564
1565 * util.c (empty_output_buffer): Never make sparse files;
1566 can create unrunnable executables.
1567 * copyin.c, copyout.c, copypass.c: Callers changed.
1568 * util.c (finish_output_file): Function removed.
1569
1570 Tue Nov 6 15:47:16 1990 David J. MacKenzie (djm at apple-gunkies)
1571
1572 * copyin.c, util.c, extern.h: Rename copystring to xstrdup.
1573
1574 Mon Oct 29 02:24:41 1990 David J. MacKenzie (djm at apple-gunkies)
1575
1576 * util.c (empty_output_buffer): Only make sparse files if
1577 NO_SPARSE_FILES is undefined, to accomodate dumb kernels.
1578
1579 Wed Jul 25 18:48:35 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
1580
1581 * util.c (getuser, getgroup): Make uid and gid unsigned short,
1582 not int.
1583
1584 Sat Jul 21 00:44:44 1990 David J. MacKenzie (djm at apple-gunkies)
1585
1586 * copyin.c, copyout.c, copypass.c, util.c, cpio.h: Add ifdefs
1587 for MSDOS.
1588
1589 Sun Jul 15 23:51:48 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
1590
1591 * copyin.c, copyout.c, copypass.c, global.c, extern.h, util.c:
1592 Use longs where appropriate, for 16 bit machines.
1593
1594 Sun Jul 8 22:58:06 1990 David J. MacKenzie (djm at apple-gunkies)
1595
1596 * main.c (process_args, usage): Change -b option to -O (old), to
1597 allow adding byte swapping later.
1598
1599 Sat Jul 7 14:48:35 1990 David J. MacKenzie (dave at edfmd)
1600
1601 * Version 1.1.
1602
1603 * cpio.h: Make `mtime' and `filesize' unsigned long.
1604 * copyin.c (read_in_binary), copyout.c (write_out_header):
1605 High short-word of `mtime' and `filesize' always comes first.
1606
1607 * (read_in_ascii, read_in_binary): New functions, from code in
1608 read_in_header.
1609 (read_in_header): Search for valid magic number, then fill in
1610 rest of header using read_in_ascii and read_in_binary.
1611 * global.c, extern.h: New variable, `binary_flag'.
1612 * main.c (process_args): Recognize new -b +binary option.
1613 * util.c [BCOPY_MISSING] (bcopy): New function.
1614
1615 Wed Jul 4 00:40:58 1990 David J. MacKenzie (djm at apple-gunkies)
1616
1617 * main.c (process_args): Add local pointers to functions to
1618 work around a pcc bug found on a Convex.
1619
1620 * copyin.c (process_copy_in), util.c (toss_input,
1621 create_all_directories, add_inode): Don't use `index' as a
1622 variable name.
1623
1624 Tue Jul 3 02:33:36 1990 David J. MacKenzie (djm at apple-gunkies)
1625
1626 * version 1.0.
1627
1628 Mon Jul 2 23:18:56 1990 David J. MacKenzie (djm at twiddle)
1629
1630 * copyin.c (process_copy_in), copyout.c (process_copy_out),
1631 copypass.c (process_copy_pass): Print "1 block", not "1 blocks".
1632
1633 * copyin.c (process_copy_in), copypass.c (process_copy_pass):
1634 Unlink existing dest. file unless either it is newer and
1635 not unconditional, or it is a directory.
1636
1637 Mon Jul 2 03:57:41 1990 David J. MacKenzie (dave at edfmd)
1638
1639 * util.c (xrealloc): New function.
1640 * dstring.c (ds_resize): Use xrealloc instead of free and
1641 xmalloc. Never shrink the string.
1642
1643 * copypass.c (process_copy_pass): More efficient
1644 string handling while constructing output filename.
1645
1646 * global.c, extern.h, main.c, cpio.h: Change from an enum,
1647 `copy_command', to a pointer to a void function, `copy_function'.
1648
1649 * cpio.h (struct cpio_header): Make most fields unsigned.
1650 Rename h_filesize to h_filesizes and h_mtime to h_mtimes, and
1651 add new `long' fields with the old names at the end of the
1652 structure.
1653 * copyin.c (read_in_header): Set the long fields from the
1654 short arrays, making sure longs are aligned properly.
1655 (process_copy_in, long_format): Use the long fields.
1656 * copyout.c (write_out_header): Set the short arrays from the
1657 long fields, making sure longs are aligned properly.
1658 (process_copy_out): Use the long fields.
1659
1660 * global.c, extern.h: New variable `output_is_seekable'.
1661 * util.c (empty_output_buffer): If output_is_seekable, use
1662 lseek to write blocks of zeros.
1663 (finish_output_file): New function.
1664 * copyin.c (process_copy_in), copyout.c (process_copy_out),
1665 copypass.c (process_copy_pass): Set `output_is_seekable'
1666 correctly and call finish_output_file.
1667 * main.c (initialize_buffers): Allocate space for sentinel in
1668 `output_buffer'.
1669
1670 * global.c, extern.h: New variable `numeric_uid'.
1671 * main.c (process_args): Accept -n +numeric-uid-gid option, like ls.
1672 * copyin.c (long_format): Use numeric_uid.
1673
1674 * copyin.c (process_copy_in), copyout.c (process_copy_out),
1675 copypass.c (process_copy_pass): Don't (for verbose) print the
1676 names of files that are not copied because of errors. Try to
1677 create missing directories for all file types. Free temporary
1678 buffers on error.
1679
1680 Sat Jun 30 14:28:45 1990 David J. MacKenzie (djm at apple-gunkies)
1681
1682 * version.c: New file.
1683 * main.c: Add -V, +version option.
1684 * Makefile [dist]: Extract version number from version.c.
1685
1686 Sat Jun 30 12:44:47 1990 David J. MacKenzie (dave at edfmd)
1687
1688 * global.c, extern.h, copyin.c, copyout.c, util.c: Rename
1689 `{input,output}_is_regular' to `{input,output}_is_special' and
1690 reverse the truth value.
1691
1692 * global.c, extern.h: New variable `input_is_seekable' to
1693 control whether to skip data with lseek or read.
1694 * copyin.c (process_copy_in): Set it.
1695 * util.c (toss_input): Use it.
1696
1697 * global.c, extern.h: New variable `xstat' that selects stat
1698 or lstat for input files.
1699 * main.c (process_args): New option -L, +dereference to set
1700 xstat to stat instead of lstat.
1701 (usage): Document it.
1702 * copyout.c (process_copy_out), copypass.c
1703 (process_copy_pass): Use *xstat on input file.
1704
1705 Sat Jun 30 01:53:12 1990 David J. MacKenzie (dave at edfmd)
1706
1707 * dstring.c (ds_init): Return void because return value was
1708 never used.
1709 (ds_resize): Ditto, and free old value instead of new one.
1710
1711 * util.c (empty_output_buffer, fill_input_buffer,
1712 copy_out_buf, copy_in_buf, toss_input, copy_files): Return
1713 void instead of an error value and make errors fatal
1714 immediately instead of several levels up, to prevent printing
1715 of multiple error messages by different levels of functions.
1716
1717 * copyin.c (read_in_header): Return void, because the error
1718 handling all happens at lower levels.
1719 (print_name_with_quoting): New function.
1720 (long_format): Call print_name_with_quoting. Take additional
1721 arg for name of linked-to file, and print it if nonzero.
1722 (process_copy_in): For verbose listing of symlinks, read in
1723 the linkname and pass it to long_format.
1724
1725 * extern.h: Declare some more functions.
1726
1727 Thu Jun 28 16:07:15 1990 David J. MacKenzie (dave at edfmd)
1728
1729 * copypass.c (process_copy_pass): Warn about unknown file types.
1730
1731 * copyout.c (process_copy_out): Check fstat return for error.
1732 Record filesize of 0 for special files. Warn about unknown
1733 file types.
1734
1735 * copyin.c (process_copy_in): Warn about unknown file types.
1736 (read_in_header): Warn about byte-reversed binary headers.
1737
1738 Sat Jun 23 22:50:45 1990 David J. MacKenzie (dave at edfmd)
1739
1740 * main.c (main): Set umask to 0 so permissions of created
1741 files are preserved.
1742
1743 * copyin.c, copyout.c, copypass.c, util.c: Pass file
1744 descriptors as ints, not pointers to ints.
1745 Cast file timestamps and sizes to long *, not int *, for 16
1746 bit machines.
1747 Use lstat instead of stat, if available.
1748 Handle FIFO's, sockets, and symlinks, if supported by O.S.
1749
1750 * copyin.c (process_copy_in), copyout.c (process_copy_out):
1751 Don't consider FIFO'S, sockets, etc. to be possible tape drives.
1752
1753 * util.c (create_all_directories): Fix incorrect loop
1754 termination check. Only copy string if it contains slashes.
1755 Don't check whether directory "" exists.
1756 (tape_offline): Code moved from get_next_reel.
1757 (get_next_reel): Print message before taking tape offline.
1758 Read a line of arbitrary length.
1759
1760 * copyout.c, copyin.c, copypass.c: Always use utime, not utimes.
1761
1762 * copyin.c (swab_short): New macro.
1763 (swab_array): New function.
1764 (read_in_header): In binary mode, if a byte-swapped header is
1765 read, swap the bytes back.
1766 (process_copy_in, process_copy_pass): Don't stat each file to
1767 create unless !unconditional_flag. Create device files correctly.
1768 Don't temporarily allow files being created to be read by
1769 other users. Don't unnecessarily chmod special files.
1770
1771 Thu May 31 20:51:43 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
1772
1773 * copyin.c (long_format): Use mode_string to format
1774 file protections instead of doing it ourselves.
1775 (protections): Function removed.
1776
1777 Sat Apr 14 02:31:01 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
1778
1779 * cpio.h (struct cpio_header): Make inode, mode, uid, gid
1780 fields unsigned.
1781
1782 * util.c (getgroup): New function.
1783 * copyin.c (long_format): Print group name of files.
1784 Print file size, etc. as unsigned integers, not signed.
1785
1786 * main.c (process_args): If -t is given and neither -i, -o, or
1787 -p is given, assume -i.
1788
1789 * Add -f, +nonmatching option.
1790 * main.c: Rename +out to +create, +in to +extract,
1791 +modification-time to +preserve-modification-time,
1792 +pass to +pass-through.
1793
1794 * copyin.c (process_copy_in), copypass.c (process_copy_pass):
1795 Don't complain in chown fails because the user doesn't have
1796 permission.
1797
1798 Fri Apr 13 13:53:20 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
1799
1800 * Add ifdefs for USG/Xenix.
1801 * util.c (cpio_error): Function removed.
1802 * Use error instead of cpio_error, so system error messages
1803 will be included.
1804 * cpio.h: Rename 'hdr_struct' to 'struct cpio_header'.
1805 * Move definition of xmalloc from dstring.c to util.c.
1806 * global.c, extern.c: Add global `program_name'.
1807 * main.c (main): Set program_name.
1808 (process_args): Rename +reset-atime to +reset-access-time,
1809 +table to +list.
1810 Have +block-size take an argument.
1811
1812 Thu Apr 12 13:33:32 1990 David J. MacKenzie (djm at rice-chex)
1813
1814 * util.c (find_inode_file): Make inode an int, not a short.
1815
1816 * Make functions that don't return a value have type void.
1817 Add some casts to function calls.
1818
1819 Wed Apr 11 14:55:28 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
1820
1821 * main.c (process_args): -i, -o, and -p don't take arguments.
1822
1823 * main.c (process_args): Get the non-option args from the
1824 correct elements of argv.
1825
1826 Tue Apr 10 00:20:26 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
1827
1828 * Indent source code and update copyrights.
1829
1830 * cpio.c (usage): Change `collection' to `archive' in message.
1831
1832 Thu Dec 28 03:03:55 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu)
1833
1834 * dstring.c (xmalloc): Don't return a null pointer if size is 0,
1835 on the assumption that trying to allocate 0 bytes is a bug that
1836 should be trapped.
1837
1838 Wed Dec 20 03:24:48 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu)
1839
1840 * All files: Change from GNU CPIO General Public License to
1841 GNU General Public License.
1842
1843 Mon Dec 18 13:18:36 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu)
1844
1845 * Makefile: Add clean target and defines for CC and LDFLAGS.
1846 Add dist target and SRCS, DISTFILES macros. Add tags and TAGS targets.
1847 * dstring.c (ds_fgets): Read characters into an int, not char.
1848 (xmalloc): New function.
1849 (out_of_memory): Function removed.
1850 Global: use xmalloc instead of malloc and out_of_memory.
1851 * extern.h, global.c: Make flag variables ints instead of chars for
1852 compatibility with getopt_long.
1853 * extern.h: Declare more functions.
1854 * main.c (usage): Put the whole usage message into a single string
1855 and fix errors.
1856 * util.c (create_all_directories): Remove unused variable.
1857 (get_next_reel): Ditto.
1858 * dstring.h: Declare function.
1859
1860 Sat Dec 2 13:22:37 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu)
1861
1862 * main.c: Change +copy-pass option to +pass, +copy-in to +in,
1863 +copy-out to +out, and +mkdir to +make-directories, and add null
1864 option to terminate table.
1865 (process_args): Use the same code to handle long and short named
1866 options.
1867 (usage): Mention long options in message.
1868
1869 Local Variables:
1870 mode: change-log
1871 version-control: never
1872 End:

Send suggestions and bug reports to Sergey Poznyakoff
ViewVC Help
Powered by ViewVC 1.1.20