Adam Ierymenko
b9bf6d1242
Simplification of addRoot/removeRoot, and some code reformatting and other cleanup across multiple files.
2020-05-29 06:30:02 -07:00
Adam Ierymenko
b533c300d8
A ton more work... almost there
2020-04-28 19:52:09 -07:00
Adam Ierymenko
2b0127c26d
Work in progress on crypto stuff, refactoring to back out of use of structs for encode/decode as it is questionably portable.
2020-04-16 12:34:51 -07:00
Adam Ierymenko
16a3c14c53
A bunch of cleanup and refactoring, implementation of prep for forward secrecy still in progress.
2020-04-13 12:22:08 -07:00
Adam Ierymenko
c65391a344
Add symmetric key container, tons of cleanup.
2020-04-06 16:54:35 -07:00
Adam Ierymenko
b9f60fc3c2
A bunch of warning removal and LINT cleanliness.
2020-03-31 12:35:54 -07:00
Adam Ierymenko
9428fc53f6
A bunch of cleanup, bug fix, just use unordered_map, etc.
2020-03-30 17:28:23 -07:00
Adam Ierymenko
87da45b3f5
Faster hash table, various other optimizations and simplification.
2020-03-28 01:06:29 -07:00
Adam Ierymenko
24e30a684b
A bunch of little nit-picky header and name cleanup.
2020-03-04 08:16:44 -08:00
Adam Ierymenko
7d11522768
Just about everything refactored for new Protocol/Buf code except Switch.
2020-02-03 16:18:33 -08:00
Adam Ierymenko
33bb61c63d
Loads of refactoring, integration of new version of Trace.
2020-01-23 13:05:33 -08:00
Adam Ierymenko
eef70e198b
Version 2.x notice updates and other boring stuff.
2020-01-20 08:46:20 -08:00
Adam Ierymenko
53b7c8f725
Make Peer bootstrap field an Endpoint even though we only support InetAddress right now, and a bunch more stuff.
2020-01-20 08:08:38 -08:00
Adam Ierymenko
3ff9ffd5d4
A bunch of wiring up of stuff...
2020-01-17 14:01:22 -08:00
Adam Ierymenko
6267c67888
A bunch of cleanup and refactoring toward 2.x
2019-12-12 16:15:49 -08:00
Adam Ierymenko
6f22570648
Optimization and cleanup
2019-08-26 20:18:28 -07:00
Adam Ierymenko
6f6138c500
Merge relicensing change from dev
2019-08-23 09:27:13 -07:00
Adam Ierymenko
52a166a71f
Relicense: GPLv3 -> ZeroTier BSL 1.1
2019-08-23 09:23:39 -07:00
Adam Ierymenko
9461bc948f
.
2019-08-14 15:28:10 -07:00
Adam Ierymenko
5b2b088714
Cleanup, version bump.
2019-06-11 14:58:23 -07:00
Adam Ierymenko
ee8682ac75
Temporarily disable the symmetric NAT port prediction code since the current version adds protocol overhead and probably is not that effective.
2019-03-26 15:23:51 -07:00
Joseph Henry
0e597191b8
Updated licenses for 2019
2019-01-14 10:25:53 -08:00
Adam Ierymenko
65c07afe05
Copyright updates for 2018.
2018-01-08 14:33:28 -08:00
Grant Limberg
b1d60df44c
timestamps changed from uint64_t to int64_t
...
There were cases in the code where time calculations and comparisons were overflowing and causing connection instability. This will keep time calculations within expected ranges.
2017-10-02 15:52:57 -07:00
Adam Ierymenko
f18158a52d
.
2017-07-06 11:45:22 -07:00
Adam Ierymenko
1b68d6dbdc
License header update.
2017-04-27 20:47:25 -07:00
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.
2017-03-27 17:03:17 -07:00
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.
2016-09-07 11:13:17 -07:00
Adam Ierymenko
c9d7845fea
Minor bug fix and some instrumentation stuff for testing.
2016-08-09 17:00:01 -07:00
Adam Ierymenko
2aa7138373
Reduce direct ping delay back to 1m and make SelfAwareness aware of local received-on address to eliminate false symmetric classification.
2016-02-22 09:47:50 -08:00
Adam Ierymenko
0c951b6e56
More tweaks to new symmetric NAT buster, and stop using old iterative method since this supersedes it.
2016-02-10 18:41:39 -08:00
Adam Ierymenko
4e4fd51117
boring doc stuff
2016-01-12 14:04:55 -08:00
Adam Ierymenko
29b966894c
(1) Fix bug in geo-ip service that prevented cache lookup, (2) fix problem in SelfAwareness (will need to test ALL versions in the wild with this), and (3) add more TRACE instrumentation to Cluster.
2015-10-23 13:03:34 -07:00
Adam Ierymenko
f116c4b9c0
... and another ...
2015-09-04 14:24:31 -07:00
Adam Ierymenko
b31071463c
Try another NAT traversal improvement.
2015-07-28 11:28:47 -07:00
Adam Ierymenko
dda376c9eb
Nuke some abandoned code.
2015-07-28 11:16:43 -07:00
Adam Ierymenko
fadb291962
Fix infinite loop typo.
2015-07-27 17:14:49 -07:00
Adam Ierymenko
f0003ea922
Push remote surface as reported by peers along with known interface direct paths to assist with (some) NAT traversal. (trying this, may back out if not effective)
2015-07-27 17:02:43 -07:00
Adam Ierymenko
b4b067bf12
So we need to keep track of external surface per reporter, since some NATs assign different external IPs for each external destination. Keeping just one known surface could create a race condition.
2015-05-04 18:34:30 -07:00
Adam Ierymenko
417f56de2f
Add some TRACE instrumentation to external surface address awareness.
2015-04-17 12:19:01 -07:00
Adam Ierymenko
52c3b7c34e
Implemented empirical determination of external addressing, paritioned per scope.
2015-04-07 11:56:10 -07:00
Adam Ierymenko
817824b88b
Some external surface awareness work, and IP scope classification.
2015-04-07 10:57:59 -07:00
Adam Ierymenko
a2821e9000
Add code to check external surface against reported surface from other trusted peers, and also rename ExternalSurface to SelfAwareness because lulz.
2015-04-06 20:17:21 -07:00