From 62bc8d19bdc640fe490ce2489c14591b5d356675 Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Wed, 16 Oct 2013 15:42:12 -0700 Subject: [PATCH] blkid: fix blkid time diff bug When calculating time diffs, use difftime() instead of risking integer overflow. Also build a "blkid" binary. Addresses-Google-Bug: #11175082 Change-Id: I23521f45204574bb32f152926401c2cbad93175b Signed-off-by: Theodore Ts'o --- lib/blkid/probe.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/blkid/probe.c b/lib/blkid/probe.c index 77d0899..a486017 100644 --- a/lib/blkid/probe.c +++ b/lib/blkid/probe.c @@ -1532,14 +1532,15 @@ blkid_dev blkid_verify(blkid_cache cache, blkid_dev dev) unsigned char *buf; const char *type, *value; struct stat st; - time_t diff, now; + time_t now; + double diff; int idx; if (!dev) return NULL; now = time(0); - diff = now - dev->bid_time; + diff = difftime(now, dev->bid_time); if (stat(dev->bid_name, &st) < 0) { DBG(DEBUG_PROBE, -- 1.8.3.1