diff options
author | Nikos Mavrogiannopoulos <nmav@redhat.com> | 2017-03-21 07:59:37 +0100 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@redhat.com> | 2017-03-21 07:59:37 +0100 |
commit | 80253f81c86383cc14ff092550bce35eccd40b89 (patch) | |
tree | 7397a12153b37d8901b24ea578cf064b31d760e8 /lib/nettle | |
parent | c0f09df0e2e1f24e251c5104440a2bee42f5bfcf (diff) | |
download | gnutls-80253f81c86383cc14ff092550bce35eccd40b89.tar.gz |
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().
Diffstat (limited to 'lib/nettle')
-rw-r--r-- | lib/nettle/rnd.c | 8 |
1 files 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(); } |