Arvid Norberg
5ecd00c5c5
fix osx build ( #804 )
...
fix osx build with asserts enabled
2016-06-11 00:48:13 -04:00
Arvid Norberg
327af3a69e
optimize allow-fast logic ( #800 )
...
optimize allow-fast logic
2016-06-10 01:24:37 -04:00
Arvid Norberg
404d72b9b7
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-10 01:14:37 -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
Arvid Norberg
8c8f5bb03b
deprecated public to_hex() and from_hex() functions ( #784 )
2016-06-04 10:01:43 -04:00
Arvid Norberg
96999ad67f
replace uses of boost::bind with std::bind and lambdas ( #745 )
2016-05-25 00:31:52 -04:00
Arvid Norberg
748af6eec1
general cleanup. remove valgrind markup, log_hash_failures and C headers ( #752 )
...
general cleanup. remove valgrind markup, log_hash_failures and C headers
2016-05-23 08:15:39 -04:00
arvidn
aa0d29b67d
merged RC_1_1 into master
2016-05-19 01:28:22 -04:00
Arvid Norberg
e8380e1d0b
factor out includes from config.hpp into the files actually using it. primarily, printf family of functions, since C++11 version is used now. This removes the need for an snprintf-wrapper on windows ( #732 )
2016-05-17 09:24:06 -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
c91a700c07
Msvc warnings ( #685 )
...
fix msvc warnings and build examples with warnings-as-errors
2016-05-02 12:36:21 -04:00
Arvid Norberg
0d2c04cb2e
remove network thread pool feature ( #688 )
...
remove network thread pool feature (it was messy and mostly useful for bittorrent over SSL). The proper solution is to allow every peer run in its own asio strand and have multiple threads running the io service
2016-05-02 02:18:51 -04:00
Steven Siloti
ff0675e64e
use standard array container ( #676 )
2016-04-30 23:10:47 -04:00
Arvid Norberg
10ec0234a7
remove resolve-country feature ( #656 )
2016-04-28 08:20:47 -04:00
Andrei Kurushin
62eb956c54
fix x64 build with VS2015 UP2 compiler ( #640 )
...
fix VS2015 compiler warnings for: address-model=64, deprecated-functions=on, link=shared
2016-04-25 17:22:09 -04:00
Arvid Norberg
c9c6dd2d3b
clean up the annotations used for asio debugging ( #639 )
...
clean up the annotations used for asio debugging (tracking outstanding async operations)
2016-04-23 17:29:25 -04:00
Andrei Kurushin
7b5d48c02a
fix default release build with VS2015 UP2 compiler warnings ( #624 )
...
* fix default release build with VS2015 UP2 compiler warnings
this will allow to successfully build:
bjam toolset=msvc-14.0 release deprecated-functions=off character-set=unicode link=static warnings-as-errors=on
2016-04-17 16:56:07 -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
3e7a6b03e5
remove dead code in peer_connection
2016-03-21 18:47:17 -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
arvidn
317eb2fe2a
remove unused disk allocation code
2016-03-16 20:13:28 -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
arvidn
58e73c1469
fix typo
2016-03-13 20:47:50 -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
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
b9ec183e24
increase default connect speed. minor cleanup. add logging for short lived connections
2016-03-03 01:20:15 -05:00
arvidn
88b7e3768f
add sim test for optimistic unchoke round-robin distribution
2016-02-01 20:28:30 -05:00
arvidn
efe32c6a0e
rewrite most of web_peer_connection::on_receive to make it a lot simpler and fix edge cases with pad-files
2016-01-28 01:58:33 -05:00
arvidn
1f9f588e75
merge copyright year update and changelog from RC_1_0
2016-01-17 18:57:46 -05:00
arvidn
645b121df6
deprecate resolve-countries
2015-12-14 21:32:30 -05:00
arvidn
d505f93d7a
port sim tests to use the new setup_swarm API
2015-12-12 00:41:47 -05:00
arvidn
cc3b064cff
fix graceful pause issue. peers regularly check whether they should disconnect or not
2015-12-04 23:27:43 -05:00
arvidn
e9c0fc8eb5
fix bug that disabled rarest-first piece picking. introduced when removing speed-affinity in the piece picker
2015-11-29 08:26:00 -05:00
arvidn
fd3b53604c
add new piece picker logging alert category
2015-11-29 08:25:55 -05:00
arvidn
a8e31fd8ca
add first coverage of test_transfer as a proper sim
2015-11-28 00:59:39 -05:00
arvidn
a138b2daa9
handle receiving an invalid request
2015-11-07 14:58:08 -05:00
arvidn
5da511f140
now that force-started torrents aren't affected by the auto-manager, they need to be explicitly kicked when entering checking state (it would be nice if all this could be done through set_state())
2015-09-29 20:49:38 -04:00
arvidn
c0a4f7ba26
fix super seeding assert (forward port from RC_1_0)
2015-09-08 18:17:13 -04:00
arvidn
17c5759829
disable warning for unused command line argument and fix warnings. remove redundant travis build config. use new preprocessor on clang to avoid warnings
2015-09-06 22:55:41 -04:00
arvidn
beb5455331
add disk I/O read asserts and fix i2p issue if a tracker responds with i2p peers when i2p is not configured on the client
2015-08-28 07:20:21 -04:00
arvidn
6012306557
add more asserts for the size of the bitfields peers send
2015-08-27 21:48:52 -04:00
arvidn
a42f9e0c63
fix more warnings
2015-08-22 00:28:12 +02:00
arvidn
4873004df7
warnings as errors
2015-08-21 14:52:07 +02:00
arvidn
ffa870d280
fixed some GCC warnings
2015-08-20 01:33:20 +02:00
arvidn
5c8fc818c1
fix more warnings
2015-08-19 01:39:01 +02:00
arvidn
f6b86dc4b5
add typesafety to piece_picker torrent_peer pointers. and fix a few incorrect uses
2015-08-18 04:25:13 -04:00
arvidn
9a0092c120
fix some warnings
2015-08-16 12:17:23 -04:00
arvidn
a81ca2391b
fix some warnings
2015-08-10 20:03:24 -04:00
arvidn
1c1698459c
fix warnings
2015-08-08 22:53:11 -04:00
Alden Torres
1356332496
Avoid a possible null pointer error when logging on peer_connection::on_connection_complete.
2015-08-07 00:30:28 -04:00
arvidn
655a3ae019
fix some warnings
2015-08-01 23:57:11 -04:00
arvidn
29c618c3e5
merge bittorrent-slow start fix from RC_1_0
2015-07-27 16:53:25 -07:00
arvidn
6c5aec3476
fix request queue size performance issue
2015-07-20 08:20:17 -07:00
arvidn
6c7c0cd878
fix up some old logging defines and improve the log output for send buffer watermark and request queue length
2015-07-17 23:54:25 -04:00
arvidn
2739def57f
minor cleanups. use libtorrent typedefs for asio. failing to bind IPv6 UDP socket is no longer fatal. removed some redundant listen_failed_alerts
2015-07-11 23:01:27 -04:00
arvidn
2b05b1c85c
fix cppcheck warnings
2015-07-11 10:36:13 -04:00
arvidn
a63cfd2a95
improve logging (specifically don't emit bandwidth limiter logs when it's disabled)
2015-07-05 18:44:02 -04:00
Mikhail Titov
77ca1ac16f
Quadruple handshake timeout for i2p
2015-06-24 19:40:17 -05:00
arvidn
323af56cc2
update interest when changing upload-only mode
2015-06-16 01:24:35 -04:00
arvidn
41533205be
drop support for boost 1.35 and fix some more references to the asio namespace
2015-06-06 02:10:53 -04:00
Arvid Norberg
d43f7b56a2
update copyright year
2015-06-03 05:18:48 +00:00
Arvid Norberg
607e708bc4
fix warnings
2015-05-19 03:13:49 +00:00
Arvid Norberg
58ae099cf8
clean up disk_io_job a bit to avoid old-style casts
2015-05-16 20:41:37 +00:00
Arvid Norberg
12c9d3de26
fix more warnings
2015-05-16 18:35:47 +00:00
Arvid Norberg
2bf4519bee
make the torrent hold a pointer to the ip_filter instead of relying on a session reference
2015-05-16 06:33:37 +00:00
Arvid Norberg
e7f9f35556
fix mistake in download_queue_time
2015-05-13 00:02:01 +00:00
Arvid Norberg
1357fd5265
clean up usage of printf attribute (encapsulate it in a macro)
2015-05-10 05:11:51 +00:00
Arvid Norberg
a83dcbaaf0
removed access-log build option and log parser. added incoming_request_alert. This feature can now be implemented by clients
2015-05-09 03:04:08 +00:00
Arvid Norberg
4a304273fd
fix some coverity issues
2015-05-03 03:28:39 +00:00
Arvid Norberg
4f216dece3
factor out strings of peer logs to be enums instead, in peer_log_alert
2015-05-03 02:53:54 +00:00
Arvid Norberg
42120014d0
merged changes from RC_1_0
2015-04-28 04:01:40 +00:00
Arvid Norberg
a0e6b52a3f
fix msvc build issues
2015-04-26 01:45:23 +00:00
Arvid Norberg
821e34c795
fix examples build. fix print formatting bugs. fix some gcc warnings
2015-04-25 04:22:51 +00:00
Arvid Norberg
91e66f65d3
removed unused argument (and silence warning)
2015-04-23 06:12:53 +00:00
Arvid Norberg
0b063de9ff
fix more warnings
2015-04-21 04:30:34 +00:00
Arvid Norberg
3951377d95
fix include paths for warning push and pop headers
2015-04-21 01:16:28 +00:00
Arvid Norberg
f5629eb403
cleanup and fixing of more warnings
2015-04-21 00:23:00 +00:00
Arvid Norberg
4d15f1410f
fix warnings, some clean-up and todo comments
2015-04-20 04:52:49 +00:00
Arvid Norberg
4fd230dbe5
fix build and some warnings
2015-04-20 00:01:27 +00:00
Arvid Norberg
408232cfc8
raise warning level. fix a few of them. filter out warnings from boost
2015-04-18 02:33:39 +00:00
Arvid Norberg
1faf2e201f
inversed TORRENT_LOGGING build config to enable logging by default. It's now disabled by TORRENT_DISABLE_LOGGING
2015-04-17 01:15:33 +00:00
Arvid Norberg
5f0b941a54
add more information to the invalid_request_alert and be more forgiving about requests from peers that have not sent an interested-message first
2015-04-13 01:34:19 +00:00
Arvid Norberg
bb48b6e83c
eliminate one more session dependency in peer_connection
2015-04-10 01:50:42 +00:00
Arvid Norberg
013ed36f09
landed alert_queue feature branch into trunk
2015-04-03 20:15:48 +00:00
Arvid Norberg
794de25212
moved escape_string.hpp into the aux_ directory. moved out the 3 public hex functions into its own public header, hex.hpp
2015-03-14 23:10:20 +00:00
Arvid Norberg
c1dc982f4f
deprecate the ptime type and related time types. just use boost::chrono / std::chrono
2015-03-12 04:34:54 +00:00
Arvid Norberg
0c8aee014c
implemented utp extension header to indicate the reason to close the connection
2015-02-28 19:51:15 +00:00
Arvid Norberg
91270a0c2b
make operation_t public and document it. include peer disconnects in client_test log
2015-02-15 05:17:09 +00:00
Arvid Norberg
a831a78fd5
simplify and clean up utp_stream. fix missing error check in read handler in peer_connection
2015-02-15 00:25:56 +00:00
Arvid Norberg
2fdb7499fa
optimize block_info allocation and downloading_piece size in piece_picker
2015-02-14 21:32:41 +00:00
Arvid Norberg
51f1a61d2d
more piece_picker unit tests and some fixes
2015-02-13 02:58:21 +00:00
Arvid Norberg
9fb98b1151
remove speed affinity feature in piece-picker and peers
2015-02-08 21:17:00 +00:00
Arvid Norberg
1b9b6f7292
support http basic auth in http_connection passed in from the outside as opposed to part of the url
2015-02-08 16:03:09 +00:00
Arvid Norberg
097d5b484d
improve piece picker support for reverse picking (used for snubbed peers) to not cause priority inversion for regular peers
2015-01-26 02:04:58 +00:00
Arvid Norberg
d8d069675c
improve piece picker to better support torrents with very large pieces and web seeds
2015-01-20 02:34:55 +00:00
Arvid Norberg
7668bf5d4c
downgrade some todo comments
2015-01-15 19:13:45 +00:00
Arvid Norberg
95f889b247
some debug output
2015-01-13 06:11:42 +00:00
Arvid Norberg
1a53a454ec
fix ssl unit test
2015-01-06 08:16:03 +00:00
Arvid Norberg
0977d94dbc
merged changes from RC_1_0
2014-12-25 11:24:02 +00:00
Arvid Norberg
333a13c957
a bit more conservative block request timeouts. promote some invariant checks in the DHT as expensive (to disable them for regular debug builds)
2014-12-10 07:13:57 +00:00
Arvid Norberg
20b9a01a09
pack members of pending_buffer a bit
2014-12-10 01:05:40 +00:00
Arvid Norberg
5666cdcd07
fix warnings
2014-12-09 09:33:34 +00:00
Arvid Norberg
09bc1550e9
simplify the debug logging mechanism. There's now only one build option, logging=on or logging=off. When logging is enabled, the log level is controlled by the alert mask. All log events are delivered as alerts and it's up to the client to write them to disk in whatever way seems appropriate. removed the pointless logger plugin
2014-12-09 09:08:26 +00:00
Arvid Norberg
4eaec6d87f
instead of using a fixed request timeout for every peer, have an adaptable one based on the average download time for a block
2014-12-08 17:06:04 +00:00
Arvid Norberg
c4e5df8e4d
remove the concept of timeout_extend in piece request timeouts. if a request times out, cancel it as soon as it holds up the completion of a piece
2014-12-07 22:22:38 +00:00
Arvid Norberg
790ef041bf
merged changes from RC_1_0
2014-12-07 07:22:39 +00:00
Arvid Norberg
1ed1963f29
remove size_type typedef in favor of boost::int64_t
2014-12-03 04:32:50 +00:00
Arvid Norberg
658e2ceefd
merged Steven Siloti's peer crypto patch into trunk
2014-11-23 06:14:47 +00:00
Arvid Norberg
e1d0592a57
merged changes from RC_1_0
2014-11-14 09:35:39 +00:00
Arvid Norberg
e526355d24
merged changes from RC_1_0
2014-11-09 11:17:13 +00:00
Arvid Norberg
aae56c991c
merged changes from RC_1_0
2014-11-08 16:58:18 +00:00
Arvid Norberg
601f0dc434
merged changes from RC_1_0
2014-11-03 06:15:51 +00:00
Arvid Norberg
85cc72835e
finally rename policy to peer_list
2014-10-26 07:34:31 +00:00
Arvid Norberg
1c448331d5
fix stats_alert with recent changes to stats
2014-10-25 23:10:07 +00:00
Arvid Norberg
e09a2b770d
factored out choke comparison functions into choker.cpp
2014-10-22 22:30:04 +00:00
Arvid Norberg
32d368e1ce
merged changes from RC_1_0
2014-10-12 18:16:46 +00:00
Arvid Norberg
ec472daee3
fix bug in peer_connection causing it to not connect when not having metadata
2014-10-12 06:29:34 +00:00
Arvid Norberg
ab34239447
fix invalid comment
2014-10-10 00:16:17 +00:00
Arvid Norberg
a655047cb0
support SSL over uTP (unit test is still failing with same errors as previously, this has not been fixed yet)
2014-10-06 03:03:01 +00:00
Arvid Norberg
3c7a932aee
update comments
2014-10-04 20:06:46 +00:00
Arvid Norberg
ceccc2a483
land branch to remove half-open connection limit / connection queue
2014-10-03 20:56:57 +00:00
Arvid Norberg
6a4a5419c2
one more fix
2014-09-28 04:05:44 +00:00
Arvid Norberg
9a985d197f
optimize num_seeds() and num_downloaders() to not count the peers every time
2014-09-24 09:03:57 +00:00
Arvid Norberg
60119bf0ca
added auto-sequential feature
2014-09-24 00:02:00 +00:00
Arvid Norberg
7a55069ec9
add additional single-thread asserts and separate torrents from the session (in preparation for running them in separate threads/strands)
2014-09-22 17:41:06 +00:00
Arvid Norberg
d7d498c3a3
more steps towards isolating peer_connections from the session object. unchoking now happens via the torrent object. hopefully in the future, the session can determine which peers to unchoke without having direct access to them (i.e. with a mutex)
2014-09-22 03:47:43 +00:00
Arvid Norberg
27b7705cf2
remove built-in GeoIP support
2014-09-21 21:01:48 +00:00
Arvid Norberg
2936556573
fix bug in delay-load feature of torrents
2014-09-21 02:06:03 +00:00
Arvid Norberg
c7a0bde196
fix bug in peer_connection::second_tick
2014-09-20 23:57:59 +00:00
Arvid Norberg
ad7d74f255
merged fixes from RC_1_0
2014-09-13 19:47:51 +00:00
Arvid Norberg
b74f5b13ef
fix another boost.chrono time overflow issue
2014-09-02 07:31:41 +00:00
Arvid Norberg
2f3e3caf0f
fixed typo
2014-08-31 08:34:03 +00:00
Arvid Norberg
97a8e3b895
fix build error with verbose logging
2014-08-28 07:02:43 +00:00
Arvid Norberg
4ddedc6a21
add extension hook on sending payload
2014-08-26 04:26:16 +00:00
Arvid Norberg
7d751b80da
merged fixes from RC_1_0
2014-08-26 03:14:32 +00:00
Arvid Norberg
862844e546
merged changes from RC_1_0
2014-08-22 07:56:10 +00:00
Arvid Norberg
40559fa564
fix typo in peer_connection
2014-08-11 15:53:53 +00:00
Arvid Norberg
0bc2d1eb8a
cover edge case of receiving the response to a request before the callback of sending the request. fixes assert
2014-08-02 06:09:07 +00:00
Arvid Norberg
02f3e48eaa
make performance counters able to blend in values, reducing a peer_connection -> session dependency on a sliding average state (this can be used for disk stats too)
2014-07-29 16:35:03 +00:00
Arvid Norberg
ab8c1eb334
log latency of bittorrent requests
2014-07-28 22:18:06 +00:00
Arvid Norberg
2f6a68bad3
track RTT of piece requests
2014-07-28 07:52:59 +00:00
Arvid Norberg
118ba5e9c4
streaming fix
2014-07-26 17:48:24 +00:00
Arvid Norberg
499edabf9f
a bit more cleaning up of m_ses uses in peer_connection
2014-07-19 22:33:45 +00:00
Arvid Norberg
30713a4a79
remove buffer stats debugging feature
2014-07-19 08:20:20 +00:00
Arvid Norberg
65bb1d0006
pass all the arguments to peer connections as an argument pack
2014-07-14 04:32:41 +00:00
Arvid Norberg
01640e1682
separate stats counters from session_interface (this was the main use of m_ses in peer connections)
2014-07-13 04:56:53 +00:00
Arvid Norberg
ca27c0d5ca
fix another boost.chrono issue
2014-07-13 00:48:32 +00:00
Arvid Norberg
bf18e310e6
remove some peer connection dependencies on m_ses
2014-07-12 22:32:55 +00:00
Arvid Norberg
a6f345181f
fixed some unused argument warnings
2014-07-07 06:28:48 +00:00
Arvid Norberg
7351389ce8
land libtorrent_aio branch in trunk
2014-07-06 19:18:00 +00:00
Arvid Norberg
6c6fe4dfe2
merged fixes of warnings from RC_1_0
2014-07-04 23:40:31 +00:00
Arvid Norberg
6e275fbe21
removed left-over unused variables
2014-07-02 02:53:10 +00:00
Arvid Norberg
6043e14131
remove pch.hpp
2014-06-28 23:45:46 +00:00
Arvid Norberg
3f4eba1bdb
web seed and storage fixes
2014-06-21 06:58:39 +00:00
Arvid Norberg
5642a0bd59
fix outstanding bytes issue when receiving redundant bytes
2014-06-17 08:07:03 +00:00
Arvid Norberg
2b7bef0f7b
fix support for web servers not supporting keepalive
2014-06-15 18:02:59 +00:00
Arvid Norberg
6d95b48afa
only attempt to set the TOS on socket when configured
2014-06-15 17:44:27 +00:00
Arvid Norberg
e291ab3290
minor streaming improvements
2014-06-08 21:15:34 +00:00
Arvid Norberg
2125efbbd8
merged streaming changes from libtorrent_aio into trunk
2014-06-06 01:26:18 +00:00
Arvid Norberg
e225259481
fix some msvc warnings
2014-05-10 03:23:05 +00:00
Arvid Norberg
474e77039f
removed set_ratio feature
2014-05-03 17:11:55 +00:00
Arvid Norberg
3192e59a1a
improve piece_deadline/streaming
2014-04-22 04:21:14 +00:00
Arvid Norberg
0b3df1c973
merged integer overflow fix from RC_0_16
2014-04-16 08:25:14 +00:00
Arvid Norberg
1734beda07
add missing includes for debug logging builds
2014-03-28 01:55:09 +00:00
Arvid Norberg
5b292133cb
fix assert by only constructing piece_block with verified values
2014-03-16 07:30:44 +00:00
Arvid Norberg
1c954451ff
seed mode fixes
2014-03-13 08:00:53 +00:00
Arvid Norberg
a943fec777
update copyright
2014-02-23 19:12:25 +00:00
Arvid Norberg
9612ef193e
cleaned up i2p_category to encapsulate it in i2p_stream.cpp, as well as the socks5 erro_category. added some documentation to torrent_handle and session. fixed reference documentation mapping of get_*_category() functions. regenerate documentation
2014-02-02 04:07:36 +00:00
Arvid Norberg
f0d1e8636c
extend verbose logging to try to catch test_priority failure on windows
2014-01-26 04:45:49 +00:00
Arvid Norberg
2a3f4e2360
merged verbose logging change from RC_0_16
2014-01-24 07:07:04 +00:00
Arvid Norberg
8ab1d8b686
more build fixes and cleaning up
2014-01-19 20:19:15 +00:00
Arvid Norberg
702b68ecc4
clean up assert related defines and debuf-only fields less error-prone. fix missing initialization in file_pool caused by mistake in defines under which the debug field was initialized
2014-01-19 19:45:50 +00:00
Arvid Norberg
d7be4659c8
rate limiter overflow fix (for very high limits)
2014-01-13 06:49:47 +00:00
Arvid Norberg
4e6b1cfbfb
update copyright
2013-12-25 17:07:16 +00:00
Arvid Norberg
adb3a5523c
some defensive programming. cleanup unused boost include. tighten up boost includes
2013-12-17 23:26:44 +00:00
Arvid Norberg
60a33f8cf8
make test_ssl build without openssl (and also not do anything)
2013-12-16 06:17:05 +00:00
Arvid Norberg
4f189e921d
mark some expensive parts of invariant checks as expensive and disabled by default. introduce undead_peers to destruct all peer_connections in the network thread. they hang around while waiting for all outstanding disk jobs to complete. make the asio-debugging output a bit prettier
2013-12-05 07:42:32 +00:00
Arvid Norberg
faa53d7657
member re-order and struct packing
2013-12-02 04:24:10 +00:00
Arvid Norberg
fc2fc8dfb2
fix initialization order warnings. pack peer_connection and torrent
2013-11-26 07:47:48 +00:00
Arvid Norberg
fe414878b2
cleanup of ABI breaking configuration options. TORRENT_DEBUG is believed to no longer affect the ABI of libtorrent. introduce a warning in gen_reference_doc.py for when defines are used in public structs. fix build with deprecated functions off
2013-11-17 22:38:37 +00:00
Arvid Norberg
5284de9d80
minor invariant check tweak
2013-11-10 10:49:57 +00:00
Arvid Norberg
c147caca0d
fix ssl issue in web_server.py
2013-11-04 10:06:14 +00:00
Arvid Norberg
90e7a4c9e3
merged some rate limiter polish from libtorrent_aio
2013-11-02 03:26:53 +00:00
Arvid Norberg
cbe3a72a6e
merged i2p fix from RC_0_16
2013-10-27 19:56:37 +00:00
Arvid Norberg
af6dbc5d79
attempted fix for a crash in peer ranking
2013-10-23 06:45:23 +00:00
Arvid Norberg
5ae074994d
revert a bad optimization from peer_connection's invariant check
2013-10-20 07:10:09 +00:00
Arvid Norberg
416d064489
optimize some invariant checks and make test_utp shorted, to complete much faster
2013-10-20 06:03:23 +00:00
Arvid Norberg
6542795d0a
improved support for web seeds that don't support keep-alive
2013-10-20 02:40:43 +00:00
Arvid Norberg
b7ae64fd1f
don't try to fill send buffers after the torrent has started to shut down
2013-10-13 18:50:07 +00:00
Arvid Norberg
2df72d276e
when evicting peers waiting to establish connection, evict the ones that have been trying for the longest first
2013-09-14 21:47:31 +00:00
Arvid Norberg
6a47271667
merge fix for deleting files from libtorrent_aio
2013-08-22 05:27:45 +00:00
Arvid Norberg
1afc0c6740
a bunch of fixes to make test_web_seeds a lot faster, and fail slightly fewer tests
2013-08-19 03:54:45 +00:00
Arvid Norberg
a4d4b362e6
fix bug in duplicate-peer resolution. just take the port into account, not the whole IP, because the different ends may have different ideas of what their IP is
2013-08-15 05:29:05 +00:00
Arvid Norberg
6a1e861a1d
introduce mechanism for plugins to prevent libtorrent to disconnect peers for time-out reasons
2013-08-09 07:55:12 +00:00
Arvid Norberg
f7ec370723
extend peer_plugin to also be notified of disconnects and successful connect events
2013-08-03 23:31:43 +00:00
Arvid Norberg
e1c4101817
improve peer_connect_alert
2013-08-01 00:44:14 +00:00
Arvid Norberg
df97a76c2f
enable request logging in regression testing
2013-07-30 15:59:41 +00:00
Arvid Norberg
2599acf451
merged time critical pieces improvement from RC_0_16
2013-07-27 17:43:34 +00:00
Arvid Norberg
1cb0161f0e
merge fix from RC_0_16
2013-07-26 16:59:10 +00:00
Arvid Norberg
93993002ab
merged unchoke algorithm fix from RC_0_16
2013-06-01 22:33:11 +00:00
Arvid Norberg
fcff3e0e00
merged bootstrap.sh script from RC_0_16
2013-05-29 02:11:15 +00:00
Arvid Norberg
4395437c3b
remove resolve countries build configuration from the public API (make linking easier)
2013-04-09 00:37:53 +00:00
Arvid Norberg
c55bd0d1d4
merged piece request fix from RC_0_16
2013-04-08 02:55:07 +00:00
Arvid Norberg
5aa85c9ca2
merge graceful pause fix from aio
2013-04-07 01:20:09 +00:00
Arvid Norberg
22b1c968a4
back-ported choking issue at high uplod rates
2013-03-26 04:45:38 +00:00
Arvid Norberg
be6afa74f3
optimized rate limiter by allowing peers to request more bandwidth while waiting on the socket
2013-03-24 18:00:58 +00:00
Arvid Norberg
a220b8df0c
merged fix from RC_0_16
2013-03-23 03:01:13 +00:00
Arvid Norberg
a0caa0f4b2
disable invariant_check functions when invariant checks are disabled
2013-02-25 04:13:46 +00:00
Arvid Norberg
d9b37f05cc
merged changes from RC_0_16
2013-01-21 10:18:25 +00:00
Arvid Norberg
f1b8582a95
add gen_todo.py script. include todo.html and mark up some todos in the code with priority
2013-01-20 23:21:53 +00:00
Arvid Norberg
e45124fc22
back-port heavy weight refcount invariant checking from libtorrent_aio (disabled by default). and also backport piece-picker refcounting bug fix
2013-01-06 04:02:29 +00:00
Arvid Norberg
970ddba29b
refactor find_disconnect_candidate_torrent to match libtorrent_aio
2013-01-02 07:39:02 +00:00
Arvid Norberg
aab59d04c7
improve the external IP discovery to work with multiple external IPs (specifically IPv4 and IPv6)
2013-01-01 23:12:16 +00:00
Arvid Norberg
ac5a9e9882
introduce global connection priority for improved swarm performance
2012-12-31 06:54:54 +00:00
Arvid Norberg
35032a6950
merge verbose logging feature from libtorrent_aio
2012-10-06 23:45:36 +00:00
Arvid Norberg
24103c6603
include info-hash in verbose logs filenames
2012-10-06 00:33:10 +00:00
Arvid Norberg
e44225cb57
merged uTP fix from RC_0_16
2012-10-05 03:20:40 +00:00
Arvid Norberg
bff648a89e
update copyright dates and add tool to do so
2012-10-02 03:16:33 +00:00
Arvid Norberg
c56901e864
improve web seed hash failure mode
2012-09-29 17:46:41 +00:00
Arvid Norberg
9a11c44984
metadata extension fix
2012-08-09 22:30:45 +00:00
Arvid Norberg
0657690b1c
attempt at fixing shutdown hang caused by connection_queue
2012-07-15 23:22:23 +00:00
Arvid Norberg
bdada3766a
peer disconnect fix
2012-07-04 16:13:20 +00:00
Arvid Norberg
57769bab11
fix some compiler warnings
2012-06-25 14:17:51 +00:00
Arvid Norberg
dbf6b0a02c
fix bandwidth limiter issue for incoming connections (not associated with a torrent)
2012-06-08 04:28:37 +00:00
Arvid Norberg
d6a53200a2
add a force-flag to cancel_request
2012-06-06 16:05:25 +00:00
Arvid Norberg
5275e75fa5
back-port deletion of the redundant peer_connection constructor from libtorrent_aio
2012-05-14 05:43:45 +00:00
Arvid Norberg
2ca32646b9
fix build
2012-05-13 04:37:31 +00:00
Arvid Norberg
6737374c59
add aserts to make_time_critical()
2012-05-12 21:22:06 +00:00
Arvid Norberg
e74fc839e9
fixed time critical piece accounting in the request queue
2012-05-12 07:14:07 +00:00
Arvid Norberg
94ae0e433b
fixed semantics of rate_limit_utp to also ignore per-torrent limits
2012-05-06 07:09:49 +00:00
Arvid Norberg
86b4c78871
fix unsigned comparison warnings
2012-05-03 01:51:56 +00:00
Arvid Norberg
ada35c021a
improved multiple bitfield and have_all/have_none unit test and fixed peer_connection accordingly
2012-05-02 18:03:12 +00:00
Arvid Norberg
bf3751640a
fix multiple bitfields issue
2012-05-02 01:08:25 +00:00
Arvid Norberg
9a3d77b400
delete duplicate code and fix metadata issue where piece refcounts would be counted up twice
2012-04-30 21:08:43 +00:00
Arvid Norberg
2da535c556
assert peers are not initialized twice
2012-04-30 20:15:11 +00:00
Arvid Norberg
5583ed407a
fix some overflow and division by zero issues
2012-04-28 05:05:39 +00:00
Arvid Norberg
2016251b4f
replace is_seed() with has_picker()
2012-04-27 04:36:12 +00:00
Arvid Norberg
2fc7f2191f
is_seed() is not a good indicator of whether or not we have a piece picker. use has_picker() instead
2012-04-25 19:16:22 +00:00
Arvid Norberg
4ae349f61f
make sure we don't download pieces while the torrent is checking
2012-04-24 18:43:56 +00:00
Arvid Norberg
49f74be42f
make super-seeding a bit more robust
2012-04-23 05:48:46 +00:00
Arvid Norberg
48b85ba586
added more asserts in an attempt to track down invalid policy peer pointers in the piece picker. also fixed a web seed related crash when geoip support is enabled
2012-04-12 05:00:20 +00:00
Arvid Norberg
6acde24799
merged SSL fix from RC_0_16
2012-04-05 04:17:19 +00:00
Arvid Norberg
697fa4911b
add asserts for peers to be destructed in the network thread
2012-03-30 04:29:54 +00:00
Arvid Norberg
289921e276
log hash of data on incoming pieces
2012-03-26 15:24:14 +00:00
Arvid Norberg
6fcc469aef
support banning web seeds that send corrupt data
2012-03-24 01:29:31 +00:00
Arvid Norberg
b58a96d76b
log stats of incoming piece requests
2012-03-09 06:24:01 +00:00
Arvid Norberg
e08718428e
revert mistake
2012-03-09 02:18:46 +00:00
Arvid Norberg
ce3405c0ce
don't prevent sending bytes just because the peer was waiting on the disk
2012-03-09 01:19:30 +00:00
Arvid Norberg
9bd40e950b
add send_buffer_low_watermark in an attempt to improve seed ramp-up time
2012-03-07 02:59:50 +00:00