]> git.wh0rd.org - dump.git/blobdiff - restore/extern.h
Added EA/ACL support in dump and restore.
[dump.git] / restore / extern.h
index c2b88b912e9c80a93d412be19f09eb5588626be5..16e2440e380e9b7d5fa915e183c05433ef8b1d53 100644 (file)
@@ -2,8 +2,10 @@
  *     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@cybercable.fr>, 1999 
+ *     Stelian Pop <stelian@popies.net>, 1999-2000
+ *     Stelian Pop <stelian@popies.net> - AlcĂ´ve <www.alcove.com>, 2000-2002
  *
+ *     $Id: extern.h,v 1.25 2005/05/02 15:10:46 stelian Exp $
  */
 
 /*-
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *     This product includes software developed by the University of
- *     California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
  *    may be used to endorse or promote products derived from this software
  *    without specific prior written permission.
  *
  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- *
- *     @(#)extern.h    8.2 (Berkeley) 1/7/94
- *     $Id: extern.h,v 1.2 1999/10/11 12:53:23 stelian Exp $
  */
 
-struct entry   *addentry __P((char *, ino_t, int));
-long            addfile __P((char *, ino_t, int));
+#include <config.h>
+#include <compatlfs.h>
+#ifndef __P
+#include <sys/cdefs.h>
+#endif
+#ifdef DUMP_MACOSX
+#include "darwin.h"
+#endif
+
+struct entry   *addentry __P((char *, dump_ino_t, int));
+long            addfile __P((char *, dump_ino_t, int));
 int             addwhiteout __P((char *));
-void            badentry __P((struct entry *, char *));
+void            badentry __P((struct entry *, const char *));
 void            canon __P((char *, char *, int));
 void            checkrestore __P((void));
 void            closemt __P((void));
+void            cleanup __P((void));
 void            comparefile __P((char *));
 void            compareleaves __P((void));
 void            createfiles __P((void));
 void            createleaves __P((char *));
 void            createlinks __P((void));
-long            deletefile __P((char *, ino_t, int));
-void            deleteino __P((ino_t));
+long            deletefile __P((char *, dump_ino_t, int));
+void            deleteino __P((dump_ino_t));
 void            delwhiteout __P((struct entry *));
-ino_t           dirlookup __P((const char *));
-__dead void     done __P((int));
+dump_ino_t      dirlookup __P((const char *));
 void            dumpsymtable __P((char *, long));
 void            extractdirs __P((int));
-int             extractfile __P((char *));
+int             extractfile __P((struct entry *, int));
 void            findunreflinks __P((void));
 char           *flagvalues __P((struct entry *));
 void            freeentry __P((struct entry *));
 void            freename __P((char *));
-int             genliteraldir __P((char *, ino_t));
+int             genliteraldir __P((char *, dump_ino_t));
 char           *gentempname __P((struct entry *));
-void            getfile __P((void (*)(char *, long), void (*)(char *, long)));
+void            getfile __P((void (*)(char *, size_t), void (*)(char *, size_t)));
 void            getvol __P((long));
 void            initsymtable __P((char *));
-int             inodetype __P((ino_t));
+int             inodetype __P((dump_ino_t));
 int             linkit __P((char *, char *, int));
-struct entry   *lookupino __P((ino_t));
+struct entry   *lookupino __P((dump_ino_t));
 struct entry   *lookupname __P((char *));
-long            listfile __P((char *, ino_t, int));
-ino_t           lowerbnd __P((ino_t));
+long            listfile __P((char *, dump_ino_t, int));
+dump_ino_t      lowerbnd __P((dump_ino_t));
 void            mktempname __P((struct entry *));
 void            moveentry __P((struct entry *, char *));
 void            msg __P((const char *, ...));
 char           *myname __P((struct entry *));
 void            newnode __P((struct entry *));
 void            newtapebuf __P((long));
-long            nodeupdates __P((char *, ino_t, int));
+long            nodeupdates __P((char *, dump_ino_t, int));
 void            onintr __P((int));
 void            panic __P((const char *, ...));
 void            pathcheck __P((char *));
 struct direct  *pathsearch __P((const char *));
 void            printdumpinfo __P((void));
+void            printvolinfo __P((void));
 void            removeleaf __P((struct entry *));
 void            removenode __P((struct entry *));
 void            removeoldleaves __P((void));
 void            removeoldnodes __P((void));
 void            renameit __P((char *, char *));
-int             reply __P((char *));
+int             reply __P((const char *));
+void            resizemaps __P((dump_ino_t, dump_ino_t));
 RST_DIR                *rst_opendir __P((const char *));
 struct direct  *rst_readdir __P((RST_DIR *));
 void            rst_closedir __P((RST_DIR *dirp));
 void            runcmdshell __P((void));
 char           *savename __P((char *));
 void            setdirmodes __P((int));
+void            comparedirmodes __P((void));
 void            setinput __P((char *));
 void            setup __P((void));
 void            skipdirs __P((void));
 void            skipfile __P((void));
 void            skipmaps __P((void));
 void            swabst __P((u_char *, u_char *));
-void            treescan __P((char *, ino_t, long (*)(char *, ino_t, int)));
-ino_t           upperbnd __P((ino_t));
-long            verifyfile __P((char *, ino_t, int));
-void            xtrnull __P((char *, long));
+void            treescan __P((char *, dump_ino_t, long (*)(char *, dump_ino_t, int)));
+dump_ino_t      upperbnd __P((dump_ino_t));
+long            verifyfile __P((char *, dump_ino_t, int));
+void            xtrnull __P((char *, size_t));
 
 /* From ../dump/dumprmt.c */
 void           rmtclose __P((void));
-int            rmthost __P((char *));
+int            rmthost __P((const char *));
 int            rmtioctl __P((int, int));
-int            rmtopen __P((char *, int));
-int            rmtread __P((char *, int));
-int            rmtseek __P((int, int));
+int            rmtopen __P((const char *, const int));
+int            rmtread __P((const char *, int));
+OFF_T          rmtseek __P((OFF_T, int));
+
+/* From e2fsprogs */
+int fsetflags __P((const char *, unsigned long));
+int fgetflags __P((const char *, unsigned long *));
+int setflags __P((int, unsigned long));
+
+int lsetflags __P((const char *, unsigned long));
+int lgetflags __P((const char *, unsigned long *));
+
+#ifdef USE_QFA
+int    Inode2Tapepos __P((dump_ino_t, long *, long long *, int));
+int    GetTapePos __P((long long *));
+int    GotoTapePos __P((long long));
+void   ReReadFromTape __P((void));
+void   ReReadInodeFromTape __P((dump_ino_t));
+void    GetPathFile __P((char *, char *, char *));
+
+#ifdef sunos
+int            GetSCSIIDFromPath __P((char *, long *));
+int            OpenSMTCmt(char *);
+#endif
+#endif
+void   RequestVol __P((long));
+
+#ifdef DUMP_MACOSX
+int    extractfinderinfoufs __P((char *));
+int    extractresourceufs __P((char *));
+int    CreateAppleDoubleFileRes __P((char *, FndrFileInfo *, mode_t, int, struct timeval *, u_int32_t, u_int32_t));
+#endif
+
+void   skipxattr __P((void));
+int    readxattr __P((char *));
+int    xattr_compare __P((char *, char *));
+int    xattr_extract __P((char *, char *));