Go to the documentation of this file.Go to the SVN repository for this file.
25 #if !defined(_POSIX_C_SOURCE)
26 #define _POSIX_C_SOURCE 200112L
38 #if !defined(MBEDTLS_PLATFORM_ZEROIZE_ALT)
65 static void *(*
const volatile memset_func)(
void *,
int,
size_t) = memset;
77 #if defined(MBEDTLS_HAVE_TIME_DATE) && !defined(MBEDTLS_PLATFORM_GMTIME_R_ALT)
79 #if !defined(_WIN32) && (defined(unix) || \
80 defined(__unix) || defined(__unix__) || (defined(__APPLE__) && \
86 #if !((defined(_POSIX_VERSION) && _POSIX_VERSION >= 200809L) || \
87 (defined(_POSIX_THREAD_SAFE_FUNCTIONS) && \
88 _POSIX_THREAD_SAFE_FUNCTIONS >= 200112L))
96 #if !(defined(_WIN32) && !defined(EFIX64) && !defined(EFI32))
97 #define PLATFORM_UTIL_USE_GMTIME
107 #if defined(_WIN32) && !defined(EFIX64) && !defined(EFI32)
108 return (gmtime_s(tm_buf, tt) == 0) ? tm_buf :
NULL;
109 #elif !defined(PLATFORM_UTIL_USE_GMTIME)
110 return gmtime_r(tt, tm_buf);
114 #if defined(MBEDTLS_THREADING_C)
123 memcpy(tm_buf,
lt,
sizeof(
struct tm));
126 #if defined(MBEDTLS_THREADING_C)
#define mbedtls_platform_gmtime_r
#define mbedtls_mutex_lock
#define mbedtls_mutex_unlock
mbedtls_threading_mutex_t mbedtls_threading_gmtime_mutex
Threading abstraction layer.