Vladimir Golovnev (Glassez)
fbda237cc4
Fix local IP addresses
2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
26f645bd6c
Don't create redundant "buf" variable
2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
a2f82be6c2
Don't use deprecated url_seed_alert fields
2017-05-10 13:54:28 +03:00
Vladimir Golovnev (Glassez)
13b04f8d2d
Don't use deprecated settings_pack members
2017-05-10 13:54:27 +03:00
Vladimir Golovnev (Glassez)
bdca55f15c
Use new Session Statistics feature
2017-05-10 13:24:51 +03:00
Vladimir Golovnev (Glassez)
8a6d8f3953
Use cached SessionStatus and CacheStatus
2017-05-10 13:24:37 +03:00
Chocobo1
446b3307f9
Make method const
2017-05-09 14:21:55 +08:00
Vladimir Golovnev
c1e3e2a745
Revert "Guard the flag used for deferred session configure." ( #6733 )
...
This reverts commit 5cbc7b16c0
.
2017-05-02 14:39:47 +03:00
Brian Kendall
eba41978b0
Added command line arguments for specifying options when adding torrents
...
Arguments include adding torrents as paused/started, skiping hash check, setting category, downloading in sequential order, downloading first and last pieces first, and skipping the 'add new torrent' dialog. Added TriStateBoolOption class for specifying options that don't have a default value when unused (e.g. add-paused). Also improved command line usage text to include more information, have better organization, and not exceed 80 columns in width. Also also added firstLastPiecePriority field to BitTorrent::AddTorrentData, and modified TorrentHandle so that if first/last piece priority should be on, it will be toggled on after the torrent's metadata has loaded.
2017-04-30 14:22:30 -04:00
Frédéric Brière
e8f6149a6d
findIncompleteFiles(): Replace dir listing with individual checks. Closes #6265 .
...
Looking for incomplete files in a new torrent by using a pre-generated
directory listing presents several disadvantages:
- It requires us to extract the top-level directory name (in case it
was renamed).
- It requires us to know whether the top-level directory was stripped.
- In the latter case, it may result in recursively traversing the
entire contents of all downloaded torrents.
Calling QFile::exists() individually for each file solves all these
issues.
In so doing, the handling of single-file and multiple-file torrents are
rendered pretty much identical, and can therefore be merged.
2017-04-30 09:26:58 -04:00
Vladimir Golovnev (Glassez)
160b7ff2d3
Remove torrent temp folder when torrent is deleted
2017-04-28 16:52:16 +03:00
Vladimir Golovnev (Glassez)
711be50e9c
Fix AddTorrentData field types
2017-04-24 11:59:16 +03:00
Vladimir Golovnev (Glassez)
989a70fe60
Redesign RSS subsystem
2017-04-23 09:03:46 +03:00
sledgehammer999
ae0ec716cb
Fix inverted check when applying the IP filter.
2017-04-17 17:07:12 +03:00
sledgehammer999
c27108c97a
Merge pull request #6630 from evsh/fix-6454
...
Start up torrents after UI was created. Fixes #6454 .
2017-04-17 16:44:03 +03:00
Vladimir Golovnev (Glassez)
22178f9997
Fix strip torrent root folder
2017-04-15 17:33:20 +03:00
Vladimir Golovnev (Glassez)
6d7d566cdf
Fix TorrentHandle rootPath() and contentPath() methods
2017-04-15 10:11:53 +03:00
Vladimir Golovnev (Glassez)
d413bc65ef
Improve strip torrent root folder
...
Fix issue when you rename the "root item" in the "Add New Torrent" dialog
and uncheck "Create subfolder", it will create the subfolder with the
renamed name.
Fix PropertiesWidget first folder is expanded after app restart.
Strip root folder if torrent was added via magnet link.
Fix crash when you get name of torrent without metadata.
2017-04-15 10:11:53 +03:00
sledgehammer999
4b2d8a7941
Setting for creating subfolder on multifile torrents. Closes #588 .
2017-04-15 10:11:53 +03:00
Eugene Shalygin
21a72c651f
Start up torrents after UI was created. Fixes #6454 .
...
Commit dd0537d
changed torrents startup code adding alerts processing
into it. Therefore alerts were processed before UI code subscribed to
signals and therefore part of alerts was not reflected in the UI.
Thus here we do not start torrents in Session constructor, but do that
from Application::exec() after UI was constructed and is ready to process
signals.
2017-04-14 00:58:43 +02:00
Eugene Shalygin
a8d95dd8bd
Save relative paths in fastresume files
...
Conditionally change absolute paths to relative in the fastresume data files.
The condition is specified by user via a command line parameter and
paths are relative to the profile dir.
On Windows the convertion to relative path is performed if the path and
the profile are on the same drive only.
2017-04-12 00:51:37 +02:00
Eugene Shalygin
0bf7fa15c1
Replace wrappers in base/utils/fs.h with Profile::SpecialFolders::location()
2017-04-12 00:50:33 +02:00
sledgehammer999
be60b3e046
Change the user-agent format in the session.cpp too.
2017-03-07 23:41:29 +02:00
sledgehammer999
147f4d76e2
Merge pull request #6445 from Chocobo1/fix
...
Follow http user-agent format
2017-03-07 23:38:14 +02:00
sledgehammer999
7a6da3d3ce
Merge pull request #6479 from Chocobo1/qt4
...
Remove remainings of Qt4
2017-03-07 23:28:56 +02:00
sledgehammer999
431658bee6
Fix race condition where there was a chance to allow all ips between reparsings of the ip filter.
2017-03-07 23:16:50 +02:00
Chocobo1
fa2128cbae
Replace Utils::String::fromStdString() by QString::fromStdString()
2017-03-07 19:42:44 +08:00
Chocobo1
ffdcfe9686
Replace Utils::String::toStdString() by QString::toStdString()
2017-03-06 23:58:38 +08:00
dzmat
59de1af31b
implemented UI for managment of locally banned IP list ( Closes #1837 )
2017-03-06 19:40:34 +07:00
Chocobo1
2091dfaa69
Follow http user-agent format
...
Add version variable without the starting "v"
2017-03-06 14:42:32 +08:00
Chocobo1
cb1646be32
Prepend QBT_ for preprocessor variables
2017-03-06 13:41:58 +08:00
sledgehammer999
4adcd03ec7
Merge pull request #6366 from Chocobo1/rand
...
Replace rand()
2017-02-20 01:49:27 +02:00
Chocobo1
511796f74e
Replace rand() by a true uniform distribution generator
2017-02-16 12:21:26 +08:00
falco
ee239ddd1e
fix queue overload for add torrent at session start
2017-02-08 15:13:21 +00:00
sledgehammer999
a178268b31
Merge pull request #5959 from dzmat/DRY_fix_minor
...
Little DRY violation fixed
2017-01-19 01:49:21 +02:00
sledgehammer999
a092cb9bda
Remove settings to exchange trackers. It wasn't used by non-libtorrent clients. Also it has a privacy risk and you might be DDoSing someone. DHT makes it obsolete anyway.
2017-01-19 01:13:55 +02:00
Eugene Shalygin
b6e64c13d8
Fetch torrent status when generating final fastresume data
...
This is done to get correct queue position, which has to be written into
the fastresume file. See discussion in #6154 .
2017-01-18 18:59:03 +01:00
Eugene Shalygin
6cd233dd61
Add queue repair code
...
This is a bit adjusted code created by nxd4, who shared it in issue
disappearing).
2017-01-18 17:27:20 +01:00
Eugene Shalygin
4c13f155ff
Do not remove added files unconditionally. Closes #6248
...
If removing of added torrents is enabled and dialog for adding torrents
is disabled, file guard was assuming that torrent is added successfully.
And that can be not the case if a user trying to add a broken torrent
file (or not a torrent file at all). Then this file gets deleted always.
Fix this by checking result of addTorrent_impl().
2017-01-18 00:04:26 +01:00
Eugene Shalygin
7b594a635e
Set upper version limit for QTBUG-52633
...
The bug seems to be fixed in version 5.7.1.
2017-01-11 00:14:16 +01:00
sledgehammer999
4f59caf3ca
Fix share ratio limiting. Broken by commit 259b5e51c4
. Closes #6039 #6048 .
2016-12-15 00:04:50 +02:00
Eugene Shalygin
9a123c42c3
Add a workaround for QTBUG-52633, qBt issue #5073
...
The QTBUG-52633 results in food of network interface changed events, libtorrent IP
rebind calls and flood in the qBt log. The work around is the check not only for
interface name, but for IP address on that interface before triggering the libtorrent rebind.
2016-12-13 17:18:58 +01:00
dzmat
abeff99ba0
minimizing the number of warnings about deprecated auto_ptr
2016-12-08 19:24:52 +07:00
sledgehammer999
0d1b70e248
Decouple dependency between Session and BandwidthScheduler during Session init. Closes #6007 .
2016-12-07 01:33:48 +02:00
dzmat
4b18bb29a6
DRY violation fixed
2016-11-18 23:05:47 +07:00
thalieht
c7a04e27f4
Log: set embedded Tracker [OFF] msg type as info
2016-11-06 11:55:31 +02:00
sledgehammer999
259b5e51c4
Don't ever stop seeding forced torrents. Closes #5784 .
2016-11-02 18:25:09 +02:00
sledgehammer999
146d4e049a
Some more compiler warnings fixed.
2016-11-02 17:49:50 +02:00
sledgehammer999
9f8dfbc51c
Fix warning due to stupid typo.
2016-11-01 22:24:55 +02:00
sledgehammer999
e440fc3d17
Fix setting a speed limit.
2016-11-01 17:51:57 +02:00
sledgehammer999
3081a8bb3f
Add libtorrent's DHT bootstrap node to our bootstrap list.
2016-11-01 03:42:38 +02:00
sledgehammer999
660b8cdb7e
Use the new API to add DHT bootstrap nodes for libtorrent 1.1.x and simplify the code a bit.
2016-11-01 03:42:33 +02:00
sledgehammer999
afe930cbee
Use new libtorrent 1.1.2+ utility function to generate client ID instead.
2016-11-01 03:42:28 +02:00
sledgehammer999
e054f63746
Make sure that paths are loaded/saved using slashes as dir separators.
2016-11-01 03:42:22 +02:00
sledgehammer999
59b570cf62
Display message about libtorrent plugins for the correct case.
2016-11-01 03:42:17 +02:00
sledgehammer999
f391b24b1d
Migrate last setting related to interfaces to the new system.
2016-11-01 03:42:12 +02:00
sledgehammer999
f885c6375a
Use better variable names for tracker announce IP setting.
2016-11-01 03:42:01 +02:00
sledgehammer999
5cbc7b16c0
Guard the flag used for deferred session configure.
2016-11-01 03:41:45 +02:00
sledgehammer999
1757973f88
Misc fixes.
2016-11-01 03:41:40 +02:00
sledgehammer999
10cd45dc81
Fix setting limits to unlimited.
2016-11-01 03:41:35 +02:00
sledgehammer999
a5ae86512a
Rename IP filtering functions and settings names.
2016-11-01 03:06:58 +02:00
sledgehammer999
b97cb7422f
Export torrents added only after the setting was enabled.
2016-11-01 03:06:58 +02:00
sledgehammer999
124eddc68c
Merge pull request #5342 from glassez/session
...
Optimize BitTorrent::Session settings applying
2016-11-01 03:02:29 +02:00
Vladimir Golovnev (Glassez)
c4e9291db4
Do not create save folder in advance
...
Closes #5422 .
2016-06-26 16:48:11 +03:00
Vladimir Golovnev (Glassez)
b5fe749f0b
Use new libtorrent-1.1 settings API
2016-06-20 08:30:02 +03:00
Vladimir Golovnev (Glassez)
b2cb473b63
Don't use Preferences in BitTorrent::Session
2016-06-20 08:30:02 +03:00
sledgehammer999
5878d49f60
Fixup previous commits and allow IPv6 interface addresses too.
2016-05-27 01:37:16 +03:00
sledgehammer999
1397a951fe
Merge pull request #5096 from Harekiet/kietC
...
Bind directly to an IP instead of using a network Interface
2016-05-26 17:36:22 -05:00
sledgehammer999
81ea07abee
Rename ASM to TMM and related stuff.
2016-05-25 20:07:36 +03:00
Vladimir Golovnev (Glassez)
a318040eaa
Use new alert dispathing API
2016-05-17 07:58:38 +03:00
Eugene Shalygin
6e73fa80b8
Add option to automatically remove .torrent files upon adding
...
Some browsers do not download files, intended for immediate opening,
into a temporary directory, and thus a regular download directories
accumulate those unneeded files.
The option allows qBittorrent to clean after itself and delete those
files whether they were succesfully added or not (user-selectable
policy).
2016-05-09 11:52:36 +02:00
Chocobo1
a81cf1ea16
Fix "IP Filtering - Apply to trackers" wasn't being applied. Closes #5217 .
2016-05-08 20:46:58 +08:00
sledgehammer999
0143799623
Don't show added torrent notification during startup.
2016-04-30 01:38:24 +03:00
Vladimir Golovnev (Glassez)
b8c703b8b0
Use truncated torrent hash in temp path
2016-04-25 08:39:36 +03:00
Vladimir Golovnev (Glassez)
850556fdfa
Use unique temp directories
...
Save torrent in temp_path/<torrent_hash> directory.
Closes #5154 .
2016-04-25 08:39:36 +03:00
Vladimir Golovnev (Glassez)
e0d9ae3116
Try to find incomplete files for new torrent
2016-04-20 15:45:03 +03:00
Vladimir Golovnev (Glassez)
8e9b0d97ec
Fix torrent adding with existing data
2016-04-18 08:30:49 +03:00
Sjoerd van der Berg
c7c71d3c88
Change back to the original names for the announce address
...
Only allow ip's through that match the currenrly selected network interface and address
2016-04-13 10:51:29 +02:00
Sjoerd van der Berg
e2f43b3383
Add option to bind directly to an IP instead of using a network Interface
2016-04-09 09:19:22 -07:00
sledgehammer999
2efdddb9af
Always delete partfile (libtorrent 1.1.x).
2016-03-14 14:53:14 +02:00
Vladimir Golovnev (Glassez)
c047ef5b37
Fix save path bugs
2016-03-06 21:23:15 +03:00
Vladimir Golovnev (Glassez)
dd34663224
Implement Advanced Saving Management subsystem
...
Closes #4696
2016-03-04 19:59:53 +03:00
sledgehammer999
c1f7446c26
Partially revert decfae7b8a
. Newer libtorrent RC_1_1 has added back the missing variables.
2016-02-21 18:42:55 +02:00
sledgehammer999
b099a766e6
Don't merge trackers for private torrents. Closes #2928 .
2016-02-15 03:24:22 +02:00
sledgehammer999
958b70e4ac
Merge pull request #4403 from glassez/fastresume
...
Improve .fastresume saving and torrents starting up. Closes #4315 .
2016-02-05 12:06:58 -06:00
Vladimir Golovnev (Glassez)
034bd83915
Manage save path in one place
2016-02-04 11:42:30 +03:00
Vladimir Golovnev (Glassez)
c57aaf0216
Create MagnetUri object from BC link or HASH string
2016-01-31 21:32:41 +03:00
Vladimir Golovnev (Glassez)
decfae7b8a
Add libtorrent v1.1 basic support
2016-01-31 14:04:25 +03:00
Vladimir Golovnev (Glassez)
c93ada1e7b
Prepare for libtorrent v1.1 support
2016-01-31 10:40:55 +03:00
sledgehammer999
063eb7e9ab
Merge pull request #3941 from jconnop/announceIP
...
Always update native session's announce_ip setting
2016-01-28 11:44:23 -06:00
sledgehammer999
c2a26d39af
Merge pull request #4577 from glassez/hotfix
...
[IMPORTANT] Fix loading corrupted .fastresume file
2016-01-17 11:49:58 -06:00
Vladimir Golovnev (Glassez)
3df802cef7
Delete unused include
2016-01-17 10:12:55 +03:00
Vladimir Golovnev (Glassez)
3a2bd3c9b1
Fix loading corrupted .fastresume file
2016-01-16 15:27:01 +03:00
Vladimir Golovnev (qlassez)
245f424014
Optimize Session::startupTorrents()
...
Reduce queue size by starting up initial items (torrents) when they are detected
2016-01-16 14:36:56 +03:00
Vladimir Golovnev (qlassez)
a5780dd66c
Switch to using previous fastresume file names
2016-01-16 14:36:56 +03:00
Vladimir Golovnev (qlassez)
4f01660591
Perform fastresume data saving in separate thread
...
Closes #4315
2016-01-16 14:36:56 +03:00
Vladimir Golovnev (Glassez)
cf25ed3d80
Fix reconfigure additional trackers
...
Replace wrong QList::empty() call with QList::clear()
2016-01-13 19:12:31 +03:00
sledgehammer999
db459b2400
Merge pull request #3832 from glassez/search
...
Search Engine code redesign (Issue #2433 ).
2015-12-21 11:13:38 -06:00
Vladimir Golovnev (Glassez)
54979e6b53
Move basic search-related code into Core.
...
Also use qBittorrent torrent file download routines instead of
nova2dl.py script.
2015-12-20 19:20:59 +03:00
Jesse Connop
41dbb82cc2
Always update native session's announce_ip setting
2015-12-08 21:55:34 +13:00
sledgehammer999
91a99c6903
Fix possible deadlock during application exit.
2015-12-07 23:59:45 +02:00
Vladimir Golovnev (Glassez)
9db93e5d8f
Rename Core to Base ( Closes #3733 ).
2015-12-06 14:27:00 +03:00