mirror of
https://github.com/RetroShare/RetroShare.git
synced 2024-10-01 02:35:48 -04:00
added option whether to trust friend nodes for banned files
This commit is contained in:
parent
a2804a70ec
commit
af7556610a
@ -32,6 +32,7 @@ static const uint32_t DELAY_BEFORE_DELETE_EMPTY_REMOTE_DIR = 5*24*86400 ;
|
|||||||
static const std::string HASH_CACHE_DURATION_SS = "HASH_CACHE_DURATION" ; // key string to store hash remembering time
|
static const std::string HASH_CACHE_DURATION_SS = "HASH_CACHE_DURATION" ; // key string to store hash remembering time
|
||||||
static const std::string WATCH_FILE_DURATION_SS = "WATCH_FILES_DELAY" ; // key to store delay before re-checking for new files
|
static const std::string WATCH_FILE_DURATION_SS = "WATCH_FILES_DELAY" ; // key to store delay before re-checking for new files
|
||||||
static const std::string WATCH_FILE_ENABLED_SS = "WATCH_FILES_ENABLED"; // key to store ON/OFF flags for file whatch
|
static const std::string WATCH_FILE_ENABLED_SS = "WATCH_FILES_ENABLED"; // key to store ON/OFF flags for file whatch
|
||||||
|
static const std::string TRUST_FRIEND_NODES_FOR_BANNED_FILES_SS = "TRUST_FRIEND_NODES_FOR_BANNED_FILES"; // should we trust friends for banned files or not
|
||||||
static const std::string FOLLOW_SYMLINKS_SS = "FOLLOW_SYMLINKS"; // dereference symbolic links, or just ignore them.
|
static const std::string FOLLOW_SYMLINKS_SS = "FOLLOW_SYMLINKS"; // dereference symbolic links, or just ignore them.
|
||||||
static const std::string IGNORE_DUPLICATES = "IGNORE_DUPLICATES"; // do not index files that are referenced multiple times because of links
|
static const std::string IGNORE_DUPLICATES = "IGNORE_DUPLICATES"; // do not index files that are referenced multiple times because of links
|
||||||
static const std::string WATCH_HASH_SALT_SS = "WATCH_HASH_SALT"; // Salt that is used to hash directory names
|
static const std::string WATCH_HASH_SALT_SS = "WATCH_HASH_SALT"; // Salt that is used to hash directory names
|
||||||
@ -62,5 +63,6 @@ static const uint64_t ENTRY_INDEX_BIT_MASK_64BITS = 0x0000000
|
|||||||
static const uint32_t DELAY_BEFORE_DROP_REQUEST = 600; // every 10 min
|
static const uint32_t DELAY_BEFORE_DROP_REQUEST = 600; // every 10 min
|
||||||
|
|
||||||
static const bool FOLLOW_SYMLINKS_DEFAULT = true;
|
static const bool FOLLOW_SYMLINKS_DEFAULT = true;
|
||||||
|
static const bool TRUST_FRIEND_NODES_FOR_BANNED_FILES_DEFAULT = true;
|
||||||
|
|
||||||
static const uint32_t FL_BASE_TMP_SECTION_SIZE = 4096 ;
|
static const uint32_t FL_BASE_TMP_SECTION_SIZE = 4096 ;
|
||||||
|
@ -72,6 +72,7 @@ p3FileDatabase::p3FileDatabase(p3ServiceControl *mpeers)
|
|||||||
mLastRemoteDirSweepTS = 0 ;
|
mLastRemoteDirSweepTS = 0 ;
|
||||||
mLastCleanupTime = 0 ;
|
mLastCleanupTime = 0 ;
|
||||||
mLastDataRecvTS = 0 ;
|
mLastDataRecvTS = 0 ;
|
||||||
|
mTrustFriendNodesForBannedFiles = TRUST_FRIEND_NODES_FOR_BANNED_FILES_DEFAULT;
|
||||||
|
|
||||||
// This is for the transmission of data
|
// This is for the transmission of data
|
||||||
|
|
||||||
@ -369,6 +370,14 @@ cleanup = true;
|
|||||||
{
|
{
|
||||||
RsTlvKeyValue kv;
|
RsTlvKeyValue kv;
|
||||||
|
|
||||||
|
kv.key = TRUST_FRIEND_NODES_FOR_BANNED_FILES_SS;
|
||||||
|
kv.value = trustFriendNodesForBannedFiles()?"YES":"NO" ;
|
||||||
|
|
||||||
|
rskv->tlvkvs.pairs.push_back(kv);
|
||||||
|
}
|
||||||
|
{
|
||||||
|
RsTlvKeyValue kv;
|
||||||
|
|
||||||
kv.key = WATCH_HASH_SALT_SS;
|
kv.key = WATCH_HASH_SALT_SS;
|
||||||
kv.value = mLocalDirWatcher->hashSalt().toStdString();
|
kv.value = mLocalDirWatcher->hashSalt().toStdString();
|
||||||
|
|
||||||
@ -462,6 +471,10 @@ bool p3FileDatabase::loadList(std::list<RsItem *>& load)
|
|||||||
{
|
{
|
||||||
setWatchEnabled(kit->value == "YES") ;
|
setWatchEnabled(kit->value == "YES") ;
|
||||||
}
|
}
|
||||||
|
else if(kit->key == TRUST_FRIEND_NODES_FOR_BANNED_FILES_SS)
|
||||||
|
{
|
||||||
|
setTrustFriendNodesForBannedFiles(kit->value == "YES") ;
|
||||||
|
}
|
||||||
else if(kit->key == WATCH_HASH_SALT_SS)
|
else if(kit->key == WATCH_HASH_SALT_SS)
|
||||||
{
|
{
|
||||||
std::cerr << "Initing directory watcher with saved secret salt..." << std::endl;
|
std::cerr << "Initing directory watcher with saved secret salt..." << std::endl;
|
||||||
@ -1895,6 +1908,19 @@ bool p3FileDatabase::getPrimaryBannedFilesList(std::map<RsFileHash,BannedFileEnt
|
|||||||
return true ;
|
return true ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool p3FileDatabase::trustFriendNodesForBannedFiles() const
|
||||||
|
{
|
||||||
|
RS_STACK_MUTEX(mFLSMtx) ;
|
||||||
|
return mTrustFriendNodesForBannedFiles;
|
||||||
|
}
|
||||||
|
void p3FileDatabase::setTrustFriendNodesForBannedFiles(bool b)
|
||||||
|
{
|
||||||
|
if(b != mTrustFriendNodesForBannedFiles)
|
||||||
|
IndicateConfigChanged();
|
||||||
|
|
||||||
|
RS_STACK_MUTEX(mFLSMtx) ;
|
||||||
|
mTrustFriendNodesForBannedFiles = b;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -135,6 +135,8 @@ class p3FileDatabase: public p3Service, public p3Config, public ftSearch //, pub
|
|||||||
bool banFile(const RsFileHash& real_file_hash, const std::string& filename, uint64_t file_size) ;
|
bool banFile(const RsFileHash& real_file_hash, const std::string& filename, uint64_t file_size) ;
|
||||||
bool unbanFile(const RsFileHash& real_file_hash);
|
bool unbanFile(const RsFileHash& real_file_hash);
|
||||||
bool getPrimaryBannedFilesList(std::map<RsFileHash,BannedFileEntry>& banned_files) ;
|
bool getPrimaryBannedFilesList(std::map<RsFileHash,BannedFileEntry>& banned_files) ;
|
||||||
|
bool trustFriendNodesForBannedFiles() const ;
|
||||||
|
void setTrustFriendNodesForBannedFiles(bool b) ;
|
||||||
|
|
||||||
// computes/gathers statistics about shared directories
|
// computes/gathers statistics about shared directories
|
||||||
|
|
||||||
@ -254,5 +256,6 @@ class p3FileDatabase: public p3Service, public p3Config, public ftSearch //, pub
|
|||||||
|
|
||||||
std::map<RsFileHash,BannedFileEntry> mPrimaryBanList ; // primary list (user controlled) of files banned from FT search and forwarding. map<real hash, BannedFileEntry>
|
std::map<RsFileHash,BannedFileEntry> mPrimaryBanList ; // primary list (user controlled) of files banned from FT search and forwarding. map<real hash, BannedFileEntry>
|
||||||
std::set<RsFileHash> mBannedFileList ; // list of banned hashes. This include original hashs and H(H(f)) when coming from friends.
|
std::set<RsFileHash> mBannedFileList ; // list of banned hashes. This include original hashs and H(H(f)) when coming from friends.
|
||||||
|
bool mTrustFriendNodesForBannedFiles ;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -447,6 +447,13 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QCheckBox" name="checkBox">
|
||||||
|
<property name="text">
|
||||||
|
<string>Trust friend nodes with banned files</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QTextEdit" name="textEdit">
|
<widget class="QTextEdit" name="textEdit">
|
||||||
<property name="readOnly">
|
<property name="readOnly">
|
||||||
|
Loading…
Reference in New Issue
Block a user