Adam Ierymenko
9c7ee5a21e
Tear out old "link quality" stuff since it is not currently used and will be done differently.
2018-01-08 13:06:24 -08:00
Joseph Henry
f7b3ffe8a0
Commented out block which ignores added routes if there already exists an IP in the route's range. Attempted fix for #600
2018-01-05 17:10:59 -08:00
Adam Ierymenko
0608704626
Some micro-optimizations, including a memcpy that is faster than Linux for most distro/compiler versions.
2017-12-15 11:03:20 -08:00
Joseph Henry
382dd82eb6
Fix for local.conf virtual path blacklist (ticket #594 )
2017-11-27 15:31:25 -08:00
Adam Ierymenko
cb550ab4fe
Merge branch 'dev' into edge
2017-11-07 14:59:18 -08:00
Joseph Henry
e5d1243dd2
Minor changes to SDK-related portions of OneService
2017-11-06 13:43:56 -08:00
Adam Ierymenko
92c7070aa8
RethinkDB fixes.
2017-11-03 20:55:16 -04:00
Adam Ierymenko
2cc4dc5a6f
Clean peers.d periodically and delete peers older than 30 days.
2017-10-25 16:08:14 -07:00
Adam Ierymenko
b92ef67e56
Merge pull request #550 from surgicalcoder/patch-2
...
Peer's role misses a PLANET role
2017-10-24 12:22:38 -07:00
Joseph Henry
ee4783e3fb
ifdef omit of deletePersistentTapDevice() in OneService for libzt builds on Windows
2017-10-10 15:01:15 -07:00
Grant Limberg
ceeb35eaac
If lastSend/lastReceive is < 0, just put 0.
2017-10-05 13:19:25 -07:00
Grant Limberg
4177a11522
remove some leftover debug code
2017-10-04 09:18:13 -07: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
f8014413a3
Add UDP MTU configurability.
2017-09-01 16:25:34 -07:00
Adam Ierymenko
6418d02572
Fix HTTP DELETE stupid bug.
2017-08-24 15:33:24 -07:00
Adam Ierymenko
2cebe7a5e0
Fix name difference.
2017-08-23 14:09:29 -07:00
Adam Ierymenko
64758c46b6
Implement peer serialization and deserialization.
2017-08-23 13:40:51 -07:00
Adam Ierymenko
4352202349
Reduce TCP relay latency -- see GitHub issue #564
2017-08-18 14:54:10 -07:00
Joseph Henry
59b7cbb591
Rename SocketTap to VirtualTap to prevent confusion on role
2017-08-15 16:22:28 -07:00
Joseph Henry
ee1dc16e8f
Added getRoutes() for libzt
2017-08-10 00:59:15 -07:00
Adam Ierymenko
b62296a40b
Bug fixes in new harness mode.
2017-07-19 14:13:17 -07:00
Adam Ierymenko
727ccb1125
Cleanup and stdin/stdout harness mode for controller.
2017-07-18 13:57:37 -07:00
Adam Ierymenko
4ecc0c59ca
Plumbing through of remote trace into controller code.
2017-07-14 13:03:16 -07:00
Adam Ierymenko
ba6fd16823
More tracing stuff.
2017-07-13 15:08:57 -07:00
Monty A
78ee7f6573
Peer's role misses a PLANET role
...
Peer's role misses a PLANET role in documentation vs what's returned from API.
2017-07-09 15:39:49 +01:00
Adam Ierymenko
f23a43fb81
More cleanup.
2017-07-06 17:32:41 -07:00
Adam Ierymenko
88997a0314
Windows build fixes.
2017-07-06 16:29:11 -07:00
Adam Ierymenko
d2415dee00
Cleanup.
2017-07-06 16:11:11 -07:00
Adam Ierymenko
dff8c02cfe
Pull out and deprecate old cluster code. New cluster code will not be merged yet.
2017-07-06 12:33:00 -07:00
Adam Ierymenko
640ad577d1
.
2017-07-06 11:56:46 -07:00
Adam Ierymenko
cd63ecd3f3
.
2017-07-06 11:45:48 -07:00
Adam Ierymenko
f18158a52d
.
2017-07-06 11:45:22 -07:00
Adam Ierymenko
2f20258807
.
2017-07-06 10:25:36 -07:00
Adam Ierymenko
baa10c2995
.
2017-06-30 17:32:07 -07:00
Adam Ierymenko
355cce3938
Rename Utils::snprintf due to it being a #define on one platform.
2017-06-27 11:31:29 -07:00
Adam Ierymenko
2225bb093a
Merge branch 'edge' into dev
2017-06-23 16:06:38 -07:00
Adam Ierymenko
75a6a7baca
Merge branch 'dev' of http://10.6.6.2/zerotier/ZeroTierOne into dev
2017-06-23 16:05:58 -07:00
Adam Ierymenko
9a3c34b5b3
Build fix, use -Os on Linux too.
2017-06-07 17:19:33 -07:00
Adam Ierymenko
951d911531
Last bit of new cluster code, ready to test.
2017-06-06 16:11:19 -07:00
Adam Ierymenko
4f2179b0df
.
2017-06-05 13:42:43 -07:00
Adam Ierymenko
9b287392a4
.
2017-06-05 12:15:28 -07:00
Adam Ierymenko
aa06470cb6
More cleanup for cluster refactor.
2017-06-01 20:32:43 -07:00
Adam Ierymenko
e8d11eb5c5
.
2017-06-01 17:21:04 -07:00
Joseph Henry
7bc9666aac
fix for SDK's route/tap association in getTap()
2017-05-31 13:07:03 -07:00
Adam Ierymenko
e5e90b1f71
Wire MTU through to service.
2017-05-04 20:10:49 -07:00
Joseph Henry
1f26cb98de
updated OneService convenience functions for SDK
2017-05-04 15:26:44 -07:00
Adam Ierymenko
1b68d6dbdc
License header update.
2017-04-27 20:47:25 -07:00
Adam Ierymenko
72def658d0
Add a dummy Ethernet tap and a build option to enable it.
2017-04-26 08:42:49 -07:00
Adam Ierymenko
8542ee59db
Windows crash fix.
2017-04-21 12:42:51 -07:00
Adam Ierymenko
ba0d73d102
Windows build fixes.
2017-04-20 10:21:40 -07:00
Adam Ierymenko
bc61357a44
HTTP backend support for JSONDB
2017-04-18 17:37:44 -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
592cac5815
Remove from a few other places.
2017-03-27 12:09:37 -07:00
Adam Ierymenko
4244cca48c
Delete comically named SSL gateway code, which is going elsewhere.
2017-03-27 12:08:38 -07:00
Joseph Henry
683ba79ff0
Added ButtFlare stub code
2017-03-24 17:00:14 -07:00
Adam Ierymenko
78ef2c5f16
Windows build fixes, app about text revisions.
2017-03-17 20:01:58 -07:00
Adam Ierymenko
cc883cc3d8
Merge branch 'master' of http://10.6.6.2/zerotier/ZeroTierOne
2017-03-17 13:56:01 -07:00
Adam Ierymenko
c6a39ed927
Fixes for possible ARM issues, cleanup, fix for spurious meaningless exceptions on NETWORK_CONFIG_REQUEST
2017-03-17 13:55:26 -07:00
Adam Ierymenko
e3feaf3f5d
Warning removal, and dev is now 1.2.1
2017-03-16 16:45:11 -07:00
Adam Ierymenko
1ef3069a7e
1.2.0 release notes and a few final tweaks and cleanup.
2017-03-14 21:21:12 -07:00
Adam Ierymenko
f99b62c48d
fix stupid thing.
2017-03-14 15:38:24 -07:00
Adam Ierymenko
0fd45a640b
Allow multiple architectures in software update dist .json file arch fields.
2017-03-14 15:19:16 -07:00
Adam Ierymenko
0b0d03dbe2
Merge branch 'dev' of http://10.187.63.16/zerotier/ZeroTierOne into dev
2017-03-14 14:40:27 -07:00
Adam Ierymenko
533baf921f
Software update cleanup, and a fix for updates on Windows.
2017-03-14 14:40:17 -07:00
Adam Ierymenko
27d4bedd73
Wait a minute (literally) before doing software update check on startup.
2017-03-14 13:17:10 -07:00
Adam Ierymenko
902807ea50
Software update check every 10min.
2017-03-10 22:03:07 -08:00
Adam Ierymenko
d0224b3623
Software update fix.
2017-03-10 22:02:08 -08:00
Adam Ierymenko
6194d2af3d
Return 200 from JSON API when moon is POSTed.
2017-03-10 19:37:03 -08:00
Adam Ierymenko
9c1a9f984b
Clean iddb.d periodically.
2017-03-08 10:18:12 -08:00
Adam Ierymenko
5249ce8fb4
Small amount of cleanup.
2017-03-08 08:45:04 -08:00
Adam Ierymenko
5dbafc2eeb
Add config to status in JSON API.
2017-03-07 14:17:51 -08:00
Adam Ierymenko
22f86df606
Merge ControlPlane into OneService to make variable access simpler.
2017-03-07 13:53:11 -08:00
Adam Ierymenko
9980526aaf
Consistent field names.
2017-03-07 10:12:05 -08:00
Adam Ierymenko
1d2cb867b2
Close all open FDs before exec in Unix software update code.
2017-03-07 09:26:27 -08:00
Adam Ierymenko
3859533e73
Minor software updater cleanup.
2017-03-07 09:18:00 -08:00
Adam Ierymenko
a577b8d381
Update how controller handles circuit tests -- save results to filesystem.
2017-03-01 16:33:34 -08:00
Adam Ierymenko
39f886ad88
Merge branch 'dev' of http://10.6.6.2/zerotier/ZeroTierOne into dev
2017-03-01 14:37:01 -08:00
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.
2017-03-01 14:36:52 -08:00
Joseph Henry
4430fc47c6
Added HTTP authorization block for synology builds
2017-02-28 16:30:20 -08:00
Adam Ierymenko
fe19ad328c
Windows build fix.
2017-02-23 12:40:21 -08:00
Joseph Henry
946e413997
properly fill out ifcfg files. also removed route re-add code for synology
2017-02-21 17:55:00 -08:00
Joseph Henry
b5b335a6f8
Route re-add patch for linux build on Synology devices
2017-02-16 16:41:26 -08:00
Adam Ierymenko
61b413b57f
Found it in a few other places.
2017-02-16 09:54:52 -08:00
Adam Ierymenko
d2c0203dc9
Fix stupid inverted sense bug.
2017-02-16 09:53:39 -08:00
Adam Ierymenko
cd7b571da0
Add a local.conf option to set the port.
2017-02-13 15:55:38 -08:00
Adam Ierymenko
0052877d2f
Add CLI shortcuts for adding federated roots.
2017-02-13 15:41:53 -08:00
Adam Ierymenko
23bb44f2d6
Fix small typo.
2017-02-13 14:28:17 -08:00
Adam Ierymenko
4b11566505
Integrate moon concept into http config bus, and clean up that code quite a bit.
2017-02-13 14:27:08 -08:00
Adam Ierymenko
42f28bce52
Cleanup and make moons (federated roots) a little easier to deal with.
2017-02-13 09:03:48 -08:00
Adam Ierymenko
31db768e4d
A bit of code cleanup.
2017-02-04 00:23:31 -08:00
Adam Ierymenko
ff74ec2482
Cluster build fix.
2017-01-30 21:39:44 +00:00
Grant Limberg
49e31ca647
InetAddress.hpp needs to be included in OneService.hpp
2017-01-30 09:16:16 -08:00
Adam Ierymenko
2ceb162df0
Merge pull request #442 from zielmicha/allow-managed
...
allow user to specify arbitrary allowed IP networks in allowManaged
2017-01-30 06:54:49 -08:00
Adam Ierymenko
9f7919f71f
Add comments to join ("orbit") moons.
2017-01-27 15:27:26 -08:00
Adam Ierymenko
0b3b994241
Relay policy can now be computed.
2017-01-27 14:05:09 -08:00
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.
2017-01-27 13:27:52 -08:00
Adam Ierymenko
ec0e8a9a43
Rip out resolver and use anycast address instead. In the long term existing TCP proxy dies anyway. Fixes static build problem for old Linux versions.
2017-01-26 13:59:20 -08:00
Michał Zieliński
8f2a42d1ad
allow user to specify arbitrary allowed IP networks in allowManaged
2017-01-23 12:16:40 +01:00
Adam Ierymenko
7b231b38b0
Now builds on OpenBSD, but segfaults. So not yet but close. GitHub issue #439
2017-01-19 10:39:42 -08:00
Adam Ierymenko
a604294b1b
local.conf docs
2017-01-19 16:10:36 -08:00
Adam Ierymenko
89d74cd293
Add a portMappingEnabled flag to local.conf to allow uPnP/NAT-PMP to be disabled.
2017-01-19 15:57:50 -08:00
Adam Ierymenko
e9007b1f56
NodeJS migration script for old Sqlite controller.db to new controller data format.
2017-01-19 10:44:26 -08:00
Adam Ierymenko
0fb3d1d582
Add a build version for software update use so we can do very minor updates within a version.
2017-01-18 09:16:23 -08:00
Adam Ierymenko
81910c1d92
Replace update signing key with real key generated on air-gapped system.
2017-01-13 16:07:57 -08:00
Adam Ierymenko
1346e31a8e
Windows build fixes, Software update fix, warning removal.
2017-01-13 14:22:36 -08:00
Adam Ierymenko
54f25b14ee
Software updater log for distributors (does not affect real users much).
2017-01-13 14:03:06 -08:00
Adam Ierymenko
f81c67c0f0
Make sure to respond to GET_LATEST with the actual latest.
2017-01-13 12:13:14 -08:00
Adam Ierymenko
3a730c4a5c
Remove debug printfs in software updater. It works! At least for unix. Now to test Windows.
2017-01-13 11:24:00 -08:00
Adam Ierymenko
b03247ec3c
SoftwareUpdate::apply()
2017-01-13 10:46:16 -08:00
Adam Ierymenko
8ebb49e972
Cache downloaded updates to disk.
2017-01-12 15:21:14 -08:00
Adam Ierymenko
e1727d6297
Fix to software update repeat downloads.
2017-01-12 14:34:52 -08:00
Adam Ierymenko
e7bab66d29
Auto-apply updates if enabled.
2017-01-12 13:54:08 -08:00
Adam Ierymenko
c6b0b07605
More software update work, and settings in local.conf.
2017-01-12 13:18:11 -08:00
Adam Ierymenko
b5b583c397
.
2017-01-11 18:10:42 -08:00
Adam Ierymenko
56d969c709
.
2017-01-11 17:59:51 -08:00
Adam Ierymenko
3fedf16f35
.
2017-01-11 17:57:12 -08:00
Adam Ierymenko
5da56776d6
.
2017-01-11 17:54:43 -08:00
Adam Ierymenko
d58870a92d
.
2017-01-11 17:53:19 -08:00
Adam Ierymenko
15ed7423ac
.
2017-01-11 17:50:02 -08:00
Adam Ierymenko
823a1963f6
init fix.
2017-01-11 17:45:09 -08:00
Adam Ierymenko
6513b21426
debug code.
2017-01-11 17:42:57 -08:00
Adam Ierymenko
d4321cdd41
Wire up user message handling in OneService event handler.
2017-01-11 17:20:43 -08:00
Adam Ierymenko
d301540d92
Software update stuff for test.
2017-01-11 16:58:37 -08:00
Adam Ierymenko
4aa52ffc77
Software update stuff.
2017-01-11 16:47:42 -08:00
Adam Ierymenko
47b62ece18
Software update integration.
2017-01-11 16:34:33 -08:00
Adam Ierymenko
2aab26a08e
Software update work.
2017-01-11 15:22:16 -08:00
Adam Ierymenko
565842b5ec
Software updater work.
2017-01-11 14:37:31 -08:00
Adam Ierymenko
a064e19b8a
Refactor some JSON stuff for performance, and fix a build error.
2017-01-10 13:51:10 -08:00
Adam Ierymenko
6fb49f68fc
Comment out and disable old auto-update code.
2017-01-10 12:20:29 -08:00
Grant Limberg
e2b1a7157e
Potential fix for routing issue on Windows
...
Move setting _initialized = true until after WindowsEthernetTap::threadMain() has actually created and brought up the adapter. Also in OneService::nodeVirtualNetworkConfigFunction(), wait up to 5 seconds for WindowsEthernatTap::isInitialized() to return true before attempting to configure the interface and managed routes. Without this, the adapter doesnt actually exist yet when trying to add routes
2017-01-05 11:43:26 -08:00
Daniel Skowroński
f09eedbd7a
make it compilable
2016-12-25 22:54:27 +01:00
Adam Ierymenko
a54c2b438c
Basic support for streaming of changes via stdout from controller.
2016-12-15 15:08:47 -08:00
Adam Ierymenko
890f6f0d35
Make allow management from a local.conf parameters.
2016-12-12 16:25:41 -08:00
Adam Ierymenko
bad4b72f82
Remove debug printf.
2016-12-12 14:44:21 -08:00
Adam Ierymenko
4702c5b4ee
Add local.conf option to blacklist interfaces by name.
2016-12-12 14:43:09 -08:00
Adam Ierymenko
44f0e3097e
docs
2016-11-29 10:56:16 -08:00
Adam Ierymenko
ae8f51d608
.
2016-11-23 16:27:15 -08:00
Adam Ierymenko
4a7ee5472d
Small fixes.
2016-11-23 16:23:44 -08:00
Adam Ierymenko
8718b33a66
docs
2016-11-23 15:57:06 -08:00
Adam Ierymenko
27f1155f1b
docs and API stuff
2016-11-23 15:53:53 -08:00
Adam Ierymenko
84732fcb12
Wire through external path lookup. Static paths should now work.
2016-11-22 14:23:13 -08:00
Adam Ierymenko
42ba70e79e
Replace long callback arg list with struct, and implement path whitelisting, path blacklisting, and local.conf support for roles.
2016-11-22 10:54:58 -08:00
Adam Ierymenko
97d915b06c
Expose relay policy in node settings.
2016-11-21 15:35:18 -08:00
Adam Ierymenko
d159e5ca44
Allow relay policy setting in local.conf
2016-11-21 15:21:24 -08:00
Adam Ierymenko
40078a99de
Make parse failure of local.conf non-fatal in case people have ancient files sitting around.
2016-11-21 14:14:43 -08:00
Adam Ierymenko
2e5de46584
local.conf and support for virtual role definition
2016-11-21 13:20:56 -08:00
Adam Ierymenko
ccdd4ffda7
Move split() to OSUtils since it is not used in core.
2016-11-18 15:49:28 -08:00
Adam Ierymenko
4ad942522b
Kill unnecessary check in another spot.
2016-11-14 15:57:46 -08:00
Adam Ierymenko
b6c99ba3ef
Add (currently undocumented) option to allow management from certain networks.
2016-11-14 15:47:06 -08:00
Adam Ierymenko
ee5bd57d40
We don't bind to non-local IP for TCP yet, but eliminate double check.
2016-11-14 15:29:36 -08:00