OpenNTPD 3.6 released

Henning Brauer <[email protected]>
Newsgroups gmane.os.openbsd.announce
Message-ID <[email protected]>
OpenNTPD 3.6 has just been released. It will be available from the
mirrors listed at http://www.openntpd.org/ shortly.
This is our first formal release.

OpenNTPD is a FREE, easy to use implementation of the Network Time Protocol.
It provides the ability to sync the local clock to remote NTP servers
and can act as NTP server itself, redistributing the local clock.

OpenNTPD is developed as part of the OpenBSD project, which sells
CDs, T-Shirts, and Posters.
Sales of these items help to fund development.

For international orders use http://https.openbsd.org/cgi-bin/order
and for European orders, use http://https.openbsd.org/cgi-bin/order.eu

Checksums:
==========

MD5 (openntpd-3.6.tgz) = cd7212ebb28012ec8c627acf176dc025
MD5 (openntpd-3.6p1.tar.gz) = ba69427e83a9a8080410261af116cdbe

Reporting Bugs:
===============

- please read http://www.openbsd.org/report.html

OpenNTPD is brought to you by Henning Brauer, Darren Tucker and Theo de Raadt.

Changelog
=========

20041022
 - (dtucker) Release 3.6p1.

20041015
 - (dtucker) [configure.ac openbsd-compat/inet_pton.c] Fix a couple of silly
   errors that prevented it from working on OS X; from mouring@

20041014
 - (dtucker) configure.ac defines.h includes.h openbsd-compat/Makefile.in
   openbsd-compat/fake-rfc2553.c openbsd-compat/fake-rfc2553.h
   openbsd-compat/inet_pton.c openbsd-compat/openbsd-compat.h] Add support 
   for platforms that do not have a native getaddrinfo interface, based on
   OpenSSH's compatibility interface and OpenBSD's inet_pton.
 - (dtucker) [openbsd-compat/openbsd-compat.h openbsd-compat/bsd-misc.c]
   Compat functions for seteuid and setegid from OpenSSH. ntpd will now work
   on HP-UX.
 - (dtucker) [Makefile.in openbsd-compat/Makefile.in
   openbsd-compat/openbsd-compat.h] Set CPPFLAGS so older make's work.
 - (dtucker) [config.c configure.ac] Check for sin6_scope_id.
 - (dtucker) [openbsd-compat/fake-rfc2553.h] remove sin6_scope_id to re-sync
   with OpenSSH.
 - (dtucker) [README] Update.

20041003
 - (dtucker) [openbsd-compat/asprintf.c] Ensure than string is freed if
   vsnprintf fails.

20041002
 - (dtucker) [configure.ac] Look for res_9_init in libresolv too, needed on
   Mac OS X.  From samh at granada-learning com.
 - (dtucker) [configure.ac includes.h] Check for and include netdb.h, prevents
   "redefinition of EAI_NODATA" errors.

20040912
 - (dtucker) OpenBSD CVS Sync
  - [email protected] 2004/09/07 22:43:07
    [server.c]
    ignore ntp_sendmsg()s return value in server_dispatch. could result in
    ntpd exiting on sendmsg() failures, which is not desired.
  - [email protected] 2004/09/09 21:50:33
    [ntp.c]
    correctly track peer count. fixes a memory corruption.
    with & ok otto millert claudio, ok deraadt canacar

20040904
 - (dtucker) [defines.h] FreeBSD 5.x does not have EAI_NODATA, so define to
   EAI_NONAME.  From naddy at mips.inka.de.
 - (dtucker) [configure.ac openbsd-compat/bsd-arc4random.c] Add support for
   building without OpenSSL (./configure --with-builtin-arc4random), based
   on arcfour routines from nanocrypt by Damien Miller.  Requires /dev/urandom
   device.
 - (dtucker) [configure.ac ntpd.c] Set SIGCHLD to SIG_DFL on Linux.

20040901
 - (dtucker) OpenBSD CVS Sync
  - [email protected] 2004/08/24 15:23:19
    [config.c ]
    don't fatal() if getaddrinfo() returns EAI_NONAME
  - [email protected] 2004/08/30 11:50:56
    [ntp_msg.c]
    ENOBUFS, EHOSTUNREACH, ENETDOWN and EHOSTDOWN are bad reasons to log;
    ok otto henning
  - [email protected] 2004/08/30 11:52:04
    [config.c]
    skip early DNS lookups -- they are deferred to later; ok otto ho henning
  - [email protected] 2004/08/30 12:02:59
    [config.c]
    don't forget to set *hn... theo ok
 - (dtucker) [README] Update platforms.
 - (dtucker) [configure.ac] Add product name to AC_INIT

20040825
 - (dtucker) [ntpd.conf] Sync with OpenBSD, requested by henning@.

20040820
 - (dtucker) [defined.h] Newer FSF bisons will create a y.tab.c that has
   conflicting definitions of YYSTYPE.  Defining YYSTYPE_IS_DECLARED keeps it
   happy.  Noted by Q at ping.be.
 - (dtucker) [removed ntpd.cat8 ntpd.conf.cat5] Remove catman pages.  Noted by
   by Q at ping.be.
 - (dtucker) [configure.ac ntpd.c] Prevent Linux kernel from whining about
   signal(SIGCHLD, SIG_IGN) + wait().
 - (dtucker) OpenBSD CVS Sync
  - [email protected] 2004/08/10 12:41:15
    [config.c ntpd.h parse.y ]
    move memory allocation for new peers into a new function, makes ID
    allocation easier
  - [email protected] 2004/08/10 12:45:27
    [parse.y ]
    in the pool case ("servers somepool.somewhere"), we add new peers while
    looping over the addresses returned by the dns lookup, as each address
    is one new peer.
    however, if the lookup fails with a temporary error, we will try to lookup
    later again. for that, we obviously need to insert one peer with the
    hostname in addr_head... change one for() loop into a do { } while() one
  - [email protected] 2004/08/10 19:17:10
    [ntp_msg.c ]
    wrong sizeof; Brian Poole <[email protected]>
  - [email protected] 2004/08/10 19:18:23
    [buffer.c ]
    order #includes, Brian Poole <[email protected]>
  - [email protected] 2004/08/12 16:33:59
    [client.c config.c ntp.c ntpd.c ntpd.h ]
    do not try to getaddrinfo() in the unprivileged process, send an imsg
    asking the privileged one to do it. sends back an imsg with the
    resulting addresses in a bunch of struct sockaddr_storage in the data
    part.
    this should fix all remaining issues with dns (non-)availability at
    ntpd startup, be it due to named on localhost or something else.
    tested by marco@ and Chris Paul <[email protected]>
  - [email protected] 2004/08/13 12:26:13
    [client.c ]
    Reset deadline on failed transmit. Avoids a spinning process if
    all sends fail. ok henning@
  - [email protected] 2004/08/16 11:14:15
    [client.c ]
    Be more careful setting next and deadline, they should not both be != 0
    at the same time.
    ok henning@
 - (dtucker) [configure.ac] libresolv now needed on some platforms (eg
   Solaris).

20040730
 - (dtucker) OpenBSD CVS Sync
  - [email protected] 2004/07/25 18:27:58
    [config.c ntpd.h ]
    remove unused function
  - [email protected] 2004/07/28 16:38:43
    [client.c config.c ntpd.h parse.y ]
    when a dns lookup fails at parse time, do not abort but try again
    to resolve the hostname every 60 seconds
    fixes ntpd invocations before e. g. a dialup link is established and such.
    as we want ntpd to be a "fire and forget" background daemon it should
    cope with such situations.
    tested by many
  - [email protected] 2004/07/28 16:56:21
    [parse.y ]
    prevent unresolvable hostnames in "listen on" statements
  - [email protected] 2004/07/29 11:01:48
    [ntpd.h parse.y ]
    keep an ID per server we talk to

20040721
 - (dtucker) OpenBSD CVS Sync
  - [email protected] 2004/07/20 16:47:55
    [client.c ntpd.h parse.y ]
    wrap the heads for the linked list of addresses into a new ntp_addr_wrap
    which, besides the head pointer for the list of course, stores the original
    address as specified (i. e. as hostname instead of resolved IPs) and flags
    and such.
  - [email protected] 2004/07/21 09:40:55
    [parse.y ]
    no multiple free(); "John L. Scarfone" <[email protected]>
 - (dtucker) [Makefile.in] rebuild y.tab.c during distprep too.

20040720
 - (dtucker) [Makefile.in] Set @CC@ too.

20040719
 - (dtucker) OpenBSD CVS Sync
  - [email protected] 2004/07/18 12:59:41
    [client.c ntp.c ntpd.h ]
    query interval scaling, episode II
    1) base the interval calculation on the offset from the last reply, not
       from the last peer update.
       Allows us to send more queries again faster when the local clock
       diverges too much
    2) every time we form a peer update (for which we need 8 replies)
       check wether we have a ready peer update for all peers that are
       currently trusted, and if so, calculate the total offset and call
       adjtime().
       that means that adjtime is no longer called in fixed intervals
       but whenever we have enough data to reliably calculate the local
       clock offset.
       In practice, that means we call adjtime() less often, but with
       probably better data.
    3) invalidate peer updates after beeing used. no point in re-using them
       - this resulted in calling adjtime() multiple times with the same
       offset, which doesn't make sense
    tested by many
  - [email protected] 2004/07/18 13:26:53
    [client.c server.c ]
    there are a few recvfrom(2) errors we do not want to panic on
 - (dtucker) [openbsd-compat/bsd-arc4random.c] Discard early keystream from
   RC4, based on OpenSSH Portable's rev 1.9 by djm@.

20040718
 - (dtucker) [Makefile.in] Create privsep directory and warn if _ntp group/
   user do not exist.
 - (dtucker) [defines.h] Mac OS X needs IOV_MAX defined too.  From kinetik at
   orcon.net.nz
 - (dtucker) [configure.ac] Die screaming if we can't find getaddrinfo.
 - (dtucker) [defines.h] Use "#if defined(..) not "#if (..)".
 - (dtucker) [configure.ac] OS X has some broken uidswapping functions, from
   OpenSSH's configure.ac.
 - (dtucker) [configure.ac, added config.sub config.guess] Add
   AC_CANONICAL_HOST and associated files, from kinetik at orcon.net.nz.

20040717
 - (dtucker) [configure.ac] Import --with-ssl-dir checks from OpenSSH
   Portable, configure will now automatically find libcrypto in its default
   location.
 - (dtucker) [ntpd.conf] Make more like OpenBSD's, but select 3 servers from
   pool.ntp.org by default rather than use the "servers" directive.

20040716
 - (dtucker) [Makefile.in configure.ac defines.h includes.h ntp.h ntpd.h
   server.c openbsd-compat/Makefile.in, added openbsd-compat/asprintf.c
   openbsd-compat/bsd-misc.c openbsd-compat/daemon.c] Support Solaris.  Needs
   CFLAGS/LDFLAGS set to find libcrypto, eg
   CFLAGS=-I/usr/local/ssl/include LDFLAGS=-L/usr/local/ssl/lib ./configure
 - (dtucker) [configure.ac] Fix socketpair libnsl/libsocket test.
 - (dtucker) [configure.ac defines.h includes.h
   openbsd-compat/openbsd-compat.h] Fix lots of warnings.

20040715
 - (dtucker) [Makefile.in] Improve "make clean" targets.
 - (dtucker) [configure.ac server.c] Check for getifaddrs and if not found,
   compile without "listen on *" support.
 - (dtucker) OpenBSD CVS Sync
  - [email protected] 2004/07/13 17:27:57
    [server.c]
    ignore obviously malformed queries; ok henning@
  - [email protected] 2004/07/13 19:41:26
    [ntp.c ntpd.h server.c ]
    Respond to client queries with better server statistics.  We now output
    a close-to-reality stratum, a real reference time, and a leap indicator
    that will indicate if the local clock isn't synchronized.
  - [email protected] 2004/07/13 19:51:38
    [ntpd.8 ntpd.conf.5 ]
    tweaks; ok henning@
  - [email protected] 2004/07/14 20:16:31
    [client.c ntp.c ntpd.h server.c ]
    do not do the stratum guessing dance.
    stratum is pretty much pointless anyway these days, and we certainly
    do not want to send out illegal packets (stratum=0) until synced...

20040714
 - (dtucker) [Makefile.in buffer.c configure.ac defines.h includes.h ntpd.c
   parse.y y.tab.c] Fix build warnings on Linux, based in part on a patch
   from kinetik at orcon.net.nz.
 - (dtucker) [Makefile.in] Make a distclean target too.

20040713
 - (dtucker) [Makefile.in buffer.c configure.ac defines.h includes.h
   openbsd-compat/strlcpy.c] Define IOV_MAX for FreeBSD 4, from naddy at
   mips.inka.de.  The C source files should include "includes.h" only.  Fix
   out-of-tree builds too.
 - (dtucker) [configure.ac defines.h includes.h openbsd-compat/openbsd-compat.h
   openbsd-compat/uidswap.c] Add CVS Id's and copyright notices.
 - (dtucker) OpenBSD CVS Sync
  - [email protected] 2004/07/13 11:16:22
    [ntpd.c]
    like bgpd, use a socketpair(2) instead of a pipe(2)
 - (dtucker) [configure.ac defines.h] Use memset if bzero is not available.
 - (dtucker) [configure.ac] Check for setgid too.

20040712
 - (dtucker) OpenBSD CVS Sync
  - [email protected] 2004/07/12 09:22:38
    Replace errx with equivalent fprintf+exit to make porting easier;
    ok henning@
  - [email protected] 2004/07/12 09:38:57
    Add missing newlines
 - (dtucker) [configure.ac includes.h log.c ntp.c openbsd-compat/Makefile.in
   openbsd-compat/openbsd-compat.h, added openbsd-compat/uidswap.c] Import
   stripped-down uidswap.c from OpenSSH Portable for permanently_set_uid.
 - (dtucker) [Makefile.in] Quieter install.
 - (dtucker) [defines.h] Remove setreuid -> setresuid hack.
 - (dtucker) [Makefile.in configure.ac] Move setting of CFLAGS into configure.
 - (dtucker) [ntp.c openbsd-compat/uidswap.c] Set and check return code.
 - (dtucker) [Makefile.in configure.ac includes.h openbsd-compat/Makefile.in
   openbsd-compat/bsd-arc4random.c] Clean up makefiles, fix warnings.

20040711
 - (dtucker) FreeBSD (5.2) build fixes from naddy@: use sysconfdir
   for ntpd.conf location, have configure check for strlcpy.
 - (dtucker) OpenBSD CVS Sync
  - [email protected] 2004/07/10 18:42:51
    [client.c ntp.c ntpd.h]
    scale query interval based on local clock offset. tested by many
    not as efficient as I want it to be yet, but more is coming
  - [email protected] 2004/07/10 18:47:49
    [client.c]
    oups
  - [email protected] 2004/07/10 19:09:13
    [client.c]
    check wether we have enough data to form a peer update on receiption
    of each packet, not only after each 8th (where we have enough for sure)
  - [email protected] 2004/07/10 19:16:06
    [client.c]
    missing {}
  - [email protected] 2004/07/10 22:04:22
    [ntp.h]
    correct leap indicator mask; ok henning@
  - [email protected] 2004/07/10 22:24:20
    [ntpd.h util.c]
    short fixed point <-> double conversion routines; ok henning@
  - alexander@ 2004/07/10 23:12:57
    [ntpd.h]
    KNF; ok henning@
  - [email protected] 2004/07/11 00:15:10
    [client.c ntpd.h]
    Start collecting the remote server state along with the calculated
    offsets, in preparation for having correct server statistics in
    responses to client queries.  ok henning@
  - dtucker@ 2004/07/11 03:05:50
    [log.c ntp_msg.c server.c]
    Use SA_LEN(sa) instead of sa->sa_len; ok henning@  (CVSID sync only)
 - (dtucker) [Makefile.in configure.ac, added install-sh]
   Add "make install target", install-sh from OpenSSH portable.
 - (dtucker) [openbsd-compat/bsd-arc4random.c] fatal() doesn't do varargs.
 - (dtucker) [Makefile.in configure.ac] Only link with libcrypto if needed for
   arc4random replacement.
 - (dtucker) [Makefile.in] Install ntpd.conf man page, fix creation of install
   dirs.  Pointed out by han at mijncomputer.nl.

20040711
 - (dtucker) Initial portablization of OpenBSD's native ntpd by henning@ and
   alexander@.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.