Adam Ierymenko
|
e3cf756785
|
Make rxQueue lock-free using an atomic counter ring buffer.
|
9 years ago |
Adam Ierymenko
|
ab0806a036
|
Cleanup.
|
9 years ago |
Adam Ierymenko
|
495c5ce81d
|
Bunch of remote tracing work.
|
9 years ago |
Adam Ierymenko
|
dab0fb9e05
|
Remote trace: plumbing, replace old TRACE with calls to Trace object.
|
9 years ago |
Adam Ierymenko
|
f18158a52d
|
.
|
9 years ago |
Adam Ierymenko
|
2f20258807
|
.
|
9 years ago |
Adam Ierymenko
|
02d18af57d
|
Remove Cluster.hpp
|
9 years ago |
Adam Ierymenko
|
1b68d6dbdc
|
License header update.
|
9 years ago |
Adam Ierymenko
|
91c9f4cb20
|
Fix TRACE and CLUSTER builds.
|
9 years ago |
Adam Ierymenko
|
e4896b257f
|
Add thread PTR that gets passed through the entire ZT core call stack and then passed to handler functions resulting from a call.
|
9 years ago |
Adam Ierymenko
|
cdc0eaec3a
|
Fix attempt to WHOIS self.
|
9 years ago |
Adam Ierymenko
|
e3b1fc2ac0
|
Tweak WHOIS path for federation.
|
9 years ago |
Adam Ierymenko
|
1d39be61b2
|
ZeroTier now has link quality measurement. We are not using this yet but decided to put it in to prep for future QoS support and SD-WAN stuff.
|
9 years ago |
Adam Ierymenko
|
2bf9145ae6
|
Outgoing side of packet counter for link quality reporting. Also some cleanup and a cluster mode build fix.
|
9 years ago |
Adam Ierymenko
|
43182f8f57
|
Docs, code cleanup, and protect the extra new fields of HELLO with encryption as a precaution.
|
9 years ago |
Adam Ierymenko
|
31db768e4d
|
A bit of code cleanup.
|
9 years ago |
Adam Ierymenko
|
d9e4ba1280
|
Eliminate a little copypasta.
|
9 years ago |
Adam Ierymenko
|
dcb1233b0d
|
Slight refactor to RENEDEZVOUS sending code for federation.
|
9 years ago |
Adam Ierymenko
|
9284e4edfe
|
agree() must be called on our identity, the one with the secret
|
9 years ago |
Adam Ierymenko
|
62a705af1c
|
Eliminate another check in cluster frontplane mode.
|
9 years ago |
Adam Ierymenko
|
29ec7bf3a2
|
Add more specific check in source==self case instead of dumping it.
|
9 years ago |
Adam Ierymenko
|
fc3f4fb988
|
Yeah that could never have worked (normal packets in cluster mode).
|
9 years ago |
Adam Ierymenko
|
60ff280dcb
|
Another tweak to cluster I/O rules.
|
9 years ago |
Adam Ierymenko
|
b378f5dcd7
|
Take 3
|
9 years ago |
Adam Ierymenko
|
e778d45128
|
Still want to send WANT_PEER under two failure modes.
|
9 years ago |
Adam Ierymenko
|
5e11cf6378
|
Can't armor() a packet until all flags are set.
|
9 years ago |
Adam Ierymenko
|
5dbebc513a
|
Minor send path refactor to make packet I/O work on clusters if they are members of networks. Also fix a crash if compiled in cluster mode but no cluster is enabled.
|
9 years ago |
Adam Ierymenko
|
0b3b994241
|
Relay policy can now be computed.
|
9 years ago |
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.
|
9 years ago |
Adam Ierymenko
|
84732fcb12
|
Wire through external path lookup. Static paths should now work.
|
9 years ago |
Adam Ierymenko
|
42ba70e79e
|
Replace long callback arg list with struct, and implement path whitelisting, path blacklisting, and local.conf support for roles.
|
9 years ago |
Adam Ierymenko
|
39333c9e8e
|
Modify unite() to deal with a second layer of upstreams.
|
9 years ago |
Adam Ierymenko
|
1615ef1114
|
Rename getBestRoot() etc.
|
9 years ago |
Adam Ierymenko
|
d5f4d381d0
|
Go ahead and loop back packets whose destination is self. Some OSes require this since they aactually follow the full network path even for local IPs.
|
10 years ago |
Adam Ierymenko
|
e1fbf7b34c
|
Check multicast limit on send after NDP emulation code.
|
10 years ago |
Adam Ierymenko
|
cc4bacc199
|
Cleanup, and implement compression disable flag for networks.
|
10 years ago |
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.
|
10 years ago |
Adam Ierymenko
|
5b6d27e659
|
Implement relay policy, and setting multicast limit to 0 now disables multicast on the network as would be expected.
|
10 years ago |
Adam Ierymenko
|
ef87069957
|
Fix gating of multicast GATHER replies since these can come from upstream, etc., and fix an issue with sending ECHO to recheck marginal paths.
|
10 years ago |
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.
|
10 years ago |
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.
|
10 years ago |
Adam Ierymenko
|
01aa469591
|
Remove debug line.
|
10 years ago |
Adam Ierymenko
|
412979ba8f
|
Attempt to reactivate dead paths.
|
10 years ago |
Adam Ierymenko
|
4f8253dcdb
|
Tweaks to path handling...
|
10 years ago |
Adam Ierymenko
|
e8f6b4b5d3
|
Rest of big Path canonicalization refactor.
|
10 years ago |
Adam Ierymenko
|
a3bdae9735
|
Work in progress: Path canonicalization refactor.
|
10 years ago |
Adam Ierymenko
|
d5e6f59004
|
.
|
10 years ago |
Adam Ierymenko
|
74afef8eb1
|
Think through and refine a few things in rules, especially edge case TEE and REDIRECT behavior and semantics.
|
10 years ago |
Adam Ierymenko
|
c476285bd6
|
Harden PUSH_DIRECT_PATHS and simplify things by only doing it on receive when hops>0 and trust has been established.
|
10 years ago |
Adam Ierymenko
|
2cdda38dc4
|
It basically works... at least on current controllers.
|
10 years ago |