arvidn
88b7e3768f
add sim test for optimistic unchoke round-robin distribution
2016-02-01 20:28:30 -05:00
arvidn
f2ce2284da
optimize the optimistic unchoke logic. extend the API for extensions to be able to affect the order of optimistic unchokes
2016-02-01 20:28:22 -05:00
Alden Torres
9f3d13281f
Documentation typos
2016-02-01 15:00:46 -05:00
arvidn
e113e8cdf3
minor cleanup of listen sockets
2016-01-31 19:40:31 -05:00
arvidn
505ae508f4
mark up some override functions and fix other clang warnings
2015-12-13 19:44:42 -05:00
arvidn
98c3b75b55
use more efficient (in-place) handler allocation for udp async_read and session second_tick
2015-11-28 00:57:44 -05:00
Steven Siloti
1f13343a70
const correctness
2015-11-22 10:02:26 -08:00
arvidn
fba0762353
fix some msvc warnings
2015-11-19 19:01:54 -05:00
Alden Torres
611d0c1c6e
Fixed to make it compatible with mingw-w64 and generic linux
2015-11-13 07:55:28 -05:00
arvidn
76821f138f
fix gcc attribute order issue
2015-10-18 00:46:01 -04:00
arvidn
08e2bf7835
mark up some more functions with override and silence a few more warnings in boost headers
2015-10-17 10:02:37 -04:00
arvidn
81ee9d5d4e
make appveyor build the python binding installer for windows
2015-10-12 21:09:19 -04:00
Alden Torres
62b24d8b67
Add set_dht_storage to session API.
2015-10-02 09:00:07 -04:00
Alden Torres
197a443465
Fix of dht_storage_counters::peers counter.
2015-09-24 10:50:04 -04:00
arvidn
ee3cb6cf86
move some internal headers to aux_ to fix documentation
2015-09-07 17:00:27 -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
a344c659e5
Revert "use handler allocator for UDP socket read handler"
...
This reverts commit 3ccb4f7dca
.
2015-09-03 07:29:24 -04:00
arvidn
3ccb4f7dca
use handler allocator for UDP socket read handler
2015-09-02 01:15:02 -04:00
arvidn
f719b95f64
fix build issue
2015-08-31 00:54:16 -04:00
arvidn
4536f2c293
fix typo
2015-08-31 00:36:43 -04:00
arvidn
a0c9fafd39
factor out handler_storage and allocating handler helper classes for allocating asio handlers in-place in peer objects
2015-08-31 00:17:42 -04:00
arvidn
0d9d632465
initial support for disabling proxy for tracker connections
2015-08-29 19:44:54 -04:00
arvidn
8cf8e65861
turn linked_list into a template to improve type safety and remove some casts
2015-08-20 02:02:46 +02:00
arvidn
ffa870d280
fixed some GCC warnings
2015-08-20 01:33:20 +02:00
arvidn
347d976a70
since starting the DHT can be delayed now, also cache dht nodes added while waiting
2015-08-18 23:35:27 +02:00
arvidn
cc4368b45a
attempt to postpone DHT until all outstanding dht router name lookups complete
2015-08-18 22:56:00 +02:00
Arvid Norberg
68bc4f2cf4
Merge pull request #12 from mlt/wip/i2p
...
Few i2p fixes
2015-08-13 21:55:27 -04:00
Alden Torres
b303a36ac2
Removed unnecessary full namespace reference to udp::endpoint in new dht_direct_request feature.
...
Add default value to userdata argument in dht_direct_request.
Minor spelling fix.
2015-08-12 00:49:09 -04:00
Steven Siloti
86fd8c3048
enable arbitrary direct dht requests and extension dht requests
...
If you're wondering why I used an alert for handling responses but not requests,
it's because the former was easy to do that way but the latter would have
involved some major refactoring or kludging. The DHT node is written with the
(IMO reasonable) assumption that all responses will be generated immediately, so
there was no way to easily accommodate getting a response asynchronously via
an alert.
2015-08-10 20:33:04 -07:00
Arvid Norberg
27c5a28637
Merge pull request #70 from thomas-yuan/master
...
Call callback function immediately when get data for mutable data.
2015-08-08 21:51:18 -04:00
Thomas
e51b61870a
Call callback function immediately when get mutable data.
2015-08-08 20:28:53 -04:00
arvidn
72286eb0dc
minor asio.ssl abstraction cleanup. update libsimulator with build fix. only run simulator on one of the build variants on travis, since the simulator does not support ssl
2015-08-08 16:19:44 -04:00
arvidn
990aabe36f
fix warnings and no-deprecated functions build
2015-08-01 19:55:36 -04:00
arvidn
52b4aed466
merge bdecode patch from RC_1_0. an empty string now produces an error rather than an empty bdecoded struct
2015-07-30 21:29:22 -04:00
Steven Siloti
e6b3df3696
pass torrent_handle by const ref in the plugin api
2015-07-25 09:57:55 -07:00
Steven Siloti
fbc67b4e21
switch to torrent_handle in plugin api
2015-07-23 19:52:23 -07:00
Mikhail Titov
007a580207
Options to use lowercase base32 encoding without padding
2015-07-14 12:41:12 -05:00
Alden Torres
a856ae6e9b
Added dht_get_peers and dht_announce at session level.
...
Refactored dht_put_item to dht_put_immutable_item in session_impl since the get operations are not overloaded (consistency).
Added allow_threading_guard to add_dht_node python binding.
Making dht_put_item in session returns a zeroed hash if TORRENT_DISABLE_DHT (avoid unnecessary calculation and it's more consistent).
Added missing DHT operations to the python binding.
Added missing allow_threading_guard to add_dht_node in the python binding.
2015-07-12 10:37:16 -04:00
arvidn
c5614b691f
export file_progress class when building unit tests. fix to web_server.py (used for unit tests)
2015-07-07 23:46:33 -04:00
Alden Torres
fcac7140f8
Added dht_get_peers and dht_announce at session_impl level.
2015-07-01 15:30:08 -04:00
arvidn
94d6e06c97
first step in making opening all the listen sockets a bit more reliable
2015-06-29 23:10:09 -04:00
arvidn
e2784df13c
factor out file progress tracking from the torrent class
2015-06-28 22:47:11 -04:00
arvidn
2d1db68ea6
fix diagnostic push/pop issue
2015-06-28 18:44:37 -04:00
arvidn
5cb095f6d2
support using 0 disk threads (to perform disk I/O in network thread)
2015-06-14 16:00:04 -04:00
arvidn
aa6598b2e6
don't return an internal session_settings type from the session, return a settings_pack instead
2015-06-07 00:23:30 -04:00
arvidn
9af8841244
remove some unnecessary asio typedefs in the libtorrent namespace, just pull ip::tcp and ip::udp
2015-06-06 13:49:18 -04:00
arvidn
389ffc622c
don't pull in the asio namespace in libtorrent. refer to it by boost::asio
2015-06-06 01:24:25 -04:00
arvidn
15dd15d0d6
fix no-deprecated build. extend .travis.yml to build the 3 test configurations too. rename README to README.rst
2015-06-05 02:31:52 -04:00
Arvid Norberg
4e1e53f066
turn some more members of session_impl to private
2015-06-03 04:33:20 +00:00
Arvid Norberg
0351326add
separate the main thread and the io_service from session_impl. The io_service object is now simply run() in the main thread, all initialization is done by posting messages to it. This generalizes session_impl to some degree, enables future expansion to run in multiple threads (although, the peers and torrents don't support this). This patch also makes it possible to pass in a third party io_service to the session, but at this point that's mostly useful for tests, as it's not well supported
2015-06-03 03:04:44 +00:00