diff options
-rw-r--r-- | node/Salsa20.cpp | 8 | ||||
-rw-r--r-- | node/Salsa20.hpp | 13 | ||||
-rw-r--r-- | selftest.cpp | 2 |
3 files changed, 7 insertions, 16 deletions
diff --git a/node/Salsa20.cpp b/node/Salsa20.cpp index 1ec6a272..030c1cf4 100644 --- a/node/Salsa20.cpp +++ b/node/Salsa20.cpp @@ -144,10 +144,10 @@ void Salsa20::encrypt(const void *in,void *out,unsigned int bytes) } #ifdef ZT_SALSA20_SSE - __m128i X0 = _mm_load_si128((const __m128i *)&(_state.v[0])); - __m128i X1 = _mm_load_si128((const __m128i *)&(_state.v[1])); - __m128i X2 = _mm_load_si128((const __m128i *)&(_state.v[2])); - __m128i X3 = _mm_load_si128((const __m128i *)&(_state.v[3])); + __m128i X0 = _mm_loadu_si128((const __m128i *)&(_state.v[0])); + __m128i X1 = _mm_loadu_si128((const __m128i *)&(_state.v[1])); + __m128i X2 = _mm_loadu_si128((const __m128i *)&(_state.v[2])); + __m128i X3 = _mm_loadu_si128((const __m128i *)&(_state.v[3])); __m128i X0s = X0; __m128i X1s = X1; __m128i X2s = X2; diff --git a/node/Salsa20.hpp b/node/Salsa20.hpp index 6e485bac..0c1f3be4 100644 --- a/node/Salsa20.hpp +++ b/node/Salsa20.hpp @@ -13,14 +13,7 @@ #ifdef ZT_SALSA20_SSE #include <emmintrin.h> -#ifdef __GCC__ -#define ZT_SALSA20_SSE_ALIGN __attribute__((aligned (16))) -#else -#define ZT_SALSA20_SSE_ALIGN __declspec(align(16)) -#endif -#else -#define ZT_SALSA20_SSE_ALIGN -#endif +#endif // ZT_SALSA20_SSE namespace ZeroTier { @@ -79,10 +72,10 @@ public: } private: - volatile ZT_SALSA20_SSE_ALIGN union { + volatile union { #ifdef ZT_SALSA20_SSE __m128i v[4]; -#endif +#endif // ZT_SALSA20_SSE uint32_t i[16]; } _state; unsigned int _roundsDiv2; diff --git a/selftest.cpp b/selftest.cpp index 25231ba0..42f3a79e 100644 --- a/selftest.cpp +++ b/selftest.cpp @@ -611,8 +611,6 @@ int main(int argc,char **argv) std::cout << "[info] sizeof(void *) == " << sizeof(void *) << std::endl; std::cout << "[info] default home: " << ZT_DEFAULTS.defaultHomePath << std::endl; - std::cout << "[info] system authtoken.secret: " << Node::NodeControlClient::authTokenDefaultSystemPath() << std::endl; - std::cout << "[info] user authtoken.secret: " << Node::NodeControlClient::authTokenDefaultUserPath() << std::endl; srand((unsigned int)time(0)); |