manual page distributed with 4.1BSD
[unix-history] / usr / src / sbin / restore / restore.h
index e7263a4..947d77e 100644 (file)
@@ -1,16 +1,16 @@
-/* Copyright (c) 1983 Regents of the University of California */
-
-/*     @(#)restore.h   3.3     (Berkeley)      83/01/16        */
+/*     restore.h       3.12    85/03/24        */
 
 #include <stdio.h>
 #include <sys/param.h>
 #include <sys/inode.h>
 #include <sys/fs.h>
 
 #include <stdio.h>
 #include <sys/param.h>
 #include <sys/inode.h>
 #include <sys/fs.h>
+#include <sys/dir.h>
 
 /*
  * Flags
  */
 extern int     cvtflag;        /* convert from old to new tape format */
 
 /*
  * Flags
  */
 extern int     cvtflag;        /* convert from old to new tape format */
+extern int     bflag;          /* set input block size */
 extern int     dflag;          /* print out debugging info */
 extern int     hflag;          /* restore heirarchies */
 extern int     mflag;          /* restore by name instead of inode number */
 extern int     dflag;          /* print out debugging info */
 extern int     hflag;          /* restore heirarchies */
 extern int     mflag;          /* restore by name instead of inode number */
@@ -24,9 +24,11 @@ extern char  *clrimap;       /* map of inodes to be deleted */
 extern ino_t   maxino;         /* highest numbered inode in this file system */
 extern long    dumpnum;        /* location of the dump on this tape */
 extern long    volno;          /* current volume being read */
 extern ino_t   maxino;         /* highest numbered inode in this file system */
 extern long    dumpnum;        /* location of the dump on this tape */
 extern long    volno;          /* current volume being read */
+extern long    ntrec;          /* number of TP_BSIZE records per tape block */
 extern time_t  dumptime;       /* time that this dump begins */
 extern time_t  dumpdate;       /* time that this dump was made */
 extern char    command;        /* opration being performed */
 extern time_t  dumptime;       /* time that this dump begins */
 extern time_t  dumpdate;       /* time that this dump was made */
 extern char    command;        /* opration being performed */
+extern FILE    *terminal;      /* file descriptor for the terminal input */
 
 /*
  * Each file in the file system is described by one of these entries
 
 /*
  * Each file in the file system is described by one of these entries
@@ -54,6 +56,7 @@ struct entry {
 #define KEEP           0x0004  /* entry is not to change */
 #define REMOVED                0x0010  /* entry has been removed */
 #define TMPNAME                0x0020  /* entry has been given a temporary name */
 #define KEEP           0x0004  /* entry is not to change */
 #define REMOVED                0x0010  /* entry has been removed */
 #define TMPNAME                0x0020  /* entry has been given a temporary name */
+#define EXISTED                0x0040  /* directory already existed during extract */
 /*
  * functions defined on entry structs
  */
 /*
  * functions defined on entry structs
  */
@@ -63,15 +66,19 @@ extern struct entry *lookupparent();
 extern struct entry *addentry();
 extern char *myname();
 extern char *savename();
 extern struct entry *addentry();
 extern char *myname();
 extern char *savename();
+extern char *gentempname();
+extern char *flagvalues();
 extern ino_t lowerbnd();
 extern ino_t upperbnd();
 extern ino_t lowerbnd();
 extern ino_t upperbnd();
+extern DIR *rst_opendir();
+extern struct direct *rst_readdir();
 #define NIL ((struct entry *)(0))
 /*
  * Constants associated with entry structs
  */
 #define NIL ((struct entry *)(0))
 /*
  * Constants associated with entry structs
  */
-#define HARDLINK 1
-#define SYMLINK  2
-#define TMPCHAR (0x01)
+#define HARDLINK       1
+#define SYMLINK                2
+#define TMPHDR         "RSTTMP"
 
 /*
  * The entry describes the next file available on the tape
 
 /*
  * The entry describes the next file available on the tape
@@ -91,17 +98,23 @@ struct context {
  * Other exported routines
  */
 extern ino_t psearch();
  * Other exported routines
  */
 extern ino_t psearch();
-extern void listfile();
-extern void addfile();
-extern void nodeupdates();
-extern void verifyfile();
+extern ino_t dirlookup();
+extern long listfile();
+extern long deletefile();
+extern long addfile();
+extern long nodeupdates();
+extern long verifyfile();
 extern char *rindex();
 extern char *index();
 extern char *strcat();
 extern char *rindex();
 extern char *index();
 extern char *strcat();
+extern char *strncat();
 extern char *strcpy();
 extern char *strcpy();
+extern char *strncpy();
+extern char *fgets();
 extern char *mktemp();
 extern char *malloc();
 extern char *calloc();
 extern char *mktemp();
 extern char *malloc();
 extern char *calloc();
+extern char *realloc();
 extern long lseek();
 
 /*
 extern long lseek();
 
 /*