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
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
ffa870d280
fixed some GCC warnings
2015-08-20 01:33:20 +02:00
arvidn
a3608a39fe
fix some warnings
2015-08-19 02:00:46 +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
8d8c049d9e
fix warnings and invalid defines in disk_io_thread.cpp
2015-08-18 07:55:50 -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
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
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
97571b4ad4
fixed more warnings
2015-08-07 00:30:29 -04:00
arvidn
a91e7ce25d
fix warnings
2015-08-06 02:30:06 -04:00
arvidn
655a3ae019
fix some warnings
2015-08-01 23:57:11 -04:00
arvidn
5657772114
limit how often the DHT can wake up
2015-07-28 23:04:15 -04:00
arvidn
f85d62b601
merged DHT update of /8 blocks form RC_1_0
2015-07-16 21:56:06 -04: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
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
John Sebastian Peterson
e7caa2d20f
fix winrt compile error in windows.foundation.collections.h(428)
2015-07-02 09:58:17 +02:00
Alden Torres
fcac7140f8
Added dht_get_peers and dht_announce at session_impl level.
2015-07-01 15:30:08 -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
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
Arvid Norberg
d43f7b56a2
update copyright year
2015-06-03 05:18:48 +00:00
Arvid Norberg
0aca01543b
simplify dht logging
2015-05-30 06:31:03 +00:00
Arvid Norberg
945eef4c4d
some dht_tracker clean up
2015-05-30 04:37:12 +00:00
Arvid Norberg
e44c8e9002
optimize logging of DHT packets by deferring copying and printing, to only do it if the alert category is enabled
2015-05-28 20:36:22 +00:00
Arvid Norberg
0052fa6c19
some cleanup to dht observers (don't expose internals)
2015-05-22 02:42:26 +00:00
Arvid Norberg
d18495eb39
support a NULL dht_observer again
2015-05-19 00:48:04 +00:00
Arvid Norberg
e7d369646d
fix gcc warnings
2015-05-18 01:30:32 +00:00
Arvid Norberg
71ee44ae5e
fix build issue, some warnings
2015-05-17 23:32:13 +00:00
Arvid Norberg
88fe6eba9c
fix issues introduced in dht logging patch
2015-05-17 20:59:18 +00:00
Arvid Norberg
99de70604a
remove dht-verbose logging build configuration. tie it to the main logging configuration (which now is on by default) and make it less costly when dht logging alerts are disabled
2015-05-16 19:29:49 +00:00
Arvid Norberg
494b425ea1
fix warnings and a peer logging bug
2015-05-10 18:38:10 +00:00
Arvid Norberg
242dad0743
fix dht build
2015-05-10 18:24:09 +00:00
Arvid Norberg
2819d5f68e
remove the remains of the dht logging
2015-05-10 05:28:50 +00:00
Arvid Norberg
b60934288b
turn DHT logging into alerts instead of writing to a file
2015-05-10 04:54:02 +00:00
Arvid Norberg
ca581f2258
rename dht::node_impl -> dht::node, since this hasn't been a pimpl for quite a while
2015-05-09 19:00:22 +00:00
Arvid Norberg
6557910c7f
remove the DHT's last dependency on session_impl
2015-05-09 18:06:02 +00:00
Arvid Norberg
ddfef97696
don't use iostream in dht routing table debug logging
2015-05-08 05:21:26 +00:00
Arvid Norberg
4b585dcc0e
minor cleanup and fix no-deprecated build
2015-05-06 01:11:54 +00:00
Arvid Norberg
2fff222235
silence some warnings on msvc
2015-04-27 02:21:12 +00:00
Arvid Norberg
f97168241f
build fix
2015-04-27 00:56:58 +00:00
Arvid Norberg
a15bc13392
build fixes
2015-04-26 13:38:56 +00:00
Arvid Norberg
93a19b44c0
fix another format string issue and add comments to kademlia
2015-04-26 06:25:08 +00:00
Arvid Norberg
f0336017d1
fix gcc warnings and missing header files in makefiles
2015-04-26 00:51:44 +00:00
Arvid Norberg
31a87c26f0
move another unused time function into the one place it was used from (which will be removed)
2015-04-24 04:08:08 +00:00
Arvid Norberg
3ea67e2bf5
move time_now_string out to the unit test library (basically unused in libtorrent itself)
2015-04-24 03:48:08 +00:00
Arvid Norberg
87c46a144d
fix more warnings and some build issues
2015-04-22 04:24:45 +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
408232cfc8
raise warning level. fix a few of them. filter out warnings from boost
2015-04-18 02:33:39 +00:00
Arvid Norberg
013ed36f09
landed alert_queue feature branch into trunk
2015-04-03 20:15:48 +00:00
Arvid Norberg
a516bf46e5
merged changes from RC_1_0
2015-03-22 04:34:11 +00:00
Arvid Norberg
3f21a846f6
fix build without deprecated function. extend test_coverage script. comment out DHT sanity check assert that fires in the wild
2015-03-21 00:50:28 +00:00
Arvid Norberg
1b07ec491d
fix build issue out of recent changes of exported functions
2015-03-16 04:38:28 +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
37225b71ae
const static -> static const (thanks gubatron). helps swigs parser
2015-03-14 00:42:27 +00:00
Arvid Norberg
65a9d76938
fix dht logging build
2015-03-13 05:53:22 +00:00
Arvid Norberg
6c1df7eb55
landed the bdecode branch in master. lazy_bdecode/lazy_entry is now being replaced by bdecode/bdecode_node
2015-03-12 05:20:12 +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
678d4f3a82
fix warning
2015-01-26 03:09:32 +00:00
Arvid Norberg
609b5eb4ba
fix dht logging build
2015-01-18 15:03:18 +00:00
Arvid Norberg
8614ed795a
attempt to fix build
2015-01-18 04:40:01 +00:00
Arvid Norberg
0afea4bb3e
move some DHT verbose stats logging over to performance counters
2015-01-18 01:06:36 +00:00
Arvid Norberg
22a02f4a1f
make dht_tracker be held by shared_ptr instead of intrusive_ptr. remove redundant performance counter (total dht sent/received). report DHT IP overhead to the IP overhead counters
2015-01-17 22:06:30 +00:00
Arvid Norberg
58d93e5aa1
add new (non-deprecated) access to dht stats, asynchronously via an alert
2015-01-17 17:02:58 +00:00
Arvid Norberg
a462f58372
use hardware optimized CRC32C function in DHT
2015-01-05 13:50:42 +00:00
Arvid Norberg
35b41858cf
deprecated session_status and session::status() in favor of performance counters
2015-01-04 21:31:02 +00:00
Arvid Norberg
55e51ab57c
merged changes from RC_1_0
2015-01-04 21:18:00 +00:00
Arvid Norberg
dbf461ac23
make DHT dos mitigation parameters configurable via dht_settings
2015-01-01 23:24:21 +00:00
Arvid Norberg
1039d4ae86
tweak some TODO comments and fix one
2014-12-31 14:41:35 +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
1ed1963f29
remove size_type typedef in favor of boost::int64_t
2014-12-03 04:32:50 +00:00
Arvid Norberg
edade10561
merged fix from RC_1_0
2014-11-26 03:58:55 +00:00
Arvid Norberg
8ec7cff993
merged changes from RC_1_0
2014-11-26 02:02:32 +00:00
Arvid Norberg
179df62379
merged changes from RC_1_0
2014-11-20 05:53:12 +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
3742fd2699
merged changes from RC_1_0
2014-11-02 09:41:29 +00:00
Arvid Norberg
34af25beaa
merged chagnes from RC_1_0
2014-11-01 22:47:56 +00:00
Arvid Norberg
a91848962a
merge changes from RC_1_0
2014-10-12 04:18:34 +00:00
Arvid Norberg
b55778a847
some DHT logging and parsing
2014-10-07 07:23:20 +00:00
Arvid Norberg
3c7a932aee
update comments
2014-10-04 20:06:46 +00:00
Arvid Norberg
7830081585
merged changes from RC_1_0
2014-10-01 18:19:44 +00:00
Arvid Norberg
0ed0bdc50c
remove pointless DHT extension (for IPv6)
2014-10-01 16:21:29 +00:00
Arvid Norberg
ba3ffe52f8
improve DHT logging a bit
2014-10-01 09:14:49 +00:00
Arvid Norberg
8cbef3876a
post alert on outgoing get_peers
2014-09-22 19:49:32 +00:00
Arvid Norberg
645d3cdb32
merge fixes from RC_1_0
2014-09-20 19:27:29 +00:00
Arvid Norberg
44021c99e1
add todo comment
2014-08-28 08:06:11 +00:00
Arvid Norberg
98c4c9327b
merged change from RC_1_0
2014-08-28 02:06:21 +00:00
Arvid Norberg
48ea42c990
merged changes from RC_1_0
2014-08-27 05:57:37 +00:00
Arvid Norberg
51f2aafb43
clean up some time_t and srand() uses
2014-08-16 20:55:44 +00:00
Arvid Norberg
524384045c
transition to use boost.random instead of rand() and custom pseudo random generator
2014-08-16 20:26:00 +00:00
Arvid Norberg
3f88389f05
merged changes from RC_1_0
2014-08-16 07:46:06 +00:00
Arvid Norberg
1e48745173
another boost chrono fix
2014-07-25 16:51:13 +00:00
Arvid Norberg
b78fdc630d
fix another integer overflow issue from switching to chrono
2014-07-25 08:43:52 +00:00
Arvid Norberg
f15182a737
merged changes from RC_1_0
2014-07-19 07:12:20 +00:00
Arvid Norberg
24b9101075
merged changes from RC_1_0
2014-07-12 06:20:16 +00:00
Arvid Norberg
9d172a8723
fixed chrono issue in dht
2014-07-08 15:36:47 +00:00
Arvid Norberg
c90285df8a
restore DHT semantics to fix dht unit test
2014-07-07 00:09:05 +00:00
Arvid Norberg
7351389ce8
land libtorrent_aio branch in trunk
2014-07-06 19:18:00 +00:00
Arvid Norberg
6ef1b98717
merged compiler warning fixes from RC_1_0
2014-07-05 14:10:25 +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
36e8945968
more build fixes
2014-06-29 19:11:15 +00:00
Arvid Norberg
3893a55a57
fix to the fix
2014-05-25 05:28:15 +00:00
Arvid Norberg
96f25d6942
attempt to fix linux build
2014-05-25 05:10:30 +00:00
Arvid Norberg
64c09e7607
support for older boost versions
2014-05-25 00:13:17 +00:00
Arvid Norberg
5b89c3f5f9
merged some of steven siloti's changes. expose optimistic unchoke logic to plugins
2014-05-12 07:28:34 +00:00
Arvid Norberg
e225259481
fix some msvc warnings
2014-05-10 03:23:05 +00:00
Arvid Norberg
555efd9279
factor out address/endpoint I/O into it's own unit test. merge write_string from bencode and socket_io. extend unit test
2014-05-04 06:46:47 +00:00
Arvid Norberg
ab96600ae3
fix dht assert
2014-04-29 21:31:25 +00:00
Arvid Norberg
c6b68ab683
fix warning
2014-03-23 01:41:00 +00:00
Arvid Norberg
0e04ab8d72
reorder the node-list in the DHT traversal algorithm if a node updates its ID
2014-03-03 05:09:53 +00:00
Arvid Norberg
8403e58f3c
make dht test program able to get and put mutable items. fixed some DHT bugs along the mutable put/get path
2014-03-02 23:35:35 +00:00
Arvid Norberg
86c704a6ff
fix dht_bootstrap_alert being posted. add additional alert for dht put completion. add utility to test immutable put/get. fix issue in DHT preventing stores on router nodes (even when they return write tokens). immutable put and get confirmed to be working
2014-02-28 04:02:48 +00:00
Arvid Norberg
1188ec2dcd
expose new DHT put/get functionality in the public session API
2014-02-24 00:31:13 +00:00
Arvid Norberg
a943fec777
update copyright
2014-02-23 19:12:25 +00:00
Arvid Norberg
715b60c8ff
attempted windows build fix
2014-02-17 07:24:43 +00:00
Arvid Norberg
6c22d426d4
make all unit tests pass msvc's /RTCc instrumentation (no implicit integer truncation in casts)
2014-02-05 09:38:32 +00:00
Arvid Norberg
6bda2f7430
change peer priority to use crc32c instead of sha1
2014-01-23 02:28:04 +00:00
Arvid Norberg
e0644ce8f5
invariant check macro fixes
2014-01-21 19:26:09 +00:00
Arvid Norberg
fec7407461
send implied_port in dht announce messages when uTP is enabled
2014-01-20 06:35:06 +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
a5b5cf0f62
ignore unused parts of the internet on the DHT by default
2014-01-19 07:44:16 +00:00
Arvid Norberg
bec02dd953
fix valgrind build
2014-01-19 04:13:46 +00:00
Arvid Norberg
4a7543bdb8
remove a DHT observer right away when the response has an invalid node ID
2014-01-17 05:16:37 +00:00
Arvid Norberg
b621f3f00a
merged DHT fix from RC_0_16
2014-01-17 04:49:04 +00:00
Arvid Norberg
86b68e65e4
merged dht node ID change from RC_0_16
2014-01-11 08:08:43 +00:00
Arvid Norberg
89d5582560
merged dht fix from RC_0_16
2014-01-07 08:52:53 +00:00
Arvid Norberg
ae7bb20170
update node ID generation algorithm from RC_0_16
2014-01-06 05:46:46 +00:00
Arvid Norberg
db6a22d5c1
handle DHT error responses correctly
2014-01-03 08:02:53 +00:00
Arvid Norberg
54bbd3cae0
support salt feature in DHT put
2014-01-03 04:18:46 +00:00
Arvid Norberg
260e97c4e0
document salt feature in put and get DHT extensions. include a test vector and add that to the unit test. (salt is not implemented)
2013-12-31 08:37:42 +00:00
Arvid Norberg
d6b1aa4c36
DHT refactoring and support for storing arbitrary data with put
2013-12-27 04:28:25 +00:00
Arvid Norberg
4e6b1cfbfb
update copyright
2013-12-25 17:07:16 +00:00
Arvid Norberg
11a584991b
fix bug in dht logging build
2013-12-21 09:22:10 +00:00
Arvid Norberg
70735a0a67
minor ifdef tweaks and DHT logging
2013-12-21 07:18:49 +00:00
Arvid Norberg
5d822706e1
add invariant check to dht routing_table
2013-12-20 04:54:52 +00:00
Arvid Norberg
ce99fd47f2
enable all DHT logging (when building with dht logging enabled)
2013-12-20 04:54:27 +00:00
Arvid Norberg
412842365a
add backwards compatible reading of IP field in DHT messages
2013-12-20 04:47:41 +00:00
Arvid Norberg
93d7d89ced
fix issue with obfuscated_get_peers where peers in responses to obfuscated requests would still be returned. slight refactoring to move traversal algorithm level logic to traversal_observer class
2013-12-14 23:25:38 +00:00
Arvid Norberg
f11959b235
fix initialization order warnings
2013-11-28 08:48:17 +00:00