SVR2 tar bug
Doug Gwyn <gwyn>
gwyn at brl-tgr.ARPA
Tue Apr 2 10:22:34 AEST 1985
The UNIX System V Release 2.0 "tar" has introduced a new bug as a
side-effect of attempting to handle both old and new styles of
magtape device names. The bug shows up when creating an ordinary
archive file that does not already exist; "tar" attempts to open the
magtape drive! The two lines below involving `usefil1' and `NULL'
are my kludge to avoid the problem:
/* @(#)tar.c 1.7 */
...
main(argc, argv)
...
switch(*cp) {
case 'f':
usefile = *argv++;
usefil1 = NULL; /* DAG -- part of bug fix (added) */
if (nblock == 1)
nblock = 0;
break;
...
if (rflag) {
...
if (strcmp(usefile, "-") == 0) {
...
}
else
if ((mt = open(usefile,2)) < 0 && /* DAG -- bug fix: */
(usefil1 == NULL || (mt = open(usefil1,2)) < 0)) {
if (cflag == 0 || (mt = creat(usefile, 0666)) < 0) {
fprintf(stderr, "tar: cannot open %s\n", usefile);
done(1);
}
}
...
More information about the Net.bugs.usg
mailing list