OPENSSL_gmtime() is not a gmtime() wrapper. It is a gmtime_r().
authorderaadt <deraadt@openbsd.org>
Thu, 17 Apr 2014 13:29:09 +0000 (13:29 +0000)
committerderaadt <deraadt@openbsd.org>
Thu, 17 Apr 2014 13:29:09 +0000 (13:29 +0000)
Always trying to confuse people...
ok guenther

lib/libcrypto/o_time.c
lib/libssl/src/crypto/o_time.c

index 44f7ba3..8302835 100644 (file)
 #include <string.h>
 #include "o_time.h"
 
-struct tm
-*OPENSSL_gmtime(const time_t *timer, struct tm *result) {
-       struct tm *ts = NULL;
-
-#if defined(OPENSSL_THREADS) && !defined(OPENSSL_SYS_WIN32) && !defined(OPENSSL_SYS_OS2) && (!defined(OPENSSL_SYS_VMS) || defined(gmtime_r)) && !defined(OPENSSL_SYS_MACOSX) && !defined(OPENSSL_SYS_SUNOS)
-       /* should return &data, but doesn't on some systems,
-          so we don't even look at the return value */
-       gmtime_r(timer, result);
-       ts = result;
-#else
-       ts = gmtime(timer);
-       if (ts == NULL)
-               return NULL;
-
-       memcpy(result, ts, sizeof(struct tm));
-       ts = result;
-#endif
-       return ts;
+struct tm *
+OPENSSL_gmtime(const time_t *timer, struct tm *result)
+{
+       return gmtime_r(timer, result);
 }
 
 /* Take a tm structure and add an offset to it. This avoids any OS issues
index 44f7ba3..8302835 100644 (file)
 #include <string.h>
 #include "o_time.h"
 
-struct tm
-*OPENSSL_gmtime(const time_t *timer, struct tm *result) {
-       struct tm *ts = NULL;
-
-#if defined(OPENSSL_THREADS) && !defined(OPENSSL_SYS_WIN32) && !defined(OPENSSL_SYS_OS2) && (!defined(OPENSSL_SYS_VMS) || defined(gmtime_r)) && !defined(OPENSSL_SYS_MACOSX) && !defined(OPENSSL_SYS_SUNOS)
-       /* should return &data, but doesn't on some systems,
-          so we don't even look at the return value */
-       gmtime_r(timer, result);
-       ts = result;
-#else
-       ts = gmtime(timer);
-       if (ts == NULL)
-               return NULL;
-
-       memcpy(result, ts, sizeof(struct tm));
-       ts = result;
-#endif
-       return ts;
+struct tm *
+OPENSSL_gmtime(const time_t *timer, struct tm *result)
+{
+       return gmtime_r(timer, result);
 }
 
 /* Take a tm structure and add an offset to it. This avoids any OS issues