Adrien Béraud
c70d5d7b97
dht: don't send nodes in storageChanged
2016-05-27 02:13:08 -04:00
Adrien Béraud
d0cebaa002
dht: clear listen status in cancelListen
2016-05-27 01:56:13 -04:00
Adrien Béraud
172b1089fb
dht: search log improvements
2016-05-24 03:44:18 -04:00
Adrien Béraud
6cdc242b6e
node: add pendingMesageCount
2016-05-24 03:44:18 -04:00
Adrien Béraud
8da15ad450
dht: adapt search routine to network engine
2016-05-22 16:56:47 -04:00
Adrien Béraud
5f1b79e6de
dht: minor refactoring/optimisations
2016-05-22 16:56:47 -04:00
Adrien Béraud
0e7dda680a
header cleanup
2016-05-22 16:56:47 -04:00
Adrien Béraud
855b69710d
dht: run searchStep imediatly on announce
2016-05-19 17:37:39 -04:00
Adrien Béraud
d93657d6f9
dht: wait for both AF to call callback
2016-05-19 17:37:39 -04:00
Adrien Béraud
2b57c8109a
dht: clear announces on expire
2016-05-19 17:29:19 -04:00
Adrien Béraud
a032f50a27
dht: catch all network engine errors
2016-05-19 17:28:31 -04:00
Adrien Béraud
8ee0d83ad7
dht: log cleanup
2016-05-19 17:28:31 -04:00
Adrien Béraud
f46043069d
revert: dht: limit search nodes to SEARCH_NODES nodes
2016-05-19 01:55:18 -04:00
Adrien Béraud
9d7f6d287a
dht: clear candidate on expire
2016-05-18 02:19:06 -04:00
Adrien Béraud
17d57ba04a
dht: remove anoying log
2016-05-18 01:23:47 -04:00
Adrien Béraud
9ad21d5c5d
dht: remove newSearch()
2016-05-18 01:23:18 -04:00
Adrien Béraud
db6c301084
dht: don't count bad nodes in get request count
2016-05-15 01:28:09 -04:00
Adrien Béraud
9b14fc8bb8
dht: use method to count requests
2016-05-14 23:16:23 -04:00
Adrien Béraud
f6b9340313
dht: avoid to discard storage with local listener
2016-05-14 23:16:23 -04:00
Adrien Béraud
79d90e480d
dht: limit search nodes to SEARCH_NODES nodes
2016-05-14 15:48:34 -04:00
Adrien Béraud
a926e273af
dht: forward-declare more internal structures
2016-05-14 15:48:34 -04:00
Adrien Béraud
e37307654f
make sure securedht methods override dht's
2016-05-13 16:38:23 -04:00
Adrien Béraud
ed8cdfd81a
don't remove flying nodes from searches
2016-05-10 12:50:39 -04:00
Adrien Béraud
040e3770ad
node: use requests to determinate state
2016-05-09 16:17:59 -04:00
Adrien Béraud
ef1bf5ccec
move node cache to message engine
2016-05-08 00:37:52 -04:00
Adrien Béraud
8cc53b1751
add node cache, split dhtrunner.h from dht.h
2016-05-08 00:37:52 -04:00
Adrien Béraud
92613f5fbf
net: improve request state consistency
2016-05-03 18:33:38 -04:00
Adrien Béraud
733cf335d3
dht: limit concurrent search requests instead of steps intervals
2016-05-03 12:05:14 -04:00
Adrien Béraud
92df1f5a2b
dht: recompute step time for existing searches
2016-05-02 18:42:14 -04:00
Adrien Béraud
0890ed9c4f
move routing table to a different file
2016-05-02 15:25:15 -04:00
Adrien Béraud
f9e6662f7d
use Node in tellListener
2016-05-02 15:25:15 -04:00
Adrien Béraud
20662a9b4c
cancel request when receiving token error
2016-05-02 15:25:15 -04:00
Adrien Béraud
995196ce08
clear getStatus after token error
2016-05-02 15:25:15 -04:00
Adrien Béraud
3367043e92
NE fixes
2016-05-02 15:25:15 -04:00
Simon Désaulniers
f7a334a979
dht: make sure searchStep is called when needed.
2016-05-02 15:25:15 -04:00
Simon Désaulniers
08dc666839
dht: network engine does the node ping count
2016-05-02 15:25:15 -04:00
Simon Désaulniers
4a9ae1d42a
handling the reply_time in network engine
2016-05-02 15:25:15 -04:00
Simon Désaulniers
ee31881825
changed license to GPLv3
2016-05-02 15:25:15 -04:00
Simon Désaulniers
dafae934c4
actually cancelling listens when appropriate
...
Just before, listens were "cancelled", but unsued memory in network engine's
data structure would be left there.
2016-05-02 15:25:15 -04:00
Simon Désaulniers
2a88117dd4
netengine: merging RequestStatus, Request
...
This is a change needed to enable easy and clean cancelling of requests from the
upper layer (dht layer). Request's content that was hidden from (dht layer) is
still hidden (private), but enable NetworkEngine as a friend of the Request
class for accessing lower layer attributes.
2016-05-02 15:25:15 -04:00
Simon Désaulniers
65cd72b8d5
dht: remove reply time setting. handled by net engine
2016-05-02 15:25:15 -04:00
Simon Désaulniers
72f4d58f7e
dht: fix listen confirmation, getvalues concurency
...
Upon receiving a listen confirmation, a Request structure shall be left alive in
the NetworkEngine's map so that further 'get values' answers for that same
listen can be treated properly. This was sort of handled before, but with a
concurency issue between the set of values returned associated to the listen
request and just before the listenConfirmation was returned.
2016-05-02 15:25:15 -04:00
Simon Désaulniers
717b58fcc6
dht: handling get token only after 'get' request.
2016-05-02 15:25:15 -04:00
Simon Désaulniers
d52fb6ad5d
make sure expire functions are scheduled
2016-05-02 15:25:15 -04:00
Simon Désaulniers
0240ca6394
dht: fix first put hang due to empty token
...
At some point, old nodes didn't provide token in a find_node request. Since a
find_node request may be used to initiate a search before a 'put', now have to
be provided. In order to discard old nodes which don't have that behavior, we
blacklist the nodes.
2016-05-02 15:25:15 -04:00
Simon Désaulniers
1ecfbb7181
properly handle empty token case after get request
...
Upon a response, if token is empty, the treatment of the response shall not be
done.
2016-05-02 15:25:15 -04:00
Simon Désaulniers
608be10446
using SearchNode::last_get_reply in dumpsearch
2016-05-02 15:25:15 -04:00
Simon Désaulniers
d5f67e97d0
dht: let Dht::inserNode set SearchNode reply time
2016-05-02 15:25:15 -04:00
Simon Désaulniers
ba5953bc6b
reference instead of copy, removing forgotten cout
2016-05-02 15:25:15 -04:00
Simon Désaulniers
dc1e1d9454
stop stacking jobs now rescheduling instead
2016-05-02 15:25:15 -04:00