* Ported to Linux's Second Extended File System as part of the
* dump and restore backup suit
* Remy Card <card@Linux.EU.Org>, 1994-1997
- * Stelian Pop <pop@noos.fr>, 1999-2000
- * Stelian Pop <pop@noos.fr> - Alcôve <www.alcove.fr>, 2000
+ * Stelian Pop <stelian@popies.net>, 1999-2000
+ * Stelian Pop <stelian@popies.net> - Alcôve <www.alcove.com>, 2000-2002
*/
/*
#ifndef lint
static const char rcsid[] =
- "$Id: restore.c,v 1.19 2001/12/24 12:31:12 stelian Exp $";
+ "$Id: restore.c,v 1.24 2002/01/22 11:12:28 stelian Exp $";
#endif /* not lint */
#include <config.h>
if (compare_ignore_not_found) break;
fprintf(stderr, "%s: (inode %lu) not found on tape\n",
name, (unsigned long)ino);
- compare_errors = 1;
+ do_compare_error;
break;
/*
{
if ((ep->e_flags & (NEW|EXTRACT)) == 0) {
badentry(ep, "unexpected file on tape");
- compare_errors = 1;
+ do_compare_error;
}
if (do_compare) (void) comparefile(myname(ep));
ep->e_flags &= ~(NEW|EXTRACT);
if (ep == NULL)
panic("%d: bad first\n", first);
fprintf(stderr, "%s: not found on tape\n", myname(ep));
- compare_errors = 1;
+ do_compare_error;
ep->e_flags &= ~(NEW|EXTRACT);
first = lowerbnd(first);
}
if (first != curfile.ino) {
fprintf(stderr, "expected next file %ld, got %lu\n",
(long)first, (unsigned long)curfile.ino);
- compare_errors = 1;
+ do_compare_error;
skipfile();
goto next;
}
ep = lookupino(curfile.ino);
if (ep == NULL) {
panic("unknown file on tape\n");
- compare_errors = 1;
+ do_compare_error;
}
compare_entry(ep, 1);
for (ep = ep->e_links; ep != NULL; ep = ep->e_links) {
panic("%d: bad first\n", first);
fprintf(stderr, "%s: (inode %lu) not found on tape\n",
myname(ep), (unsigned long)first);
- compare_errors = 1;
+ do_compare_error;
ep->e_flags &= ~(NEW|EXTRACT);
first = lowerbnd(first);
}
panic("%d: bad first\n", first);
fprintf(stderr, "%s: (inode %lu) not found on tape\n",
myname(ep), (unsigned long)first);
- compare_errors = 1;
+ do_compare_error;
ep->e_flags &= ~(NEW|EXTRACT);
first = lowerbnd(first);
}
Vprintf(stdout, "Extract requested files\n");
curfile.action = SKIP;
- getvol((long)1);
+#ifdef USE_QFA
+ if (!tapeposflag)
+#endif
+ getvol((long)1);
skipmaps();
skipdirs();
first = lowerbnd(ROOTINO);
*/
while (curfile.ino > last) {
curfile.action = SKIP;
- getvol((long)0);
+ if (!pipein)
+ getvol((long)0);
if (curfile.ino == maxino) {
- next = lowerbnd(next);
+ next = lowerbnd(first);
while (next < curfile.ino) {
ep = lookupino(next);
if (ep == NULL)