Miguel Freitas
a4695ba9e1
delay libtorrent initialization until we have valid blocks
11 years ago
Miguel Freitas
80f23d56e8
change "values" to "data" in getData to differentiate from tracker values (which are not authenticated/signed)
11 years ago
Miguel Freitas
5a9613297a
dht storage refresh is spread over time to avoid bursts of putData
11 years ago
Miguel Freitas
624b5f8b49
improved debugging of get/put dht keys
11 years ago
Miguel Freitas
d363d2f788
remove unneeded optimization: m_data_callback is called multiple times (for every reply) so asking ourselves doesn't hurt.
...
this might fix the assertion which is failing on observer destructor.
11 years ago
Miguel Freitas
0150dd2f7b
support to disable loading/refreshing of expired dht keys
11 years ago
Miguel Freitas
a19c4f231f
return false when packet not sent to ourselves
11 years ago
Miguel Freitas
7e1726ba8c
implement expiring dht items (but it is not enabled yet)
11 years ago
Miguel Freitas
e80acded1f
prevent asking our own tracker in dht (untested)
11 years ago
Miguel Freitas
f39df114d1
increase dht flood protection to 1000 packets / 5 sec.
...
which threshold is good remains to be decided, for now i just don't want
an additional source of problems (banning legit peers).
11 years ago
Miguel Freitas
38def2e03c
minor fix to avoid confusion: seq is not k
11 years ago
Miguel Freitas
b4322a61bc
persist dht keys to disk
11 years ago
Miguel Freitas
cb7f080b75
less noisy. disable some dht announce and already connected messages
11 years ago
Miguel Freitas
7a72e63372
fix problem with dhtput > 2kb (for avatar)
11 years ago
Miguel Freitas
d1ec27e01a
dont trust getBestHeight == 0
11 years ago
Miguel Freitas
cbb5a524ce
is_unspecified() is not always available. never mind.
11 years ago
Miguel Freitas
cefb94e321
allow bitfield with different number of pieces
11 years ago
miguel
1bae0176f5
implement refreshing dht storage every hour
11 years ago
miguel
f01cca3d48
logic to refresh dht storage (only single itens). only printf for now.
11 years ago
miguel
f422868103
implement sending message to mention, hashtags, repliesXX and postXX
11 years ago
miguel
4f51727c1b
use bitcoin network time reference, dm creation draft
11 years ago
Miguel Freitas
7af7927f5d
some more debuging to make sure new dht announce x torrent peers is working
11 years ago
Miguel Freitas
662c5fa833
big announce / getPeers change
...
1) getPeers is obsolete, peers are obtained from getData with r="tracker", t="m"
2) announce api of node.cpp is used to update our own memory table (of the tracker)
3) announce api of node.cpp only do getDate/announce to the network if peer is the local one
4) announcement rpc (to the network) might be removed in future (not sure)
11 years ago
Miguel Freitas
6af8185112
remove mutable/imutable stuff
11 years ago
Miguel Freitas
425c355b72
maintain list of multivalued dht items ordered (newer first) by height. discard the last when size exceeds.
11 years ago
Miguel Freitas
07749a22e2
improve getData reply debug message
11 years ago
Miguel Freitas
2aa71205d4
possiblyNeighbor is authoritative for false, so we may trust it to NOT store putData value.
...
someone might be trying to attack this resource by storing value into non-final nodes.
11 years ago
Miguel Freitas
4154a37a14
add support to detect when our node is neighbor of a special resource (eg. torrent tracker)
11 years ago
Miguel Freitas
a35cdef738
dht_reply_data_done_alert to unlock client waiting for data
11 years ago
Miguel Freitas
dea237d2ed
implement dht_get_data_alert to detect when we are neighbor of a certain request
11 years ago
Miguel Freitas
621812c69e
improve parameter checking in dhtput
11 years ago
Miguel Freitas
9c52adbe25
compare contents (v) before adding multi valued key
11 years ago
Miguel Freitas
830a02c009
dht get/put kind of working. with json interface. amazing.
11 years ago
Miguel Freitas
36e2230b58
exporting get/put dht data to upper levels. completely untested.
11 years ago
Miguel Freitas
e46256a2f5
separate getData and putData
11 years ago
Miguel Freitas
ed718aa283
draft of putData api to the dht network
11 years ago
Miguel Freitas
6a1d35a582
adjust dht stored obj size, print dht get results in test_dht
11 years ago
Miguel Freitas
4c92f24620
fixes to dht server and test_dht
11 years ago
Miguel Freitas
0484b9b6d2
implement single put seq increasing verification. untested as well.
11 years ago
Miguel Freitas
8b3368da1f
draft for dht putdata
11 years ago
Miguel Freitas
8b6edd3c79
draft of dht get implementation (untested)
11 years ago
Miguel Freitas
2bd0f7de12
first draft of transversal algo to get data from dht
11 years ago
Miguel Freitas
8f196639ae
just comments
11 years ago
Miguel Freitas
d96f8814d3
undo reordering change that broke compilation
11 years ago
Miguel Freitas
b59f3749a1
enforce ID x external IP verification
11 years ago
Miguel Freitas
a1b44a6bb4
incompatible dht change 3: get_peers, find_node, info_hash => getPeers, findNode, infoHash
11 years ago
Miguel Freitas
7275eb698c
incompatible dht change2: "a" => "x"
11 years ago
Miguel Freitas
5b98b52901
incompatible dht change: "y" => "z"
11 years ago
Miguel Freitas
b8b2302d59
added libtorrent (svn rev 8690)
11 years ago