summaryrefslogtreecommitdiffstats
path: root/usr.sbin/relayctl
diff options
context:
space:
mode:
authorreyk <reyk@openbsd.org>2013-03-10 23:32:53 +0000
committerreyk <reyk@openbsd.org>2013-03-10 23:32:53 +0000
commitfd1841a32c2961a48d081d9f7268f6ae44577069 (patch)
treedd6dc36750306f44785ea2c1416903e0c5da1dca /usr.sbin/relayctl
parentdocument REGRESS -> TEST (diff)
downloadwireguard-openbsd-fd1841a32c2961a48d081d9f7268f6ae44577069.tar.xz
wireguard-openbsd-fd1841a32c2961a48d081d9f7268f6ae44577069.zip
This diff changes relayd to use the monotonic clock instead of
gettimeofday(). It was also bugging me for some time to have all these checks of gettimeofday()'s return value: it should not fail. So this diff introduces a void getmonotime(struct timeval *tv) that calls clock_gettime(CLOCK_MONOTONIC, &ts) and converts the output to a struct timeval that can be used with the existing code and the timeval-specific timer functions (timerclear, timersub, ...). It does not return a status but calls fatal() on error-that-should-not-happen. ok sthen@ chris@
Diffstat (limited to 'usr.sbin/relayctl')
-rw-r--r--usr.sbin/relayctl/relayctl.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/usr.sbin/relayctl/relayctl.c b/usr.sbin/relayctl/relayctl.c
index 382f9551d84..c78886ec032 100644
--- a/usr.sbin/relayctl/relayctl.c
+++ b/usr.sbin/relayctl/relayctl.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: relayctl.c,v 1.45 2011/05/20 09:43:53 reyk Exp $ */
+/* $OpenBSD: relayctl.c,v 1.46 2013/03/10 23:32:53 reyk Exp $ */
/*
* Copyright (c) 2006 Pierre-Yves Ritschard <pyr@openbsd.org>
@@ -443,8 +443,7 @@ show_session_msg(struct imsg *imsg)
a, ntohs(con->se_in.port), b, ntohs(con->se_out.port),
con->se_done ? "DONE" : "RUNNING");
- if (gettimeofday(&tv_now, NULL))
- fatal("show_session_msg: gettimeofday");
+ getmonotime(&tv_now);
print_time(&tv_now, &con->se_tv_start, a, sizeof(a));
print_time(&tv_now, &con->se_tv_last, b, sizeof(b));
printf("\tage %s, idle %s, relay %u, pid %u",