From 76af1d42464c719e90c28df447d8d5badf6dd035 Mon Sep 17 00:00:00 2001 From: Joseph Henry Date: Thu, 7 Dec 2017 11:09:38 -0800 Subject: [PATCH] Fix for Debian compile error: api_sleep (taking address of temporary array) --- include/libztDefs.h | 2 ++ src/ZT1Service.cpp | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/include/libztDefs.h b/include/libztDefs.h index fe7b806..6191c28 100644 --- a/include/libztDefs.h +++ b/include/libztDefs.h @@ -156,6 +156,7 @@ struct sockaddr_ll { #endif +/* // Provide missing optnames for setsockopt() implementations #ifdef _WIN32 #ifdef _WIN64 @@ -193,6 +194,7 @@ struct sockaddr_ll { #else # error "Unknown platform" #endif +*/ /****************************************************************************/ /* Legend */ diff --git a/src/ZT1Service.cpp b/src/ZT1Service.cpp index f09805d..5468a6c 100644 --- a/src/ZT1Service.cpp +++ b/src/ZT1Service.cpp @@ -555,7 +555,9 @@ bool _ipv6_in_subnet(ZeroTier::InetAddress *subnet, ZeroTier::InetAddress *addr) void api_sleep(int interval_ms) { - nanosleep((const struct timespec[]) {{0, (interval_ms * 500000)}}, NULL); + struct timespec sleepValue = {0}; + sleepValue.tv_nsec = interval_ms * 500000; + nanosleep(&sleepValue, NULL); } #ifdef __cplusplus