]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/dird/bsr.h
regress: add new many-reload-test to standard scripts
[bacula/bacula] / bacula / src / dird / bsr.h
index 3b299dd3ac891f9a22287b77c6cbb304577af037..0e4ae358a8c820b8c50876d58d3012f3aeedf381 100644 (file)
@@ -1,34 +1,35 @@
 /*
- *
+   Bacula(R) - The Network Backup Solution
+
+   Copyright (C) 2000-2017 Kern Sibbald
+
+   The original author of Bacula is Kern Sibbald, with contributions
+   from many others, a complete list can be found in the file AUTHORS.
+
+   You may use this file and others of this release according to the
+   license defined in the LICENSE file, which includes the Affero General
+   Public License, v3.0 ("AGPLv3") and some additional permissions and
+   terms pursuant to its AGPLv3 Section 7.
+
+   This notice must be preserved when any source code is 
+   conveyed and/or propagated.
+
+   Bacula(R) is a registered trademark of Kern Sibbald.
+*/
+/*
  *   Bootstrap Record header file
  *
  *      BSR (bootstrap record) handling routines split from
  *        ua_restore.c July MMIII
  *
  *     Kern Sibbald, July MMII
- *
- *   Version $Id$
  */
 
-/*
-   Copyright (C) 2002-2005 Kern Sibbald
-
-   This program is free software; you can redistribute it and/or
-   modify it under the terms of the GNU General Public License
-   version 2 as amended with additional clauses defined in the
-   file LICENSE in the main source directory.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 
-   the file LICENSE for additional details.
-
- */
 
 
 /* FileIndex entry in restore bootstrap record */
 struct RBSR_FINDEX {
-   RBSR_FINDEX *next;
+   rblink  link;
    int32_t findex;
    int32_t findex2;
 };
@@ -42,11 +43,15 @@ struct RBSR_FINDEX {
  *    on which the Job is stored to the BSR.
  */
 struct RBSR {
-   RBSR *next;                        /* next JobId */
+   rblink link;
    JobId_t JobId;                     /* JobId this bsr */
    uint32_t VolSessionId;
    uint32_t VolSessionTime;
    int      VolCount;                 /* Volume parameter count */
    VOL_PARAMS *VolParams;             /* Volume, start/end file/blocks */
-   RBSR_FINDEX *fi;                   /* File indexes this JobId */
+   rblist *fi_list;                   /* File indexes this JobId */
+   char   *fileregex;                 /* Only restore files matching regex */
+
+   /* If we extend an existing fi, keep the memory for the next insert */
+   RBSR_FINDEX *m_fi;
 };