Arvid Norberg
61138630a3
Merge pull request #245 from arvidn/invalid-request
...
handle receiving an invalid request
2015-11-07 21:19:31 -05:00
arvidn
a48cb785d0
forward port piece_block patch from RC_1_0
2015-11-07 18:50:54 -05:00
arvidn
a138b2daa9
handle receiving an invalid request
2015-11-07 14:58:08 -05:00
arvidn
1fa184ba8a
fix msvc-10.0 build
2015-11-07 10:01:01 -05:00
arvidn
00090b8284
fix typo in test_checking, introduced by recent error_code in torrent_status patch
2015-11-07 01:01:07 -05:00
arvidn
ced0f74bf8
minor moving around of code
2015-11-06 00:38:42 -05:00
arvidn
ebb9fdaf54
add error_code to torrent_status instead of error string
2015-11-05 20:43:23 -05:00
arvidn
ee714306be
forward port IPv6 IP address resolution in URLs fix
2015-11-01 17:26:45 -05:00
arvidn
f5da27ba9e
support large info-sections in torrent_info
2015-10-31 10:53:39 -04:00
arvidn
3462c061a7
merged error handling fix from RC_1_0
2015-10-31 10:06:15 -04:00
Steven Siloti
bd0c237134
simulator: support IPv6 in enum_routes()
2015-10-29 20:43:51 -07:00
arvidn
729a8e9152
update libsimulator. add simulation/test for announcing twice to trackers over IPv4 and IPv6. fix bugs preventing libtorrent from doing that correctly
2015-10-27 00:21:07 -04:00
arvidn
3cc464805f
update libsimulator submodule
2015-10-25 10:55:20 -04:00
arvidn
a75dfe2eb6
silence warnings in boost headers in dht_storage
2015-10-25 09:30:56 -04:00
arvidn
234ac8adeb
update libsimulator submodule with IPv6 support
2015-10-24 15:57:22 -04:00
arvidn
e31433d952
flush and close the partfile when releasing files in default storage
2015-10-24 15:35:42 -04:00
Steven Siloti
4151c8e366
assert that the signature is valid when assigning a mutable value to an item
2015-10-21 20:29:29 -07:00
Arvid Norberg
ea86785d45
Merge pull request #202 from arvidn/stop-when-ready
...
Stop when ready
2015-10-04 16:18:59 -04:00
arvidn
8eded0a2a0
forward port set_allow_peers bugfix
2015-10-04 14:41:58 -04:00
arvidn
51c6079c42
add stop-when-ready feature, to support checking torrents without starting the download afterwards
2015-10-04 13:08:23 -04:00
arvidn
e59d03f684
fix strict aliasing violation
2015-10-03 15:13:45 -04:00
arvidn
3d54c02450
fix build
2015-10-03 11:42:21 -04:00
arvidn
c798e388a9
forward port fix to proxy_peer_connections to master
2015-10-03 11:20:10 -04:00
Arvid Norberg
b785e789b6
Merge pull request #199 from arvidn/parse-magnet-fix
...
fix bug in parse_magnet_uri and improve unit test
2015-10-03 02:09:34 -04:00
arvidn
c1955ecb18
fix bug in parse_magnet_uri and improve unit test
2015-10-02 23:24:17 -04:00
Alden Torres
62b24d8b67
Add set_dht_storage to session API.
2015-10-02 09:00:07 -04:00
Arvid Norberg
c56e878ff4
Merge pull request #194 from arvidn/merge_http
...
forward port merge web seed patch
2015-10-01 01:46:18 -04:00
Arvid Norberg
d7cdcf9369
Merge pull request #183 from thomas-yuan/ta_init
...
start 'find' from near nodes instead of all of nodes in routing table.
2015-09-30 00:43:14 -04:00
arvidn
424e51b737
fix build
2015-09-30 00:41:41 -04:00
arvidn
a00e5aa6c7
forward port patch to have resume data web seeds override .torrent file web seeds, and a flag to merge them
2015-09-30 00:41:41 -04: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
dab0f8b8d0
simplify the queuing logic for checking torrents. make all non-auto-managed torrents always be exempt from any queuing mechanism (including checking). Extend documentation on how it works
2015-09-29 20:49:37 -04:00
arvidn
8b30e78d69
forward port fix for bug where dont_count_slow_torrents could not be disabled, into master
2015-09-25 14:22:38 -07:00
Alden Torres
197a443465
Fix of dht_storage_counters::peers counter.
2015-09-24 10:50:04 -04:00
Thomas Yuan
0d2644802d
start 'find' from near nodes instead of all of nodes in routing table.
2015-09-23 17:04:33 -04:00
Thomas Yuan
f9fa8ffdec
Use ping instead of get_peers if current bucket is full.
2015-09-22 10:35:10 -04:00
Arvid Norberg
50ccce6eed
Merge pull request #174 from arvidn/fallocate-hack
...
remove fallocate hack (in master)
2015-09-22 07:18:07 -07:00
arvidn
5bdb583162
remove fallocate hack (in master)
2015-09-21 20:22:19 -07:00
Thomas Yuan
7fec9e488d
make immutable/mutable items lifetime configurable.
2015-09-21 20:32:37 -04:00
Arvid Norberg
01193fcf7c
Merge pull request #163 from aldenml/dht-storage-counters
...
Create dht_storage_counters to avoid internal counter in future public API
2015-09-21 13:51:39 -07:00
Alden Torres
25ed70b977
Create dht_storage_counters to avoid internal counter in future public API.
2015-09-21 07:46:23 -04:00
arvidn
fb2f659a31
fix bug in time keeping of active_time, seeding_time, finished_time etc.
2015-09-21 00:38:56 -07:00
Arvid Norberg
6bf1971452
Merge pull request #162 from thomas-yuan/bootstrap
...
Only re-bootstrap when there is no enough nodes in routing table.
2015-09-20 14:52:16 -04:00
arvidn
cf15453388
forward port auto-manage fix from RC_1_0
2015-09-19 02:10:50 -04:00
arvidn
2715ae475c
expose whether torrents are announcing to trackers, lsd and dht. these can be disabled by the queuing logic
2015-09-19 01:54:47 -04:00
arvidn
b628692223
separate out announce_entry and torrent_status into their own headers
2015-09-18 08:08:08 -04:00
Arvid Norberg
c54f8445bd
Merge pull request #164 from thomas-yuan/alert_message
...
Fix dht_put_alert::message() for immutable items.
2015-09-17 18:25:17 -04:00
Thomas Yuan
20708fa5b6
Only re-bootstrap when there is no enough nodes in routing table.
2015-09-17 11:22:23 -04:00
arvidn
c9a0212ee0
add simulation of tracker announces
2015-09-16 20:49:10 -04:00
Thomas Yuan
1fac816d37
Fix dht_put_alert::message() for immutable items.
2015-09-16 15:21:05 -04:00
Alden Torres
e2d682275a
Implementing and using new dht storage interface
2015-09-16 08:30:27 -04:00
Arvid Norberg
dc91e7f507
Merge pull request #154 from thomas-yuan/counter
...
Fix dht counters.
2015-09-11 21:45:39 -04:00
Thomas Yuan
c0d20d7708
Fix dht counters.
2015-09-11 13:58:33 -04:00
Arvid Norberg
4fd56fd220
Merge pull request #145 from arvidn/super-seeding-fix2
...
fix super seeding assert (forward port from RC_1_0)
2015-09-10 20:13:14 -04:00
Arvid Norberg
8b6b8240c1
Merge pull request #144 from thomas-yuan/master
...
load_state should restart dht/proxy if there is dht state/proxy.
2015-09-10 00:13:07 -04:00
Arvid Norberg
7114648f33
Merge pull request #146 from arvidn/convert-from-native
...
correctly convert error messages from native to utf8
2015-09-10 00:09:37 -04:00
Thomas Yuan
a06a8fe19e
load_state should restart dht/proxy if there is dht state/proxy.
2015-09-08 21:34:49 -04:00
Arvid Norberg
abe994c191
Merge pull request #128 from thomas-yuan/patch2
...
Add read-only support in dht_settings and outgoing query messages.
2015-09-08 19:47:18 -04:00
arvidn
a10438addd
correctly convert error messages from native to utf8
2015-09-08 19:27:15 -04:00
arvidn
c0a4f7ba26
fix super seeding assert (forward port from RC_1_0)
2015-09-08 18:17:13 -04:00
Thomas Yuan
4d6de4bcd8
save/load all dht_settings.
2015-09-08 11:03:27 -04:00
Thomas Yuan
d6bb387ab9
Use dht_settings directly instead of add a read_only member variable.
...
Since rpc_manager has a reference of dht_settings, needn't pass it
as a parameter for incoming().
2015-09-08 10:35:30 -04:00
arvidn
ee3cb6cf86
move some internal headers to aux_ to fix documentation
2015-09-07 17:00:27 -04:00
Thomas Yuan
3d4ed9f37f
Add read-only support in dht_settings and outgoing query messages.
2015-09-07 14:24:46 -04:00
arvidn
05c580572d
disable simulation on travis osx. fix more warnings
2015-09-06 22:55:42 -04:00
arvidn
a2ea8b32db
fix more warnings
2015-09-06 22:55:41 -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
b45c585a78
use gcc on linux and clang on osx
2015-09-06 22:55:41 -04:00
arvidn
379fd8ce81
fix simulation build
2015-09-06 22:52:25 -04:00
arvidn
9cb4e3d1ca
forward-port supports_ipv6() fix for linux from RC_1_0 (and fix bug in it)
2015-09-06 20:53:06 -04:00
arvidn
cb65694578
fix const correctness in xml_parse(). update unit tests rss and upnp to use new signature for parser callback
2015-09-06 00:38:33 -04:00
arvidn
43ee75ce02
only post listen_succeeded_alert once all sockets have succeeded, since we may re-open previously successful ones if a later one fails
2015-09-05 22:14:04 -04:00
Arvid Norberg
d7c6a3b3ea
Merge pull request #130 from thomas-yuan/invalid_node_id
...
A node with an invalid node_id, shouldn't be added to routing table.
2015-09-05 13:30:40 -04:00
Thomas Yuan
97217a1fd6
A node with an invalid node_id, shouldn't be added to routing table.
2015-09-04 14:04:49 -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
Arvid Norberg
7285520521
Merge pull request #117 from thomas-yuan/master
...
Fix bug caused by RP #96 .
2015-08-31 23:49:08 -04:00
Thomas Yuan
ef16ae4e27
Handle response with unexpected format.
2015-08-31 22:37:46 -04:00
Arvid Norberg
351798648a
Merge pull request #120 from thomas-yuan/patch1
...
reorganize code to make it straightforward.
2015-08-31 20:25:58 -04:00
Thomas Yuan
71b6b3c262
Fix bug caused by RP #96 .
2015-08-31 18:13:47 -04:00
Thomas Yuan
314f134e35
reorganize code to make it straightforward.
2015-08-31 13:53:49 -04:00
arvidn
0e3e3ea793
add simple unit test for creating hard links
2015-08-30 20:14:55 -04:00
arvidn
434be2bd83
add more logging around the test failure
2015-08-30 08:52:58 -04:00
arvidn
0d9d632465
initial support for disabling proxy for tracker connections
2015-08-29 19:44:54 -04:00
arvidn
ba95aa27d6
cleanup unused code
2015-08-29 16:07:19 -04:00
arvidn
0f760d3fb4
expand tracker unit test to assert the session correctly receives the right peers
2015-08-29 16:04:35 -04:00
arvidn
5757b0ad13
polish some behavior when setting piece and file priorities for torrents with no metadata. Fix the initialization order of peers once we do get the metadata
2015-08-29 10:21:15 -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
Alden Torres
88b1063f13
The constant siocgifmtu is used in the context of all these macros.
2015-08-26 17:46:54 -04:00
arvidn
d1768b9c4c
extend settings_pack unit test
2015-08-24 18:48:43 +02:00
arvidn
82a3683f7d
polish removal of web seeds logic
2015-08-23 11:01:55 +02:00
Alden Torres
5be9dfb6db
Removed unnecessary call to node_id copy constructor.
2015-08-22 16:01:53 -04:00
arvidn
e7b8b6da49
forward port DHT routing table fix from RC_1_0
2015-08-22 15:51:28 +02:00
Arvid Norberg
746cd4c1a6
Merge pull request #96 from thomas-yuan/master
...
Parsing message correctly when message type is error.
2015-08-22 10:42:01 +02:00
arvidn
d43af6e3b7
remove functionality to initiate MTU based on the MTU on the nic (this is error prone and has questionable value)
2015-08-22 08:09:09 +02:00
arvidn
a42f9e0c63
fix more warnings
2015-08-22 00:28:12 +02:00
arvidn
42fdd0f896
fix some more warnings
2015-08-21 22:56:57 +02:00
arvidn
4873004df7
warnings as errors
2015-08-21 14:52:07 +02:00
arvidn
d8065b8941
fix some warnings
2015-08-21 14:03:16 +02:00
arvidn
26b721973f
fix typo
2015-08-21 10:43:14 +02:00
arvidn
b7b0dafcca
fix some warnings
2015-08-21 10:05:51 +02:00
arvidn
904da120d7
fixed some warnings
2015-08-20 22:28:00 +02:00
arvidn
fa450b4bf7
attempt to fix invalid vector subscript bug in piece_picker
2015-08-20 21:37:22 +02:00
Arvid Norberg
ef47b5f33f
Merge pull request #105 from aldenml/torrent-alert-constructor
...
Recoded torrent_alert constructor logic to build the name.
2015-08-20 21:36:30 +02:00
arvidn
40a67ecbc8
fix unknown pragma warning on msvc
2015-08-20 21:14:39 +02:00
Alden Torres
203605bd3a
Recoded torrent_alert constructor logic to build the name.
...
Fixed compilation issue in Mac OS X.
2015-08-20 13:57:03 -04:00
Thomas
dbfc2fd5ea
Parsing message correctly when message type is error.
...
Also, an error response should call reply() of observer, instead of timeout().
Reference: http://www.libtorrent.org/dht_store.html#errors
2015-08-19 22:20:48 -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
bd177a857f
make tailequeue a template, introduce type safety, remove old-style casts
2015-08-19 15:22:05 +02:00
arvidn
a3608a39fe
fix some warnings
2015-08-19 02:00:46 +02:00
Arvid Norberg
6bcac425f1
Merge pull request #95 from arvidn/postpone_dht_start
...
DHT router name lookups
2015-08-19 01:44:26 +02:00
arvidn
8bc4bf1e1a
remove incorrect check for m_dht
2015-08-19 01:43:44 +02:00
arvidn
5c8fc818c1
fix more warnings
2015-08-19 01:39:01 +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
arvidn
a3c4a0a3e6
attempt to fix msvc build
2015-08-18 21:40:22 +02:00
arvidn
26fecaf037
fix more warnings
2015-08-18 16:42:03 +02:00
arvidn
12da02ae52
fix some warnings
2015-08-18 09:33:00 -04:00
arvidn
8d8c049d9e
fix warnings and invalid defines in disk_io_thread.cpp
2015-08-18 07:55:50 -04: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
eecdd3121d
fix some build warnings
2015-08-17 09:01:43 -04:00
arvidn
b1a3a36eae
remove some old leftover code from upnp
2015-08-16 12:21:39 -04:00
arvidn
9a0092c120
fix some warnings
2015-08-16 12:17:23 -04:00
arvidn
16bb2de6ed
fix some warnings
2015-08-13 23:52:25 -04:00
arvidn
225b82d9a0
move test_trackers_extensions over to a simulation and some minor metadata extension and tracker re-announce fixes
2015-08-13 23:07:04 -04:00
arvidn
2c89fa40e2
fix up i2p merge
2015-08-13 22:22:20 -04: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
12fb68e8e3
Refactor of utp stream logging functions.
...
Renamed utp-stats option to utp-log.
2015-08-13 18:43:58 -04:00
Alden Torres
02afc8b640
Added utp-stats bjam option to enable utp stream log (utp.log file).
2015-08-13 18:43:58 -04:00
arvidn
213958f98d
uTP timeout fix. introduced when fixing the recent vulnerability
2015-08-12 23:05:33 -04:00
arvidn
d2819cd1b9
fix uninitialized variable in test_pe_crypto simulation
2015-08-12 20:18:47 -04:00
arvidn
243b31b56b
trouble shoot segfault on travis
2015-08-12 18:54:57 -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
1b4b1c4403
fix error handling for DHT direct requests
2015-08-10 20:33:05 -07:00
Steven Siloti
8e00172af7
return a bdecode_node rather than taking one by reference
2015-08-10 20:33:04 -07:00
Steven Siloti
1ff48aef60
add comment
2015-08-10 20:33:04 -07:00
Steven Siloti
3564562dab
pass raw buffer in dht_direct_response_alert
2015-08-10 20:33:04 -07:00
Steven Siloti
182c30f2d6
fix typo in class name
2015-08-10 20:33:04 -07: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
arvidn
a81ca2391b
fix some warnings
2015-08-10 20:03:24 -04:00
arvidn
4fa0aa62da
simulate IP routes, interfaces and page size when building in simulation mode
2015-08-09 15:01:01 -04:00
arvidn
6068418def
fix and re-enable simulations
2015-08-09 00:56:37 -04:00
arvidn
1c1698459c
fix warnings
2015-08-08 22:53:11 -04: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
50925d7652
fix some more warnings
2015-08-08 02:48:01 -04:00
arvidn
46803b75f8
support building libtorrent in simulation mode (using libsimulator, which is a git submodule)
2015-08-07 21:31:59 -04:00
arvidn
1cbd9a9d5e
make ssthresh set less aggressive in uTP
2015-08-07 21:31:59 -04:00
Arvid Norberg
e3c9e75452
Merge pull request #72 from aldenml/peer-connection-null-error
...
Avoid a possible null pointer error when logging in on_connection_complete
2015-08-07 00:54:39 -04:00
arvidn
97571b4ad4
fixed more warnings
2015-08-07 00:30:29 -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
a91e7ce25d
fix warnings
2015-08-06 02:30:06 -04:00
arvidn
788e41c3bb
merged udp socket fallback fix from RC_1_0
2015-08-05 22:22:57 -04:00
arvidn
fb34607313
fix crash when loading a resume file where all files have priority 0 (and the torrent finishes before having downloaded anything) and add unit test for this case
2015-08-05 20:13:58 -04:00
Alden Torres
eef9f16b3b
Removed unused flag bandwidth-limit-logging and related code.
2015-08-04 01:47:15 -04:00
Alden Torres
94c59354fa
Removed minimal optimization inside silly_hash to avoid another include.
2015-08-03 23:01:46 -04:00
Alden Torres
5866bb7974
Indentation.
2015-08-03 18:16:43 -04:00
Alden Torres
a1a8e1fc48
Avoid performance penalty if disk write access log is not enable.
2015-08-03 18:16:43 -04:00
Alden Torres
cd8a4d2511
Moved TORRENT_DISK_STATS to default_storage with the option of enable/disable at runtime.
2015-08-03 18:16:43 -04:00
arvidn
e0c3d28321
fix some warnings
2015-08-02 15:55:05 -04:00
arvidn
bb64887f30
merge total wanted fix from RC_1_0
2015-08-02 15:18:21 -04:00
arvidn
7080b8bac8
fixed build
2015-08-02 02:16:21 -04:00
arvidn
655a3ae019
fix some warnings
2015-08-01 23:57:11 -04:00
arvidn
990aabe36f
fix warnings and no-deprecated functions build
2015-08-01 19:55:36 -04:00
arvidn
f86283ac30
allow clearing the notify function in alert manager
2015-07-30 21:34:55 -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
arvidn
3dda8f97d6
merge include fix from RC_1_0
2015-07-30 20:23:35 -04:00
arvidn
4d89c7da97
fixed uTP vulnerability
2015-07-29 22:25:59 -04:00
Alden Torres
57f14808d8
Restore the option to compile with target Windows XP.
2015-07-29 14:56:31 -04:00
arvidn
5657772114
limit how often the DHT can wake up
2015-07-28 23:04:15 -04:00
arvidn
7f695f05d5
use boost.asio as headers only library again (simplify builds and hopefully fix shared linking of python module on gcc linux)
2015-07-27 23:09:24 -07:00
arvidn
29c618c3e5
merge bittorrent-slow start fix from RC_1_0
2015-07-27 16:53:25 -07:00
arvidn
f34f09ca58
merge more lenient utf8 conversion from RC_1_0
2015-07-27 08:59:38 -07:00
arvidn
105c105867
merge seed mode test and fixes from RC_1_0
2015-07-27 00:01:19 -07:00
Arvid Norberg
742548b69c
Merge pull request #49 from ssiloti/plugin-exported-api
...
Only use exported types in the plugin api
2015-07-25 15:53:22 -07:00
Steven Siloti
e6b3df3696
pass torrent_handle by const ref in the plugin api
2015-07-25 09:57:55 -07:00
Steven Siloti
72dcc20073
pass peer_connection_handle by const ref in the plugin api
2015-07-25 09:15:24 -07:00
Steven Siloti
423a18ecb1
add missing include
2015-07-25 08:58:32 -07:00
arvidn
40c7596da9
merge loading of piece priorities from resume data fix from RC_1_0
2015-07-24 22:34:53 -07:00
Steven Siloti
e0e06bc87a
switch to peer_connection_handle for optimistic unchoking
...
This is necessary to enable external plugins since the vector is passed to
plugins via on_optimistic_unchoke.
2015-07-23 20:48:35 -07:00
Steven Siloti
2c1f24c036
switch to session_handle in plugin api
2015-07-23 20:13:32 -07:00
Steven Siloti
fbc67b4e21
switch to torrent_handle in plugin api
2015-07-23 19:52:23 -07:00
arvidn
bb705e9a52
improved seed-mode handling (seed-mode will now automatically be left when performing operations implying it's not a seed). fixed issue with file priorities and override resume data
2015-07-21 10:12:37 -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
51dd174303
fix performance issue when receiving UDP packets (the udp tracker would not reject DHT packets immediately)
2015-07-17 18:48:20 -04:00
arvidn
f85d62b601
merged DHT update of /8 blocks form RC_1_0
2015-07-16 21:56:06 -04:00
arvidn
7a3cabfe12
fixed some resume issues, specifically around file priorities and override resume data
2015-07-16 21:56:06 -04:00
arvidn
a65b71b855
improve logging of adding peers and the state of torrents. the default flags for the external connect_peer() call now assumes encryption, uTP and holepunch support
2015-07-16 21:53:31 -04:00
Arvid Norberg
3340bbbfb4
Merge pull request #32 from ssiloti/peer_connection_handle
...
peer_connection_handle
2015-07-14 22:51:34 -04:00
Jakob Petsovits
08a6ba4161
Avoid a warning if BOOST_ASIO_DECL was defined but empty.
2015-07-14 21:08:57 -04:00
Jakob Petsovits
4853d0250f
Avoid a warning if _BSD_SOURCE is already defined.
...
As _BSD_SOURCE has been deprecated since glibc 2.20, also add
_DEFAULT_SOURCE to the definitions. Both can be any value as long
as they're defined, so in order to save two lines, just #undef
them instead of checking with #ifdef/#endif.
2015-07-14 21:07:05 -04:00
Jakob Petsovits
27fe9822ad
m_num_peers is a regular int, not long: print %d instead of %ld.
2015-07-14 17:49:12 -04:00
Mikhail Titov
2751d90368
Don't store 0.0.0.0 for i2p peers in resume data
2015-07-14 14:13:17 -05:00
Mikhail Titov
9c489e2291
Don't include yourip (0.0.0.0) in i2p handshake
2015-07-14 14:13:16 -05:00
Mikhail Titov
70a99e6f62
Don't attempt to resolve base64 destination for i2p tracker
2015-07-14 14:13:15 -05:00
Mikhail Titov
020f0816df
fixup! Don't break SAM connection if error occurs
...
Propagate i2p result code, related to #3
2015-07-14 14:13:14 -05:00
Mikhail Titov
3f2e660fcf
Wait for i2p acceptor before announcing
...
This somewhat closes #1 in an ugly way
2015-07-14 14:13:13 -05:00
Mikhail Titov
fda379729c
There is no need to escape self i2p ip in Base 64
2015-07-14 14:13:12 -05:00
Mikhail Titov
df21a7e8ce
Use scrape & i2p bitset flags for request
2015-07-14 14:13:10 -05:00
Mikhail Titov
5d3938b39b
Parse compact response from I2P tracker
...
This fixes #2
2015-07-14 14:13:09 -05:00
Mikhail Titov
007a580207
Options to use lowercase base32 encoding without padding
2015-07-14 12:41:12 -05:00
Steven Siloti
d911ed456a
stub out disabled functions rather than removing them
2015-07-12 20:17:45 -07:00
Steven Siloti
825fd22c1e
cut down on the size of the peer_connection_handle interface
2015-07-12 16:31:29 -07:00
Steven Siloti
9bf1d6c5e9
peer_connection_handle
2015-07-12 14:40:03 -07:00
Alden Torres
761486ce43
Using PRId64 macro for portability.
2015-07-12 13:05:29 -04:00
Alden Torres
89f3b3bee3
Using the standard log method for round trip time in rcp_manager.
2015-07-12 12:59:38 -04:00
Alden Torres
73e5f795cb
Merge with master.
2015-07-12 10:37:16 -04: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
42638c3540
don't ignore errors from setup_listener()
2015-07-11 23:16:37 -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
ed8e4135b2
move include statement to correct place
2015-07-11 22:04:04 -04:00
arvidn
2ab445135a
only retry binding the socket to a new port if the last attempt failed with address-in-use. On other errors, give up immediately
2015-07-11 18:49:53 -04:00
Steven Siloti
1d55bcba72
make session inherit from session_handle and remove wrapper functions
2015-07-11 11:17:28 -07:00
Steven Siloti
b072b0ca5f
create session_handle
...
The session_handle class exposes the same public interface to session_impl as
the session class. The difference being that session_handle does not own the
underlying session_impl so multiple session_handle instances can be created
and copied about as needed.
The intent is to chenge the plugin API to pass an instance of session_handle
instead of a pointer to session_impl. This change will be made in a separate
patch.
To maintain ABI compatibilty, the type signature of session was not changed.
The relevent functions have been modified to forward to session_handle and
all enums have been left in session.
2015-07-11 11:17:28 -07:00
arvidn
2b05b1c85c
fix cppcheck warnings
2015-07-11 10:36:13 -04:00
Chocobo1
b5486fb6ce
Add parentheses
2015-07-11 15:23:55 +08:00
Arvid Norberg
bbe51268d3
Merge pull request #23 from Chocobo1/igd_version
...
Add support for IGD version 2
2015-07-10 19:20:51 -04:00
Chocobo1
f92df7f782
Add support for IGD version 2
2015-07-09 20:11:23 +08:00
Arvid Norberg
b472299524
Merge pull request #21 from john-peterson/build2
...
hike required windows version to vista
2015-07-07 22:39:08 -04:00
John Sebastian Peterson
5a2dc432b1
remove windows version from code file
...
because it should be in the build files
2015-07-07 07:50:28 +02:00
Arvid Norberg
d756969e90
Merge pull request #20 from john-peterson/rt3
...
fix hide cx keyword from winrt
2015-07-06 17:44:35 -04:00
arvidn
1c708cca28
fix build
2015-07-05 21:41:53 -04:00
John Sebastian Peterson
9a5e3465d2
fix hide cx keyword from winrt
...
forgot to hide it in the source file
2015-07-06 03:11:41 +02:00
arvidn
78399f7968
shave off some includes in torrent.cpp
2015-07-05 19:32: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
arvidn
3b3a23a87a
whitespace
2015-07-05 18:33:47 -04:00
Arvid Norberg
41eff1801e
Merge pull request #13 from aldenml/more-dht-api
...
Added dht_get_peers and dht_announce at session_impl level.
2015-07-04 10:08:14 -04:00
John Sebastian Peterson
bb25acd661
use a better windows.foundation.collections.h(462) conflict fix
2015-07-04 05:59:38 +02:00
Alden Torres
e7ee3590fa
Simplified dht_get_peers_reply_alert memory handling to work with only one allocation and return all peers at once.
2015-07-03 22:59:44 -04:00
Alden Torres
acc130833a
Better handling of memory layout and use of detail io functions (thanks to @arvidn comments).
2015-07-02 21:35:59 -04:00
John Sebastian Peterson
e7caa2d20f
fix winrt compile error in windows.foundation.collections.h(428)
2015-07-02 09:58:17 +02:00
John Sebastian Peterson
2bbb238b4b
use getfileattributes successor to support winrt
2015-07-02 09:55:34 +02:00
John Sebastian Peterson
cc8a77b363
use createsemaphore and waitforsingleobject successor to support winrt
2015-07-02 09:55:33 +02:00
Alden Torres
c89f89511b
Forgot to add the very important alloc offset.
2015-07-01 15:30:09 -04:00
Alden Torres
f772675d95
Removed uTP implied port logic from dht_announce.
2015-07-01 15:30:09 -04:00
Alden Torres
d9246d12c4
Re-implemented dht_get_peers_reply_alert using the stack_allocator for peers vector storage.
2015-07-01 15:30:09 -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
d1670c72c2
removed sparse-regions support
2015-06-29 20:40:32 -04:00
arvidn
d887f5719d
it's called peer_list now
2015-06-29 19:56:39 -04:00
arvidn
e2784df13c
factor out file progress tracking from the torrent class
2015-06-28 22:47:11 -04:00
arvidn
a754559ac6
improve logging aroud binding listen sockets
2015-06-28 09:13:59 -04:00
arvidn
c3347de3bf
attempted fix for cpu_id issues on ubuntu
2015-06-26 23:23:08 -04:00
Arvid Norberg
8dbef2d32a
Merge pull request #11 from aldenml/announce-get_peers-refactor
...
Refactor to expose a more convenient get_peers function as part of the DHT api.
2015-06-25 00:33:15 -04:00
Alden Torres
5c8c9cd653
Refactor to expose a more convenient get_peers function as part of the DHT api.
...
Now announce (a particular case of get_peers DHT operation) uses the function get_peers.
2015-06-24 21:22:24 -04:00
Mikhail Titov
77ca1ac16f
Quadruple handshake timeout for i2p
2015-06-24 19:40:17 -05:00