Provided by: freebsd-manpages_12.2-1_all 
      
    
NAME
       inittodr — initialize system time
SYNOPSIS
       #include <sys/types.h>
       #include <sys/systm.h>
       void
       inittodr(time_t base);
DESCRIPTION
       The inittodr() function determines the time and sets the system clock.  It tries to pick the correct time
       using  a  set of heuristics that examine the system's battery backed clock and the time obtained from the
       root file system, as given in base.  How the base value is obtained will vary depending on the root  file
       system type.  The heuristics used include:
       •   If the battery-backed clock has a valid time, it is used.
       •   If the battery-backed clock does not have a valid time, the time provided in base will be used.
       Once a system time has been determined, it is stored in the time variable.
DIAGNOSTICS
       The  inittodr()  function  prints  diagnostic  messages  if  it has trouble figuring out the system time.
       Conditions that can cause diagnostic messages to be printed include:
       •   The battery-backed clock's time appears nonsensical.
SEE ALSO
       resettodr(9), time(9)
BUGS
       On many systems, inittodr() has to convert from a time expressed in terms of  year,  month,  day,  hours,
       minutes, and seconds to time, expressed in seconds.  Many of the implementations could share code, but do
       not.
       Each system's heuristics for picking the correct time are slightly different.
       The  FreeBSD  implementation  should  do  a  better  job of validating the time provided in base when the
       battery-backed clock is unusable.  Currently it unconditionally sets the system clock to this value.
Debian                                           March 22, 1997                                      INITTODR(9)