home *** CD-ROM | disk | FTP | other *** search
- *** /usr/src/bin/tar.c Wed Nov 14 00:09:23 1984
- --- tar.c Wed Jul 24 12:26:38 1985
- ***************
- *** 27,32
- * Tape Archival Program
- */
- #include <stdio.h>
- #include <sys/param.h>
- #include <sys/stat.h>
- #include <sys/dir.h>
-
- --- 27,33 -----
- * Tape Archival Program
- */
- #include <stdio.h>
- + #include <rmt.h> /* remote tape, must come before <sys/stat.h> */
- #include <sys/param.h>
- #include <sys/stat.h>
- #include <sys/dir.h>
- ***************
- *** 306,311
- doxtract(argv);
- else
- dotable();
- done(0);
- }
-
-
- --- 307,313 -----
- doxtract(argv);
- else
- dotable();
- + close (mt);
- done(0);
- }
-
- ***************
- *** 722,728
- if (checkdir(dblock.dbuf.name))
- continue;
- if (dblock.dbuf.linkflag == '2') {
- ! unlink(dblock.dbuf.name);
- if (symlink(dblock.dbuf.linkname, dblock.dbuf.name)<0) {
- fprintf(stderr, "tar: %s: symbolic link failed\n",
- dblock.dbuf.name);
-
- --- 724,736 -----
- if (checkdir(dblock.dbuf.name))
- continue;
- if (dblock.dbuf.linkflag == '2') {
- ! /*
- ! * only unlink non-directories or empty directories
- ! */
- ! if (rmdir (dblock.dbuf.name) < 0) {
- ! if (errno == ENOTDIR)
- ! unlink(dblock.dbuf.name);
- ! }
- if (symlink(dblock.dbuf.linkname, dblock.dbuf.name)<0) {
- fprintf(stderr, "tar: %s: symbolic link failed\n",
- dblock.dbuf.name);
- ***************
- *** 749,755
- continue;
- }
- if (dblock.dbuf.linkflag == '1') {
- ! unlink(dblock.dbuf.name);
- if (link(dblock.dbuf.linkname, dblock.dbuf.name) < 0) {
- fprintf(stderr, "tar: %s: cannot link\n",
- dblock.dbuf.name);
-
- --- 757,769 -----
- continue;
- }
- if (dblock.dbuf.linkflag == '1') {
- ! /*
- ! * only unlink non-directories or empty directories
- ! */
- ! if (rmdir (dblock.dbuf.name) < 0) {
- ! if (errno == ENOTDIR)
- ! unlink(dblock.dbuf.name);
- ! }
- if (link(dblock.dbuf.linkname, dblock.dbuf.name) < 0) {
- fprintf(stderr, "tar: %s: cannot link\n",
- dblock.dbuf.name);
-