Commit graph

86 commits

Author SHA1 Message Date
Adam Ierymenko
0ab4e2f750 Roots now understand encrypted HELLO. 2024-09-26 19:47:57 -04:00
Adam Ierymenko
2316a45a45 clang-format root 2024-09-26 13:41:59 -04:00
Adam Ierymenko
8adf064a04 Yet another fix. 2021-09-21 12:36:00 -04:00
Adam Ierymenko
7fe00f4247 Another dumb RENDEZVOUS bug. 2021-09-21 12:13:47 -04:00
Adam Ierymenko
5eae02068d Fix bass ackwards addresses making RENDEZVOUS packets not make it, improve P2P. 2021-09-21 11:58:39 -04:00
Adam Ierymenko
5d429cedbb Send error. 2021-09-20 16:56:16 -04:00
Adam Ierymenko
3c85322067 Meh... fixed now. 2021-09-20 15:54:12 -04:00
Adam Ierymenko
9fb902bdf6 Pointer deref fix. 2021-09-20 15:43:27 -04:00
Adam Ierymenko
262cb7a4b5 Generate new peer if old was bad. 2021-09-20 15:12:56 -04:00
Adam Ierymenko
104fade420 Thinko. 2021-09-20 15:04:25 -04:00
Adam Ierymenko
bcf8c30ce0 Simplify validation logic too. 2021-09-20 14:56:49 -04:00
Adam Ierymenko
c2413fca4d Clean out a bunch of old code related to the possibility of multiple peers sharing virtual addresses. Does not seem to be currently exploitable but we are never going back to that idea, so this simplifies things. May also speed up the root. 2021-09-20 14:42:49 -04:00
Adam Ierymenko
5028aca372 Fix some identity verification stuff, performance improvements, build of root now requires libjemalloc. 2021-06-18 16:14:59 -04:00
Adam Ierymenko
311f9c5c2a A few minor changes: (1) bind sockets to peers so the same socket is always used to send as most recently received, (2) pick the most recently active IP (v4 or v6) if both exist, and (3) introduce expiry of V4 or V6 IPs in addition to the peer overall. 2021-05-26 19:37:48 -04:00
Adam Ierymenko
32ca1a09da Set version threshold correctly for v2 2020-08-27 10:00:11 -07:00
Adam Ierymenko
bba1324145 One more sanity check. 2020-01-21 11:04:18 -08:00
Adam Ierymenko
ff655292fb Allocate packet on heap, add extra sanity checks on packet size. 2020-01-21 10:58:41 -08:00
Grant Limberg
2558bd1b9b
include iomanip 2020-01-16 09:11:12 -08:00
Grant Limberg
95d0944b9f
add /metrics endpoint for exposing root metrics to Prometheus 2020-01-16 09:08:52 -08:00
Adam Ierymenko
68ac884d47
. 2019-10-02 14:30:46 -07:00
Adam Ierymenko
624efde7e4
Make sure threads dont exit on spurious return values from recvfrom unless we are really dying. 2019-09-16 20:41:23 -07:00
Adam Ierymenko
9f5bccec30
Add a recv timeout to root 2019-09-16 18:03:17 -07:00
Adam Ierymenko
ade52bf81e
Fix RENDEZVOUS issue and possibly improve GeoIP resolution. 2019-09-16 17:04:13 -07:00
Adam Ierymenko
e245eb1eb5
Trim some unnecessary locks from root, and cleanup elsewhere. 2019-09-16 14:48:27 -07:00
Adam Ierymenko
e08fc81397
More threading improvements in root, more DNS TXT and multicast work (in progress) 2019-09-16 10:33:59 -07:00
Adam Ierymenko
e44d7a553f
The root technically does not need to do this, and its slow. 2019-09-13 10:29:11 -07:00
Adam Ierymenko
2deaaeef28
Some root cleanup and more lock contention reduction. 2019-09-13 10:20:29 -07:00
Adam Ierymenko
31e193756d
cleanup 2019-09-12 09:59:46 -07:00
Adam Ierymenko
5aa744db84
Simplification and further concurrency improvements. 2019-09-12 08:41:34 -07:00
Adam Ierymenko
99c36ed2f2
Parallelization improvements 2019-09-12 08:20:38 -07:00
Adam Ierymenko
a3ec5846df
map fix 2019-09-06 08:18:11 -07:00
Adam Ierymenko
fe0b896665
map fix 2019-09-06 07:58:43 -07:00
Adam Ierymenko
e4721417e6
map fix 2019-09-06 07:55:36 -07:00
Adam Ierymenko
3123102211
root cleanup and add nifty geoip thing 2019-09-06 07:37:44 -07:00
Adam Ierymenko
e8f8b0f8e5
cleanup 2019-09-04 14:40:36 -07:00
Adam Ierymenko
185e90c40f
AES-GMAC-CTR tweaks, self test tweaks, debian typo fix. 2019-09-04 08:19:12 -07:00
Adam Ierymenko
e29c2d0260
Fix field headers 2019-09-03 15:59:34 -07:00
Adam Ierymenko
acf6425ae9
Formatting fix 2019-09-03 15:55:23 -07:00
Adam Ierymenko
5e8d49de0f
Stats, tweak P2P success rate stat. 2019-09-03 15:48:10 -07:00
Adam Ierymenko
1f9456a462
Estimate P2P Success Rate 2019-09-03 15:19:17 -07:00
Adam Ierymenko
a7d8285c3a
Don't require siblings field 2019-09-03 14:57:54 -07:00
Adam Ierymenko
5f1dc4b851
cleanup 2019-09-03 14:57:02 -07:00
Adam Ierymenko
b1c22949c5
Cleanup, add support for distributing a new planet file 2019-09-03 14:44:13 -07:00
Adam Ierymenko
29be175743
Make relay max hops configurable on roots 2019-09-03 13:17:12 -07:00
Adam Ierymenko
b6c5ba264b
One more fix for discarding hops exceeded packets. 2019-09-03 13:01:01 -07:00
Adam Ierymenko
8e7e3c2b11
Fix max hops. 2019-09-03 12:58:23 -07:00
Adam Ierymenko
0e7df129d8
Fix variable shadowing bug. 2019-09-03 12:51:32 -07:00
Adam Ierymenko
50709cbd21
Fix siblings in peers list, fix meter. 2019-09-03 12:44:09 -07:00
Adam Ierymenko
fd6e8d8c5c
Add instrumentation to root, add capability to forward to siblings if no path is known to a peer. 2019-09-03 12:21:57 -07:00
Adam Ierymenko
2e7496130c
Fix silly thinko in root that harms p2p establishment. 2019-08-30 21:17:34 -07:00