Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Fork of ~current OpenBSD's ntpd, with old OpenNTPd patches applied.

branch: master


This is a portable fork of OpenBSD's ntpd software. The aim is to be a successor to the stale 4.6p1 port that was available at time of writing.

At time of writing, the only confirmed platform was FreeBSD. Contributions welcome, although for my sanity I'd prefer to avoid autoconf.

Latest merged upstream: CVS as of 2012-03-04, matching OpenBSD 5.1.


We use git. No major reason for git above any other successor to CVS.

The upstream source should be imported to the openbsd branch and not modified. This was the initial branch at repo init time, master is a fork from openbsd.

The master branch is the live version, which will re-import changes from the openbsd branch.

Signed tags may be laid down for notable points (eg, a release). Signatures are from people, who hold their own PGP keys close to them, not any sort of shared key.

Notes on changes from upstream

imsg.c & imsg.h pulled from libutil, together with imsg-buffer.c.

adjfreq.c, arc4random.c & compat.h pulled from FreeBSD Ports.

Other first-generation patches also taken from FreeBSD; lightly massaged, so all blame is mine and all credit theirs (in particular, credit appears to belong to Christian Weisgerber).

  • Use syslog facility LOG_NTP and alias that to LOG_DAEMON if not defined.
  • SENSORS support restricted to OpenBSD.
    • Mostly HAVE_SENSORS #ifdef, but mention entirely removed from man-pages. If this proves to be a problem, we can always use m4 pre-processing of the man-pages at install time ...
  • "Drift file in ppm for compatibility with reference ntpd".

Other changes or non-changes:

  • Dropped OS-specific boot process information from man-page.
  • Kept default configuration file as /etc/ntpd.conf
  • Added HAVE_ROUTING_TABLES to compat.h
    • Affects: parse.y server.c client.c
    • I believe newer releases of FreeBSD do have it (I need to update).
Something went wrong with that request. Please try again.