X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=bacula%2Fsrc%2Ffindlib%2Ffind.h;h=6fc90fed0f095be31150ad1942c9cba6ef21010e;hb=37190d54ceff7f2b45a58a1c6241688cc5cba1c2;hp=0217dfc988118faebd22864dd8e78d525d0b3d2e;hpb=b5e227922978f74c2f252c51cddb8822ae07f0f4;p=bacula%2Fbacula diff --git a/bacula/src/findlib/find.h b/bacula/src/findlib/find.h old mode 100755 new mode 100644 index 0217dfc988..6fc90fed0f --- a/bacula/src/findlib/find.h +++ b/bacula/src/findlib/find.h @@ -1,22 +1,35 @@ +/* + Bacula® - The Network Backup Solution + + Copyright (C) 2001-2007 Free Software Foundation Europe e.V. + + The main author of Bacula is Kern Sibbald, with contributions from + many others, a complete list can be found in the file AUTHORS. + This program is Free Software; you can redistribute it and/or + modify it under the terms of version two of the GNU General Public + License as published by the Free Software Foundation plus additions + that are listed in the file LICENSE. + + 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 GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301, USA. + + Bacula® is a registered trademark of John Walker. + The licensor of Bacula is the Free Software Foundation Europe + (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich, + Switzerland, email:ftf@fsfeurope.org. +*/ /* * File types as returned by find_files() * * Kern Sibbald MMI */ -/* - Copyright (C) 2001-2006 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. - - */ #ifndef __FILES_H #define __FILES_H @@ -94,6 +107,8 @@ enum { #define FO_ENCRYPT (1<<21) /* Encrypt data stream */ #define FO_NOATIME (1<<22) /* Use O_NOATIME to prevent atime change */ #define FO_ENHANCEDWILD (1<<23) /* Enhanced wild card processing */ +#define FO_CHKCHANGES (1<<24) /* Check if file have been modified during backup */ +#define FO_STRIPPATH (1<<25) /* Check for stripping path */ struct s_included_file { struct s_included_file *next; @@ -130,6 +145,7 @@ enum { struct findFOPTS { uint32_t flags; /* options in bits */ int GZIP_level; /* GZIP level */ + int strip_path; /* strip path count */ char VerifyOpts[MAX_FOPTS]; /* verify options */ alist regex; /* regex string(s) */ alist regexdir; /* regex string(s) for directories */ @@ -150,7 +166,7 @@ struct findFOPTS { struct findINCEXE { findFOPTS *current_opts; /* points to current options structure */ alist opts_list; /* options list */ - alist name_list; /* filename list -- holds char * */ + dlist name_list; /* filename list -- holds dlistString */ }; /* @@ -177,9 +193,12 @@ struct HFSPLUS_INFO { * first argument to the find_files callback subroutine. */ struct FF_PKT { + char *top_fname; /* full filename before descending */ char *fname; /* full filename */ char *link; /* link if file linked */ POOLMEM *sys_fname; /* system filename */ + POOLMEM *fname_save; /* save when stripping path */ + POOLMEM *link_save; /* save when stripping path */ struct stat statp; /* stat packet */ int32_t FileIndex; /* FileIndex of this file */ int32_t LinkFI; /* FileIndex of main hard linked file */ @@ -201,6 +220,7 @@ struct FF_PKT { /* Values set by accept_file while processing Options */ uint32_t flags; /* backup options */ int GZIP_level; /* compression level */ + int strip_path; /* strip path count */ char *reader; /* reader program */ char *writer; /* writer program */ alist fstypes; /* allowed file system types */