2 * BootStrap record definition -- for restoring files.
4 * Kern Sibbald, June 2002
10 Copyright (C) 2000, 2001, 2002 Kern Sibbald and John Walker
12 This program is free software; you can redistribute it and/or
13 modify it under the terms of the GNU General Public License as
14 published by the Free Software Foundation; either version 2 of
15 the License, or (at your option) any later version.
17 This program is distributed in the hope that it will be useful,
18 but WITHOUT ANY WARRANTY; without even the implied warranty of
19 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 General Public License for more details.
22 You should have received a copy of the GNU General Public
23 License along with this program; if not, write to the Free
24 Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
34 * List of Volume names to be read by Storage daemon.
35 * Formed by Storage daemon from BSR
38 struct s_vol_list *next;
39 char VolumeName[MAX_NAME_LENGTH];
43 typedef struct s_vol_list VOL_LIST;
47 * !!!!!!!!!!!!!!!!!! NOTE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
49 * !!! All records must have a pointer to !!!
50 * !!! the next item as the first item defined. !!!
52 * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
55 typedef struct s_bsr_volume {
56 struct s_bsr_volume *next;
57 char VolumeName[MAX_NAME_LENGTH];
60 typedef struct s_bsr_client {
61 struct s_bsr_client *next;
62 char ClientName[MAX_NAME_LENGTH];
65 typedef struct s_bsr_sessid {
66 struct s_bsr_sessid *next;
69 int done; /* local done */
72 typedef struct s_bsr_sesstime {
73 struct s_bsr_sesstime *next;
75 int done; /* local done */
78 typedef struct s_bsr_volfile {
79 struct s_bsr_volfile *next;
80 uint32_t sfile; /* start file */
81 uint32_t efile; /* end file */
82 int done; /* local done */
85 typedef struct s_bsr_volblock {
86 struct s_bsr_volblock *next;
87 uint32_t sblock; /* start block */
88 uint32_t eblock; /* end block */
89 int done; /* local done */
93 typedef struct s_bsr_findex {
94 struct s_bsr_findex *next;
95 int32_t findex; /* start file index */
96 int32_t findex2; /* end file index */
97 int done; /* local done */
100 typedef struct s_bsr_jobid {
101 struct s_bsr_jobid *next;
106 typedef struct s_bsr_jobtype {
107 struct s_bsr_jobtype *next;
111 typedef struct s_bsr_joblevel {
112 struct s_bsr_joblevel *next;
116 typedef struct s_bsr_job {
117 struct s_bsr_job *next;
118 char Job[MAX_NAME_LENGTH];
122 typedef struct s_bsr_stream {
123 struct s_bsr_stream *next;
124 int32_t stream; /* stream desired */
127 typedef struct s_bsr {
128 struct s_bsr *next; /* pointer to next one */
129 int done; /* set when everything found */
131 int32_t Slot; /* Slot */
132 uint32_t count; /* count of files to restore this bsr */
133 uint32_t found; /* count of restored files this bsr */
134 BSR_VOLFILE *volfile;
135 BSR_VOLBLOCK *volblock;
136 BSR_SESSTIME *sesstime;
141 BSR_FINDEX *FileIndex;
142 BSR_JOBTYPE *JobType;
143 BSR_JOBLEVEL *JobLevel;