Compare commits

...
317 Commits
Author SHA1 Message Date
Adam Ierymenko baeab92737 VERSION 1.6.0
See RELEASE-NOTES.md for details.
2020-11-20 18:53:33 -05:00
Grant Limberg 95da2bcbcf move CoUninitialize to the proper place at the end of the tap thread 2020-11-19 14:13:16 -08:00
Grant Limberg a9e4fb0ed9 Fix multiple networks on Windows 2020-11-19 14:10:34 -08:00
Adam Ierymenko 45b092532e Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev 2020-11-19 13:44:03 -05:00
Adam Ierymenko 3ec932e194 MacOS ARM64 universal binary build fixes. 2020-11-19 13:43:57 -05:00
Adam Ierymenko 565bef05af Release notes and version bumps. 2020-11-19 13:24:30 -05:00
Adam Ierymenko a0c78da1ad Revert "Tune thread count based on hardware concurrency."
This reverts commit 7b14aeb53e.
2020-11-18 22:54:05 -05:00
Adam Ierymenko 7b14aeb53e Tune thread count based on hardware concurrency. 2020-11-18 22:42:00 -05:00
Adam Ierymenko f934a09baa Build fix. 2020-11-18 22:32:57 -05:00
Adam Ierymenko 414c248cc5 Try another approach... 2020-11-18 22:26:06 -05:00
Adam Ierymenko ca428233ba Revert "Try another optimization in LinuxEthernetTap."
This reverts commit a390629371.
2020-11-18 22:24:18 -05:00
Adam Ierymenko 3712f9b318 Revert "Shutdown fix."
This reverts commit 11545bdb5d.
2020-11-18 22:24:09 -05:00
Adam Ierymenko 11545bdb5d Shutdown fix. 2020-11-18 22:13:06 -05:00
Adam Ierymenko a390629371 Try another optimization in LinuxEthernetTap. 2020-11-18 22:06:17 -05:00
Adam Ierymenko e3e188109d Build fix. 2020-11-18 10:14:39 -08:00
Adam Ierymenko 7cbbc38b89 Reduce mutex use in LinuxEthernetTap. Try to squeeze a bit more powah out of it. 2020-11-18 12:50:34 -05:00
Adam Ierymenko b152f9e1d3 Version 1.6.0 bump in version.h 2020-11-17 15:15:06 -08:00
Adam Ierymenko 4bd58d47cf Revert "Try factoring out a mutex to see if its faster."
This reverts commit 982c32322b.
2020-11-17 12:52:48 -08:00
Adam Ierymenko 982c32322b Try factoring out a mutex to see if its faster. 2020-11-17 15:48:15 -05:00
Adam Ierymenko 2fcc344299 Some buffer tuning. 2020-11-17 15:34:42 -05:00
Adam Ierymenko 3acd901c88 Build fixes. 2020-11-17 12:13:08 -05:00
Adam Ierymenko 0795dbf5f1 Revert "Moar threadz"
This reverts commit 101a3a7d74.
2020-11-16 19:06:52 -08:00
Adam Ierymenko 101a3a7d74 Moar threadz 2020-11-16 21:49:51 -05:00
Adam Ierymenko 2da162bed7 Split Linux tap receive into two threads: one reader, one processor. 2020-11-16 21:40:25 -05:00
Adam Ierymenko 5282e06fd4 Tun/tap flags fix. 2020-11-16 19:08:09 -05:00
Adam Ierymenko dc806dd718 Try pipelining tap reads on Linux for a little more speed. 2020-11-16 18:56:00 -05:00
Adam Ierymenko 31d8758ad9 Apple "fat binaries" are back! 2020-11-16 16:30:15 -05:00
Adam Ierymenko 6b67cb0e2a Linux build fixes. 2020-11-16 11:11:52 -08:00
Adam Ierymenko 250f0ef9db Remove dead code. 2020-11-16 13:51:27 -05:00
Adam Ierymenko 4aab9121d9 Linux build fixes, and new route code seems to work. 2020-11-13 22:25:12 -05:00
Adam Ierymenko 5ea7ef6b65 Rework Linux route setting to actually consult netlink interface. 2020-11-13 22:06:58 -05:00
Adam Ierymenko a3875f9965 Add a route DB to LinuxNetLink to make route sync robust. 2020-11-13 21:55:31 -05:00
Adam Ierymenko 4e3a59f329 Build fix. 2020-11-13 21:21:28 -05:00
Adam Ierymenko 3730917dda LinuxNetLink cleanup 2020-11-13 21:06:34 -05:00
Adam Ierymenko 57516cfbe6 revert queue... not quite what we need 2020-11-13 21:01:55 -05:00
Adam Ierymenko bb62279a20 Queue up managed route syncs and do them periodically to avoid dependency problems. 2020-11-13 20:25:03 -05:00
Adam Ierymenko e8be28734b Linux netlink and route setting... work in progress. 2020-11-13 19:07:54 -05:00
Adam Ierymenko 6c5a097711 Use LinuxNetLink for routes on Linux... still needs testing/debugging on an actual Linux machine. 2020-11-13 18:16:14 -05:00
Adam Ierymenko 16a878adb1 ... route fix test 2020-11-13 16:18:00 -05:00
Adam Ierymenko 020d882e82 Route assignment fix. 2020-11-13 16:02:59 -05:00
Adam Ierymenko 44af828aa4 Tweak multicast settings to prevent failures due to TX queue overflow. 2020-11-12 22:21:43 -05:00
Adam Ierymenko 26a0cbcd73 Revert "Push credentials in multicast."
This reverts commit 1316ee3127.
2020-11-12 20:53:23 -05:00
Adam Ierymenko 1a106bca3b Revert "Build fix, and move multicast pushCredentialsIfNeeded."
This reverts commit cc42d6f4e0.
2020-11-12 20:53:14 -05:00
Adam Ierymenko cc42d6f4e0 Build fix, and move multicast pushCredentialsIfNeeded. 2020-11-12 20:40:10 -05:00
Adam Ierymenko 1316ee3127 Push credentials in multicast. 2020-11-12 20:33:31 -05:00
Adam Ierymenko eadca9dd75 Build fix. 2020-11-11 15:29:01 -05:00
Adam Ierymenko 59dd71187e Build fix. 2020-11-11 15:14:08 -05:00
Adam Ierymenko 36e167013a More Linux tap shotgun debugging. 2020-11-11 15:12:16 -05:00
Adam Ierymenko 2d489a8679 Another possible workaround for what seems to be a Linux bug in some newer kernels. 2020-11-11 14:42:56 -05:00
Adam Ierymenko d735a1d04c Reorder some stuff in LinuxEthernetTap as possible workaround for MAC-set weirdness. 2020-11-11 12:49:56 -05:00
Adam Ierymenko 9480ff1f37 Fix some timestamp signedness mismatches. 2020-11-11 11:46:09 -05:00
Adam Ierymenko d2f2abe525 Add force-exit timeout to get around some of the exit hang issues users have observed. Will punt full diagnosis to V2 which rewrites all these code paths anyway. 2020-11-10 16:30:55 -05:00
Adam Ierymenko e9e20fdad8 Increase multicast announce frequency a little. 2020-11-10 16:16:52 -05:00
Adam Ierymenko 53ba413d32 Dont use AES in HELLO. 2020-11-09 20:52:49 -05:00
Adam Ierymenko 7280fcdec2 Only define FreeBSD hwcaps stuff if ARM crypto is enabled for compiled. 2020-11-09 19:54:32 -05:00
Adam Ierymenko cbcd2be232 Merge pull request #1288 from darkain/dev
FreeBSD ARMv6, ARMv7, and Aarch64 support
2020-11-09 19:50:46 -05:00
Vince 83a2dcb65a FreeBSD ARMv6, ARMv7, and Aarch64 support 2020-11-07 14:16:03 -08:00
Adam Ierymenko dd65680150 Windows build fixes, version bump in AIP. 2020-11-06 11:18:41 -08:00
Adam Ierymenko 90f18f7ee7 Fix for ZTO-33 (Jira), only assign routes if there is a viable source IP. 2020-11-06 11:01:45 -05:00
Adam Ierymenko 317263b31c Remove unused variable on non-windows 2020-11-02 19:09:11 -05:00
Adam Ierymenko 52679d2784 Simplify and fix managed route logic. 2020-11-02 19:02:07 -05:00
Adam Ierymenko 763d1cc3dc Some more changes for slow network leaving on Mac. 2020-11-02 14:00:35 -05:00
Adam Ierymenko c9fe04d8ea Version bump in prep for 1.6.0 beta 2 2020-10-30 17:42:15 -04:00
Adam Ierymenko f2c490345c Remove unnecessary includes that can cause compile problems. 2020-10-30 16:14:59 -04:00
Adam Ierymenko fe5aad3cef Some Mac feth tap changes to hopefully fix slow-leave problem. 2020-10-30 10:40:34 -04:00
Joseph Henry 1331739ee4 Remove (some) debug tracing in Bond which may cause a segfault 2020-10-21 18:40:55 -07:00
Grant Limberg 3da8f5f053 freaking JNI 2020-10-21 16:08:19 -07:00
Grant Limberg fbbcf292c6 forgot accessors 2020-10-21 15:06:50 -07:00
Grant Limberg 2851a9577c JNI for dns configuration 2020-10-21 14:18:29 -07:00
Adam Ierymenko ed9b09e980 Missing flag. 2020-10-20 18:52:36 -04:00
Adam Ierymenko bcb3fc7fc0 Only use SSE/SSE2 for X64 for regular stuff. 2020-10-20 18:51:38 -04:00
Adam Ierymenko 70f37962cf Backport AES fixes for compiler, arch, and splitting into separate files. 2020-10-20 18:50:28 -04:00
Adam Ierymenko 8d83b9b7c5 Revert change to path quality to fix IPv6 issue in beta. We will rework this in 2.x. 2020-10-14 20:41:58 -04:00
Adam Ierymenko 2c75be0d64 Do not always enable SSE4 on X64 due to old Atom chips. Enable instead only for AES-NI code which is only run if AES-NI is present, which it is not on these old chips. 2020-10-13 16:08:30 -04:00
Grant Limberg ee04118172 null check 2020-10-13 08:24:36 -07:00
Adam Ierymenko fe1ce885a0 Version 1.6.0 (1.5.0 is a beta!) is a significant release that incorporates a number of back-ported fixes and features from the ZeroTier 2.0 tree.
Major new features are:

 * **Multipath support** with modes modeled after the Linux kernel's bonding driver. This includes active-passive and active-active modes with fast failover and load balancing. See section 2.1.5 of the manual.
 * **DNS configuration** push from network controllers to end nodes, with locally configurable permissions for whether or not push is allowed.
 * **AES-GMAC-SIV** encryption mode, which is both somewhat more secure and significantly faster than the old Salsa20/12-Poly1305 mode on hardware that supports AES acceleration. This includes virtually all X86-64 chips and most ARM64. This mode is based on AES-SIV and has been audited by Trail of Bits to ensure that it is equivalent security-wise.

Known issues that are not yet fixed in this beta:

 * Some Mac users have reported periods of 100% CPU in kernel_task and connection instability after leaving networks that have been joined for a period of time, or needing to kill ZeroTier and restart it to finish leaving a network. This doesn't appear to affect all users and we haven't diagnosed the root cause yet.
 * The service sometimes hangs on shutdown requiring a kill -9. This also does not affect all systems or users.
 * AES hardware acceleration is not yet supported on 32-bit ARM, PowerPC (32 or 64), or MIPS (32 or 64) systems. Currently supported are X86-64 and ARM64/AARCH64 with crypto extensions.
 * Some users have reported multicast/broadcast outages on networks lasting up to 30 seconds. Still investigating.

We're trying to fix all these issues before the 1.6.0 release. Stay tuned.
2020-10-08 18:10:13 -04:00
Adam Ierymenko 24769219b5 Merge branch 'dev' 2020-10-08 18:08:24 -04:00
Adam Ierymenko da6fe18e17 Merge branch 'master' of github.com:zerotier/ZeroTierOne 2020-10-08 18:08:18 -04:00
Adam Ierymenko a973a6e10e Leave feth devices over feth10000 alone. 2020-10-08 12:04:57 -04:00
Adam Ierymenko 5bc64c4c4e Windows build fixes and version bump in Advanced Installer. 2020-10-07 15:56:00 -07:00
Travis LaDuke bd92990165 Update feature_request.md 2020-10-07 10:36:04 -07:00
Adam Ierymenko e26a8be3df Be more consistent about versioning. 2020-10-07 11:55:47 -04:00
Adam Ierymenko 3ef1c8e3fa Use 1.5.0 for package version for centos. 2020-10-06 23:31:20 -04:00
Adam Ierymenko 0ab4b903f4 Cert and codesign tweaks, release notes. 2020-10-06 18:09:51 -04:00
Adam Ierymenko b2ea5aa747 Version bump to 1.5.0 internally and 1.6.0-beta1 in packages. 2020-10-05 20:23:52 -04:00
Grant Limberg c80843e496 Revert "remove redundant writes when changes come from Central"
This reverts commit f9396f979f.
2020-10-05 13:32:47 -07:00
Grant Limberg f9396f979f remove redundant writes when changes come from Central
network & member changes tagged with `"fromCentral": true` will not be rewritten to the db
2020-10-05 11:03:03 -07:00
Adam Ierymenko 610d4ff016 Remove old tap kext from normal pkg as it is too old to be notarized (signature too old, not sure if we can sign again as kexts are being deprecated). It is only used on very old MacOS versions that are rolling off support. 2020-10-02 18:42:40 -04:00
Adam Ierymenko f16421225d Enable hardened executable mode on Mac, should be fine... 2020-10-02 18:36:24 -04:00
Adam Ierymenko d82b3684ac Enable RV64 2020-09-30 21:17:04 -04:00
Adam Ierymenko d7e5a92fe6 Increase debian build parallelism. 2020-09-30 17:39:15 -07:00
Adam Ierymenko bb45f9ca3c Upgrade cpp-httplib 2020-09-30 15:21:58 -04:00
Adam Ierymenko c7dcbba442 Add an AES benchmark to 1.6 (backport) 2020-09-29 18:34:58 -04:00
Adam Ierymenko 255dee7a5e MacOS build fixes. 2020-09-25 14:32:53 -04:00
Adam Ierymenko c86418934c PATH_MAX is not defined on some Linux systems. 2020-09-23 22:06:22 -04:00
Adam Ierymenko 70efa5f606 Merge branch 'dev' of github.com:zerotier/ZeroTierOne into dev 2020-09-23 21:59:14 -04:00
Adam Ierymenko 69b2fcd5af Get rid of obsolete musl libc fix. 2020-09-23 21:58:51 -04:00
Adam Ierymenko 1f93099e1a Get rid of obsolete musl libc fix. 2020-09-23 21:58:28 -04:00
Joseph Henry b3331c5ec2 Fix buffer overflow in windows tap driver 2020-09-23 15:31:20 -07:00
Grant Limberg ff23d3051f self hosted controller JSON format fix for DNS 2020-09-23 12:16:23 -07:00
Grant Limberg 7d8cfb1fee more magic incantations to make crypto extensions work on Android/ARM64 2020-09-22 10:28:31 -07:00
Grant Limberg 8131680735 AES-NI enabled for Android ARM64 2020-09-22 08:04:16 -07:00
Grant Limberg 9e6dba9066 Enable AES-NI on Android X86-64
Need to find the magic incantation to enable it on ARM64 still
2020-09-21 18:05:25 -07:00
Grant Limberg 0f2887265c AES-NI/NEON detection for iOS
Requires 64-bit CPU
2020-09-21 13:18:05 -07:00
Adam Ierymenko 1ff45020e2 Prefer IPv6 if all else is equal. 2020-09-18 16:27:41 -04:00
Grant Limberg 45c5abe05b add Allow DNS settings to win UI 2020-09-18 10:12:11 -07:00
Grant Limberg e7dafb3ae6 allow DNS field for mac UI 2020-09-18 09:30:43 -07:00
Adam Ierymenko 04f6140da6 AES builds and works now on ARM64. 2020-09-16 22:47:13 +00:00
Grant Limberg afcbc6dd9f clean up some error output 2020-09-16 10:54:14 -07:00
Grant Limberg 4da9bed4fa add 'dump' to cli help 2020-09-16 10:52:23 -07:00
Grant Limberg 221e4ecb12 Add "documentation" networks as IP_SCOPE_PRIVATE
https://en.wikipedia.org/wiki/Reserved_IP_addresses
2020-09-16 10:24:36 -07:00
Grant Limberg 1883a8c9ee Set 198.18.0.0/15 to IP_SCOPE_PRIVATE 2020-09-16 10:15:42 -07:00
Grant Limberg 83d92858c1 Merge branch 'dump' into dev 2020-09-16 10:04:01 -07:00
Grant Limberg cff3152985 windows create dump file on desktop 2020-09-16 10:03:03 -07:00
Grant Limberg 5090e95003 dump basics to stdout on other platforms 2020-09-15 16:50:55 -07:00
Grant Limberg 927aeb15f6 macos output dump to file if possible
if not, write to stdout
2020-09-15 16:50:00 -07:00
Grant Limberg 361ca1e8b4 add link to CoreServices framework 2020-09-15 16:49:19 -07:00
Adam Ierymenko 9adf656db5 Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev 2020-09-14 20:44:46 -04:00
Adam Ierymenko 7219ca0c0f AES works! Only with this or newer nodes. Uses salsa with older ones as usual. 2020-09-14 20:44:21 -04:00
Grant Limberg 3a75950ff4 Merge branch 'dump' into dev 2020-09-14 15:25:34 -07:00
Joseph Henry fa86b8bae0 Change ZT_MULTIPATH_FLOW_EXPIRATION_INTERVAL from 30 seconds to 5 minutes 2020-09-14 15:22:06 -07:00
Joseph Henry f3c9ab8a7e Add minor trace output formatting changes. Change ZT_MULTIPATH_BOND_STATUS_INTERVAL from 30000 to 60000 2020-09-14 15:21:53 -07:00
Grant Limberg ace03d7c7b zerotier-cli dump for Windows 2020-09-14 15:17:59 -07:00
Michael Adams 97801b3b56 Update issue templates 2020-09-14 13:10:41 -07:00
Michael Adams 74d9e1e558 Update issue templates 2020-09-14 12:59:36 -07:00
Michael Adams c210e9e5cf Update issue templates
Cleaned this up substantially
2020-09-14 12:58:29 -07:00
Grant Limberg df640dc39b Merge branch 'dev' of github.com:zerotier/ZeroTierOne into dev 2020-09-14 12:45:11 -07:00
Grant Limberg d980bba49f fix windows compilation 2020-09-14 12:42:51 -07:00
Grant Limberg 059dfee0c3 fix windows compilation 2020-09-14 12:42:39 -07:00
Joseph Henry 55f442f1a9 Removed erroneous issue template 2020-09-12 13:09:51 -07:00
joseph-henry 2b9d9168e0 Update issue templates 2020-09-12 13:08:31 -07:00
Joseph Henry 94669a4709 Update Game issue template 2020-09-12 12:58:10 -07:00
joseph-henry be560eb704 Game Connection Issue
Game connection issues can be resolved on our forums: discuss.zerotier.com
2020-09-12 12:23:49 -07:00
Grant Limberg 36d867c3fa more config dump for macOS 2020-09-11 16:43:30 -07:00
Joseph Henry cf47618ffb Change ZT_MULTIPATH_FLOW_EXPIRATION_INTERVAL from 30 seconds to 5 minutes 2020-09-11 16:09:46 -07:00
Grant Limberg 62f23e0cfd step 1 of zerotier-cli dump
dump status, networks, peers, bonds & version
2020-09-11 15:31:56 -07:00
Joseph Henry 0e8b54f7a1 Add minor trace output formatting changes. Change ZT_MULTIPATH_BOND_STATUS_INTERVAL from 30000 to 60000 2020-09-11 14:47:18 -07:00
Adam Ierymenko 1c9407e016 Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev 2020-09-11 13:40:04 -04:00
Adam Ierymenko cb8d773634 Disable unicast compression as it almost never helps and usually just wastes CPU. 2020-09-11 13:36:21 -04:00
Grant Limberg bbb307aff7 DNS is now toggleable via zerotier-cli set <nwid> allowDNS=[0|1]
Flag is disabled by default as it should be opt-in on each endpoint
2020-09-10 15:59:18 -07:00
Grant Limberg 3db263284b not sure how this got reverted 2020-09-10 13:18:25 -07:00
Grant Limberg d8f041a484 Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev 2020-09-10 12:50:30 -07:00
Adam Ierymenko 120bcbc2c9 Merge branch 'dev' of github.com:zerotier/ZeroTierOne into dev 2020-09-10 15:44:47 -04:00
Grant Limberg 10ccaa2620 Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev 2020-09-10 12:43:58 -07:00
Adam Ierymenko e6b5f8aabd AES work... but disabled in this commit. 2020-09-10 15:43:40 -04:00
Michael Adams 4798689bf3 Merge branch 'dev' of https://github.com/zerotier/ZeroTierOne into dev 2020-09-10 12:43:24 -07:00
Michael Adams 0545e70bd5 Added error messages to use admin/sudo/root 2020-09-10 12:42:11 -07:00
Grant Limberg 5032a8eeac Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev 2020-09-10 11:57:51 -07:00
Adam Ierymenko 1ad555a071 More selective push of AES modifications and refactoring stuff. 2020-09-10 14:48:48 -04:00
Grant Limberg 7d0f6933d6 Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev 2020-09-10 11:38:25 -07:00
Adam Ierymenko 4cd3d0bb76 Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev 2020-09-10 14:37:16 -04:00
Adam Ierymenko 8374553b6a Linux build fix for AES flags. 2020-09-10 14:36:33 -04:00
Grant Limberg eca4052884 Merge branch 'dev-redis' into dev 2020-09-10 11:10:10 -07:00
Michael Adams 2d7a96416c Update issue templates
Include use of Discuss forum as an option for feature requests.
2020-09-08 12:25:40 -07:00
Grant Limberg a1f4397959 linux implementaiton of zerotier-cli dump 2020-08-30 14:19:56 -07:00
Grant Limberg 53d5c9890f missed a rollback
# Conflicts:
#	controller/PostgreSQL.cpp
2020-08-26 15:52:01 -07:00
Grant Limberg 43c108f077 missed a rollback 2020-08-26 15:50:36 -07:00
Grant Limberg 33cc59914a Merge branch 'dev-redis' into dev 2020-08-26 14:52:54 -07:00
Grant Limberg 45b6d11126 Put upserts from controller into single transaction 2020-08-26 14:52:23 -07:00
Adam Ierymenko b7b01da742 Wire up dearmor() path. 2020-08-25 14:13:20 -07:00
Adam Ierymenko 93d6b41898 Disable AES in commit so as not to break other builds. 2020-08-25 08:08:54 -07:00
Adam Ierymenko 47e9fb3ddb Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev 2020-08-25 08:07:23 -07:00
Joseph Henry b1ddba0438 Remove a few old comments 2020-08-24 18:56:49 -07:00
Grant Limberg e7891bfcb0 Merge branch 'dev-redis' into dev 2020-08-21 16:29:13 -07:00
Grant Limberg 7f99c4a779 Sleep 10 seconds between writes to DB 2020-08-21 16:22:28 -07:00
Adam Ierymenko 2ac49d99dd AES integrated on send side. 2020-08-21 14:23:31 -07:00
Adam Ierymenko 3fd8efe642 AES builds now 2020-08-21 09:56:53 -07:00
Adam Ierymenko 06730c7d1d BSL date bump 2020-08-20 12:51:39 -07:00
Grant Limberg 81c9db7a15 fix libs for non-controller builds on macOS 2020-08-18 11:46:29 -07:00
Grant Limberg 8d0a3563e4 Merge branch 'dns' into dev 2020-08-12 13:56:21 -07:00
Grant Limberg c0c215c83c single dns config per network 2020-08-12 13:08:47 -07:00
Grant Limberg 058d888311 More debug logging cleanup 2020-08-12 10:00:09 -07:00
Grant Limberg 30b18d925f clean up some debug logging 2020-08-12 09:16:18 -07:00
Grant Limberg 137d05e799 add setDNS stubs for linux/bsd 2020-08-12 09:14:10 -07:00
Grant Limberg d9c4e644de Windows DNS 2020-08-11 18:55:42 -07:00
Joseph Henry edd960566a Improve bond tracing, fix bond initialization bugs, remove vestigial debug code 2020-08-06 18:10:40 -07:00
Grant Limberg 6868e98904 Get stuff building on Windows
Been a minute since any of this has been updated
2020-08-05 16:04:02 -07:00
Grant Limberg 85a5b0b948 Remove dns config on shutdown
Also add calls to MacDNSHelper to the kext tap
2020-08-05 14:49:45 -07:00
Grant Limberg b9a1719cb1 Let's make sure to clean up our memory 2020-08-05 14:42:19 -07:00
Grant Limberg d6e3164ea1 remove initial attempt at dns config via scutil 2020-08-05 14:42:09 -07:00
Grant Limberg 302ac8fefe DNS config support on macOS 2020-08-05 14:26:11 -07:00
Grant Limberg d2708daa8e debug output 2020-08-04 14:33:18 -07:00
Grant Limberg 88a3c685fb latest 2020-08-04 13:52:57 -07:00
Grant Limberg 2e52a1eebf forgot a couple queries in postgres. trying to pull dns of member not network in embedded network controller
also some debug logging
2020-08-04 09:45:45 -07:00
Grant Limberg d098a99d09 fix memory init issue
and another place where dns data needs to be copied
2020-07-31 11:42:03 -07:00
Grant Limberg 6b197e067a Merge branch 'dev' into dns 2020-07-30 13:15:43 -07:00
Joseph Henry 9f4985b11a Add basic bond health status reporting (listbonds) 2020-07-27 23:01:12 -07:00
Grant Limberg 5b700fa497 println for which notification stream the controller is listening to 2020-07-27 18:37:45 -07:00
Travis LaDuke c92e030a4b Create a bash completion script.
Just adding it to the repo, but it still needs to be dealt with during install.
Probably put it in $ZT_HOME and then symlink to the proper place for the distro?

searches $ZT_HOME/networks.d/ for network IDs
searches HISTORY for 16 digit numbers that look like network IDs.
2020-07-23 13:40:48 -07:00
Grant Limberg 251b06d812 revert redis for member status 2020-07-23 09:38:50 -07:00
Joseph Henry ff50762649 Merge multipath branch into dev branch 2020-07-23 00:40:17 -07:00
Joseph Henry 29ebda62ef Remove (some) debug functions and traces 2020-07-23 00:32:39 -07:00
Joseph Henry a1b2ff772a Add new replacement condition in peer path redundancy logic to fix duplicate paths 2020-07-23 00:15:38 -07:00
Joseph Henry dc784f6213 Comment out Bond and BondController debug traces 2020-07-21 10:22:10 -07:00
Grant Limberg 387039456d Pass 1 at adding DNS to controller 2020-07-20 14:34:19 -07:00
Joseph Henry fd0c906b1b Merge branch 'multipath' of http://git.int.zerotier.com/ZeroTier/ZeroTierOne into multipath 2020-07-14 17:05:42 -07:00
Joseph Henry decd5add2a Fix segfault on unique interface name list generation (for multipath) 2020-07-14 17:05:05 -07:00
Joseph Henry 8eb453e042 Revert to ancient path redundancy check logic 2020-07-06 15:18:17 -07:00
Grant Limberg bd6c97aeb8 dont strip binary 2020-07-06 14:35:05 -07:00
Joseph Henry 29e7fa5c4b Revert to ancient path redundancy check logic 2020-07-06 14:07:31 -07:00
Joseph Henry a23b6d09c0 Fix merge conflict for controller code (minor edit) 2020-06-29 10:27:22 -07:00
Grant Limberg 1bb1dfa87b android changes 2020-06-18 09:32:00 -07:00
Joseph Henry a33a494d60 Adjust terminology 2020-06-17 14:54:13 -07:00
Joseph Henry 5f0ee4fc78 Fix invalid defaultBondingPolicy conditions, Add ZT_MultipathFlowRebalanceStrategy, Add basic hysteresis mechanism to flow re-assignment 2020-06-16 12:30:21 -07:00
Grant Limberg d0aacfddb7 one more spot 2020-06-04 14:12:20 -07:00
Grant Limberg 9b92ad7772 handle case of no networks and/or no members 2020-06-04 14:06:30 -07:00
Grant Limberg 17c7ae20cc force add libredis++.a for mac 2020-06-04 13:46:16 -07:00
Joseph Henry fa5c8ef434 Fix timers, fix flow count discrepancy after flow removal, fix balance-aware flow re-assignment when one or more links go down 2020-06-01 22:58:58 -07:00
Joseph Henry 1dca7b92cf Remove exit condition for bond creation during re-learning of previously-known paths 2020-05-31 17:30:41 -07:00
Joseph Henry 5e122b95e7 Fix segfault during balance-rr when link is brought down 2020-05-30 21:21:22 -07:00
Grant Limberg 135a547889 No longer update both pgsql & redis 2020-05-28 19:22:07 -07:00
Grant Limberg 06de25a680 bump online notification pause to 100ms
also put all online notification redis commands into a single tx
2020-05-27 22:25:07 -07:00
Grant Limberg 5692402d32 A little more cleanup 2020-05-27 21:02:30 -07:00
Grant Limberg ad7ae5a372 list of all network-node pairs 2020-05-27 20:43:31 -07:00
Grant Limberg 9794e31a64 Temporary online notification thread hack
Updates both Redis and Postgres
2020-05-27 20:43:31 -07:00
Grant Limberg 2f0f0e4f53 redis init optimization 2020-05-27 20:43:31 -07:00
Grant Limberg 7bde004c7c Replace scan of Redis with iteration of _networks map 2020-05-27 20:41:47 -07:00
Joseph Henry a8f830aa9c Add multipath documentation to service/ 2020-05-26 18:29:19 -07:00
Joseph Henry 7266550c22 Remove vestigial constructor, fix typos, clean up code 2020-05-26 17:57:37 -07:00
Joseph Henry 7ed960297b Merge changes from dev into multipath 2020-05-26 17:57:09 -07:00
Grant Limberg 39da360725 add online controller list in Redis 2020-05-22 14:16:04 -07:00
Grant Limberg beedee4401 fix typo 2020-05-22 11:07:12 -07:00
Grant Limberg fb0e8aebdb keep list of active networks in redis 2020-05-22 10:07:39 -07:00
Grant Limberg 13929aee6f reduce log chattiness 2020-05-21 09:49:55 -07:00
Grant Limberg c2409ad6c9 fix connection to redis cluster in online notification thread 2020-05-21 09:49:41 -07:00
Grant Limberg 08cb72bdba Temp object was being destroyed before connection was used 2020-05-21 09:33:03 -07:00
Grant Limberg d24c8d858c include climits for Linux 2020-05-20 16:54:18 -07:00
Grant Limberg 879ef58565 Finalize Redis integration 2020-05-20 16:28:28 -07:00
Grant Limberg 8b8399efbc Error recovery for network & member stream watchers 2020-05-20 11:42:51 -07:00
Grant Limberg 0f17508cac error recovery in redis online notification
If a redis cluster member fails over to the slave, we'll get an error from not specifying the key for the insert.  Recover from that instead of crashing the controller
2020-05-20 11:38:04 -07:00
Grant Limberg 7a138f963c TIL: Creating a redis transaction without sending any commands throws an exception
So let's not do that
2020-05-19 17:47:06 -07:00
Grant Limberg b637ced1ee Track member status in Redis 2020-05-19 17:47:02 -07:00
Grant Limberg ee91c81799 Initialize C arrays to NULL in NetworkConfig() constructor 2020-05-19 17:40:51 -07:00
Grant Limberg 8ac42b4600 controller status query fix 2020-05-19 17:40:11 -07:00
Grant Limberg 844725237d Add new ZT_ result codes that were added 2020-05-18 10:31:17 -07:00
Joseph Henry 58d567c331 Formatting 2020-05-14 20:09:25 -07:00
Joseph Henry 4465952d11 Merge remote-tracking branch 'origin/dev' into multipath 2020-05-14 16:06:55 -07:00
Grant Limberg f8ba1962e6 fix equals() methods 2020-05-14 15:08:37 -07:00
Grant Limberg 701960def5 Track member status in Redis 2020-05-13 17:23:27 -07:00
Grant Limberg 15c0c1db39 finish the RabbitMQ-ectomy 2020-05-13 09:46:41 -07:00
Grant Limberg c9f942f79b can now build centos8 docker container with Redis support 2020-05-12 15:17:57 -07:00
Grant Limberg 663df9118a fix centos8 build 2020-05-12 14:04:03 -07:00
Grant Limberg 5d47697ade helps to add the actual library 2020-05-12 13:04:16 -07:00
Grant Limberg 5babd01d40 centos8 binaries for libhiredis and libredis++ 2020-05-12 12:58:09 -07:00
Grant Limberg aab96964b6 Put debug output behind ZT_TRACE 2020-05-12 12:48:58 -07:00
Grant Limberg c6518afa7a Make sure the streams clean up after themselves 2020-05-12 12:37:05 -07:00
Grant Limberg 563655a1a4 Redis now usable as a message queue 2020-05-12 11:56:19 -07:00
Joseph Henry a50e8e9878 Add Bonds, Slaves, and Flows 2020-05-12 01:35:48 -07:00
Joseph Henry de9cfbe9b0 Merge dev into multipath 2020-05-12 00:08:52 -07:00
Grant Limberg d699116795 mac deps 2020-05-11 16:48:14 -07:00
Grant Limberg 8f3a0b17ad redis++ binaries for mac 2020-05-11 15:24:13 -07:00
Grant Limberg b5c661c5d5 add libhiredis.a for mac 2020-05-11 15:06:10 -07:00
Grant Limberg 154470b570 add original hiredis 2020-05-11 15:03:56 -07:00
Grant Limberg 73b1d57b13 rip out rabbitMQ 2020-05-11 12:29:06 -07:00
Grant Limberg acb4ef0f12 add hiredis-vip to controller build 2020-05-11 11:48:05 -07:00
Joseph Henry 32a78b5f61 Fix preprocessor typo in previous commit 2020-03-31 20:34:48 -07:00
Joseph Henry 54f9f2ad53 Add special case for Ubiquiti routers in platformDefaultHomePath() 2020-03-31 20:27:41 -07:00
Adam Ierymenko f12c75e68b Merge branch 'master' of github.com:zerotier/ZeroTierOne 2020-03-25 13:40:13 -07:00
Travis LaDuke b6b11dbf82 Document allowSecondaryPort 2020-03-25 10:26:14 -07:00
Grant Limberg 0d42108254 member ip inserts DO NOTHING on conflict 2020-03-04 09:45:45 -08:00
Grant Limberg f6026f94a5 More fun with dupes 2020-03-03 23:52:53 -08:00
Grant Limberg e702942041 Fix duplicate assigned IP check when adding assigned IPs to database 2020-03-03 13:34:24 -08:00
Grant Limberg 00ac35ad62 add --no-cache for docker central controller build 2020-02-24 11:06:08 -08:00
Grant Limberg 12a92fc4a1 Un-log & some production build image fixes 2020-02-24 11:02:05 -08:00
Grant Limberg baa14a63c9 It's LOG! It's LOG!
It's big, it's heavy, it's wood
2020-02-24 10:20:47 -08:00
Grant Limberg cce51cea5d Merge branch 'pipeline' into dev 2020-02-03 13:48:46 -08:00
Grant Limberg ba4324f992 Update jenkinsfile for new build process 2020-02-03 12:51:46 -08:00
Grant Limberg 81e982991b add kali rolling 2020-02-03 10:46:39 -08:00
Grant Limberg f6f4fba90e Add docker configs for multi arch jenkins builds 2020-02-03 09:57:48 -08:00
root 23d5a972ba disable lintian because sid/bullseye are sitting there running /bin/sleep 3 endlessly on this step 2020-01-31 13:15:23 -08:00
root d5467e130e disable lintian because sid/bullseye are sitting there running /bin/sleep 3 endlessly on this step 2020-01-31 13:13:02 -08:00
Grant Limberg 5faf0f8ab6 whoops 2020-01-23 09:46:15 -08:00
Grant Limberg 0f17cd4791 Update to jenkinsfile for multi-platform release builds 2020-01-23 09:41:17 -08:00
Grant Limberg e0518ab176 testing armv5t instead of armv5 flag 2020-01-22 16:36:26 -08:00
Grant Limberg 28df0c2e38 Merge branch 'dev' of github.com:zerotier/ZeroTierOne into dev 2019-12-17 10:56:53 -08:00
Grant Limberg 7696d45093 Fix handling of invalid conf file
Fixes GitHub issue #1068
2019-12-17 10:51:01 -08:00
Grant Limberg 2a7d4fcde5 update vs project settings 2019-12-17 10:49:21 -08:00
Grant Limberg 995fa4a76c Merge branch 'refs/heads/master' into dev 2019-11-22 15:00:39 -08:00
Grant Limberg d8597884f6 jenkins windows 2019-11-22 11:25:31 -08:00
Grant Limberg a993ddc54d Merge branch 'refs/heads/master' into dev 2019-11-21 15:12:37 -08:00
Grant Limberg 54e25084fe re-enable CI on master 2019-11-21 14:51:33 -08:00
Grant Limberg e58a0b3efb build central controller docker images on macOS 2019-11-21 14:49:24 -08:00
Grant Limberg 381f15382c Convert central-controller docker build to use a builder subcontainer 2019-11-20 13:56:26 -08:00
Grant Limberg 91d679af15 Merge pull request #1087 from skunkwerks/dev
drop -Werror from DEBUG builds
2019-11-19 08:47:38 -08:00
Dave Cottlehuber 8396f16dd2 drop -Werror from DEBUG builds
Appease compilers. Thanks @glimberg for the diff.
Closes #1086
2019-11-19 16:45:06 +00:00
Travis LaDuke bb84c9b65c Merge pull request #1082 from laduke/controller-readme
Add Managed Routes example to controller readme.
2019-11-15 10:35:13 -08:00
Travis LaDuke e744c95c5b Add Managed Routes example to controller readme. 2019-11-15 10:29:39 -08:00
Travis LaDuke a725d1a29a Merge pull request #1081 from 0xflotus/patch-1
fixed small error
2019-11-14 10:30:30 -08:00
0xflotus 38feda1594 fixed small error 2019-11-14 10:17:05 +01:00
Grant Limberg dc19deb6c3 . 2019-11-13 12:46:52 -08:00
Grant Limberg 86abd31659 fix log line 2019-11-13 12:46:16 -08:00
Joseph Henry b8e70d866a Compile fix for unterminated conditional directive 2019-11-12 09:46:39 -08:00
Joseph Henry e1e27eb19d Bugfix for incorrect port binding of secondary and tertiary ports 2019-11-11 12:03:49 -08:00
Grant Limberg 088dab4f04 Let's not print this to the logs 2019-10-31 15:13:20 -07:00
Grant Limberg cc79ec6179 use std::string instead of const char* in rmq struct 2019-10-31 15:08:59 -07:00
Grant Limberg 74478b24b0 add librabbitmq binaries for macos for testing central controller 2019-10-31 14:04:25 -07:00
Travis LaDuke bad95d7c67 Update cli help to say <network ID> instead of <network>
Closes #1054
2019-10-15 13:15:45 -07:00
Joseph Henry afca5c2536 Partial implementation of ZT_MULTIPATH_BALANCE_RR_OPAQUE 2019-08-20 23:28:59 -07:00
Joseph Henry 5453cab22b Added flow-awareness check for policies, more work on ZT_MULTIPATH_ACTIVE_BACKUP 2019-08-20 18:50:38 -07:00
Joseph Henry b0a91c0187 Partial implementation of ZT_MULTIPATH_ACTIVE_BACKUP 2019-08-20 16:19:20 -07:00
Joseph Henry 963113b86d Minor adjustment to how _allowTcpFallbackRelay is disabled when _multipathMode is set 2019-08-20 10:38:18 -07:00
Joseph Henry 0634214f2c Added notion of Flows 2019-08-19 21:52:33 -07:00
Joseph Henry 15e44f0ddd Merge remote-tracking branch 'origin/dev' into multipath 2019-08-14 11:25:40 -07:00
Joseph Henry b0e86d11c9 Minor. Name change for trace functions 2019-08-14 11:24:03 -07:00
Joseph Henry 5b7d60f5cd Whoops 2019-08-13 14:42:48 -07:00
Joseph Henry 640567a021 More informative link aggregation trace outputs 2019-08-13 14:34:47 -07:00
Joseph Henry 2593c6efee Adjusted multipath constants 2019-08-13 14:34:11 -07:00
Joseph Henry 36d368cb78 Check for (local multipath support only) during decision to decrease direct path push interval. This prevents the chicken-and-egg situation of not knowing if two peers can support multipath on both ends and thusly not sending eachother their direct paths quickly enough. 2019-08-13 13:26:41 -07:00
Joseph Henry 2e9fa7a811 Merge remote-tracking branch 'origin/dev' into multipath 2019-08-13 12:42:19 -07:00
Joseph Henry d8ce1f7914 Added ZT_DIRECT_PATH_PUSH_INTERVAL_MULTIPATH to decrease link aggregation time 2019-08-13 12:41:30 -07:00
Joseph Henry 3c7e25ed58 Added call to computeAggregateAllocation() in multipath mode=1 to give realtime allocation output 2019-08-12 17:04:27 -07:00
Joseph Henry 77ae929eb3 Merge master into multipath 2019-08-12 11:40:13 -07:00
Joseph Henry 258b1c8b55 Merge branch 'edge' into multipath 2018-09-12 13:57:57 -07:00
Joseph Henry 1e66854b59 Temporarily added SO_REUSEADDR to netlink binding code 2018-08-07 12:57:40 -07:00
Joseph Henry 12f2df5586 uncommented status fields 2018-08-07 12:39:06 -07:00
Joseph Henry 20a25a6a45 Added debug traces 2018-08-06 14:31:12 -07:00
Joseph Henry 08d9dc5c68 Updated protocol version and versioning blurb 2018-08-06 10:29:37 -07:00
407 changed files with 76078 additions and 9099 deletions

No files matched your search

+2
View File
@@ -0,0 +1,2 @@
.git/
workspace/
-46
View File
@@ -1,46 +0,0 @@
---
name: Bug report
about: Create a report to help us improve
---
**Alternative, faster ways to get help**
If you have just started using ZeroTier, here are some places to get help:
- my.zerotier.com has a _Community_ tab. It's a live chat with other users and the developers.
- [ZeroTier Knowledge Base](https://zerotier.atlassian.net/wiki/spaces/SD/overview)
- www.zerotier.com has a Contact Us button
- email contact@zerotier.com
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Create a Network '...'
2. Install zerotier-one '....'
3. '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots or console output to help explain your problem.
**Desktop (please complete the following information):**
- OS: [e.g. Mac, Linux, Windows, BSD]
- OS/Distribution Version
- ZeroTier Version [e.g. 1.2.4]
- Hardware [e.g. raspberry pi 3]
**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Version [e.g. 1.2.4]
**Additional context**
Add any other context about the problem here.
- ZeroTier Network Configuration
- Router Config
- Firewall Config (try turning the firewall off)
- General Network Environment: [ e.g Home, University Campus, Corporate LAN ]
+50
View File
@@ -0,0 +1,50 @@
---
name: Bugs and Issues
about: Create a report to help us improve
title: ''
labels: NEEDS TRIAGE
assignees: ''
---
# Before filing a Bug Report
_Using these will ensure you get quicker support, and make this space available for code-related issues. Thank you!_
- [Knowledge Base](https://zerotier.atlassian.net/wiki/spaces/SD/overview) => Guides and documentation on how to use ZeroTier.
- [Discuss Forum](https://discuss.zerotier.com/) => Our discussion forum for users and support to mutally resolve issues & suggest ideas.
- [Reddit](https://www.reddit.com/r/zerotier/) => Our subreddit, which we monitor regularly and is fairly active.
- https://www.zerotier.com/contact/ => Sales and licensing queries
- https://zerotier.atlassian.net/servicedesk/customer/portals => Customer Support Portal
# If you still want to file a Bug Report
## Required
- What you expect to be happening.
- What is actually happening?
- Any steps to reproduce the error.
- Any screenshots that would help us out.
## Additional information
**Desktop (please complete the following information):**
- OS: [e.g. Mac, Linux, Windows, BSD]
- OS/Distribution Version
- ZeroTier Version [e.g. 1.4.6]
**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- ZeroTier Version [e.g. 1.4.6]
**Embedded & NAS (please complete the following information):**
- Device: [e.g. Synology, Pi4]
- OS/Distribution (if applicable)
- ZeroTier Version [e.g. 1.4.6]
**Additional context**
- ZeroTier Network Configuration: IPv4 & IPv6 networks defined on your ZeroTier Central
- Router Config: are you permitting port 9993, uPnP, and NAT-PMP?
- Firewall Config: are you permitting port 9993 on your OS; setting it to "Private" on Windows?
- Are you using this at home, in an office, college, etc?
+5 -9
View File
@@ -1,17 +1,13 @@
---
name: Feature request
about: Suggest an idea for this project
title: "[Feature Request] "
labels: suggestion
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
If there is something you'd like to have added to ZeroTier, to go to https://discuss.zerotier.com/c/feature-requests/ instead. Issues there can be voted on and discussed in-depth.
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.
Thank you!
@@ -0,0 +1,15 @@
---
name: Game Connection Issue
about: Game issues are better served by forum posts
title: Please go to our Discuss or Reddit for game-related issues. Thanks!
labels: wontfix
assignees: ''
---
Are you having trouble connecting to a game on your virtual network after installing ZeroTier?
- [ ] Yes
- [ ] No
If you answered yes, then it is very likely that your question would be better answered on our [Discuss ](https://discuss.zerotier.com) forum or [Reddit](https://www.reddit.com/r/zerotier/) community; we monitor both regularly. We also have extensive documentation on our [Knowledge Base](https://zerotier.atlassian.net/wiki/spaces/SD/overview). Thank you!
+3 -1
View File
@@ -33,7 +33,6 @@ Thumbs.db
/ext/installfiles/windows/Prerequisites
/ext/installfiles/windows/*-cache
/ZeroTier One.msi
/windows/.vs
*.vcxproj.backup
/windows/TapDriver6/Win7Debug
/windows/TapDriver6/win7Release
@@ -42,6 +41,7 @@ Thumbs.db
enc_temp_folder
/windows/copyutil/bin
/windows/copyutil/obj
.vs/
# *nix/Mac build droppings
/build-*
@@ -120,3 +120,5 @@ __pycache__
*~
attic/world/*.c25519
attic/world/mkworld
workspace/
workspace2/
Vendored
+358 -77
View File
@@ -1,84 +1,365 @@
#!/usr/bin/env groovy
node('master') {
checkout scm
pipeline {
options {
disableConcurrentBuilds()
preserveStashes(buildCount: 10)
timestamps()
}
parameters {
booleanParam(name: "BUILD_ALL", defaultValue: false, description: "Build all supported platform/architecture combos. Defaults to x86/x64 only")
}
def changelog = getChangeLog currentBuild
mattermostSend "Building ${env.JOB_NAME} #${env.BUILD_NUMBER} \n Change Log: \n ${changelog}"
}
parallel 'centos7': {
node('centos7') {
try {
checkout scm
stage('Build Centos 7') {
sh 'make -f make-linux.mk'
agent none
stages {
stage ("Build") {
steps {
script {
def tasks = [:]
tasks << buildStaticBinaries()
tasks << buildDebianNative()
tasks << buildCentosNative()
parallel tasks
}
}
}
catch (err) {
currentBuild.result = "FAILURE"
mattermostSend color: '#ff0000', message: "${env.JOB_NAME} broken on Centos 7 (<${env.BUILD_URL}|Open>)"
throw err
stage ("Package Static") {
steps {
script {
parallel packageStatic()
}
}
}
}
// }, 'android-ndk': {
// node('android-ndk') {
// try {
// checkout scm
// stage('Build Android NDK') {
// sh "/android/android-ndk-r15b/ndk-build -C $WORKSPACE/java ZT1=${WORKSPACE}"
// }
// }
// catch (err) {
// currentBuild.result = "FAILURE"
// mattermostSend color: '#ff0000', message: "${env.JOB_NAME} broken on Android NDK (<${env.BUILD_URL}|Open>)"
// throw err
// }
// }
// }, 'macOS': {
// node('macOS') {
// try {
// checkout scm
// stage('Build macOS') {
// sh 'make -f make-mac.mk'
// }
// stage('Build macOS UI') {
// sh 'cd macui && xcodebuild -target "ZeroTier One" -configuration Debug'
// }
// }
// catch (err) {
// currentBuild.result = "FAILURE"
// mattermostSend color: '#ff0000', message: "${env.JOB_NAME} broken on macOS (<${env.BUILD_URL}|Open>)"
// throw err
// }
// }
// }, 'windows': {
// node('windows') {
// try {
// checkout scm
// stage('Build Windows') {
// bat '''CALL "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\vcvarsall.bat" amd64
// git clean -dfx
// msbuild windows\\ZeroTierOne.sln
// '''
// }
// }
// catch (err) {
// currentBuild.result = "FAILURE"
// mattermostSend color: '#ff0000', message: "${env.JOB_NAME} broken on Windows (<${env.BUILD_URL}|Open>)"
// throw err
// }
// }
}
mattermostSend color: "#00ff00", message: "${env.JOB_NAME} #${env.BUILD_NUMBER} Complete (<${env.BUILD_URL}|Show More...>)"
def buildStaticBinaries() {
def tasks = [:]
def dist = ["alpine"]
def archs = []
if (params.BUILD_ALL == true) {
archs = ["arm64", "amd64", "i386", "armhf", "armel", "ppc64le", "s390x"]
} else {
archs = ["amd64", "i386"]
}
tasks << getTasks(dist, archs, { distro, platform ->
def myNode = {
node ('linux-build') {
dir ("build") {
checkout scm
}
sh "echo ${distro}-${platform}"
def runtime = docker.image("ztbuild/${distro}-${platform}:latest")
runtime.inside {
dir("build") {
sh 'make -j8 ZT_STATIC=1 all'
sh "file ./zerotier-one"
sh "mv zerotier-one zerotier-one-static-${platform}"
stash includes: 'zerotier-one-static-*', name: "static-${platform}"
}
cleanWs deleteDirs: true, disableDeferredWipeout: true, notFailBuild: true
}
}
}
return myNode
})
return tasks
}
def getTasks(axisDistro, axisPlatform, task) {
def tasks = [:]
for(int i=0; i< axisDistro.size(); i++) {
def axisDistroValue = axisDistro[i]
for(int j=0; j< axisPlatform.size(); j++) {
def axisPlatformValue = axisPlatform[j]
tasks["${axisDistroValue}/${axisPlatformValue}"] = task(axisDistroValue, axisPlatformValue)
}
}
return tasks
}
def packageStatic() {
def tasks = [:]
def centos6 = ["centos6"]
def centos6Arch = ["i386", "amd64"]
tasks << getTasks(centos6, centos6Arch, { distro, arch ->
def myNode = {
node ('linux-build') {
dir ("build") {
checkout scm
}
def runtime = docker.image("ztbuild/${distro}-${arch}:latest")
runtime.inside {
dir("build") {
unstash "static-${arch}"
sh "mv zerotier-one-static-${arch} zerotier-one && chmod +x zerotier-one"
sh "make redhat"
sh "mkdir -p ${distro}"
sh "cp -av `find ~/rpmbuild/ -type f -name \"*.rpm\"` ${distro}/"
archiveArtifacts artifacts: "${distro}/*.rpm", onlyIfSuccessful: true
}
}
cleanWs deleteDirs: true, disableDeferredWipeout: true, notFailBuild: true
}
}
return myNode
})
def centos7 = ["centos7"]
def centos7Arch = ["i386"]
tasks << getTasks(centos7, centos7Arch, { distro, arch ->
def myNode = {
node ('linux-build') {
dir ("build") {
checkout scm
}
def runtime = docker.image("ztbuild/${distro}-${arch}:latest")
runtime.inside {
dir("build") {
unstash "static-${arch}"
sh "mv zerotier-one-static-${arch} zerotier-one && chmod +x zerotier-one"
sh "make redhat"
sh "mkdir -p ${distro}"
sh "cp -av `find ~/rpmbuild/ -type f -name \"*.rpm\"` ${distro}/"
archiveArtifacts artifacts: "${distro}/*.rpm", onlyIfSuccessful: true
}
}
cleanWs deleteDirs: true, disableDeferredWipeout: true, notFailBuild: true
}
}
return myNode
})
if (params.BUILD_ALL == true) {
def clefos7 = ["clefos"]
def clefos7Arch = ["s390x"]
tasks << getTasks(clefos7, clefos7Arch, { distro, arch ->
def myNode = {
node ('linux-build') {
dir ("build") {
checkout scm
}
def runtime = docker.image("ztbuild/${distro}-${arch}:latest")
runtime.inside {
dir("build/") {
unstash "static-${arch}"
sh "mv zerotier-one-static-${arch} zerotier-one && chmod +x zerotier-one"
sh "make redhat"
sh "mkdir -p ${distro}"
sh "cp -av `find ~/rpmbuild/ -type f -name \"*.rpm\"` ${distro}/"
archiveArtifacts artifacts: "${distro}/*.rpm", onlyIfSuccessful: true
}
}
cleanWs deleteDirs: true, disableDeferredWipeout: true, notFailBuild: true
}
}
return myNode
})
}
def debianJessie = ["debian-jessie"]
def debianJessieArchs = []
if (params.BUILD_ALL == true) {
debianJessieArch = ["armhf", "armel", "amd64", "i386"]
} else {
debianJessieArch = ["amd64", "i386"]
}
tasks << getTasks(debianJessie, debianJessieArch, { distro, arch ->
def myNode = {
node ('linux-build') {
dir ("build") {
checkout scm
}
def runtime = docker.image("ztbuild/${distro}-${arch}:latest")
runtime.inside {
sh "ls -la ."
dir('build/') {
sh "ls -la ."
unstash "static-${arch}"
sh "pwd"
sh "mv zerotier-one-static-${arch} zerotier-one && chmod +x zerotier-one && file ./zerotier-one"
sh "mv -f debian/rules.static debian/rules"
sh "make debian"
}
sh "mkdir -p ${distro}"
sh "mv *.deb ${distro}"
archiveArtifacts artifacts: "${distro}/*.deb", onlyIfSuccessful: true
}
cleanWs deleteDirs: true, disableDeferredWipeout: true, notFailBuild: true
}
}
return myNode
})
def ubuntuTrusty = ["ubuntu-trusty"]
def ubuntuTrustyArch = []
if (params.BUILD_ALL == true) {
ubuntuTrustyArch = ["i386", "amd64", "armhf", "arm64", "ppc64le"]
} else {
ubuntuTrustyArch = ["i386", "amd64"]
}
tasks << getTasks(ubuntuTrusty, ubuntuTrustyArch, { distro, arch ->
def myNode = {
node ('linux-build') {
dir ("build") {
checkout scm
}
def runtime = docker.image("ztbuild/${distro}-${arch}:latest")
runtime.inside {
sh "ls -la ."
dir('build/') {
sh "ls -la ."
unstash "static-${arch}"
sh "pwd"
sh "mv zerotier-one-static-${arch} zerotier-one && chmod +x zerotier-one && file ./zerotier-one"
sh "mv -f debian/rules.static debian/rules"
sh "make debian"
}
sh "mkdir -p ${distro}"
sh "mv *.deb ${distro}"
archiveArtifacts artifacts: "${distro}/*.deb", onlyIfSuccessful: true
}
cleanWs deleteDirs: true, disableDeferredWipeout: true, notFailBuild: true
}
}
return myNode
})
def debianWheezy = ["debian-wheezy"]
def debianWheezyArchs = []
if (params.BUILD_ALL == true) {
debianWheezyArchs = ["armhf", "armel", "amd64", "i386"]
} else {
debianWheezyArchs = ["amd64", "i386"]
}
tasks << getTasks(debianJessie, debianJessieArch, { distro, arch ->
def myNode = {
node ('linux-build') {
dir ("build") {
checkout scm
}
def runtime = docker.image("ztbuild/${distro}-${arch}:latest")
runtime.inside {
dir('build/') {
unstash "static-${arch}"
sh "mv zerotier-one-static-${arch} zerotier-one && chmod +x zerotier-one && file ./zerotier-one"
sh "mv -f debian/rules.wheezy.static debian/rules"
sh "mv -f debian/control.wheezy debian/control"
sh "make debian"
}
sh "mkdir -p ${distro}"
sh "mv *.deb ${distro}"
archiveArtifacts artifacts: "${distro}/*.deb", onlyIfSuccessful: true
}
cleanWs deleteDirs: true, disableDeferredWipeout: true, notFailBuild: true
}
}
return myNode
})
return tasks
}
def buildDebianNative() {
def tasks = [:]
def buster = ["debian-buster", "debian-stretch", "debian-bullseye", "debian-sid"]
def busterArchs = []
if (params.BUILD_ALL) {
busterArchs = ["s390x", "ppc64le", "i386", "armhf", "armel", "arm64", "amd64"]
} else {
busterArchs = ["amd64", "i386"]
}
def build = { distro, arch ->
def myNode = {
node ('linux-build') {
dir ("build") {
checkout scm
}
def runtime = docker.image("ztbuild/${distro}-${arch}:latest")
runtime.inside {
dir("build") {
sh 'make debian'
}
sh "mkdir -p ${distro}"
sh "mv *.deb ${distro}"
archiveArtifacts artifacts: "${distro}/*.deb", onlyIfSuccessful: true
cleanWs deleteDirs: true, disableDeferredWipeout: true, notFailBuild: true
}
}
}
return myNode
}
tasks << getTasks(buster, busterArchs, build)
// bash is broken when running under QEMU-s390x on Xenial
def xenial = ["ubuntu-xenial"]
def xenialArchs = []
if (params.BUILD_ALL == true) {
xenialArchs = ["i386", "amd64", "armhf", "arm64", "ppc64le"]
} else {
xenialArchs = ["i386", "amd64"]
}
tasks << getTasks(xenial, xenialArchs, build)
def ubuntu = ["ubuntu-bionic", "ubuntu-eoan"]
def ubuntuArchs = []
if (params.BUILD_ALL == true) {
ubuntuArchs = ["i386", "amd64", "armhf", "arm64", "ppc64le", "s390x"]
} else {
ubuntuArchs = ["i386", "amd64"]
}
tasks << getTasks(ubuntu, ubuntuArchs, build)
def kali = ["kali-rolling"]
def kaliArchs = ["amd64"]
tasks << getTasks(kali, kaliArchs, build)
return tasks
}
def buildCentosNative() {
def tasks = [:]
def build = { distro, arch ->
def myNode = {
node ('linux-build') {
dir ("build") {
checkout scm
}
def runtime = docker.image("ztbuild/${distro}-${arch}:latest")
runtime.inside {
dir("build") {
sh 'make -j4'
sh 'make redhat'
sh "mkdir -p ${distro}"
sh "cp -av `find ~/rpmbuild/ -type f -name \"*.rpm\"` ${distro}/"
archiveArtifacts artifacts: "${distro}/*.rpm", onlyIfSuccessful: true
}
cleanWs deleteDirs: true, disableDeferredWipeout: true, notFailBuild: true
}
}
}
return myNode
}
def centos8 = ["centos8"]
def centos8Archs = []
if (params.BUILD_ALL == true) {
centos8Archs = ["amd64", "arm64", "ppc64le"]
} else {
centos8Archs = ["amd64"]
}
tasks << getTasks(centos8, centos8Archs, build)
def centos7 = ["centos7"]
def centos7Archs = ["amd64"]
tasks << getTasks(centos7, centos7Archs, build)
return tasks
}
+1 -1
View File
@@ -47,7 +47,7 @@ Additional Use Grant: You may make use of the Licensed Work, provided you
services, social welfare, senior care, child care, and
the care of persons with disabilities.
Change Date: 2023-01-01
Change Date: 2025-01-01
Change License: Apache License version 2.0 as published by the Apache
Software Foundation
+1 -1
View File
@@ -5,7 +5,7 @@ ZeroTier is a smart programmable Ethernet switch for planet Earth. It allows all
This is accomplished by combining a cryptographically addressed and secure peer to peer network (termed VL1) with an Ethernet emulation layer somewhat similar to VXLAN (termed VL2). Our VL2 Ethernet virtualization layer includes advanced enterprise SDN features like fine grained access control rules for network micro-segmentation and security monitoring.
All ZeroTier traffic is encrypted end-to-end using secret keys that only you control. Most traffic flows peer to peer, though we offer free (but slow) relaying for users who cannot establish peer to peer connetions.
All ZeroTier traffic is encrypted end-to-end using secret keys that only you control. Most traffic flows peer to peer, though we offer free (but slow) relaying for users who cannot establish peer to peer connections.
The goals and design principles of ZeroTier are inspired by among other things the original [Google BeyondCorp](https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43231.pdf) paper and the [Jericho Forum](https://en.wikipedia.org/wiki/Jericho_Forum) with its notion of "deperimeterization."
+41
View File
@@ -1,6 +1,47 @@
ZeroTier Release Notes
======
# 2020-11-19 -- Version 1.6.0
Version 1.6.0 is a major release that incorporates back-ported features from the 2.0 branch, which is still under development. It also fixes a number of issues.
New features and improvements (including those listed under 1.5.0):
* **Apple Silicon** (MacOS ARM64) native support via universal binary. ZeroTier now requires the very latest Xcode to build.
* **Linux performance improvements** for up to 25% faster tun/tap I/O performance on multi-core systems.
* **Multipath support** with modes modeled after the Linux kernel's bonding driver. This includes active-passive and active-active modes with fast failover and load balancing. See section 2.1.5 of the manual.
* **DNS configuration** push from network controllers to end nodes, with locally configurable permissions for whether or not push is allowed.
* **AES-GMAC-SIV** encryption mode, which is both somewhat more secure and significantly faster than the old Salsa20/12-Poly1305 mode on hardware that supports AES acceleration. This includes virtually all X86-64 chips and most ARM64. This mode is based on AES-SIV and has been audited by Trail of Bits to ensure that it is equivalent security-wise.
Bug fixes:
* **Managed route assignment fixes** to eliminate missing routes on Linux and what we believe to be the source of sporadic high CPU usage on MacOS.
* **Hang on shutdown** issues should be fixed.
* **Sporadic multicast outages** should be fixed.
Known remaining issues:
* AES hardware acceleration is not yet supported on 32-bit ARM, PowerPC (32 or 64), or MIPS (32 or 64) systems. Currently supported are X86-64 and ARM64/AARCH64 with crypto extensions.
# 2020-10-05 -- Version 1.5.0 (actually 1.6.0-beta1)
Version 1.6.0 (1.5.0 is a beta!) is a significant release that incorporates a number of back-ported fixes and features from the ZeroTier 2.0 tree.
Major new features are:
* **Multipath support** with modes modeled after the Linux kernel's bonding driver. This includes active-passive and active-active modes with fast failover and load balancing. See section 2.1.5 of the manual.
* **DNS configuration** push from network controllers to end nodes, with locally configurable permissions for whether or not push is allowed.
* **AES-GMAC-SIV** encryption mode, which is both somewhat more secure and significantly faster than the old Salsa20/12-Poly1305 mode on hardware that supports AES acceleration. This includes virtually all X86-64 chips and most ARM64. This mode is based on AES-SIV and has been audited by Trail of Bits to ensure that it is equivalent security-wise.
Known issues that are not yet fixed in this beta:
* Some Mac users have reported periods of 100% CPU in kernel_task and connection instability after leaving networks that have been joined for a period of time, or needing to kill ZeroTier and restart it to finish leaving a network. This doesn't appear to affect all users and we haven't diagnosed the root cause yet.
* The service sometimes hangs on shutdown requiring a kill -9. This also does not affect all systems or users.
* AES hardware acceleration is not yet supported on 32-bit ARM, PowerPC (32 or 64), or MIPS (32 or 64) systems. Currently supported are X86-64 and ARM64/AARCH64 with crypto extensions.
* Some users have reported multicast/broadcast outages on networks lasting up to 30 seconds. Still investigating.
We're trying to fix all these issues before the 1.6.0 release. Stay tuned.
# 2019-08-30 -- Version 1.4.6
* Update default root list to latest
+3 -1
View File
@@ -4,7 +4,7 @@
* Use of this software is governed by the Business Source License included
* in the LICENSE.TXT file in the project's root directory.
*
* Change Date: 2023-01-01
* Change Date: 2025-01-01
*
* On the date above, in accordance with the Business Source License, use
* of this software will be governed by version 2.0 of the Apache License.
@@ -48,6 +48,8 @@ void DB::initNetwork(nlohmann::json &network)
{ "type","ACTION_ACCEPT" }
}};
}
if (!network.count("dns")) network["dns"] = nlohmann::json::array();
network["objtype"] = "network";
}
+1 -1
View File
@@ -4,7 +4,7 @@
* Use of this software is governed by the Business Source License included
* in the LICENSE.TXT file in the project's root directory.
*
* Change Date: 2023-01-01
* Change Date: 2025-01-01
*
* On the date above, in accordance with the Business Source License, use
* of this software will be governed by version 2.0 of the Apache License.
+1 -1
View File
@@ -4,7 +4,7 @@
* Use of this software is governed by the Business Source License included
* in the LICENSE.TXT file in the project's root directory.
*
* Change Date: 2023-01-01
* Change Date: 2025-01-01
*
* On the date above, in accordance with the Business Source License, use
* of this software will be governed by version 2.0 of the Apache License.
+1 -1
View File
@@ -4,7 +4,7 @@
* Use of this software is governed by the Business Source License included
* in the LICENSE.TXT file in the project's root directory.
*
* Change Date: 2023-01-01
* Change Date: 2025-01-01
*
* On the date above, in accordance with the Business Source License, use
* of this software will be governed by version 2.0 of the Apache License.
+41 -5
View File
@@ -4,7 +4,7 @@
* Use of this software is governed by the Business Source License included
* in the LICENSE.TXT file in the project's root directory.
*
* Change Date: 2023-01-01
* Change Date: 2025-01-01
*
* On the date above, in accordance with the Business Source License, use
* of this software will be governed by version 2.0 of the Apache License.
@@ -456,7 +456,7 @@ static bool _parseRule(json &r,ZT_VirtualNetworkRule &rule)
} // anonymous namespace
EmbeddedNetworkController::EmbeddedNetworkController(Node *node,const char *ztPath,const char *dbPath, int listenPort, MQConfig *mqc) :
EmbeddedNetworkController::EmbeddedNetworkController(Node *node,const char *ztPath,const char *dbPath, int listenPort, RedisConfig *rc) :
_startTime(OSUtils::now()),
_listenPort(listenPort),
_node(node),
@@ -464,7 +464,7 @@ EmbeddedNetworkController::EmbeddedNetworkController(Node *node,const char *ztPa
_path(dbPath),
_sender((NetworkController::Sender *)0),
_db(this),
_mqc(mqc)
_rc(rc)
{
}
@@ -485,7 +485,7 @@ void EmbeddedNetworkController::init(const Identity &signingId,Sender *sender)
#ifdef ZT_CONTROLLER_USE_LIBPQ
if ((_path.length() > 9)&&(_path.substr(0,9) == "postgres:")) {
_db.addDB(std::shared_ptr<DB>(new PostgreSQL(_signingId,_path.substr(9).c_str(), _listenPort, _mqc)));
_db.addDB(std::shared_ptr<DB>(new PostgreSQL(_signingId,_path.substr(9).c_str(), _listenPort, _rc)));
} else {
#endif
_db.addDB(std::shared_ptr<DB>(new FileDB(_path.c_str())));
@@ -585,7 +585,7 @@ unsigned int EmbeddedNetworkController::handleControlPlaneHttpGET(
responseBody.reserve((members.size() + 2) * 32);
std::string mid;
for(auto member=members.begin();member!=members.end();++member) {
mid = (*member)["id"];
mid = OSUtils::jsonString((*member)["id"], "");
char tmp[128];
OSUtils::ztsnprintf(tmp,sizeof(tmp),"%s\"%s\":%llu",(responseBody.length() > 1) ? "," : "",mid.c_str(),(unsigned long long)OSUtils::jsonInt((*member)["revision"],0));
responseBody.append(tmp);
@@ -1029,6 +1029,26 @@ unsigned int EmbeddedNetworkController::handleControlPlaneHttpPOST(
}
}
if (b.count("dns")) {
json &dns = b["dns"];
if (dns.is_object()) {
json nd;
nd["domain"] = dns["domain"];
json &srv = dns["servers"];
if (srv.is_array()) {
json ns = json::array();
for(unsigned int i=0;i<srv.size();++i) {
ns.push_back(srv[i]);
}
nd["servers"] = ns;
}
network["dns"] = nd;
}
}
} catch ( ... ) {
responseBody = "{ \"message\": \"exception occurred while parsing body variables\" }";
responseContentType = "application/json";
@@ -1366,6 +1386,7 @@ void EmbeddedNetworkController::_request(
nc->mtu = std::max(std::min((unsigned int)OSUtils::jsonInt(network["mtu"],ZT_DEFAULT_MTU),(unsigned int)ZT_MAX_MTU),(unsigned int)ZT_MIN_MTU);
nc->multicastLimit = (unsigned int)OSUtils::jsonInt(network["multicastLimit"],32ULL);
std::string rtt(OSUtils::jsonString(member["remoteTraceTarget"],""));
if (rtt.length() == 10) {
nc->remoteTraceTarget = Address(Utils::hexStrToU64(rtt.c_str()));
@@ -1392,6 +1413,7 @@ void EmbeddedNetworkController::_request(
json &tags = network["tags"];
json &memberCapabilities = member["capabilities"];
json &memberTags = member["tags"];
json &dns = network["dns"];
if (metaData.getUI(ZT_NETWORKCONFIG_REQUEST_METADATA_KEY_RULES_ENGINE_REV,0) <= 0) {
// Old versions with no rules engine support get an allow everything rule.
@@ -1684,6 +1706,20 @@ void EmbeddedNetworkController::_request(
}
}
}
if(dns.is_object()) {
std::string domain = OSUtils::jsonString(dns["domain"],"");
memcpy(nc->dns.domain, domain.c_str(), domain.size());
json &addrArray = dns["servers"];
if (addrArray.is_array()) {
for(unsigned int j = 0; j < addrArray.size() && j < ZT_MAX_DNS_SERVERS; ++j) {
json &addr = addrArray[j];
nc->dns.server_addr[j] = InetAddress(OSUtils::jsonString(addr,"").c_str());
}
}
} else {
dns = json::object();
}
// Issue a certificate of ownership for all static IPs
if (nc->staticIpCount) {
+4 -5
View File
@@ -4,7 +4,7 @@
* Use of this software is governed by the Business Source License included
* in the LICENSE.TXT file in the project's root directory.
*
* Change Date: 2023-01-01
* Change Date: 2025-01-01
*
* On the date above, in accordance with the Business Source License, use
* of this software will be governed by version 2.0 of the Apache License.
@@ -43,8 +43,7 @@
namespace ZeroTier {
class Node;
struct MQConfig;
struct RedisConfig;
class EmbeddedNetworkController : public NetworkController,public DB::ChangeListener
{
@@ -53,7 +52,7 @@ public:
* @param node Parent node
* @param dbPath Database path (file path or database credentials)
*/
EmbeddedNetworkController(Node *node,const char *ztPath,const char *dbPath, int listenPort, MQConfig *mqc = NULL);
EmbeddedNetworkController(Node *node,const char *ztPath,const char *dbPath, int listenPort, RedisConfig *rc);
virtual ~EmbeddedNetworkController();
virtual void init(const Identity &signingId,Sender *sender);
@@ -151,7 +150,7 @@ private:
std::unordered_map< _MemberStatusKey,_MemberStatus,_MemberStatusHash > _memberStatus;
std::mutex _memberStatus_l;
MQConfig *_mqc;
RedisConfig *_rc;
};
} // namespace ZeroTier
+1 -1
View File
@@ -4,7 +4,7 @@
* Use of this software is governed by the Business Source License included
* in the LICENSE.TXT file in the project's root directory.
*
* Change Date: 2023-01-01
* Change Date: 2025-01-01
*
* On the date above, in accordance with the Business Source License, use
* of this software will be governed by version 2.0 of the Apache License.
+1 -1
View File
@@ -4,7 +4,7 @@
* Use of this software is governed by the Business Source License included
* in the LICENSE.TXT file in the project's root directory.
*
* Change Date: 2023-01-01
* Change Date: 2025-01-01
*
* On the date above, in accordance with the Business Source License, use
* of this software will be governed by version 2.0 of the Apache License.
+2 -2
View File
@@ -4,7 +4,7 @@
* Use of this software is governed by the Business Source License included
* in the LICENSE.TXT file in the project's root directory.
*
* Change Date: 2023-01-01
* Change Date: 2025-01-01
*
* On the date above, in accordance with the Business Source License, use
* of this software will be governed by version 2.0 of the Apache License.
@@ -48,7 +48,7 @@ LFDB::LFDB(const Identity &myId,const char *path,const char *lfOwnerPrivate,cons
char maskingKey [128];
Utils::hex(sha512pk,32,maskingKey);
httplib::Client htcli(_lfNodeHost.c_str(),_lfNodePort,600);
httplib::Client htcli(_lfNodeHost.c_str(),_lfNodePort);
int64_t timeRangeStart = 0;
while (_running.load()) {
{
+1 -1
View File
@@ -4,7 +4,7 @@
* Use of this software is governed by the Business Source License included
* in the LICENSE.TXT file in the project's root directory.
*
* Change Date: 2023-01-01
* Change Date: 2025-01-01
*
* On the date above, in accordance with the Business Source License, use
* of this software will be governed by version 2.0 of the Apache License.
Loaded 20 of 407 files, more files were not shown because too many files have changed in this diff. Show more