| Disk ARchive 2.6.11 Full featured and portable backup and archiving tool

Public Member Functions | Private Member Functions | Private Attributes | List of all members
libdar::archive_options_isolate Class Reference
API

class holding optional parameters used to isolate an existing archive More...

`#include <archive_options.hpp>`

Inherited by libdar5::archive_options_isolate.

## Public Member Functions
| archive_options_isolate (const archive_options_isolate &ref)
| archive_options_isolate (archive_options_isolate &&ref) noexcept
archive_options_isolate & | operator= (const archive_options_isolate &ref)
archive_options_isolate & | operator= (archive_options_isolate &&ref) noexcept
void | clear ()
void | set_allow_over (bool allow_over)
| whether overwritting is allowed
void | set_warn_over (bool warn_over)
| whether a warning shall be issued before overwriting
void | set_info_details (bool info_details)
| whether the user needs detailed output of the operation
void | set_pause (const infinint &pause)
| Pause beteween slices. Set to zero does not pause at all, set to 1 makes libdar pauses each slice, set to 2 makes libdar pause each 2 slices and so on.
void | set_compression (compression algo)
| the compression algorithm used
void | set_compression_level (U_I compression_level)
| the compression level (from 1 to 9)
void | set_slicing (const infinint &file_size, const infinint &first_file_size=0)
| define the archive slicing More...
void | set_execute (const std::string &execute)
| command to execute after each slice creation More...
void | set_crypto_algo (crypto_algo crypto)
| cypher to use
void | set_crypto_pass (const secu_string &pass)
| password / passphrase to encrypt the data with (empty string for interactive question)
void | set_crypto_size (U_32 crypto_size)
| size of the encryption by block to use
void | set_gnupg_recipients (const std::vector< std::string > &gnupg_recipients)
void | set_gnupg_signatories (const std::vector< std::string > &gnupg_signatories)
| the private keys matching the email of the provided list are used to sign the archive random key
void | set_empty (bool empty)
| whether to make a dry-run operation
void | set_slice_permission (const std::string &slice_permission)
| if not an empty string set the slice permission according to the octal value given.
void | set_slice_user_ownership (const std::string &slice_user_ownership)
| if not an empty string set the user ownership of slices accordingly
void | set_slice_group_ownership (const std::string &slice_group_ownership)
| if not an empty string set the group ownership of slices accordingly
void | set_user_comment (const std::string &comment)
| specify a user comment in the archive (always in clear text!)
void | set_hash_algo (hash_algo hash)
| specify whether to produce a hash file of the slice and which hash algo to use
void | set_slice_min_digits (infinint val)
| defines the minimum digit a slice must have concerning its number, zeros will be prepended as much as necessary to respect this
void | set_sequential_marks (bool sequential)
| whether to add escape sequence aka tape marks to allow sequential reading of the archive
void | set_entrepot (const std::shared_ptr< entrepot > &entr)
| defines the protocol to use for slices
void | set_multi_threaded (bool val)
| whether libdar is allowed to created several thread to work possibily faster on multicore CPU (require libthreadar)
void | set_delta_signature (bool val)
| whether signature to base binary delta on the future has to be calculated and stored beside saved files
void | set_delta_mask (const mask &delta_mask)
| whether to derogate to defaut delta file consideration while calculation delta signatures
void | set_delta_sig_min_size (const infinint &val)
void | set_iteration_count (const infinint &val)
| key derivation
void | set_kdf_hash (hash_algo algo)
| hash algo used for key derivation
void | set_sig_block_len (delta_sig_block_size val)
| block size to use to build delta signatures
bool | get_allow_over () const
bool | get_warn_over () const
bool | get_info_details () const
const infinint & | get_pause () const
compression | get_compression () const
U_I | get_compression_level () const
const infinint & | get_slice_size () const
const infinint & | get_first_slice_size () const
const std::string & | get_execute () const
crypto_algo | get_crypto_algo () const
const secu_string & | get_crypto_pass () const
U_32 | get_crypto_size () const
const std::vector< std::string > & | get_gnupg_recipients () const
const std::vector< std::string > & | get_gnupg_signatories () const
bool | get_empty () const
const std::string & | get_slice_permission () const
const std::string & | get_slice_user_ownership () const
const std::string & | get_slice_group_ownership () const
const std::string & | get_user_comment () const
hash_algo | get_hash_algo () const
infinint | get_slice_min_digits () const
bool | get_sequential_marks () const
const std::shared_ptr< entrepot > & | get_entrepot () const
bool | get_multi_threaded () const
bool | get_delta_signature () const
const mask & | get_delta_mask () const
bool | get_has_delta_mask_been_set () const
const infinint & | get_delta_sig_min_size () const
const infinint & | get_iteration_count () const
hash_algo | get_kdf_hash () const
delta_sig_block_size | get_sig_block_len () const

## Private Member Functions
void | copy_from (const archive_options_isolate &ref)
void | move_from (archive_options_isolate &&ref) noexcept
void | destroy () noexcept
void | nullifyptr () noexcept

## Private Attributes
bool | x_allow_over
bool | x_warn_over
bool | x_info_details
infinint | x_pause
compression | x_algo
U_I | x_compression_level
infinint | x_file_size
infinint | x_first_file_size
std::string | x_execute
crypto_algo | x_crypto
secu_string | x_pass
U_32 | x_crypto_size
std::vector< std::string > | x_gnupg_recipients
std::vector< std::string > | x_gnupg_signatories
bool | x_empty
std::string | x_slice_permission
std::string | x_slice_user_ownership
std::string | x_slice_group_ownership
std::string | x_user_comment
hash_algo | x_hash
infinint | x_slice_min_digits
bool | x_sequential_marks
std::shared_ptr< entrepot > | x_entrepot
bool | x_multi_threaded
bool | x_delta_signature
mask * | x_delta_mask
bool | has_delta_mask_been_set
infinint | x_delta_sig_min_size
infinint | x_iteration_count
hash_algo | x_kdf_hash
delta_sig_block_size | x_sig_block_len

## Detailed Description

class holding optional parameters used to isolate an existing archive

Definition at line 691 of file archive_options.hpp.

## Member Function Documentation

## ◆ set_delta_sig_min_size()

void libdar::archive_options_isolate::set_delta_sig_min_size | ( | const infinint & | val | ) |
| inline

whether to never calculate delta signature for files which size is smaller or equal to the given argument

Note
  by default a min size of 10 kiB is used

Definition at line 807 of file archive_options.hpp.

## ◆ set_execute()

void libdar::archive_options_isolate::set_execute | ( | const std::string & | execute | ) |
| inline

command to execute after each slice creation

several macros are available:

- %n : the number of the just created slice
- %N : the slice number with padded zeros according to slice_min_digits given option
- %b : the archive basename
- %p : the slices path
- %e : the archive extension (usually "dar")
- %c : the archive context ("init", "operation" or "last_slice") see dar(1) man page for more details
- %%% : substitued by %%

Definition at line 750 of file archive_options.hpp.

## ◆ set_gnupg_recipients()

void libdar::archive_options_isolate::set_gnupg_recipients | ( | const std::vector< std::string > & | gnupg_recipients | ) |
| inline

set the list of recipients that will be able to read the archive

Note
  more details for the same option of archive_options_create

Definition at line 763 of file archive_options.hpp.

## ◆ set_slicing()

void libdar::archive_options_isolate::set_slicing | ( | const infinint & | file_size,
|  | const infinint & | first_file_size = `0`
| ) |  |
| inline

define the archive slicing

Parameters

  [in] | file_size | set the slice size in byte (0 for a single slice whatever its size is)
  [in] | first_file_size | set the first file size

Note
  if not specified or set to zero, first_file_size is considered equal to file_size

Definition at line 730 of file archive_options.hpp.

The documentation for this class was generated from the following file:

- archive_options.hpp