mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2025-12-20 07:27:22 -06:00
Support fetching tracker list from URL
Trackers specified at the URL will be added to newly added public torrents. This feature is adapted from qBittorrent-Enhanced-Edition to allow for automatically adding trackers retrieved from a URL. @ngosang's trackerlist repo is a good example, however I've opted not to include a default URL. Partially addresses #14535. PR #21828.
This commit is contained in:
committed by
GitHub
parent
4f3d77963f
commit
4fc36b9e99
@@ -491,6 +491,12 @@ namespace BitTorrent
|
||||
m_asyncWorker->start(std::forward<Func>(func));
|
||||
}
|
||||
|
||||
bool isAddTrackersFromURLEnabled() const override;
|
||||
void setAddTrackersFromURLEnabled(bool enabled) override;
|
||||
QString additionalTrackersURL() const override;
|
||||
void setAdditionalTrackersURL(const QString &url) override;
|
||||
QString additionalTrackersFromURL() const override;
|
||||
|
||||
signals:
|
||||
void addTorrentAlertsReceived(qsizetype count);
|
||||
|
||||
@@ -596,6 +602,8 @@ namespace BitTorrent
|
||||
void saveTorrentsQueue();
|
||||
void removeTorrentsQueue();
|
||||
|
||||
void populateAdditionalTrackersFromURL();
|
||||
|
||||
std::vector<lt::alert *> getPendingAlerts(lt::time_duration time = lt::time_duration::zero()) const;
|
||||
|
||||
void moveTorrentStorage(const MoveStorageJob &job) const;
|
||||
@@ -614,6 +622,9 @@ namespace BitTorrent
|
||||
|
||||
void handleRemovedTorrent(const TorrentID &torrentID, const QString &partfileRemoveError = {});
|
||||
|
||||
void setAdditionalTrackersFromURL(const QString &trackers);
|
||||
void updateTrackersFromURL();
|
||||
|
||||
CachedSettingValue<QString> m_DHTBootstrapNodes;
|
||||
CachedSettingValue<bool> m_isDHTEnabled;
|
||||
CachedSettingValue<bool> m_isLSDEnabled;
|
||||
@@ -676,6 +687,8 @@ namespace BitTorrent
|
||||
CachedSettingValue<bool> m_blockPeersOnPrivilegedPorts;
|
||||
CachedSettingValue<bool> m_isAddTrackersEnabled;
|
||||
CachedSettingValue<QString> m_additionalTrackers;
|
||||
CachedSettingValue<bool> m_isAddTrackersFromURLEnabled;
|
||||
CachedSettingValue<QString> m_additionalTrackersURL;
|
||||
CachedSettingValue<qreal> m_globalMaxRatio;
|
||||
CachedSettingValue<int> m_globalMaxSeedingMinutes;
|
||||
CachedSettingValue<int> m_globalMaxInactiveSeedingMinutes;
|
||||
@@ -749,6 +762,9 @@ namespace BitTorrent
|
||||
bool m_IPFilteringConfigured = false;
|
||||
mutable bool m_listenInterfaceConfigured = false;
|
||||
|
||||
QString m_additionalTrackersFromURL;
|
||||
QTimer *m_updateTrackersFromURLTimer = nullptr;
|
||||
|
||||
bool m_isRestored = false;
|
||||
bool m_isPaused = isStartPaused();
|
||||
|
||||
@@ -759,6 +775,7 @@ namespace BitTorrent
|
||||
|
||||
int m_numResumeData = 0;
|
||||
QList<TrackerEntry> m_additionalTrackerEntries;
|
||||
QList<TrackerEntry> m_additionalTrackerEntriesFromURL;
|
||||
QList<QRegularExpression> m_excludedFileNamesRegExpList;
|
||||
|
||||
// Statistics
|
||||
|
||||
Reference in New Issue
Block a user