Disk ARchive 2.4.2
Classes | Files | Typedefs | Functions | Variables
OLD_API_4_4

Classes

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

Files

file  libdar_4_4.hpp
 

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.


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::compressor libdar_4_4::compressor
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_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::user_interaction_callback 
libdar_4_4::user_interaction_callback
typedef
libdar::archive_options_listing::listformat 
libdar_4_4::archive::listformat
 defines the way archive listing is done:

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::user_interaction::get_secu_string (const std::string &message, bool echo)
 same a get_string() but uses secu_string instead
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)
 libdar_4_4::archive::archive (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)
 libdar_4_4::archive::archive (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)
 libdar_4_4::archive::archive (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)
 libdar_4_4::archive::archive (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)
statistics libdar_4_4::archive::op_extract (user_interaction &dialog, 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)
void libdar_4_4::archive::op_listing (user_interaction &dialog, bool info_details, archive::listformat list_mode, const mask &selection, bool filter_unsaved)
statistics libdar_4_4::archive::op_diff (user_interaction &dialog, 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, const infinint &hourshift=0)
statistics libdar_4_4::archive::op_test (user_interaction &dialog, const mask &selection, const mask &subtree, bool info_details, bool display_skipped, statistics *progressive_report)
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)
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)
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
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
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
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
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
void libdar_4_4::close_archive_noexcept (archive *ptr, U_16 &exception, std::string &except_msg)
 this is wrapper around the archive destructor
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
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
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
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
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
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 *

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
static const listformat libdar_4_4::archive::normal = libdar::archive_options_listing::normal
static const listformat libdar_4_4::archive::tree = libdar::archive_options_listing::tree
static const listformat libdar_4_4::archive::xml = libdar::archive_options_listing::xml
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 = 2
 libdar Minor version defined at compilation time

Function Documentation

compression libdar_4_4::char2compression ( char  a) [inline]

Definition at line 90 of file libdar_4_4.hpp.

void libdar_4_4::close_archive_noexcept ( archive *  ptr,
U_16 &  exception,
std::string &  except_msg 
)

this is wrapper around the archive destructor

check the archive class for details for an explaination of the two extra arguments exception and except_msg check the get_version_noexcept function

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

check the archive class for details for an explaination of the two extra arguments exception and except_msg check the get_version_noexcept function

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

check the archive class for details for an explaination of the two extra arguments exception and except_msg check the get_version_noexcept function

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

Parameters:
[out]eawhether Extended Attribute support is available
[out]largefilewhether large file support is available
[out]nodumpwhether the nodump feature is available
[out]special_allocwhether special allocation is activated
[out]bitsthe internal integer type used
[out]thread_safewhether thread safe support is available
[out]libzwhether gzip compression is available
[out]libbz2whether bz2 compression is available
[out]libcryptowhether strong encryption is available
[out]new_blowfishwhether new blowfish implementation is available
Note:
This function does never throw exceptions, so there is no get_compile_time_features_noexcept() function available.
libdar::secu_string libdar_4_4::user_interaction::get_secu_string ( const std::string &  message,
bool  echo 
) [inline, protected, virtual]

same a get_string() but uses secu_string instead

Parameters:
[in]messageis the question to display to the user.
[in]echois set to false is the answer must not be shown while the user answers.
Returns:
the user's answer.

Implements libdar::user_interaction.

Definition at line 161 of file libdar_4_4.hpp.

References libdar::user_interaction::get_string().

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)

It is mandatory to call this function (or another one of the get_version* family)

Parameters:
[out]majorthe major number of the version
[out]mediumthe medium number of the version
[out]minorthe minor number of the version
[in]init_libgcryptwhether to initialize libgcrypt if not already done (not used if libcrypt is not linked with libdar)
Note:
the calling application must match that the major function is the same as the libdar used at compilation time. See API tutorial for a sample code.
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)

It is mandatory to call this function (or another one of the get_version* family)

Parameters:
[out]majorthe major number of the version
[out]mediumthe medium number of the version
[out]minorthe minor number of the version
[out]exceptionis to be compared with the LIBDAR_* macro to know whether the call succeeded
[out]except_msgin case exception is not equal to LIBDAR_NOEXCEPT this argument contains
[in]init_libgcryptwhether to initialize libgcrypt if not already done (not used if libcrypt is not linked with libdar) a human readable explaination of the error met.
Note:
the calling application must match that the major function is the same as the libdar used at compilation time. See API tutorial for a sample code.
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

check the archive class for details for an explaination of the two extra arguments exception and except_msg check the get_version_noexcept function

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 *

Parameters:
[in]xthe string to convert
[out]exceptionthe return status of the call
[out]except_msgthe message taken from the caught exception in case of error for an explaination of the two last arguments exception and except_msg check the get_version_noexcept function
Returns:
the address of a newly allocated memory which must be released calling the "delete []" operator when no more needed.
NULL in case of error
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

check the archive class for details for an explaination of the two extra arguments exception and except_msg check the get_version_noexcept function

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

check the archive class for details for an explaination of the two extra arguments exception and except_msg check the get_version_noexcept function

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

check the archive class for details for an explaination of the two extra arguments exception and except_msg check the get_version_noexcept function

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

check the archive class for details for an explaination of the two extra arguments exception and except_msg check the get_version_noexcept function

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

check the archive class for details for an explaination of the two extra arguments exception and except_msg check the get_version_noexcept function

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

check the archive class for details for an explaination of the two extra arguments exception and except_msg check the get_version_noexcept function

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines