]> git.wh0rd.org - dump.git/blobdiff - dump/dump.h
Made dump accept -I 0 (unlimited read errors)
[dump.git] / dump / dump.h
index 2ce50e3c7c8787c7db8567a2293c8963d2c0626c..c4d8dca10020176d8889366dabfa480513b152b1 100644 (file)
@@ -5,7 +5,7 @@
  *     Stelian Pop <stelian@popies.net>, 1999-2000
  *     Stelian Pop <stelian@popies.net> - AlcĂ´ve <www.alcove.com>, 2000-2002
  *
- *     $Id: dump.h,v 1.36 2002/01/25 14:59:53 stelian Exp $
+ *     $Id: dump.h,v 1.41 2002/12/12 11:49:35 stelian Exp $
  */
 
 /*-
@@ -54,6 +54,8 @@ extern int    mapsize;        /* size of the state maps */
 extern char    *usedinomap;    /* map of allocated inodes */
 extern char    *dumpdirmap;    /* map of directories to be dumped */
 extern char    *dumpinomap;    /* map of files to be dumped */
+extern char    *metainomap;    /* which of the inodes in dumpinomap
+                                  will get only their metadata dumped */
 /*
  * Map manipulation macros.
  */
@@ -77,8 +79,10 @@ extern char  level;          /* dump level of this dump */
 extern int     Afile;          /* archive file descriptor */
 extern int     bzipflag;       /* compression is done using bzlib */
 extern int     uflag;          /* update flag */
+extern int     mflag;          /* dump metadata only if possible flag */
 extern int     Mflag;          /* multi-volume flag */
 extern int     qflag;          /* quit on errors flag */
+extern int     vflag;          /* verbose flag */
 extern int      breademax;      /* maximum number of bread errors before we quit */
 extern char    *eot_script;    /* end of volume script fiag */
 extern int     diskfd;         /* disk file descriptor */
@@ -155,7 +159,7 @@ int mapdirs __P((dump_ino_t maxino, long *tapesize));
 /* file dumping routines */
 void   blksout __P((daddr_t *blkp, int frags, dump_ino_t ino));
 void   bread __P((daddr_t blkno, char *buf, int size));
-void   dumpino __P((struct dinode *dp, dump_ino_t ino));
+void   dumpino __P((struct dinode *dp, dump_ino_t ino, int metaonly));
 #ifdef __linux__
 void   dumpdirino __P((struct dinode *dp, dump_ino_t ino));
 #endif
@@ -182,7 +186,7 @@ struct      dinode *getino __P((dump_ino_t inum));
 /* rdump routines */
 #ifdef RDUMP
 int    rmthost __P((const char *host));
-int    rmtopen __P((const char *tape, int mode));
+int    rmtopen __P((const char *tape, const int mode));
 void   rmtclose __P((void));
 int    rmtread __P((char *buf, size_t count));
 int    rmtwrite __P((const char *buf, size_t count));
@@ -210,9 +214,11 @@ void       do_exclude_ino __P((dump_ino_t ino, const char *));
 #define DIALUP "ttyd"                  /* prefix for dialups */
 #endif
 
-struct fstab *fstabsearch __P((const char *key));      /* search fs_file and fs_spec */
+#include <mntent.h>
+
+struct mntent *fstabsearch __P((const char *key));     /* search fs_file and fs_spec */
 #ifdef __linux__
-struct fstab *fstabsearchdir __P((const char *key, char *dir));        /* search fs_file and fs_spec */
+struct mntent *fstabsearchdir __P((const char *key, char *dir));       /* search fs_file and fs_spec */
 #endif
 
 /*
@@ -221,7 +227,7 @@ struct      fstab *fstabsearchdir __P((const char *key, char *dir));        /* search fs_fil
  */
 struct dumpdates {
        char    dd_name[MAXPATHLEN+3];
-       struct fstab *dd_fstab;
+       struct mntent *dd_fstab;
        char    dd_level;
        time_t  dd_ddate;
 };
@@ -259,15 +265,6 @@ extern int errno;
 int dump_fs_open(const char *disk, ext2_filsys *fs);
 #endif
 
-#ifndef        __linux__
-#ifndef        _PATH_UTMP
-#define        _PATH_UTMP      "/etc/utmp"
-#endif
-#ifndef        _PATH_FSTAB
-#define        _PATH_FSTAB     "/etc/fstab"
-#endif
-#endif
-
 #ifdef sunos
 extern char *calloc();
 extern char *malloc();