29 #include "../my_config.h"
49 const path & fs_racine,
50 bool fs_warn_overwrite,
53 bool display_treated_only_dir,
59 bool warn_remove_no_match,
63 archive_options_extract::t_dirty dirty,
67 bool ignore_unix_sockets
70 extern void filtre_sauvegarde(
const std::shared_ptr<user_interaction> & dialog,
73 const pile_descriptor & pdesc,
76 const path & fs_racine,
79 bool display_treated_only_dir,
81 bool display_finished,
85 const mask &compr_mask,
90 bool furtive_read_mode,
91 const filesystem_ids & same_fs,
94 bool cache_directory_tagging,
99 const infinint & sparse_file_min_size,
100 const std::string & backup_hook_file_execute,
101 const mask & backup_hook_file_mask,
104 const std::string & exclude_by_ea,
105 bool delta_signature,
106 const infinint & delta_sig_min_size,
107 const mask & delta_mask,
109 bool auto_zeroing_neg_dates,
110 const std::set<std::string> & ignored_symlinks,
114 extern void filtre_difference(
const std::shared_ptr<user_interaction> & dialog,
118 const path & fs_racine,
120 bool display_treated,
121 bool display_treated_only_dir,
122 bool display_skipped,
124 const mask & ea_mask,
126 bool furtive_read_mode,
129 bool compare_symlink_date,
133 extern void filtre_test(
const std::shared_ptr<user_interaction> & dialog,
138 bool display_treated,
139 bool display_treated_only_dir,
140 bool display_skipped,
144 extern void filtre_merge(
const std::shared_ptr<user_interaction> & dialog,
146 const mask & subtree,
147 const pile_descriptor & pdesc,
152 bool display_treated,
153 bool display_treated_only_dir,
154 bool display_skipped,
157 const mask & ea_mask,
158 const mask & compr_mask,
160 bool keep_compressed,
163 bool decremental_mode,
164 const infinint & sparse_file_min_size,
166 bool delta_signature,
167 bool build_delta_sig,
168 const infinint & delta_sig_min_size,
169 const mask & delta_mask,
180 bool decremental_mode,
190 const mask & subtree,
195 bool display_treated,
196 bool display_skipped,
200 bool decremental_mode,
211 const pile_descriptor & pdesc,
214 bool display_treated,
215 bool display_treated_only_dir,
216 const mask & compr_mask,
218 bool keep_compressed,
219 const infinint & sparse_file_min_size,
220 bool delta_signature,
221 bool build_delta_sig,
222 const infinint & delta_sig_min_size,
223 const mask & delta_mask,
230 void filtre_sequentially_read_all_catalogue(
catalogue & cat,
231 const std::shared_ptr<user_interaction> & dialog,
this file contains a set of classes used to transmit options to archive operation
here is defined the classe used to manage catalogue of archives
the catalogue class which gather all objects contained in a give archive
the global action for overwriting
the arbitrary large positive integer class
the generic class, parent of all masks
the class path is here to manipulate paths in the Unix notation: using'/'
class used by libdar::archive class to give a summary of treated file during and after an operation
class to be used as parent to provide checkpoints to inherited classes
gather the ids of different filesystem to provide a filter based on filesystem
modified_data_detection
how to detect data has changed when some fields
comparison_fields
how to consider file change during comparison and incremental backup
std::set< fsa_family > fsa_scope
set of fsa families
void filtre_merge_step0(const std::shared_ptr< user_interaction > &dialog, const catalogue *ref1, const catalogue *ref2, statistics &st, bool decremental_mode, crit_action *&decr, const crit_action *&overwrite, bool &abort, thread_cancellation &thr_cancel)
initialize variables used for merging in step1 and step2
void filtre_merge_step2(const std::shared_ptr< user_interaction > &dialog, const pile_descriptor &pdesc, catalogue &cat, bool info_details, bool display_treated, bool display_treated_only_dir, const mask &compr_mask, const infinint &min_compr_size, bool keep_compressed, const infinint &sparse_file_min_size, bool delta_signature, bool build_delta_sig, const infinint &delta_sig_min_size, const mask &delta_mask, bool &abort, thread_cancellation &thr_cancel, bool repair_mode, const delta_sig_block_size &signature_block_size)
copies data of "cat" catalogue to the pdesc of a brand new archive
void filtre_merge_step1(const std::shared_ptr< user_interaction > &dialog, const mask &filtre, const mask &subtree, catalogue &cat, const catalogue *ref1, const catalogue *ref2, bool info_details, bool display_treated, bool display_skipped, statistics &st, bool make_empty_dir, bool warn_overwrite, bool decremental_mode, crit_action *&decr, const crit_action *&overwrite, bool &abort, thread_cancellation &thr_cancel)
builds a catalogue from two refs with the given policy and filters
void filtre_restore(const std::shared_ptr< user_interaction > &dialog, const mask &filtre, const mask &subtree, const catalogue &cat, const path &fs_racine, bool fs_warn_overwrite, bool info_details, bool display_treated, bool display_treated_only_dir, bool display_skipped, statistics &st, const mask &ea_mask, bool flat, comparison_fields what_to_check, bool warn_remove_no_match, bool empty, bool empty_dir, const crit_action &x_overwrite, archive_options_extract::t_dirty dirty, bool only_deleted, bool not_deleted, const fsa_scope &scope, bool ignore_unix_sockets)
here lies a collection of mask classes
bool nodump() noexcept
returns whether nodump flag support has been activated at compilation time
libdar namespace encapsulate all libdar symbols
here is the definition of the path class
class pile definition. Used to manage a stack of generic_file objects
class handling access to the data summary of treated files after and during each operation
defines how to calculate delta signature block size based of file size to delta sign
to be able to cancel libdar operation while running in a given thread.