From a48de9b290e29e49080696fae108e66ad811b481 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Fri, 18 Jun 1999 05:49:18 +0000 Subject: [PATCH] (BOOT_TIME_FILE): New macro. (get_boot_time): Use it instead of hardwiring the file name. Check BOOT_TIME_FILE only after inspecting the kernel directly. --- src/filelock.c | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/src/filelock.c b/src/filelock.c index 9217b58f188..b671533161f 100644 --- a/src/filelock.c +++ b/src/filelock.c @@ -62,6 +62,12 @@ extern int errno; #include +/* A file whose last-modified time is just after the most recent boot. + Define this to be NULL to disable checking for this file. */ +#ifndef BOOT_TIME_FILE +#define BOOT_TIME_FILE "/var/run/random-seed" +#endif + #ifndef WTMP_FILE #define WTMP_FILE "/var/log/wtmp" #endif @@ -113,18 +119,11 @@ static time_t get_boot_time () { int counter; - struct stat st; if (boot_time_initialized) return boot_time; boot_time_initialized = 1; - if (stat ("/var/run/random-seed", &st) == 0) - { - boot_time = st.st_mtime; - return boot_time; - } - #if defined (CTL_KERN) && defined (KERN_BOOTTIME) { int mib[2]; @@ -143,6 +142,16 @@ get_boot_time () } #endif /* defined (CTL_KERN) && defined (KERN_BOOTTIME) */ + if (BOOT_TIME_FILE) + { + struct stat st; + if (stat (BOOT_TIME_FILE, &st) == 0) + { + boot_time = st.st_mtime; + return boot_time; + } + } + #if defined (BOOT_TIME) && ! defined (NO_WTMP_FILE) #ifndef CANNOT_DUMP /* The utmp routines maintain static state. -- 2.39.2