2002-01-06  James R. Van Zandt  <jrv@voyager.mv.com>

	* adjtimex.c (cmos_init): don't re-open the FD if it's already
	open (thanks to Jonathan H N Chin <jhnc%stone@newton.cam.ac.uk>)

2001-06-15  James R. Van Zandt  <jrv@voyager.mv.com>

	* Makefile.in (VERSION): version 1.12.1
	* README.ru: added Russian translation, courtesy of Alex Savvin
	<alex@dag.bryansk.ru>

2000-12-02  James R. Van Zandt  <jrv@voyager.mv.com>

	* adjtimex.c (valid_cmos_rate): Fix grammar in message.

2000-11-21  James R. Van Zandt  <jrv@voyager.mv.com>

	* Makefile.in (VERSION): version 1.12

	* adjtimex.c (puthackent): clear lfile after closing file, so it
	does not get closed a second time (thanks to Bjorn Eriksson
	<mdeans@algonet.se>).

2000-05-14  James R. Van Zandt  <jrv@voyager.mv.com>

	* Makefile.in (VERSION): version 1.11

	* adjtimex.c (review): With both --review and --adjust, set
	sytem time parameters to the least-squares estimates.

2000-01-31  James R. Van Zandt  <jrv@voyager.mv.com>

	* Makefile.in (VERSION): version 1.10

	* adjtimex.c: #define _GNU_SOURCE so strptime is available
	* (log_times): use popen() to recover output from ntpdate, instead
	of an unsafe temporary file (thanks to Colin Phipps <crp22@cam.ac.uk>)

2000-01-03  James R. Van Zandt  <jrv@voyager.mv.com>

	* Makefile.in (VERSION): version 1.9

	* adjtimex.c (usage): remove invalid entries -? and -h

	* adjtimex.c (main): Get version from -D flag rather than RCS string.

	* Makefile.in (adjtimex): Pass version in -D flag.

	* adjtimex.c (compare): Y2K fixes (okay until 2070)

1999-12-16  James R. Van Zandt  <jrv@voyager.mv.com>

	* Makefile.in (adjtimex.lsm): make adjtimex.lsm from
	adjtimex.lsm.in (so version number gets entered automatically).

	* adjtimex.c (valid_system_rate): refer to ntpd instead of xntpd

	* adjtimex.8: refer to ntpd instead of xntpd

	* README: refer to ntpd instead of xntpd

1999-09-06  James R. Van Zandt  <jrv@voyager.mv.com>

	* Makefile.in (bindir): executable goes into /sbin, so it's
	available even if /usr is in a separate filesystem.
	Removed unused variables DISTFILES and MISC.

	* (VERSION): 1.8 (setting here rather than using RCS version
	number of adjtimex.c)

1998-11-28  James R. Van Zandt  <jrv@voyager.mv.com>

	* adjtimex.c: Don't use syscall1() to declare adjtimex() for
	Alpha.  Courtesy of Paul Slootman <paul@debian.org>

1998-10-24  James R. Van Zandt  <jrv@voyager.mv.com>

	* adjtimex.8: change references: clock -> hwclock

1998-08-22  root  <jrv@voyager.mv.com>

	* adjtimex.c (gethackent): Create log file if it does not exist.

1998-08-18  James R. Van Zandt  <jrv@voyager.mv.com>

	* adjtimex.8: default log file is "/var/log/clocks.log".

1998-04-20  James R. Van Zandt  <jrv@voyager.mv.com>

	* adjtimex.c:
	 Code cleanups to silence warnings: Added some casts.  Removed unused
	variables.  Added parens around assignments inside tests.
	 Code is now covered by GNU GPL.

1997-12-11  James R. Van Zandt  <jrv@voyager.mv.com>

	* adjtimex.c:
	  Scanning wtmp rather than utmp, looking for clock resets and reboots.
	  Storing log file entry in a struct hack_s.
	  --compare-all or -C logs values of both clocks and a reference time:
	compare3().
	  --watch asks user for reference time.
	  -h consults specified host for reference time (partial implementation).
	  valid_system_rate() determines whether we can estimate system clock
	rate from previous inverval.
	  valid_cmos_rate() determines whether we can estimate cmos clock rate
	from previous interval.
	  cmos_adj() fetches cmos adjustment from config file.
	  compare_cmos_sys() compares the times on the two clocks, using
	enhanced real time clock support (/proc/rtc) if not root.

	  LOG_PATH, WTMP_PATH, and ADJPATH introduced.
	  added mkgmtime() which is like mktime() but assumes it's given UTC.
	  Removed old code which changes the TZ environment variable.
	  --host uses ntpdate to call timeserver.
	  Implemented puthackent().
	  Filling out struct hack, calling puthackent() to write it.
	  valid_system_time() checks /etc/adjtime too.
	  valid_*() used getch() to read single character -- won't work with
	buffered reads.  Switched to fgets().
	  Using /proc/rtc if available and not root.
	  review() calculates adjustments from log entries.  uses
	kalman_update(), which uses matrix routines from mat.c.

	  --compare-all renamed to --log.
	  --log can be used with --compare.
	  compare3() renamed to log_times().
	  hack.tref (log time) renamed to hack.log.
	  Log time is taken from system time, or even cmos time, if reference
	time is not available.
	  No longer printing sys_error header an extra time.

	  An uncertainty is printed with two significant digits if the first
	digit is `1', and one significant digit otherwise.
	  Optional arguments on --log and --review switches sets the log path
	  Making no adjustment recommendations unless uncertainty is < 100 ppm.
	  Caveating uncertainty of least-squares solution.

	  Including string.h rather than strings.h
	  Really implementing --version switch
	  Displaying more informative help message

	  Credit Michael Meskes.
	  Error sends short message to stderr.
	  Usage message reworded.

1997-11-26  James R. Van Zandt  <jrv@voyager.mv.com>

	* adjtimex.c:   Credit Michael Meskes.
	  Error sends short message to stderr.
	  Usage message reworded.

1997-11-25  James R. Van Zandt  <jrv@voyager.mv.com>

	* adjtimex.c:   Including string.h rather than strings.h
	  Really implementing --version switch
	  Displaying more informative help message

	* adjtimex.c:
	  An uncertainty is printed with two significant digits if the first
	digit is `1', and one significant digit otherwise.
	  Optional arguments on --log and --review switches sets the log path
	  Making no adjustment recommendations unless uncertainty is < 100 ppm.
	  Caveating uncertainty of least-squares solution.

1997-09-13  James R. Van Zandt  <jrv@voyager.mv.com>

	* adjtimex.c:   --compare-all renamed to --log.
	  --log can be used with --compare.
	  compare3() renamed to log_times().
	  hack.tref (log time) renamed to hack.log.
	  Log time is taken from system time, or even cmos time, if reference
	time is not available.
	  No longer printing sys_error header an extra time.

1997-09-01  James R. Van Zandt  <jrv@voyager.mv.com>

	* adjtimex.c:  LOG_PATH, WTMP_PATH, and ADJPATH introduced.
	 added mkgmtime() which is like mktime() but assumes it's given UTC.
	 Removed old code which changes the TZ environment variable.
	 --host uses ntpdate to call timeserver.
	 Implemented puthackent().
	 Filling out struct hack, calling puthackent() to write it.
	 valid_system_time() checks /etc/adjtime too.
	 valid_*() used getch() to read single character -- won't work with
	buffered reads.  Switched to fgets().
	 Using /proc/rtc if available and not root.
	 review() calculates adjustments from log entries.  uses
	kalman_update(), which uses matrix routines from mat.c.

1997-08-21  James R. Van Zandt  <jrv@voyager.mv.com>

	* adjtimex.c:
	 Scanning wtmp rather than utmp, looking for clock resets and reboots.
	 Storing log file entry in a struct hack_s.
	 --compare-all or -C logs values of both clocks and a reference time:
	compare3().
	 --watch asks user for reference time.
	 -h consults specified host for reference time (partial implementation).
	 valid_system_rate() determines whether we can estimate system clock
	rate from previous inverval.
	 valid_cmos_rate() determines whether we can estimate cmos clock rate
	from previous interval.
	 cmos_adj() fetches cmos adjustment from config file.
	 compare_cmos_sys() compares the times on the two clocks, using
	enhanced real time clock support (/proc/rtc) if not root.

1997-02-28  James R. Van Zandt  <jrv@voyager.mv.com>

	Added --help and --version switches.

1997-02-25  James R. Van Zandt  <jrv@voyager.mv.com>
	put settimeofday() stuff in separate function, called twice.

	Incorporated clockdiff functions into adjtimex, as the
	"--comparing" and "--adjusting" options.  (Thanks to Michael
	Meskes <meskes@debian.org> for the idea -- he implemented this
	functionality in the configuration script of his Debian
	package.)  Repeat count set by "--count", and interval set by
	"--interval".

	Parsing command line options with getopt_long_only().
	Test for "-singleshot" had broken "-offset" option.

1997-02-21  James R. Van Zandt  <jrv@voyager.mv.com>

	Removed "status" setting option.
	Checking that ADJ_OFFSET_SINGLESHOT is not used with any other option.
	Label "time" -> "raw time".
	Ensuring kernel resets its internal status to TIME_BAD by calling
	settimeofday().

1995-03-15  James R. Van Zandt  <jrv@voyager.mv.com>

	Moved documentation to README file and man page.
	Ran through indent.
	Usage msg only shows "print" once.

1995-03-07  James R. Van Zandt  <jrv@voyager.mv.com>

	Initial revision

