2 * BootStrap record definition -- for restoring files.
4 * Kern Sibbald, June 2002
10 Bacula® - The Network Backup Solution
12 Copyright (C) 2002-2006 Free Software Foundation Europe e.V.
14 The main author of Bacula is Kern Sibbald, with contributions from
15 many others, a complete list can be found in the file AUTHORS.
16 This program is Free Software; you can redistribute it and/or
17 modify it under the terms of version two of the GNU General Public
18 License as published by the Free Software Foundation and included
21 This program is distributed in the hope that it will be useful, but
22 WITHOUT ANY WARRANTY; without even the implied warranty of
23 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
24 General Public License for more details.
26 You should have received a copy of the GNU General Public License
27 along with this program; if not, write to the Free Software
28 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
31 Bacula® is a registered trademark of John Walker.
32 The licensor of Bacula is the Free Software Foundation Europe
33 (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich,
34 Switzerland, email:ftf@fsfeurope.org.
42 * List of Volume names to be read by Storage daemon.
43 * Formed by Storage daemon from BSR
47 char VolumeName[MAX_NAME_LENGTH];
48 char MediaType[MAX_NAME_LENGTH];
49 char device[MAX_NAME_LENGTH]; /* ***FIXME*** use alist here */
56 * !!!!!!!!!!!!!!!!!! NOTE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
58 * !!! All records must have a pointer to !!!
59 * !!! the next item as the first item defined. !!!
61 * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
66 char VolumeName[MAX_NAME_LENGTH];
67 char MediaType[MAX_NAME_LENGTH];
68 char device[MAX_NAME_LENGTH]; /* ***FIXME*** use alist here */
69 int32_t Slot; /* Slot */
74 char ClientName[MAX_NAME_LENGTH];
86 bool done; /* local done */
91 uint32_t sfile; /* start file */
92 uint32_t efile; /* end file */
93 bool done; /* local done */
98 uint32_t sblock; /* start block */
99 uint32_t eblock; /* end block */
100 bool done; /* local done */
106 int32_t findex; /* start file index */
107 int32_t findex2; /* end file index */
108 bool done; /* local done */
122 struct BSR_JOBLEVEL {
129 char Job[MAX_NAME_LENGTH];
130 bool done; /* local done */
135 int32_t stream; /* stream desired */
139 BSR *next; /* pointer to next one */
140 BSR *root; /* root bsr */
141 bool reposition; /* set when any bsr is marked done */
142 bool mount_next_volume; /* set when next volume should be mounted */
143 bool done; /* set when everything found for this bsr */
144 bool use_fast_rejection; /* set if fast rejection can be used */
145 bool use_positioning; /* set if we can position the archive */
147 uint32_t count; /* count of files to restore this bsr */
148 uint32_t found; /* count of restored files this bsr */
149 BSR_VOLFILE *volfile;
150 BSR_VOLBLOCK *volblock;
151 BSR_SESSTIME *sesstime;
156 BSR_FINDEX *FileIndex;
157 BSR_JOBTYPE *JobType;
158 BSR_JOBLEVEL *JobLevel;