From 80253f81c86383cc14ff092550bce35eccd40b89 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Tue, 21 Mar 2017 07:59:37 +0100 Subject: Revert "nettle/rnd: use gettime() instead of gnutls_time()" This reverts commit c4842a21f65c7fc9a27932eb1792b1fc9e65f722. The time() syscall is also implemented as syscall() and is in fact performing better than gettime(). --- lib/nettle/rnd.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/nettle/rnd.c b/lib/nettle/rnd.c index f374253df8..a02c72f519 100644 --- a/lib/nettle/rnd.c +++ b/lib/nettle/rnd.c @@ -168,7 +168,7 @@ wrap_nettle_rnd(void *_ctx, int level, void *data, size_t datasize) struct prng_ctx_st *prng_ctx; int ret, reseed = 0; uint8_t new_key[PRNG_KEY_SIZE]; - struct timespec now; /* current time */ + time_t now; if (level == GNUTLS_RND_RANDOM || level == GNUTLS_RND_KEY) prng_ctx = &ctx->normal; @@ -183,7 +183,7 @@ wrap_nettle_rnd(void *_ctx, int level, void *data, size_t datasize) */ memset(data, 0, datasize); - gettime(&now); + now = gnutls_time(0); /* We re-seed based on time in addition to output data. That is, * to prevent a temporal state compromise to become permanent for low @@ -191,7 +191,7 @@ wrap_nettle_rnd(void *_ctx, int level, void *data, size_t datasize) if (unlikely(_gnutls_detect_fork(prng_ctx->forkid))) { reseed = 1; } else { - if (now.tv_sec > prng_ctx->last_reseed + prng_reseed_time[level]) + if (now > prng_ctx->last_reseed + prng_reseed_time[level]) reseed = 1; } @@ -216,7 +216,7 @@ wrap_nettle_rnd(void *_ctx, int level, void *data, size_t datasize) goto cleanup; } - prng_ctx->last_reseed = now.tv_sec; + prng_ctx->last_reseed = now; prng_ctx->forkid = _gnutls_get_forkid(); } -- cgit v1.2.1