26 #ifndef FILESYSTEM_HARD_LINK_READ_HPP
27 #define FILESYSTEM_HARD_LINK_READ_HPP
29 #include "../my_config.h"
64 bool x_furtive_read_mode,
66 { furtive_read_mode = x_furtive_read_mode; sc = scope; ask_before_zeroing_neg_dates =
true; };
92 { ignored_symlinks = x_ignored_symlinks; };
97 void corres_reset() { corres_read.clear(); etiquette_counter = 0; };
103 const std::string & name,
108 bool get_ask_before_zeroing_neg_dates()
const {
return ask_before_zeroing_neg_dates; };
119 couple(
cat_etoile *ptr, nlink_t ino_count) : holder(
"FAKE", ptr) { count = ino_count; obj = ptr; };
124 node(ino_t num, dev_t dev) { numnode = num; device = dev; };
127 bool operator < (
const node & ref)
const {
return numnode < ref.numnode || (numnode == ref.numnode && device < ref.device); };
134 std::map <node, couple> corres_read;
135 infinint etiquette_counter;
136 bool furtive_read_mode;
138 bool ask_before_zeroing_neg_dates;
139 std::set<std::string> ignored_symlinks;
143 bool ignore_if_symlink(
const std::string & full_path)
144 {
return ignored_symlinks.find(full_path) != ignored_symlinks.end(); };
include file gathering all entree found in a catalogue
the hard link implementation
the hard link implementation, cat_mirage is the named entry owned by a directory it points to a commo...
the base class for all entry that have a name
keep trace of hard links when reading the filesystem
const infinint & get_last_etoile_ref() const
get the last assigned number for a hard linked inode
void corres_reset()
reset the whole list of hard linked inodes (hard linked inode stay alive but are no more referenced b...
void set_ignored_symlinks_list(const std::set< std::string > &x_ignored_symlinks)
cat_nomme * make_read_entree(const path &lieu, const std::string &name, bool see_hard_link, const mask &ea_mask)
void zeroing_negative_dates_without_asking()
don't ask before zeroing negative date just warn user
const fsa_scope get_fsa_scope() const
provide the FSA scope used by the object
the arbitrary large positive integer class
the generic class, parent of all masks
class mem_ui to keep a copy of a user_interaction object
mem_ui(const std::shared_ptr< user_interaction > &dialog)
constructor
the class path is here to manipulate paths in the Unix notation: using'/'
filesystem specific attributes available families and fsa_scope definition
std::set< fsa_family > fsa_scope
set of fsa families
switch module to limitint (32 ou 64 bits integers) or infinint
class mem_ui definition. This class is to be used as parent class to handle user_interaction object m...
libdar namespace encapsulate all libdar symbols