Adrien Béraud
3a41f2ce56
search: use pointer to SearchNode
2018-06-12 16:54:12 -04:00
Adrien Béraud
5bd88533fe
SearchNode: refresh token in Query, Listen answers
2018-06-12 16:50:15 -04:00
Adrien Béraud
63db2eafd9
dht: print detailed request state in search log
2018-05-07 17:43:31 -04:00
Adrien Béraud
981bcfc0ba
dht: handle error when sending listen
2018-05-02 14:26:24 -04:00
Adrien Béraud
1a2d783c2a
op cache: keep listeners alive for some time after cancel
2018-04-20 11:35:45 -04:00
Adrien Béraud
6a2f61a0db
dht: fix compilation warnings
2018-04-10 12:48:19 -04:00
Adrien Béraud
0edee443f5
cache: improve value expiration handling
2018-03-28 09:54:04 -04:00
Adrien Béraud
2f4acd26d6
dhtinterface: add listen() callback to signal expired values
2018-03-16 13:34:41 -04:00
Adrien Béraud
12db1f88dc
dht: introduce cache for values and operations
...
Multiplex multiple listen operations on a single key through
a unique listen operation on the network.
2018-03-16 13:34:32 -04:00
Adrien Béraud
1617c79e5d
network: add signaling for expired, refreshed values
2018-03-14 23:39:35 -04:00
Sébastien Blin
547fa2eff5
dht_proxy_client: fix getCallback for push notifications
...
Note: Also fix Value deserialization
2018-03-05 19:15:04 -05:00
Adrien Béraud
cab0813b17
dht: reduce log verbosity
2018-02-24 15:15:49 -05:00
Adrien Béraud
06cc490ee4
listener: remove unused field
2018-02-24 15:05:14 -05:00
Adrien Béraud
8cce9fcb85
search: remove getNextStepTime
2018-02-23 13:50:25 -05:00
Adrien Béraud
e6a2d96622
net: restart socket in case of sigpipe
2018-01-23 11:34:14 -05:00
Adrien Béraud
0420ebcce3
dhtinterface: pass listen filters by value
2018-01-17 11:40:18 -05:00
Sébastien Blin
cb72c104fd
proxy: implement basic DhtProxyClient with the ability to get and put.
...
+ Add an abstract class to describe the Dht
+ Now, we can modify the Dht linked to a SecureDht. So we can choose
between the classic Dht and the Dht using a proxy.
+ Implement a basic client which can Get and Put values on the Dht using
the proxy.
Note: Update dhtnode to have the ability to use the DhtProxyClient.
Todo: Implement Listen, ping, connectivityChanged for the client.
2017-11-20 15:45:29 -05:00
Adrien Béraud
b17c7c2965
dht: reserve address vector size
2017-11-17 02:06:32 +01:00
Adrien Béraud
6d238836ad
dht: return empty search on error
2017-11-17 01:01:47 +01:00
Adrien Beraud
dc99919338
InfoHash: add explicit operator bool()
2017-11-01 11:59:11 -04:00
Adrien Béraud
0a130c7045
dht: update permanent state on announce
2017-10-30 13:12:16 -04:00
Adrien Béraud
a401aea132
dht: simplify searchSendAnnounceValue
2017-10-30 13:12:16 -04:00
Adrien Béraud
6378840d33
dhtnode: allow to cancel a listen operation
2017-10-30 13:12:16 -04:00
Adrien Béraud
63366722a9
dht: reduce verbosity of storage log
2017-10-21 18:01:32 +02:00
Adrien Béraud
cd17858ae1
dht: periodic cleanup of unused quota entries
2017-10-21 18:00:46 +02:00
Adrien Béraud
a789ffe7ae
dht: prevent use-after-free of socket callback
2017-10-20 17:46:27 +02:00
Adrien Béraud
376486e64f
node: use full range of socket IDs
2017-10-17 15:25:09 +02:00
Adrien Béraud
6bc2f19a36
dht: log total number of nodes in onGetValuesDone
2017-10-16 17:12:33 +02:00
Adrien Béraud
63e0c1266a
dht: use OpStatus in put
...
Factorize shared pointers.
2017-10-13 02:07:14 +02:00
Adrien Béraud
1a54aff7bc
storage policies: use SockAddr
...
API-breaking change to use const SockAddr& instead of sockaddr*.
2017-10-13 01:10:09 +02:00
Adrien Béraud
f2b9f8eeda
dht: move bucket time update to routing table
2017-10-13 01:10:09 +02:00
Adrien Béraud
e9f007025f
node: make most fields private
2017-10-13 01:10:09 +02:00
Adrien Béraud
84a45c4f91
dht: factorize shared pointer dereference
2017-10-12 15:44:14 +02:00
Adrien Béraud
024dd42e5a
dht: remove processMessage
2017-10-11 17:36:20 +02:00
Adrien Béraud
3bb5e7ee12
network engine: move transaction ownership to Node
2017-10-11 17:36:20 +02:00
Adrien Béraud
bdb0bef0ee
network engine: move RequestAnswer out of class
2017-10-11 02:22:03 +02:00
Adrien Béraud
97ee4b6fea
dht: move onNewNode to RoutingTable
2017-10-07 11:35:56 +02:00
Adrien Béraud
1c45f34262
SockAddr: use pointer to sockaddr
...
Save memory and reduce copies by using a pointer
to a sockaddr structure of the right size instead of
using a full sockaddr_storage structure for every address.
2017-09-26 16:30:29 +02:00
Adrien Beraud
c40750f6e4
dht: use proper value type to compute expiration
2017-08-10 15:00:34 -04:00
Adrien Beraud
6f3eafc5ee
dht: set refill time even when no nodes where found
2017-07-16 23:30:58 -04:00
Adrien Beraud
83d1cb97c8
dht: cleanup sendCachedPing
2017-07-16 23:30:58 -04:00
Adrien Beraud
477799a2b9
dht: remove unused method
2017-07-16 23:30:58 -04:00
Adrien Beraud
7e8c9ce944
dht: use SockAddr& in makeToken
2017-07-16 23:30:58 -04:00
Adrien Beraud
6decb6609a
dht: use uint64_t to store secret
2017-07-16 23:30:58 -04:00
Adrien Beraud
f1e7cd897d
dht: use crypto::hash
2017-07-16 18:11:06 -04:00
Adrien Beraud
9bfaa224bc
dht: move set_nonblocking to NetworkEngine
2017-07-16 18:10:49 -04:00
Adrien Beraud
5657661249
dht: move Search out of the Dht class
2017-07-16 17:46:54 -04:00
Adrien Beraud
61f91d626b
dht: move Storage, Listener out of the Dht class
2017-07-16 15:04:18 -04:00
Adrien Beraud
732d10713d
dht: minor coverity fixes
2017-07-16 13:39:14 -04:00
Adrien Béraud
7f2b5a44ff
Merge pull request #186 from sim590/search-step-after-announce
...
dht: fix searchstep not scheduled after announcing
2017-04-05 20:12:23 +02:00