agent: Use clock or clock_gettime for calibration.
authorNIIBE Yutaka <gniibe@fsij.org>
Tue, 7 Nov 2017 01:49:36 +0000 (10:49 +0900)
committerWerner Koch <wk@gnupg.org>
Mon, 20 Nov 2017 10:53:44 +0000 (11:53 +0100)
commit760aa8aadafb747f33a1461ab0c2570b5ae43716
treed741f7e8f1d9fecf960063d842731c5a21b3fa1b
parent3ecd1a41be7c880976987d13e88342c98f37e064
agent: Use clock or clock_gettime for calibration.

* agent/protect.c (calibrate_get_time): Use clock or clock_gettime.

--

For calibration, clock(3) is better than times(3) among UNIXen.
Tested on NetBSD 7.1 and FreeBSD 11.1, using QEMU.

Thanks to Damien Goutte-Gattat for the information of use of
CLOCKS_PER_SEC;  The old code with times(3) is not 100% correct,
in terms of POSIX.  It should have used sysconf (_SC_CLK_TCK) instead
of CLOCKS_PER_SEC.  CLOCKS_PER_SEC is specifically for clock(3).

GnuPG-bug-id: 3056, 3276, 3472
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
(cherry picked from commit 380bce13d94ff03c96e39ac1d834f382c5c730a1)
agent/protect.c
agent/t-protect.c