summaryrefslogtreecommitdiffstats
path: root/sbin/restore/tape.c
diff options
context:
space:
mode:
authorjkh <jkh@FreeBSD.org>1998-05-09 05:23:02 +0000
committerjkh <jkh@FreeBSD.org>1998-05-09 05:23:02 +0000
commitdcef58e481f6117f1a23a399e64de7f78db3e227 (patch)
tree3159d92312f9ac1cf1e86c128b9eb593b5fe4418 /sbin/restore/tape.c
parent9c0f3d45b1a8df168ca3c201cafeb4775fc523be (diff)
downloadFreeBSD-src-dcef58e481f6117f1a23a399e64de7f78db3e227.zip
FreeBSD-src-dcef58e481f6117f1a23a399e64de7f78db3e227.tar.gz
Well, nobody objected, so here's my -u (unlink) flag to restore.
Diffstat (limited to 'sbin/restore/tape.c')
-rw-r--r--sbin/restore/tape.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sbin/restore/tape.c b/sbin/restore/tape.c
index 204d736..6cb9fd1 100644
--- a/sbin/restore/tape.c
+++ b/sbin/restore/tape.c
@@ -566,6 +566,8 @@ extractfile(name)
skipfile();
return (GOOD);
}
+ if (uflag && !Nflag)
+ (void)unlink(name);
if (mkfifo(name, mode) < 0) {
fprintf(stderr, "%s: cannot create fifo: %s\n",
name, strerror(errno));
@@ -586,6 +588,8 @@ extractfile(name)
skipfile();
return (GOOD);
}
+ if (uflag)
+ (void)unlink(name);
if (mknod(name, mode, (int)curfile.dip->di_rdev) < 0) {
fprintf(stderr, "%s: cannot create special file: %s\n",
name, strerror(errno));
@@ -605,6 +609,8 @@ extractfile(name)
skipfile();
return (GOOD);
}
+ if (uflag)
+ (void)unlink(name);
if ((ofile = open(name, O_WRONLY | O_CREAT | O_TRUNC,
0666)) < 0) {
fprintf(stderr, "%s: cannot create file: %s\n",
OpenPOWER on IntegriCloud