Adrien Béraud
7b8ebbc54d
proxy server: catch more exceptions, cleanup
2020-01-19 14:32:57 -05:00
Adrien Béraud
dc46c2274c
net: exponential backoff, randomize packet expiration time
2020-01-19 14:32:57 -05:00
Adrien Béraud
052ed1f58c
proxy server: handlePrintStats on startup
2020-01-18 22:20:01 -05:00
Adrien Béraud
900655b11f
dht: give current time through periodic
2020-01-18 13:58:22 -05:00
Adrien Béraud
2900b1d17f
net: limit recycled packet queue max size
2020-01-18 13:56:50 -05:00
Adrien Béraud
b012878488
dhtrunner: set logger in setLogger
2020-01-17 15:57:32 -05:00
Adrien Béraud
2cfebdf9fa
net: use packet lists and recycle old packet structures
2020-01-17 12:26:03 -05:00
Adrien Béraud
7f1d960a56
dhtrunner: add async/non-blocking version of getNodeInfo
2020-01-16 13:24:37 -05:00
Paymon
9487bc5e42
implement connectivity change in peer discovery
...
this makes peer discovery pub/sub on connectivity change, it aims to
make peer discovery more energy efficient.
also, stop echo'ing.
TODO:
in its current implementation however, peer_discovery operates in the
dark; it doesn't know routes available to it (v4 vs v6); nor does it
know of the state of the link(s) (UP vs. DOWN) and therefore it merely
tries to, on connectivity change, (re)pub/sub on previous ip version
routes.
IDEA:
open an interface to kernel so that peer discovery, and perhaps others,
can learn about the routes available to them.
don't leave
add query() and direct publish(endpoint)
check if peer discovery was request (run and compile time)
add try/catch routine to DomainPeerDiscovery's constructor
2020-01-15 23:16:36 -05:00
Adrien Béraud
5b15fdeeef
proxy server: use shared_ptr for stats, remove statsMutex_
2020-01-15 13:54:24 -05:00
Adrien Béraud
3ba43c80a2
http: add weak_ptr to Request in Response
2020-01-15 11:45:26 -05:00
Adrien Béraud
16333f4224
http: add mutex to Request, Connection
2020-01-15 11:45:03 -05:00
Adrien Béraud
616d6fe4b8
update copyright date
2020-01-03 15:14:32 -05:00
Adrien Béraud
dc2f354652
proxy: use timestamps to handle reordered notifications
2020-01-03 14:47:22 -05:00
Adrien Béraud
c5c3695612
logger: use shared_ptr
2019-12-19 15:12:23 -05:00
Adrien Béraud
99890fca64
proxy server: update sessionId when necessary
2019-12-19 14:20:03 -05:00
Adrien Béraud
5438d50578
proxy: add session token
2019-12-16 16:37:07 -05:00
Adrien Béraud
7094b79714
crypto: add PublicKey::pack(uint8_t* out, size_t* out_len)
2019-12-14 15:29:42 -05:00
Adrien Béraud
374fdd6cc9
proxy: send normal priority push message for value expiration
2019-12-14 13:02:07 -05:00
Adrien Béraud
54b1314ab8
value: optimize json parsing
2019-12-14 13:02:07 -05:00
Adrien Béraud
51c35d8b54
value: add priority
2019-12-14 13:02:07 -05:00
Adrien Béraud
fea736428e
msgpack: take const reference in unpack
2019-12-14 13:01:24 -05:00
Adrien Béraud
2d358adf0e
utils: add findMapValue(string)
2019-12-14 13:00:13 -05:00
Adrien Béraud
26c2e16a42
value: optimize json parsing
2019-12-14 00:41:41 -05:00
Adrien Béraud
e8b385c220
utils: optimize findMapValue
2019-12-13 23:57:22 -05:00
Adrien Béraud
9565adf693
proxy server: always depend on jsoncpp
2019-12-12 14:51:59 -05:00
Adrien Béraud
38644fc934
includes: don't include proxy server, pht by default
2019-12-12 14:44:53 -05:00
Adrien Béraud
e5d248bcd0
peer discovery: use asio
2019-12-09 03:28:45 -05:00
Adrien Béraud
05a66cc1f1
proxy client: use common jsonReader
2019-12-07 22:22:37 -05:00
Adrien Béraud
77a377a406
http: add OnDone callback
2019-12-07 16:23:08 -05:00
Adrien Béraud
dd3c789916
proxy server: 0-initialize fields
2019-12-07 16:23:08 -05:00
Adrien Béraud
5b87090cab
http: use http_parser parsing logic
2019-12-07 16:23:08 -05:00
Adrien Béraud
c4aa272dbb
http/request: add constructor
2019-12-05 18:39:39 -05:00
Adrien Béraud
f331f39c77
c wrapper: add dht_privatekey_export
2019-12-05 18:35:43 -05:00
Adrien Béraud
36857c1f3d
http/request: add aborted flag and actual status code
2019-12-03 16:21:04 -05:00
Adrien Béraud
83f2b272a7
dhtrunner: add ongoing op count to node info
2019-12-01 15:07:35 -05:00
Adrien Béraud
f6d26757fa
dhtrunner: wait for current ops to complete on shutdown
2019-12-01 14:53:36 -05:00
Adrien Béraud
476d0bca4f
proxy client: lock while canceling requests
2019-12-01 14:52:42 -05:00
Adrien Béraud
913cb543c8
crypto: improve exception types
2019-11-30 19:42:02 -05:00
Adrien Béraud
fe11285a03
http: close on request end with Connection: close, cleanup
2019-11-30 18:11:00 -05:00
Adrien Béraud
fb34770a54
http: reuse connection istream, cleanup
2019-11-30 17:21:52 -05:00
Adrien Béraud
4a909419e9
http: handle Request lifetime when sharing resolver/connection
2019-11-30 17:21:52 -05:00
Adrien Béraud
28bf78408d
network utils: fix some race conditions
2019-11-26 12:24:37 -05:00
Adrien Béraud
7ed6f74e6b
proxy_server: add mutex to protect requests
2019-11-26 12:24:28 -05:00
Adrien Béraud
cf6d9fd8c2
proxy client: add lock for requests
2019-11-25 15:43:23 -05:00
Adrien Béraud
5df34bb752
http: use atomic ids
2019-11-25 15:42:45 -05:00
Adrien Béraud
8a18c591e9
http: initialize connection type, cleanup
2019-11-12 16:45:00 -05:00
Adrien Béraud
01f2ad9ea4
tools: show connectivity change in log
2019-11-11 11:54:44 -05:00
Adrien Béraud
cdd035b801
rate limiter: cleanup
2019-11-07 19:17:27 -05:00
Adrien Béraud
cb7d7f6614
dht: allow to configure rate limiter
2019-11-07 16:43:04 -05:00