aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/timers.c
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2017-11-22 16:49:56 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2017-11-22 18:32:48 +0100
commit314c17259e09d18af9fcafa9d7e8b59c5cf1e1ca (patch)
tree92c96f7aca12855ba83431de6d766568664f1e97 /src/timers.c
parentpoly1305: import MIPS64 primitive from OpenSSL (diff)
downloadwireguard-monolithic-historical-314c17259e09d18af9fcafa9d7e8b59c5cf1e1ca.tar.xz
wireguard-monolithic-historical-314c17259e09d18af9fcafa9d7e8b59c5cf1e1ca.zip
global: switch from timeval to timespec
This gets us nanoseconds instead of microseconds, which is better, and we can do this pretty much without freaking out existing userspace, which doesn't actually make use of the nano/micro seconds field: zx2c4@thinkpad ~ $ cat a.c void main() { puts(sizeof(struct timeval) == sizeof(struct timespec) ? "success" : "failure"); } zx2c4@thinkpad ~ $ gcc a.c -m64 && ./a.out success zx2c4@thinkpad ~ $ gcc a.c -m32 && ./a.out success This doesn't solve y2038 problem, but timespec64 isn't yet a thing in userspace.
Diffstat (limited to 'src/timers.c')
-rw-r--r--src/timers.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/timers.c b/src/timers.c
index 52fff28..5f2570f 100644
--- a/src/timers.c
+++ b/src/timers.c
@@ -158,7 +158,7 @@ void timers_handshake_complete(struct wireguard_peer *peer)
del_timer(&peer->timer_retransmit_handshake);
peer->timer_handshake_attempts = 0;
peer->sent_lastminute_handshake = false;
- do_gettimeofday(&peer->walltime_last_handshake);
+ getnstimeofday(&peer->walltime_last_handshake);
}
/* Should be called after an ephemeral key is created, which is before sending a handshake response or after receiving a handshake response. */