1Currently there is just one ChangeLog file for tar, but 2there used to be separate ChangeLog files for each subdirectory. 3This file records what used to be in those separate files. 4 5Copyright (C) 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997 6Free Software Foundation, Inc. 7 8This file is part of GNU Tar. 9 10GNU Tar is free software; you can redistribute it and/or modify 11it under the terms of the GNU General Public License as published by 12the Free Software Foundation; either version 2, or (at your option) 13any later version. 14 15GNU Tar is distributed in the hope that it will be useful, 16but WITHOUT ANY WARRANTY; without even the implied warranty of 17MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18GNU General Public License for more details. 19 20You should have received a copy of the GNU General Public License 21along with GNU Tar; see the file COPYING. If not, write to 22the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 23Boston, MA 02110-1301, USA. 24 25 26----- ChangeLog ----- 27 281997-04-25 François Pinard <pinard@iro.umontreal.ca> 29 30 * Release 1.12. 31 32 * configure.in: Check for the inline keyword. 33 341997-04-24 François Pinard <pinard@iro.umontreal.ca> 35 36 * Makefile.am (BABYL): Delete admin/RMAIL, renamed rmail/announce. 37 38 * PORTS: New file. 39 (EXTRA_DIST): Adjusted. 40 411997-04-23 François Pinard <pinard@iro.umontreal.ca> 42 43 * BI-PATCHES: Patches for Bison 1.25. 44 * Makefile.am (EXTRA_DIST): Adjusted. 45 46 * configure.in (AC_PROG_INSTALL): Call deleted. AM_INIT_AUTOMAKE 47 takes care of this already. 48 491997-04-22 François Pinard <pinard@iro.umontreal.ca> 50 51 * Prerelease 1.11q. 52 53 * configure.in: Use gethostent instead of gethostbyname while 54 checking for -lnsl. It seems SINIX systems require this. 55 Reported by Bruno Haible. 56 571997-04-19 François Pinard <pinard@iro.umontreal.ca> 58 59 * acinclude.m4: New fp_WITH_INCLUDED_MALLOC macro. 60 * configure.in: Use it instead of the HP/UX test for GNU malloc. 61 Reported by Bruno Haible. 62 631997-04-17 François Pinard <pinard@iro.umontreal.ca> 64 65 * Prerelease 1.11p. 66 67 * acinclude.m4 (cl_FUNC_GMALLOC): New macro, yet still unused, as 68 it requires config.guess. I have to think more about this. 69 Reported by Bruno Haible. 70 711997-04-16 François Pinard <pinard@iro.umontreal.ca> 72 73 * AC-PATCHES: Patches for Autoconf 2.12. 74 * AM-PATCHES: Patches for Automake 1.1n. 75 * Makefile.am (EXTRA_DIST): Adjusted. 76 771997-04-15 François Pinard <pinard@iro.umontreal.ca> 78 79 * configure.in: Ensure all cpp directives are left justified. 80 Reported by Kaveh R. Ghazi. 81 821997-04-12 François Pinard <pinard@iro.umontreal.ca> 83 84 * configure.in: Add fnmatch.o to LIBOBJS if AC_FUNC_FNMATCH 85 says no working copy was found. This is not done automatically. 86 Reported by Bruno Haible, Bryant Fujimoto, John David Anglin, 87 Kaveh R. Ghazi, Laurent Caillat-Vallet, Sakai Kiyotaka and 88 Santiago Vila Doncel. 89 901997-04-11 François Pinard <pinard@iro.umontreal.ca> 91 92 * configure.in: Much simplify the -lsocket and -lnsl tests. 93 Reported by Larry Schwimmer. 94 951997-04-11 François Pinard <pinard@iro.umontreal.ca> 96 97 * Prerelease 1.11o. 98 99 * configure.in: Do not check for gettimeofday anymore. 100 101 * configure.in: Do not anymore blindly add -lnsl if gethostname 102 is found, nor -lsocket if setsockopt is found. Instead, for 103 resolving setsockopt, try none, -lsocket, and -lsocket -lnsl, 104 in that order. For resoving gethostbyname, try none, than -lnsl. 105 Reported by Ariel Faigon, Heiko Schlichting, Jean-Philippe 106 Martin-Flatin, John J. Szetela, John R. Vanderpool, Kaveh 107 R. Ghazi, Larry Schwimmer, Marcus Daniels, Mark Bynum and 108 Russell Cattelan. 109 1101997-04-10 François Pinard <pinard@iro.umontreal.ca> 111 112 * configure.in: Define _GNU_SOURCE to get FNM_LEADIR_DIR, etc. 113 * acconfig.h: Document _GNU_SOURCE. 114 Reported by Andreas Jaeger, Becki Kain, Brendan Kehoe, David 115 N. Brown, J. Dean Brock, James V. DI Toro III, Jeffrey Mark 116 Siskind, Jürgen Reiss, Paul Eggert, Roland McGrath, Rolf 117 Niepraschk, Roman Gollent, Thomas Bushnell n/BSG and Ulrich 118 Drepper. 119 1201997-03-26 François Pinard <pinard@iro.umontreal.ca> 121 122 * configure.in (ALL_LINGUAS): Add it. 123 1241997-03-20 François Pinard <pinard@iro.umontreal.ca> 125 126 * configure.in: Require Autoconf 2.12. 127 1281997-02-25 François Pinard <pinard@iro.umontreal.ca> 129 130 * configure.in: Use AM_CONFIG_HEADER and AM_GNU_GETTEXT instead 131 of AC_CONFIG_HEADER and ud_GNU_GETTEXT. Use AC_FUNC_FNMATCH 132 instead of AM_FUNC_FNMATCH. Do not take care anymore of stamp-h 133 in AC_OUTPUT, leave it to Automake. 134 * acinclude.m4: Replaced whole, from elsewhere. 135 * Makefile.am (EXTRA_DIST): Leave README-alpha to Automake. 136 1371997-02-12 François Pinard <pinard@iro.umontreal.ca> 138 139 * configure.in: Delete README-alpha code, Automake handles it now. 140 1411996-11-18 François Pinard <pinard@iro.umontreal.ca> 142 143 * Prerelease 1.11.14. 144 145 * Makefile.am (BABYL): Add admin/RMAIL. 146 147 * configure.in: Check for sys/buf.h, as BSD/OS. 148 Reported by Dan Reish. 149 1501996-11-09 François Pinard <pinard@iro.umontreal.ca> 151 152 * configure.in: Replace a missing basename. 153 Reported by Bryant Fujimoto, Erick Branderhorst, Greg Black, John 154 David Anglin, John J. Szetela, Kaveh R. Ghazi, Kurt Jaeger, Marcus 155 Daniels, Santiago Vila Doncel and William Bader. 156 1571996-11-08 François Pinard <pinard@iro.umontreal.ca> 158 159 * Prerelease 1.11.13. 160 161 * configure.in: Replace a missing dirname. 162 1631996-10-07 François Pinard <pinard@iro.umontreal.ca> 164 165 * configure.in: Clean out some macro calls made useless since 166 AM_INIT_AUTOMAKE implies them. 167 1681996-09-20 François Pinard <pinard@iro.umontreal.ca> 169 170 * configure.in: Do not check anymore for regex. 171 1721996-09-19 François Pinard <pinard@iro.umontreal.ca> 173 174 * Prerelease 1.11.12 175 176 * configure.in: Check echo for newline suppression. 177 1781996-09-18 François Pinard <pinard@iro.umontreal.ca> 179 180 * configure.in: Do not add open3.o to LIBOBJS anymore. 181 1821996-09-05 François Pinard <pinard@iro.umontreal.ca> 183 184 * configure.in (ALL_LINGUAS): Add pl. 185 1861996-09-04 François Pinard <pinard@iro.umontreal.ca> 187 188 * configure.in (AC_OUTPUT): Prepare tests/Makefile and tests/preset. 189 * Use AM_ version of fp_ macros. 190 191 * Makefile.am (SUBDIRS): Add tests/. 192 1931996-07-18 François Pinard <pinard@iro.umontreal.ca> 194 195 * Prerelease 1.11.11. 196 197 * configure.in: Use AC_PREREQ(2.10). 198 1991996-07-16 François Pinard <pinard@iro.umontreal.ca> 200 201 * configure.in (ALL_LINGUAS): Add nl. 202 Reported by Erick Branderhorst. 203 2041996-07-12 François Pinard <pinard@iro.umontreal.ca> 205 206 * Prerelease 1.11.10. 207 208 * configure.in (ALL_LINGUAS): Add ko and sl. 209 2101996-05-01 François Pinard <pinard@iro.umontreal.ca> 211 212 * configure.in: Check for fsync, and linux/fd.h. 213 Reported by Marty Leisner. 214 2151996-04-17 François Pinard <pinard@iro.umontreal.ca> 216 217 * Makefile.am (EXTRA_DIST): New name for DIST_OTHERS. 218 219 * configure.in (ALL_LINGUAS): Add no. 220 221 * Makefile.am (BABYL): Consider rmail/* instead of rmail/*/*. 222 2231996-02-28 François Pinard <pinard@iro.umontreal.ca> 224 225 * configure.in: Avoid PROGRAMS, instead use RMT to substitute rmt. 226 * Makefile.am (SUBDIRS): Use intl and po instead of @INTLSUB@ and 227 @POSUB@. 228 229 * configure.in: Check for poll.h and stropts.h. 230 Check for nap, napms, poll, select and usleep. 231 2321996-02-12 François Pinard <pinard@iro.umontreal.ca> 233 234 * Makefile.am: Remove CONFIG_HEADER, not required by Automake 0.29. 235 * configure.in: Temporarily remove a \ in AC_OUTPUT for automake. 236 2371996-02-03 François Pinard <pinard@iro.umontreal.ca> 238 239 * configure.in: Check size of unsigned long (assume 32 bits if 240 cross-compiling) and long long (assume not available). 241 2421996-01-14 François Pinard <pinard@iro.umontreal.ca> 243 244 * Makefile.am (AUTOMAKE_OPTIONS): Select gnits and dist-shar. 245 (dist-zoo): New goal, experimental for now. 246 2471996-01-07 François Pinard <pinard@iro.umontreal.ca> 248 249 * Makefile.am: Force distribution of BACKLOG. 250 Reported by Jonathan Thornburg. 251 252 * Makefile.am: Declare BABYL. Force distribution of AUTHORS 253 and rebox.el. Add id, ID and dist-shar targets. Add parts of 254 previous Makefile.in as FIXME comments. 255 2561995-12-30 François Pinard <pinard@iro.umontreal.ca> 257 258 * configure.in: Ensure there is a link for libintl.h. 259 Reported by Daniel S. Barclay, Göran Uddeborg, Jonathan Thornburg, 260 Ken Raeburn and Minh Tran-Le. 261 2621995-12-29 François Pinard <pinard@iro.umontreal.ca> 263 264 * Prerelease 1.11.9. 265 266 * Makefile.am: New file. 267 268 * configure.in: Decide if README-alpha should be distributed. 269 From Ulrich Drepper. 270 2711995-12-28 François Pinard <pinard@iro.umontreal.ca> 272 273 * configure.in (AC_OUTPUT): Call sed for po/Makefile.in. 274 275 * Makefile.in: Distribute ABOUT-NLS rather than NLS, and do not 276 distribute config.guess or config.sub anymore. 277 278 * configure.in: Test for lchown. 279 2801995-12-19 François Pinard <pinard@iro.umontreal.ca> 281 282 * configure.in: Prefer avoiding union wait, and use it only if 283 using int fails. This turns around the previous test, as directly 284 checking for union wait is seemingly seeking for trouble. 285 Reported by Alan Bawden, Chris Arthur, Coranth Gryphon, 286 Jean-Philippe Martin-Flatin, Robert Bernstein and Tarang Kumar 287 Patel. 288 289 * configure.in: Check for strerror, so lib/error.c will not try to 290 define sys_errlist in the case strerror is already provided. 291 Reported by Coranth Gryphon, Chris Arthur, David J. MacKenzie, 292 Erich Stefan Boleyn, Greg Black, Jason R. Mastaler, Michael 293 Innis Bushnell, Robert Bernstein, Santiago Vila Doncel, Skip 294 Montanaro and Thomas Krebs. 295 296 * configure.in: Quote the selected shell. I wonder why this 297 error did not show up before! 298 299 * configure.in: Check <sys/tprintf.h> and <sys/device.h> for BSDi. 300 Reported by Chris Arthur and Skip Montanaro. 301 3021995-12-17 François Pinard <pinard@iro.umontreal.ca> 303 304 * configure.in: Be more systematic at caching test results. 305 Reported by Ulrich Drepper. 306 307 * configure.in: While checking for remote tape header files, only 308 include <sgtty.h> if it was found to exist. 309 310 * configure.in: Prefer #if to #ifdef while checking for open3. 311 3121995-11-30 François Pinard <pinard@iro.umontreal.ca> 313 314 * configure.in: Check for net/errno.h and sys/inet.h, trying to 315 get EOPNOTSUPP defined. 316 317 * configure.in: Check for sgtty.h. 318 3191995-11-06 François Pinard <pinard@iro.umontreal.ca> 320 321 * acconfig.h: Document HAVE_STPCPY for the time being. I do not 322 understand yet why this is mandatory: it should be automatic 323 from AC_CHECK_FUNCS(stpcpy) in aclocal.m4, through autoheader. 324 325 * configure.in: Use fp_FUNC_FNMATCH, to get around non-working 326 versions on SCO Unix 3.2v4.2, and Solaris. 327 Reported by Chad Hurwitz, Dennis Pixton, Per Foreby, Richard 328 Westerik, Robert Weiner and Tom Tromey. 329 3301995-10-27 François Pinard <pinard@iro.umontreal.ca> 331 332 * configure.in: Add /usr/bin/rcmd as a possible remote shell, as 333 this is the name used by SCO Unix 3.2.4. 334 Reported by Bela Lubkin and Rodney Brown. 335 3361995-07-23 François Pinard <pinard@iro.umontreal.ca> 337 338 * configure.in: Adapt for GNU gettext 0.8. 339 3401995-07-10 François Pinard <pinard@iro.umontreal.ca> 341 342 * Makefile.in (default): Define to all. 343 3441995-06-18 François Pinard <pinard@iro.umontreal.ca> 345 346 * configure.in: For mknod, also include <sys/types.h> prior to 347 <sys/stat.h>, as Ultrix needs this. 348 Reported by Bruce Jerrick, Bryant Fujimoto, Conrad Hughes, Erich 349 Stefan Boleyn, Jason R. Mastaler, Joshua R. Poulson, Jurgen Botz, 350 Serge Granik, Simon Wright, Ulrich Drepper and Vince Del Vecchio. 351 352 * configure.in: Replace execlp as needed (for Minix, mainly). 353 354 * configure.in: Force compilation of lib/open3.c if required. 355 Clean out old NO_OPEN3 code. 356 3571995-06-17 François Pinard <pinard@iro.umontreal.ca> 358 359 * Release 1.11.8. 360 361 * Makefile.in (DISTFILES): Distribute config.guess and config.sub. 362 Reported by Ulrich Drepper. 363 364 * acconfig.h, aclocal.m4, configure.in: Last minutes 365 additions, and glimpses to the future gettext 0.6.1. 366 Reported by Ulrich Drepper. 367 368 * acconfig.h: Document HAVE_MKNOD. 369 * configure.in: Test for mknod only once <sys/stat.h> included. 370 Reported by Alan Modra, Ray Dassen and Ulrich Drepper. 371 372 * aclocal.m4: Test for re_rx_search instead of rx_compile, the 373 latter not being exported unless RX_WANT_RX_DEFS is defined. 374 Reported by Alan Modra. 375 3761995-06-15 François Pinard <pinard@iro.umontreal.ca> 377 378 * Makefile.in (dist): Do not hide copying rule. 379 380 * configure.in: Adjustments to NLS, so .sed scripts may now all 381 reside in intl/. 382 3831995-06-13 François Pinard <pinard@iro.umontreal.ca> 384 385 * Makefile.in (pot): New goal, triggering po/tar.pot. 386 3871995-06-07 François Pinard <pinard@iro.umontreal.ca> 388 389 * configure.in: Substitute POTFILES by contents of po/POTFILES. 390 391 * configure.in: More adjustments for GNU gettext 0.6. 392 * config.guess, config.sub: New files, all taken from gettext 0.6. 393 3941995-06-04 François Pinard <pinard@iro.umontreal.ca> 395 396 * Makefile.in (check): New goal. 397 3981995-05-30 François Pinard <pinard@iro.umontreal.ca> 399 400 * Makefile.in (DISTFILES): Do not distribute SUPPORT, now 401 integrated in the documentation. 402 Reported by Karl Berry. 403 4041995-05-28 François Pinard <pinard@iro.umontreal.ca> 405 406 * configure.in: Check for isascii, not iascii. 407 Reported by Alan Modra, Bruno Haible and Greg McGary. 408 4091995-05-16 François Pinard <pinard@iro.umontreal.ca> 410 411 * Prerelease 1.11.7. 412 413 * Makefile.in (DISTFILES): Distribute NLS. 414 * configure.in, acconfig.h: Many adjustments for GNU gettext. 415 4161995-05-09 François Pinard <pinard@iro.umontreal.ca> 417 418 * configure.in: Clean glocale out. 419 * Makefile.in (SUBDIRS): Add po. 420 * Makefile.in (pofile): New goal. 421 4221995-05-08 François Pinard <pinard@iro.umontreal.ca> 423 424 * configure.in: Call ud_WITH_NLS, create intl/Makefile.in. 425 Compute size of unsigned short and unsigned int. 426 427 * acconfig.h: Document ENABLE_NLS, HAVE_CATGETS and HAVE_GETTEXT. 428 * Makefile.in: Process intl subdirectory. 429 430 * configure.in (LINGUAS): Add pt. 431 * src/pt.po: New file, for Portuguese. 432 Reported by Antonio Jose Coutinho. 433 4341995-03-19 François Pinard <pinard@iro.umontreal.ca> 435 436 * configure.in: Remove GLOCALE, add LINGUAS, use fp_WITH_CATALOGS. 437 * acconfig.h: Add description for WITH_CATALOGS. 438 4391995-02-22 François Pinard <pinard@iro.umontreal.ca> 440 441 * configure.in, Makefile.in: Replace `date' by `echo timestamp'. 442 4431995-02-19 François Pinard <pinard@iro.umontreal.ca> 444 445 * Makefile.in: Support ID files. Do not distribute TAGS. 446 4471995-02-05 François Pinard <pinard@iro.umontreal.ca> 448 449 * Makefile.in (maintainer-clean): New name for realclean. 450 4511995-01-02 François Pinard <pinard@iro.umontreal.ca> 452 453 * configure.in: Check for <sys/ioccom.h>. 454 Reported by Joseph E. Sacco. 455 4561995-01-01 François Pinard <pinard@iro.umontreal.ca> 457 458 * Makefile.in (DISTFILES): Distribute SUPPORT, with *pre*-releases. 459 4601994-12-18 François Pinard <pinard@iro.umontreal.ca> 461 462 * configure.in: Check for isascii. 463 Reported by Bruno Haible. 464 4651994-12-11 François Pinard <pinard@iro.umontreal.ca> 466 467 * configure.in: Use fp_WITH_REGEX. 468 * acconfig.h: Document WITH_REGEX. 469 4701994-12-10 François Pinard <pinard@iro.umontreal.ca> 471 472 * src/de.tt: New file, for German. 473 Reported by Ulrich Drepper. 474 4751994-12-03 François Pinard <pinard@iro.umontreal.ca> 476 477 * Prerelease 1.11.6. 478 479 * configure.in: Localize, adapting from how it is done in sharutils. 480 481 * src/fr.tt: New file, for French. 482 483 * configure.in, {,*/}Makefile.in, acconfig.h: 484 Rename PRODUCT to PACKAGE. 485 4861994-11-26 François Pinard <pinard@iro.umontreal.ca> 487 488 * configure.in: Check for <libintl.h> and <locale.h>. 489 4901994-11-02 François Pinard <pinard@iro.umontreal.ca> 491 492 * configure.in: Check for const only after having found possible 493 ANSIfying compiler flags, this is of no use to check it before. 494 4951994-11-01 François Pinard <pinard@iro.umontreal.ca> 496 497 * {,*/}Makefile.in: Clean up, following those of GNU m4. I will 498 not detail all the changes here. 499 * configure.in: Likewise. 500 * acconfig.h: Document PRODUCT and VERSION. 501 5021994-10-04 François Pinard <pinard@iro.umontreal.ca> 503 504 * configure.in: Correct shell assignment for ac_cv_path_RSH. 505 Reported by Kaveh R. Ghazi. 506 5071994-09-14 François Pinard <pinard@iro.umontreal.ca> 508 509 * Makefile.in: Cleanup... Use subshells for all cd's. 510 (MDEFINES): Do not use $(INSTALL...), because ./install-sh will 511 not be relocated correctly. 512 (DISTFILES): Distribute install-sh, not install.sh. 513 (tags): Make only in lib and src. 514 (TAGS): Deleted. 515 (distclean, realclean): Remove config.status. 516 (distclean-local): Don't. 517 (*-recursive): Combine, use sed to strip -recursive in subgoals. 518 (Makefile): Have ./config.status create this Makefile only. 519 (stamp-h): Have ./config.status create config.h only. Do not 520 create stamp-h here, it is now done from configure. 521 (stamp-h.in): Use date instead of touch. 522 * configure.in (AC_OUTPUT): Create stamp-h. 523 5241994-09-09 François Pinard <pinard@iro.umontreal.ca> 525 526 * configure.in: Use fp_ macros for accessing aclocal.m4. Revert 527 _OS_ macros to their previous names, to follow Autoconf. 528 5291994-09-08 François Pinard <pinard@iro.umontreal.ca> 530 531 * configure.in: Delete AC_OS_XENIX, now within AC_HEADER_DIRENT. 532 5331994-09-01 François Pinard <pinard@iro.umontreal.ca> 534 535 * configure.in (PROGS): Warn if $DEFAULT_ARCHIVE was specified, 536 while not being found on the current system. 537 Reported by Robert Bernstein. 538 5391994-08-31 François Pinard <pinard@iro.umontreal.ca> 540 541 * Makefile.in: Distribute it. 542 543 * Makefile.in (distclean-local): Delete config.log. 544 5451994-08-27 François Pinard <pinard@iro.umontreal.ca> 546 547 * acconfig.h: Document HAVE_UNION_WAIT, no more in Autoconf. 548 5491994-08-24 François Pinard <pinard@iro.umontreal.ca> 550 551 * configure.in: Replace AC_SYS_REMOTE_TAPE by its definition, 552 distillating it around. It is going out of Autoconf. 553 Do not backslash quotes anymore while defining unquoted, this is 554 now corrected in Autoconf. 555 5561994-08-23 François Pinard <pinard@iro.umontreal.ca> 557 558 * configure.in: Do not define RTAPELIB nor HAVE_RTAPELIB. 559 5601994-08-22 François Pinard <pinard@iro.umontreal.ca> 561 562 Little cleanup in installation: 563 * configure.in: Do not check for wait3, this function is not used. 564 * Makefile.in: Remove useless RSH substitutions. 565 566 * configure.in: Use `-g -O' instead of `-g' as CFLAGS default 567 value, when GNU C is being used. Delay testing for presets. 568 Reported by Chris Arthur. 569 5701994-08-21 François Pinard <pinard@iro.umontreal.ca> 571 572 * Prerelease 1.11.5. 573 574 * Makefile.in (BACKLOG, dist, shar): Correct for when a different 575 build directory. 576 577 * configure.in: Check for union wait. Adapted from make 3.71. 578 579 * configure.in: Replace both mkdir and rmdir, not just mkdir, 580 because NS32016 running SysVr2.2 has mkdir and lacks rmdir. 581 Reported by Greg Black. 582 583 * configure.in: Do not try anymore to discover the archive device 584 by looking around for various device names. If the installer does 585 not override it, nicely use `-' as a convenient default. 586 Reported by Andreas Schwab and Kaveh R. Ghazi. 587 5881994-08-20 François Pinard <pinard@iro.umontreal.ca> 589 590 * configure.in: Correct a checking message. 591 Reported by Bruno Haible. 592 5931994-08-17 François Pinard <pinard@iro.umontreal.ca> 594 595 * configure.in: Replace AC_PROG_RSH with its expansion. Correct 596 the no/true confusion in tests. Do not substitute RSH anymore in 597 src/Makefile, instead define REMOTE_SHELL in config.h. Replace 598 NO_REMOTE by HAVE_RTAPELIB, with inverted meaning. Substitute 599 RTAPELIB by $Urtapelib.o instead of rtapelib.o. 600 * acconfig.h: Document HAVE_RTAPELIB and REMOTE_SHELL. 601 Reported by Andreas Schwab. 602 603 * configure.in: Checking for remote shell, use the RSH environment 604 variable if set. This is done only when not already in the cache. 605 Reported by Kaveh R. Ghazi. 606 607 * configure.in: Include <sys/types.h> when testing <utime.h>. 608 Reported by Andreas Schwab. 609 610 * configure.in: Also create doc/Makefile. 611 * Makefile.in: Add doc in subdirs, set infodir, update MDEFINES. 612 6131994-08-16 François Pinard <pinard@iro.umontreal.ca> 614 615 * configure.in: Undo the `test -b' patch of 1994-08-05. Ultrix 616 4.2 test does not know about -b. Grrr... 617 Reported by Kaveh R. Ghazi. 618 619 * configure.in: Check for <sys/gentape.h>, HAVE_SYS_GENTAPE_H 620 is tested in rmt.c. Check for <sys/tape.h>, to avoid playing 621 with M_UNIX anymore in rmt.c. 622 Reported by Daniel R. Guilderson and Kaveh R. Ghazi. 623 624 * configure.in: Use proper function names in AC_CHECK_LIB's. 625 Reported by Alexander Dupuy and Kurt Jaeger. 626 627 * configure.in: Use $LIBOBJS, not LIBOJBS, while adding to it. 628 Reported by Demizu Noritoshi and Kaveh R. Ghazi. 629 6301994-08-15 François Pinard <pinard@iro.umontreal.ca> 631 632 * Prerelease 1.11.4. 633 6341994-08-14 François Pinard <pinard@iro.umontreal.ca> 635 636 * configure.in: Decide MTIO_CHECK_FIELD by grepping <sys/mtio.h>. 637 * acconfig.h: Document it. 638 Reported by Ben A. Mesander. 639 640 * Makefile.in: Substitute CC, INSTALL, INSTALL_PROGRAM, 641 INSTALL_DATA, RSH, CFLAGS, LDFLAGS, LIBS, prefix, exec_prefix, 642 binprefix, bindir and libexecdir. 643 (MDEFINES): New, using the previous substitutions. 644 (all, install, uninstall): Use it. 645 Reported by Bruno Haible. 646 6471994-08-13 François Pinard <pinard@iro.umontreal.ca> 648 649 * configure.in: Check for <sys/wait.h>. 650 6511994-08-11 François Pinard <pinard@iro.umontreal.ca> 652 653 * configure.in: For <utime.h>, also ensure struct utimbuf is 654 defined by the header file before defining HAVE_UTIME_H. Some 655 systems will not define the structure without _POSIX_SOURCE. 656 * acconfig.h: Document HAVE_UTIME_H. 657 Reported by James W. McKelvey and Robert E. Brown. 658 659 * configure.in: Instead of replacing strstr, check for it, so 660 HAVE_STRSTR gets defined, then replace it explicitely if required. 661 6621994-08-09 François Pinard <pinard@iro.umontreal.ca> 663 664 * configure.in: Updated for Autoconf 2.0. 665 6661994-08-08 François Pinard <pinard@iro.umontreal.ca> 667 668 * configure.in: Replace memset, mkdir (and rmdir), rename, strstr, 669 ftruncate, when not found. 670 Reported by Kaveh R. Ghazi (for memset and strstr). 671 Reported by Bruno Haible (for mkdir and rename). 672 6731994-08-05 François Pinard <pinard@iro.umontreal.ca> 674 675 * configure.in: Remove padding test. 676 * acconfig.h: Remove PADDING_IN_TAR_HEADER. 677 Reported by Bruno Haible. 678 679 * configure.in: While defining DEFAULT_ARCHIVE, check for a block 680 device, instead of mere existence. But is `test -b' portable? 681 Test for /dev/fd0, instead of for /dev/fd. Put rct tests last. 682 Reported by Andreas Schwab. 683 684 * configure.in: Define uid_t and gid_t if necessary. 685 Reported by Jonathan I. Kamens. 686 687 * Makefile.in (distclean-local): Delete config.cache. 688 Reported by Thomas Koenig. 689 690 * configure.in: Change malloc_dbg to dmalloc, mutatis mutandi. 691 * acconfig.h: According changes. 692 693 * configure.in: Test for broken stat macros, and for mkfifo. 694 695 * configure.in: Check for ST_BLKSIZE and ST_BLOCKS. 696 6971994-08-02 François Pinard <pinard@iro.umontreal.ca> 698 699 * Prerelease 1.11.3. 700 701 * Makefile.in (dist, shar): Distribute the scripts directory. 702 7031994-08-01 François Pinard <pinard@iro.umontreal.ca> 704 705 * configure.in: Check for <memory.h>. 706 7071994-07-30 François Pinard <pinard@iro.umontreal.ca> 708 709 * configure.in: When --with-malloc-dbg, define WITH_MALLOC_DBG and 710 add -lmalloc_dbg to LIBS. 711 * acconfig.h: Document WITH_MALLOC_DBG. 712 713 * configure.in: Try deciding DEVICE_PREFIX and DENSITY_LETTER from 714 the selected DEFAULT_ARCHIVE. 715 * acconfig.h: Document DEVICE_PREFIX and DENSITY_LETTER. 716 Reported by Danny R. Johnston. 717 7181994-07-29 François Pinard <pinard@iro.umontreal.ca> 719 720 * aclocal.m4: Adapt AC_PROTOTYPES to caching. 721 722 * Using configure as generated by a more recent Autoconf solves a 723 problem of rename being rejected on HP-UX in ANSI mode, because of 724 a conflicting prototype from <stdio.h>. In this context, Autoconf 725 now uses ctype.c instead for defining __stub macros. 726 Reported by Alan Modra, Burkhard Plache, Edward Welbourne, 727 Henrik Bakman, Jeffrey Goldberg, Jim Farrell, Kimmy Posey, 728 Michael Maass, Mike Nolan, Richard Lloyd, Robert McGraw, 729 Robert W. Kim, Stefan Skoglund, Tarang Kumar Patel, Tilman 730 Schmidt, Tim Ramsey, Van Snyder and W. Phillip Moore. 731 7321994-07-26 François Pinard <pinard@iro.umontreal.ca> 733 734 * configure.in: Check for <fcntl.h>. Do not define BSD42, do 735 not look anymore if /vmunix, /sdmach or /../../mach exist. 736 * acconfig.h: Remove BSD42. 737 7381994-07-24 François Pinard <pinard@iro.umontreal.ca> 739 740 * configure.in: Add gmalloc.o to LIBOBJS, instead of AC_SUBST'ing 741 MALLOC. Check for valloc only if gmalloc.o is not being selected. 742 valloc was possibly defined both in "port.h" and GNU malloc. 743 * acconfig.h: Add a description for HAVE_VALLOC. 744 J.T. Conklin, Nelson H.F. Beebe and Tilman Schmidt. 745 7461994-07-22 François Pinard <pinard@iro.umontreal.ca> 747 748 * configure.in: Use provided fnmatch only as a replacement. 749 750 * configure.in: Check for <sys/io/trioctl.h>, needed for 751 defining _IOW and _IOR on the Tektronix XD88. 752 Reported by Kaveh R. Ghazi. 753 7541994-07-20 François Pinard <pinard@iro.umontreal.ca> 755 756 * Makefile.in (BACKLOG): New goal, for summarizing the 757 maintainance backlog. Distribute file BACKLOG. 758 7591994-07-08 François Pinard <pinard@iro.umontreal.ca> 760 761 * regex.c, regex.h: Use newer versions. This solves a few 762 problems reported by users. 763 Reported by Chris Hopps and John David Anglin. 764 7651994-07-06 François Pinard <pinard@iro.umontreal.ca> 766 767 * configure.in: Check for <utime.h>. 768 7691994-07-05 François Pinard <pinard@iro.umontreal.ca> 770 771 * configure.in: Substitute DEFAULT_ARCHIVE and DEFAULT_BLOCKING 772 from the environment. Check for /dev/tape first while trying to 773 decide the default archive, because it is often symlinked right. 774 * acconfig.h: Explain DEFAULT_ARCHIVE and DEFAULT_BLOCKING. 775 776 * configure.in: Use AC_SET_MAKE. 777 * Makefile.in: Use @SET_MAKE@. 778 Reported by Jim Meyering. 779 780 * configure.in: Integrate the check, previously in testpad.c, 781 about a needed padding field in the tar header struct. 782 * acconfig.h: Explain PADDING_IN_TAR_HEADER. 783 7841994-07-02 François Pinard <pinard@iro.umontreal.ca> 785 786 * configure.in: Check for -linet, this library is required on 787 a few systems for gettimeofday() or getservbyname(). Also, on ISC 788 4.0, this avoids a broken version of rename(). 789 Reported by Dean Gaudet, Goeran Uddeborg, Mike Rogers and 790 Peder Chr. Norgaard. 791 792 * configure.in: Ensure -lsocket is tested after -lnsl. This is 793 required in particular for SINIX-Z, an SVR4.0 system. 794 Reported by Manfred Weichel and Mark Frost. 795 796 * configure.in: All tests reordered for clarity. 797 7981994-07-01 François Pinard <pinard@iro.umontreal.ca> 799 800 * configure.in: Use AC_TIME_WITH_SYS_TIME, test for <sys/time.h>. 801 This should solve the problem of multiple inclusions of <time.h>. 802 Also, also check for <sys/timeb.h>, for getdate.y tests this. 803 Reported by Jim Meyering, John Rouillard, Karl Berry and Rick 804 Emerson. 805 8061994-06-30 François Pinard <pinard@iro.umontreal.ca> 807 808 * configure.in: AC_CONST was already added since 1.11.2, but no 809 ChangeLog entry for it, so here is one, with list of reporters. 810 * AIX 3.2 RS/6000 IBM's compiler was unable to compile regex.c, 811 this might be solved already through improved Autoconf tests. 812 813 Reported by Alexey Vovenko, Ben A. Mesander, Bryant 814 Fujimoto, Christian. T. Dum, Christopher Vickery, Dan Bloch, 815 David K. Drum, David Lemson, Demizu Noritoshi, Dimitris 816 Fousekis, Ezra Peisach, Hugh Secker-Walker, Indra Singhal, 817 J.T. Conklin, Jan Hoeglund, Janice Burton, Jeff Siegel, 818 Jim Blandy, John L. Chmielewski, John Rouillard, Jonathan 819 N. Sherman, Kevin D Quitt, Kurt Jaeger, Mark Frost, Matthew 820 Braun, Michael Kubik, Michael Helm, Moritz D. Klingholz, 821 Neil Jerram, Nelson H.F. Beebe, Nick Barron, Paul Eggert, 822 R. Scott Butler, Rob Parry, Ron Guilmette, Scott Grosch, 823 Sherwood and Stephen Saroff. 824 825 * Makefile.in: Completely replaced, lurking at the previous one. 826 At the same time, solve a few minor problems reported by users. 827 The most frequently reported ones pertained to a trailing \ in a 828 comment, and rmt installing in /etc. 829 Reported by Dean Gaudet, Gerben Wierda, James W. McKelvey, 830 John L. Chmielewski, Karl Berry, Mike Rogers, Ralf Suckow and 831 Richard Lloyd. 832 833 * configure.in: Also process lib/Makefile.in and src/Makefile.in. 834 Substitute CFLAGS, LDFLAGS and YFLAGS from the environment. 835 Use AC_CHECKING instead of using echo explicitely. 836 Use AC_HEADER_CHECK(unistd.h) instead of obsolete AC_UNISTD_H. 837 838 * configure.in: Generate a configuration header file. This not 839 only puts less clutter in make output, but also goes around some 840 compilers' limits about the number of allowed -D options. 841 Reported by Nelson H.F. Beebe. 842 843 * acconfig.h: New file. 844 845 * Split distribution into a few subdirectories, for easing 846 maintainance. So far: src, lib, scripts, msdos which are to be 847 distributed; then rmail, texinfo, ARCH and misc to be kept here. 848 * scripts/ChangeLog: Initialized by moving entries related to 849 scripts out of this ChangeLog. 850 851 * Taking over maintenance duties. 852 853 854----- doc/ChangeLog ----- 855 8561997-04-23 François Pinard <pinard@iro.umontreal.ca> 857 858 * Release 1.12. 859 860 * Makefile.am (EXTRA_DIST): Remove tar-mew.texi for the release. 861 (tar.dvi) [!PUBLISH]: Delete @smallbook. Call sed in all cases. 862 8631997-04-11 François Pinard <pinard@iro.umontreal.ca> 864 865 * Prerelease 1.11o. 866 867 * Makefile.am (tar.info): Comment about needed makeinfo version. 868 Reported by Sherwood Botsford. 869 8701997-04-10 François Pinard <pinard@iro.umontreal.ca> 871 872 * Makefile.am (EXTRA_DIST): Add tar-mew.texi. 873 8741997-03-16 François Pinard <pinard@iro.umontreal.ca> 875 876 * Makefile.am (tar.dvi): Merely use tar.texi and rely on -I to 877 resolve it in $(srcdir). Remove tmp-tar.info* files right away. 878 (CLEANFILES): Define to tmp-*. 879 8801997-03-14 François Pinard <pinard@iro.umontreal.ca> 881 882 * Makefile.am: Rename RENDERING, QUALITY, DRAFT and DEBUG to 883 RENDITION, PUBLISH, DISTRIB and PROOF respectively. Ensure that 884 `@set DISTRIB' gets replaced after macro-expansion and before TeX. 885 8861996-11-06 François Pinard <pinard@iro.umontreal.ca> 887 888 * Prerelease 1.11.13. 889 890 * getdate.texi: New file, from elsewhere. 891 * tar.texi: Replace a lot of text by an include of getdate.texi. 892 * Makefile.am: Adjusted. 893 8941996-08-24 François Pinard <pinard@iro.umontreal.ca> 895 896 * Prerelease 1.11.12. 897 898 * Makefile.am (EXTRA_DIST): Remove texinfo.tex, now that Automake 899 handles it automatically. 900 9011996-07-18 François Pinard <pinard@iro.umontreal.ca> 902 903 * Prerelease 1.11.11. 904 905 * Makefile.am (tar.info): Remove -I$(srcdir), which was useless. 906 9071996-07-17 François Pinard <pinard@iro.umontreal.ca> 908 909 * Makefile.am (EXTRA_DIST): Include texinfo.tex, until Automake 910 does it automatically. 911 9121996-07-16 François Pinard <pinard@iro.umontreal.ca> 913 914 * Prerelease 1.11.10. 915 916 * Makefile.am (EXTRA_DIST): Distribute convtexi.pl, for now. 917 9181996-04-22 François Pinard <pinard@iro.umontreal.ca> 919 920 * Makefile.am: Implement rendering levels (QUALITY, DRAFT or DEBUG). 921 9221996-04-17 François Pinard <pinard@iro.umontreal.ca> 923 924 * Makefile.am (EXTRA_DIST): New name for DIST_OTHER. 925 9261996-03-03 François Pinard <pinard@iro.umontreal.ca> 927 928 * Makefile.am (tar.dvi): Comment about needed makeinfo version. 929 Reported by Jonathan Thornburg. 930 9311996-02-12 François Pinard <pinard@iro.umontreal.ca> 932 933 * Makefile.am: Replace TEXINFO by info_TEXINFOS for Automake 0.29. 934 9351996-01-14 François Pinard <pinard@iro.umontreal.ca> 936 937 * Makefile.am (AUTOMAKE_OPTIONS): Select gnits. 938 9391996-01-08 François Pinard <pinard@iro.umontreal.ca> 940 941 * Makefile.am: New file. 942 * tar.texi: New name for tar.texinfo. 943 9441995-12-30 François Pinard <pinard@iro.umontreal.ca> 945 946 * Makefile.in (check): New goal, doing nothing. 947 Reported by Cesar Romani, Joachim Seelig, Mark Bynum and Ulrich 948 Drepper. 949 9501995-11-29 François Pinard <pinard@iro.umontreal.ca> 951 952 * Makefile.in (clean): Remove tmp-* files. 953 9541995-11-27 François Pinard <pinard@iro.umontreal.ca> 955 956 * Makefile.in: Use -I$(srcdir) with makeinfo, and -otmp-tar.info 957 so tar.info in build directory does not shadow the real one. 958 (tar.dvi): Depend on version.texi. Add $(srcdir) to TEXINPUTS so 959 texinfo.tex is found, as texi2dvi gets no clue from the file name. 960 (DISTFILES): Also distribute tar.info-8. 961 9621995-11-22 François Pinard <pinard@iro.umontreal.ca> 963 964 * Makefile.in (DISTFILES): Distribute ChangeLog. 965 * ChangeLog: New file, extracted from top-level ChangeLog. 966 9671995-06-22 François Pinard <pinard@iro.umontreal.ca> 968 969 * Makefile.in: Get rid of docwarn.texi, now replaced by 970 the @UNREVISED macro, right into tar.texinfo. 971 9721995-06-18 François Pinard <pinard@iro.umontreal.ca> 973 974 * Makefile.in (tar.dvi): First macro-expand tar.texinfo. 975 9761995-06-07 François Pinard <pinard@iro.umontreal.ca> 977 978 * Makefile.in: Use subdir and distdir. 979 9801995-06-03 François Pinard <pinard@iro.umontreal.ca> 981 982 * tar.texinfo: Use header.texi. 983 * Makefile.in: Prepare header.texi from src/tar.h. 984 Distribute it. 985 9861995-05-28 François Pinard <pinard@iro.umontreal.ca> 987 988 * Makefile.in (DISTFILES): Add tar.info-3. 989 Reported by Bruno Haible. 990 9911995-02-22 François Pinard <pinard@iro.umontreal.ca> 992 993 * Makefile.in: Replace `date' by `echo timestamp'. 994 9951995-02-13 François Pinard <pinard@iro.umontreal.ca> 996 997 * Makefile.in: Use top_srcdir. 998 9991995-02-05 François Pinard <pinard@iro.umontreal.ca> 1000 1001 * Makefile.in (maintainer-clean): New name for realclean. 1002 10031994-12-03 François Pinard <pinard@iro.umontreal.ca> 1004 1005 * Makefile.in (DISTFILES): Include docwarn.texi. 1006 10071994-11-07 François Pinard <pinard@iro.umontreal.ca> 1008 1009 * Makefile.in (stamp-vti): Use new -r option to date. 1010 10111994-11-05 François Pinard <pinard@iro.umontreal.ca> 1012 1013 * Makefile.in (realclean): Also remove stamp-vti. 1014 10151994-09-14 François Pinard <pinard@iro.umontreal.ca> 1016 1017 * Makefile.in: Cleanup... 1018 (texclean): Deleted, merged into mostlyclean. 1019 (Makefile): Have ./config.status create this Makefile only. 1020 10211994-08-30 François Pinard <pinard@iro.umontreal.ca> 1022 1023 * Makefile.in (tar.info): Make the documentation in the source 1024 directory only. 1025 10261994-08-21 François Pinard <pinard@iro.umontreal.ca> 1027 1028 * Makefile.in: Correct for when a different build directory. 1029 1030 * docwarn.texi: New file. 1031 * Makefile.in: Distribute it. 1032 10331994-08-17 François Pinard <pinard@iro.umontreal.ca> 1034 1035 * Makefile.in: New file. 1036 * tar.texinfo: New file. 1037 * texinfo.tex: New, from elsewhere. 1038 1039 1040----- lib/ChangeLog ----- 1041 10421997-04-25 François Pinard <pinard@iro.umontreal.ca> 1043 1044 * Release 1.12. 1045 10461997-04-16 François Pinard <pinard@iro.umontreal.ca> 1047 1048 * Prerelease 1.11p. 1049 1050 The distribution did not have getdate.c updated: 1051 * Makefile.am (libtar_a_SOURCES): Use getdate.y, not getdate.c. 1052 (EXTRA_DIST): Do not include getdate.y anymore. 1053 * getdate.c: Specify $(srcdir)/, to silence GNU make. 1054 Reported by Bruno Haible. 1055 10561997-04-15 François Pinard <pinard@iro.umontreal.ca> 1057 1058 * Makefile.am (getdate.c): Announce 13 conflicts, not 10. 1059 Reported by Bruno Haible, Bryant Fujimoto and Wolfram Wagner. 1060 10611997-04-11 François Pinard <pinard@iro.umontreal.ca> 1062 1063 * Prerelease 1.11o. 1064 1065 * getdate.h: New file. 1066 * Makefile.am: Adjusted. 1067 10681997-04-10 François Pinard <pinard@iro.umontreal.ca> 1069 1070 * modechange.c, modechange.h: New files. 1071 * Makefile.am: Adjusted. 1072 10731997-02-25 François Pinard <pinard@iro.umontreal.ca> 1074 1075 * Makefile.am: Adapt library name to Automake 1.1l. 1076 10771996-11-09 François Pinard <pinard@iro.umontreal.ca> 1078 1079 * Prerelease 1.11.14. 1080 1081 * basename.c: New file. 1082 10831996-11-09 François Pinard <pinard@iro.umontreal.ca> 1084 1085 * Prerelease 1.11.13. 1086 1087 * Makefile.am: Use tar_DEPENDENCIES. Avoid BUILT_SOURCES, 1088 put getdate.c instead of getdate.y in tar_SOURCES and keep 1089 getdate.c in EXTRA_DIST. 1090 10911996-11-06 François Pinard <pinard@iro.umontreal.ca> 1092 1093 * argmatch.c, argmatch.h, backupfile.c, backupfile.h, dirname.c, 1094 getversion.c: New files. 1095 * Makefile.am: Adjusted. 1096 Reported by Marty Leisner. 1097 10981996-10-31 François Pinard <pinard@iro.umontreal.ca> 1099 1100 * safe-stat.h: Deleted. 1101 * Makefile.am (noinst_HEADERS): Adjusted. 1102 Reported by Jim Meyering. 1103 11041996-09-20 François Pinard <pinard@iro.umontreal.ca> 1105 1106 * regex.c, regex.h, rx.c, rx.h: Deleted. 1107 * Makefile.am: Adjusted. 1108 11091996-09-19 François Pinard <pinard@iro.umontreal.ca> 1110 1111 * Prerelease 1.11.12. 1112 1113 * execlp.c: Include stdio.h, not only stdio! 1114 11151996-09-16 François Pinard <pinard@iro.umontreal.ca> 1116 1117 * open3.h: File deleted after being merged into system.h. 1118 * open3.c: File deleted, moved back into src/. 1119 * Makefile.am: Adjusted. 1120 Reported by Jim Meyering. 1121 11221996-08-24 François Pinard <pinard@iro.umontreal.ca> 1123 1124 * Makefile.am (EXTRA_DIST): $(BUILT_SOURCES) is no longer 1125 necessary, as Automake now handles it automatically. 1126 11271996-07-16 François Pinard <pinard@iro.umontreal.ca> 1128 1129 * Prerelease 1.11.11. 1130 1131 * Makefile.am (EXTRA_DIST): Move stpcpy.c there, from tar_SOURCES. 1132 Reported by Ulrich Drepper. 1133 11341996-04-17 François Pinard <pinard@iro.umontreal.ca> 1135 1136 * Prerelease 1.11.10. 1137 1138 * Makefile.am (EXTRA_DIST): New name for DIST_OTHER. 1139 11401996-02-28 François Pinard <pinard@iro.umontreal.ca> 1141 1142 * msleep.c: New file, from elsewhere. 1143 * Makefile.am: Adjusted. 1144 11451996-02-12 François Pinard <pinard@iro.umontreal.ca> 1146 1147 * Makefile.am: Remove CONFIG_HEADER, not required by Automake 0.29. 1148 11491996-01-14 François Pinard <pinard@iro.umontreal.ca> 1150 1151 * Makefile.am (AUTOMAKE_OPTIONS): Select gnits. 1152 11531996-01-07 François Pinard <pinard@iro.umontreal.ca> 1154 1155 * Makefile.am: Add parts of previous Makefile.in as FIXME comments. 1156 11571996-01-01 François Pinard <pinard@iro.umontreal.ca> 1158 1159 * error.h: New file, from elsewhere. 1160 * Makefile.am: Add error.h to HEADERS. 1161 Reported by Jim Meyering. 1162 11631995-12-30 François Pinard <pinard@iro.umontreal.ca> 1164 1165 * Makefile.am (INCLUDES): Add -I../intl to get libintl.h. 1166 Reported by Daniel S. Barclay, Göran Uddeborg, Jonathan Thornburg 1167 and Minh Tran-Le. 1168 11691995-12-29 François Pinard <pinard@iro.umontreal.ca> 1170 1171 * Prerelease 1.11.9. 1172 1173 * Makefile.am: New file. 1174 11751995-11-22 François Pinard <pinard@iro.umontreal.ca> 1176 1177 * Makefile.in (DISTFILES): Distribute ChangeLog. 1178 * ChangeLog: New, extracted from the top-level ChangeLog. 1179 11801995-06-18 François Pinard <pinard@iro.umontreal.ca> 1181 1182 * execlp.c (execlp): New, extracted from src/port.c. 1183 * Makefile.in: Adjusted. 1184 1185 * open3.h: New, moved from src/. 1186 * open3.c: New, extracted from src/port.c. 1187 * Makefile.in: Adjusted. 1188 Clean out old NO_OPEN3 code. 1189 1190 * insremque.h, insremque.c: Deleted. 1191 * Makefile.in: Adjusted. 1192 11931995-06-17 François Pinard <pinard@iro.umontreal.ca> 1194 1195 * Makefile.in (DISTFILES): Remove COPYING.LIB. 1196 * COPYING.LIB: Deleted. 1197 11981995-06-15 François Pinard <pinard@iro.umontreal.ca> 1199 1200 * Makefile.in (dist): Do not hide copying rule. 1201 12021995-06-07 François Pinard <pinard@iro.umontreal.ca> 1203 1204 * Makefile.in: Use subdir and distdir. 1205 1206 * stpcpy.c, xgetcwd.c: New functions needed by gettext. 1207 * Makefile.in: Adjusted to always compile these. 1208 12091995-05-16 François Pinard <pinard@iro.umontreal.ca> 1210 1211 * insremque.h, insremque.c: New files, from GNU gettext. 1212 * Makefile.in: Take care of insremque.[hc]. 1213 12141995-03-19 François Pinard <pinard@iro.umontreal.ca> 1215 1216 * Makefile.in: Remove GLOCALE, add LINGUAS, use fp_WITH_CATALOGS. 1217 12181995-02-19 François Pinard <pinard@iro.umontreal.ca> 1219 1220 * Makefile.in: Support ID files. Do not distribute TAGS. 1221 12221995-02-05 François Pinard <pinard@iro.umontreal.ca> 1223 1224 * Makefile.in (maintainer-clean): New name for realclean. 1225 12261994-12-18 François Pinard <pinard@iro.umontreal.ca> 1227 1228 * safe-stat.h: New, from elsewhere. This solves the fact that 1229 mkdir.c, rmdir.c and rename.c were needing it. 1230 * Makefile.in (Makefile): Distribute it. 1231 Reported by Bruno Haible and Sherwood Botsford. 1232 12331994-12-11 François Pinard <pinard@iro.umontreal.ca> 1234 1235 * rx.c, rx.h: New, from elsewhere. 1236 * Makefile.in: Adjust accordingly. 1237 12381994-12-03 François Pinard <pinard@iro.umontreal.ca> 1239 1240 * Makefile.in: Localize, adapting from how it is done in sharutils. 1241 12421994-09-14 François Pinard <pinard@iro.umontreal.ca> 1243 1244 * Makefile.in: Cleanup... 1245 (DISTFILES): Distribute TAGS. 1246 (check): Deleted. 1247 (TAGS): Make TAGS in $(srcdir) only. 1248 (distclean): Do not remove TAGS. 1249 (realclean): Remove TAGS. 1250 (Makefile): Have ./config.status create this Makefile only. 1251 12521994-08-22 François Pinard <pinard@iro.umontreal.ca> 1253 1254 Little cleanup in installation: 1255 * Makefile.in (install, check): Depend on all. 1256 12571994-08-21 François Pinard <pinard@iro.umontreal.ca> 1258 1259 * Makefile.in: Correct for when a different build directory. 1260 1261 * rmdir.c: New, split out of mkdir.c. 1262 * Makefile.in: Distribute it. 1263 Reported by Greg Black. 1264 12651994-08-17 François Pinard <pinard@iro.umontreal.ca> 1266 1267 * ftruncate.c: Revised, because there is no ftruncate 1268 capability whatsoever in Interactive Unix. 1269 Reported by Peder Chr. Norgaard. 1270 12711994-08-08 François Pinard <pinard@iro.umontreal.ca> 1272 * memset.c, mkdir.c, rename.c, strstr.c and 1273 ftruncate.c: New, from elsewhere. 1274 * Makefile.in: Distribute them. 1275 12761994-08-05 François Pinard <pinard@iro.umontreal.ca> 1277 1278 * Makefile.in (getdate.c): Tell the installer to expect 10 1279 shift/reduce conflicts instead of 9. 1280 Reported by Andreas Schwab. 1281 1282 * fileblocks.c: New, from elsewhere. 1283 * Makefile.in: Distribute it. 1284 12851994-08-02 François Pinard <pinard@iro.umontreal.ca> 1286 1287 * xstrdup.c: New, from elsewhere. 1288 * Makefile.in: Adjusted. 1289 12901994-07-29 François Pinard <pinard@iro.umontreal.ca> 1291 1292 * error.c: Add error_print_progname virtual routine. 1293 12941994-07-24 François Pinard <pinard@iro.umontreal.ca> 1295 1296 * gmalloc.c: New, from elsewhere. This renames and updates 1297 what was previously malloc.c. This also solves __const vs const. 1298 * Makefile.in: Distribute gmalloc.c. 1299 Reported by Cliff Krumvieda, Francois Pinard, Henrik Bakman, 1300 J.T. Conklin, Nelson H.F. Beebe and Tilman Schmidt. 1301 13021994-07-22 François Pinard <pinard@iro.umontreal.ca> 1303 1304 * Makefile.in (LIBOBJS): Get configured list of replacements. 1305 * fnmatch.h: Undefine FNM_PATHNAME and FNM_PERIOD, for HP-UX 1306 defines them in <unistd.h>. 1307 1308 * getdate.y: Acknowledging here a few reports which are 1309 likely solved by going to an updated version of getdate.y. 1310 Reported by Andrey A. Chernov, Bruce Evans, Dean Gaudet, Ian 1311 T. Zimmerman, Jeff Prothero, Mike Nolan, Milan Hodoscek, Peder 1312 Chr. Norgaard, Sarah Quady, Tarang Kumar Patel and Thomas 1313 Koenig. 1314 13151994-07-02 François Pinard <pinard@iro.umontreal.ca> 1316 1317 * xmalloc.c: New file, from elsewhere. 1318 * error.c: New, from elsewhere. 1319 * Makefile.in: Adjusted. 1320 13211994-06-30 François Pinard <pinard@iro.umontreal.ca> 1322 1323 * Makefile.in: New file. 1324 1325 1326----- po/ChangeLog ----- 1327 13281997-04-25 François Pinard <pinard@iro.umontreal.ca> 1329 1330 * Release 1.12. 1331 13321997-04-18 François Pinard <pinard@iro.umontreal.ca> 1333 1334 * Prerelease 1.11p. 1335 1336 * fr.po: Updated file. 1337 13381997-04-11 François Pinard <pinard@iro.umontreal.ca> 1339 1340 * Prerelease 1.11o. 1341 13421997-03-26 François Pinard <pinard@iro.umontreal.ca> 1343 1344 * it.po: New file. 1345 13461997-02-14 François Pinard <pinard@iro.umontreal.ca> 1347 1348 * pl.po: Updated file. 1349 13501996-11-22 François Pinard <pinard@iro.umontreal.ca> 1351 1352 * POTFILES.in: Add src/common.h. 1353 Reported by Christian Kirsch. 1354 13551996-11-18 François Pinard <pinard@iro.umontreal.ca> 1356 1357 * Prerelease 1.11.14. 1358 1359 * POTFILES.in: Adjust for changes in src/. 1360 13611996-09-05 François Pinard <pinard@iro.umontreal.ca> 1362 1363 * Prerelease 1.11.12. 1364 1365 * pl.po: New file. 1366 13671995-06-17 François Pinard <pinard@iro.umontreal.ca> 1368 1369 * Release 1.11.8. 1370 1371 * Makefile.in (.po.gmo): Force moving the created .gmo file to 1372 $(srcdir), in case it was not already found and replaced there. 1373 (install-data): Find files in $(srcdir) if not in current dir, 1374 because .gmo files are taken there, right out the distribution. 1375 * intl/Makefile.in (DISTFILES): Ensure an all ready stamp-cat-id 1376 and cat-id-tbl.c into the distribution. 1377 (stamp-cat-id): Rewrite rule so it replaces files in $(srcdir), 1378 remove a useless rm and cat. 1379 1380 * intl/cat-compat.c, int/gettext.h, intl/po-to-tbl.sed, 1381 Makefile.in: Last minutes additions, and glimpses to the future 1382 gettext 0.6.1. 1383 Reported by Ulrich Drepper. 1384 1385 * Makefile.in (install-data, uninstall): Avoid using basename. 1386 13871995-06-15 François Pinard <pinard@iro.umontreal.ca> 1388 1389 * Makefile.in (dist): Comment out tupdate action for now, it 1390 needs more tweeking before being distributed active. 1391 1392 * intl/Makefile.in (dist), Makefile.in (dist): Correct 1393 missing reference to $(srcdir) on cp call, also avoid outputting 1394 clutter while doing the work. 1395 1396 * intl/Makefile.in: Use top_srcdir for referring to $(PACKAGE).pot. 1397 1398 * Makefile.in (.po.gmo): Get around what seems to be an msgfmt 1399 bug, which adds .mo even to FILE in `-o FILE'. 1400 1401 * intl/Makefile.in, Makefile.in: Adjustments to NLS, so .sed 1402 scripts may now all reside in intl/. 1403 14041995-06-07 François Pinard <pinard@iro.umontreal.ca> 1405 1406 * POTFILES: New file. 1407 * Makefile.in: Use POTFILES instead of TRANSCSRCS, also use 1408 top_srcdir. 1409 1410 * intl/linux-msg.sed, intl/po-to-tbl.sed, intl/xopen-msg.sed: New 1411 files, all taken from gettext 0.6. 1412 14131995-06-05 François Pinard <pinard@iro.umontreal.ca> 1414 1415 * intl/*: New from GNU gettext 0.6, replacing the previous 1416 version of this directory. This change should solve many problems. 1417 1418 Reported by Bruno Haible, Christopher Vickery, Jan Carlson, 1419 Jean-Philippe Martin-Flatin, John David Anglin, Joseph E. 1420 Sacco, Kaveh R. Ghazi, Kurt Jaeger, Mark W. Eichin, Marty 1421 Leisner, Minh Tran-Le, Stephen Saroff, Thomas Koenig, Thomas 1422 Krebs and William Bader. 1423 14241995-05-16 François Pinard <pinard@iro.umontreal.ca> 1425 1426 * intl/Makefile.in, Makefile.in: Many adjustments for GNU gettext. 1427 14281995-05-09 François Pinard <pinard@iro.umontreal.ca> 1429 1430 * Makefile.in: New file. 1431 * de.po, fr.po, pt.po, sv.po: New files, adapted from 1432 the corresponding .tt files in src/. 1433 14341995-05-08 François Pinard <pinard@iro.umontreal.ca> 1435 1436 * intl/*: New, from nlsutils. 1437 14381995-01-09 François Pinard <pinard@iro.umontreal.ca> 1439 1440 * src/de.tt: New file, for Swedish. 1441 Reported by Jan Djarv. 1442 14431994-12-10 François Pinard <pinard@iro.umontreal.ca> 1444 1445 * de.tt: New file, for German. 1446 Reported by Ulrich Drepper. 1447 1448 1449----- scripts/ChangeLog ----- 1450 14511997-04-24 François Pinard <pinard@iro.umontreal.ca> 1452 1453 * Release 1.12. 1454 1455 * level-1, level-0: Replace --block-size by --blocking. 1456 14571996-04-17 François Pinard <pinard@iro.umontreal.ca> 1458 1459 * Prerelease 1.11.10. 1460 1461 * Makefile.am (EXTRA_DIST): New name for DIST_OTHER. 1462 14631996-01-14 François Pinard <pinard@iro.umontreal.ca> 1464 1465 * Makefile.am (AUTOMAKE_OPTIONS): Select gnits. 1466 14671996-01-08 François Pinard <pinard@iro.umontreal.ca> 1468 1469 * Makefile.am: New file. 1470 14711995-12-31 François Pinard <pinard@iro.umontreal.ca> 1472 1473 * Makefile.in (check, dvi): New goals, doing nothing. 1474 Reported by Cesar Romani and Ulrich Drepper. 1475 14761995-06-21 François Pinard <pinard@iro.umontreal.ca> 1477 1478 * Prerelease 1.11.9. 1479 1480 * Makefile.in: Distribute the ChangeLog, now recovered! 1481 Reported by Andreas Schwab. 1482 14831995-06-17 François Pinard <pinard@iro.umontreal.ca> 1484 1485 * Release 1.11.8. 1486 1487 * WARNING: New file. 1488 * Makefile.in (DISTFILES): Distribute it. 1489 14901995-06-15 François Pinard <pinard@iro.umontreal.ca> 1491 1492 * sripts/Makefile.in (dist): Do not hide copying rule. 1493 14941995-06-07 François Pinard <pinard@iro.umontreal.ca> 1495 1496 * Makefile.in: Use subdir and distdir. 1497 14981995-02-05 François Pinard <pinard@iro.umontreal.ca> 1499 1500 * Prerelease 1.11.7. 1501 1502 * Makefile.in (maintainer-clean): New name for realclean. 1503 15041994-12-03 François Pinard <pinard@iro.umontreal.ca> 1505 1506 * Prerelease 1.11.6. 1507 1508 * ChangeLog: Replaced by a warning for now. It has 1509 seemingly been overwritten by the weekly script :-(. 1510 1511 * Makefile.in (dist): Correct .../examples to .../scripts. 1512 15131994-09-14 François Pinard <pinard@iro.umontreal.ca> 1514 1515 * Makefile.in: Cleanup... 1516 (check): Deleted. 1517 (Makefile): Have ./config.status create this Makefile only. 1518 15191994-06-30 François Pinard <pinard@iro.umontreal.ca> 1520 1521 * Prerelease 1.11.5. 1522 1523 * ChangeLog: Initialized by moving entries related to 1524 scripts out of this ChangeLog. 1525 15261993-11-24 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 1527 1528 * dump-remind: Send mail notification to the original recipients 1529 that the dump has been continued when that is the case. 1530 15311993-03-31 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 1532 1533 * level-0, level-1 (LOGFILE): Put logfile in `log' subdirectory. 1534 15351993-03-28 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 1536 1537 * dump-remind (volno): Don't increment by one. 1538 15391993-03-25 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 1540 1541 * level-0, level-1 (TAR_PART1): Use `--block-size', not just 1542 `--block', which is now ambiguous. 1543 15441993-03-24 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 1545 1546 * backup-specs (TAR): New variable. 1547 1548 * level-0, level-1 (TAR_PART1): Get path of GNU tar from `TAR' 1549 variable, don't hardcode it. 1550 15511993-03-20 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 1552 1553 * backup-specs (SLEEP_MESSAGE): put backslashes in front of nested 1554 double quotes. 1555 1556 * level-0, level-1 (BACKUP_DIRS): Don't put in quotes. 1557 (LOGFILE): Use sed to construct name, not awk. 1558 1559 * dump-remind (recipients): Replaced inefficient pipeline with a 1560 single, simple sed script. 1561 (volno): Deal with the possibility that VOLNO_FILE may not be 1562 created yet. 1563 15641993-03-19 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 1565 1566 * backup-specs (VOLNO_FILE): Removed abusive comment by Noah. 1567 15681993-03-18 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 1569 1570 * Makefile.in (AUX): Include `dump-remind' in distribution. 1571 1572 * backup-specs (SLEEP_MESSAGE): New variable. 1573 level-0, level-1: Use it instead of external `dont_touch' file. 1574 1575 * level-0, level-1: Put most of the script in () and pipe 1576 everything from the subshell through tee -a $LOGFILE. Since you 1577 really want most of the output to go to the logfile anyway, and 1578 since all those pipelines were preventing one from getting the 1579 exit status of most commands, this seems like the right idea. 1580 1581 * level-0, level-1 (LOGFILE): Use YYYY-MM-DD (all numeric) format 1582 for log file name, since that makes the file names sortable in a 1583 coherent way. Suffix should always be `level-n' where n is the 1584 dump level. level-0 script was just using `-full' instead. 1585 1586 * level-0, level-1 (DUMP_LEVEL): New variable. Set to `0' or `1' 1587 in each script as appropriate. 1588 1589 * level-0, level-1 (HOST): Renamed to `localhost' for clarity. 1590 (host): renamed to `remotehost' for clarity. 1591 1592 * level-0, level-1 (startdate): New variable. Use it in Subject 1593 line of mailed report. 1594 1595 * level-0, level-1: Fixed all instances where sed is called with a 1596 script on the command line to use `-e' option. 1597 1598 * level-0, level-1: Don't try to call logfile.sed to filter 1599 LOGFILE. It's not distributed with tar and was never really used 1600 anyway. 1601 1602 * level-0, level-1: Put quotes around most variable names (barring 1603 those that are known to intentionally contain text that should be 1604 expanded into multiple words, like `TAR_PART1'). 1605 1606 * level-0, level-1: Got rid of annoying trailing backslashes in awk 1607 scripts. They were gratuitous. Made them a little more readable 1608 by adding some whitespace. 1609 16101992-10-21 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 1611 1612 * level-0, level-1: put curly braces around variables for clarity. 1613 1614 * backup-specs (DUMP_REMIND_SCRIPT): define it (but commented out 1615 so that distributed dump scripts won't use it by default). 1616 level-0, level-1 (TAR_PART1): use --info-script if 1617 DUMP_REMIND_SCRIPT is defined. 1618 dump-remind: new file (intended as an example). 1619 16201992-10-15 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 1621 1622 * level-0, level-1: remove $LOGFILE.tmp files before exiting. 1623 16241992-09-24 Michael I Bushnell <mib@churchy.gnu.ai.mit.edu> 1625 1626 * level-0, level-1 (TAR_PART1): remove --atime-preserve 1627 because of a total screw. 1628 16291992-09-10 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 1630 1631 * level-0, level-1 (TAR_PART1): put --atime-preserve inside quotes. 1632 16331992-09-09 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 1634 1635 * level-0, level-1 (TAR_PART1): Use --atime-preserve. 1636 16371992-07-10 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 1638 1639 * level-0, level-1: Avoid silly Sun awk lossage. 1640 16411992-04-30 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 1642 1643 * level-1: Added `$' before VOLNO_FILE in definition of TAR_PART1. 1644 Added line to remove $VOLNO_FILE from any previous dump before 1645 starting. 1646 1647 * level-0, level-1: Change long options to use `--' instead of `+' 1648 (support for `+' will go away soon) 1649 16501991-10-17 Michael I Bushnell <mib@churchy.gnu.ai.mit.edu> 1651 1652 * level-0: Repair damage from previous mod: stdin to rsh must 1653 be the terminal or tar's questions lose. 1654 16551991-08-31 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 1656 1657 * level-0: Fixed several syntax errors associated with 1658 stdout/stderr redirection. 1659 Made sure remote host executes commands from sh where redirection 1660 is necessary, since root's shell might be csh in some places and 1661 the redirect syntax differs. 1662 16631991-07-01 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 1664 1665 * Fix a misplaced quote in level-0 and change some >& into 1666 2>&1. 1667 1668 1669----- src/ChangeLog ----- 1670 16711997-04-25 François Pinard <pinard@iro.umontreal.ca> 1672 1673 * Release 1.12. 1674 1675 * tar.c (main): Attempt to clarify the delayed error exit message. 1676 Reported by Richard Stallman. 1677 1678 * list.c (decode_mode): New name for demode. 1679 1680 * list.c (read_and): Set current_stat.st_mtime before testing it. 1681 Reported by Sven Verdoolaege. 1682 16831997-04-24 François Pinard <pinard@iro.umontreal.ca> 1684 1685 * create.c (dump_file): Before asserting that we cannot access 1686 a directory, make sure tar is not installed suid root. 1687 Reported by Dietmar Braun. 1688 1689 * misc.c (quote_copy_string): Undo 1996-05-02 change, meant for 1690 the file mangler, now obsolete. This will do neater listings. 1691 Reported by Max Hailperin and Noah Friedman. 1692 1693 * buffer.c, incremen.c, misc.c, tar.c: Replace dangling semicolons 1694 by continue; or break; depending on context. 1695 Reported by Robert E. Brown. 1696 16971997-04-23 François Pinard <pinard@iro.umontreal.ca> 1698 1699 * arith.c (add_to_tarlong_helper): Compare a superdigit against a 1700 value, rather than an unsigned sum against zero. 1701 Reported by Bruno Haible. 1702 1703 * misc.c (quote_copy_string): Replace many if's by a switch. 1704 17051997-04-22 François Pinard <pinard@iro.umontreal.ca> 1706 1707 * Prerelease 1.11q. 1708 1709 * extract.c (extract_archive): Check if directory extraction was 1710 attempted over an existing directory before attempting recovery, 1711 so avoiding extraction loops in cases like DIR/../DIR. 1712 Reported by Marc Boucher. 1713 1714 * delete.c (delete_archive_members): New name for junk_archive. 1715 * common.h, tar.c (main): Adjusted. 1716 17171997-04-20 François Pinard <pinard@iro.umontreal.ca> 1718 1719 * tar.c (usage): Update comment about --mode. 1720 17211997-04-19 François Pinard <pinard@iro.umontreal.ca> 1722 1723 * buffer.c: Include <fnmatch.h> if necessary. 1724 Reported by Bruno Haible. 1725 1726 * common.h: Declare write_dir_file for incremen.c. 1727 Reported by Bruno Haible. 1728 1729 * incremen.c (get_directory_contents): Nest an assignment and test 1730 within another set of aesthetical parentheses. 1731 Reported by Bruno Haible. 1732 1733 * tar.c (check_octal): Deleted. 1734 Reported by Bruno Haible. 1735 1736 * buffer.c (flush_archive): Add one impossible switch case. 1737 * delete.c (junk_archive): Add two impossible switch cases. 1738 * list.c (read_and): Add one impossible switch case. 1739 * update.c (update_archive): Add two impossible switch cases. 1740 Reported by Bruno Haible. 1741 1742 * names.c (name_gather): Explicitly declare allocated_length as 1743 an int, do not imply it. 1744 Reported by Bruno Haible. 1745 17461997-04-18 François Pinard <pinard@iro.umontreal.ca> 1747 1748 * Prerelease 1.11p. 1749 1750 * Makefile.am (tar._o, rmt._o): Revise rules further. 1751 Reported by Bruno Haible and Ken Steube. 1752 17531997-04-16 François Pinard <pinard@iro.umontreal.ca> 1754 1755 * arith.h: Prefer a single long over a long long, if possible. 1756 Also reject long long if it is not long enough :-). 1757 Reported by Bruno Haible. 1758 17591997-04-15 François Pinard <pinard@iro.umontreal.ca> 1760 1761 * buffer.c, tar.c, update.c, common.h: Replace _COMMAND suffixed 1762 constants by _SUBCOMMAND suffixed. Rename enum command by 1763 enum subcommand, main_command_option by subcommand_option and 1764 set_main_command_option by set_subcommand_option. 1765 1766 * create.c (dump_file): Remove badperror label, call WARN 1767 explicitly at the two other needed places instead. Remove 1768 badfile label, expand the proper code at the three other 1769 needed places instead. Delete the critical_error flag, just 1770 set exit_status to TAREXIT_FAILURE rather than setting this flag. 1771 17721997-04-12 François Pinard <pinard@iro.umontreal.ca> 1773 1774 * delete.c (move_archive): Declare it void. 1775 Reported by Bruno Haible and Kaveh R. Ghazi. 1776 17771997-04-11 François Pinard <pinard@iro.umontreal.ca> 1778 1779 * Prerelease 1.11o. 1780 1781 * Makefile.am: Duplicate rules for the ansi2knr case. 1782 Reported by Kaveh R. Ghazi and Marcus Daniels. 1783 17841997-04-10 François Pinard <pinard@iro.umontreal.ca> 1785 1786 * common.h: Change mode_option from int to struct mode_change *. 1787 * tar.c (decode_option): Use mode_compile. 1788 * create.c (start_header): Use mode_adjust. 1789 17901997-04-09 François Pinard <pinard@iro.umontreal.ca> 1791 1792 * All: Replace all flag_ prefixed variables by _option suffixed. 1793 * tar.c: Replace OPTION_ prefixed macros by _OPTION suffixed. 1794 1795 * buffer.c, tar.c, update.c, common.h: Replace COMMAND_ prefixed 1796 macros by _COMMAND suffixed, COMMAND_NONE by UNKNOWN_COMMAND, 1797 and delete TOO_MANY_COMMAND. Turn these into an enum and declare 1798 main_command_option of this enum type, to replace command_mode, 1799 which was an int, everywhere. 1800 * tar.c (decode_options): Initialise main_command_option. 1801 (set_main_command_option): New function to replace 1802 SET_COMMAND_MODE. Diagnostic ambiguous command as soon as seen. 1803 However, be forgiving if command has merely been repeated. 1804 1805 * buffer.c, tar.c, common.h: Have info_script_option be at the 1806 same time a flag and the option value, no need for a separate 1807 info_script variable. Rename rsh_command to rsh_command_option, 1808 tape_length to tape_length_option, compress_program to 1809 use_compress_program_option, volno_file to volno_file_option. 1810 * tar.c (set_use_compress_program_option): New function. 1811 1812 * buffer.c, names.c, tar.c, common.h: Have files_from_option 1813 be at the same time a flag and the option value, no need for 1814 a separate namefile_name variable. 1815 1816 * buffer.c, create.c, tar.c, commun.h: Rename volume_label to 1817 volume_label_option. 1818 1819 * incremen.c, tar.c, common.h: Rename gnu_dumpfile to 1820 listed_incremental_option. Let it unitialised for just incremental. 1821 * create.c (create_archive): No need to check both 1822 incremental_option and listed_incremental_option, as the later 1823 implies the former already. 1824 1825 * create.c, tar.c, common.h: Rename preset_owner to owner_option, 1826 preset_group to group_option and preset_mode to mode_option. 1827 1828 * create.c, incremen.c, list.c, tar.c, commun.h: Have 1829 after_date_option be a Boolean instead of a three-valued flag. 1830 Rename threshold_time to newer_mdate_option, which may be looked 1831 at without checking after_date_option first, as threshold_time 1832 before. Make newer_cdate_option an alias for newer_mdate_option. 1833 18341997-04-08 François Pinard <pinard@iro.umontreal.ca> 1835 1836 * buffer.c: Use int after extern to declare time_to_start_writing. 1837 * extract.c: Use int after static to declare we_are_root. 1838 Reported by Ariel Faigon. 1839 18401997-04-03 François Pinard <pinard@iro.umontreal.ca> 1841 1842 * list.c (read_and): Use the proper enum constants in switch, 1843 instead of oldish and wrong numbers. 1844 Reported by Martin Mares. 1845 18461997-04-01 François Pinard <pinard@iro.umontreal.ca> 1847 1848 * arith.c [SUPERDIGIT] (zerop_tarlong, lessp_tarlong, 1849 clear_tarlong, add_to_tarlong, add_to_tarlong, mult_tarlong, 1850 print_tarlong): Rename all functions by adding a _helper suffix. 1851 * arith.h [SUPERDIGIT]: Replace function prototypes by macros, 1852 each calling the function with _helper appended, and extracting 1853 pointers out of the tarlong structures. 1854 Reported by Andrew A. Ivanov and Kaveh R. Ghazi. 1855 1856 * buffer.c (child_open_for_compress): Copy all records coming out 1857 of the compressor, not only the last one. 1858 Reported by Alois Steindl, Mark Bynum, Martin Mares, Nelson 1859 H. F. Beebe, Scott J. Kramer and Torkel Hasle. 1860 18611997-03-29 François Pinard <pinard@iro.umontreal.ca> 1862 1863 * create.c (dump_file): Ignore unreadable directories when 1864 --ignore-failed-read. 1865 Reported by Ralph Schleicher. 1866 1867 * create.c (deal_with_sparse): Chain the last partial zero block 1868 with the preceding data, do not try sparing it. This correction 1869 is approximative, as the whole thing should be rethought. 1870 Reported by Andreas Degert. 1871 18721997-03-24 François Pinard <pinard@iro.umontreal.ca> 1873 1874 * All: Rename head to current_header, hstat to current_stat, and 1875 header_format to current_format. 1876 * update.c (update_archive): Rename nstat to stat_data. 1877 * create.c: Do not extern hstat, as common.h does it. 1878 (deal_with_sparse): Get rid of amidst_data, since numbytes is 1879 already usable as a flag for the same thing. 1880 18811997-03-21 François Pinard <pinard@iro.umontreal.ca> 1882 1883 * names.c (name_gather): Do not declare static variables which 1884 do not need to be. Have allocated_length represent the full 1885 allocated length, instead of only the name part. It's clearer. 1886 (addname): Similar cleanups. 1887 18881997-03-20 François Pinard <pinard@iro.umontreal.ca> 1889 1890 * compare.c: Always call report_difference when there is a 1891 problem, so the exit status will be set in all cases. Build the 1892 message string if necessary, so avoiding stdargs/varargs. 1893 (report_difference): If NULL argument, just set the exit status 1894 without reporting a message. Move out the word `differs' 1895 in all callers, do not insert into an English message. 1896 (read_and_process): Return void, as the int result is never used. 1897 Assume processors returns nonzero for success and zero for 1898 failure, instead of 0 for success and -1 for error. 1899 (process_rawdata, process_dumpdir): Adjusted. 1900 1901 * compare.c: Remove different as a global variable, it is useless. 1902 (diff_sparse_files): Make different a local variable, reinitialise 1903 it on each call. Otherwise, after any error elsewhere, all sparse 1904 files were always and falsely reported as erroneous. 1905 Reported by James E. Carpenter and Tim Towers. 1906 19071997-02-25 François Pinard <pinard@iro.umontreal.ca> 1908 1909 * tar.c: Adjust copyright years in --version output. 1910 1911 * create.c (dump_file): Allow saving directories even with -o. 1912 Reported by Daniel Trinkle. 1913 19141996-11-26 François Pinard <pinard@iro.umontreal.ca> 1915 1916 * compare.c (verify_volume) [FDFLUSH]: Use fsync even in that case. 1917 Reported by Marty Leisner. 1918 19191996-11-25 François Pinard <pinard@iro.umontreal.ca> 1920 1921 * buffer.c (new_volume): Write file name in two words. 1922 * names.c (name_next): Idem. 1923 * buffer.c (flush_read): Speak of record size instead of blocksize. 1924 Reported by Christian Kirsch. 1925 19261996-11-22 François Pinard <pinard@iro.umontreal.ca> 1927 1928 * list.c (read_header): Return failure, instead of success, 1929 whenever checksums do not match. 1930 Reported by Marc Boucher and Marty Leisner. 1931 1932 * incremen.c (get_directory_contents): Use stat_data instead of 1933 current_header for checking normal files. Otherwise, new or 1934 modified files in old directories were not dumped, that is, if a 1935 directory was older than the listed entry, it was skipped 1936 completely without checking the contained files. 1937 Reported by David Johnson, John David Anglin and Wolfram Wagner. 1938 1939 * buffer.c (open_archive): When updating the archive, initialize 1940 the access variable with reading mode, not update mode. 1941 Reported by Andreas Schwab. 1942 1943 * delete.c (junk_archive): Initially jump directly into the loop, 1944 so deleting a file after a big one will not destroying the archive. 1945 Reported by Akiko Matsushita, Andreas Schwab, Eric Backus, Jeff 1946 Siegel, Saul Lubkin, Stuart Kemp and Yasushi Suzudo. 1947 19481996-11-19 François Pinard <pinard@iro.umontreal.ca> 1949 1950 * incremen.c (get_directory_contents): Compute distance using the 1951 start of the proper buffer. 1952 Reported by David Johnson, Donald H. Locker, John David Anglin, 1953 Marc Boucher and Noah Friedman. 1954 1955 * tar.c (usage): Revise the mandatory/optional sentence again. 1956 Reported by Karl Berry. 1957 19581996-11-18 François Pinard <pinard@iro.umontreal.ca> 1959 1960 * Prerelease 1.11.14. 1961 1962 * tar.c (usage): Explain the purpose of the program. 1963 1964 * tar.c (usage): Clarify the mandatory/optional sentence. 1965 Reported by Alex Schmidt. 1966 1967 * system.h [HAVE_SYS_TAPE_H]: Include sys/buf.h if it exists, to 1968 avoid many warnings on BSD/OS. 1969 Reported by Dan Reish. 1970 19711996-11-11 François Pinard <pinard@iro.umontreal.ca> 1972 1973 * incremen.c (write_directory_file): Renamed from write_dir_file. 1974 (get_directory_contents): Renamed from get_dir_contents. 1975 * common.h: Adjusted. 1976 1977 * all: Cleanup around local variables, renaming them more 1978 appropriately, using initializers when natural, and moving them 1979 closer to the blocks where they are used. 1980 1981 A bit of reorganisation in the sources: 1982 * common.h: New file, for holding all GNU tar specific definitions, 1983 which were previously held in tar.h. 1984 * tar.h: Now limited to the archive format description only. 1985 * all: Include common.h instead of tar.h. 1986 * delete.c: New file, holding delete code out of update.c. 1987 * update.c: Now limited to appending type of commands. 1988 * compare.c: New name for diffarch.c. 1989 * incremen.c: New name for increm.c. 1990 * names.c: Moved over all name processing from tar.c. 1991 * tar.c, common.h: Adjusted. 1992 * Makefile.am: Adjusted. 1993 1994 * system.h (lstat) [!S_ISLNK]: Define as stat. 1995 * create.c, diffarch.c, increm.c: Remove similar definitions. 1996 1997 * tar.c: Merge --version-control into --backup, make it obsolete. 1998 19991996-11-10 François Pinard <pinard@iro.umontreal.ca> 2000 2001 * all: Add a FIXME comment everywhere errno is modified by tar. 2002 2003 * buffer.c (new_volume): Return nonzero/zero for success/failure, 2004 instead of zero/negative. Callers adjusted. Use xstrdup on 2005 file name given by user with the answer "n", so avoiding the 2006 apparently useless allocation of one extra byte. Avoid using p. 2007 2008 * buffer.c: Add DEBUG_FORK conditional code. 2009 Reported by Thomas König and Ulrich Drepper. 2010 2011 * misc.c (maybe_backup_file): In the renaming message, say that 2012 the previous file is being renamed, not the newly extracted one. 2013 2014 * buffer.c (backspace_output): Change return type to void, since 2015 returned values were never used. 2016 * update.c (move_arch): Idem. 2017 (xdup2): New name for redirect, order of arguments was not natural. 2018 20191996-11-09 François Pinard <pinard@iro.umontreal.ca> 2020 2021 * all: Remove all white lines between open braces and comments. 2022 2023 * tar.h: Declare access_mode as an enum and as a variable. 2024 Adjust declaration of open_archive. 2025 * buffer.c: (open_archive, new_volume): Use access instead of 2026 reading. Callers adjusted for using enum access_mode arguments. 2027 (flush_archive, close_archive): Use access_mode, and cleanup. 2028 * diffarch.c (verify_volume): Use access_mode. 2029 2030 * buffer.c (child_open_for_compress, child_open_for_uncompress): 2031 Split of previous child_open_for_compress. Clean up. 2032 (open_archive): Adjusted for calling the proper function above. 2033 20341996-11-09 François Pinard <pinard@iro.umontreal.ca> 2035 2036 * Prerelease 1.11.13. 2037 2038 * tar.c (usage): Do not tie --posix anymore to 1.12. 2039 2040 * extract.c (set_stat): Until we know better, for the time being, 2041 limit restoring symbolic link attributes to lchown only. 2042 2043 * all: Mini clean up. Systematically set logical variables to 2044 one instead of auto-incrementing them (PDP-11 time is over by 2045 now! :-). Replace some single letter counters or cursors by 2046 variables named counter or cursor. Simplify a few C constructs. 2047 2048 * buffer.c, tar.h: Delete read_error_flag, set but never used. 2049 Rename r_error_count to read_error_count. 2050 2051 * create.c (clear_buffer): Use memset instead of explicit loop. 2052 (zero_block_p): Renamed from zero_block, callers adjusted. 2053 20541996-11-07 François Pinard <pinard@iro.umontreal.ca> 2055 2056 * rmt.c (private_strerror): Add const's to sys_errlist declaration. 2057 Reported by Fabio d'Alessi. 2058 20591996-11-06 François Pinard <pinard@iro.umontreal.ca> 2060 2061 * tar.h: Add OPTION_BACKUP, OPTION_SUFFIX, OPTION_VERSION_CONTROL. 2062 Renumber options from 3 instead of from 10. Declare flag_backup. 2063 * tar.c: Include backupfile.h. Implement --backup, --suffix and 2064 --version-control decoding. Adjust usage documentation. 2065 2066 * misc.c (maybe_backup_file, un_backup_file): New functions. 2067 * tar.h: Adjusted. 2068 * buffer.c (child_open_for_compress, open_archive, new_volume): 2069 Use the new functions. 2070 * extract.c (extract_archive): Idem. 2071 Reported by Jeffrey Mark Siskind, Karl Berry, Karl Heuer, Marty 2072 Leisner, Melissa Weisshaus and William Bader. 2073 2074 * misc.c (assign_string): Moved over from tar.c. 2075 * tar.h: Adjusted. 2076 20771996-10-28 François Pinard <pinard@iro.umontreal.ca> 2078 2079 * tar.h: Declare enum read_header, for return values of read_header. 2080 * diffarch.c (verify_volume): Adjusted. 2081 * list.c (read_and, read_header): Adjusted. 2082 * update.c (junk_archive, update_archive): Adjusted. 2083 * update.c: Rename prev_status to previous_status. 2084 * update.c (junk_archive): Delete found_stuff, use logical_status. 2085 20861996-10-15 François Pinard <pinard@iro.umontreal.ca> 2087 2088 * buffer.c (new_volume, open_archive): Soften messages. 2089 * create.c, extract.c: Add quotes around slashes in some messages. 2090 * tar.c (usage): Added a missing equal sign after --directory. 2091 Reported by Jan Djarv. 2092 20931996-09-22 François Pinard <pinard@iro.umontreal.ca> 2094 2095 * tar.c: Write --no-recursion instead of --no-recurse. 2096 Reported by Noah Friedman. 2097 20981996-09-20 François Pinard <pinard@iro.umontreal.ca> 2099 2100 * tar.h: Delete label_pattern. 2101 * tar.c (main): Do not compile anymore volume_label as a regexp. 2102 (usage): Document --label as accepting a globbing pattern. 2103 * buffer.c, tar.c: Do not include regex.h neither rx.h. 2104 * buffer.c (check_label_pattern): New function. 2105 (open_archive, flush_read): Use it, instead of re_match. 2106 2107 * tar.c (decode_options): Better space --version output. 2108 21091996-09-19 François Pinard <pinard@iro.umontreal.ca> 2110 2111 * Prerelease 1.11.12 2112 2113 * Makefile.am (EXTRA_PROGRAMS): Compile rmt properly, instead of 2114 letting make use default .c to executable rule. 2115 2116 * tar.c: Include getopt.h. 2117 * system.h: Don't. 2118 2119 * increm.c (get_dir_contents): Consider all NFS devices as equal 2120 before deciding that a directory was renamed, so automount will 2121 not fool GNU tar into spurious incremental redumping. 2122 Reported by Frank Koenen, Giorgio Signorini, Joachim Holzfuss, 2123 Konno Hiroharu, R. Kent Dybvig and Wolfram Wagner. 2124 2125 * tar.c (usage): Add bug report address in --help output. 2126 (decode_options): Add copyright and authors in --version output. 2127 2128 * increm.c: New name for gnu.c. 2129 * Makefile.am (tar_SOURCES): Adjusted. 2130 2131 * gnu.c (init_buffer, add_buffer, get_buffer, flush_buffer): Moved 2132 over from misc.c. Deleted is_dot_or_dot_dot and remove_any_file. 2133 * misc.c (is_dot_or_dotdot, remove_any_file): Moved over from gnu.c. 2134 Deleted init_buffer, add_buffer, get_buffer and flush_buffer. 2135 * tar.h: Adjusted. 2136 21371996-09-18 François Pinard <pinard@iro.umontreal.ca> 2138 2139 * buffer.c (write_error): Obey --totals before aborting. 2140 Reported by Greg Chung. 2141 2142 * buffer.c (read_error, write_error): Renamed from readerror and 2143 writeerror. 2144 * tar.c (read_name_from_file): Rename c to character. 2145 21461996-09-17 François Pinard <pinard@iro.umontreal.ca> 2147 2148 * arith.h (tarlong): The typedef tarlong, when an array, is now 2149 wrapped inside a struct to avoid bugs in EWS 4.2 C compiler. 2150 * arith.c: Adjusted. 2151 Reported by Paul Eggert. 2152 2153 * buffer.c: Declare archive_stat statically. 2154 (open_archive): Do not declare archive_stat locally. 2155 (close_archive): Limit archive draining to while reading a pipe. 2156 Reported by Andreas Schwab. 2157 21581996-09-16 François Pinard <pinard@iro.umontreal.ca> 2159 2160 * system.h: Define protected defaults for open parameter symbols. 2161 [EMUL_OPEN3]: Intercept open calls and redirect them to open3. 2162 * open3.c: New file, moved over from lib/. Merely include 2163 system.h rather than config.h, errno.h and open3.h. 2164 [EMUL_OPEN3]: The compilation of the file depends on this symbol. 2165 When it was in lib/, we were using LIBOBJS to control this. 2166 * Makefile.am: Adjusted. 2167 * extract.c: Don't call open3.h. 2168 Reported by Jim Meyering. 2169 21701996-09-09 François Pinard <pinard@iro.umontreal.ca> 2171 2172 * Makefile.am (libexec_PROGRAMS): Rely on @RMT@, not rmt. 2173 (bin_PROGRAMS): Do not include @RMT@. 2174 2175 * gnu.c (remove_any_file): Protect value of errno in case 2176 of failure to remove a directory, in non-recursive mode. 2177 This should correct spurious diagnostics while extracting 2178 directories over already existing hierarchies. 2179 Reported by Martin Mares and Marty Leisner. 2180 21811996-09-04 François Pinard <pinard@iro.umontreal.ca> 2182 2183 * gnu.c (read_dir_file): Diagnose file names over PATH_MAX. 2184 (get_dir_contents, add_dir_name): Increase namebuf many times if 2185 this is needed to receive a loong file name. 2186 Reported by Carsten Heyl. 2187 2188 * Makefile.am (tar.o, rmt.o): Special rules for defining 2189 LOCALEDIR, instead of having it defined on all compiles. 2190 2191 * Makefile.am: Remove check related lines, moved over to tests/. 2192 21931996-09-03 François Pinard <pinard@iro.umontreal.ca> 2194 2195 * Makefile.am: Use genfile in check_PROGRAMS, not noinst_PROGRAMS. 2196 (check-local): Do not depend on genfile. 2197 21981996-08-24 François Pinard <pinard@iro.umontreal.ca> 2199 2200 * Makefile.am (EXTRA_DIST): Do not mention ansi2knr.1 nor 2201 ansi2knr.c, as Automake now handle them automatically. 2202 22031996-07-18 François Pinard <pinard@iro.umontreal.ca> 2204 2205 * arith.h: Include tar.h, not arith.h, so FATAL_ERROR is defined. 2206 [!SUPER_DIGIT]: Declare arguments to ..._tarlong routines as 2207 pointers to unsigned long and not arrays, for avoiding pointers 2208 to arrays, and nevertheless have arrays passed by reference 2209 rather than by value. 2210 * arith.c: Adjusted function headers accordingly. 2211 * buffer.c, tar.c: Removed address-of operators, using tarlongs. 2212 Reported by Christian T. Dum, Jim Meyering and Kaveh R. Ghazi. 2213 2214 * arith.h [SUPER_DIGIT]: Avoid indirection in all macros for 2215 Accumulators. This, in particular, solves a bug where the pointer 2216 value itself was printed, rather than the pointed to value. 2217 Reported by Drew Sullivan and Wolfram Wagner. 2218 2219 * Makefile.am (EXTRA_DIST): Include ansi2knr.[1c] for now. 2220 Reported by Christian T. Dum, Jim Meyering and Kaveh R. Ghazi. 2221 22221996-07-17 François Pinard <pinard@iro.umontreal.ca> 2223 2224 * Prerelease 1.11.11. 2225 2226 * Makefile.am (check-local): Ensure relinking if the service 2227 libraries where modified (waiting for Automake to do it!). 2228 22291996-07-16 François Pinard <pinard@iro.umontreal.ca> 2230 2231 * rmt.c (strerror): It is a macro on some systems. 2232 Reported by Santiago Vila Doncel. 2233 22341996-07-15 François Pinard <pinard@iro.umontreal.ca> 2235 2236 * Prerelease 1.11.10. 2237 2238 * checktar.sh: Use a more regular WARNING in message. 2239 22401996-07-09 François Pinard <pinard@iro.umontreal.ca> 2241 2242 * tar.h: Declare that unquote_string as returning int, not char *. 2243 * misc.c (unquote_string): New name for un_quote_string. Clean 2244 up a bit, return a boolean indicator for success, not a string. 2245 * gnu.c (read_dir_file), mangle.c (extract_mangle), tar.c 2246 (add_exclude): Callers adjusted, so they never use a NULL return 2247 as an actual string. In fact, the result of unquote_string is 2248 always used, even if the quoting was improper. 2249 Reported by Johan Vromans. 2250 22511996-05-03 François Pinard <pinard@iro.umontreal.ca> 2252 2253 * tar.h: Define TTY_NAME as a macro, instead of an external array. 2254 * tar.c: Remove declaration of TTY_NAME. 2255 2256 * tar.h: Rename new_time to threshold time. Make it GLOBAL. 2257 * tar.c, create.c, gnu.c, list.c: Adjusted. 2258 (decode_options): Clarify -N and --newer-mtime decoding, ensure 2259 one of them is called at most, otherwise it would misbehave. 2260 22611996-05-02 François Pinard <pinard@iro.umontreal.ca> 2262 2263 * misc.c (quote_copy_string): Ensure spaces are backslash-quoted. 2264 Reported by Max Hailperin. 2265 2266 * list.c (decode_header): Some clean up. Recognize POSIX archive 2267 headers, avoid fetching atime or ctime in this case. 2268 [!S_IFBLK || !S_IFCHR]: Ensure st_rdev is cleared appropriately. 2269 * tar.h: Rename head_standard to header_format, so turning an 2270 int to an enum archive_format. Adjust decode_header prototype. 2271 * diffarch.c, extract.c, list.c, update.c: Usages changed. 2272 * create.c: Ensure oldgnu_header is only used when OLDGNU_FORMAT. 2273 (Correction just starting to be made--will be comprehensive...) 2274 Reported by Anders Andersson, Bdale Garbee, Chris G Demetriou and 2275 David J. MacKenzie. 2276 2277 * buffer.c, gnu.c, rtapelib.c, tar.c: Diagnose errors on fclose. 2278 Reported by Jim Meyering. 2279 22801996-05-01 François Pinard <pinard@iro.umontreal.ca> 2281 2282 * buffer.c (close_archive): If reading and the archive is 2283 finished, read until end of archive, for avoiding an error 2284 message from the upstream process if we are reading from a pipe. 2285 Reported by Bennett Todd, Dick Streefland, Don Bennett, Ian Lance 2286 Taylor, Jean-loup Gailly and Piercarlo Grandi. 2287 2288 * create.c (dump_file): Add note about accuracy of st_blocks. 2289 Reported by Dick Streefland. 2290 2291 * diffarch.c: Include <linux/fd.h> if it exists. 2292 (verify_volume): fsync, than ioctl(, FDFLUSH) first. 2293 Reported by Marty Leisner. 2294 22951996-04-29 François Pinard <pinard@iro.umontreal.ca> 2296 2297 * list.c (isotime): New function. 2298 (print_header) [!USE_OLD_CTIME]: Use it instead of ctime. 2299 Reported by Karl Berry and Markus Kuhn. 2300 23011996-04-23 François Pinard <pinard@iro.umontreal.ca> 2302 2303 * extract.c (set_stat): Accept a new parameter telling if this is 2304 a symbolic link. In this case, and if lchown exists, use it 2305 instead of chown. Callers adjusted. 2306 (extract_archive): Do call set_stat over restored symbolic links. 2307 Reported by Andreas Koppenhoefer, Bernard Derval, Ian Jackson, 2308 Matt Power, Warren Dodge and Wolfram Gloger. 2309 2310 * extract.c (extr_init): If the umask was very restrictive at 2311 start of tar, nevertheless ensure we create intermediate 2312 directories with such permissions that we can at least add files 2313 into them. 2314 (extract_archive): Same, but for final directory. Ensure 2315 directory attributes are restored in all cases. 2316 Reported by Piercarlo Grandi. 2317 2318 * tar.c: Implement --owner, --group and --mode options. 2319 * tar.h: Declare preset_owner, preset_group and preset_mode. 2320 * create.c: Obey these variables. 2321 Reported by Ken Raeburn, Richard Stallman and Stephen Gildea. 2322 2323 * create.c (dump_file): When wanting the length of the link 2324 name, use strlen, rather then doing wrong arithmetic giving 2325 the number of removed slashes at the beginning of it. 2326 Reported by Brian R. Smith. 2327 2328 * create.c (start_header): Try removing leading slashes even for 2329 long file names. 2330 Reported by Art Isbell, Fritz Elfert and Robert E. Brown. 2331 2332 * buffer.c (new_volume): Avoid calling closeout_volume_number if 2333 the --volno-file option was not specified, so avoiding crashes. 2334 * tar.c (usage): Document the --volno-file option. 2335 Reported by Christoph Litauer, Daniel S. Barclay, David Taylor, 2336 Erik D. Frederick, Larry Creech, Loïc Prylli, Loren J. Rittle, 2337 Marty Leisner, Neil Faulks, Paul Mitchell, Rocky Giannini, Roy 2338 Marantz, Sylvain Rougier, Timothy J. Lee and Werner Almesberger. 2339 23401996-04-22 François Pinard <pinard@iro.umontreal.ca> 2341 2342 * system.h (N_): Define marking macro for delayed translations. 2343 * rmt.c: Use N_ instead of _ for returned strings. It does not 2344 make sense translating messages in a remote process, not knowing 2345 the language in use in the local process. 2346 23471996-04-18 François Pinard <pinard@iro.umontreal.ca> 2348 2349 Instead of -UU for removing directories, request a long option. 2350 * tar.c: Implement --recursive-unlink. 2351 (usage): Document --recursive-unlink. 2352 (decode_options): Have --recursive-unlink imply --unlink-first. 2353 * tar.h: Declare --recursive-unlink. 2354 * extract.c (extract_archive): Use flag_recursive_unlink instead 2355 of flag_unlink_first > 1. 2356 Reported by Andreas Schwab. 2357 23581996-04-17 François Pinard <pinard@iro.umontreal.ca> 2359 2360 * Makefile.am (EXTRA_DIST): New name for DIST_OTHER. 2361 2362 * tar.c (addname, name_gather): Zero out freshly allocated struct 2363 name, to prevent garbage to get into the structure. 2364 Reported by Jonathan Kamens. 2365 23661996-03-28 François Pinard <pinard@iro.umontreal.ca> 2367 2368 * create.c (dump_file): Cast %ld argument to (long). 2369 Reported by Constantin Belous and Jörgen Hägg. 2370 23711996-03-21 François Pinard <pinard@iro.umontreal.ca> 2372 2373 * tar.c (main): Return int, not void. 2374 Reported by Timothy J. Lee and Peter Seebach. 2375 23761996-02-28 François Pinard <pinard@iro.umontreal.ca> 2377 2378 * Makefile.am: Use RMT instead of PROGRAMS and noinst_HEADERS 2379 instead of HEADERS. 2380 23811996-02-12 François Pinard <pinard@iro.umontreal.ca> 2382 2383 * Makefile.am: Remove CONFIG_HEADER, not required by Automake 0.29. 2384 23851996-02-03 François Pinard <pinard@iro.umontreal.ca> 2386 2387 Ensure --totals work correctly for huge archives: 2388 * arith.h, arith.c: New files. 2389 * Makefile.am: Use arith.h and arith.c. 2390 * tar.h: Do not declare tot_written anymore, include "arith.h". 2391 * tar.c (main): Call init_total_written and print_total_written. 2392 * buffer.c: Rename tot_written to total_written, make it tarlong. 2393 (init_total_written, print_total_written): New routines. 2394 Reported by Albert W. Dorrington, Chris F.M. Verberne, David 2395 Martin, Eduardo Villasenor de Rivas, Greg Chung, Jim Meyering, 2396 John R. Vanderpool, Jon Lewis, Jörg Weule, Jörgen Hägg, Rod 2397 Thompson, Russell Cattelan, Ted Rule and Tor Lillqvist. 2398 2399 Ensure --tape-length is usable for huge media: 2400 * tar.h: Declare tape_length as tarlong instead of int. 2401 * tar.c (decode_option): Decode tape_length as tarlong, and use 2402 its value pre-multiplied by 1024. 2403 * buffer.c (flush_write): Use bytes_written and tape_length as 2404 tarlongs. Declare bytes_written outside flush_write. 2405 (init_total_written): Zero out bytes_written as well. 2406 Reported by Dave Barr. 2407 24081996-01-15 François Pinard <pinard@iro.umontreal.ca> 2409 2410 * rtapelib.c (rmt_open__) [MSDOS]: Do not call setuid/setgid. 2411 Reported by Yasushi Suzudo. 2412 24131996-01-14 François Pinard <pinard@iro.umontreal.ca> 2414 2415 * Makefile.am (AUTOMAKE_OPTIONS): Select gnits and ansi2knr. 2416 24171996-01-08 François Pinard <pinard@iro.umontreal.ca> 2418 2419 * create.c: Initialize linklist to NULL. 2420 Reported by Bradley A. Smith. 2421 24221996-01-07 François Pinard <pinard@iro.umontreal.ca> 2423 2424 * Makefile.am: Add parts of previous Makefile.in as FIXME comments. 2425 24261996-01-03 François Pinard <pinard@iro.umontreal.ca> 2427 2428 * tar.c (usage): Avoid an unescaped new line. 2429 Reported by Kaveh R. Ghazi and Mark Bynum. 2430 2431 * system.h: Declare valloc if it exists and is not #defined. 2432 * create.c (start_header): Add missing DEFAULT_FORMAT case. 2433 * gnu.c (read_dir_file): Use NULL instead of (char *) 0. 2434 2435 * Makefile.am: Install rmt in $(libexec), not in sbin. 2436 2437 * tar.c (decode_options): Add a semicolon so default case is 2438 not completely empty, for better ANSI C compliance. 2439 Reported by John David Anglin, Kaveh R. Ghazi and Mark Bynum. 2440 24411996-01-02 François Pinard <pinard@iro.umontreal.ca> 2442 2443 * buffer.c (open_archive): Allocate real_s_name at run time 2444 instead of statically, because PATH_MAX is not always constant. 2445 Reported by Bruno Haible, John David Anglin, Jonathan Thornburg, 2446 Kaveh R. Ghazi, Martin Bellenberg, Marty Leisner, Nelson 2447 H. F. Beebe, Roland McGrath and Thomas König. 2448 2449 * Makefile.am (DIST_OTHER): Distribute BACKLOG. 2450 Reported by Marty Leisner. 2451 24521996-01-01 François Pinard <pinard@iro.umontreal.ca> 2453 2454 * system.h: Include "error.h" instead of declaring error (). 2455 Reported by Jim Meyering. 2456 24571995-12-31 François Pinard <pinard@iro.umontreal.ca> 2458 2459 * Makefile.am: New file. 2460 24611995-12-30 François Pinard <pinard@iro.umontreal.ca> 2462 2463 * Makefile.in: Define LOCALEDIR in DEFS. 2464 * system.h [!ENABLE_NLS]: Add replacement for bindtextdomain. 2465 * tar.c (main): Add call to bindtextdomain. 2466 * rmt.c (main): Add calls to bindtextdomain and textdomain. 2467 Reported by Ulrich Drepper. 2468 2469 * buffer.c, create.c, diffarch.c, gnu.c, list.c, rmt.h, system.h, 2470 tar.h, update.c: Replace __P by PARAMS, to respect ANSI C. 2471 * rtapelib.c, rmt.h: Replace all __rmt* symbols by rmt*__. 2472 24731995-12-28 François Pinard <pinard@iro.umontreal.ca> 2474 2475 * Prerelease 1.11.9. 2476 2477 * extract.c (extr_init): Initialize variables in any case, 2478 instead of partly relying on static initializations. Remove 2479 static initializations for those variables. 2480 24811995-12-24 François Pinard <pinard@iro.umontreal.ca> 2482 2483 * extract.c (extract_archive): On systems not having symbolic 2484 links, attempt extracting symbolic links as hard links instead, 2485 as POSIX suggests. Emit a diagnostic on first occurrence. 2486 2487 * extract.c (extract_archive): On systems not having contiguous 2488 files, continue extracting them as regular files as before, but 2489 emit a diagnostic on first occurrence. 2490 24911995-12-23 François Pinard <pinard@iro.umontreal.ca> 2492 2493 * tar.h: Declare remove_any_file. 2494 * gnu.c (remove_any_file): New name for recursively_delete. 2495 Add a parameter to control recursion. Inverse return value, 2496 so 0 is failure. Ensure errno is always valid in this case. 2497 (gnu_restore): Specify recursion when calling remove_any_file. 2498 * extract.c (maybe_recoverable): New routine. 2499 (extract_archive): Call maybe_recoverable rather than 2500 make_directories, so deleting files is also tried. Some cleanup. 2501 2502 * tar.h: Declare flag_unlink_first. 2503 * tar.c (decode_options): Decode --unlink-first (-U). 2504 (usage): Document it. 2505 * extract.c (extract_archive): With -U, call remove_any_file 2506 prior to extraction for everything except directories. 2507 2508 Reported by Andrew J. Schorr, Andrey A. Chernov, Axel Boldt, Bo 2509 Nygaard Bai, Chris F.M. Verberne, Chris G. Demetriou, Christian 2510 Callsen, Daniel S. Barclay, Ian Jackson, James Stevens, Seth 2511 Robertson, Tito Flagella, Warner Losh and Wolfram Wagner. 2512 25131995-12-22 François Pinard <pinard@iro.umontreal.ca> 2514 2515 * tar.c (name_close): Specify static. 2516 (main): Call name_close after create_archive. 2517 * create.c (create_archive): Do not call name_close. 2518 2519 * tar.c: Clean out names_arg[cv] crumb. 2520 (name_next): Simplify routine by merging both loops. 2521 (addname): Avoid xstrdup'ing result of new_name, this corrects a 2522 memory leak. 2523 2524 * extract.c: Normalize error message so the file is identified at 2525 the beginning of it. 2526 2527 * tar.h (USAGE_ERROR): New macro. 2528 * tar.c: Use USAGE_ERROR as far as possible. Cleanup and 2529 normalization in string for usage errors. Better detection of 2530 conflicting options about archive format or compression program. 2531 2532 * tar.c (decode_options): Decouple cases for -C and files. Count 2533 number of input files. Cowardly refuse to create an empty archive 2534 file, if -c is given without input file or list. 2535 Reported by Karl Berry and Robert Bernstein. 2536 25371995-12-21 François Pinard <pinard@iro.umontreal.ca> 2538 2539 * buffer.c: Rename a few err variables to status. 2540 * extract.c: Rename a few check variables to status. 2541 2542 Corrections to speed-up the sizeing pass in Amanda: 2543 * tar.h: Declare dev_null_output. 2544 * buffer.c (open_archive): Detect when archive is /dev/null. 2545 (flush_write): Avoid writing to /dev/null. 2546 * create.c (dump_file): Do not open file if archive is being 2547 written to /dev/null, nor read file nor restore times. 2548 Reported by Greg Maples and Tor Lillqvist. 2549 2550 * gnu.c: Have dir_list properly initialized to NULL. 2551 Reported by Paul Nordstrom and Tim Lashua. 2552 2553 * extract.c: Rename ourmask to newdir_umask. Rename and 2554 complement notumask to current_umask. 2555 * list.c (print_for_mkdir): New name for pr_mkdir. 2556 * tar.h: Adjust declaration. 2557 * extract.c (make_directories): New name for make_dirs. Some 2558 cleanup in variable names. 2559 2560 * extract.c: Let newdir_umask be a global variable. 2561 (make_directories): Use newdir_umask while creating intermediate 2562 directories. They used to be 0777 unconditionally. 2563 Reported by Bruce Evans, Harald König and James Crawford Ralston. 2564 25651995-12-20 François Pinard <pinard@iro.umontreal.ca> 2566 2567 * create.c (finish_header): Avoid printing the header for long 2568 names or links, this avoids spurious `Visible longname error's. 2569 2570 Reported by Arne Wichmann, Chris F.M. Verberne, Frank Koenen, 2571 Franz-Werner Gergen, Ian Jackson, Jon Lewis, Mark Kollert, Paul 2572 Nordstrom, Ted Rule, Thomas Priesner, Tim Rylance and Tom Tromey. 2573 25741995-12-19 François Pinard <pinard@iro.umontreal.ca> 2575 2576 * buffer.c: Have real_s_name able to hold PATH_MAX characters, 2577 not only NAME_FIELD_SIZE. It was breaking --multi-volume 2578 --listed-incremental when backing up long file names. 2579 Many symptoms really: a screwed-up date on the incremental data 2580 file, dumping incremental which should not have been, etc. 2581 * (flush_read): Avoid altering save_name pointer value, use 2582 cursor instead. Also avoid the optimization of cleaning each 2583 save_name only once per flush_read if it did not change: it 2584 was using `save_name = real_s_name;', and since save_name may 2585 be freed at any time, this is/was really running after trouble. 2586 2587 Reported by Alexander V. Lukyanov, Axel Habermann, Chance 2588 Reschke, Claus Heine, Christian von Roques, Daniel Hagerty, 2589 Daniel S. Barclay, Dirk Herr-Hoyman, Donald H. Locker, Ed Childs, 2590 Heiko Schinke, Hunyue Yau, Goeran Uddeborg, Grant McDorman, 2591 Joachim Seelig, Joe DeBattista, Jonathan Thornburg, Joutsiniemi 2592 Tommi Il, Jürgen Lüters, Keith Young, Kelly Stephens, Kevin 2593 Dalley, Konno Hiroharu, Larry Creech, Martin Mares, Michael 2594 Dietrich, Michael Giddings, Michael Meissner, Michael P Urban, 2595 Paul Siddall, Pierce Cantrell, Peter Fox, Robert Frey, Roderich 2596 Schupp, Sam Richards, Stephen J Bevan, Torsten Lull, Wolfram 2597 Gloger and Yu-Min Liang. 2598 2599 * system.h: Include <sys/tprintf.h> and <sys/device.h> for BSDi. 2600 Reported by Chris Arthur, Dan Reish, Karl Berry and Skip Montanaro. 2601 2602 * rmt.c (private_strerror): New, copied from lib/error.c. 2603 Remove sys_errlist declaration, and use syserror instead. 2604 Reported by Chris Arthur, Coranth Gryphon, Erich Stefan Boleyn, 2605 Fabio d'Alessi, Greg Hudson, Jason R. Mastaler, Skip Montanaro, 2606 Thomas Krebs and Troy Rudolph. 2607 26081995-12-17 François Pinard <pinard@iro.umontreal.ca> 2609 2610 * extract.c (extract_archive): Unrecognized types were defaulted 2611 to sparse files instead of regular files, because of an improper 2612 /* Fall through. */. 2613 2614 * create.c, diffarch.c, extract.c, gnu.c, list.c, rtapelib.c, 2615 tar.c: Drop register specifications, useless in GNU's tar, as 2616 tar does not use longjmp, and GNU C has -O automagically set. 2617 2618 * extract.c (extract_archive): Inhibit creation of links, special 2619 devices, directories, etc., when --to-stdout option is being used. 2620 Reported by Donald B Gordon, Gerben Wierda, Greg Chung, Norbert 2621 Kiesel and Roman Czyborra. 2622 26231995-12-04 François Pinard <pinard@iro.umontreal.ca> 2624 2625 * tar.h: Implement FATAL_ERROR, telling error is not recoverable. 2626 * tar.c (main): Diagnose delayed error, for TAREXIT_FAILURE only. 2627 * buffer.c, diffarch.c, gnu.c, list.c, tar.c, update.c: Replace 2628 all `ERROR ((TAREXIT_FAILURE,' by `FATAL_ERROR ((0,'. 2629 Reported by Marty Leisner. 2630 2631 * list.c (read_and): When telling block numbers in verbose output, 2632 clearly list block numbers for NUL blocks and end of file. 2633 Reported by Jörg Weule. 2634 2635 * tar.c (usage): Document --newer-time. 2636 Reported by Greg Chung. 2637 26381995-11-30 François Pinard <pinard@iro.umontreal.ca> 2639 2640 * system.h: Conditionally include <sgtty.h> prior to <mtio.h>. 2641 * rmt.c: Do not include <sgtty.h> anymore. 2642 Reported by Harald König and Kaveh R. Ghazi. 2643 2644 * rtapelib.c: Remove seemingly useless include of setjmp.h. 2645 2646 * rtapelib.c: Try to get EOPNOTSUPP defined in all cases. 2647 If needed, include net/errno.h or sys/inet.h when they exist. 2648 Reported by Goeran Uddeborg, J.J. Bailey, John L. Chmielewski, 2649 Peder Chr. Norgaard and Yasushi Suzudo. 2650 26511995-11-29 François Pinard <pinard@iro.umontreal.ca> 2652 2653 * tar.c (decode_options): Diagnose --block-compress properly. 2654 Was segment violating because falling into --blocking-factor. 2655 2656 * buffer.c, create.c, diffarch.c, genfile.c, gnu.c, tar.c: 2657 Uniformly write nonzero instead of non-zero. 2658 Reported by Karl Berry. 2659 2660 * system.h, buffer.c, create.c, diffarch.c, tar.c, update.c [MSDOS]: 2661 Instead of __MSDOS__, all occurrences. 2662 * extract.c (extract_archive) [MSDOS]: Avoid delaying restoration 2663 of timestamps for directories. 2664 * buffer.c (child_open_for_compress): Add a missing semi-colon. 2665 * diffarch.c (diff_archive): Avoid comparing uid and gid. 2666 Reported by Yasushi Suzudo. 2667 2668 * tar.c (usage): Correct absolute-paths to absolute-names. 2669 Reported by Jonathan Kamens. 2670 2671 * tar.c (usage): Indicate that --exclude uses globbing, and that 2672 --label uses regexps. 2673 Reported by John R. Vanderpool and Matti Aarnio. 2674 2675 * tar.c (names_notfound): Do not report a fake namelist entry, so 2676 gzipped empty archives will not produce spurious diagnostics. 2677 Reported by Jonathan Kamens. 2678 26791995-11-23 François Pinard <pinard@iro.umontreal.ca> 2680 2681 * tar.c (name_scan, name_match): Avoid labels and gotos. 2682 26831995-11-22 François Pinard <pinard@iro.umontreal.ca> 2684 2685 * Makefile.in (DISTFILES): Distribute ChangeLog. 2686 2687 * ChangeLog: New, extracted from top-level ChangeLog. 2688 2689 * tar.c (main, decode_options): Delay request_stdin for `-f' 2690 until all options processed, so we now for sure that `-' means 2691 standard input, not standard output. 2692 2693 * tar.c (usage): Document that users should not count on 2694 POSIX support yet, saying it is only partially implemented so far. 2695 26961995-10-27 François Pinard <pinard@iro.umontreal.ca> 2697 2698 * rtapelib.c (_rmt_shutdown): Add the errno_value parameter. 2699 (__rmt_open): Call shutdown if remote open fails, or else, we lose 2700 file descriptors. 2701 Reported by Holger Teutsch. 2702 27031995-10-20 Tom Tromey <tromey@drip.colorado.edu> 2704 2705 * tar.c (request_stdin): New function. 2706 (stdin_used_by): New variable. 2707 (name_init, add_exclude_file, decode_options): Use request_stdin 2708 if required. 2709 (confirm): Check stdin_used_by to see if stdin in use. 2710 2711 * list.c (read_header): Consistently use sizeof to find size 2712 of checksum field. 2713 27141995-08-26 François Pinard <pinard@iro.umontreal.ca> 2715 2716 * names.c (uid_to_uname, gid_to_gname): Ensure that the empty 2717 string is returned when not found, instead of the previous one. 2718 27191995-08-06 François Pinard <pinard@iro.umontreal.ca> 2720 2721 * buffer.c (new_volume): Use stderr rather than stdlis for 2722 interactions. Clarify `archive == 0' into `archive == STDIN'. 2723 Reported by Scott Hunziker. 2724 27251995-08-02 François Pinard <pinard@iro.umontreal.ca> 2726 2727 * diffarch.c (diff_archive): When symlink differs, report the 2728 file name, not the link name. 2729 Reported by Dale R. Worley and Wolfram Wagner. 2730 27311995-07-23 François Pinard <pinard@iro.umontreal.ca> 2732 2733 * Makefile.in (Makefile): Remove some useless lines. 2734 27351995-06-27 François Pinard <pinard@iro.umontreal.ca> 2736 2737 * tar.h: Sort out declarations a little better. 2738 * tar.c (decode_options): Reorder the cases in the big switch. 2739 2740 * tar.h: Introduce OLDGNU_COMPATIBILITY, enum archive_format, 2741 variable archive_format. Delete flag_old_archive, flag_standard. 2742 * tar.c (decode_options): Initialize archive_format so that -o 2743 yields V7_FORMAT, nothing yields OLDGNU_FORMAT, --posix yields 2744 GNU_FORMAT, and --posix with POSIXLY_CORRECT yields POSIX_FORMAT. 2745 * create.c (start_header): Use TMAGIC and TVERSION if required. 2746 Replace all flag_old_archive and flag_standard appropriately. 2747 2748 * tar.c: Implement a --record-size option, which is an 2749 alternate way of saying --blocking-factor, in bytes this time. 2750 2751 * tar.h, tar.c, create.c (dump_file): Implement 2752 a --no-recurse option, to help using tar with find. 2753 Reported by Chris G. Demetriou, Jamie Zawinski, Kimball 2754 Collins, Oswald P. Backus IV and Stuart Poulin. 2755 2756 * tar.h, tar.c, buffer.c (child_open_for_compress): 2757 Delete --block-compress, issue a warning if used. It was never 2758 obeyed while outputting on disk files, where it would have been 2759 useful. It was only obeyed for pipes, remotes and devices, that 2760 is, exactly when it would be an error not to specify it. 2761 2762 Reported by Hans Guerth, James H Caldwell Jr, Jean-loup Gailly, 2763 Jeffrey W. Parker, John D. Sybalsky, Kai Schlichting, Marcin 2764 Matuszewski, Mike Silano, Paul O'Connor, Pete Geenhuizen and 2765 Richard Stallman. 2766 2767 * buffer.c (open_archive): Cosmetic changes. 2768 2769 * buffer.c, diffarch.c, tar.h, update.c: Rename fl_read by 2770 flush_read and fl_write by flush_write. 2771 27721995-06-26 François Pinard <pinard@iro.umontreal.ca> 2773 2774 * tar.c (usage): Remind that `USER@' may be specified. 2775 Reported by John J. Szetela and Oliver Trepte. 2776 2777 * tar.c (usage): Replace `modificators' by `modifiers'. 2778 Reported by Alan Modra. 2779 2780 * extract.c (set_mode, set_stat): New functions, from 2781 previous code, elsewhere. Replace various occurrences of code 2782 appropriately with function calls. Ensure mode bits are properly 2783 set in all circumstances. This may imply calling set_mode twice. 2784 Reported by Piercarlo Grandi and Tim Magill. 2785 2786 * extract.c: Save the whole stat information in saved 2787 directory information, instead of parts of it, all mistyped. 2788 (restore_saved_dir_info): Free information as we consume it. 2789 Simplify code by using set_mode and set_times. Rename routine to 2790 apply_delayed_set_stat, and do some other cleanup around it. 2791 2792 * *.[hc]: Replace flag_confirm by flag_interactive, 2793 flag_do_chown by flag_same_owner, 2794 flag_exstdout by flag_to_stdout, 2795 flag_follow_links by flag_dereference, 2796 flag_gnudump by flag_incremental, 2797 flag_ignorez by flag_ignore_zeros, 2798 flag_keep by flag_keep_old_files, 2799 flag_local_filesys by flag_one_file_system, 2800 flag_modified by flag_touch, 2801 flag_multivol by flag_multi_volume, 2802 flag_namefile by flag_files_from, 2803 flag_new_files by flag_after_date, 2804 flag_oldarch by flag_old_archive, 2805 flag_reblock by flag_read_full_records, 2806 flag_run_script_at_end by flag_info_script, 2807 flag_sayblock by flag_block_number, 2808 flag_sorted_names by flag_same_order, 2809 flag_sparse_files by flag_sparse, 2810 flag_startfile by flag_starting_file, 2811 flag_use_protection by flag_same_permissions, 2812 OPTION_COMPRESS_PROG by OPTION_USE_COMPRESS_PROGRAM, 2813 flag_volhdr by volume_label, 2814 flag_compressprog by compress_program, 2815 flag_rsh_command by rsh_command, 2816 and flag_volno_file by volno_file. 2817 2818 * tar.c: Rename --modification-time by --touch, and provide a 2819 warning for the old option. 2820 28211995-06-24 François Pinard <pinard@iro.umontreal.ca> 2822 2823 * list.c (decode_header): At extraction time, use the stored 2824 uid if uname is unknown in this system, and use the stored gid if 2825 gname is unknown in this system, instead. This solves a long 2826 lasting bug by which restored files were all owned by root, using 2827 an incomplete /etc/passwd or /etc/group file. 2828 * names.c: Rename finduname to uid_to_uname and findgname to 2829 gid_to_gname, exchanging the order of arguments. Use uid_t and 2830 gid_t instead of int's. Use empty strings in cached_[ug]name for 2831 marking there is no valid cached translation, instead of using 2832 magic values for cached_[ug]id. Rename finduid to uname_to_uid 2833 and findgid to gname_to_gid, adding a second argument to store the 2834 result if found, and returning a success/failure indication, not 2835 anymore assuming the current [ug]id by default. 2836 * tar.h, create.c, list.c: Adjust prototypes and callers. 2837 2838 Reported by Anders Andersson, Bernard Derval, Brian Perkins, 2839 Charles Fu, Daniel Trinkle, Ian Jackson, Johannes Helander, 2840 Michael Lin, Richard Sims, Robert E. Brown, Tim P. Starrin and 2841 Torkel Hasle. 2842 2843 * tar.h, create.c, list.c, names.c, tar.c: 2844 Implement --numeric-owner, to replace the NONAMES define. Then, 2845 ensure some reasonable values to magic and linkflags if POSIX. 2846 Reported by Benedikt Stockebrand, Ian Jackson and Stephen Gildea. 2847 2848 * buffer.c: Delete save_block function, as well as 2849 saved_block_pointer and saved_block variables. Blocks were 2850 carefully saved indeed, but never consulted after the fact. 2851 * tar.h: Delete save_block prototype. 2852 * *.c: Delete all usages of save_block. 2853 2854 * rmt.c: Add static to variable declarations. 2855 * list.c (read_header): Rename recsum to recorded_sum. 2856 28571995-06-23 François Pinard <pinard@iro.umontreal.ca> 2858 2859 * *.[hc]: Rename --read-full-blocks to --read-full-records, 2860 --block-size to --blocking-factor, and --record-number to 2861 --block-number. 2862 * tar.c (decode_options): Diagnose usage of old names. 2863 2864 * *.[hc]: Rename saverec to save_block, findrec to 2865 find_next_block, and userec to set_next_block_after. 2866 Replace endofrecs by available_space_after which does the space 2867 computation instead of returning the end pointer, adjust and 2868 simplify all callers, by using variable data_block systematically. 2869 Also, rename union block field charptr to buffer. 2870 28711995-06-22 François Pinard <pinard@iro.umontreal.ca> 2872 2873 * *.[hc]: Exchange "record" and "block" almost everywhere and 2874 whenever appropriate, to follow the terminology used in 2875 P1003.1-1990, and so removing a lot of confusion in sources. 2876 2877 * tar.h: Prefer naming constants and fields per P1003-1.1990 as 2878 far as possible. Rename those remaining LF_xxx to GNUTYPE_xxx. 2879 * *.c: Adjusted accordingly. 2880 2881 * tar.h: Clean up the header structure. Make very clear what is 2882 specified by POSIX, and what is GNU format, and what is extended 2883 header for sparse files. Use xxx_FIELD_SIZE instead of NAMSIZ, 2884 TUNMLEN and TGNMLEN. Dismangle some other names, on the way... 2885 * *.c: Adjusted accordingly. 2886 2887 * tar.h: Do not declare baserec, declare current_block_ordinal. 2888 * buffer.c (current_block_ordinal): New function. 2889 Rename baserec to record_start_block, and make it static. 2890 * list.c: Use current_block_ordinal, avoid baserec computations. 2891 * buffer.c, list.c: Get rid of saved_recno and annofile. 2892 2893 * buffer.c, diffarch.c: Move no_op and wantbytes from 2894 buffer.c to diffarch.c. Correct prototypes so first arg is long. 2895 * tar.h: Do not declare no_op nor wantbytes, anymore. 2896 2897 * tar.h, buffer.c: Move ar_block, ar_record and ar_last 2898 from tar.h to buffer.c, renaming them to record_start, 2899 current_block, record_end respectively. 2900 * update.c: Add temporary extern declaration for record_start, 2901 current_block and record_end. 2902 2903 * tar.h, buffer.c: Move ar_reading from tar.h to buffer.c, 2904 renaming it to reading_archive. 2905 * diffarch.c: Add temporary extern declaration for 2906 reading_archive. 2907 2908 * buffer.c, create.c, diffarch.c, extract.c, gnu.c, 2909 list.c, names.c, rmt.c, rmt.h, rtapelib.c, 2910 tar.c, update.c: Replace many #ifdef's by #if's, and 2911 #ifndef's by #if !'s. 2912 2913 * buffer.c (redirect): New name for dupto. Callers changed. 2914 2915 * create.c (dump_file), extract.c (extract_archive, 2916 extract_sparse_file), tar.h: Remove crumb about ending_blanks 2917 and end_nulls. 2918 2919 * Makefile.in (all): Do not prepare genfile by default, as it 2920 is only needed for checking. 2921 2922 * tar.c (decode_options): Diagnose lacking arguments to old 2923 options. 2924 Reported by Aage Robeck, Alan Cox, Benny Holmgren, Bruno Haible, 2925 Daniel Quinlan, Michael Schmidt, Richard J. Kettlewell and Robert 2926 Leslie. 2927 29281995-06-21 François Pinard <pinard@iro.umontreal.ca> 2929 2930 * rtapelib.c (__rmt_open): Avoid dereferencing remote_user 2931 when NULL. 2932 2933 Reported by Alois Steindl, Amos Yahil, Anders Liljeborg, Andre 2934 Novaes Cunha, Andreas Haumer, Andreas Reuter, Andy Gay, Bdale 2935 Garbee, Bradley A. Smith, Brett Gaines, Bruce Jerrick, Calvin 2936 Cliff, Cameron Elliott, Charles Lopes, Charles M. Hannum, Chris 2937 Metcalf, Christophe Colle, Christopher T. Johnson, Dale Wiles, 2938 David Shaw, Dimitri Bougoulias, Daniel Hagerty, Dave Gregorich, 2939 David Mansfield, David Nugent, David Shaw, David Steiner, 2940 Douglas Scott, Dunstan Vavasour, Edgar Taube, Eduardo Kortright, 2941 Elmer Fittery, Eric Benson, Eric M. Boehm, Gerd Knorr, Graham 2942 Whitted, Harald Milz, Heiko Schlichting, James V. Di Toro III, 2943 Jan Carlson, Janne Snabb, Jeff Sorensen, Jens Henrik Jensen, 2944 Jim Clausing, John J. Szetela, John R. Vanderpool, Jurgen Botz, 2945 Karl Berry, Karlos Z. Smith, Karsten Thygesen, Koji Kishi, 2946 Luke Mewburn, Manuel Munier, Marc Ewing, Matthew J. D'Errico, 2947 Martin Goik, Maxime Taksar, maximum entropy, Michael Hayes, 2948 Michael Schwingen, Michael Smolsky, Michael Kaufman, Mike Walker, 2949 Minh Tran-Le, Mitsuaki Masuhara, Nelson H. F. Beebe, Noel Cragg, 2950 Olaf Wucknitz, Oliver Trepte, Olivier Roussel, Patrick Fulconis, 2951 Paul Kanz, Paul Nordstrom, Pekka Janhunen, Peter Carah, Peter 2952 Kutschera, Phil Hands, Randy Bias, Reuben J. Ravago, Ricardo 2953 Marek, Robert Anthony Nader, Rod Buchanan, Roderich Schupp, 2954 Russell Cattelan, Scott J. Kramer, Scott L. Burson, Simon 2955 Wright, Sisira Jayasinghe, Steffen Stempel, Thomas M. Browder 2956 Jr., Thomas Waas, Tim Bradshaw, Tim Lashua, Timothy J. Lee, Tom 2957 Popovitch, Toshiaki Nishi, Victor J. Griswold, Wayne Christopher, 2958 William J. Eaton, Wlodzimierz Jan Martin, Wolfgang Rupprecht 2959 and Wolfram Wagner. 2960 2961 * tar.h: Remove external prototypes related to rtapelib.c, as 2962 those are already declared in rmt.h. 2963 29641995-06-18 François Pinard <pinard@iro.umontreal.ca> 2965 2966 * buffer.c (xclose): New, from port.c (ck_close). 2967 Replace ck_close by xclose in all modules. 2968 * port.c: Remove ck_close. 2969 2970 * port.c: Remove ck_malloc, because xmalloc can be used 2971 instead, now that it protects against malloc(0) returning NULL. 2972 * gnu.c (gnu_restore), list.c (read_header): Replace 2973 ck_malloc with xmalloc. In gnu_restore, remove skipping code in 2974 case of failed allocation, because tar already aborted in xmalloc. 2975 * tar.h: Delete ck_malloc declaration. 2976 2977 * port.c: Remove mknod, link, chown and geteuid, which 2978 normally exist on Unix. To be reinserted later, as needed. 2979 Reported by Jyh-Shyang Wang, Nelson H. F. Beebe, Philippe Defert 2980 and Serge Granik. 2981 2982 * tar.c: Declare TTY_NAME, moved over from port.c. 2983 2984 * extract.c (extract_archive), tar.c (decode_options): 2985 Clean out old NO_OPEN3 code. 2986 * Makefile.in: Adjusted. 2987 2988 * buffer.c (child_open): In-line previous ck_pipe code. 2989 * tar.h: Delete ck_pipe declaration. 2990 * port.c: Delete ck_pipe function. 2991 2992 * misc.c: New, reorganizing remaining code from port.c. 2993 * port.c: Deleted. 2994 * Makefile.in: Adjusted. 2995 2996 * misc.c (un_quote_string): If `\' ends a string to unquote, 2997 just pass it undisturbed. 2998 From Robert Lipe. 2999 3000 * system.h: Replace many #ifdef by #if, #ifndef by #if !. 3001 30021995-06-17 François Pinard <pinard@iro.umontreal.ca> 3003 3004 * Release 1.11.8. 3005 3006 * Makefile.in (mostlyclean): Remove also _*.c and _*.o. 3007 3008 * create.c (dump_file), gnu.c (get_dir_contents): Cast 3009 (int) explicitely for test. 3010 3011 * Makefile.in ($(OBJECTS)): Depend on ../intl/libgettext.h 3012 instead of ../intl/libintl.h, which does not always exist. 3013 3014 * genfile.c: Define EXIT_SUCCESS and EXIT_FAILURE if not. 3015 * tar.c (main): Use TAREXIT_SUCCESS instead of EXIT_SUCCESS. 3016 3017 * tar.h: Use off_t instead of long for the second argument in 3018 __rmt_lseek declaration. 3019 * system.h: Remove typedef of off_t, because AC_TYPE_OFF_T 3020 takes care of it now. 3021 Reported by Coranth Gryphon, Jim Blandy and Thomas Krebs. 3022 30231995-06-15 François Pinard <pinard@iro.umontreal.ca> 3024 3025 * checktar.sh: Send a message saying that it is still useless. 3026 30271995-06-11 François Pinard <pinard@iro.umontreal.ca> 3028 3029 * tar.h, tar.c (decode_options), extract.c 3030 (extract_archive), diffarch.c (diff_archive), create.c 3031 (dump_file, start_header), tar.c (decode_options): Replace 3032 flag_absolute_paths by flag_absolute_names. 3033 * tar.c (decode_options): Implement OBSOLETE_ABSOLUTE_NAMES for 3034 reporting --absolute-paths as obsolete. 3035 3036 * system.h: Conditionnaly include <locale.h> and define 3037 setlocale to void independently of ENABLE_NLS. 3038 Reported by Ulrich Drepper. 3039 30401995-06-10 François Pinard <pinard@iro.umontreal.ca> 3041 3042 * tar.c (long_options): Use no_argument and require_argument, 3043 instead of constants. Have long option names translated to short 3044 options whenever possible, rather than setting flags directly: 3045 easing option management is worth a few extra nanoseconds. 3046 3047 * tar.c (long_options): Add --gunzip as meaning -z. 3048 Reported by Bruno Haible. 3049 30501995-06-07 François Pinard <pinard@iro.umontreal.ca> 3051 3052 * Makefile.in: Use subdir and distdir. 3053 3054 * system.h [NLS]: Simplify by merely including <libintl.h>. 3055 Also, define setlocale to empty only if the setlocale function is 3056 not known, instead of when <locale.h> is missing. 3057 * Makefile.in (INCLUDES): Use ../intl in compilations, 3058 taking care of the fact libintl.h might have been symlinked there. 3059 30601995-06-05 François Pinard <pinard@iro.umontreal.ca> 3061 3062 * tar.c, tar.h: Rename TAR_EXTERN to GLOBAL. 3063 3064 * tar.h: Delete COMMAND_VERSION. 3065 * tar.c: Replace OPTION_HELP and OPTION_VERSION commands by 3066 show_help and show_version variables, so `--version --create' will 3067 not diagnose `Too many commands'. Adjust things so this works. 3068 Reported by Marty Leisner. 3069 30701995-06-04 François Pinard <pinard@iro.umontreal.ca> 3071 3072 * Makefile.in (check): New goal. 3073 * checktar.sh: New script. 3074 * genfile.c: New file. 3075 * Makefile.in (all): Prepare genfile. 3076 * Makefile.in: Distribute checktar.sh and genfile.c. 3077 30781995-06-03 François Pinard <pinard@iro.umontreal.ca> 3079 3080 * tar.h: Adjust so extracted doc/header.texi is neater. 3081 30821995-05-30 François Pinard <pinard@iro.umontreal.ca> 3083 3084 * tar.c (name_match): Use %s for printing directory, not %d. 3085 Reported by Marty Leisner. 3086 3087 * tar.c (name_gather, addname): chdir_name receives string 3088 pointers which might later be overwritten, but nevertheless saved 3089 into structures, so, use xstrdup for the time being. 3090 Reported by Michael Holmes. 3091 3092 * tar.c (name_next, name_from_list): Abort when chdir fails. 3093 Reported by Ian Jackson and Marty Leisner. 3094 30951995-05-28 François Pinard <pinard@iro.umontreal.ca> 3096 3097 * rmt.h: Declare second argument of __rmt_lseek to be off_t 3098 instead of long, so it is the same as in rmt.c. 3099 Reported by Chris Arthur. 3100 3101 * buffer.c (close_archive): Compensate for the addition of 2 3102 to ar_block at open_archive time, for when -M used, just before 3103 calling free. 3104 Reported by Bruno Haible, Clinton Carr, Hernan Prieto Schmidt, 3105 Kevin Dalley, Loren J. Rittle and Marty Leisner. 3106 3107 * rmt.c: Replace SSIZE by STRING_SIZE, avoiding a conflict 3108 with some header files. 3109 Reported by Kaveh R. Ghazi and William Bader. 3110 3111 * tar.c: Use DEVICE_PREFIX instead of DEVICE_PREXIX, and 3112 WITH_REGEX instead of WITH_REGEC. 3113 Reported by Bruno Haible. 3114 31151995-05-16 François Pinard <pinard@iro.umontreal.ca> 3116 3117 * Prerelease 1.11.7. 3118 3119 * Makefile.in (tar): Have $(OBJECTS) depend on system.h. 3120 3121 * system.h: Many adjustements for GNU gettext. 3122 31231995-05-09 François Pinard <pinard@iro.umontreal.ca> 3124 3125 * Makefile.in: Clean glocale out. 3126 31271995-05-08 François Pinard <pinard@iro.umontreal.ca> 3128 3129 * Makefile.in: Use libintl.a while linking. 3130 * system.h: Include <libintl.h> unconditionally, instead only 3131 if WITH_CATALOG. Let <libintl.h> define _() appropriately. 3132 * tar.c (main): Call textdomain. 3133 31341995-05-02 François Pinard <pinard@iro.umontreal.ca> 3135 3136 * system.h, gnu.c, list.c, port.c: Avoid 3137 superfluous parentheses in macro definitions. 3138 * port.c: Capitalize macro arguments. 3139 * buffer.c, create.c, diffarch.c, tar.c: Use comma 3140 operator when assignment in test. 3141 31421995-04-27 François Pinard <pinard@iro.umontreal.ca> 3143 3144 * port.c (link): Use WARN to report the message. 3145 Reported by Sherwood Botsford. 3146 31471995-03-19 François Pinard <pinard@iro.umontreal.ca> 3148 3149 * Makefile.in: Remove GLOCALE, add LINGUAS, use fp_WITH_CATALOGS. 3150 * system.h: Use WITH_CATALOGS to define _() differently. 3151 31521995-03-14 François Pinard <pinard@iro.umontreal.ca> 3153 3154 * rtapelib.c (__rmt_open): Close the unused side of each 3155 pipe, instead of the useful one, prior to processing. 3156 Reported by Charles Lopes and Minh Tran-Le. 3157 31581995-02-22 François Pinard <pinard@iro.umontreal.ca> 3159 3160 * Makefile.in: Replace `date' by `echo timestamp'. 3161 31621995-02-19 François Pinard <pinard@iro.umontreal.ca> 3163 3164 * Makefile.in: Support ID files. Do not distribute TAGS. 3165 31661995-02-13 François Pinard <pinard@iro.umontreal.ca> 3167 3168 * Makefile.in: Use top_srcdir. 3169 31701995-02-11 François Pinard <pinard@iro.umontreal.ca> 3171 3172 * gnu.c (is_dot_or_dotdot): Through NFS, readdir might deliver 3173 empty filenames under old Solaris 2.4, causing endless loops in 3174 tar. As a workaround, avoid `' as done already for `.' and `..'. 3175 Reported by Jan Carlson. 3176 31771995-02-05 François Pinard <pinard@iro.umontreal.ca> 3178 3179 * Makefile.in (maintainer-clean): New name for realclean. 3180 31811995-01-04 François Pinard <pinard@iro.umontreal.ca> 3182 3183 * extract.c (make_dirs) [MSDOS]: Correct for Turbo C, which may 3184 return EACCES instead of EEXIST on mkdir. 3185 Reported by Jeffrey Goldberg. 3186 3187 * tar.c (usage) [MSDOS]: Do not tell about -N and related. 3188 (decode_options) [MSDOS]: Be blind to -N and related. 3189 Reported by Jeffrey Goldberg. 3190 3191 * rmt.h (_remdev): A filename is not remote if the colon is 3192 preceeded by a slash, to take care of `/:/' which is a shorthand 3193 for `/.../<CELL-NAME>/fs' on OSF's Distributing Computing 3194 Environment (DCE) and Distributed File System (DFS). 3195 Reported by Travis L. Priest. 3196 31971995-01-03 François Pinard <pinard@iro.umontreal.ca> 3198 3199 * tar.c (decode_options): Renamed from options. Convert 3200 oldish-style non-dashed options to modern writing before 3201 performing option decoding. Diagnose when modern options are met 3202 before old style options are fully converted. This allows 3203 mixing of option styles on a single call. Avoid getoldopt and 3204 use getopt_long instead. 3205 * getoldopt.c: Deleted. 3206 * tar.h: Prototype deleted. 3207 * Makefile.in: Adjusted. 3208 Reported by Bruno Haible, Les Mikesell, Patrick Timmons and Saul 3209 Lubkin. 3210 32111995-01-02 François Pinard <pinard@iro.umontreal.ca> 3212 3213 * system.h: New file, split out of tar.h. 3214 * buffer.c, create.c, diffarch.c, extract.c, 3215 getoldopt.c, gnu.c, list.c, mangle.c, names.c, 3216 port.c, tar.c, update.c: Include "system.h", and move 3217 the inclusion of "tar.h" down after system dependent definitions. 3218 * Makefile.in: Distribute system.h. 3219 3220 * rmt.c: Include "system.h", and simplify accordingly. 3221 * rtapelib.c: Include "system.h", and simplify accordingly. 3222 * rmt.h: Simplify according to the inclusion of "system.h". 3223 3224 * system.h: Include conditionnaly <sys/gentape.h>, 3225 <sys/tape.h>, <sys/mtio.h>, <sys/ioctl.h> and <sys/io/trioctl.h>. 3226 * buffer.c, diffarch.c, rmt.c, rtapelib.c, 3227 update.c: Simplify accordingly. 3228 3229 * system.h: If it exists, include <sys/ioccom.h> prior to 3230 <sys/mtio.h>, to account for problems when GNU libc 1.0x is 3231 installed over SunOS 4.1.3: GNU libc does not provide sys/mtio.h, 3232 so it is taken from Sun header files which use things like _IOW, 3233 which GNU libc despises, sys/ioccom.h then provides definitions. 3234 Reported by Joseph E. Sacco. 3235 32361994-12-27 François Pinard <pinard@iro.umontreal.ca> 3237 3238 * rmt.h: Ensure strrchr is defined to rindex in some cases. 3239 Reported by Karl Vogel. 3240 32411994-12-18 François Pinard <pinard@iro.umontreal.ca> 3242 3243 * tar.h: Include <ctype.c> and declare ISASCII. 3244 * gnu.c: Adjust, declare and use ISDIGIT and ISSPACE. 3245 * list.c: Adjust, declare and use ISODIGIT and ISSPACE. 3246 * port.c: Adjust, declare and use ISPRINT. 3247 Reported by Bruno Haible, Konno Hiroharu and Max Hailperin. 3248 32491994-12-11 François Pinard <pinard@iro.umontreal.ca> 3250 3251 * buffer.c, tar.c [WITH_REGEX]: Check it. 3252 32531994-12-03 François Pinard <pinard@iro.umontreal.ca> 3254 3255 * Prerelease 1.11.6. 3256 3257 * rmt.c: Adjust for localization, by including <locale.h> and 3258 <libintl.h>, by defining _(), by defining and calling setlocale, 3259 and by defining and initializing program_name. 3260 * Makefile.in: Use locale.o and libtar.a with rmt. 3261 3262 * Makefile.in: Ensure INSTALL_DATA is defined. 3263 3264 * Makefile.in, tar.h, tar.c: 3265 Localize, adapting from how it is done in sharutils. 3266 3267 * Makefile.in, tar.c: Rename PRODUCT to PACKAGE. 3268 32691994-11-29 François Pinard <pinard@iro.umontreal.ca> 3270 3271 * buffer.c (backspace_output): Change cur from long to off_t. 3272 * diffarch.c (diff_archive): Idem for offset. 3273 * extract.c (extract_archive): Idem for offset. 3274 * rmt.c: Idem for lseek (). 3275 (main): For case 'L', use atol instead of atoi, and cast the 3276 result to (off_t) rather than (long). 3277 * rtapelib.c (__rmt_lseek): Idem of offset argument. 3278 * tar.h: Change offset of sp_array from int to off_t. 3279 * update.c (move_arch): Change cur from long to off_t. 3280 Reported by David J. MacKenzie. 3281 32821994-11-26 François Pinard <pinard@iro.umontreal.ca> 3283 3284 * rmt.h, tar.h, buffer.c, create.c, 3285 diffarch.c, extract.c, gnu.c, list.c, 3286 rtapelib.c, update.c: Rename _ to __P. 3287 * tar.h, rmt.h: Declare _ as a macro returning its 3288 argument, or else, include <libintl.h> and declare _ as gettext. 3289 * tar.c: Possibly include <locale.h> and call setlocale. 3290 * rmt.c, buffer.c, create.c, diffarch.c, 3291 extract.c, getoldopt.c, gnu.c, list.c, 3292 mangle.c, port.c, rtapelib.c, tar.c, 3293 update.c: Use _ macro over all localizable strings. 3294 3295 * rtapelib.c: Declare prototype for xstrdup. Do not declare 3296 strstr, which is not needed. 3297 32981994-11-01 François Pinard <pinard@iro.umontreal.ca> 3299 3300 * Makefile.in: Clean up, following those of GNU m4. I will 3301 not detail all the changes here. 3302 * tar.c: Use PRODUCT and VERSION instead of version_string. 3303 33041994-10-30 François Pinard <pinard@iro.umontreal.ca> 3305 3306 * tar.h [__STDC__]: Use #if instead of #ifdef. 3307 33081994-10-27 François Pinard <pinard@iro.umontreal.ca> 3309 3310 * rmt.h, tar.h, buffer.c, create.c, diffarch.c, 3311 extract.c, gnu.c, list.c, mangle.c, tar.c, 3312 update.c: Rename all f_* variables to flag_*. 3313 3314 * tar.h, buffer.c, tar.c, update.c: Rename cmd_mode into command_mode. 3315 * tar.c (SET_COMMAND_MODE): New macro, use it. 3316 3317 * port.c (quote_copy_string): Prevent sign extension of 3318 character while copying it to an int. 3319 * (un_quote_string): Increment to_there pointer in all cases. 3320 Reported by Konno Hiroharu, Mats Lofkvist, Max Hailperin and 3321 Ryutaro Susukita. 3322 33231994-10-09 François Pinard <pinard@iro.umontreal.ca> 3324 3325 * rmt.c, rtapelib.c, tar.h: Get rid of CONFIG_BROKETS. 3326 33271994-10-04 François Pinard <pinard@iro.umontreal.ca> 3328 3329 * diffarch.c (fill_in_sparse_array): Add a cast for Pyramid's 3330 dumb compiler. Later remove the cast and compare to 0 instead. 3331 * extract.c (extract_archive): Idem. 3332 Reported by Karl Vogel and Kaveh R. Ghazi. 3333 33341994-09-27 François Pinard <pinard@iro.umontreal.ca> 3335 3336 * diffarch.c: Normalize capitalization in diagnostics. 3337 33381994-09-26 François Pinard <pinard@iro.umontreal.ca> 3339 3340 * tar.c (name_next, name_match): Abort tar if directory cannot 3341 be changed, instead of going on. This is not an innocuous error. 3342 Reported by Marty Leisner. 3343 33441994-09-15 François Pinard <pinard@iro.umontreal.ca> 3345 3346 * rtapelib.c: Include "rmt.h" only once <sys/types.h> has been 3347 included, because off_t might not be defined otherwise. 3348 Reported by James W. McKelvey, John L. Chmielewski, Karl 3349 Vogel, Kaveh R. Ghazi an and Jim Meyering and Tilman Schmidt. 3350 33511994-09-14 François Pinard <pinard@iro.umontreal.ca> 3352 3353 * Makefile.in: Cleanup... 3354 (DISTFILES): Distribute TAGS. 3355 (ansi2knr): Use $(LIBS). 3356 (TAGS): Make TAGS in $(srcdir) only. 3357 (distclean): Do not remove TAGS. 3358 (realclean): Remove TAGS. 3359 (Makefile): Have ./config.status create this Makefile only. 3360 33611994-09-13 François Pinard <pinard@iro.umontreal.ca> 3362 3363 * buffer.c: Remove the presetting of stdlis, because stdout is 3364 not a constant in GNU libc. 3365 Reported by Joseph E. Sacco and Thomas Bushnell n/BSG. 3366 3367 * buffer.c (new_volume): Pass an otherwise unused argument to 3368 wait, do not use NULL. 3369 Reported by Thomas Bushnell n/BSG. 3370 33711994-09-05 François Pinard <pinard@iro.umontreal.ca> 3372 3373 * Makefile.in (TAGS): Remove -t on etags call. It has been 3374 the default behavior for a few releases of Emacs and it seems that 3375 option -t is now disappearing (from Emacs 19.25, at least). 3376 Reported by Goeran Uddeborg. 3377 33781994-09-02 François Pinard <pinard@iro.umontreal.ca> 3379 3380 * gnu.c (get_dir_contents): Do not set dp->allnew if dp is not 3381 set itself. 3382 Reported by Piercarlo Grandi. 3383 3384 * extract.c (extract_archive): Issue diagnostic or verbose 3385 messages to msg_file, instead of stdout. 3386 Reported by Piercarlo Grandi. 3387 33881994-08-23 François Pinard <pinard@iro.umontreal.ca> 3389 3390 * tar.h: Do not declare alloca if already defined, so HP's 3391 +Olibcalls compiler option works. 3392 Reported by John David Anglin. 3393 3394 * rtapelib.c (__rmt_open): Use REMOTE_SHELL only if defined. 3395 Otherwise, if the command argument has been specified and 3396 REMOTE_SHELL is not defined, immediately return an error. 3397 Reported by Bruno Haible, Kaveh R. Ghazi, Marty Leisner, 3398 Torkel Hasle and William Bader. 3399 3400 Because --rsh-command may always be given, even if no remote shell 3401 was found at configure time, remote capabilities are always 3402 compiled. This also solve other problems related to RTAPELIB. 3403 * Makefile.in: Always compile $Urtapelib.o. 3404 * buffer.c (child_open): Always test _remdev, do not depend 3405 anymore on HAVE_RTAPELIB. 3406 * rmt.h [!HAVE_RTAPELIB]: Remove some code. 3407 Reported by Andreas Schwab and Vic Abell. 3408 3409 * rtapelib.c: Remove unused COMPAT (mis)feature. Remove most 3410 length limitations for remote host name, remote user name and 3411 remote device name. Duplicate path, and free it in all cases. 3412 * (_rmt_rexec): The `user' parameter may never by the empty 3413 string. Remove code for that case. 3414 34151994-08-22 François Pinard <pinard@iro.umontreal.ca> 3416 3417 Little cleanup in installation: 3418 * Makefile.in: Remove rule for ../lib/libtar.a. 3419 34201994-08-21 François Pinard <pinard@iro.umontreal.ca> 3421 3422 * Prerelease 1.11.5. 3423 3424 * Makefile.in: Correct for when a different build directory. 3425 3426 * tar.h: Replace W* definitions. Adapted from make 3.71. 3427 * buffer.c (close_archive): Replace WIFCOREDUMPED by 3428 WCOREDUMP. Previous WIFSIGNALED definition was excluding SIGSTOP, 3429 new definition do not exclude it anymore. We'll see. 3430 Reported by Demizu Noritoshi, Greg Black, Kaveh R. Ghazi, 3431 Robert E. Brown and Russ Evans. 3432 34331994-08-20 François Pinard <pinard@iro.umontreal.ca> 3434 3435 This might (?) solve the dirent problems on NeXT's and Apollo's: 3436 * tar.h: Change includes and defines from older AC_DIR_HEADER 3437 style to newer and clearer AC_HEADER_DIRENT style. 3438 * create.c, gnu.c: Replace NLENGTH by NAMLEN. 3439 Reported by Drew Trieger, Hugh Secker-Walker, James W. McKelvey, 3440 Robert E. Brown and Thomas Krebs. 3441 34421994-08-17 François Pinard <pinard@iro.umontreal.ca> 3443 3444 Remove some shadowings. 3445 * update.c (update_archive): Rename head_standard to unused. 3446 * buffer.c (open_archive): Rename head to label. 3447 (fl_read): Rename head to cursor. 3448 3449 * gnu.c (dirent_cmp): Use (char *const *), not (const char **) 3450 for not loosing the const specifier while casting. 3451 3452 * mangle.c (extract_mangle): Remove unused argument. 3453 * tar.h: Adjust prototype. 3454 * extract.c (extract_archive): Caller changed. 3455 3456 * rtapelib.c (__rmt_open): Remove useless mode parameter. 3457 * rmt.h, tar.h: Adjust prototype. 3458 * rmt.h: Adjust macros calling __rmt_open. 3459 * create.c (deal_with_sparse): Remove unused argument. 3460 * create.c (dump_file): Caller changed. 3461 Reported by Greg Black. 3462 3463 * Makefile.in: Avoid $U in defining RTAPELIB. Remove both 3464 rtapelib.o and _urtapelib.o explicit rules, not needed anymore. 3465 * rmt.h, buffer.c [HAVE_RTAPELIB]: Instead of !NO_REMOTE. 3466 Reported by Andreas Schwab. 3467 3468 * Makefile.in: Correct a typo in $Ubuffer.o dependencies. 3469 Reported by Andreas Schwab. 3470 3471 * rtapelib.c (__rmt_ioctl): Compile the MTIOCGET case only if 3472 this symbol is defined. This also solves a missing mt_type field 3473 on NS32016 running SysVr2.2. 3474 Reported by Greg Black. 3475 3476 * rtapelib.c (__rmt_ioctl) : Conditionnalize only the MTIOCTOP 3477 case, not the whole routine, with the MTIOCTOP symbol. In case of 3478 unrecognized operation, return EOPNOTSUPP instead of EINVAL. 3479 * rmt.h: Always provide a prototype for __rmt_ioctl. Delete 3480 the RMTIOCTL machinery. 3481 34821994-08-16 François Pinard <pinard@iro.umontreal.ca> 3483 3484 * rmt.c, buffer.c: Use a more uniform way of including 3485 <sys/mtio.h> or its alternates. 3486 Reported by Daniel R. Guilderson and Kaveh R. Ghazi. 3487 3488 * Makefile.in: Split rule for $Urtapelib.o into one rule for 3489 rtapelib.o and one rule for _rtapelib.o, taking care of the fact 3490 that rtapelib.c is in $(srcdir) while _rtapelib.c is in current 3491 directory. 3492 Reported by Andreas Schwab, Kaveh R. Ghazi, Minh Tran-Le and 3493 Per Foreby. 3494 3495 * rmt.c (string_error): Correct DEBUG2 into DEBUG1, and strint 3496 into string. 3497 Reported by Anders Andersson, Bruno Haible, Thomas Krebs and 3498 Thomas König. 3499 3500 * Makefile.in: Add $U's to rtapelib and rmt specific rules. 3501 Reported by Thomas König. 3502 35031994-08-15 François Pinard <pinard@iro.umontreal.ca> 3504 3505 * Prerelease 1.11.4. 3506 3507 * rmt.c (numeric_error): Renamed from error. 3508 (string_error): New, to replace ERROR ((...)), unavailable in rmt.c. 3509 3510 * rmt.c (checkbuf): Do not accept, nor return record. Use the 3511 global instead. This will get rid of useless shadowings. 3512 3513 * rmt.h: Give prototypes for __rmt_* routines. 3514 * rtapelib.c: Include "rmt.h". 3515 * update.c (move_arch): Cast last rmtioctl argument to char *. 3516 * buffer.c (backspace_output): Idem. 3517 * diffarch.c (verify_volume): Idem. 3518 3519 * Makefile.in (rmt): Declare dependencies over rmt.h. 3520 35211994-08-14 François Pinard <pinard@iro.umontreal.ca> 3522 3523 * rtapelib.c: Use MTIO_CHECK_FIELD instead of mt_type. 3524 Reported by Ben A. Mesander. 3525 35261994-08-13 François Pinard <pinard@iro.umontreal.ca> 3527 3528 * tar.h: Include <sys/wait.h> if it exists, whether POSIX or not. 3529 Check if WIFSTOPPED is defined, to decide if defining others WIF*. 3530 Reported by Bruno Haible. 3531 35321994-08-11 François Pinard <pinard@iro.umontreal.ca> 3533 3534 * extract.c (extract_archive) [O_CTG]: Declare longname variable. 3535 Initialize it as NULL. This dirty kludge will allow the module to 3536 compile on Masscomp's, for the time being. 3537 Reported by Ben A. Mesander. 3538 3539 * tar.h, rtapelib.c: Declare strstr if we replaced it. 3540 Reported by Ben A. Mesander, Christian T. Dum and Kaveh R. Ghazi. 3541 35421994-08-10 François Pinard <pinard@iro.umontreal.ca> 3543 3544 * create.c (dump_file): Do not test only for hpux, but also 3545 for __hpux. I added __hpux__ too, as done in tar.h. 3546 Reported by Richard Lloyd. 3547 3548 * tar.h: Do not include <sys/mknod.h> anymore for HP-UX from 3549 HP-UX 8 and after, for which definitions are in <sys/sysmacros.h>, 3550 and reorganize the tests in this area. 3551 Reported by Christian T. Dum, Dimitris Fousekis, Kimmy Posey, 3552 Michael Maass, Richard Lloyd and Thomas König. 3553 35541994-08-09 François Pinard <pinard@iro.umontreal.ca> 3555 3556 These changes for const-cleaning gnu.c and tar.c: 3557 * tar.c (read_name_from_file): Work directly on global 3558 variables instead of accepting parameters. Return success or 3559 failure as an int instead of the relocated name_buffer. 3560 (name_next): Caller changed, internal clean-up of the function. 3561 Remove trailing slashes on the command call too, not only when 3562 reading from a file through -T option. 3563 * gnu.c: Add const to name and dir_text in struct dirname. 3564 Reported by Ben A. Mesander, Bruno Haible, Christian T. Dum, 3565 Dean Gaudet, James W. McKelvey, Richard Lloyd and Robert E. Brown. 3566 35671994-08-08 François Pinard <pinard@iro.umontreal.ca> 3568 3569 * tar.c (name_next, name_gather, addname): Use strcmp for 3570 checking for "-C", instead of decomposed tests, just for clarity. 3571 3572 * Makefile.in (RSH): Define from configuration. 3573 (rtapelib.o): Define REMOTE_SHELL from $(RSH) while compiling. 3574 * rtapelib.c (__rmt_open): If command not given, use 3575 REMOTE_SHELL, instead of cascading tries of filenames. 3576 Reported by Bruno Haible. 3577 3578 * tar.c: Include <fnmatch.h> if FNM_LEADING_DIR is not 3579 defined, instead of checking for FNM_PATHNAME, because some 3580 <unistd.h> define the later without defining the former. 3581 Reported by Thomas König. 3582 3583 * create.c (dump_file): Cast alloca results, for those 3584 compilers not processing void * properly. 3585 Reported by Kaveh R. Ghazi. 3586 3587 * Makefile.in: Get prefix and exec_prefix from configure. 3588 Reported by Andreas Schwab, Christian T. Dum and Dean Gaudet. 3589 3590 * src/port.c: Delete mkdir (and rmdir), rename, strstr and 3591 ftruncate replacements. 3592 Reported by Kaveh R. Ghazi (for memset and strstr). 3593 Reported by Bruno Haible (for mkdir and rename). 3594 35951994-08-05 François Pinard <pinard@iro.umontreal.ca> 3596 3597 * tar.h: Replace msg_file by stdlis. 3598 * buffer.c, gnu.c, list.c, diffarch.c: Idem. 3599 3600 * tar.c (main): Print version on stdout, not stderr. 3601 3602 * tar.h: Unconditionnaly insert the pad. Why play the game of 3603 forcing the compiler to do it for us? (Hum! I'm not so sure.) 3604 Reported by Bruno Haible. 3605 3606 * list.c (read_header): Initialize signed_sum to 0. Use this 3607 opportunity for slightly reorganizing the code around. 3608 Reported by Anders Andersson, Andrey A. Chernov, Bruno Haible 3609 and Chris Ransom. 3610 3611 * tar.c: Declare name_buffer_length as size_t instead of int. 3612 Reported by Andreas Schwab, J.T. Conklin, Kaveh R. Ghazi and 3613 Robert E. Brown. 3614 3615 * rmt.h: Have the NO_REMOTE case be a particular case of the 3616 other, for rmtopen and rmtcreat were not transmitting the proper 3617 number of parameters to open and creat (since 26 July 1994). 3618 Reported by Andreas Schwab. 3619 3620 * extract.c (extract_archive): Delay changing owner to after 3621 doing utime, for keeping long enough the permission of utime'ing. 3622 (extract_archive, restore_saved_dir_info): Idem for directories. 3623 Reported by Jonathan I. Kamens. 3624 3625 * tar.h: Change malloc_dbg to dmalloc, mutatis mutandis. 3626 3627 * tar.h: Undefine many macros if stat macros found to be 3628 broken. Define mkfifo only if configure did not find it. 3629 Include <sys/param.h> if not _POSIX_SOURCE, then <unistd.h> if 3630 we have it, than "pathmax.h". Move _POSIX_VERSION dependent 3631 code further down. Do not declare getcwd if we do not have it. 3632 * tar.c: Do not include <unistd.h>, now in "tar.h". 3633 Reported by Bernard Chen, Jean-Michel Soenen, John L. 3634 Chmielewski and Kaveh R. Ghazi. 3635 3636 * tar.h: Define DEV_BSIZE, ST_BLKSIZE and ST_NBLOCKS, 3637 borrowing this code from both fileutils-3.9's "lib/system.h" and 3638 textutils-1.9's "system.h". 3639 * create.c (dump_file): Straighten the test for sparseness, 3640 which was requiring one block too much, most probably for trying 3641 to get around DEV_BSIZE/st_blksize confusion. Use ST_NBLOCKS, 3642 instead of computing a variable block_size and doing specific 3643 tests for HP-UX or Linux. Also rewrite the test so it works 3644 when ST_NBLOCKS is unsigned. 3645 Reported by Bruno Haible, Dean Gaudet, Dick Streefland, Harald 3646 König, Jim Meyering, Kai Petzke, Kaveh R. Ghazi and Torkel Hasle. 3647 36481994-08-04 François Pinard <pinard@iro.umontreal.ca> 3649 3650 * tar.c: Do not include <unistd.h> if we do not have it. 3651 Reported by Kaveh R. Ghazi. 3652 3653 * Makefile.in (RTAPELIB): Prefix by $U for unprotoization. 3654 Reported by Kaveh R. Ghazi and Christian T. Dum. 3655 3656 * port.c: Remove many static specifiers. 3657 Reported by Demizu Noritoshi, Kaveh R. Ghazi and William Bader. 3658 3659 * rtapelib.c (__rmt_open): Replace system by remote, twice. 3660 Reported by Ben A. Mesander, Christian T. Dum, Demizu Noritoshi 3661 and Kaveh R. Ghazi. 3662 3663 * tar.c (addname): Replace a forgotten EX_SYSTEM by 3664 TAREXIT_FAILURE. 3665 Reported by Demizu Noritoshi, James W. McKelvey, Kaveh R. 3666 Ghazi and Robert E. Brown. 3667 36681994-08-02 François Pinard <pinard@iro.umontreal.ca> 3669 3670 * Prerelease 1.11.3. 3671 3672 * tar.c (assign_string): New routines. 3673 * create.c (dump_file, start_header), extract.c 3674 (extract_archive), list.c (list_archive, read_header), 3675 buffer.c (open_archive), diffarch.c (diff_archive): Use 3676 assign_string for setting these variables to a string value or 3677 NULL. 3678 * buffer.c (open_archive): Sets current_file_name, 3679 current_link_name and save_name to NULL. 3680 (close_archive): Free each of them if not NULL. 3681 (fl_write): Take a copy of save_name into cursor, and advance the 3682 cursor instead, because save_name should stay free-able. 3683 Reported by Dave Gentzel, Harald Anlauf, Mark Clements, Robert 3684 Weissenfels, Ronald van Loon, Tsutomu Yamada and Vic Abell. 3685 3686 * extract.c (extract_archive): Use xstrdup, for clarity. 3687 * gnu.c (add_dir): Idem. 3688 3689 * list.c (print_header): Correct a little bug by which 3690 non-symbolic links were not printed properly quoted. 3691 3692 * diffarch.c (diff_archive): Allocate tmpbuf to the proper 3693 size. NAMSIZ + 2 is not necessarily enough. 3694 36951994-08-01 François Pinard <pinard@iro.umontreal.ca> 3696 3697 * tar.h: Refresh str*/mem* configured declarations. Among 3698 other things, this will solve previously missing #undef's. 3699 * rmt.h: Revise strchr configured declaration. 3700 * *.c: Replace bzero by memset, bcopy by memcpy, bcmp by 3701 memcmp, index by strchr and rindex by strrchr. 3702 * port.c: Delete functions bzero and bcmp, said to not exist 3703 on Minix. AC_MINIX in configure.in should guarantee POSIX things. 3704 Reported by Drew Trieger, Hugh Secker-Walker and Vic Abell. 3705 3706 * tar.h, tar.c, buffer.c, update.c: Change CMD_* to COMMAND_*. 3707 3708 * buffer.c (open_archive): Use strcmp to compare archive name 3709 to `-', instead of doing it explicitely. Just for clarity. 3710 3711 * tar.h, tar.c, buffer.c: Replace ar_files by 3712 archive_name_array, n_ar_files by archive_names and ar_files_len 3713 by allocated_archive_names. Replace the index cur_ar_file by 3714 archive_name_cursor, which is a cursor in archive_name_array. 3715 3716 * tar.c (main): Move the initialization of 3717 archive_name_array at beginning, taken from options routine. 3718 Free it at end of main. 3719 (options): Use xrealloc instead of ck_realloc for archive_name, 3720 for the already saved names to be preserved. 3721 Reported by Per Bojsen. 3722 3723 * tar.h, tar.c: Replace name_file by namefile_name. 3724 * tar.c: Replace n_ind by name_array, n_indused by names, 3725 n_indalloc by allocated_names, and n_indscan by name_index. 3726 Replace namef by name_file, n_argv by names_argv and n_argc by 3727 names_argc. 3728 (main): Make an initial allocation for name_array at beginning, 3729 moved out from name_add, free it at end of main. 3730 3731 * buffer.c (close_archive): Free ar_block at end. 3732 37331994-07-30 François Pinard <pinard@iro.umontreal.ca> 3734 3735 * tar.h [WITH_MALLOC_DBG]: Include "malloc_dbg.h". 3736 3737 * create.c (create_archive): Do not attempt creating a 3738 directory summary file if -G, since -G sets gnu_dumpfile to 0. 3739 Reported by Alexander Dupuy. 3740 3741 * create.c (dump_file): Avoid a NULL dereference with -G when 3742 trying to dump an empty directory. 3743 * gnu.c (add_dir_name): Same thing. 3744 Reported by Rainer Orth. 3745 3746 Correction for the improper `data differs' diagnostic given when 3747 the continuation of a multi-volume was compared. 3748 * diffarch.c (diff_archive): If multi-volume, update save_name 3749 and save_totsize before calling wantbytes. 3750 * buffer.c (wantbytes): If multi-volume, update save_sizeleft. 3751 Reported by Andreas Schwab, Denis Fortin, François Pinard, 3752 Hiroyuki Bessho, Olaf Schlueter, Simon Wright and Saul Lubkin. 3753 37541994-07-30 François Pinard <pinard@iro.umontreal.ca> 3755 3756 * tar.c (options): Implement DEVICE_PREFIX and DENSITY_LETTER. 3757 Reported by Danny R. Johnston. 3758 3759 * gnu.c (gnu_restore): Use CURRENT_FILE_NAME abbreviation. 3760 * extract.c (extract_archive): Idem. 3761 Reported by Timothy Fossum. 3762 37631994-07-29 François Pinard <pinard@iro.umontreal.ca> 3764 3765 * create.c (dump_file): Abort if no memory for a possible 3766 link, remove related bogus code, and the variable nolinks. 3767 Reported by Andreas Schwab. 3768 3769 * create.c (dump_file): Detect file sparseness correctly for 3770 Linux ext2 filesystem. 3771 Reported by Kai Petzke. 3772 3773 * port.c (link) [!MSDOS]: Do not call setmode. 3774 Reported by Richard Deal. 3775 3776 Reorganization for `tar -d' to provide a different exit status. 3777 * tar.h: Replace errors by exit_status. Declare TAREXIT_*. 3778 * buffer.c (child_open): Exit with exit_status. 3779 * tar.c (main): Initialize exit_status to TAREXIT_SUCCESS, and 3780 exit with exit_status. 3781 * buffer.c, diffarch.c, gnu.c, list.c, port.c, 3782 rmt.c, tar.c, update.c: Replace EXIT_FAILURE by 3783 TAREXIT_FAILURE, and EXIT_SUCCESS by TAREXIT_SUCCESS. 3784 * tar.h (ERROR), create.c (dump_file): Set exit_status to 3785 TAREXIT_FAILURE instead of increasing errors. 3786 * diffarch.c (sigh, diff_sparse_files): On differences, set 3787 exit_status to TAREXIT_DIFFERS if nothing more serious already. 3788 Reported by Tilman Schmidt. 3789 3790 * rmt.c: Define EXIT_FAILURE and EXIT_SUCCESS if not already. 3791 * rtapelib.c: Define EXIT_ON_EXEC_ERROR to 128 and use it. 3792 37931994-07-27 François Pinard <pinard@iro.umontreal.ca> 3794 3795 * diffarch.c (sigh): Increment errors, so a difference will 3796 yield a non-zero exit status at end. 3797 Reported by Nick Holloway. 3798 3799 * tar.h: Rename TARERROR to WARN, then add ERROR which is similar, 3800 but increments the errors counter. 3801 * *.c: Replace all TARERROR by WARN or ERROR, deciding for each 3802 case. Many errors were not reflected in exit status. 3803 3804 Reported by Carl Streeter, Esa Karell, George Chyu, Ian Jackson, 3805 Judy Ricker, Massimo Dal Zotto, Roland McGrath, Tilman Schmidt 3806 and Torkel Hasle. 3807 3808 * buffer.c (child_open): Exit with EXIT_FAILURE if any error. 3809 3810 * rtapelib.c: Use error for reporting errors. 3811 (do_command): New name for command. 3812 (get_status): New name for status. 3813 3814 * buffer.c: Remove definition of MAGIC_STAT. 3815 (close_archive): Do not check MAGIC_STAT for an exit value, since 3816 this value is never returned. 3817 3818 * *.c: Use TARERROR or exit with EXIT_FAILURE, instead of various 3819 esoteric statuses. Normalize using TARERROR with an exit status, 3820 instead of calling TARERROR with 0 first, then _exit. On exit 3821 calls, use EXIT_SUCCESS instead of 0. 3822 * tar.c: Do not use the exit status anymore for outputting an 3823 error counter value. Wrap around was creating spurious success. 3824 * tar.h: Remove EX_* definitions for tar exit statuses. 3825 Reported by Bob Mende and Torbjorn Granlund. 3826 38271994-07-26 François Pinard <pinard@iro.umontreal.ca> 3828 3829 * tar.h: Add f_rsh_command variable. 3830 * tar.c: Add and process --rsh-command option. 3831 * buffer.c (open_archive, child_open, new_volume): Pass 3832 f_rsh_command to rmtopen and rmtcreat calls. 3833 * rmt.h (rmtopen, rmtcreat): Pass a supplementary argument. 3834 * rtapelib.c (__rmt_open): Accept and process a command 3835 argument, to replace rsh. 3836 Reported by Jonathan I. Kamens. 3837 3838 * tar.h: Instead of including <sys/file.h> with BSD42 or 3839 <fcntl.h> for V7, merely include <fcntl.h> if it exists, 3840 otherwise <sys/file.h>. 3841 * buffer.c, diffarch.c, extract.c, list.c, 3842 port.c, update.c: Do not include <fcntl.h> or 3843 <sys/file.h>, because they are indirectly included through 3844 "tar.h". 3845 3846 * create.c (dump_file): Remove the BSD42 conditional. If not 3847 f_sparse_files, initialize upperbound as when not BSD42. 3848 Reported by Alan Bawden, Claude Scarpelli, Laurent 3849 Sainte-Marthe, Noah Friedman, Reuben Sumner, Tom Quinn and 3850 William Bader. 3851 38521994-07-24 François Pinard <pinard@iro.umontreal.ca> 3853 3854 * tar.h: Merely define valloc as being malloc if valloc does 3855 not exist. 3856 * port.h: Remove valloc, which was only a dummy for malloc. 3857 Reported by Cliff Krumvieda, Francois Pinard, Henrik Bakman, 3858 J.T. Conklin, Nelson H.F. Beebe and Tilman Schmidt. 3859 38601994-07-22 François Pinard <pinard@iro.umontreal.ca> 3861 3862 * create.c (start_header): Cast NAMSIZ to size_t before 3863 comparing it to strlen result. 3864 Reported by Mark Frost. 3865 3866 * tar.c (main): Zero out label_pattern before compiling in 3867 regular expressions, instead of using uninitialized memory. 3868 Reported by Holger Teutsch. 3869 3870 * tar.c [!FNM_PATHNAME]: Include fnmatch.h only if unistd.h fails 3871 to define this symbol. 3872 Reported by Alan Modra, Christian T. Dum, Eddy ?, John 3873 Oleynick and Richard Lloyd. 3874 3875 * buffer.c, diffarch.c, rtapelib.c, update.c: 3876 Include <sys/io/trioctl.h> before <sys/mtio.h>, if it exists. 3877 Reported by Kaveh R. Ghazi. 3878 3879 * tar.c (options): Use defined OPTION_* constants instead of 3880 anonymous numbers for long options not having a short option form. 3881 3882 * rmt.h [!MTIOCTOP]: Do not define RMTIOCTL, so __rmt_ioctl 3883 will not be called if it has not been compiled in rtapelib.c. 3884 3885 * tar.h: Add CMD_TOO_MANY. 3886 * tar.c (main): Use CMD_TOO_MANY, and get rid of badopt label. 3887 Reported by David J. MacKenzie. 3888 3889 * tar.c (usage): New name for describe(). Rewritten with 3890 better help formatting and more logical grouping of options. 3891 Accepts an exit status argument. Callers adapted. 3892 Reported by Richard O'Neill. 3893 38941994-07-20 François Pinard <pinard@iro.umontreal.ca> 3895 3896 * port.c (rename): Constify the arguments. 3897 Reported by Elmar Heeb, Jeff Prothero and John Clark. 3898 3899 * tar.c (main): Declare version_string locally. 3900 * version.c: Deleted. 3901 * Makefile.in: Adjusted. 3902 39031994-07-19 François Pinard <pinard@iro.umontreal.ca> 3904 3905 * tar.h: Merge "port.h" towards the beginning of tar.h. 3906 Include <stdio.h> and <errno.h>, and define errno if needed. 3907 * *.c: Do not include "port.h" anymore after "tar.h", do not 3908 include <stdio.h>, <errno.h> nor <sys/types.h>. Also move 3909 "tar.h" as the first file included in every module. This 3910 would solve, among other things, the problem of RE_DUP_MAX 3911 being redefined by <limits.h>, when included after "regex.h". 3912 * port.h: Deleted. 3913 * Makefile.in: Adjusted. 3914 Reported by Alan Modra, Christian T. Dum, Dimitris Fousekis, 3915 John David Anglin, Matthew Braun, Michael Maass, Richard Lloyd 3916 and Stefan Skoglund. 3917 3918 * create.c (dump_file): Do not cast alloca result to (char *). 3919 The problem reported was that alloca result was seen as int, but 3920 with the changes just made, alloca should be properly declared. 3921 Reported by Bryant Fujimoto and Michael Kubik. 3922 39231994-07-06 François Pinard <pinard@iro.umontreal.ca> 3924 3925 * create.c, extract.c [HAVE_UTIME_H]: Instead of _POSIX_VERSION, 3926 for choosing to include <utime.h>. 3927 Reported by Carl Swanson and Thomas Krebs. 3928 39291994-07-05 François Pinard <pinard@iro.umontreal.ca> 3930 3931 * tar.c: Replace DEF_AR_FILE with DEFAULT_ARCHIVE, replace 3932 DEFBLOCKING with DEFAULT_BLOCKING. 3933 3934 * rtapelib.c: Replace "??'" by "?? '" at two places in a 3935 comment, so avoiding Pyramid's DC/OSx compiler to complain about 3936 ANSI trigraph sequences. Even comments can trigger bugs, now! 3937 Reported by Mark Frost. 3938 3939 * tar.h: Declare valloc. 3940 * buffer.c, diffarch.c: Remove declaration for valloc. 3941 3942 * testpad.c: Deleted. 3943 * tar.h: Do not include "testpad.h" anymore. 3944 * Makefile.in: Delete testpad matters. 3945 3946 * buffer.c (new_volume): Inside case 'n', strcpy into r then 3947 assign r to p, instead of strcpy'ing directly into p, for making 3948 the module const clean. 3949 39501994-07-03 François Pinard <pinard@iro.umontreal.ca> 3951 3952 Rename a few variables to avoid shadowing variables or functions: 3953 * list.c (print_header): Change name to quoted_name. 3954 * buffer.c (child_open): Change pipe to local_pipe. 3955 * extract.c (extract_archive): Change namelen to namelen_bis. 3956 * rtapelib.c (__rmt_open): Change system to remote. 3957 3958 * tar.c (options): Add two missing arguments to getoldopt 3959 call, NULL is not necessarily implied on all systems. 3960 3961 * list.c (print_header): Add a few missing long specification 3962 in formats. 3963 * diffarch.c (compare_chunk, diff_sparse_files): Idem. 3964 * port.c (msg, msg_perror): Idem. 3965 3966 * tar.h: Include prototypes for all functions which call from 3967 one module to another. Declare voidstar (use it everywhere 3968 instead of PTR). Move in the include <sys/stat.h> from 3969 <port.h>, and the include of option.h from tar.c and 3970 getoldopt.c, waiting for a better solution for all these things. 3971 * port.c: Removed PTR declaration and including <sys/stat.h>. 3972 * getoldopt.c, tar.c: Remove including "option.h". 3973 39741994-07-02 François Pinard <pinard@iro.umontreal.ca> 3975 3976 * *: Protoized all function headers. Added static to 3977 functions which can take it. Add many const specifiers. Remove 3978 unused variables. 3979 3980 * port.c (xmalloc): Delete function, do not mask the true one. 3981 * port.c (ck_malloc): Use xmalloc, waiting for annihilation. 3982 * port.c (ck_realloc): Use xrealloc, waiting for annihilation. 3983 * *: Begin switching from ck_malloc (or even pure malloc) to 3984 xmalloc. Same for ck_realloc (pure realloc) to xrealloc. 3985 Doing this correctly is a delicate matter, which I'll continue 3986 without reporting it anymore, while doing other modifications. 3987 3988 * *: Replace msg and msg_perror calls by TARERROR macro calls. 3989 Capitalize first word of all error messages, remove ending 3990 punctuation or newline. Systematically avoid contractions for 3991 `Cannot' and `Could not'. Always write `WARNING:' all in capitals. 3992 * tar.h: Declare TARERROR as calling error(). Rename 3993 variable tar to program_name. 3994 * tar.c (main, options), buffer.c (child_open), port.c 3995 (msg, msg_perror), gnu.c (gnu_restore): Rename variable tar to 3996 program_name. 3997 * gnu.c (gnu_restore): Remove a spurious repetition of 3998 program_name in error message. 3999 40001994-07-01 François Pinard <pinard@iro.umontreal.ca> 4001 4002 * buffer.c, create.c extract.c, gnu.c, list.c, 4003 names.c, rmt.c, tar.c, update.c: Remove all (void) 4004 prefixes to function calls. There are limits to lint clutter. 4005 40061994-06-30 François Pinard <pinard@iro.umontreal.ca> 4007 4008 * port.h: Remove definition of const. Let configure do it. 4009 4010 * tar.h, rmt.c, rtapelib.c, version.c, testpad.c: Add a block 4011 for including <config.h> or "config.h". If "tar.h" was included 4012 everywhere, the block will only be needed there. 4013 4014 * *.[ch]: Reindented to GNU standards (they were not far). 4015 Got rid of all `* ' left prefixes in comments and refilled them. 4016 There is still a lot of cosmetic changes needed everywhere. 4017 I will not report them any more, doing them along the way of 4018 other things in the future. 4019 4020 * Makefile.in: New file. 4021 4022 * Split distribution into a few subdirectories, for easing 4023 maintainance. 4024 4025 * Taking over maintenance duties. 4026 40271993-08-31 David J. MacKenzie <djm@goldman.gnu.ai.mit.edu> 4028 4029 * rmt.c [M_UNIX]: Include sys/tape.h instead of sys/mtio.h. 4030 Reported by Drew Sullivan and William Bader. 4031 40321993-07-29 David J. MacKenzie <djm@wookumz.gnu.ai.mit.edu> 4033 4034 * Makefile.in (config.status): Run config.status --recheck, not 4035 configure, to get the right args passed. 4036 40371993-07-19 David J. MacKenzie <djm@churchy.gnu.ai.mit.edu> 4038 4039 * Makefile.in (libdir): Use standard GNU value -- 4040 $(exec_prefix)/lib, not /etc. 4041 40421993-07-08 David J. MacKenzie <djm@goldman.gnu.ai.mit.edu> 4043 4044 * Makefile.in (installdirs, configure, config.status, 4045 Makefile): New targets. 4046 40471993-06-14 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 4048 4049 * Makefile.in (.c.o): Put -I. before -I$(srcdir), and make 4050 $(CFLAGS) last. 4051 40521993-05-22 The King <elvis@graceland.gnu.ai.mit.edu> 4053 4054 * extract.c (extract_archive, restore_saved_dir_info): Print 4055 mode in octal, not in decimal. 4056 Reported by Scott S. Bertilson. 4057 40581993-03-26 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 4059 4060 * configure.in: Better way of detecting HP-UX. 4061 Reported by Noah Friedman. 4062 40631993-03-25 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4064 4065 * version.c: Released version 1.11.2. 4066 4067 * Makefile.in (dist): Do the link differently; some of the 4068 files have changed filesystems which makes it more complex. 4069 4070 * Makefile.in (dist, shar): Use gzip instead of compress. 4071 4072 * create.c (dump_file): Test for curdev == -1, not curdev < 0. 4073 Some losing NFS systems give negative device numbers sometimes. 4074 Reported by Thorbjxrn Willoch. 4075 40761993-03-19 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4077 4078 * buffer.c (new_volume): Write the global volume number to the 4079 volno file before running the info script, so that the script 4080 can look at it. 4081 40821993-03-17 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4083 4084 * tar.c (describe, long_options): Changed --compress-block to 4085 --block-compress. 4086 (options): Fixed f_compress_block sanity check error message 4087 to give the correct name of the option. 4088 40891993-03-16 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4090 4091 * extract.c (extract_archive): case LF_DIR: Do chown when 4092 necessary. Don't bother jumping to set_filestat for 4093 f_modified; repeat the chmod code here. Replace `break', 4094 deleted on 2 September 1992. 4095 4096 * tar.c (describe, long_options, options): Added gzip options 4097 and use-compress-program option. 4098 * tar.h: Added new compression options. 4099 * buffer.c (child_open, open_archive): Use new compression options. 4100 4101 * create.c (start_header): Only mask off high bits when 4102 creating old-style archives. 4103 * list.c (decode_header): Mask off potentially misleading 4104 high bits from the mode when reading headers. 4105 Reported by Paul Eggert. 4106 41071993-03-15 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4108 4109 * extract.c (extract_archive): Put arguments in the right 4110 order for error message. 4111 Reported by Bruno Haible. 4112 4113 * create.c (deal_with_sparse): If the last byte was null, we 4114 didn't write it out. 4115 4116 * gnu.c, create.c, extract.c, diffarch.c, list.c: 4117 Replace malloc calls with ck_malloc and realloc with ck_realloc. 4118 Reported by Jonathan Kamens. 4119 4120 * tar.c (describe): Improve doc for -L. 4121 4122 * tar.c (name_next): Don't apply exclusion to explicitly named 4123 files. 4124 4125 * tar.c (long_options, describe): Added new-volume-script as 4126 an alias for info-script. 4127 4128 * extract.c (extract_archive): LF_DUMPDIR case; misplaced paren. 4129 4130 * extract.c (extract_archive): extract_file case, first if, 4131 include space for null in namelen computation. 4132 4133 * extract.c (extract_sparse_file): Use value returned by write 4134 to properly create error message. 4135 4136 * create.c (create_archive): Don't assume we have anything to 4137 dump. 4138 4139 * buffer.c (open_archive): Set current_file_name for the 4140 volume header so that verbose listings work properly. 4141 4142 * Makefile.in (realclean): Added getdate.c. 4143 4144 * create.c (deal_with_sparse): If exactly 26 elements in 4145 sparsearray, only 25 were written. 4146 Reported by Jim Murray. 4147 4148 * create.c (deal_with_sparse): If the file ends with a zero 4149 block, the last byte was not written. This is fixed in create 4150 rather than extract: if amidst_data is not set at EOF, put out a 4151 block with just the last byte of the file. 4152 Reported by Jim Murray. 4153 41541993-01-14 David J. MacKenzie <djm@kropotkin.gnu.ai.mit.edu> 4155 4156 * tar.c: Include fnmatch.h after port.h to make sure we get our FNM_* 4157 (e.g. on HPUX 8). 4158 41591992-11-24 David J. MacKenzie <djm@goldman.gnu.ai.mit.edu> 4160 4161 * tar.c (addname), gnu.c (read_dir_file) [HAVE_GETCWD]: Instead of USG. 4162 4163 * port.h, rmt.h [HAVE_STRING_H]: Instead of USG. 4164 4165 * port.h: Add dir header decls. 4166 * create.c, gnu.c: Use SYSNDIR, SYSDIR, and NDIR 4167 instead of BSD42 and USG. Rename DP_NAMELEN to NLENGTH. 4168 Use `struct dirent' instead of `struct direct'. 4169 * create.c, gnu.c, tar.c: Remove dir header decls. 4170 41711992-11-18 David J. MacKenzie <djm@goldman.gnu.ai.mit.edu> 4172 4173 * tar.c: Change FNM_TARPATH to FNM_LEADING_DIR to match change 4174 in fnmatch.[ch]. 4175 41761992-10-02 David J. MacKenzie <djm@goldman.gnu.ai.mit.edu> 4177 4178 * tar.c (describe): Fix some tab alignments. 4179 4180 * Makefile.in (SRC3): Add getdate.c, for systems without bison/yacc 4181 (like MS-DOS). 4182 4183 * diffarch.c (diff_sparse_files): Add missing arg to fprintf calls. 4184 4185 * extract.c (extract_archive, restore_saved_dir_info), 4186 buffer.c (child_open), list.c (decode_header, print_header): 4187 Delete unused vars. 4188 4189 * port.c [__MSDOS__]: Have strstr, rename, and mkdir. Don't 4190 define ck_pipe. 4191 4192 * buffer.c, tar.c (init_volume_number, closeout_volume_number), 4193 create.c (write_long): Declare as void, not int, since they 4194 don't return a value. 4195 41961992-09-22 Michael I Bushnell <mib@wookumz.gnu.ai.mit.edu> 4197 4198 * buffer.c (close_archive): Removed leftover `break' from when 4199 this was a switch. 4200 42011992-09-22 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 4202 4203 * create.c, port.h: indented #pragma directives with 1 space. 4204 42051992-09-18 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4206 4207 * All source files: re indented using GNU indent. 4208 4209 * rtapelib.c (__rmt_read): Only read the amount left in the 4210 buffer; otherwise a broken rmt server (which puts too much 4211 data out) could overwrite past our buffer. 4212 42131992-09-17 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4214 4215 * configure.in: Check for getpwuid and getgrgid. 4216 Reported by J.T. Conklin. 4217 4218 * create.c: Throughout, use struct utimbuf rather than array 4219 of longs. 4220 Reported by J.T. Conklin and Michael Ellis. 4221 4222 * Makefile.in (SRC3, AUX): Move alloca.c to SRC3. 4223 (OBJ3): Add @ALLOCA@. 4224 4225 * Makefile.in (getdate.c): Look in srcdir for getdate.y. 4226 4227 * buffer.c (close_archive): We can't check WTERMSIG 4228 meaningfully unless we already know tha WIFSIGNALED is true. 4229 (There is no guarantee it WTERMSIG will return zero when 4230 WIFSIGNALED is false.) 4231 * port.c (rmdir, mkdir): Check WIFSIGNALED rather than 4232 WTERMSIG. 4233 4234 * Makefile.in (getdate.c): Use $(YACC) instead of `yacc'. 4235 42361992-09-15 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4237 4238 * version.c: Released version 1.11.1. 4239 4240 * Makefile (AUX): Added NEWS. 4241 4242 * Makefile.in (rmt): Added $(LIBS). 4243 4244 * mangle.c (extract_mangle): Null terminate link name for 4245 losing archives missing it. 4246 4247 * configure.in: Added tests for libraries needed on Solaris. 4248 4249 * Makefile.in: added target and rule for getdate.c: getdate.y; 4250 some makes don't have one built in. 4251 42521992-09-14 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4253 4254 * tar.c (options, main): Advise use of --help rather than 4255 +help. 4256 Reported by J.T. Conklin. 4257 4258 * create.c (write_long): Using hstat here is a Bad Idea, and 4259 totally unnecessary at that. 4260 4261 * list.c (read_header): Compute both signed and normal 4262 checksums. 4263 Reported by Robert E. Brown. 4264 4265 * diffarch.c, buffer.c: Declare valloc as void* rather than 4266 char*. 4267 Reported by Robert E. Brown. 4268 4269 * Makefile.in: Don't install info files. 4270 4271 * port.h: Undefine index and rindex if necessary; some 4272 string.h's define them for us. 4273 4274 * tar.c (addname): Missing braces after if. 4275 * gnu.c (read_dir_file): Missing braces after if. 4276 4277 * names.c: Add include of <stdio.h>, 4278 4279 * create.c (start_header): Set current_file_name so that 4280 print_header, used for verbose create, works properly. 4281 (dump_file): Set current_link_name when setting up symlink 4282 and hardlink records. 4283 Reported by Robert Crowe. 4284 4285 * configure.in: Define BSD in the presence of /sdmach or 4286 /../../mach. 4287 Reported by Robert E. Brown. 4288 4289 * configure.in: Check for malloc was scrambled. 4290 42911992-09-11 David J. MacKenzie <djm@nutrimat.gnu.ai.mit.edu> 4292 4293 * fnmatch.[ch]: New files. 4294 * wildmat.c: File removed. 4295 * tar.c: Include fnmatch.h and use fnmatch instead of wildmat. 4296 * Makefile.in, makefile.pc: Replace wildmat.o(bj) with fnmatch. 4297 42981992-09-10 David J. MacKenzie <djm@nutrimat.gnu.ai.mit.edu> 4299 4300 * buffer.c, tar.c: Remove redundant decls of getenv, rindex. 4301 4302 * Makefile.in: Add uninstall target. 4303 Define libdir instead of hardcoding /etc for installing rmt. 4304 43051992-09-10 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4306 4307 * list.c (read_header): On second thought, that doesn't work 4308 either, so just store the names in malloced areas. Sigh. 4309 4310 * NEWS: New file. 4311 * README: Removed things that belong in NEWS; point to it. 4312 4313 * list.c (read_header): current_file_name and 4314 current_link_name need to be set to the arrays in head rather 4315 than header; header is the actual read buffer and will change. 4316 4317 * extract.c (extract_archive): 4318 * buffer.c (new_volume): `#' directives need to start in 4319 column 1. 4320 Reported by J.T. Conklin. 4321 43221992-09-09 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4323 4324 * version.c: Release of version 1.11. 4325 4326 * Makefile.in (AUX): Add getpagesize.h. 4327 (AUX): Comment out manuals. 4328 (all): Comment out dependency on tar.info. 4329 4330 * Makefile, configure.in: Arrange to use local malloc on HP-UX. 4331 4332 * port.h Use the canonical Autoconf chunk for alloca instead 4333 of just looking for gcc. 4334 43351992-09-09 Noah Friedman <friedman@nutrimat.gnu.ai.mit.edu> 4336 4337 * port.h: If compiling with gcc, use __builtin_alloca. 4338 43391992-09-08 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4340 4341 * extract.c: Removed long name support from here. 4342 * list.c (read_header): Understand and skip longname/longlink 4343 headers here. Names for current file are stored in new global 4344 variables. All source files except create.c changed to refer 4345 to current_file_name and current_link_name instead of fields 4346 directly from the current header. 4347 43481992-09-03 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4349 4350 * create.c (write_long): New function. 4351 (dump_file): When writing link records or symlink records, use 4352 new write_long function instead of mangling when the link 4353 target is too long. 4354 (start_header): Use write_long instead of mangling for long 4355 names. 4356 * extract.c (saverec): Recognize LF_LONGNAME and LF_LONGLINK. 4357 (saverec): Throughout, use longname and longlink if they are set. 4358 43591992-09-02 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4360 4361 * mangle.c: This is now deprecated; retain extract_mangle for 4362 backward compatibility. 4363 4364 * list.c (print_header): Prevent printing 0 when the gid or uid is 4365 null. 4366 Reported by Chris Arthur. 4367 4368 * list.c (decode_header): Use the gid field when the gid is empty, 4369 and similarly for uid. 4370 Reported by Chris Arthur. 4371 4372 * extract.c: saved_dir_info, saved_dir_info_head: new type and 4373 var. 4374 (extract_archive): When extracting directories, now save info 4375 in saved_dir_info_head. 4376 (restore_saved_dir_info): New function. 4377 * list.c (read_and): Call restore_saved_dir_info at the end of 4378 the run. 4379 Reported by Chris Arthur. 4380 43811992-08-31 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4382 4383 * create.c (create_archive): If there are no names specified, 4384 write nothing on the archive instead of dumping ".". 4385 4386 * buffer.c (open_archive): Useful error message. 4387 4388 * tar.c, tar.h: Recognize f_atime_preserve. 4389 * create.c (dump_file): Implement f_atime_preserve. 4390 4391 * rmt.h (_remdev): Don't require /dev/ to be in remote archive 4392 names; obey new force-local flag. 4393 * tar.c, tar.h: Implement new force-local flag. 4394 Reported by Roland Schemers III. 4395 4396 * tar.c (describe): same-owner and same-order were confused. 4397 4398 * create.c (dump_file): Check for toplevel had sense reversed. 4399 4400 * buffer.c (new_archive): Don't free old_name...when these 4401 come from the command line, they aren't malloced, and it isn't 4402 important to save this trivial amount of memory. 4403 4404 * tar.h: replace ar_file with ar_files, n_ar_files, 4405 cur_ar_files. 4406 * buffer.c (open_archive): multi-volume compressed archives 4407 never worked; give an appropriate error. Change open of 4408 ar_file to open of ar_files[0]. 4409 (writeerror, readerror, flush_archive): use 4410 ar_files[cur_ar_file] instead of ar_file. 4411 (new_archive): Necessary changes to support ar_files. 4412 * tar.c (options): handle multiple tape drive arguments. 4413 44141992-08-28 Michael I Bushnell <mib@wookumz.gnu.ai.mit.edu> 4415 4416 * list.c (decode_header), create.c (start_header), tar.h (TMAGIC): 4417 Undo djm's changes below; tar does not support the final 4418 Posix.1 format; it's bad to make it look like it does. 4419 44201992-07-19 David J. MacKenzie <djm@nutrimat.gnu.ai.mit.edu> 4421 4422 * port.h: Try to prevent redefining major. 4423 * port.c [minix]: Implies HAVE_BZERO. Fix a typo. 4424 4425 * list.c (decode_header): Recognize the final POSIX.1 magic as 4426 well as the early draft magic for ustar. 4427 * create.c (start_header): Create a final POSIX.1 magic string 4428 instead of an early draft string for ustar. 4429 * tar.h (TMAGIC): Remove the trailing blanks. 4430 4431 * rmt.c, rtapelib.c: Use POSIX and STDC headers if available. 4432 * rmt.h: Declare the external functions defined in rtapelib.c. 4433 44341992-07-14 David J. MacKenzie <djm@apple-gunkies.gnu.ai.mit.edu> 4435 4436 * pathmax.h: New file. 4437 * port.h: Include it. 4438 * create.c (create_archive): Allocate PATH_MAX instead of 4439 NAME_MAX for temporary buffer so we don't have to figure out 4440 what NAME_MAX is (portably). 4441 44421992-07-10 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4443 4444 * gnu.c (collect_and_sort_names): write_dir_file has no argument. 4445 44461992-07-06 David J. MacKenzie <djm@nutrimat.gnu.ai.mit.edu> 4447 4448 * port.c (rename): If unlinking the source at the end fails, 4449 unlink the destination instead to avoid leaving a mess. 4450 44511992-07-03 David J. MacKenzie <djm@nutrimat.gnu.ai.mit.edu> 4452 4453 * buffer.c, diffarch.c, update.c, rtapelib.c [HAVE_SYS_MTIO_H]: 4454 Instead of NO_MTIO. 4455 4456 * port.c, tar.h [HAVE_FOO]: Instead of FOO_MISSING. 4457 44581992-06-23 David J. MacKenzie <djm@goldman.gnu.ai.mit.edu> 4459 4460 * rmt.c: Add #ifdefs to work on ISC. 4461 44621992-05-20 David J. MacKenzie <djm@churchy.gnu.ai.mit.edu> 4463 4464 * port.h: Define major, minor, makedev if the system doesn't. 4465 44661992-05-13 Michael I Bushnell <mib@apple-gunkies.gnu.ai.mit.edu> 4467 4468 * gnu.c (add_dir_name): Store legitimate value into 4469 dir_contents when get_dir_contents returns NULL. 4470 44711992-05-07 Michael I Bushnell <mib@apple-gunkies.gnu.ai.mit.edu> 4472 4473 * gnu.c (add_dir_name): Check for return of NULL from 4474 get_dir_contents; see djm's change of Fri Jul 26 01:12:58 1991. 4475 44761992-05-04 David J. MacKenzie <djm@churchy.gnu.ai.mit.edu> 4477 4478 * tar.h: Make comments for option names say -- instead of +. 4479 44801992-04-29 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4481 4482 * tar.c, tar.t: Added +volno-file option. 4483 buffer.c (init_volume_number, closeout_volume_number): New functions. 4484 tar.c (main): Call new functions in the right place. 4485 4486 * buffer.c (fl_write, fl_read): Mod to allow losing tape 4487 drives which use short counts to indicate end of tape 4488 correctly handle the multi-tape stuff. The read half won't 4489 co-exist with f_reblock; there's no way to fix that, of 4490 course. 4491 4492 * tar.c, tar.h: Added new option +show-omitted-dirs. 4493 list.c (read_and): Implemented show-omitted-dirs. 4494 Reported by Karl Berry. 4495 4496 * tar.c, tar.h: Added new option +checkpoint. 4497 buffer.c (fl_read, fl_write): Implemented +checkpoint lazily. 4498 4499 * create.c (dump_file): Added toplevel argument; some devices 4500 can be negative, so the old method was bogus. All callers 4501 changed. 4502 Reported by Max Hailperin. 4503 4504 * tar.c, tar.h: Added new option +ignore-failed-read. 4505 create.c (dump_file): Implemented +ignore-failed-read. 4506 Reported by Bob Mende Pie. 4507 4508 * create.c (finish_sparse_file): Commented out debugging printf. 4509 4510 * tar.c, tar.h: Added new option +remove-files to delete files 4511 after they are added to the archive. 4512 create.c (dump_file): Implemented +remove-files for 4513 everything but directories. I don't think they need it. 4514 45151992-04-28 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4516 4517 * create.c: (dump_file): save_name needs to be set equal to p, 4518 not something inside the header, because the header changes at 4519 the first buffer flush. 4520 45211992-04-24 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4522 4523 * create.c: Djm incorrectly moved the include of port.h to 4524 precede the include of sys/file.h; restored. 4525 4526 * tar.c (main): Cases CMD_EXTRACT and CMD_LIST: declare error 4527 string with const. 4528 4529 * gnu.c (collect_and_sort_names): Leave if around 4530 write_dir_file in place. 4531 45321992-04-22 David J. MacKenzie <djm@churchy.gnu.ai.mit.edu> 4533 4534 * rtapelib.c: SIGTYPE -> RETSIGTYPE. 4535 45361992-03-09 David J. MacKenzie <djm@nutrimat.gnu.ai.mit.edu> 4537 4538 * rtapelib.c: Reformat and make comments more complete. 4539 Rename a few variables for clarity. 4540 45411992-03-05 David J. MacKenzie <djm@nutrimat.gnu.ai.mit.edu> 4542 4543 * tar.c (describe): Document long options as starting with --. 4544 45451992-01-23 David J. MacKenzie <djm@wookumz.gnu.ai.mit.edu> 4546 4547 * tar.c (options): Check get_date return value for error indication. 4548 45491991-12-24 David J. MacKenzie <djm@wookumz.gnu.ai.mit.edu> 4550 4551 * tar.c, gnu.c, extract.c, create.c, port.h, rmt.h [HAVE_UNISTD_H, 4552 _POSIX_VERSION]: Instead of POSIX ifdefs. 4553 45541991-12-20 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4555 4556 * testpad.c (main): flush stderr so perror and fprintf 4557 cooperate right. 4558 45591991-12-18 David J. MacKenzie <djm@wookumz.gnu.ai.mit.edu> 4560 4561 * port.h [MAJOR_IN_MKDEV, MAJOR_IN_SYSMACROS]: To find where to 4562 get major, minor and makedev. 4563 * create.c, list.c, update.c: Don't check USG to include 4564 sys/sysmacros.h. 4565 45661991-12-12 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4567 4568 * mangle.c (extract_mangle): Correctly null terminate name of 4569 link target. 4570 45711991-11-21 Michael I Bushnell <mib@nutrimat> 4572 4573 * create.c (dump_file, at start of ISREG output loop): use 4574 filename from header instead of real name to make sure that we 4575 get the mangled version and not one that is too long and 4576 overflows buffers. 4577 45781991-11-16 David J. MacKenzie <djm@wookumz.gnu.ai.mit.edu> 4579 4580 * tar.h: Use new criteria for STDC version of msg. 4581 45821991-11-02 David J. MacKenzie <djm@wookumz.gnu.ai.mit.edu> 4583 4584 * create.c, gnu.c, tar.c [USG]: Use DIRENT instead of NDIR to select 4585 between dirent.h and ndir.h. 4586 4587 * port.c [FOO_MISSING]: Instead of WANT_FOO, to make sharing code 4588 and configure script with other utilities easier. 4589 [VPRINTF_MISSING, DOPRNT_MISSING]: Instead of FOO_MSG, to select 4590 error reporting routines. 4591 45921991-08-29 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4593 4594 * tar.c (long_options). Fixed info-script long option. 4595 Reported by Eric Norum. 4596 45971991-08-26 David J. MacKenzie <djm@pogo.gnu.ai.mit.edu> 4598 4599 * configure, Makefile.in: Only put $< in Makefiles if VPATH 4600 is being used, because older makes don't understand it. 4601 46021991-08-19 David J. MacKenzie <djm@wookumz.gnu.ai.mit.edu> 4603 4604 * create.c: Indent '#pragma alloca' so non-ANSI compilers 4605 don't choke on it. 4606 46071991-08-14 David J. MacKenzie <djm@geech.gnu.ai.mit.edu> 4608 4609 * list.c (UGSWIDTH): Increase from 11 (sort of like Unix tar) to 4610 18, so that with normal user and group names of <= 8 chars, 4611 the columns never shift in a tar -t listing. 4612 46131991-08-02 David J. MacKenzie <djm@apple-gunkies> 4614 4615 * Makefile.in (dist): Include texinfo.tex and tar.info*. 4616 (install): Install tar.info*. 4617 * configure: Set INSTALLDATA. 4618 4619 * configure: Create config.status. Remove it and Makefile if 4620 interrupted while creating them. 4621 4622 * configure: Check for +srcdir etc. arg and look for 4623 Makefile.in in that directory. Set VPATH if srcdir is not `.'. 4624 * Makefile.in: Add `prefix'. 4625 (tar.info): New target. 4626 46271991-07-30 David J. MacKenzie <djm@apple-gunkies> 4628 4629 * configure [FTIME_MISSING]: Instead of NEED_TZSET. 4630 46311991-07-29 David J. MacKenzie <djm@wombat.gnu.ai.mit.edu> 4632 4633 * port.c [F_CHSIZE]: Additional version. 4634 46351991-07-27 David J. MacKenzie <djm@wombat.gnu.ai.mit.edu> 4636 4637 * rmt.h: Clean up ifdefs. 4638 4639 * makefile.pc: Fix typo. 4640 * port.h [__MSDOS__]: Instead of MSDOS. 4641 [__MSDOS__]: Define off_t. Include io.h and not sys/param.h. 4642 [__TURBOC__]: Use void * and don't define const. 4643 46441991-07-26 David J. MacKenzie <djm@bleen> 4645 4646 * buffer.c: Rename `eof' to `hit_eof' to avoid conflict with an 4647 MSDOS function. 4648 * gnu.c (get_dir_contents): Return NULL, not "\0\0\0\0", on error. 4649 * diffarch.c (diff_archive): Open files in binary mode. 4650 Don't use or free a non-malloc'd return value from get_dir_contents. 4651 * msd_dir.c [__TURBOC__]: Include stdlib.h. 4652 * rmt.h: lseek returns off_t, not long. 4653 4654 * tar.c (describe): -X is +exclude-from, not +exclude. 4655 (names_notfound): Free memory only if amiga, not !unix. 4656 4657 * tar.h, tar.c: Add +null option to make -T read 4658 null-terminated filenames (such as those produced by GNU find 4659 -print0), and disable -C option. 4660 This guarantees that odd filenames will get archived. 4661 * tar.c (read_name_from_file): New function. 4662 (name_next): Call it instead of fgets. 4663 From David J. MacKenzie. 4664 46651991-07-24 David J. MacKenzie <djm@wookumz.gnu.ai.mit.edu> 4666 4667 * create.c [_AIX]: Declare alloca. 4668 4669 * buffer.c (open_archive): Check for successful open before, 4670 not after, fstatting the fd. 4671 46721991-07-23 David J. MacKenzie <djm@wookumz.gnu.ai.mit.edu> 4673 4674 * configure: Only define BSD42 if sys/file.h exists. 4675 If alloca is missing and /usr/ucblib exists (SVR4), use it 4676 instead of -lPW. 4677 4678 * port.h [!__STDC__]: #define const. 4679 * gnu.c (dirent_cmp): Fix args to agree with ANSI C prototype. 4680 * create.c: Declare ck_realloc. 4681 * gnu.c, diffarch.c: Move check for symlinks to after port.h include. 4682 46831991-07-20 David J. MacKenzie <djm@apple-gunkies> 4684 4685 * msd_dir.[ch]: Use POSIX-style `struct dirent' instead of 4686 `struct direct'. 4687 * create.c, gnu.c, tar.c: Adjust callers. 4688 46891991-07-18 David J. MacKenzie <djm@bleen> 4690 4691 * port.c (ck_malloc, ck_realloc): Return PTR, not char *. 4692 * gnu.c, create.c, tar.c: Fix decls. 4693 4694 * port.c: Don't use the preprocessor to guess missing 4695 functions on Unix; let configure do it. 4696 [WANT_GETWD] (getwd): Function removed; not needed because 4697 getcwd is used if needed. 4698 * gnu.c, tar.c [POSIX]: Use getcwd. 4699 4700 * rtapelib.c: Use SIGTYPE instead of testing SIGNAL_VOID. 4701 Default to void (more common these days) instead of int. 4702 4703 * tar.c, gnu.c, mangle.c: Remove VOIDSTAR defn. Use PTR instead. 4704 * port.h: Define PTR. 4705 4706 * gnu.c, tar.c [__MSDOS__ || USG]: Remove incorrect getcwd decl. 4707 [!POSIX]: Put correct one in port.h. 4708 4709 * tar.c (describe): Print on stdout instead of stderr; it's 4710 not so much a usage message (since you have to ask for it 4711 explicitly) as on-line help, and you really need to be able to 4712 page it because it's more than a screen long. 4713 4714 * Make #ifdefs for sys/file.h or fcntl.h, directory header, 4715 sys/mtio.h consistent between files. Use NO_MTIO instead of 4716 tricks with USG and HAVE_MTIO and NO_RMTIOCTL. 4717 * Move decls of ANSI C and POSIX functions to port.h and 4718 use standard headers to declare them if available 4719 [STDC_HEADERS or POSIX]. 4720 * Add many missing function declarations and return types. 4721 * Some places used __MSDOS__, some MSDOS; standardize on __MSDOS__. 4722 * Change S_IF macros to S_IS for POSIX. 4723 * port.h: Define appropriate S_IS macros if missing. 4724 * port.h [POSIX]: Rename macros for testing exit status to conform to 4725 POSIX; use the system's versions if available. 4726 * Use POSIX PATH_MAX and NAME_MAX instead of MAXPATHLEN and MAXNAMLEN. 4727 * port.h: Define PATH_MAX and NAME_MAX. 4728 * create.c, gnu.c, tar.c: Use ck_malloc and free instead of 4729 auto arrays of size PATH_MAX or NAME_MAX, since with pathconf 4730 they might not be constants. 4731 * Move all definitions of O_* to port.h to reduce redundancy. 4732 * Make all source files that now need to include port.h do so. 4733 * port.c: Remove #undefs of WANT_* so you can use -DWANT_* 4734 when compiling, instead of having to edit port.c. 4735 [WANT_DUMB_GET_DATE] (get_date): Function removed. 4736 Even systems without bison can get bison output and compile it. 4737 [WANT_STRING] (index, rindex, bcopy, bzero, bcmp): Functions 4738 removed; the translation is now done by macros in port.h. 4739 * wildmat.c (wildmat): Use POSIX.2 '!' instead of '^' to negate 4740 character classes. 4741 47421991-07-15 David J. MacKenzie <djm@wookumz.gnu.ai.mit.edu> 4743 4744 * testpad.c (main): Return type void. 4745 4746 * port.c [WANT_STRING]: Don't include memory.h if NO_MEMORY_H. 4747 4748 * create.c (dump_file) [AIX]: Fix typo, `allocate' for `alloca'. 4749 * gnu.c (collect_and_sort_names): Move misplaced brace out of #ifdef. 4750 Reported by Minh Tran-Le. 4751 4752 * configure: Also look in sys/signal.h for signal decl. 4753 47541991-07-10 David J. MacKenzie <djm@wookumz.gnu.ai.mit.edu> 4755 4756 * Rename rtape_server.c to rmt.c and rtape_lib.c to rtapelib.c. 4757 4758 * configure, Makefile.in: $(INSTALLPROG) -> $(INSTALL). 4759 47601991-07-09 David J. MacKenzie <djm@wookumz.gnu.ai.mit.edu> 4761 4762 * Most files: Refer to GPL version 2. 4763 * COPYING: Use version 2. 4764 4765 * port.c [__TURBOC__] (utime): New function. 4766 4767 * xmalloc: New function (just calls ck_malloc), for alloca.c 4768 and bison.simple (in getdate.y output). 4769 4770 * Makefile.in (AUX): Include alloca.c and tcexparg.c, a 4771 command line globber for Turbo C. 4772 47731991-07-08 David J. MacKenzie <djm@geech.gnu.ai.mit.edu> 4774 4775 * testpad.c: Open and write to testpad.h instead of stdout, 4776 because some MS-DOS makes (Borland's at least) can't do 4777 redirection in commands. 4778 * Makefile.in: Don't redirect testpad output. 4779 47801991-07-08 Michael I Bushnell <mib@churchy.gnu.ai.mit.edu> 4781 4782 * buffer.c (fl_read): Missing \n in printf. 4783 47841991-07-08 David J. MacKenzie <djm@geech.gnu.ai.mit.edu> 4785 4786 * create.c, extract.c, gnu.c, diffarch.c, tar.c: Comment out 4787 unused variables. 4788 4789 * tar.c (options): Cast get_date arg to VOIDSTAR instead of 4790 `struct timeb *', since on some non-BSD systems the latter is 4791 undefined. 4792 47931991-07-06 David J. MacKenzie <djm@geech.gnu.ai.mit.edu> 4794 4795 * Replace Makefile with configure, Makefile.in, and makefile.pc. 4796 Update README with current compilation instructions. 4797 4798 * port.c [WANT_RENAME] (rename): New function. 4799 48001991-07-03 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4801 4802 * testpad.c (main): Avoid warning from some compilers on array 4803 address. 4804 4805 * rtape_server.c (sys_errlist): Should be declared extern. 4806 Reported by Stuart Kemp. 4807 48081991-07-01 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4809 4810 * Release of version 1.10; appropriate changes to README. 4811 4812 * create.c: Removed printf's about sparse files. 4813 48141991-06-21 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4815 4816 * list.c (skip_extended_headers): Userec was being called in 4817 the wrong place. 4818 48191991-06-20 David J. MacKenzie <djm@geech.gnu.ai.mit.edu> 4820 4821 * tar.h [STDC_MSG]: Use ANSI prototypes for msg and msg_perror, 4822 even if BSD42 is also. 4823 4824 * Makefile: Replace DESTDIR with bindir. 4825 (install): Don't install tar.texinfo. There's no standard 4826 place for texinfo files, and /usr/local/man is inappropriate. 4827 Add TAGS, distclean, and realclean targets and SHELL= line. 4828 4829 * version.c: Move old change history to bottom of ChangeLog. 4830 48311991-06-12 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4832 4833 * rtape_lib.c (__rmt_write) [SIGNAL_VOID]: Instead of USG. 4834 48351991-06-05 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4836 4837 * tar.c (name_match, addname): Ugly hack to handle -C without 4838 any files specified. 4839 tar.h (struct name): New field for ugly hack. 4840 48411991-06-03 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4842 4843 * testpad.c: New file to determine if we need special padding 4844 in struct header in tar.h. 4845 4846 * tar.h (struct header): include padding if necessary, include 4847 testpad.h. 4848 4849 * Makefile: rules to create testpad.h, etc. 4850 48511991-05-22 Michael I Bushnell <mib@churchy.gnu.ai.mit.edu> 4852 4853 * tar.c (options): -L takes an argument. 4854 4855 * rtape_lib.c (__rmt_open): add /usr/bin/nsh to the list of 4856 remote shell programs. 4857 4858 * create.c: define MAXPATHLEN if we don't get it from a system 4859 header file. 4860 4861 * create.c (deal_with_sparse): return a real return value if 4862 we can't open the file. 4863 4864 * tar.c (long_options): +newer takes an argument. 4865 (describe): fix printing in various trivial ways 4866 48671991-05-21 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4868 4869 * tar.c (long_options): +get and +concatentate don't require arguments 4870 48711991-05-20 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4872 4873 * create.c (write_eot): Don't try and write an EOF if we are 4874 already at one. 4875 4876 * port.c (strstr): Looking for null string should return zero. 4877 48781991-05-19 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4879 4880 * tar.c (options): -l doesn't take an argument 4881 4882 * Makefile: Minor fix for SGI 4D defines. 4883 Reported by Andrew Torda. 4884 4885 * rtape_server.c (main.c): For 386/AIX. I'm suspicious about this 4886 one. 4887 * create.c (dump_file): For hidden files on AIX. 4888 gnu.c (collect_and_sort_name, get_dir_contents): AIX hidden file mod. 4889 Reported by Minh Tran-Le. 4890 4891 * tar.c: (name_next): Allow -C inside a file list given to -T. 4892 Reported by David Taylor. 4893 4894 * Makefile: Comment describing presence of USE_REXEC. 4895 4896 * extract.c (extract_archive, case LF_SPARSE): zero check for 4897 last element on numbytes needs to look at value after 4898 converted from octal. 4899 4900 * port.c [HAVE_STRSTR]: Check it, instead of always demanding strstr. 4901 Makefile: Comment describing presence of HAVE_STRSTR option. 4902 49031991-05-19 David J. MacKenzie <djm@churchy.gnu.ai.mit.edu> 4904 4905 * port.c (get_date): Renamed from getdate, to avoid SVR4 conflict. 4906 * tar.c: Call get_date instead of getdate. 4907 49081991-05-10 Noah Friedman <friedman@nutrimat> 4909 4910 * tar.c: added "\n\" to the end of some documentation strings 4911 where they were left off. 4912 49131991-05-09 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4914 4915 * Makefile: added level-0, level-1, and backup-specs to AUX. 4916 * version.c: changed to 1.10 beta. 4917 * README: updated for 1.10 beta release. 4918 49191991-04-02 Michael I Bushnell <mib@godwin> 4920 4921 * create.c (dump_file): HPUX's st_blocks is in 1024 byte units 4922 instead of 512 like the rest of the world, so I special cased 4923 it. 4924 * tar.c: Undo Noah's changes. 4925 49261991-04-01 Noah Friedman <friedman@wookumz.gnu.ai.mit.edu> 4927 4928 (This ought to be temporary until things are fixed properly. ) 4929 4930 * tar.c: (struct option long_options): flag for "sparse" zero if 4931 compiling under hpux. 4932 tar.c: (functon options): case 'S' is a no-op if compiling under 4933 hpux. 4934 49351991-03-30 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4936 4937 * tar.h: new variable tape_length. 4938 4939 * tar.c (options): add new option +tape-length / -L. 4940 4941 * buffer.c (fl_write): Turn #ifdef TEST code for limited tape 4942 length on always, for tape-length option. 4943 4944 * create.c (dump_file): avoid apollo lossage where S_IFIFO == S_IFSOCK. 4945 4946 * buffer.c: include regex.h 4947 * buffer.c (fl_read, open_archive): Use regex routines for 4948 volume header match. 4949 * xmalloc.c: removed file; wasn't necessary. 4950 * tar.c: (main) use ck_malloc instead of xmalloc. 4951 49521991-03-28 Noah Friedman <friedman@goldman> 4953 4954 * regex.c, regex.o: New links. 4955 * tar.c: include regex.h. 4956 * Makefile (OBJ2): Add regex.o. 4957 (regex.o, tar.o): Depend on regex.h 4958 (SRC2, AUX): Add the new files. 4959 49601991-03-23 Noah Friedman <friedman@wookumz.gnu.ai.mit.edu> 4961 4962 * Makefile: added default flags and options for compiling under 4963 hpux. 4964 4965 * Added files alloca.c and xmalloc.c. 4966 49671991-03-23 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> 4968 4969 * port.c [HPUX]: Define WANT_VALLOC. 4970 49711991-03-15 David J. MacKenzie <djm@geech.ai.mit.edu> 4972 4973 * rtape_lib.c [USG && !HAVE_MTIO]: Define NO_RMTIOCTL automatically. 4974 (_rmt_rexec): Temporarily re-open stdin and stdout to 4975 /dev/tty, to guarantee that rexec() can prompt and read the 4976 login name and password from the user. 4977 * Makefile: Mention -DUSE_REXEC. 4978 Reported by Pascal Meheut. 4979 49801991-03-08 Michael I Bushnell <mib@wookumz.ai.mit.edu> 4981 4982 * tar.h, Makefile [HAVE_SIZE_T]: Might be useful for some people. 4983 4984 * gnu.c: lstat->stat define where appropriate 4985 4986 * buffer.c (fl_write): keep track of amount written for +totals. 4987 * tar.c, tar.h: set flag f_totals from +totals option. 4988 * tar.h (f_totals, tot_written): new variables. 4989 * tar.c (main): print total written with CMD_CREATE. 4990 4991 * tar.c (main): return appropriate exit status 4992 49931991-01-17 David J. MacKenzie <djm@apple-gunkies> 4994 4995 * port.c: Remove a spurious `+' between functions (a remnant 4996 of a context diff, apparently). 4997 49981991-01-09 Michael I Bushnell <mib@pogo.ai.mit.edu> 4999 5000 * create.c (where_is_data): Rewritten to be better, and then 5001 #ifdef-ed out. 5002 (deal_with_sparse): Severly pruned. Now we write or don't 5003 write only complete blocks, not worrying about partial blocks. 5004 This simplifies calculations, removes bugs, and elides the 5005 second scan through the block. The first was zero_record, the 5006 second was where_is_data. 5007 50081991-01-07 Michael I Bushnell <mib@wookumz.ai.mit.edu> 5009 5010 * create.c (deal_with_sparse): Second computation (for short 5011 reads) of numbytes increment had subtraction backwards. 5012 Need to handle calling where_is_data better when we did a 5013 short read (it might go past the end of the read), also, set 5014 sparsearray[...].offset in this case too. 5015 50161991-01-04 Jay Fenlason <hack@ai.mit.edu> 5017 5018 * buffer.c: Return a special error code if the archive 5019 you're trying to read starts with a different label than 5020 the one specified on the command line. 5021 50221991-01-02 Jay Fenlason <hack@ai.mit.edu> 5023 5024 * gnu.c: Prepend the current directory to the gnu_dumpfile, so that 5025 -C's won't affect where the output goes. (sigh.) 5026 50271990-12-18 Jay Fenlason <hack@ai.mit.edu> 5028 5029 * gnu.c: Don't complain if the gnudumpfile we're reading info 5030 from doesn't exist. 5031 5032 * create.c: Write out gnudumpfile after finishing writing the archive. 5033 5034 * tar.c: Add +exclude FNAME, and make +exclude-from do what +exclude 5035 used to. 5036 * Make +version an operation, not an option. 5037 * Add +confirmation alias for +interactive. 5038 50391990-12-04 Jay Fenlason <hack@ai.mit.edu> 5040 5041 * tar.c (check_exclude): Don't let MUMBLE match MUMBLE.c or 5042 fooMUMBLE but only foo/MUMBLE. 5043 5044 * mangle.c: New file. 5045 * create.c, extract.c: According changes. 5046 5047 * extract.c: Don't complain when extracting an already existing link. 5048 Don't complain when extracting a directory iff it already exists. 5049 Don't ad u+wx to directories when running as root. 5050 Reported by Chip Salzenberg. 5051 5052 * gnu.c: Make +listed-incremental work. 5053 Reported by Chip Salzenberg. 5054 5055 * port.c: Add the F_FREESP emulation of the ftruncate syscall. 5056 50571990-11-21 Jay Fenlason <hack@ai.mit.edu> 5058 5059 Remove excess \n from lots of msg() calls. 5060 50611990-11-19 Jay Fenlason <hack@ai.mit.edu> 5062 5063 * tar.c: Rename +volume to +label. 5064 50651990-11-16 David J. MacKenzie <djm@apple-gunkies> 5066 5067 * tar.c (describe): Include the default values for -b and -f 5068 (as set in the Makefile) in the message. 5069 50701990-11-15 Jay Fenlason <hack@ai.mit.edu> 5071 5072 * extract.c (extract_archive): Do the utime() call before the 5073 chmod() call, 'cuz some versons of utime() trash the file's mode 5074 bits. 5075 5076 * list.c (read_and): Call do_something on volume headers and 5077 multivol files even if they don't match the names we're looking 5078 for, etc. 5079 50801990-11-06 Jay Fenlason <hack@ai.mit.edu> 5081 5082 * port.c (un-quote-string): Don't try to write a null if there's 5083 already one there. 5084 50851990-11-01 Jay Fenlason <hack@ai.mit.edu> 5086 5087 * buffer.c (new_volume): fflush(msg_file) before reading for 5088 confirmation on new volume. On EOF or error, print error msg and 5089 abort. 5090 50911990-10-29 Jay Fenlason <hack@ai.mit.edu> 5092 5093 * getdate.y: Use new version of getdate(). 5094 5095 * tar.c (name_add): Use sizeof(char *) instead of sizeof(int) 5096 5097 * README: Give the correct return address. 5098 50991990-10-25 Jay Fenlason <hack@ai.mit.edu> 5100 5101 rtape_lib.c [NO_RMTIOCTL]: Instead of RMTIOCTL, so it is on by default. 5102 5103 rmt.h [NO_REMOTE]: Add _isrmt() #define. 5104 5105 gnu.c: Add forward reference for add_dir_name(). 5106 51071990-10-16 Jay Fenlason <hack@ai.mit.edu> 5108 5109 Version 1.09 --- New -G file implementation of gnu-dump stuff. 5110 5111 * tar.c (name_add): Get the calls to ck_realloc and ck_malloc right. 5112 51131990-10-11 Jay Fenlason <hack@ai.mit.edu> 5114 5115 * gnu.c: Fix A couple of typos. 5116 51171990-09-19 David J. MacKenzie <djm@apple-gunkies> 5118 5119 * getdate.y [USG && !DAYLIGHT_MISSING] (ftime): Use `daylight'. 5120 51211990-09-17 Jay Fenlason <hack@ai.mit.edu> 5122 5123 * gnu.c (gnu_restore): Don't use a passed char* for the 5124 file name, use skipcrud+head->header.name, just like everything 5125 else does. This means that gnu_restore will still work with 5126 small buffers, etc. 5127 51281990-09-13 Jay Fenlason <hack@ai.mit.edu> 5129 5130 * tar.c (add_exclude): Don't bus-error if the exclude file doesn't 5131 end with a newline. 5132 51331990-09-09 David J. MacKenzie <djm@albert.ai.mit.edu> 5134 5135 * Makefile (dist): Remove .fname when done. 5136 51371990-09-06 Jay Fenlason <hack@ai.mti.edu> 5138 5139 * gnu.c (gnu_restore): Rember to skip_file() over the directory 5140 contents, even if we don't have to do anything with them. 5141 5142 * create.c, extract.c, diffarch.c: Free sparsearray after we're 5143 done with it. 5144 51451990-09-04 Jay Fenlason <hack@ai.mit.edu> 5146 5147 * Makefile: Include gnu.c in dist 5148 5149 * gnu.c: Move add_dir above read_dir_file so that cc doesn't 5150 complain about add_dir returning void. 5151 51521990-09-02 David J. MacKenzie <djm@apple-gunkies> 5153 5154 * getdate.y: Declare some more functions and add storage 5155 classes where omitted to shut compiler up. 5156 [USG] (ftime): Don't use extern var `daylight'; appears that 5157 some systems don't have it. 5158 51591990-08-29 David J. MacKenzie <djm@apple-gunkies> 5160 5161 * getdate.y (lookup): In the code that allows `Aug.' to be 5162 recognized as `Aug', don't chop off the final `.' from words 5163 like `a.m.', so they can be recognized. 5164 51651990-08-16 Jay Fenlason <hack@ai.mit.edu> 5166 5167 * buffer.c (open_archive): If -O, write verbosity to stderr 5168 instead of stdout. 5169 51701990-08-10 Jay Fenlason <hack@ai.mit.edu> 5171 5172 * getdate.y: Handle an explicit DST in the input string. 5173 Reported by Per Foreby. 5174 51751990-07-16 Jay Fenlason <hack@ai.mit.edu> 5176 5177 * tar.c: rename -g -G +incremental, +listed-imcremental, etc. 5178 51791990-07-13 Jay Fenlason <hack@ai.mit.edu> 5180 5181 * tar.c: Make +newer and +newer-mtime work according to their names. 5182 5183 * gnu.c: If +newer or +newer-mtime, use the time specified on the 5184 command line. 5185 5186 * buffer.c, create.c: Add test to see if dimwit is trying to 5187 archive the archive. 5188 5189 * tar.c (long_options[]): Re-ordered, so that groups of similar 5190 options are next to each other... I think. 5191 5192 (describe): Modified to more closely reflect reality. 5193 51941990-07-06 Jay Fenlason <hack@ai.mit.edu> 5195 5196 * tar.c: Add compile-time option for SYS V (?) style 5197 tape-drive names /dev/rmt/{n}[lmh] 5198 5199 * tar.c: Fix getopt-style stuff so that -C always works correctly. 5200 5201 * gnu.c, tar.c: Make filename to -G optional. 5202 5203 * {all over}: Replace some fprintf(stderr...) calls with calls 5204 to msg(). 5205 5206 * port.c: Make -Dmumble_MSG option on command line override 5207 internal assumptions. 5208 5209 * Makefile: Mention -Dmumble_MSG options 5210 52111990-07-06 David J. MacKenzie <djm@apple-gunkies> 5212 5213 * tar.c (options): Don't change `c' if it is 0, as getopt now 5214 handles that internally. 5215 52161990-07-02 Jay Fenlason <hack@ai.mit.edu> 5217 5218 * gnu.c (new file): Moved all the f_gnudump stuff here where we 5219 can keep track of it easier. Also made -G take a file name where 5220 it stores the inode information about directories so that we can 5221 detect moved directores. 5222 5223 * create.c (dump_file): Changed slightly to work with the new 5224 f_gnudump. 5225 5226 * tar.c: Moved the f_gnudump stuff to gnu.c 5227 5228 * tar.c, extract.c: Added the +do-chown option, which forces tar 5229 to always try to chown the created files to their original owners. 5230 5231 * version.c: New version 1.09 5232 52331990-06-24 David J. MacKenzie <djm@albert.ai.mit.edu> 5234 5235 * create.c: Change ifdefs for directory library header 5236 selection to be like the ones in tar.c. 5237 * Makefile [Xenix]: Link with -ldir to get the dirent.h 5238 directory library. 5239 52401990-06-07 David J. MacKenzie <djm@albert.ai.mit.edu> 5241 5242 * Makefile, buffer.c, diffarch.c [HAVE_MTIO]: Instead of MTIO, as 5243 SCO Xenix defines 'MTIO' for an incompatible tape driver system in 5244 a file included by termio.h. 5245 * tar.h: Don't define size_t for Xenix. 5246 52471990-06-05 Jay Fenlason <hack@ai.mit.edu> 5248 5249 * create.c (dump_file): Only print the 5250 "... is on a different filesystem..." if f_verbose is on. 5251 also add a case for S_IFSOCK and treat it like a FIFO. 5252 (Not sure if that's the right thing to do or not, but it's better 5253 than all those Unknown File Type msgs.) 5254 52551990-05-31 Jay Fenlason <hack@ai.mit.edu> 5256 5257 * port.c [sparc]: Use instead of SPARC since the lowercase version 5258 is defined, and the uppercase one isn't. 5259 52601990-05-22 Jay Fenlason <hack@ai.mit.edu> 5261 5262 * port.c (ck_malloc): if size==0 pretend size=1 5263 (ck_realloc): if(!ptr) call ck_malloc instead. 5264 52651990-05-15 Jay Fenlason <hack@ai.mit.edu> 5266 5267 * diffarch.c (diff_archive): If not f_absolute_paths, and attempt 5268 to open a file listed in the archive fails, try /filename also. 5269 This will allow diff to open the wrong file if both /filename and 5270 filename exist, but there's nothing we can do about that. 5271 52721990-05-11 Jay Fenlason <hack@ai.mit.edu> 5273 5274 * Makefile: Describe new -DMTIO option. 5275 5276 * buffer.c, diffarch.c: Change ifdefs slightly, so that -DMTIO 5277 will include sys/mtio.h even if USG is defined. This is for HPUX 5278 and similar BSD/USG crossovers. 5279 52801990-05-08 Jay Fenlason <hack@ai.mit.edu> 5281 5282 * update.c (update_archive): Call reset_eof() when appropriate. 5283 5284 * buffer.c (reset_eof): New function, that turns of EOF flag, and 5285 re-sets the ar_record and ar_last pointers. This will allow 5286 'tar rf non-existant-file' to not core-dump. 5287 52881990-05-04 David J. MacKenzie <djm@albert.ai.mit.edu> 5289 5290 * tar.c: Recognize the +sparse option. It was documented, but 5291 only the short form (-S) was actually recognized. 5292 52931990-04-17 Jay Fenlason <hack@ai.mit.edu> 5294 5295 * create.c: Don't access location 0 if ->dir_contents is null. 5296 52971990-04-11 Jay Fenlason <hack@ai.mit.edu> 5298 5299 * buffer.c (flush_archive, close_archive, new_volume): Always 5300 check the return value of rmtclose(), and only give a warning msg 5301 if it is <0. Some device drivers (including Sun floppy disk, and 5302 HP streaming tape) return -1 after an IO error (or something like 5303 that.) 5304 53051990-03-23 Jim Kingdon <kingdon@mole.ai.mit.edu> 5306 5307 * tar.c (long_options): Make it so +append +extract +list +update 5308 +catenate and +delete don't take arguments. 5309 53101990-03-12 Jay Fenlason <hack@ai.mit.edu> 5311 5312 * buffer.c (open_archive, fl_write): Set the mtime of the volume 5313 header to the current time. 5314 53151990-03-07 Jay Fenlason <hack@ai.mit.edu> 5316 5317 * buffer.c Fix +compress-block A two character patch from 5318 Juha Sarlin. 5319 Replace #ifdef __GNU__ with #ifdef __STDC__. 5320 (new_volume): If open of new archive fails, ask again, as it 5321 probably is user error. 5322 5323 * tar.c: Replace #ifdef __GNU__ with #ifdef __STDC__ 5324 5325 * port.c: Clean up #ifdef and #defines a bit. 5326 (quote_copy_string): Sometimes the malloc'd buffer would be up to 5327 two characters too short. 5328 5329 * extract.c (extract_archive): Don't declare ind static. 5330 5331 * create.c (dump_file): Don't declare index_offset static. 5332 5333 * diffarch.c: Remove diff_name variable, and always use 5334 head->header.name, which will always work, unlike diff_name, which 5335 becomes trash when the next block is read in. 5336 53371990-03-01 Jay Fenlason <hack@wookumz.ai.mit.edu> 5338 5339 * Makefile: Mention the -NO_REMOTE option. 5340 * port.c [i386]: Fix typo, and define WANT_FTRUNCATE. 5341 53421990-02-26 Jim Kingdon <kingdon@pogo.ai.mit.edu> 5343 5344 * getdate.y: Declare yylex and yyerror as static. 5345 #define yyparse to getdate_yyparse. 5346 53471990-02-25 David J. MacKenzie <djm@albert.ai.mit.edu> 5348 5349 * tar.c: Remove +old option, since it is a valid abbreviation of 5350 +old-archive, which does the same thing. 5351 (describe): A few small cleanups in message. 5352 53531990-02-05 Jay Fenlason <hack@wookumz> 5354 5355 * port.c [sparc]: Define LOSING_MSG, since doprnt_msg doesn't work. 5356 [WANT_GETWD]: Fix typo. 5357 53581990-01-26 Jay Fenlason <hack@wookumz> 5359 5360 Version 1.08 --- Sparse file support added. Also various other 5361 features. 5362 5363 * diffarch.c (compare_chunk): Include correct arguments in 5364 a call to fprintf() for an error msg. 5365 (compare_chunks, compare_dir): First argument is a long, not an int. 5366 5367 * tar.c (options): Use tar variable (argv[0]) as the name to print 5368 in an error msg, instead of a constant "tar". 5369 (confirm): Use external variable char TTY_NAME[] for name of file 5370 to open for confirmation input. 5371 5372 * buffer.c (new_volume): Ditto. 5373 5374 * port.c: Add declaration for TTY_NAME[]. 5375 5376 * rmt.h: Add long declarations for lseek() and __rmt_lseek(); 5377 53781990-01-23 Jay Fenlason <hack@wookumz> 5379 5380 * tar.c, create.c: Create the +newer-mtime option, which is like 5381 +newer, but only looks for files whose mtime is newer than the 5382 given date. 5383 5384 * rtape_lib.c [USG]: Make *both* instances of signal-handler stuff 5385 use void (*foo)(). 5386 53871990-01-11 Jay Fenlason <hack@wookumz> 5388 5389 * getdate.y : Parse European dates of the form YYMMDD. 5390 In ftime(): Init timezone by calling localtime(), and remember that 5391 timezone is in seconds, but we want timeb->timezone to be in minutes. 5392 Reported by Jörgen Haegg. 5393 5394 * rtape_lib.c (__rmt_open): Also look for /usr/bsd/rsh. 5395 Declare signal handler as returning void instead of int if USG is 5396 defined. 5397 5398 * port.c: Declare WANT_GETWD for SGI 4-D IRIS. 5399 5400 * Makefile: Include defines for SGI 4D version. 5401 Reported by Mike Muuss. 5402 5403 * buffer.c (fl_read): Work properly on broken Ultrix systems where 5404 read() returns -1 with errno==ENOSPC on end of tape. Correctly go 5405 on to the next volume if f_multivol. 5406 5407 * list.c (list_archive, print_header): Flush msg_file after 5408 printing messages. 5409 5410 * port.c: Delete unused references to alloca(). 5411 Don't crash if malloc() returns zero in quote_copy_string. 5412 Flush stderr in msg() and msg_perror(). 5413 5414 * tar.c: Flush msg_file after printing confirmation msg. 5415 54161990-01-10 David J. MacKenzie <djm@hobbes.ai.mit.edu> 5417 5418 * tar.c (main): Change -help option and references to it to +help, 5419 and remove suggestion to run info (which is unreleased, so not 5420 likely to be of any help). 5421 54221990-01-09 Jay Fenlason <hack @wookumz> 5423 5424 * create.c (dump_file): Close file descriptor if start_header() 5425 fails. 5426 (dump_file): Change test for `./'-ness to not think that `.' {any 5427 character} is a `./'. 5428 Reported by Piercarlo Grandi. 5429 5430 * diffarch.c (diff_init): Print correct number of bytes in error 5431 message. 5432 54331990-01-09 David J. MacKenzie <djm@hobbes.ai.mit.edu> 5434 5435 * Makefile: Add comment at top noting that two source files also 5436 contain #defines that might need to be changed by hand. 5437 5438 * create.c, diffarch.c, extract.c: Change L_SET to 0 in lseek 5439 calls, because only BSD defines it. 5440 * create.c (dump_file) [BSD42]: Make sparse file checking code 5441 conditional because it uses st_blocks, which the other systems lack. 5442 54431990-01-02 Jay Fenlason <hack@gnu> 5444 5445 * port.c (quote_copy_string): Fix so it doesn't scramble memory if 5446 the last character is non-printable. 5447 Reported by Kian-Tat Lim. 5448 54491989-12-19 Jim Kingdon <kingdon@pogo> 5450 5451 * port.c [BSD42]: Define DOPRNT_MSG. 5452 tar.h [BSD42]: Do not prototype msg{,_perror}. 5453 54541989-12-08 Jay Fenlason <hack@gnu> 5455 5456 * create.c (dump_file): Remove typo in msg. 5457 54581989-12-01 David J. MacKenzie <djm@trix> 5459 5460 * Makefile: Remove comments referring to certain systems lacking 5461 getopt, since it is now provided always and needed by all systems. 5462 5463 * port.c: Remove copy of getopt.c, as it is now linked in 5464 separately to always get the current version. 5465 5466 * tar.c: Rename +cat-tars option to +catenate or +concatenate, 5467 and +local-filesystem to +one-file-system (preferred by rms 5468 and used in GNU cp for the same purpose). 5469 (describe): Reflect changes. 5470 54711989-11-28 David J. MacKenzie <djm@hobbes.ai.mit.edu> 5472 5473 * port.c: Move declaration of alloca into #else /* sparc */ 5474 so it will compile on sparcs. 5475 54761989-11-27 David J. MacKenzie <djm@hobbes.ai.mit.edu> 5477 5478 * tar.c (options): Remove -version option (replaced by +version). 5479 (describe): Mention long options. 5480 54811989-11-25 David J. MacKenzie <djm@hobbes.ai.mit.edu> 5482 5483 * getoldopt.c (getoldopt): Make `opt_index' argument a pointer to 5484 an int, not char. 5485 5486 * tar.c: Modify long options per rms's suggestions: 5487 Make preserve-permissions an alias for same-permissions. 5488 Make preserve-order an alias for same-order. 5489 Define preserve to mean both of those combined. 5490 Make old an alias for old-archive. 5491 Make portability an alias for old-archive, also. 5492 Rename sym-links to dereference. 5493 Rename gnudump to incremental. 5494 Rename filename to file. 5495 Make compare an alias for diff. Leave diff but prefer compare. 5496 Rename blocking-factor to block-size. 5497 Rename chdir to directory. 5498 Make uncompress an alias for compress. 5499 Rename confirm to interactive. 5500 Make get an alias for extract. 5501 Rename volume-header to volume. 5502 5503 Also make +version an alias for -version. 5504 5505 (options): Shorten code that interprets long options by using 5506 the equivalent short options' code. This also makes it tons 5507 easier to change the long options. 5508 5509 (describe): Make usage message more internally consistent 5510 stylistically. 5511 55121989-11-20 hack@ai.mit.edu 5513 5514 * list.c (read_and): Call check_exclude() to see if the files 5515 should be skipped on extract or list. 5516 55171989-11-09 Jim Kingdon <kingdon@hobbes.ai.mit.edu> 5518 5519 * buffer.c (fl_read): Fix typos in error message 5520 "tar EOF not on block boundary". 5521 55221989-10-23 <hack@ai.mit.edu> 5523 5524 * tar.c (long_options[]): Add an option for blocked compression. 5525 55261989-10-19 <hack@ai.mit.edu> 5527 5528 * buffer.c (writeerror): Print a more useful error msg. 5529 55301989-09-27 <hack@ai.mit.edu> 5531 5532 * tar.c (main): Mention "tar -help" if the luser types a non-workable 5533 set of options. 5534 55351989-09-11 <hack@ai.mit.edu> 5536 5537 * tar.c (options): Have -F correctly set info_script. 5538 55391989-08-29 <hack@ai.mit.edu> 5540 5541 * Makefile Include ChangeLog in tar.tar and tar.tar.Z 5542 55431989-08-28 <hack@ai.mit.edu> 5544 5545 * tar.c (options) Made -F imply -M. 5546 Also remind tar that the -f option takes an argument! 5547 5548 * Modified -F option to make it do what (I think) it 5549 should. e.g, if you say -F, tar won't send a msg to 5550 msg_file and wait for a <return> It'll just run the program 5551 it was given, and when the prog returns, the new tape had 5552 *better* be ready... 5553 5554 * buffer.c (open_archive): Give error message and abort if 5555 the luser didn't give an archive name. 5556 55571989-08-25 Joy Kendall <jak@hobbes> 5558 5559 * Added code to make a new option to run a specified script at 5560 the end of each tape in a multi-volume backup. Changed: tar.c: 5561 made new switch, -F, and new long-named option, "info-script". 5562 Code is where you would expect. 5563 * tar.h: added flag f_run_script_at_end, and an extern char * 5564 called info_script, which optarg gets set to. 5565 * buffer.c (new_volume): if f_run_script_at_end is set, we give 5566 info_script to system(), otherwise we do what we've always done. 5567 55681989-08-24 Joy Kendall <jak@spiff> 5569(These changes made over the course of 6/89 - 8/89) 5570 5571 * diffarch.c: diff_archive: Added switches for LF_SPARSE in the 5572 case statements that needed it. Also, skip any extended headers 5573 if we need to when we skip over a file. (need to change the bit 5574 about, if the size doesn't agree AND the file is NOT sparse, 5575 then there's a discrepancy, because I added another field to 5576 the header which should be able to deal with the sizes): If 5577 the file is sparse, call the added routine "diff_sparse_files" 5578 to compare. Also added routine "fill_in_sparse_array". 5579 5580 * extract.c: extract_archive: added the switch LF_SPARSE to the 5581 case statement as needed, and code to treat the sparse file. 5582 At label "again_file", modified opening the file to see if we 5583 should have O_APPEND be one of the modes. Added code at label 5584 "extract_file" to call the new routine "extract_sparse_file" 5585 when we have an LF_SPARSE flag. 5586 5587 Note: really should erase the commented-out code in there, 5588 because it's confusing. 5589 5590 * update.c: made sure that if a file needed to be "skipped" 5591 over, it would check to see if the linkflag was sparse, and if 5592 so, would then make sure to skip over any "extended headers" 5593 that might come after the header itself. Do so by calling 5594 "skip_extended_headers". 5595 5596 * create.c: create_archive: added code to detect a sparse file 5597 when in the long case statement. Added ways to detect extended 5598 headers, and label "extend" (ack! should get rid of that, is 5599 atrocious). Call the new routine "finish_sparse_file" if the 5600 linkflag is LF_SPARSE to write the info to the tape. Also added 5601 routines "init_sparsearray", "deal_with_sparse", "clear_buffer", 5602 "where_is_data", "zero_record", and "find_new_file_size". 5603 5604 * tar.h: Added the #define's SPARSE_EXT_HDR and SPARSE_IN_HDR. 5605 Added the struct sparse and the struct sp_array. Added the 5606 linkflag LF_SPARSE. Changed the tar header in several ways: 5607 - added an array of struct sparse's SPARSE_IN_HDR long 5608 - added a char flag isextended 5609 - added a char string realsize to store the true size of a sparse file 5610 Added another choice to the union record called a struct 5611 extended_header, which is an array of 21 struct sparse's and a 5612 char isextended flag. Added flag f_sparse_file to list of flags. 5613 5614 * tar.c: added long-named options to make tar compatible with 5615 getopt_long, changed Makefile. 5616 56171989-03-03 David MacKenzie (edf at rocky2.rockefeller.edu) 5618(I'm not completely sure all these have been integrated -- FP.) 5619 5620 * buffer.c [USG]: ifdef'd out #include <sys/file.h>. 5621 (close_archive): SysV doesn't have ftruncate, so substituted 5622 fmtwrite (just copied the code for MS-DOS). 5623 * create.c: Unos lacks <sys/sysmacros.h> so provided a substitute. 5624 (start_header): Only strip leading paths if f_relative_paths is true. 5625 * extract.c: 5626 (extract_archive): Only strip leading paths if 5627 f_relative_paths is true. Because the Unos filesystem has 5628 only one timestamp, moved the utime call to after the chown 5629 and chmod calls. 5630 * getdate.y: Don't define ftime if Unos. 5631 * list.c: Defined size_t for Unos. [USG]: Don't include <sys/file.h>. 5632 Define <sys/sysmacros> stuff manually for Unos. 5633 (decode_header): Add braces around switch cases; some compilers 5634 require them. 5635 (print_header): Changed UGSWIDTH from 11 to 25 because the smaller 5636 value made tape listings of files owned by more than one user 5637 gradually get wider, making them hard to read. 5638 * port.c: Don't include <sys/file.h> if SysV. Define 5639 size_t for Unos. 5640 (mkdir): Add code to support Unos makedir sys call. 5641 (getopt): Use malloc instead of alloca, because tar doesn't 5642 use alloca anywhere else and many systems lack it. A few other 5643 changes from the current version of getopt.c incorporated. 5644 * rtape_lib.c: Undefine RMTIOCTL. Doesn't seem to be needed, 5645 and can't compile on Unos/SysV with it defined. Might need to be 5646 ifdef'd. 5647 * tar.c: Alias addname to add_name and rmdir to deldir on Unos 5648 due to C library weirdness. 5649 (options): Recognize new -P option to set f_relative paths. 5650 (describe): Clean up error message and add -P description. 5651 * tar.h: Add variable, f_relative_paths, to cause tar to strip 5652 leading `/' characters in pathnames during create and extract. 5653 * tar.texinfo: Fixed a couple of typos, detected by texi2roff. 5654 * update.c: Simulate <sys/sysmacros.h> for Unos. 5655 5656Previous releases by Jay Fenlason (hack@ai.mit.edu) 5657 5658 * Version 1.07 --- New version to go on beta tape with GCC 1.35. 5659 Better USG support. Also support for __builtin_alloca if we're 5660 compiling with GCC. 5661 5662 * diffarch.c: Include the correct header files so MTIOCTOP 5663 is defined. 5664 * tar.c: Don't print the verbose list of options unless 5665 given -help. The list of options is *way* too long. 5666 5667 * Version 1.06 --- [__STDC__]: Use STDC_MSG. 5668 ENXIO meand end-of-volume in archive (for the UNIX PC) 5669 Added break after volume-header case (line 440) extract.c 5670 Added patch to rtape_lib.c (reported by Arnold Robbins). 5671 Added f_absolute_paths option. 5672 Deleted refereces to UN*X manual sections (dump(8), etc) 5673 Fixed to not core-dump on illegal options 5674 Modified msg_perror to call perror("") instead of perror(0) 5675 patch so -X - works 5676 Fixed tar.c so 'tar cf - -C dir' doesn't core-dump 5677 tar.c (name_match): Fixed to chdir() to the appropriate 5678 directory if the matching name's change_dir is set. This 5679 makes tar xv -C foo {files} work. 5680 5681 * Version 1.05 --- A fix to make confirm() work when the archive is 5682 on stdin; include 'extern FILE *msg_file;' in pr_mkdir(). 5683 * tar.h [__STDC__]: Fix to work. 5684 5685 Added to port.c: mkdir() ftruncate(): Removed: lstat() 5686 Fixed -G to work with -X 5687 Another fix to tar.texinfo 5688 Changed tar.c to say argv[0]":you must specify exactly ... 5689 buffer.c: modified child_open() to keep tar from hanging when 5690 it is done reading/writing a compressed archive 5691 added fflush(msg_file) before printing error messages 5692 create.c: fixed to make link_names non-absolute 5693 5694 * Version 1.04 --- Added functions msg() and msg_perror(): Modified 5695 all the files to call them. Also checked that all (I hope) calls 5696 to msg_perror() have a valid errno value. 5697 (modified anno() to leave errno alone), etc. 5698 Re-fixed the -X option. This time for sure... 5699 re-modified the msg stuff. flushed anno() completely 5700 Modified the directory stuff so it should work on sysV boxes 5701 added ftime() to getdate.y 5702 Fixed un_quote_string() so it won't wedge on \" Also fixed 5703 \ddd (like \123, etc) 5704 More fixes to tar.texinfo 5705 5706 * Version 1.03 --- Fixed buffer.c so 'tar tzf NON_EXISTENT_FILE' 5707 returns an error message instead of hanging forever. 5708 More fixes to tar.texinfo. 5709 5710 * Version 1.02 --- Fixed tar.c so 'tar -h' and 'tar -v' don't cause 5711 core dump. Also fixed the 'usage' message to be more up-to-date. 5712 * diffarch.c [!MTIOCTOP]: Fixed so verify should compile. 5713 5714 * Version 1.01 --- Fixed typoes in tar.texinfo. 5715 Fixed a bug in the #define for rmtcreat(). 5716 Fixed the -X option to not call realloc() of 0. 5717 5718 * Version 1.00 --- version.c added. -version option added. 5719 Installed new version of the remote-tape library. 5720 Added -help option. 5721 5722 5723----- tests/ChangeLog ----- 5724 57251997-04-25 François Pinard <pinard@iro.umontreal.ca> 5726 5727 * Release 1.12. 5728 5729 * gzip.sh, ignfail.sh: Adjust to new delayed error exit message. 5730 5731 * Makefile.am (BUILT_SOURCES): Define as preset, so preset is 5732 regenerated if configuration changes. 5733 5734 * Makefile.am (TESTS): Nevertheless include delete01.sh. 5735 (POSTPONED_TESTS): Adjusted. 5736 Reported by Andreas Schwab. 5737 5738 * delete02.sh: Mention f - explicitly, do not assume it, in case 5739 $TAPE is defined or the default archive has been overridden. 5740 Reported by Andreas Schwab. 5741 57421997-04-24 François Pinard <pinard@iro.umontreal.ca> 5743 5744 * after: Unredirect stdout and stderr before removing the files. 5745 If redirections are to NFS files, removing them while they are 5746 still opened may have strange effects, failing almost all tests. 5747 Reported by Kaveh R. Ghazi. 5748 57491997-04-22 François Pinard <pinard@iro.umontreal.ca> 5750 5751 * Prerelease 1.11q. 5752 5753 * extrac03.sh: New file. 5754 * Makefile.am (TESTS): Adjusted. 5755 Reported by Marc Boucher. 5756 5757 * preset.in (LC_MESSAGES): Clear value before tests. 5758 Reported by Sven Verdoolaege. 5759 5760 * Makefile.am (INCLUDES): Adjust so config.h gets found. 5761 5762 * genfile.c (usage): Corrected. 5763 5764 * delete01.sh: New name for delete.sh. 5765 * delete02.sh: New file. 5766 * Makefile.am (TESTS): Adjusted. 5767 Reported by Vince Del Vecchio. 5768 5769 * Makefile.am (POSTPONED_TESTS): To contain the --delete tests. 5770 (TESTS): Adjusted. 5771 (EXTRA_DIST): Include $(POSTPONED_TESTS). The purpose is getting 5772 the tests distributed, but not executed. These flaky tests are to 5773 be addressed only after 1.12 is released. 5774 57751997-04-19 François Pinard <pinard@iro.umontreal.ca> 5776 5777 * Makefile.am (AUTOMAKE_OPTIONS): Declare ../src/ansi2knr. 5778 * (DEFS): New, for defining LOCALEDIR. 5779 * (genfile.o): Deleted, will be implied from DEFS above. 5780 Reported by Bruno Haible and Kaveh R. Ghazi. 5781 57821997-04-17 François Pinard <pinard@iro.umontreal.ca> 5783 5784 * Prerelease 1.11p. 5785 5786 * genfile.c (usage): Add a program description. 5787 (main): Output --version according to recent GNU standards. 5788 57891997-04-15 François Pinard <pinard@iro.umontreal.ca> 5790 5791 * ignfail.sh: Ensure the test does not fail if run as super-user. 5792 Reported by John David Anglin. 5793 57941997-04-12 François Pinard <pinard@iro.umontreal.ca> 5795 5796 * genfile.c (pattern): Remove trailing comma for last enum item. 5797 Reported by Bruno Haible. 5798 57991997-04-11 François Pinard <pinard@iro.umontreal.ca> 5800 5801 * Prerelease 1.11o. 5802 58031997-03-29 François Pinard <pinard@iro.umontreal.ca> 5804 5805 * ignfail.sh: New file. 5806 * Makefile.am (TESTS): Adjusted. 5807 Reported by Ralph Schleicher. 5808 58091997-03-24 François Pinard <pinard@iro.umontreal.ca> 5810 5811 * genfile.c: Implement --pattern=default/zeros. 5812 58131997-02-25 François Pinard <pinard@iro.umontreal.ca> 5814 5815 * old.sh: New file. 5816 * Makefile.am (TESTS): Adjusted. 5817 Reported by Daniel Trinkle. 5818 58191997-01-21 François Pinard <pinard@iro.umontreal.ca> 5820 5821 * extrac01.sh: New name for extract.sh. 5822 * extrac02.sh: New file. 5823 * Makefile.am (TESTS): Adjusted. 5824 Reported by Axel Boldt. 5825 58261996-11-25 François Pinard <pinard@iro.umontreal.ca> 5827 5828 * genfile.c (usage): Typo in message. 5829 Reported by Christian Kirsch. 5830 58311996-11-22 François Pinard <pinard@iro.umontreal.ca> 5832 5833 * incremen.sh: New file. 5834 Reported by Wolfram Wagner. 5835 5836 * append.sh, delete.sh: New files. 5837 * Makefile.am (TESTS): Adjusted. 5838 Reported by Andreas Schwab. 5839 5840 * before: Ensure .. on PATH, so genfile may be found. 5841 * Makefile.am ($(TESTS)): Depend on genfile, waiting for Automake 5842 to be adjusted to do the proper thing for parallel make. 5843 5844 * gzip.sh: New name for childerr.sh. 5845 * extract.sh: New name for direxist.sh. 5846 * volume.sh: New name for volcheck.sh. 5847 * Makefile.am: Adjusted. 5848 5849 * All tests: Use set -e whenever appropriate. Use "" instead of 5850 '' for out and err, so allowing us to use escaped newlines. In 5851 case of multiple output in a single test, ensure separator lines. 5852 58531996-11-06 François Pinard <pinard@iro.umontreal.ca> 5854 5855 * Prerelease 1.11.13. 5856 5857 * childerr.sh, direxist.sh, volcheck.sh: Use sh, not bash. 5858 Reported by John David Anglin. 5859 58601996-09-20 François Pinard <pinard@iro.umontreal.ca> 5861 5862 * volcheck.sh: New. 5863 * Makefile.am (TESTS): Adjusted. 5864 58651996-09-19 François Pinard <pinard@iro.umontreal.ca> 5866 5867 * Prerelease 1.11.12. 5868 5869 * Makefile.am ($(TESTS)): Depend on preset. 5870 * version.sh (PATH): Adjust for multi-line --version output. 5871 * preset.in (LANG, LANGUAGE): Export them, so gzip does not 5872 localise its own output. 5873 (echo_n, echo_c): Define from the result of echo configuration. 5874 * after: Handle echo with newline suppressed. 5875 58761996-09-09 François Pinard <pinard@iro.umontreal.ca> 5877 5878 * childerr.sh, direxist.sh, before, after: New files. 5879 * Makefile.am: Adjusted. 5880 58811996-09-04 François Pinard <pinard@iro.umontreal.ca> 5882 5883 * ChangeLog, Makefile.am, pretest.in, version.sh: New files. 5884 * checktar.sh, genfile.c: New files, moved from src/. 5885 5886 A regression test is an old dream for GNU tar. 5887 Reported by Tom Tromey and Robert Bernstein. 5888