30 #include "../my_config.h" 66 const std::string & basename,
67 const std::string & extension,
93 const path & sauv_path,
94 const std::string & filename,
95 const std::string & extension,
109 const path &sauv_path,
111 const std::string & filename,
112 const std::string & extension,
134 const path & sauv_path,
136 const std::string & filename,
137 const std::string & extension,
215 const path & fs_root,
216 const archive_options_diff & options,
256 const std::string & dir);
304 enum operation { oper_create, oper_isolate, oper_merge };
313 bool sequential_read;
316 catalogue & get_cat()
const {
if(cat == NULL)
throw SRC_BUG;
else return *cat; };
318 const path & get_path() {
if(local_path == NULL)
throw SRC_BUG;
else return *local_path; };
323 infinint get_cat_size()
const {
return local_cat_size; };
327 const path & fs_root,
328 const path & sauv_path,
330 const mask & selection,
331 const mask & subtree,
332 const std::string & filename,
333 const std::string & extension,
340 U_I compression_level,
343 const mask & ea_mask,
344 const std::string & execute,
348 const mask & compr_mask,
354 bool furtive_read_mode,
358 bool cache_directory_tagging,
359 bool display_skipped,
361 const std::string & slice_permission,
362 const std::string & slice_user_ownership,
363 const std::string & slice_group_ownership,
366 bool add_marks_for_sequential_reading,
368 const infinint & sparse_file_min_size,
369 const std::string & user_comment,
372 const std::string & backup_hook_file_execute,
373 const mask & backup_hook_file_mask,
379 const path & fs_root,
380 const path & sauv_path_t,
383 const path * ref_path,
384 const mask & selection,
385 const mask & subtree,
386 const std::string & filename,
387 const std::string & extension,
395 U_I compression_level,
398 const mask & ea_mask,
399 const std::string & execute,
403 const mask & compr_mask,
409 bool furtive_read_mode,
413 bool cache_directory_tagging,
414 bool display_skipped,
415 bool keep_compressed,
417 const std::string & slice_permission,
418 const std::string & slice_user_ownership,
419 const std::string & slice_group_ownership,
423 bool add_marks_for_sequential_reading,
425 const infinint & sparse_file_min_size,
426 const std::string & user_comment,
429 const std::string & backup_hook_file_execute,
430 const mask & backup_hook_file_mask,
434 void disable_natural_destruction();
435 void enable_natural_destruction();
436 const label & get_layer1_data_name()
const;
437 const label & get_catalogue_data_name()
const;
438 bool only_contains_an_isolated_catalogue()
const;
440 void check_header_version()
const;
441 const directory *get_dir_object(
const std::string & dir)
const;
statistics op_extract(user_interaction &dialog, const path &fs_root, const archive_options_extract &options, statistics *progressive_report)
extraction of data from an archive
const catalogue & get_catalogue() const
gives access to internal catalogue (not to be used from the API)
the generic class, parent of all masks
the catalogue class which gather all objects contained in a give archive
holds the statistics contents of a catalogue
statistics op_diff(user_interaction &dialog, const path &fs_root, const archive_options_diff &options, statistics *progressive_report)
archive comparison with filesystem
const char * dar_gettext(const char *)
a routine to change NLS domaine forth and back for inline routines
class holding optional parameters used to test the structure coherence of an existing archive ...
archive(const archive &ref)
copy constructor (not implemented, throw an exception if called explicitely or implicitely) ...
class of objects describing an entry in the archive, used by archive::get_children_in_table ...
class pile definition. Used to manage a stack of generic_file objects
const entree_stats get_stats() const
retrieving statistics about archive contents
This is a pure virtual class that is used by libdar when interaction with the user is required...
void init_catalogue(user_interaction &dialog) const
the directory inode class
comparison_fields
flag used to only consider certain fields when comparing/restoring inodes
the archive class realizes the most general operations on archives
crypto_algo
the different cypher available for encryption (strong or weak)
const std::vector< list_entry > get_children_in_table(const std::string &dir) const
here is the definition of the path classthe path class handle path and provide several operation on t...
class escape_catalogue definition. Used for sequential writing to archives, as well as several other ...
exception used when a requested feature is not (yet) implemented
handle the statistic structure that gives a summary of treated files after each operatio ...
class escape definition, used for sequential reading of archivesThe class escape is used to insert es...
archive(user_interaction &dialog, const path &chem, const std::string &basename, const std::string &extension, const archive_options_read &options)
this constructor opens an already existing archive (for reading) [this is the "read" constructor] ...
void summary(user_interaction &dialog)
the global action for overwriting
contains all the excetion class thrown by libdar
compression
the different compression algorithm available
this file contains a set of classes used to transmit options to archive operation ...
bool nodump()
returns whether nodump flag support has been activated at compilation time
void drop_all_filedescriptors()
closes all filedescriptors and associated data, just keep the catalogue
void op_listing(user_interaction &dialog, const archive_options_listing &options)
listing of the archive contents
contains the definition of the scrambler class, a very weak encryption scheme
class holding optional parameters used to list the contents of an existing archive ...
the arbitrary large positive integer class
class holding optional parameters used to read an existing archive
class holding optional parameters used to proceed to the merge operation
statistics op_test(user_interaction &dialog, const archive_options_test &options, statistics *progressive_report)
test the archive integrity
class holding optional parameters used to create an archive
class holding optional parameters used to isolate an existing archive
libdar namespace encapsulate all libdar symbols
bool get_children_of(user_interaction &dialog, const std::string &dir)
getting information about a given directory
structure returned by libdar call to give a summary of the operation done in term of file treated ...
the class path is here to manipulate paths in the Unix notation: using'/'