]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - sbin/restore/extern.h
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / sbin / restore / extern.h
1 /*-
2  * Copyright (c) 1992, 1993
3  *      The Regents of the University of California.  All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  * 1. Redistributions of source code must retain the above copyright
9  *    notice, this list of conditions and the following disclaimer.
10  * 2. Redistributions in binary form must reproduce the above copyright
11  *    notice, this list of conditions and the following disclaimer in the
12  *    documentation and/or other materials provided with the distribution.
13  * 4. Neither the name of the University nor the names of its contributors
14  *    may be used to endorse or promote products derived from this software
15  *    without specific prior written permission.
16  *
17  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
18  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
21  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27  * SUCH DAMAGE.
28  *
29  *      @(#)extern.h    8.2 (Berkeley) 1/7/94
30  * $FreeBSD$
31  */
32
33 struct entry    *addentry(char *, ino_t, int);
34 long             addfile(char *, ino_t, int);
35 int              addwhiteout(char *);
36 void             badentry(struct entry *, char *);
37 void             canon(char *, char *, size_t);
38 void             checkrestore(void);
39 void             closemt(void);
40 void             createfiles(void);
41 void             createleaves(char *);
42 void             createlinks(void);
43 long             deletefile(char *, ino_t, int);
44 void             deleteino(ino_t);
45 void             delwhiteout(struct entry *);
46 ino_t            dirlookup(const char *);
47 void             done(int) __dead2;
48 void             dumpsymtable(char *, long);
49 void             extractdirs(int);
50 int              extractfile(char *);
51 void             findunreflinks(void);
52 char            *flagvalues(struct entry *);
53 void             freeentry(struct entry *);
54 void             freename(char *);
55 int              genliteraldir(char *, ino_t);
56 char            *gentempname(struct entry *);
57 void             getfile(void (*)(char *, long), void (*)(char *, long),
58                         void (*)(char *, long));
59 void             getvol(long);
60 void             initsymtable(char *);
61 int              inodetype(ino_t);
62 int              linkit(char *, char *, int);
63 struct entry    *lookupino(ino_t);
64 struct entry    *lookupname(char *);
65 long             listfile(char *, ino_t, int);
66 ino_t            lowerbnd(ino_t);
67 void             mktempname(struct entry *);
68 void             moveentry(struct entry *, char *);
69 void             msg(const char *, ...) __printflike(1, 2);
70 char            *myname(struct entry *);
71 void             newnode(struct entry *);
72 void             newtapebuf(long);
73 long             nodeupdates(char *, ino_t, int);
74 void             onintr(int);
75 void             panic(const char *, ...) __printflike(1, 2);
76 void             pathcheck(char *);
77 struct direct   *pathsearch(const char *);
78 void             printdumpinfo(void);
79 void             removeleaf(struct entry *);
80 void             removenode(struct entry *);
81 void             removeoldleaves(void);
82 void             removeoldnodes(void);
83 void             renameit(char *, char *);
84 int              reply(char *);
85 void            *rst_opendir(const char *);
86 struct direct   *rst_readdir(RST_DIR *);
87 void             rst_closedir(void *);
88 void             runcmdshell(void);
89 char            *savename(char *);
90 void             set_extattr_file(char *, void *, int);
91 void             setdirmodes(int);
92 void             setinput(char *, int);
93 void             setup(void);
94 void             skipdirs(void);
95 void             skipfile(void);
96 void             skipmaps(void);
97 void             swabst(u_char *, u_char *);
98 void             treescan(char *, ino_t, long (*)(char *, ino_t, int));
99 ino_t            upperbnd(ino_t);
100 long             verifyfile(char *, ino_t, int);
101 void             xtrnull(char *, long);
102
103 /* From ../dump/dumprmt.c */
104 void            rmtclose(void);
105 int             rmthost(char *);
106 int             rmtioctl(int, int);
107 int             rmtopen(char *, int);
108 int             rmtread(char *, int);
109 int             rmtseek(int, int);