From: Kern Sibbald Date: Wed, 24 Nov 2010 13:29:33 +0000 (+0100) Subject: Define new stream bits X-Git-Tag: Release-5.2.1~878 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=b906c1212456d509beec9d2f079d591b56fc645b;p=bacula%2Fbacula Define new stream bits --- diff --git a/bacula/src/fileopts.h b/bacula/src/fileopts.h index c48ff24865..0de2ad8545 100644 --- a/bacula/src/fileopts.h +++ b/bacula/src/fileopts.h @@ -41,35 +41,36 @@ * 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 */ -#define FO_GZIP (1<<2) /* Do Zlib compression */ -#define FO_NO_RECURSION (1<<3) /* no recursion in directories */ -#define FO_MULTIFS (1<<4) /* multiple file systems */ -#define FO_SPARSE (1<<5) /* do sparse file checking */ -#define FO_IF_NEWER (1<<6) /* replace if newer */ -#define FO_NOREPLACE (1<<7) /* never replace */ -#define FO_READFIFO (1<<8) /* read data from fifo */ -#define FO_SHA1 (1<<9) /* Do SHA1 checksum */ -#define FO_PORTABLE (1<<10) /* Use portable data format -- no BackupWrite */ -#define FO_MTIMEONLY (1<<11) /* Use mtime rather than mtime & ctime */ -#define FO_KEEPATIME (1<<12) /* Reset access time */ -#define FO_EXCLUDE (1<<13) /* Exclude file */ -#define FO_ACL (1<<14) /* Backup ACLs */ -#define FO_NO_HARDLINK (1<<15) /* don't handle hard links */ -#define FO_IGNORECASE (1<<16) /* Ignore file name case */ -#define FO_HFSPLUS (1<<17) /* Resource forks and Finder Info */ -#define FO_WIN32DECOMP (1<<18) /* Use BackupRead decomposition */ -#define FO_SHA256 (1<<19) /* Do SHA256 checksum */ -#define FO_SHA512 (1<<20) /* Do SHA512 checksum */ -#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 */ -#define FO_HONOR_NODUMP (1<<26) /* honor NODUMP flag */ -#define FO_XATTR (1<<27) /* Backup Extended Attributes */ -#define FO_DELTA (1<<28) /* Delta data -- i.e. all copies returned on restore */ -#define FO_PLUGIN (1<<29) /* Plugin data stream -- return to plugin on restore */ -#define FO_OFFSETS (1<<30) /* Keep I/O file offsets */ +#define FO_PORTABLE_DATA (1<<0) /* Data is portable */ +#define FO_MD5 (1<<1) /* Do MD5 checksum */ +#define FO_GZIP (1<<2) /* Do Zlib compression */ +#define FO_NO_RECURSION (1<<3) /* no recursion in directories */ +#define FO_MULTIFS (1<<4) /* multiple file systems */ +#define FO_SPARSE (1<<5) /* do sparse file checking */ +#define FO_IF_NEWER (1<<6) /* replace if newer */ +#define FO_NOREPLACE (1<<7) /* never replace */ +#define FO_READFIFO (1<<8) /* read data from fifo */ +#define FO_SHA1 (1<<9) /* Do SHA1 checksum */ +#define FO_PORTABLE (1<<10) /* Use portable data format -- no BackupWrite */ +#define FO_MTIMEONLY (1<<11) /* Use mtime rather than mtime & ctime */ +#define FO_KEEPATIME (1<<12) /* Reset access time */ +#define FO_EXCLUDE (1<<13) /* Exclude file */ +#define FO_ACL (1<<14) /* Backup ACLs */ +#define FO_NO_HARDLINK (1<<15) /* don't handle hard links */ +#define FO_IGNORECASE (1<<16) /* Ignore file name case */ +#define FO_HFSPLUS (1<<17) /* Resource forks and Finder Info */ +#define FO_WIN32DECOMP (1<<18) /* Use BackupRead decomposition */ +#define FO_SHA256 (1<<19) /* Do SHA256 checksum */ +#define FO_SHA512 (1<<20) /* Do SHA512 checksum */ +#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 */ +#define FO_HONOR_NODUMP (1<<26) /* honor NODUMP flag */ +#define FO_XATTR (1<<27) /* Backup Extended Attributes */ +#define FO_DELTA (1<<28) /* Delta data -- i.e. all copies returned on restore */ +#define FO_PLUGIN (1<<29) /* Plugin data stream -- return to plugin on restore */ +#define FO_OFFSETS (1<<30) /* Keep I/O file offsets */ #endif /* __BFILEOPTSS_H */ diff --git a/bacula/src/streams.h b/bacula/src/streams.h index 73d91f7051..cf823a1e1a 100644 --- a/bacula/src/streams.h +++ b/bacula/src/streams.h @@ -35,9 +35,25 @@ #ifndef __BSTREAMS_H #define __BSTREAMS_H 1 +/* Stream bits -- these bits are new as of 24Nov10 */ +#define STREAM_BIT_64 (1<<30) /* 64 bit stream (not yet implemented) */ +#define STREAM_BIT_BITS (1<<29) /* Following bits may be set */ +#define STREAM_BIT_PLUGIN (1<<28) /* Item written by a plugin */ +#define STREAM_BIT_DELTA (1<<27) /* Stream contains delta data */ +#define STREAM_BIT_OFFSETS (1<<26) /* Stream has data offset */ +#define STREAM_BIT_PORTABLE_DATA (1<<25) /* Data is portable */ + +/* TYPE represents our current (old) stream types -- e.g. values 0 - 2047 */ +#define STREAMBASE_TYPE 0 /* base for types */ +#define STREAMBITS_TYPE 11 /* type bit size */ +#define STREAMMASK_TYPE (~((~0)<< STREAMBITS_TYPE) << STREAMBASE_TYPE) +/* + * Note additional base, bits, and masks can be defined for new + * ranges or subranges of stream attributes. + */ /** - * Stream definitions. Once defined these must NEVER + * Old, but currently used Stream definitions. Once defined these must NEVER * change as they go on the storage media. * Note, the following streams are passed from the SD to the DIR * so that they may be put into the catalog (actually only the @@ -154,4 +170,6 @@ #define STREAM_XATTR_LINUX 1998 /* Linux specific extended attributes */ #define STREAM_XATTR_NETBSD 1999 /* NetBSD specific extended attributes */ +/* WARNING!!! do not define more than 2047 of these old types */ + #endif /* __BSTREAMS_H */