summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--make-linux.mk12
-rw-r--r--one.cpp2
2 files changed, 8 insertions, 6 deletions
diff --git a/make-linux.mk b/make-linux.mk
index 62f319bf..56096da8 100644
--- a/make-linux.mk
+++ b/make-linux.mk
@@ -79,7 +79,7 @@ endif
ifeq ($(ZT_SYNOLOGY), 1)
override CFLAGS+=-fPIC
override CXXFLAGS+=-fPIC
- override DEFS+=-D__SYNOLOGY__
+ override DEFS+=-D__SYNOLOGY__
endif
ifeq ($(ZT_TRACE),1)
@@ -111,6 +111,12 @@ ifeq ($(CC_MACH),amd64)
endif
ifeq ($(CC_MACH),powerpc64le)
ZT_ARCHITECTURE=8
+ override DEFS+=-DZT_NO_TYPE_PUNNING
+endif
+ifeq ($(CC_MACH),powerpc)
+ ZT_ARCHITECTURE=8
+ override DEFS+=-DZT_NO_TYPE_PUNNING
+ override DEFS+=-DZT_NO_CAPABILITIES
endif
ifeq ($(CC_MACH),ppc64le)
ZT_ARCHITECTURE=8
@@ -199,10 +205,6 @@ ifeq ($(CC_MACH),mips64el)
ZT_ARCHITECTURE=6
override DEFS+=-DZT_NO_TYPE_PUNNING
endif
-ifeq ($(CC_MACH),powerpc64le)
- ZT_ARCHITECTURE=7
- override DEFS+=-DZT_NO_TYPE_PUNNING
-endif
# Fail if system architecture could not be determined
ifeq ($(ZT_ARCHITECTURE),999)
diff --git a/one.cpp b/one.cpp
index 9ebc83c1..b770451c 100644
--- a/one.cpp
+++ b/one.cpp
@@ -972,7 +972,7 @@ static void _sighandlerQuit(int sig)
#endif
// Drop privileges on Linux, if supported by libc etc. and "zerotier-one" user exists on system
-#ifdef __LINUX__
+#if defined(__LINUX__) && !defined(ZT_NO_CAPABILITIES)
#ifndef PR_CAP_AMBIENT
#define PR_CAP_AMBIENT 47
#define PR_CAP_AMBIENT_IS_SET 1