[openssl-commits] [openssl] master update
Matthias.St.Pierre at ncp-e.com
Matthias.St.Pierre at ncp-e.com
Wed Jan 31 16:20:11 UTC 2018
The branch master has been updated
via 2e230e8687486b71c113915b864d6b1f6d465ed1 (commit)
from 85d6ad34aa0158fb25538e116e611e6b858d3638 (commit)
- Log -----------------------------------------------------------------
commit 2e230e8687486b71c113915b864d6b1f6d465ed1
Author: Dr. Matthias St. Pierre <Matthias.St.Pierre at ncp-e.com>
Date: Tue Jan 30 23:53:57 2018 +0100
crypto/rand/rand_lib.c: fix undefined reference to `clock_gettime'
Some older glibc versions require the `-lrt` linker option for
resolving the reference to `clock_gettime'. Since it is not desired
to add new library dependencies in version 1.1.1, the call to
clock_gettime() is replaced by a call to gettimeofday() for the
moment. It will be added back in version 1.2.
Signed-off-by: Dr. Matthias St. Pierre <Matthias.St.Pierre at ncp-e.com>
Reviewed-by: Richard Levitte <levitte at openssl.org>
Reviewed-by: Paul Dale <paul.dale at oracle.com>
(Merged from https://github.com/openssl/openssl/pull/5199)
-----------------------------------------------------------------------
Summary of changes:
crypto/rand/rand_lib.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/crypto/rand/rand_lib.c b/crypto/rand/rand_lib.c
index 3824d93..ab03356 100644
--- a/crypto/rand/rand_lib.c
+++ b/crypto/rand/rand_lib.c
@@ -210,13 +210,15 @@ size_t rand_drbg_get_additional_data(unsigned char **pout, size_t max_len)
size_t len;
#ifdef OPENSSL_SYS_UNIX
pid_t pid;
- struct timespec ts;
+ struct timeval tv;
#elif defined(OPENSSL_SYS_WIN32)
DWORD pid;
FILETIME ft;
LARGE_INTEGER pc;
#endif
+#ifdef OPENSSL_CPUID_OBJ
uint32_t tsc = 0;
+#endif
pool = RAND_POOL_new(0, 0, max_len);
if (pool == NULL)
@@ -241,12 +243,10 @@ size_t rand_drbg_get_additional_data(unsigned char **pout, size_t max_len)
#endif
#ifdef OPENSSL_SYS_UNIX
- if (tsc == 0 && clock_gettime(CLOCK_MONOTONIC, &ts) == 0)
- RAND_POOL_add(pool, (unsigned char *)&ts, sizeof(ts), 0);
- if (clock_gettime(CLOCK_REALTIME, &ts) == 0)
- RAND_POOL_add(pool, (unsigned char *)&ts, sizeof(ts), 0);
+ if (gettimeofday(&tv, NULL) == 0)
+ RAND_POOL_add(pool, (unsigned char *)&tv, sizeof(tv), 0);
#elif defined(OPENSSL_SYS_WIN32)
- if (tsc == 0 && QueryPerformanceCounter(&pc) != 0)
+ if (QueryPerformanceCounter(&pc) != 0)
RAND_POOL_add(pool, (unsigned char *)&pc, sizeof(pc), 0);
GetSystemTimeAsFileTime(&ft);
RAND_POOL_add(pool, (unsigned char *)&ft, sizeof(ft), 0);
More information about the openssl-commits
mailing list