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@.