Release notes: 1.8.0 - Upgrade json.hpp dependency to version 3.10.2 - Check if DNS servers need to be applied on macOS - Set MAC address before bringing up Linux TAP link - Stop binding to temporary IPv6 addresses - Fix for mistakenly using v6 source addresses for v4 routes on some platforms - Fix for MacOS MTU capping issue on feth devices - Implement a workaround for one potential source of a "coma" bug, which can occur if buggy NATs/routers stop allowing the service to communicate on a given port. ZeroTier now reassigns a new secondary port if it's offline for a while unless a secondary port is manually specified in local.conf. Working around crummy buggy routers is an ongoing effort. - A completely rewritten desktop UI for Mac and Windows! 1.8.1 - Fix an issue that could cause clobbering of MacOS IP route settings on restart. - Added additional hardening against address impersonation on networks (also in 1.6.6). - MacOS IPv6 no longer binds to temporary addresses as these can cause interruptions if they expire. - Remove support for REALLY ancient 1.1.6 or earlier network controllers. - Fix numerous UI issues from 1.8.0 (never fully released). Changed to git as source and added $(AUTORELEASE) Signed-off-by: Oskari Rauta <oskari.rauta@gmail.com>lilik-openwrt-22.03
@ -1,22 +0,0 @@ | |||||
From 552cda1ebff6c5182eecdcb35961fd6b441dfa52 Mon Sep 17 00:00:00 2001 | |||||
From: Moritz Warning <moritzwarning@web.de> | |||||
Date: Mon, 23 Apr 2018 22:12:31 +0200 | |||||
Subject: [PATCH 1/8] find miniupnpc.h in staging directory | |||||
--- | |||||
make-linux.mk | 4 ++-- | |||||
1 file changed, 2 insertions(+), 2 deletions(-) | |||||
--- a/make-linux.mk | |||||
+++ b/make-linux.mk | |||||
@@ -25,8 +25,8 @@ TIMESTAMP=$(shell date +"%Y%m%d%H%M") | |||||
# otherwise build into binary as done on Mac and Windows. | |||||
ONE_OBJS+=osdep/PortMapper.o | |||||
override DEFS+=-DZT_USE_MINIUPNPC | |||||
-MINIUPNPC_IS_NEW_ENOUGH=$(shell grep -sqr '.*define.*MINIUPNPC_VERSION.*"2..*"' /usr/include/miniupnpc/miniupnpc.h && echo 1) | |||||
-#MINIUPNPC_IS_NEW_ENOUGH=$(shell grep -sqr '.*define.*MINIUPNPC_VERSION.*"2.."' /usr/include/miniupnpc/miniupnpc.h && echo 1) | |||||
+MINIUPNPC_IS_NEW_ENOUGH=$(shell grep -sqr '.*define.*MINIUPNPC_VERSION.*"2..*"' $(STAGING_DIR)/usr/include/miniupnpc/miniupnpc.h && echo 1) | |||||
+#MINIUPNPC_IS_NEW_ENOUGH=$(shell grep -sqr '.*define.*MINIUPNPC_VERSION.*"2.."' $(STAGING_DIR)/usr/include/miniupnpc/miniupnpc.h && echo 1) | |||||
ifeq ($(MINIUPNPC_IS_NEW_ENOUGH),1) | |||||
override DEFS+=-DZT_USE_SYSTEM_MINIUPNPC | |||||
LDLIBS+=-lminiupnpc |
@ -0,0 +1,46 @@ | |||||
--- a/make-linux.mk | |||||
+++ b/make-linux.mk | |||||
@@ -25,8 +25,8 @@ TIMESTAMP=$(shell date +"%Y%m%d%H%M") | |||||
# otherwise build into binary as done on Mac and Windows. | |||||
ONE_OBJS+=osdep/PortMapper.o | |||||
override DEFS+=-DZT_USE_MINIUPNPC | |||||
-MINIUPNPC_IS_NEW_ENOUGH=$(shell grep -sqr '.*define.*MINIUPNPC_VERSION.*"2..*"' /usr/include/miniupnpc/miniupnpc.h && echo 1) | |||||
-#MINIUPNPC_IS_NEW_ENOUGH=$(shell grep -sqr '.*define.*MINIUPNPC_VERSION.*"2.."' /usr/include/miniupnpc/miniupnpc.h && echo 1) | |||||
+MINIUPNPC_IS_NEW_ENOUGH=$(shell grep -sqr '.*define.*MINIUPNPC_VERSION.*"2..*"' $(STAGING_DIR)/usr/include/miniupnpc/miniupnpc.h && echo 1) | |||||
+#MINIUPNPC_IS_NEW_ENOUGH=$(shell grep -sqr '.*define.*MINIUPNPC_VERSION.*"2.."' $(STAGING_DIR)/usr/include/miniupnpc/miniupnpc.h && echo 1) | |||||
ifeq ($(MINIUPNPC_IS_NEW_ENOUGH),1) | |||||
override DEFS+=-DZT_USE_SYSTEM_MINIUPNPC | |||||
LDLIBS+=-lminiupnpc | |||||
@@ -34,7 +34,7 @@ else | |||||
override DEFS+=-DMINIUPNP_STATICLIB -DMINIUPNPC_SET_SOCKET_TIMEOUT -DMINIUPNPC_GET_SRC_ADDR -D_BSD_SOURCE -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DOS_STRING=\"Linux\" -DMINIUPNPC_VERSION_STRING=\"2.0\" -DUPNP_VERSION_STRING=\"UPnP/1.1\" -DENABLE_STRNATPMPERR | |||||
ONE_OBJS+=ext/miniupnpc/connecthostport.o ext/miniupnpc/igd_desc_parse.o ext/miniupnpc/minisoap.o ext/miniupnpc/minissdpc.o ext/miniupnpc/miniupnpc.o ext/miniupnpc/miniwget.o ext/miniupnpc/minixml.o ext/miniupnpc/portlistingparse.o ext/miniupnpc/receivedata.o ext/miniupnpc/upnpcommands.o ext/miniupnpc/upnpdev.o ext/miniupnpc/upnperrors.o ext/miniupnpc/upnpreplyparse.o | |||||
endif | |||||
-ifeq ($(wildcard /usr/include/natpmp.h),) | |||||
+ifeq ($(wildcard $(STAGING_DIR)/usr/include/natpmp.h),) | |||||
ONE_OBJS+=ext/libnatpmp/natpmp.o ext/libnatpmp/getgateway.o | |||||
else | |||||
LDLIBS+=-lnatpmp | |||||
@@ -68,11 +68,11 @@ ifeq ($(ZT_DEBUG),1) | |||||
# C25519 in particular is almost UNUSABLE in -O0 even on a 3ghz box! | |||||
node/Salsa20.o node/SHA512.o node/C25519.o node/Poly1305.o: CXXFLAGS=-Wall -O2 -g -pthread $(INCLUDES) $(DEFS) | |||||
else | |||||
- CFLAGS?=-O3 -fstack-protector -fPIE | |||||
+ CFLAGS?=-O3 -fstack-protector | |||||
override CFLAGS+=-Wall -Wno-deprecated -pthread $(INCLUDES) -DNDEBUG $(DEFS) | |||||
- CXXFLAGS?=-O3 -fstack-protector -fPIE | |||||
+ CXXFLAGS?=-O3 -fstack-protector | |||||
override CXXFLAGS+=-Wall -Wno-deprecated -std=c++11 -pthread $(INCLUDES) -DNDEBUG $(DEFS) | |||||
- LDFLAGS=-pie -Wl,-z,relro,-z,now | |||||
+ LDFLAGS+=-Wl,-z,relro,-z,now | |||||
endif | |||||
ifeq ($(ZT_QNAP), 1) | |||||
@@ -270,7 +270,7 @@ ifeq ($(ZT_CONTROLLER),1) | |||||
endif | |||||
# ARM32 hell -- use conservative CFLAGS | |||||
-ifeq ($(ZT_ARCHITECTURE),3) | |||||
+ifeq (0,3) | |||||
ifeq ($(shell if [ -e /usr/bin/dpkg ]; then dpkg --print-architecture; fi),armel) | |||||
override CFLAGS+=-march=armv5t -mfloat-abi=soft -msoft-float -mno-unaligned-access -marm | |||||
override CXXFLAGS+=-march=armv5t -mfloat-abi=soft -msoft-float -mno-unaligned-access -marm |
@ -1,28 +0,0 @@ | |||||
From ef1a75fd1bf271cc5c73d966a861dfcd26d62cd5 Mon Sep 17 00:00:00 2001 | |||||
From: Moritz Warning <moritzwarning@web.de> | |||||
Date: Mon, 30 Apr 2018 16:14:30 +0200 | |||||
Subject: [PATCH 2/8] remove -pie | |||||
fixes relocation "against `a local symbol' can not be used | |||||
when making a shared object; recompile with -fPIC" error | |||||
--- | |||||
make-linux.mk | 6 +++--- | |||||
1 file changed, 3 insertions(+), 3 deletions(-) | |||||
--- a/make-linux.mk | |||||
+++ b/make-linux.mk | |||||
@@ -69,11 +69,11 @@ ifeq ($(ZT_DEBUG),1) | |||||
# C25519 in particular is almost UNUSABLE in -O0 even on a 3ghz box! | |||||
node/Salsa20.o node/SHA512.o node/C25519.o node/Poly1305.o: CXXFLAGS=-Wall -O2 -g -pthread $(INCLUDES) $(DEFS) | |||||
else | |||||
- CFLAGS?=-O3 -fstack-protector -fPIE | |||||
+ CFLAGS?=-O3 -fstack-protector | |||||
override CFLAGS+=-Wall -Wno-deprecated -pthread $(INCLUDES) -DNDEBUG $(DEFS) | |||||
- CXXFLAGS?=-O3 -fstack-protector -fPIE | |||||
+ CXXFLAGS?=-O3 -fstack-protector | |||||
override CXXFLAGS+=-Wall -Wno-deprecated -std=c++11 -pthread $(INCLUDES) -DNDEBUG $(DEFS) | |||||
- LDFLAGS=-pie -Wl,-z,relro,-z,now | |||||
+ LDFLAGS=-Wl,-z,relro,-z,now | |||||
STRIP?=strip | |||||
STRIP+=--strip-all | |||||
endif |
@ -1,20 +0,0 @@ | |||||
From 093ec88ff213a5713ad5d3c26ddf5ecdea3c6377 Mon Sep 17 00:00:00 2001 | |||||
From: Moritz Warning <moritzwarning@web.de> | |||||
Date: Sun, 4 Aug 2019 03:56:37 +0200 | |||||
Subject: [PATCH 3/8] remove arm32 conservative CFLAGS | |||||
--- | |||||
make-linux.mk | 2 +- | |||||
1 file changed, 1 insertion(+), 1 deletion(-) | |||||
--- a/make-linux.mk | |||||
+++ b/make-linux.mk | |||||
@@ -272,7 +272,7 @@ ifeq ($(ZT_CONTROLLER),1) | |||||
endif | |||||
# ARM32 hell -- use conservative CFLAGS | |||||
-ifeq ($(ZT_ARCHITECTURE),3) | |||||
+ifeq (0,3) | |||||
ifeq ($(shell if [ -e /usr/bin/dpkg ]; then dpkg --print-architecture; fi),armel) | |||||
override CFLAGS+=-march=armv5t -mfloat-abi=soft -msoft-float -mno-unaligned-access -marm | |||||
override CXXFLAGS+=-march=armv5t -mfloat-abi=soft -msoft-float -mno-unaligned-access -marm |
@ -1,20 +0,0 @@ | |||||
From 1a4ffe62c729f9c4f63cdfd26151e3724bc23f86 Mon Sep 17 00:00:00 2001 | |||||
From: Moritz Warning <moritzwarning@web.de> | |||||
Date: Wed, 2 May 2018 16:06:46 +0200 | |||||
Subject: [PATCH 4/8] accept external linker flags | |||||
--- | |||||
make-linux.mk | 2 +- | |||||
1 file changed, 1 insertion(+), 1 deletion(-) | |||||
--- a/make-linux.mk | |||||
+++ b/make-linux.mk | |||||
@@ -73,7 +73,7 @@ else | |||||
override CFLAGS+=-Wall -Wno-deprecated -pthread $(INCLUDES) -DNDEBUG $(DEFS) | |||||
CXXFLAGS?=-O3 -fstack-protector | |||||
override CXXFLAGS+=-Wall -Wno-deprecated -std=c++11 -pthread $(INCLUDES) -DNDEBUG $(DEFS) | |||||
- LDFLAGS=-Wl,-z,relro,-z,now | |||||
+ LDFLAGS+=-Wl,-z,relro,-z,now | |||||
STRIP?=strip | |||||
STRIP+=--strip-all | |||||
endif |
@ -1,20 +0,0 @@ | |||||
From de625c51dba36b390c93a1db00b19b6112178764 Mon Sep 17 00:00:00 2001 | |||||
From: Moritz Warning <moritzwarning@web.de> | |||||
Date: Sat, 21 Nov 2020 17:53:28 +0100 | |||||
Subject: [PATCH 5/8] link natpmp | |||||
--- | |||||
make-linux.mk | 2 +- | |||||
1 file changed, 1 insertion(+), 1 deletion(-) | |||||
--- a/make-linux.mk | |||||
+++ b/make-linux.mk | |||||
@@ -34,7 +34,7 @@ else | |||||
override DEFS+=-DMINIUPNP_STATICLIB -DMINIUPNPC_SET_SOCKET_TIMEOUT -DMINIUPNPC_GET_SRC_ADDR -D_BSD_SOURCE -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DOS_STRING=\"Linux\" -DMINIUPNPC_VERSION_STRING=\"2.0\" -DUPNP_VERSION_STRING=\"UPnP/1.1\" -DENABLE_STRNATPMPERR | |||||
ONE_OBJS+=ext/miniupnpc/connecthostport.o ext/miniupnpc/igd_desc_parse.o ext/miniupnpc/minisoap.o ext/miniupnpc/minissdpc.o ext/miniupnpc/miniupnpc.o ext/miniupnpc/miniwget.o ext/miniupnpc/minixml.o ext/miniupnpc/portlistingparse.o ext/miniupnpc/receivedata.o ext/miniupnpc/upnpcommands.o ext/miniupnpc/upnpdev.o ext/miniupnpc/upnperrors.o ext/miniupnpc/upnpreplyparse.o | |||||
endif | |||||
-ifeq ($(wildcard /usr/include/natpmp.h),) | |||||
+ifeq ($(wildcard $(STAGING_DIR)/usr/include/natpmp.h),) | |||||
ONE_OBJS+=ext/libnatpmp/natpmp.o ext/libnatpmp/getgateway.o | |||||
else | |||||
LDLIBS+=-lnatpmp |