Disk ARchive  2.4.15
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules
Classes | Namespaces | Macros | Typedefs | Functions | Variables
libdar_4_4.hpp File Reference

this file provide an alternative namespace to libdar for OLD APIThis is the OLD, deprecated but backward compatible APlication Interfaces (API 4.4.x found in release 2.3.x (with x >= 5) ) If you want to compile a program using an old libdar API against a recent libdar library you have to include this file in place of libdar.hpp and change the "namespace libdar" by the "namespace libdar_4_4", then link normally with libdar library. More...

#include "../my_config.h"
#include <string>
#include "erreurs.hpp"
#include "compressor.hpp"
#include "path.hpp"
#include "mask.hpp"
#include "integers.hpp"
#include "infinint.hpp"
#include "statistics.hpp"
#include "user_interaction.hpp"
#include "deci.hpp"
#include "archive_version.hpp"
#include "crypto.hpp"
#include "catalogue.hpp"
#include "archive.hpp"
#include "thread_cancellation.hpp"
#include "criterium.hpp"

Go to the source code of this file.

Classes

class  libdar_4_4::user_interaction
 wrapper class for user_interaction More...
 
class  libdar_4_4::blowfish
 wrapper class for blowfish More...
 
class  libdar_4_4::archive
 wrapper class for archive More...
 

Namespaces

 libdar_4_4
 libdar_4_4 namespace encapsulate all symbols of the backward compatible API
 

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

typedef libdar::Egeneric libdar_4_4::Egeneric
 
typedef libdar::Ememory libdar_4_4::Ememory
 
typedef libdar::Ebug libdar_4_4::Ebug
 
typedef libdar::Einfinint libdar_4_4::Einfinint
 
typedef libdar::Elimitint libdar_4_4::Elimitint
 
typedef libdar::Erange libdar_4_4::Erange
 
typedef libdar::Edeci libdar_4_4::Edeci
 
typedef libdar::Efeature libdar_4_4::Efeature
 
typedef libdar::Ehardware libdar_4_4::Ehardware
 
typedef libdar::Euser_abort libdar_4_4::Euser_abort
 
typedef libdar::Edata libdar_4_4::Edata
 
typedef libdar::Escript libdar_4_4::Escript
 
typedef libdar::Elibcall libdar_4_4::Elibcall
 
typedef libdar::Ecompilation libdar_4_4::Ecompilation
 
typedef libdar::Ethread_cancel libdar_4_4::Ethread_cancel
 
typedef libdar::compression libdar_4_4::compression
 
typedef libdar::compressor libdar_4_4::compressor
 
typedef libdar::path libdar_4_4::path
 
typedef libdar::mask libdar_4_4::mask
 
typedef libdar::bool_mask libdar_4_4::bool_mask
 
typedef libdar::simple_mask libdar_4_4::simple_mask
 
typedef libdar::regular_mask libdar_4_4::regular_mask
 
typedef libdar::not_mask libdar_4_4::not_mask
 
typedef libdar::et_mask libdar_4_4::et_mask
 
typedef libdar::ou_mask libdar_4_4::ou_mask
 
typedef libdar::simple_path_mask libdar_4_4::simple_path_mask
 
typedef libdar::same_path_mask libdar_4_4::same_path_mask
 
typedef libdar::exclude_dir_mask libdar_4_4::exclude_dir_mask
 
typedef libdar::U_8 libdar_4_4::U_8
 
typedef libdar::U_16 libdar_4_4::U_16
 
typedef libdar::U_32 libdar_4_4::U_32
 
typedef libdar::U_64 libdar_4_4::U_64
 
typedef libdar::U_I libdar_4_4::U_I
 
typedef libdar::S_8 libdar_4_4::S_8
 
typedef libdar::S_16 libdar_4_4::S_16
 
typedef libdar::S_32 libdar_4_4::S_32
 
typedef libdar::S_64 libdar_4_4::S_64
 
typedef libdar::S_I libdar_4_4::S_I
 
typedef libdar::infinint libdar_4_4::infinint
 
typedef libdar::statistics libdar_4_4::statistics
 
typedef
libdar::user_interaction_callback 
libdar_4_4::user_interaction_callback
 
typedef libdar::deci libdar_4_4::deci
 
typedef libdar::archive_version libdar_4_4::dar_version
 
typedef libdar::crypto_algo libdar_4_4::crypto_algo
 
typedef libdar::inode libdar_4_4::inode
 
typedef libdar::thread_cancellation libdar_4_4::thread_cancellation
 

Functions

compression libdar_4_4::char2compression (char a)
 
char libdar_4_4::compression2char (compression c)
 
std::string libdar_4_4::compression2string (compression c)
 
compression libdar_4_4::string2compression (const std::string &a)
 
libdar::secu_string libdar_4_4::string2secu_string (const std::string &st)
 
void libdar_4_4::crypto_split_algo_pass (const std::string &all, crypto_algo &algo, std::string &pass)
 
void libdar_4_4::get_version (U_I &major, U_I &minor, bool init_libgcrypt=true)
 depreacted old get_version function
 
void libdar_4_4::get_version_noexcept (U_I &major, U_I &minor, U_16 &exception, std::string &except_msg, bool init_libgcrypt=true)
 depreacted old get_version function
 
void libdar_4_4::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) More...
 
void libdar_4_4::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) More...
 
void libdar_4_4::get_compile_time_features (bool &ea, bool &largefile, bool &nodump, bool &special_alloc, U_I &bits, bool &thread_safe, bool &libz, bool &libbz2, bool &libcrypto, bool &new_blowfish)
 return the options activated that have been activated at compilation time More...
 
archive * libdar_4_4::open_archive_noexcept (user_interaction &dialog, const path &chem, const std::string &basename, const std::string &extension, crypto_algo crypto, const std::string &pass, U_32 crypto_size, const std::string &input_pipe, const std::string &output_pipe, const std::string &execute, bool info_details, U_16 &exception, std::string &except_msg)
 this is a wrapper around the archive constructor known as the "read" constructor More...
 
archive * libdar_4_4::create_archive_noexcept (user_interaction &dialog, const path &fs_root, const path &sauv_path, archive *ref_arch, const mask &selection, const mask &subtree, const std::string &filename, const std::string &extension, bool allow_over, bool warn_over, bool info_details, const infinint &pause, bool empty_dir, compression algo, U_I compression_level, const infinint &file_size, const infinint &first_file_size, const mask &ea_mask, const std::string &execute, crypto_algo crypto, const std::string &pass, U_32 crypto_size, const mask &compr_mask, const infinint &min_compr_size, bool nodump, inode::comparison_fields what_to_check, const infinint &hourshift, bool empty, bool alter_atime, bool same_fs, bool snapshot, bool cache_directory_tagging, bool display_skipped, const infinint &fixed_date, statistics *progressive_report, U_16 &exception, std::string &except_msg)
 this is a wrapper around the archive constructor known as the "create" constructor More...
 
archive * libdar_4_4::isolate_archive_noexcept (user_interaction &dialog, const path &sauv_path, archive *ref_arch, const std::string &filename, const std::string &extension, bool allow_over, bool warn_over, bool info_details, const infinint &pause, compression algo, U_I compression_level, const infinint &file_size, const infinint &first_file_size, const std::string &execute, crypto_algo crypto, const std::string &pass, U_32 crypto_size, bool empty, U_16 &exception, std::string &except_msg)
 this is a wrapper around the archive constructor known as the "isolate" constructor More...
 
archive * libdar_4_4::merge_archive_noexcept (user_interaction &dialog, const path &sauv_path, archive *ref_arch1, archive *ref_arch2, const mask &selection, const mask &subtree, const std::string &filename, const std::string &extension, bool allow_over, bool warn_over, bool info_details, const infinint &pause, bool empty_dir, compression algo, U_I compression_level, const infinint &file_size, const infinint &first_file_size, const mask &ea_mask, const std::string &execute, crypto_algo crypto, const std::string &pass, U_32 crypto_size, const mask &compr_mask, const infinint &min_compr_size, bool empty, bool display_skipped, bool keep_compressed, statistics *progressive_report, U_16 &exception, std::string &except_msg)
 this is a wrapper around the archive constructor known as the "merging" constructor More...
 
void libdar_4_4::close_archive_noexcept (archive *ptr, U_16 &exception, std::string &except_msg)
 this is wrapper around the archive destructor More...
 
statistics libdar_4_4::op_extract_noexcept (user_interaction &dialog, archive *ptr, const path &fs_root, const mask &selection, const mask &subtree, bool allow_over, bool warn_over, bool info_details, bool detruire, bool only_more_recent, const mask &ea_mask, bool flat, inode::comparison_fields what_to_check, bool warn_remove_no_match, const infinint &hourshift, bool empty, bool ea_erase, bool display_skipped, statistics *progressive_report, U_16 &exception, std::string &except_msg)
 this is wrapper around the op_extract method More...
 
void libdar_4_4::op_listing_noexcept (user_interaction &dialog, archive *ptr, bool info_details, archive::listformat list_mode, const mask &selection, bool filter_unsaved, U_16 &exception, std::string &except_msg)
 this is wrapper around the op_listing method More...
 
statistics libdar_4_4::op_diff_noexcept (user_interaction &dialog, archive *ptr, const path &fs_root, const mask &selection, const mask &subtree, bool info_details, const mask &ea_mask, inode::comparison_fields what_to_check, bool alter_atime, bool display_skipped, statistics *progressive_report, U_16 &exception, std::string &except_msg)
 this is wrapper around the op_diff method More...
 
statistics libdar_4_4::op_test_noexcept (user_interaction &dialog, archive *ptr, const mask &selection, const mask &subtree, bool info_details, bool display_skipped, statistics *progressive_report, U_16 &exception, std::string &except_msg)
 this is wrapper around the op_test method More...
 
bool libdar_4_4::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 More...
 
char * libdar_4_4::libdar_str2charptr_noexcept (const std::string &x, U_16 &exception, std::string &except_msg)
 routine provided to convert std::string to char * More...
 
void libdar_4_4::tools_4_4_build_compatible_overwriting_policy (bool allow_over, bool detruire, bool more_recent, const libdar::infinint &hourshift, bool ea_erase, const libdar::crit_action *&overwrite)
 Defines an overwriting policy based on pre 2.4.0 options. More...
 

Variables

const compression libdar_4_4::none = libdar::none
 
const compression libdar_4_4::zip = libdar::gzip
 
const compression libdar_4_4::gzip = libdar::gzip
 
const compression libdar_4_4::bzip2 = libdar::bzip2
 
const crypto_algo libdar_4_4::crypto_none = libdar::crypto_none
 
const crypto_algo libdar_4_4::crypto_scrambling = libdar::crypto_scrambling
 
const crypto_algo libdar_4_4::crypto_blowfish = libdar::crypto_blowfish
 
const crypto_algo libdar_4_4::crypto_blowfish_weak = libdar::crypto_blowfish
 
const U_I libdar_4_4::LIBDAR_COMPILE_TIME_MAJOR = 4
 libdar Major version defined at compilation time
 
const U_I libdar_4_4::LIBDAR_COMPILE_TIME_MEDIUM = 6
 libdar Medium version defined at compilation time
 
const U_I libdar_4_4::LIBDAR_COMPILE_TIME_MINOR = 12
 libdar Minor version defined at compilation time
 

Detailed Description

this file provide an alternative namespace to libdar for OLD API

This is the OLD, deprecated but backward compatible APlication Interfaces (API 4.4.x found in release 2.3.x (with x >= 5) ) If you want to compile a program using an old libdar API against a recent libdar library you have to include this file in place of libdar.hpp and change the "namespace libdar" by the "namespace libdar_4_4", then link normally with libdar library.

Definition in file libdar_4_4.hpp.