 |
Disk ARchive
2.6.8
Full featured and portable backup and archiving tool
|
Go to the documentation of this file.
29 #include "../my_config.h"
64 const std::string & xname,
66 cat_inode(
const std::shared_ptr<user_interaction> & dialog,
74 cat_inode & operator = (
cat_inode && ref) noexcept { cat_nomme::operator = (std::move(ref)); move_from(std::move(ref));
return *
this; };
79 U_16 get_perm()
const {
return perm; };
86 bool same_as(
const cat_inode & ref)
const;
87 bool is_more_recent_than(
const cat_inode & ref,
const infinint & hourshift)
const;
99 bool isolated_mode)
const;
122 void ea_detach()
const;
126 void ea_set_offset(
const infinint & pos);
127 bool ea_get_offset(
infinint & pos)
const;
128 void ea_set_crc(
const crc & val);
156 void fsa_partial_attach(
const fsa_scope & val);
158 void fsa_detach()
const;
162 void fsa_set_offset(
const infinint & pos);
163 bool fsa_get_offset(
infinint & pos)
const;
164 void fsa_set_crc(
const crc & val);
165 void fsa_get_crc(
const crc * & ptr)
const;
166 bool fsa_get_crc_size(
infinint & val)
const;
169 virtual void sub_compare(
const cat_inode & other,
bool isolated_mode)
const {};
170 bool get_small_read()
const {
return small_read; };
173 virtual void inherited_dump(
const pile_descriptor & pdesc,
bool small)
const override;
205 void nullifyptr() noexcept;
206 void destroy() noexcept;
208 void move_from(
cat_inode && ref) noexcept;
base class of all objects contained in a catalogue and that can be named
datetime last_acc
last access time (atime)
filesystem specific attributes
here lies a collection of mask classes
ea_attributs * ea
Extended Attributes read or to be written down.
infinint * fsa_offset
offset in archive where to find FSA # always allocated (to be reviewed)
datetime last_cha
last inode meta data change (ctime)
defines the interaction interface between libdar and users.
are defined here basic integer types that tend to be portable
saved_status
data saved status for an entry
fsa_saved_status fsa_saved
inode Filesystem Specific Attribute status
fsa_saved_status
FSA saved status for an entry.
crc * ea_crc
CRC computed on EA.
switch module to limitint (32 ou 64 bits integers) or infinint
the arbitrary large positive integer class
the base class for all entry that have a name
the generic class, parent of all masks
this file contains the definition of class datetime that stores unix times in a portable way
contains a set of routines to manage EA values associated to a file
the root class for all cat_inode
class archive_version manages the version of the archive format
bool is_null() const
return true if the datetime is exactly January 1st, 1970, 0 h 0 mn 0 s
U_16 perm
inode's permission
pure virtual class defining interface of a CRC object
ea_saved_status ea_saved
inode Extended Attribute status
void compare(const cat_inode &other, const mask &ea_mask, comparison_fields what_to_check, const infinint &hourshift, bool symlink_date, const fsa_scope &scope, bool isolated_mode) const
do not try to compare pointed to data, EA of FSA (suitable for isolated catalogue)
inode is saved in the archive
virtual void inherited_dump(const pile_descriptor &pdesc, bool small) const override
true if object has been created by sequential reading of an archive
ea_saved_status
EA saved status for an entry.
bool ea_get_crc_size(infinint &val) const
returns true if crc is know and puts its width in argument
bool small_read
whether we the object has been built with sequential-reading
datetime last_mod
last modification time (mtime)
set of datastructures used to interact with a catalogue object
fsa_scope fsa_get_families() const
gives the set of FSA family recorded for that inode
infinint * fsa_families
list of FSA families present for that inode (set to nullptr in fsa_none mode)
comparison_fields
how to consider file change during comparison and incremental backup
cat_inode(const infinint &xuid, const infinint &xgid, U_16 xperm, const datetime &last_access, const datetime &last_modif, const datetime &last_change, const std::string &xname, const infinint &device)
flag used to only consider certain fields when comparing/restoring inodes
archive_version edit
need to know EA and FSA format used in archive file
void ea_get_crc(const crc *&ptr) const
the argument is set to point to an allocated crc object owned by this "cat_inode" object,...
filesystem_specific_attribute_list * fsal
Filesystem Specific Attributes read or to be written down # only allocated if fsa_saved if set to FUL...
infinint * fs_dev
filesystem ID on which resides the inode (only used when read from filesystem)
infinint * ea_offset
offset in archive where to find EA
interface to fileystem for FSA
crc * fsa_crc
CRC computed on FSA.
const ea_attributs * get_ea() const
the returned value is the address of an existing file of the cat_inode object and shall not be delete...
infinint * ea_size
storage size required by EA
infinint uid
inode owner's user ID
infinint gid
inode owner's group ID
fsa_scope infinint_to_fsa_scope(const infinint &ref)
convert an infinint to fsa_scape
infinint * fsa_size
storage size required for FSA
the class ea_attributs manages the set of EA that can be associated to an inode
std::set< fsa_family > fsa_scope
set of fsa families
libdar namespace encapsulate all libdar symbols