X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=bacula%2Fsrc%2Ffindlib%2Ffind.h;h=b1af7394036c2d9aabd51c641110b30bed3fdc5e;hb=4db578a0f82328fc7902c58a00465c2e789b2b7b;hp=9860ff5369c01d10fec2e47ee6c5c8ddb7bf11d9;hpb=84590e1863a3eeee0010a8ffe130ba55c2f9f86f;p=bacula%2Fbacula diff --git a/bacula/src/findlib/find.h b/bacula/src/findlib/find.h index 9860ff5369..b1af739403 100644 --- a/bacula/src/findlib/find.h +++ b/bacula/src/findlib/find.h @@ -20,7 +20,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - Bacula® is a registered trademark of John Walker. + Bacula® is a registered trademark of Kern Sibbald. The licensor of Bacula is the Free Software Foundation Europe (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich, Switzerland, email:ftf@fsfeurope.org. @@ -36,7 +36,7 @@ #include "jcr.h" #include "bfile.h" -#include "../filed/fd-plugins.h" +#include "../filed/fd_plugins.h" #ifdef HAVE_DIRENT_H #include @@ -44,6 +44,9 @@ #endif #include +#if !defined(HAVE_WIN32) || defined(HAVE_MINGW) +#include +#endif #if HAVE_UTIME_H #include #else @@ -68,19 +71,8 @@ struct utimbuf { int readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result); #endif - -/* - * Status codes returned by create_file() - */ -enum { - CF_SKIP = 1, /* skip file (not newer or something) */ - CF_ERROR, /* error creating file */ - CF_EXTRACT, /* file created, data to extract */ - CF_CREATED /* file created, no data to extract */ -}; - - -/* Options saved int "options" of the include/exclude lists. +/* + * Options saved int "options" of the include/exclude lists. * They are directly jammed ito "flag" of ff packet */ #define FO_MD5 (1<<1) /* Do MD5 checksum */ @@ -108,6 +100,8 @@ enum { #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 */ +#define FO_HONOR_NODUMP (1<<26) /* honor NODUMP flag */ +#define FO_XATTR (1<<27) /* Backup Extended Attributes */ struct s_included_file { struct s_included_file *next; @@ -146,6 +140,7 @@ struct findFOPTS { int GZIP_level; /* GZIP level */ int strip_path; /* strip path count */ char VerifyOpts[MAX_FOPTS]; /* verify options */ + char AccurateOpts[MAX_FOPTS]; /* accurate mode options */ alist regex; /* regex string(s) */ alist regexdir; /* regex string(s) for directories */ alist regexfile; /* regex string(s) for files */ @@ -156,8 +151,7 @@ struct findFOPTS { alist base; /* list of base names */ alist fstype; /* file system type limitation */ alist drivetype; /* drive type limitation */ - char *reader; /* reader program */ - char *writer; /* writer program */ + char *ignoredir; /* ignore directories with this file */ }; @@ -211,18 +205,21 @@ struct FF_PKT { bool null_output_device; /* using null output device */ bool incremental; /* incremental save */ char VerifyOpts[20]; + char AccurateOpts[20]; struct s_included_file *included_files_list; struct s_excluded_file *excluded_files_list; struct s_excluded_file *excluded_paths_list; findFILESET *fileset; - int (*callback)(FF_PKT *, void *, bool); /* User's callback */ + int (*file_save)(JCR *, FF_PKT *, bool); /* User's callback */ + int (*plugin_save)(JCR *, FF_PKT *, bool); /* User's callback */ + bool (*check_fct)(JCR *, FF_PKT *); /* optionnal user fct to check file changes */ /* 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 */ + char *ignoredir; /* ignore directories with this file */ + bool cmd_plugin; /* set if we have a command plugin */ alist fstypes; /* allowed file system types */ alist drivetypes; /* allowed drive types */