diff --git a/src/libsodium/randombytes/randombytes.c b/src/libsodium/randombytes/randombytes.c index c207600b..56739dd0 100644 --- a/src/libsodium/randombytes/randombytes.c +++ b/src/libsodium/randombytes/randombytes.c @@ -17,6 +17,10 @@ # include "randombytes_nativeclient.h" #endif +#if defined(random) +#undef random +#endif + #ifndef __EMSCRIPTEN__ #ifdef __native_client__ static const randombytes_implementation *implementation = diff --git a/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c b/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c index 7bfaa722..2f3341a9 100644 --- a/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c +++ b/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c @@ -16,7 +16,7 @@ #include #include #include -#ifndef _MSC_VER +#if !defined(_MSC_VER) && !defined(__BORLANDC__) # include #endif @@ -77,10 +77,21 @@ sodium_hrtime(void) #ifdef _WIN32 { +#ifdef __BORLANDC__ + struct timeb tb; +#else struct _timeb tb; +#endif + # pragma warning(push) # pragma warning(disable: 4996) + +#ifdef __BORLANDC__ + ftime(&tb); +#else _ftime(&tb); +#endif + # pragma warning(pop) ts = ((uint64_t) tb.time) * 1000000U + ((uint64_t) tb.millitm) * 1000U; } diff --git a/test/quirks/quirks.h b/test/quirks/quirks.h index 00caf7c9..83f5afd7 100644 --- a/test/quirks/quirks.h +++ b/test/quirks/quirks.h @@ -1,6 +1,10 @@ #include +#if defined(random) +#undef random +#endif + #ifdef __EMSCRIPTEN__ # define strcmp(s1, s2) xstrcmp(s1, s2)