pavel.pimenov
6afb0fd51b
fix m_host_resolver (for RC_1_1)
2017-03-31 07:29:03 -04:00
arvidn
02bb1251d2
removed (broken) support for incoming connections over socks5
2017-03-29 02:15:43 -04:00
arvidn
910ccc528f
deprecate torrent_added_alert in favor of add_torrent_alert
2017-03-26 22:48:17 -04:00
arvidn
4d397f5ebf
fix minor robustness issue in DHT bootstrap logic
2017-03-21 12:29:08 -04:00
arvidn
f95f5b05c2
fix issue where torrent_status::num_seeds could be negative
2017-03-20 23:58:08 -04:00
arvidn
6f650aa7d9
document deprecation of dynamic loading/unloading of torrents
2017-03-13 21:21:38 -04:00
arvidn
e37e4bfe8a
include user-agent in tracker announces in anonymous_mode for private torrents
2017-03-12 21:10:00 -04:00
arvidn
4ded26de33
fix issue with load/unload torrents
2017-03-11 19:59:53 -05:00
Arvid Norberg
3f90501934
add support for IPv6 peers from udp trackers ( #1802 )
...
add support for IPv6 peers from udp trackers
2017-03-11 02:46:51 -05:00
arvidn
08c05b9693
correctly URL encode the IPv6 argument to trackers
2017-03-10 02:27:51 -05:00
arvidn
dec8c853e3
fix default file pool size on windows
2017-03-09 23:26:53 -05:00
arvidn
5cb12318c5
fix bug where settings_pack::file_pool_size setting was not being honored
2017-03-09 08:18:10 -05:00
arvidn
faa2029f8b
add feature to periodically close files (to make windows clear disk cache)
2017-03-06 23:46:47 -05:00
arvidn
af07ce1f25
fix issue with peers not updated on metadata from magnet links
2017-03-06 18:45:58 -05:00
Steven Siloti
9a63d4696e
mark connection as upload only manually instead of with set_upload_only()
...
We can't call set_upload_only() in this context because it can trigger an invariant
check in the torrent and m_num_connecting is not consistent.
2017-03-02 00:48:55 -05:00
arvidn
9d645055ff
fix storage tick invariant check failure
2017-02-26 20:23:53 -05:00
arvidn
ff106f8c9e
default TOS marking to 0x20
2017-02-25 13:34:53 -05:00
Arvid Norberg
3e83c4119f
fix recent settings_pack ABI regression ( #1752 )
...
fix recent settings_pack ABI regression
2017-02-24 08:06:59 -05:00
arvidn
6d40d3a167
bump version number
2017-02-20 12:43:34 -05:00
arvidn
430ff6d7b4
minor fix to num_seeds
2017-02-19 18:47:32 -05:00
Arvid Norberg
6e65851b2d
add some documentation for some counters ( #1726 )
...
add some documentation for some counters
2017-02-18 12:55:20 -05:00
arvidn
7b61313b99
fix invalid access when leaving seed-mode with outstanding hash jobs
2017-02-17 15:37:56 -05:00
Arvid Norberg
116802fcdf
update tuning documentation ( #1717 )
...
update tuning documentation and make the stats header be posted when logging is disabled (if stats_notifications are enabled)
2017-02-16 07:03:43 -05:00
arvidn
1300204ff1
back-port pavel's fix to ip_interface.name
2017-02-13 08:09:01 -05:00
arvidn
cbd1c26a11
fix ABI compatibility issue introduced with preformatted entry type
2017-02-12 20:42:30 -05:00
arvidn
949d4cd12a
fix regression in windows implementation of enum_net causing infinite loop
2017-02-11 19:09:21 -05:00
arvidn
85f6febfff
fix some left-over incorrect default piece priorities (1 -> 4)
2017-02-11 15:32:51 -05:00
arvidn
964542e53b
back-port ajax16384's fix to enum_net_interfaces on windows
2017-02-08 10:01:40 -05:00
ximply
c4d96c7aa9
add web_seed_name_lookup_retry to session_settings ( #1674 )
...
add web_seed_name_lookup_retry to session_settings to control web seed
name lookup retry in seconds, default is 1800 seconds
2017-02-07 01:34:52 -05:00
Arvid Norberg
692759ba81
slightly improve proxy settings backwards compatibility-1.1 ( #1664 )
...
slightly improve proxy settings backwards compatibility
2017-02-06 00:01:04 -05:00
arvidn
7ff4f56ae2
add function to get default settings
2017-02-05 11:31:43 -05:00
Arvid Norberg
c00a25a645
back-port aldenml's fix to not save replacement nodes twice to 1.1 ( #1661 )
...
back-port aldenml's fix to not save replacement nodes twice to 1.1
2017-02-04 19:58:32 -05:00
Arvid Norberg
0a26ed8d1e
fix issue where updates to super seeding state would not include the torrent in the state_update_alert ( #1659 )
2017-02-04 16:09:42 -05:00
arvidn
c9a2fed2c9
add tests for edge cases of session settings, and fix a few integer overflows
2017-02-03 20:42:59 -05:00
arvidn
2b53eb28a9
minor cleanup in automatic connections_limit management
2017-02-01 23:28:13 -05:00
Arvid Norberg
4733670aa1
fix issue where num_seeds could be greater than num_peers in torrent_status ( #1645 )
...
fix issue where num_seeds could be greater than num_peers in torrent_status
2017-02-01 01:39:09 -05:00
arvidn
dbd734e7a2
sync. creation and clearing of file progress with the piece picker
2017-01-31 08:14:36 -05:00
Falcosc
e40bdc566c
1.1.2 set queue position by number ( #1617 )
...
set queue position by number
2017-01-30 21:31:31 -05:00
arvidn
3339b2abe1
back port file progress invariant checking to 1.1
2017-01-29 15:34:06 -05:00
arvidn
ffca4afaa6
remove unintuitive limit on peer connections (especially with large values of file_pool_size)
2017-01-29 02:45:30 -05:00
arvidn
cca5ab8368
fix integer overflow
2017-01-26 23:39:56 -05:00
Arvid Norberg
ba9fae8e1f
fix issue with unloading torrents ( #1624 )
...
fix issue with unloading torrents
2017-01-25 23:42:59 -05:00
arvidn
b19cb7bd87
fixed finished-time calculation
2017-01-25 01:56:19 -05:00
Andrei Kurushin
7c9679bf6a
fix missed static array specifier
2017-01-23 08:21:34 -05:00
arvidn
132be5101f
fix stat cache issue that sometimes would produce incorrect resume data
2017-01-22 18:14:10 -05:00
arvidn
6d17f0fb66
storage optimization to peer classes
2017-01-21 01:23:07 -05:00
Falco
c57d062e0d
fix torrent name in alerts of builds with deprecated functions and use non deprecated for internal calls
2017-01-20 19:05:05 -05:00
arvidn
c7c204280a
make sure torrent_info::is_valid returns false when the file fails to load
2017-01-18 23:58:33 -05:00
Falcosc
a07ffe42f8
fix torrent peer class index overflow ( #1557 )
...
fix peer class index width
2017-01-16 18:20:43 -05:00
arvidn
3b9c65daf1
remove unused function, has_interface()
2017-01-16 15:14:47 -05:00
Arvid Norberg
04589f3bef
don't load user_agent and peer_fingerprint from session_state ( #1538 )
...
don't load user_agent and peer_fingerprint from session_state
2017-01-15 01:21:52 -05:00
Arvid Norberg
2120a13869
fix file rename issue with name prefix matching torrent name ( #1524 )
...
fix file rename issue with name prefix matching torrent name
2017-01-13 00:39:49 -05:00
arvidn
d6a7c7d991
fix error in accounting of IP overhead
2017-01-11 00:02:18 -05:00
arvidn
39866c2306
fix division by zero when setting tick_interval > 1000
2017-01-07 15:21:02 -05:00
arvidn
7957e2a30e
fix move_storage() to its own directory (would delete the files)
2017-01-03 21:09:26 -05:00
arvidn
1600d4dca5
clean up file pool a bit
2017-01-01 09:56:50 -05:00
arvidn
005d1a47b0
deprecate dont_flush_write_cache setting
2016-12-31 17:44:57 -05:00
arvidn
2f75dcccfe
on backwards compatible set_settings(), stack allocate settings_pack
2016-12-26 22:44:42 -08:00
Falcosc
6520fcebf1
fix session invariant check fail for difficult setting dependencies ( #1449 )
...
clean up session_impl invariant checks
2016-12-26 08:09:52 -08:00
arvidn
ad7e796d05
fix socks5 support for UDP. based on patch in https://github.com/arvidn/libtorrent/issues/1373
2016-12-19 23:52:53 -05:00
Falcosc
8adcbdd32b
add setting urlseed_max_request_bytes to handle large web seed requests #1405 ( #1423 )
...
add setting urlseed_max_request_bytes to handle large web seed requests. change default for urlseed max request to 16MIB
2016-12-18 15:58:14 -05:00
Andrei Kurushin
d62b980278
backport fix upnp xml_parse
2016-12-18 09:01:33 -05:00
Steven Siloti
db65eaaa00
submit disk jobs from read_piece right away
...
Without this the jobs get submitted on the next tick which may take a while.
2016-12-17 02:23:09 -05:00
Steven Siloti
30303c17df
don't indicate interest in peers when in upload only mode
...
If the torrent is paused we don't want to mark peers as interesting
even if the torrent has not finished downloading.
2016-12-09 17:16:25 -05:00
Steven Siloti
5d0322d393
fix assertion in fingerprint::to_string
2016-12-07 20:52:45 -05:00
arvidn
864fcfaced
initialize piece priorities to 4
2016-12-04 18:36:45 -05:00
arvidn
8874a907ef
fix to file priorities
2016-12-03 00:57:52 -05:00
arvidn
4df1ecbe25
re-enable some warnings and fix code
2016-11-20 01:05:16 -05:00
tnextday
b25ea5329f
updates `m_last_sent` in `peer_connection::setup_send()` instand of `peer_connection::keep_alive()`
2016-11-19 02:03:12 -05:00
arvidn
f33d1b32e3
add trackers from add_torrent_params/magnet links to separate tiers
2016-11-09 18:44:01 -05:00
Arvid Norberg
f5c7a49d61
remove incorrect deleted-storages assert and add some more test coverage in test_metadata_extensions ( #1286 )
2016-11-03 19:39:42 -04:00
Arvid Norberg
21d05945f2
documentation and deprecation fixes ( #1275 )
...
documentation and deprecation fixes
2016-10-31 20:00:01 -04:00
Arvid Norberg
7476f7875e
don't check file-sizes resume data for files that likely is in the partfile ( #1268 )
2016-10-29 13:53:24 -04:00
Arvid Norberg
d1a59879cb
deprecate mmap_cache ( #1269 )
...
deprecated mmap_cache feature
2016-10-29 13:42:42 -04:00
Arvid Norberg
61af222d92
add utility function for generating peer ID fingerprint ( #1249 )
...
add utility function for generating peer ID fingerprint
2016-10-25 08:03:26 -04:00
Steven Siloti
cf7db392b6
assert that offset didn't change while hashing
2016-10-25 07:59:02 -04:00
Steven Siloti
f36b9a805a
avoid concurrent access to hash offset
...
Since partial_hash::offset is not an atomic it is technically UD to access it
concurrently from multiple threads.
2016-10-25 07:59:02 -04:00
Steven Siloti
241e9fd25a
add assert to detect index out-of-range
2016-10-25 07:59:02 -04:00
Arvid Norberg
f16d0b7953
add unit test for 'file_sizes' entry in resume data ( #1248 )
...
add unit test for 'file_sizes' entry in resume data. fix resume data bug in client_test for magnet links and minor resume data cleanup in default_storage
2016-10-23 22:01:09 -04:00
Arvid Norberg
5012fcf10b
fix bug in last-seen-complete ( #1234 )
2016-10-20 00:15:26 -04:00
Alden Torres
fe754453f4
backport of fix for LFS support in android ( #1232 )
2016-10-20 00:14:03 -04:00
Arvid Norberg
7009001f73
fix ambiguous call to abs() in tommath ( #1228 )
...
fix ambiguous call to abs() in tommath
2016-10-20 00:13:45 -04:00
Pavel Pimenov
037f349cee
Try resolve #1175 (for RC_1_1) ( #1230 )
...
https://github.com/arvidn/libtorrent/pull/1223
2016-10-19 17:29:35 -04:00
Steven Siloti
fc7b4c1c4f
update comment to reflect new quota definition
2016-10-15 21:32:14 -04:00
Steven Siloti
c13286b945
take upload speed into account in round-robin choker
...
The unchoked peers need to be sorted by upload speed so that the slowest node
will get choked as part of optimistic unchoking.
Also change the minimum quanta to 1 minute instead of 256KB.
Also remove a useless multiply in the fastest peer choker since the priorities
are guarenteed to be equal at that point.
Fixes #1171
2016-10-15 21:32:14 -04:00
Arvid Norberg
25195a7260
back port DHT fixes from master ( #1209 )
...
back port DHT fixes from master
2016-10-14 23:47:59 -04:00
Arvid Norberg
c966435d1c
fix issue where shutting down the session immediately and asynchronously starting the DHT would cause a shutdown hang ( #1203 )
2016-10-10 22:54:19 -04:00
Arvid Norberg
6bb2d7c017
Sanitize 1.1 ( #1197 )
...
enable address sanitizer
2016-10-09 17:00:20 -04:00
Arvid Norberg
5f7e2eb928
run undefined sanitier on travis/linux ( #1134 )
...
run undefined sanitizer on travis/linux. back-port ed25519 unit test from master
2016-10-08 12:29:46 -04:00
Arvid Norberg
7a52a285a1
back-port error_code cleanup from master ( #1173 )
...
back-port error_code cleanup from master
2016-10-03 16:32:40 -07:00
Steven Siloti
2e0140b6f6
fix peer picking algorithm ( #1141 )
...
fix peer picking algorithm. The old code was always picking the first to_pick peers from the set.
2016-09-24 06:08:52 -07:00
Arvid Norberg
b20b3ad1ac
remove file size limit in torrent_info filename constructor ( #1126 )
2016-09-21 19:54:42 -07:00
Arvid Norberg
03068ffa0b
Merge pull request #1108 from arvidn/user-agent-1.1
...
user agent anonymous mode
2016-09-21 07:25:15 -07:00
Arvid Norberg
4d716361c0
minor code cleanup ( #1116 )
2016-09-20 22:10:06 -07:00
arvidn
85a2a5c5cb
don't send user-agent in metadata http downloads or UPnP requests when in anonymous mode
2016-09-18 17:16:03 -07:00
Arvid Norberg
acf77a5385
fix tail-padding for last file in create_torrent ( #1106 )
2016-09-18 20:08:27 -04:00
Steven Siloti
0759b732c1
web_peer_connection: make a copy of the request before calling incomi… ( #1091 )
...
web_peer_connection: make a copy of the request before calling incoming_piece
2016-09-14 12:29:07 -04:00
sledgehammer999
22043fd186
Use std::random instead of Boost.Random when in c++11 mode. ( #1087 )
2016-09-13 17:07:01 -04:00
Steven Siloti
850eca1f21
don't pop request until we're done with it ( #1085 )
2016-09-13 02:37:00 -04:00
milesdong
dc4d9af2e6
fix invalid memory access in utp_stream and torrent ( #1084 )
...
fix invalid memory access in uTP PMTUd
2016-09-13 02:36:23 -04:00
Alden Torres
e4a27c0b4b
backport of fix in resolve_links::match ( #1068 )
...
backport of fix in resolve_links::match
2016-09-06 18:30:30 -04:00
arvidn
b554909486
hint DHT bootstrap nodes of actual bootstrap request
2016-08-30 21:15:35 -04:00
Arvid Norberg
88fe6ae8c3
don't link against sha1.cpp when using libcrypto's implementation ( #1040 )
2016-08-30 08:25:07 -04:00
Steven Siloti
3a665a1040
fix inconsistant prefix calulcation ( #1030 )
...
The special case for calculating the prefix in the last bucket was being
applied to the condidate node but not the existing nodes in the bucket.
2016-08-25 19:26:48 -04:00
Arvid Norberg
558ec097a2
fix applying settings to only take actual updates into account ( #1027 )
2016-08-22 21:38:57 -04:00
Arvid Norberg
2a36f9015d
build mpi.c as c++ to allow including boost headers ( #1026 )
...
build mpi.c as c++ to allow including boost headers
2016-08-22 07:59:46 -04:00
arvidn
97ce1b07bf
fix building tarball
2016-08-21 20:21:50 -04:00
Arvid Norberg
debf3c6e36
update puff.c for gzip inflation ( #1022 )
...
update puff.c for gzip inflation
2016-08-21 14:43:44 -04:00
Arvid Norberg
80e5ce9b32
add a default DHT bootstrap node when it's enabled on session startup ( #1008 )
...
make the dht bootstrap nodes part of settings_pack instead, to make it possible to set them on startup. and add default
2016-08-21 12:15:19 -04:00
Arvid Norberg
daa453ef3b
back-port windows stack trace function to 1.1 ( #1017 )
...
back port exception handling and stack trace printing from master -> RC_1_1
2016-08-21 01:07:02 -04:00
Arvid Norberg
b701fb252a
clear alert nofify function when calling abort on a session, to avoid touching a destructed session object ( #1015 )
2016-08-20 11:04:44 -04:00
arvidn
e247473b86
bump version number
2016-08-13 07:12:23 -04:00
Arvid Norberg
8007b947fd
make pad-file and symlink support conform to BEP47 ( #992 )
...
make pad-file and symlink support conform to BEP47
2016-08-07 22:37:10 -04:00
Steven Siloti
bc369683df
handle short reads when exporting a file ( #990 )
...
handle short reads when exporting a file. Pieces in the part file are not guaranteed to be fully written so short reads need to be handled rather than asserting.
2016-08-07 16:04:29 -04:00
Steven Siloti
d4296730d0
fix re-prioritizing a piece while it is downloading ( #987 )
...
update_piece_state does not expect that the piece's priority has also changed
since the last time the piece was updated. Make sure the piece's priority is
updated before trying to update the state.
2016-08-07 15:27:04 -04:00
Arvid Norberg
61031f1186
hack to allow timeout utp sockets that are about to be closed ( #976 )
2016-08-02 00:07:36 -04:00
arvidn
24dd6d0945
fix warning
2016-07-31 10:02:54 -04:00
arvidn
192559f245
fix warnings of unused return values from ftruncate() calls
2016-07-31 03:19:31 -04:00
terry zhao
48ca20968e
fix value of current_tracker when all tracker failed ( #932 )
...
fix torrent_status::current_tracker when all trackers fail.
2016-07-26 01:13:28 -04:00
Arvid Norberg
6777ec5d05
back-ported dbghlp fix ( #946 )
...
back-ported dbghlp fix
2016-07-26 01:05:32 -04:00
Arvid Norberg
0ea449a7b5
make local service discovery cookie support not so random numbers, to make the test reliable ( #943 )
2016-07-25 08:05:54 -04:00
Arvid Norberg
6370d5bc81
deprecate lt_trackers extension ( #940 )
...
deprecate lt_trackers extension
2016-07-24 23:37:03 -04:00
Steven Siloti
3321ca10f1
update our id in the rpc manager when it changes ( #942 )
...
update our id in the rpc manager when it changes
2016-07-24 21:30:36 -04:00
Arvid Norberg
5bda955f8f
don't send bitfield to peers whose handshake we haven't fully received yet ( #925 )
2016-07-20 10:11:28 -07:00
terry zhao
e75bb120b4
fix range of lsd::cookie ( #920 )
...
fix cookie range of lsd in lsd::on_announce
2016-07-18 09:19:45 -07:00
Sivachandran
8f3bd1052e
fix mutable dht_get_item failure when salt is non-empty ( #909 )
2016-07-18 07:12:10 -07:00
Arvid Norberg
80fba1f748
fix crash in session::get_ip_filter when not having set one ( #914 )
2016-07-17 14:23:54 -07:00
Arvid Norberg
e079d0291e
fix filename escaping when repairing torrents with broken web seeds ( #892 )
...
fix filename escaping when repairing torrents with broken web seeds
2016-07-07 02:22:15 -04:00
Arvid Norberg
cf65f85dc3
fix file_completed_alert ( #880 )
2016-07-03 14:48:18 -04:00
Arvid Norberg
97ad7510af
minor refactoring to move-storage patch ( #680 )
...
minor refactoring to move-storage patch
2016-06-29 20:05:28 +03:00
Vladimir Golovnev
faef995cdc
Move storage "file-by-file" ( #632 )
...
When moving storage for a torrent, only move files belonging to the torrent, one by one.
2016-06-29 20:05:16 +03:00
Alden Torres
ecb64a53a9
backport of popcnt asm for x86 and gcc/clang ( #864 )
...
backport of popcnt asm for x86 and gcc/clang
2016-06-28 00:34:21 -04:00
terry zhao
1a3e75b50a
fix msvc-8.0 build ( #860 )
2016-06-27 13:46:15 -04:00
arvidn
b97ac65c01
don't perform expensive hash of piece data for logging
2016-06-26 13:11:52 -04:00
arvidn
f56d698db6
fix asio-debugging
2016-06-25 17:29:40 -04:00
Arvid Norberg
6917a11c6b
correct error introduced in add_torrent_impl refactor, with regards t… ( #846 )
...
correct error introduced in add_torrent_impl refactor, with regards to not having flag_duplicate_is_error set (which is not set by default)
2016-06-23 13:19:35 -04:00
arvidn
763d313570
fix bug in enum_net() for BSD and Mac
2016-06-21 19:05:22 -04:00
Alden Torres
38f4765ebc
added assert and documentation typos ( #816 )
2016-06-13 17:16:09 -04:00
Alden Torres
d759d8f742
not add peers from url if add_torrent_impl returns invalid handle ( #814 )
2016-06-13 07:47:16 -04:00
Arvid Norberg
4e0a4db9b4
fixed inverted priority of incoming piece suggestions ( #809 )
2016-06-12 20:36:05 -04:00
Arvid Norberg
5ecd00c5c5
fix osx build ( #804 )
...
fix osx build with asserts enabled
2016-06-11 00:48:13 -04:00
Arvid Norberg
830a79dbcf
optimize allow-fast logic ( #800 )
...
optimize allow-fast logic
2016-06-09 08:02:41 -04:00
Arvid Norberg
5eaf713d1f
revert handshake round-trip optimization ( #797 )
...
revert handshake round-trip optimization. it prevents taking advantage of FAST extensions since the bitfield is sent before receiving the other peer's handshake
2016-06-07 21:45:48 -04:00
Alden Torres
c8f7d89652
early resume data reset when fatal_disk_error ( #798 )
2016-06-07 18:44:39 -04:00
Arvid Norberg
3624ce6cfd
fixed crash on invalid input in http_parser ( #782 )
...
fixed crash on invalid input to http_parser
2016-06-04 09:53:23 -04:00
arvidn
ec182492cc
improve add_torrent_params::flags documentation and fix related logging bug
2016-05-30 16:36:44 -07:00
Arvid Norberg
b3bbb2f0f6
upgrade libtommath to 1.0 ( #765 )
...
upgrade libtommath to 1.0
2016-05-28 17:12:26 -04:00
arvidn
67a497834a
back-port extra checks in pe_crypto from master
2016-05-27 09:51:06 -07:00
Alden Torres
f8dcf30b2e
Ported support for magnet x.pe parameter from master ( #760 )
2016-05-27 12:12:32 -04:00
Alden Torres
10393697cb
Fix of parse_endpoint with invalid port character separator ( #757 )
2016-05-27 12:00:54 -04:00
arvidn
98eabc63e9
using _WIN32 appears safer than WIN32
2016-05-23 23:02:52 -04:00
arvidn
0ce5a4c664
improve robustness in natpmp code a bit
2016-05-23 22:46:46 -04:00
Arvid Norberg
62fb7209ef
fix invariant check issue with a paused session ( #750 )
...
fix invariant check issue with a paused session
2016-05-22 22:58:11 -04:00
Arvid Norberg
b5fc367d17
fix incorrect comparison function when deciding which peer to disconnect ( #746 )
...
fix incorrect comparison function when deciding which peer to disconnect
2016-05-22 13:46:37 -04:00
arvidn
c292696dcb
back-port fix adding empty file as torrent
2016-05-14 13:13:20 -04:00
Arvid Norberg
53bd03558c
Dht stats 1.1 ( #720 )
...
fix missing dht stats counter updates
2016-05-12 21:27:11 -04:00
Arvid Norberg
4057aa0391
fix issue with comparison of cached time and real-time ( #719 )
2016-05-09 08:21:00 -04:00
Arvid Norberg
5bedf3e7b3
post add_torrent_alert before any other torrent alert ( #717 )
...
post add_torrent_alert before any other torrent alert
2016-05-08 23:48:27 -04:00
arvidn
254906eddc
back-port torrent peer-class fix from master
2016-05-07 14:56:22 -04:00
Arvid Norberg
bcb359cef6
use unsigned long for ioctl commands ( #705 )
2016-05-06 08:08:49 -04:00
Arvid Norberg
985436636e
added new preformatted type to bencode entry ( #698 )
...
added new preformatted type to bencode entry to support carrying a verbatim copy of an already bencoded subtree. This is to support saving torrents in resume data and create_torrent based on existing torrents, in order to preserve key order
2016-05-05 21:38:57 -04:00
Arvid Norberg
f9bc6dbc54
improvements to socks5 support (for 1.1.1 release) ( #567 )
...
capture listen IP and port from socks5 BIND response. add tests for socks5 and improve support for capturing the local endpoint (i.e. bind port) for BIND command socket connections. post listen_succeeded_alert when successfully bound to listen socket on SOCKS5 proxy. make sure to announce the socks5 listen port
2016-05-05 17:09:11 -04:00
Jonathan McDougall
f065cacebf
* now calling stop_announcing() unconditionally instead of checking !is_paused(), which was always false when aborting a torrent and could cause infinite blocks while destroying a session ( #694 )
...
fixed torrent invariant check that wasn't using the m_abort flag and correctly stop trackers when shutting down
2016-05-03 01:34:43 -04:00
Arvid Norberg
7048eb1f5c
be more conservative in marking packets as mtu-probes ( #689 )
2016-05-02 00:17:17 -04:00
arvidn
e0e05e3961
fix asserts firing in unit tests
2016-04-28 21:59:41 -04:00
arvidn
b8dad50757
fix whitespace
2016-04-28 17:14:41 -04:00
Alden Torres
96b7d3ad46
Removed unused alert_observer.hpp ( #646 )
2016-04-26 11:48:43 -04:00
Alden Torres
d08bbbc0cc
Added asserts related to total_size in create_torrent ( #642 )
2016-04-26 00:37:47 -04:00
Alden Torres
7c4fabadfd
Removed unused statement ( #643 )
2016-04-24 23:47:57 -04:00
Arvid Norberg
a9f07a29bd
fix move_storage error handling bug ( #638 )
2016-04-23 10:02:52 -04:00
Alden Torres
6171c911a0
Added assert for total_size in create_torrent ( #636 )
2016-04-22 13:51:06 -04:00
Arvid Norberg
423ee1cef4
move some implementation details of bitfield into its own translation unit to not expose MMX and SSE internals (and fix shared linking) ( #630 )
2016-04-20 07:50:57 -04:00
Arvid Norberg
0b53fb70ad
add missing torrent_error_alert::filename function ( #629 )
2016-04-20 00:46:42 -04:00
Alden Torres
0fddd403b2
Better api for peers() method in dht_get_peers_reply_alert ( #628 )
2016-04-19 16:16:51 -04:00
arvidn
93408a02ff
fix classification of UDP packets as peer traffic
2016-04-18 01:29:46 -04:00
Alden Torres
a73d424b82
typos
2016-04-15 15:39:41 -04:00
Steven Siloti
9ffadcde62
allow peers to resume allocating disk buffers when their last outstanding write completes
2016-04-09 16:48:05 -07:00
arvidn
5d499e83b6
fix uTP/SSL
2016-04-09 10:50:45 -04:00
Arvid Norberg
774735b046
Merge pull request #600 from arvidn/python-warnings-1.1
...
fix some build warnings in python binding
2016-04-08 02:17:45 -04:00
arvidn
5c17dc9f31
fix some build warnings in python binding
2016-04-07 22:45:23 -04:00
arvidn
cee2b16949
fix some coverity warnings and move out code to torrent_status.cpp
2016-04-07 21:44:24 -04:00
arvidn
876cef0d4c
restore the ipv6 http tracker argument, but restricted to only private torrents
2016-04-07 00:06:04 -04:00
Arvid Norberg
6767cf96f1
Merge pull request #546 from arvidn/move-into-self-1.1
...
fail correctly when move_storage is called to move into itself 1.1
2016-04-06 17:49:05 -04:00
arvidn
387498e54f
clean up in piece picker
2016-04-06 00:45:21 -04:00
Alden Torres
bb8d1d0e56
Revert utp log file to disable by default
...
Documentation typos
2016-04-03 22:32:06 -04:00
arvidn
dff0e7b0cd
fix concurrency issue in part_file::export_file
2016-04-02 21:29:20 -04:00
arvidn
31805ecec0
fix some clang build warnings
2016-04-02 12:27:42 -04:00
arvidn
6bc5de5903
fail correctly when move_storage is called to move into its own directory
2016-04-02 10:03:31 -04:00
arvidn
7f232dd195
fix python3 issue in binding
2016-03-30 23:35:47 -04:00
arvidn
7649610807
fix test_optimistic_unchoking sim
2016-03-27 18:40:53 -04:00
arvidn
3e7a6b03e5
remove dead code in peer_connection
2016-03-21 18:47:17 -04:00
arvidn
0095aa084f
make coalesce reads and coalesce writes actually work
2016-03-20 16:34:19 -04:00
arvidn
a9d12766d4
fix typo in hard_link()
2016-03-20 16:14:29 -04:00
Arvid Norberg
db214cc92d
Merge pull request #559 from arvidn/direct-io-1.1
...
remove unused O_DIRECT mode
2016-03-20 14:42:58 -04:00
arvidn
139fb29647
remove unused O_DIRECT mode, and relax/simplify alignment requirements for coalesce_buffers
2016-03-20 00:55:31 -04:00
arvidn
85cf5ac195
remove unused aligned_holder class. fix logging issue of out-of-bound piece requests
2016-03-19 23:32:50 -04:00
Arvid Norberg
e9b334ce63
Merge pull request #494 from arvidn/udp-bind-failure-1.1
...
attempt to fix issue with binding udp sockets on windows
2016-03-19 13:20:51 -04:00
arvidn
53b5e964d2
fix merge issue and properly close ssl udp socket when disabled, prevents the extra listen_succeeded alert for the ssl udp socket
2016-03-19 10:25:35 -04:00
arvidn
e9a5985609
if a udp socket is already bound to the IP and port we want to bind it to, don't reopen it
2016-03-19 10:25:30 -04:00
arvidn
d705dc2953
attempt to fix issue with binding udp sockets on windows
2016-03-19 10:25:30 -04:00
arvidn
f7c9062019
deprecate more parts of explicit cache as well as fixing typos of TORRENT_NO_DEPRECATE preprocessor tests
2016-03-19 07:54:29 -04:00
arvidn
c0033d0977
do not enable SSL listen sockets by default
2016-03-18 23:57:02 -04:00
arvidn
b446fe4bba
deprecate settings_pack::hashing_threads and replace it with aio_threads in documentation
2016-03-18 16:40:52 -04:00
arvidn
3c98868f6c
deprecate explicit cache feature
2016-03-18 12:15:03 -04:00
arvidn
1cd5119178
remove/deprecate bad idea with mlock
2016-03-17 19:37:05 -04:00
arvidn
317eb2fe2a
remove unused disk allocation code
2016-03-16 20:13:28 -04:00
Arvid Norberg
a1d60db706
Merge pull request #547 from arvidn/no-read-cache-1.1
...
fix use_read_cache=false
2016-03-16 08:14:15 -04:00
arvidn
4926081960
fix use_read_cache=false
2016-03-16 02:22:18 -04:00
arvidn
36d0cfe40d
fix shutdown issue caused by peer connections being kept alive by disk buffer pool callbacks
2016-03-16 00:28:19 -04:00
arvidn
08bac479be
allow each peer have at least 2 allocated disk blocks at any given time, to avoid stalling when cache_size setting is small. also deprecate use_write_cache
2016-03-16 00:28:11 -04:00
Steven Siloti
4331f57021
restrict check_cache_level to only runing on one thread at a time
...
If another thread trys to call check_cache_level then m_cache_check_state is set
to indicate that the thread currently in check_cache_level needs to call it again.
2016-03-14 19:03:12 -07:00
Steven Siloti
d405535a3f
try to free the piece after kicking the hasher and flushing
2016-03-14 19:03:12 -07:00
Steven Siloti
e8f93df700
fix indentation
2016-03-14 19:03:12 -07:00
Steven Siloti
826bbe35ee
always cache writes
2016-03-14 19:03:12 -07:00
Steven Siloti
6e8db41dd2
check_cache_level after performing a job rather than before
...
If dirty blocks are added while the job is running there is a chance of
deadlock if the dirty blocks cause the cache to exceed its size limit and
no further jobs come in to trigger another check.
2016-03-14 19:03:12 -07:00
Steven Siloti
9c5bb25d65
always clear outstanding_flush after attempting to flush a cached write
...
Also clear outstanding_flush before calling kick_hasher because kick_hasher
may unlock the cache mutex which can allow more dirty blocks to be added
which may require another flush_hashed job be added.
2016-03-14 19:03:12 -07:00
Arvid Norberg
82d177472e
Merge pull request #541 from arvidn/fix-test-transfer-1.1
...
improve message from listen_failed_alert
2016-03-14 21:43:34 -04:00
arvidn
c5861bcc04
fix failure to increment port when retrying socket binding
2016-03-14 18:52:43 -04:00
Arvid Norberg
42d423e992
Merge pull request #540 from arvidn/remove-purgable-control-1.1
...
remove the purgable control patch
2016-03-14 17:54:12 -04:00
arvidn
921cbeebed
add option to delete just the partfile when removing a torrent
2016-03-14 08:26:39 -04:00
arvidn
55cd19d1e2
remove the purgable control patch. It adds a lot of complexity and it does not perform well
2016-03-14 01:48:00 -04:00
Arvid Norberg
035f8e98d1
Merge pull request #542 from arvidn/request-timeout-1.1
...
fix seed timing-out unchoked peers for not sending requests
2016-03-14 01:44:50 -04:00
arvidn
58e73c1469
fix typo
2016-03-13 20:47:50 -04:00
Arvid Norberg
5652a46068
Merge pull request #508 from arvidn/part-file-1.1
...
attempt to fix issue where the partfile is not deleted
2016-03-13 18:05:01 -04:00
arvidn
8f14c74be8
fix issue where a seed could time-out an unchoked peer for not sending any requests, despite being busy servicing requests from the peer (and time out immediately when m_requests is drained)
2016-03-13 16:41:31 -04:00
arvidn
fb85e5e60f
improve message from listen_failed_alert. Post listen_failed_alert for every failure, including the ones that are re-tried
2016-03-13 16:18:44 -04:00
arvidn
0d0048d415
try to evict a volatile piece before allocating a new one for a hash check. It may be faster to check files without growing the cache, or reusing the same buffers.
2016-03-13 12:52:44 -04:00
arvidn
2178d1ad2b
improve robustness and performance of uTP PMTU discovery. fix duplicate ACK issue in uTP. demote an invariant check to 'expensive'
2016-03-13 12:40:59 -04:00
arvidn
71e3fb8941
fix division by zero in super-seeding logic
2016-03-07 23:40:01 -05:00
arvidn
f5d5ac4f3a
fix bug where disk cache was wiped out after completion file-checking. factor out sim test utilities and reuse them in the regression test
2016-03-06 21:44:38 -05:00
Arvid Norberg
3fa3004b85
Merge pull request #526 from arvidn/rechecking-outstanding-1.1
...
always keep at least 2 async hash jobs outstanding
2016-03-06 20:05:56 -05:00
arvidn
442979c318
support filtering which parts of session state are loaded by load_state()
2016-03-06 16:35:49 -05:00
arvidn
67774d660d
always keep at least 2 async hash jobs outstanding when rechecking torrents (to keep the bandwidth delay product full)
2016-03-06 16:31:18 -05:00
arvidn
b40430f175
change the cache size calculation for auto cache size (-1) to be smaller, especially for machines with large amounts of RAM
2016-03-06 16:15:22 -05:00
arvidn
a02c1d2164
record cache settings in the job instead of checking it twice for more robust behavior
2016-03-06 16:15:13 -05:00
arvidn
8ca76f9d59
fix support for auto disk cache size and disk buffer pool allocator behavior
2016-03-06 16:14:55 -05:00
arvidn
26f88bb12d
add receive_buffer unit test and some more cleanup and asserts
2016-03-05 00:14:00 -05:00
arvidn
2efb9d9a6a
fix bug in receive_buffer
2016-03-05 00:13:59 -05:00
Arvid Norberg
be17b78c5f
Merge pull request #522 from arvidn/io-thread-assert-1.1
...
remove invalid assert in the disk thread
2016-03-04 23:16:02 -05:00
arvidn
2bd6ad9974
remove invalid assert in the disk thread
2016-03-04 20:20:49 -05:00
Arvid Norberg
00f3406402
Merge pull request #514 from arvidn/allowed-unchoke-1.1
...
attempt to uphold the invariant that the num_unchoke_slots
2016-03-04 16:43:38 -05:00
arvidn
b707a4de90
uphold the invariant that the num_unchoke_slots counter is int max as long as the unchoke slots limit < 0
2016-03-04 16:42:36 -05:00
Alden Torres
4998bfedc6
Documentation typos
2016-03-04 10:43:25 -05:00
arvidn
b9ec183e24
increase default connect speed. minor cleanup. add logging for short lived connections
2016-03-03 01:20:15 -05:00
arvidn
fbef47d3ec
fix edge case in uTP stream when receiving a close-reason code
2016-03-02 22:30:02 -05:00
arvidn
e851b79865
fix issue when shutting down a torrent with outstanding async operations
2016-03-02 01:16:08 -05:00
arvidn
aeb9f1c5dd
fix bug in enum_net_interfaces
2016-02-29 18:14:10 -05:00
arvidn
2b6fdc1728
attempt to fix issue where the partfile is not deleted when asking to delete all files
2016-02-28 16:05:13 -05:00
arvidn
f563bf9cac
attempt to make the alert type backwards compatible with cloning the state when building with deprecated functions enabled
2016-02-27 20:25:17 -05:00
arvidn
ac2916c426
enable disk cache pool allocator by default. fix ansi escape code conversion in client_test on windows
2016-02-27 17:42:31 -05:00