From e69088a2edb284f748570158097465e4c879e13c Mon Sep 17 00:00:00 2001 From: Aaron Taylor Date: Mon, 7 Oct 2019 04:19:28 -0700 Subject: [PATCH 1/1] Updated timeval_diff() to calculate a full difference. --- icmpmonitor.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/icmpmonitor.c b/icmpmonitor.c index efa6d71..6bc2006 100644 --- a/icmpmonitor.c +++ b/icmpmonitor.c @@ -100,12 +100,16 @@ checksum(const uint16_t * data) } /* - * Calculate difference between two timeval structs to within one second. + * Calculate difference (a-b) between two timeval structs. */ void timeval_diff(struct timeval * a, const struct timeval * b) { - assert(a->tv_sec >= b->tv_sec); + if (a->tv_usec < b->tv_usec) { + a->tv_sec--; + a->tv_usec += 1000000; + } + a->tv_usec -= b->tv_usec; a->tv_sec -= b->tv_sec; } -- 2.20.1