Adam Ierymenko
|
9f7919f71f
Add comments to join ("orbit") moons.
|
il y a 8 ans |
Adam Ierymenko
|
f102fd7f92
Extend in-band world updates to handle moons too.
|
il y a 8 ans |
Adam Ierymenko
|
64774d0d4f
Replace piecemeal designation of upstreams with the concept of moons, which is simpler and easier to use and inherits all the cool live update stuff of worlds (now called planets) and global roots.
|
il y a 8 ans |
Adam Ierymenko
|
84732fcb12
Wire through external path lookup. Static paths should now work.
|
il y a 8 ans |
Adam Ierymenko
|
42ba70e79e
Replace long callback arg list with struct, and implement path whitelisting, path blacklisting, and local.conf support for roles.
|
il y a 8 ans |
Adam Ierymenko
|
c61ca1dea2
Keep connections up for netconf stuff as well as frames.
|
il y a 8 ans |
Adam Ierymenko
|
9f550292fe
Simply network auth logic and always sent error on auth failure even for unknown networks to prevent forensics.
|
il y a 9 ans |
Adam Ierymenko
|
d3524f3609
Refactor COM stuff a bit, and respond to COM requests a bit more readily for rapid setup. Will need to revisit later.
|
il y a 9 ans |
Adam Ierymenko
|
5b6d27e659
Implement relay policy, and setting multicast limit to 0 now disables multicast on the network as would be expected.
|
il y a 9 ans |
Adam Ierymenko
|
cba37c6107
Add a few more rate limit gates for anti-DOS hardening.
|
il y a 9 ans |
Adam Ierymenko
|
ea1da3321a
Rate gate requests for COM.
|
il y a 9 ans |
Adam Ierymenko
|
ab9afbc749
(1) Public networks now get COMs even though they do not gate with them since they will need them to push auth for multicast stuff, (2) added a bunch of rate limit circuit breakers for anti-DOS, (3) cleanup.
|
il y a 9 ans |
Adam Ierymenko
|
0d4109a9f1
More refactoring to clean up code, and add a gate function to make sure we do not handle OK packets we did not expect. This hardens up a few potential edge cases around security, since such messages might be used to e.g. pollute a cache and DOS under certain conditions.
|
il y a 9 ans |
Adam Ierymenko
|
c7a4da3dd3
Turns out we do not need to pass network to receive().
|
il y a 9 ans |
Adam Ierymenko
|
1908aa55f5
Refactor MULTICAST_LIKE pushing to eliminate redundant and unnecessary pushes and simplify code.
|
il y a 9 ans |
Adam Ierymenko
|
a7d988745b
Use ECHO instead of HELLO where possible.
|
il y a 9 ans |
Adam Ierymenko
|
ff9f8b1c2b
Typo fix.
|
il y a 9 ans |
Adam Ierymenko
|
b5c86b6ba4
Bunch more path refactoring. Peers no longer forget paths, but do not normally use expired paths. Expired paths might still be tried if nothing else is reachable.
|
il y a 9 ans |
Adam Ierymenko
|
f2d2df2b11
Cluster build fix.
|
il y a 9 ans |
Adam Ierymenko
|
48a374c82c
(1) fix crazy bug introduced in doRENDEZVOUS(), (2) reclaim Paths after paths[] condense, (3) fix an edge case around symmetric NAT and external IP change detection.
|
il y a 9 ans |
Adam Ierymenko
|
8a2e8bd585
Rework how paths are set as remote cluster preferred. The code is now clearer and cluster preference indications are now very sticky as they should be.
|
il y a 9 ans |
Adam Ierymenko
|
43780742b0
comments, docs
|
il y a 9 ans |
Adam Ierymenko
|
d7f2287ce9
More tweaks to path behavior.
|
il y a 9 ans |
Adam Ierymenko
|
eebcf08084
Tweaks to new Path code for dual-stack operation, and other fixes.
|
il y a 9 ans |
Adam Ierymenko
|
4992ac2d9f
Cluster sub-optimal is in fact necessary...
|
il y a 9 ans |
Adam Ierymenko
|
4f8253dcdb
Tweaks to path handling...
|
il y a 9 ans |
Adam Ierymenko
|
d1101441b3
Tweak some timings.
|
il y a 9 ans |
Adam Ierymenko
|
e8f6b4b5d3
Rest of big Path canonicalization refactor.
|
il y a 9 ans |
Adam Ierymenko
|
584228b2b5
Dead code removal, and get rid of reliable() because we will no longer make that distinction.
|
il y a 9 ans |
Adam Ierymenko
|
c476285bd6
Harden PUSH_DIRECT_PATHS and simplify things by only doing it on receive when hops>0 and trust has been established.
|
il y a 9 ans |