![]() |
Disk ARchive 2.7.19
Full featured and portable backup and archiving tool
|
backward compatibility to libdar API 5 More...
#include "../my_config.h"#include <string>#include "compressor.hpp"#include "path.hpp"#include "mask.hpp"#include "mask_list.hpp"#include "integers.hpp"#include "infinint.hpp"#include "statistics.hpp"#include "user_interaction.hpp"#include "user_interaction_callback5.hpp"#include "deci.hpp"#include "archive5.hpp"#include "crypto.hpp"#include "thread_cancellation.hpp"#include "compile_time_features.hpp"#include "capabilities.hpp"#include "entrepot_libcurl5.hpp"#include "fichier_local.hpp"#include "entrepot_local.hpp"#include "data_tree.hpp"#include "database5.hpp"#include "tuyau.hpp"#include "archive_aux.hpp"#include "tools.hpp"Go to the source code of this file.
Classes | |
| class | libdar5::infinint |
| the arbitrary large positive integer class More... | |
| class | libdar5::Egeneric |
| this is the parent class of all exception classes. More... | |
| class | libdar5::Ememory |
| exception used when memory has been exhausted More... | |
| class | libdar5::Esecu_memory |
| exception used when secure memory has been exhausted More... | |
| class | libdar5::Ebug |
| exception used to signal a bug. A bug is triggered when reaching some code that should never be reached More... | |
| class | libdar5::Einfinint |
| exception used when arithmetic error is detected when operating on infinint More... | |
| class | libdar5::Elimitint |
| exception used when a limitint overflow is detected, the maximum value of the limitint has been exceeded More... | |
| class | libdar5::Edeci |
| exception used to signal convertion problem between infinint and string (decimal representation) More... | |
| class | libdar5::Erange |
| exception used to signal range error More... | |
| class | libdar5::Efeature |
| exception used when a requested feature is not (yet) implemented More... | |
| class | libdar5::Ehardware |
| exception used when hardware problem is found More... | |
| class | libdar5::Edata |
| exception used when an error concerning the treated data has been met More... | |
| class | libdar5::Euser_abort |
| exception used to signal that the user has aborted the operation More... | |
| class | libdar5::Escript |
| exception used when error the inter-slice user command returned an error code More... | |
| class | libdar5::Elibcall |
| exception used to signal an error in the argument given to libdar call of the API More... | |
| class | libdar5::Ecompilation |
| exception used when a requested fearture has not beed activated at compilation time More... | |
| class | libdar5::Ethread_cancel |
| exception used when the thread libdar is running in is asked to stop More... | |
| class | libdar5::Esystem |
| exception used to carry system error More... | |
| class | libdar5::secu_string |
| class secu_string More... | |
| struct | libdar5::signator |
| signator status More... | |
| class | libdar5::list_entry |
| struct | libdar5::entree_stats |
| holds the statistics contents of a catalogue More... | |
| class | libdar5::mask |
| the generic class, parent of all masks More... | |
| class | libdar5::bool_mask |
| boolean mask, either always true or false More... | |
| class | libdar5::simple_mask |
| matches as done on shell command lines (see "man 7 glob") More... | |
| class | libdar5::regular_mask |
| matches regular expressions (see "man 7 regex") More... | |
| class | libdar5::not_mask |
| negation of another mask More... | |
| class | libdar5::et_mask |
| makes an AND operator between two or more masks More... | |
| class | libdar5::ou_mask |
| makes the OR operator between two or more masks More... | |
| class | libdar5::simple_path_mask |
| string matches if it is subdir of mask or mask is a subdir of expression More... | |
| class | libdar5::same_path_mask |
| matches if string is exactly the given mask (no wilde card expression) More... | |
| class | libdar5::exclude_dir_mask |
| matches if string is the given constructor string or a sub directory of it More... | |
| class | libdar5::deci |
| decimal class, convert infinint from and to decimal represention More... | |
| class | libdar5::thread_cancellation |
| class to be used as parent to provide checkpoints to inherited classes More... | |
| class | libdar5::archive_num |
| class archive_num stores the position of an archive inside a dar_manager database More... | |
| class | libdar5::criterium |
| the generic criterium class, parent of all criterium More... | |
| class | libdar5::crit_in_place_is_inode |
| returns true if the first entry is an inode (whatever is the second) More... | |
| class | libdar5::crit_in_place_is_dir |
| returns true if the first entry is a cat_directory (whatever is the second) More... | |
| class | libdar5::crit_in_place_is_file |
| returns true if the first entry is a plain file (whatever is the second) More... | |
| class | libdar5::crit_in_place_is_hardlinked_inode |
| returns true if the first entry is a inode with several hard links (whatever is the second entry) More... | |
| class | libdar5::crit_in_place_is_new_hardlinked_inode |
| class | libdar5::crit_in_place_data_more_recent |
| returns true if the data of the first entry is more recent or of the same date of the one of the second entry More... | |
| class | libdar5::crit_in_place_data_more_recent_or_equal_to |
| If the in_place entry is not an inode its date is considered equal to zero. Comparison is done on mtime. More... | |
| class | libdar5::crit_in_place_data_bigger |
| returns true if the data of the first entry is bigger or equal to the one of the second entry More... | |
| class | libdar5::crit_in_place_data_saved |
| if the entry is not an inode the result is also true More... | |
| class | libdar5::crit_in_place_data_dirty |
| return true if the entry is a dirty file (or hard linked dirty file) More... | |
| class | libdar5::crit_in_place_data_sparse |
| return true if the entry is a sparse file (or hard linked sparse file) More... | |
| class | libdar5::crit_in_place_has_delta_sig |
| return true if the entry has delta signature More... | |
| class | libdar5::crit_in_place_EA_present |
| class | libdar5::crit_in_place_EA_more_recent |
| returns true if the EA of the first entry is more recent or equal to the one of the second entry More... | |
| class | libdar5::crit_in_place_EA_more_recent_or_equal_to |
| returns true if the EA of the first entry is more recent or equal to the fixed date given in argument to the constructor More... | |
| class | libdar5::crit_in_place_more_EA |
| returns true if the first entry has more or even EA (in number not in size) than the second entry More... | |
| class | libdar5::crit_in_place_EA_bigger |
| returns true if the space used by EA of the first entry is greater or equal to the space used by the EA of the second entry (no EA means 0 byte for EA storage) More... | |
| class | libdar5::crit_in_place_EA_saved |
| returns true if the in place entry has its EA saved (not just marked as saved) in the archve of reference More... | |
| class | libdar5::crit_same_type |
| returns true if the two entries are of the same type (plain-file/char dev/block dev/named pipe/symlink/directory/unix socket) More... | |
| class | libdar5::crit_not |
| realises the negation of the criterium given in argument to its constructor More... | |
| class | libdar5::crit_and |
| realises the AND operator More... | |
| class | libdar5::crit_action |
| the global action for overwriting More... | |
| class | libdar5::crit_constant_action |
| the basic constant action More... | |
| class | libdar5::testing |
| the testing class binds criterium to actions More... | |
| class | libdar5::crit_chain |
| the crit_chain class sequences crit_actions up to full definition of the action More... | |
| class | libdar5::mask_list |
| the mask_list class, matches string that are present in a given file More... | |
| class | libdar5::generic_file |
| this is the interface class from which all other data transfer classes inherit More... | |
| class | libdar5::fichier_local |
| filesystem local files More... | |
| class | libdar5::memory_file |
| generic_file stored in memory More... | |
| class | libdar5::entrepot_local |
| class | libdar5::datetime |
| stores time information More... | |
| class | libdar5::tuyau |
| pipe implementation under the generic_file interface. More... | |
Namespaces | |
| namespace | libdar5 |
| libdar5 namespace encapsulate all libdar symbols | |
Macros | |
| #define | LIBDAR_XXXXXXXX |
| The following macro are used in the "exception" argument of the *_noexcept() functions. | |
| #define | LIBDAR_NOEXCEPT 0 |
| normal return no exception has been thrown | |
| #define | LIBDAR_EMEMORY 1 |
| memory has been exhausted | |
| #define | LIBDAR_EBUG 2 |
| internal bug error. | |
| #define | LIBDAR_EINFININT 3 |
| division by zero or other arithmetic error | |
| #define | LIBDAR_ELIMITINT 4 |
| limitint overflow | |
| #define | LIBDAR_ERANGE 5 |
| range error | |
| #define | LIBDAR_EDECI 6 |
| decimal representation error | |
| #define | LIBDAR_EFEATURE 7 |
| feature not (yet) implemented | |
| #define | LIBDAR_EHARDWARE 8 |
| hardware failure | |
| #define | LIBDAR_EUSER_ABORT 9 |
| user has aborted the operation | |
| #define | LIBDAR_EDATA 10 |
| data inconsistency, error concerning the treated data | |
| #define | LIBDAR_ESCRIPT 11 |
| inter slice script failure | |
| #define | LIBDAR_ELIBCALL 12 |
| libdar invalid call (wrong argument given to call, etc.) | |
| #define | LIBDAR_UNKNOWN 13 |
| unknown error | |
| #define | LIBDAR_ECOMPILATION 14 |
| feature not activated at compilation time | |
| #define | LIBDAR_THREAD_CANCEL 15 |
| thread cancellation has been requested | |
Typedefs | |
| using | libdar5::fsa_scope |
| set of fsa families | |
Enumerations | |
| enum class | libdar5::compression |
| the different compression algorithm available More... | |
| enum class | libdar5::crypto_algo |
| the different cypher available for encryption (strong or weak) More... | |
| enum | libdar5::capa_status |
| the EFFECTIVE set the value of the associated capability for the calling thread More... | |
| enum | libdar5::over_action_data |
| the possible actions for overwriting data More... | |
| enum | libdar5::over_action_ea |
| the possible action for overwriting EA More... | |
| enum class | libdar5::hash_algo |
| hashing algorithm available More... | |
| enum | libdar5::fsa_family |
| FSA family. More... | |
| enum | libdar5::fsa_nature |
| FSA nature. More... | |
| enum | libdar5::gf_mode |
| generic_file openning modes More... | |
| enum | libdar5::mycurl_protocol |
| libcurl protocols supported by libdar More... | |
| enum class | libdar5::modified_data_detection |
| how to detect data has changed when some fields More... | |
| enum class | libdar5::comparison_fields |
| how to consider file change during comparison and incremental backup More... | |
Functions | |
| compression | libdar5::char2compression (char a) |
| char | libdar5::compression2char (compression c) |
| std::string | libdar5::compression2string (compression c) |
| compression | libdar5::string2compression (const std::string &a) |
| fsa_scope | libdar5::all_fsa_families () |
| mycurl_protocol | libdar5::string_to_mycurl_protocol (const std::string &arg) |
| void | libdar5::get_version (U_I &major, U_I &medium, U_I &minor, bool init_libgcrypt=true) |
| return the libdar version, and make libdar initialization (may throw Exceptions) | |
| void | libdar5::get_version_noexcept (U_I &major, U_I &medium, U_I &minor, U_16 &exception, std::string &except_msg, bool init_libgcrypt=true) |
| return the libdar version, and make libdar initialization (does not throw exceptions) | |
| void | libdar5::close_and_clean () |
| archive * | libdar5::open_archive_noexcept (user_interaction &dialog, const path &chem, const std::string &basename, const std::string &extension, const archive_options_read &options, U_16 &exception, std::string &except_msg) |
| this is a wrapper around the archive constructor known as the "read" constructor | |
| archive * | libdar5::create_archive_noexcept (user_interaction &dialog, const path &fs_root, const path &sauv_path, const std::string &filename, const std::string &extension, const archive_options_create &options, statistics *progressive_report, U_16 &exception, std::string &except_msg) |
| this is a wrapper around the archive constructor known as the "create" constructor | |
| archive * | libdar5::isolate_archive_noexcept (user_interaction &dialog, archive *ptr, const path &sauv_path, const std::string &filename, const std::string &extension, const archive_options_isolate &options, U_16 &exception, std::string &except_msg) |
| this is a wrapper around the archive constructor known as the "isolate" constructor | |
| archive * | libdar5::merge_archive_noexcept (user_interaction &dialog, const path &sauv_path, archive *ref_arch1, const std::string &filename, const std::string &extension, const archive_options_merge &options, statistics *progressive_report, U_16 &exception, std::string &except_msg) |
| this is a wrapper around the archive constructor known as the "merging" constructor | |
| void | libdar5::close_archive_noexcept (archive *ptr, U_16 &exception, std::string &except_msg) |
| this is wrapper around the archive destructor | |
| statistics | libdar5::op_extract_noexcept (user_interaction &dialog, archive *ptr, const path &fs_root, const archive_options_extract &options, statistics *progressive_report, U_16 &exception, std::string &except_msg) |
| this is wrapper around the op_extract method | |
| void | libdar5::op_listing_noexcept (user_interaction &dialog, archive *ptr, const archive_options_listing &options, U_16 &exception, std::string &except_msg) |
| this is wrapper around the op_listing method | |
| statistics | libdar5::op_diff_noexcept (user_interaction &dialog, archive *ptr, const path &fs_root, const archive_options_diff &options, statistics *progressive_report, U_16 &exception, std::string &except_msg) |
| this is wrapper around the op_diff method | |
| statistics | libdar5::op_test_noexcept (user_interaction &dialog, archive *ptr, const archive_options_test &options, statistics *progressive_report, U_16 &exception, std::string &except_msg) |
| this is wrapper around the op_test method | |
| bool | libdar5::get_children_of_noexcept (user_interaction &dialog, archive *ptr, const std::string &dir, U_16 &exception, std::string &except_msg) |
| this is wrapper around the get_children_of method | |
| char * | libdar5::libdar_str2charptr_noexcept (const std::string &x, U_16 &exception, std::string &except_msg) |
| routine provided to convert std::string to char * | |
| std::string | libdar5::tools_printf (const char *format,...) |
| make printf-like formating to a std::string | |
| std::string | libdar5::tools_getcwd () |
| get current working directory | |
| infinint | libdar5::tools_get_extended_size (std::string s, U_I base) |
| convert the given string to infinint taking care of multiplication suffixes like k, M, T, etc. | |
| bool | libdar5::tools_my_atoi (const char *a, U_I &val) |
| ascii to integer conversion | |
| U_I | libdar5::tools_octal2int (const std::string &perm) |
| convert octal string to integer | |
Variables | |
| constexpr compression | libdar5::none = compression::none |
| constexpr compression | libdar5::gzip = compression::gzip |
| constexpr compression | libdar5::bzip2 = compression::bzip2 |
| constexpr compression | libdar5::lzo = compression::lzo |
| constexpr compression | libdar5::xz = compression::xz |
| constexpr compression | libdar5::lzo1x_1_15 = compression::lzo1x_1_15 |
| constexpr compression | libdar5::lzo1x_1 = compression::lzo1x_1 |
| constexpr crypto_algo | libdar5::crypto_none = crypto_algo::none |
| constexpr crypto_algo | libdar5::crypto_scrambling = crypto_algo::scrambling |
| constexpr crypto_algo | libdar5::crypto_blowfish = crypto_algo::blowfish |
| constexpr crypto_algo | libdar5::crypto_aes256 = crypto_algo::aes256 |
| constexpr crypto_algo | libdar5::crypto_twofish256 = crypto_algo::twofish256 |
| constexpr crypto_algo | libdar5::crypto_serpent256 = crypto_algo::serpent256 |
| constexpr crypto_algo | libdar5::crypto_camellia256 = crypto_algo::camellia256 |
| constexpr capa_status | libdar5::capa_set = libdar::capa_status::capa_set |
| constexpr capa_status | libdar5::capa_clear = libdar::capa_status::capa_clear |
| constexpr capa_status | libdar5::capa_unknown = libdar::capa_status::capa_unknown |
| constexpr over_action_data | libdar5::data_preserve = libdar::over_action_data::data_preserve |
| constexpr over_action_data | libdar5::data_overwrite = libdar::over_action_data::data_overwrite |
| constexpr over_action_data | libdar5::data_preserve_mark_already_saved = libdar::over_action_data::data_preserve_mark_already_saved |
| constexpr over_action_data | libdar5::data_overwrite_mark_already_saved = libdar::over_action_data::data_overwrite_mark_already_saved |
| constexpr over_action_data | libdar5::data_remove = libdar::over_action_data::data_remove |
| constexpr over_action_data | libdar5::data_undefined = libdar::over_action_data::data_undefined |
| constexpr over_action_data | libdar5::data_ask = libdar::over_action_data::data_ask |
| constexpr over_action_ea | libdar5::EA_preserve = libdar::over_action_ea::EA_preserve |
| constexpr over_action_ea | libdar5::EA_overwrite = libdar::over_action_ea::EA_overwrite |
| constexpr over_action_ea | libdar5::EA_clear = libdar::over_action_ea::EA_clear |
| constexpr over_action_ea | libdar5::EA_preserve_mark_already_saved = libdar::over_action_ea::EA_preserve_mark_already_saved |
| constexpr over_action_ea | libdar5::EA_overwrite_mark_already_saved = libdar::over_action_ea::EA_overwrite_mark_already_saved |
| constexpr over_action_ea | libdar5::EA_merge_preserve = libdar::over_action_ea::EA_merge_preserve |
| constexpr over_action_ea | libdar5::EA_merge_overwrite = libdar::over_action_ea::EA_merge_overwrite |
| constexpr over_action_ea | libdar5::EA_undefined = libdar::over_action_ea::EA_undefined |
| constexpr over_action_ea | libdar5::EA_ask = libdar::over_action_ea::EA_ask |
| constexpr hash_algo | libdar5::hash_none = hash_algo::none |
| constexpr hash_algo | libdar5::hash_md5 = hash_algo::md5 |
| constexpr hash_algo | libdar5::hash_sha1 = hash_algo::sha1 |
| constexpr hash_algo | libdar5::hash_sha512 = hash_algo::sha512 |
| constexpr fsa_family | libdar5::fsaf_hfs_plus = fsa_family::fsaf_hfs_plus |
| constexpr fsa_family | libdar5::fsaf_linux_extX = fsa_family::fsaf_linux_extX |
| constexpr fsa_nature | libdar5::fsan_unset = fsa_nature::fsan_unset |
| constexpr fsa_nature | libdar5::fsan_creation_date = fsa_nature::fsan_creation_date |
| constexpr fsa_nature | libdar5::fsan_append_only = fsa_nature::fsan_append_only |
| constexpr fsa_nature | libdar5::fsan_compressed = fsa_nature::fsan_compressed |
| constexpr fsa_nature | libdar5::fsan_no_dump = fsa_nature::fsan_no_dump |
| constexpr fsa_nature | libdar5::fsan_immutable = fsa_nature::fsan_immutable |
| constexpr fsa_nature | libdar5::fsan_data_journaling = fsa_nature::fsan_data_journaling |
| constexpr fsa_nature | libdar5::fsan_secure_deletion = fsa_nature::fsan_secure_deletion |
| constexpr fsa_nature | libdar5::fsan_no_tail_merging = fsa_nature::fsan_no_tail_merging |
| constexpr fsa_nature | libdar5::fsan_undeletable = fsa_nature::fsan_undeletable |
| constexpr fsa_nature | libdar5::fsan_noatime_update = fsa_nature::fsan_noatime_update |
| constexpr fsa_nature | libdar5::fsan_synchronous_directory = fsa_nature::fsan_synchronous_directory |
| constexpr fsa_nature | libdar5::fsan_synchronous_udpdate = fsa_nature::fsan_synchronous_update |
| constexpr fsa_nature | libdar5::fsan_top_of_dir_hierarchy = fsa_nature::fsan_top_of_dir_hierarchy |
| constexpr gf_mode | libdar5::gf_read_only = gf_mode::gf_read_only |
| constexpr gf_mode | libdar5::gf_write_only = gf_mode::gf_write_only |
| constexpr gf_mode | libdar5::gf_read_write = gf_mode::gf_read_write |
| constexpr mycurl_protocol | libdar5::proto_ftp = mycurl_protocol::proto_ftp |
| constexpr mycurl_protocol | libdar5::proto_sftp = mycurl_protocol::proto_sftp |
| constexpr comparison_fields | libdar5::cf_all = comparison_fields::all |
| constexpr comparison_fields | libdar5::cf_ignore_owner = comparison_fields::ignore_owner |
| constexpr comparison_fields | libdar5::cf_mtime = comparison_fields::mtime |
| constexpr comparison_fields | libdar5::cf_inode_type = comparison_fields::inode_type |
| const U_I | libdar5::LIBDAR_COMPILE_TIME_MAJOR = 5 |
| libdar Major version defined at compilation time | |
| const U_I | libdar5::LIBDAR_COMPILE_TIME_MEDIUM = 202 |
| libdar Medium version defined at compilation time | |
| const U_I | libdar5::LIBDAR_COMPILE_TIME_MINOR = 3 |
| libdar Minor version defined at compilation time | |
backward compatibility to libdar API 5
Definition in file libdar5.hpp.