changeset 24869:28e022c50e4f

(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.
author Paul Eggert <eggert@twinsun.com>
date Fri, 18 Jun 1999 05:49:18 +0000
parents de2065294ca3
children b0f6eab5deeb
files src/filelock.c
diffstat 1 files changed, 16 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/src/filelock.c	Thu Jun 17 22:57:01 1999 +0000
+++ b/src/filelock.c	Fri Jun 18 05:49:18 1999 +0000
@@ -62,6 +62,12 @@
 
 #include <utmp.h>
 
+/* 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 @@
 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 @@
   }
 #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.