BIND 10 20111128 released

Jeremy C. Reed jreed at isc.org
Mon Nov 28 22:20:15 UTC 2011


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


Welcome to the 15th development release of BIND 10. This software
suite provides an authoritative DNS server with DNSSEC, IXFR, and
AXFR support, an iterative caching resolver, C++ DNS library with
Python wrappers, statistics collection, an experimental DHCPv6
server, a C++ DHCP packet library, remote run-time configuration
and control, and a lot more.

Interesting changes since the last snapshot release include:

- - Introduction of libdhcp++, a new C++ based library that handles
  DHCPv6 packets and options, and a simple skeleton DHCPv6 server
  that uses that library and is able to assign a single, hardcoded
  lease to a client (SOLICIT-ADVERTISE-REQUEST-REPLY exchange is
  performed).

- - Introduction of system tests using Behavior-Driven Development
  tool, Lettuce.  (Please let us you if you'd like to participate
  in providing system-agnostic behavior and RFC protocol tests.)

- - Outbound IXFR (over TCP) is now supported and journaling of zone
  differences was added.

  NOTE: The SQLite3 schema changed and for IXFR support the database
  needs to be upgraded by running in the build directory:
  "compatcheck/sqlite3-difftbl-check.py --upgrade /path/to/zone.sqlite3".

- - Statistics retrieval for specific counters or resource items,
  for example: http://localhost:8000/bind10/statistics/xml/Stats/boot_time

- - Run-time configuration (for choosing components to run) is more
  flexible now. Note that the Boss start_auth and start_resolver
  configurations have been removed; see the BIND 10 Guide for
  details.

This latest snapshot tarball and its PGP signature can be downloaded at:

  ftp://ftp.isc.org/isc/bind10/devel-20111128/bind10-devel-20111128.tar.gz
  ftp://ftp.isc.org/isc/bind10/devel-20111128/bind10-devel-20111128.tar.gz.sha512.asc

Users and developers are encouraged to participate on the BIND 10
mailing lists.

  https://lists.isc.org/mailman/listinfo/bind10-users
  https://lists.isc.org/mailman/listinfo/bind10-dev

Please let us know about your experiences with using BIND 10.

  Jeremy C. Reed
  BIND 10 Release Engineer
  ISC

p.s. A summary of the significant changes since the previous release
include (from the ChangeLog):

331.	[bug]		shane
	Fixed a bug in data source library where a zone with more labels
	than an out-of-bailiwick name server would cause an exception to
	be raised.
	(Trac #1430, git 81f62344db074bc5eea3aaf3682122fdec6451ad)

330.	[bug]		jelte
	Fixed a bug in b10-auth where it would sometimes fail because it
	tried to check for queued msgq messages before the session was
	fully running.
	(git c35d0dde3e835fc5f0a78fcfcc8b76c74bc727ca)

329.	[doc]		vorner, jreed
	Document the bind10 run control configuration in guide and
	manual page.
	(Trac #1341, git c1171699a2b501321ab54207ad26e5da2b092d63)

328.	[func]		jelte
	b10-auth now passes IXFR requests on to b10-xfrout, and no longer
	responds to them with NOTIMPL.
	(Trac #1390, git ab3f90da16d31fc6833d869686e07729d9b8c135)

327.	[func]		jinmei
	b10-xfrout now supports IXFR.  (Right now there is no user
	configurable parameter about this feature; b10-xfrout will
	always respond to IXFR requests according to RFC1995).
	(Trac #1371 and #1372, git 80c131f5b0763753d199b0fb9b51f10990bcd92b)

326.	[build]*		jinmei
	Added a check script for the SQLite3 schema version.  It will be
	run at the beginning of 'make install', and if it detects an old
	version of schema, installation will stop.  You'll then need to
	upgrade the database file by following the error message.
	(Trac #1404, git a435f3ac50667bcb76dca44b7b5d152f45432b57)

325.	[func]		jinmei
	Python isc.datasrc: added interfaces for difference management:
	DataSourceClient.get_updater() now has the 'journaling' parameter
	to enable storing diffs to the data source, and a new class
	ZoneJournalReader was introduced to retrieve them, which can be
	created by the new DataSourceClient.get_journal_reader() method.
	(Trac #1333, git 3e19362bc1ba7dc67a87768e2b172c48b32417f5,
	git 39def1d39c9543fc485eceaa5d390062edb97676)

324.	[bug]		jinmei
	Fixed reference leak in the isc.log Python module.  Most of all
	BIND 10 Python programs had memory leak (even though the pace of
	leak may be slow) due to this bug.
	(Trac #1359, git 164d651a0e4c1059c71f56b52ea87ac72b7f6c77)

323.	[bug]		jinmei
	b10-xfrout incorrectly skipped adding TSIG RRs to some
	intermediate responses (when TSIG is to be used for the
	responses).  While RFC2845 optionally allows to skip intermediate
	TSIGs (as long as the digest for the skipped part was included
	in a later TSIG), the underlying TSIG API doesn't support this
	mode of signing.
	(Trac #1370, git 76fb414ea5257b639ba58ee336fae9a68998b30d)

322.	[func]		jinmei
	datasrc: Added C++ API for retrieving difference of two versions
	of a zone.  A new ZoneJournalReader class was introduced for this
	purpose, and a corresponding factory method was added to
	DataSourceClient.
	(Trac #1332, git c1138d13b2692fa3a4f2ae1454052c866d24e654)

321.	[func]*		jinmei
	b10-xfrin now installs IXFR differences into the underlying data
	source (if it supports journaling) so that the stored differences
	can be used for subsequent IXFR-out transactions.
	Note: this is a backward incompatibility change for older sqlite3
	database files.  They need to be upgraded to have a "diffs" table.
	(Trac #1376, git 1219d81b49e51adece77dc57b5902fa1c6be1407)

320.	[func]*		vorner
	The --brittle switch was removed from the bind10 executable.
	It didn't work after change #316 (Trac #213) and the same
	effect can be accomplished by declaring all components as core.
	(Trac #1340, git f9224368908dd7ba16875b0d36329cf1161193f0)

319.	[func]		naokikambe
	b10-stats-httpd was updated. In addition of the access to all
	statistics items of all modules, the specified item or the items
	of the specified module name can be accessed.  For example, the
	URI requested by using the feature is showed as
	"/bind10/statistics/xml/Auth" or
	"/bind10/statistics/xml/Auth/queries.tcp". The list of all possible
	module names and all possible item names can be showed in the
	root document, whose URI is "/bind10/statistics/xml".  This change
	is not only for the XML documents but also is for the XSD and
	XSL documents.
	(Trac #917, git b34bf286c064d44746ec0b79e38a6177d01e6956)

318.	[func]		stephen
	Add C++ API for accessing zone difference information in
	database-based data sources.
	(Trac #1330, git 78770f52c7f1e7268d99e8bfa8c61e889813bb33)

317.	[func]		vorner
	datasrc: the getUpdater method of DataSourceClient supports an
	optional 'journaling' parameter to indicate the generated updater
	to store diffs.  The database based derived class implements this
	extension.
	(Trac #1331, git 713160c9bed3d991a00b2ea5e7e3e7714d79625d)

316.	[func]*		vorner
	The configuration of what parts of the system run is more
	flexible now.  Everything that should run must have an
	entry in Boss/components.
	(Trac #213, git 08e1873a3593b4fa06754654d22d99771aa388a6)

315.	[func]		tomek
	libdhcp: Support for DHCPv4 packet manipulation is now implemented.
	All fixed fields are now supported. Generic support for DHCPv4
	options is available (both parsing and assembly). There is no code
	that uses this new functionality yet, so it is not usable directly
	at this time. This code will be used by upcoming b10-dhcp4 daemon.
	(Trac #1228, git 31d5a4f66b18cca838ca1182b9f13034066427a7)

314.	[bug]		jelte
	b10-xfrin would previously initiate incoming transfers upon 
	receiving NOTIFY messages from any address (if the zone was 
	known to b10-xfrin, and using the configured address). It now 
	only starts a transfer if the source address from the NOTIFY 
	packet matches the configured master address and port. This was 
	really already fixed in release bind10-devel-20111014, but there 
	were some deferred cleanups to add.
	(Trac #1298, git 1177bfe30e17a76bea6b6447e14ae9be9e1ca8c2)

313.	[func]		jinmei
	datasrc: Added C++ API for adding zone differences to database
	based data sources.  It's intended to be used for the support for
	IXFR-in and dynamic update (so they can subsequently be retrieved
	for IXFR-out).  The addRecordDiff method of the DatabaseAccessor
	defines the interface, and a concrete implementation for SQLite3
	was provided.
	(Trac #1329, git 1aa233fab1d74dc776899df61181806679d14013)

312.	[func]		jelte
	Added an initial framework for doing system tests using the 
	cucumber-based BDD tool Lettuce. A number of general steps are
	included,  for instance running bind10 with specific
	configurations, sending queries, and inspecting query answers. A
	few very basic tests are included as well.
	(Trac #1290, git 6b75c128bcdcefd85c18ccb6def59e9acedd4437)

311.	[bug]		jelte
	Fixed a bug in bindctl where tab-completion for names that
	contain a hyphen resulted in unexpected behaviour, such as
	appending the already-typed part again.
	(Trac #1345, git f80ab7879cc29f875c40dde6b44e3796ac98d6da)

310.	[bug]		jelte
	Fixed a bug where bindctl could not set a value that is optional
	and has no default, resulting in the error that the setting
	itself was unknown. bindctl now correctly sees the setting and
	is able to set it.
	(Trac #1344, git 0e776c32330aee466073771600390ce74b959b38)

309.	[bug]		jelte
	Fixed a bug in bindctl where the removal of elements from a set
	with default values was not stored, unless the set had been
	modified in another way already.
	(Trac #1343, git 25c802dd1c30580b94345e83eeb6a168ab329a33)

308.	[build]		jelte
	The configure script will now use pkg-config for finding
	information about the Botan library. If pkg-config is unavailable,
	or unaware of Botan, it will fall back to botan-config. It will
	also use botan-config when a specific botan library directory is
	given using the '--with-botan=' flag
	(Trac #1194, git dc491833cf75ac1481ba1475795b0f266545013d)

307.	[func]		vorner
	When zone transfer in fails with IXFR, it is retried with AXFR
	automatically.
	(Trac #1279, git cd3588c9020d0310f949bfd053c4d3a4bd84ef88)

306.	[bug]		stephen
	Boss process now waits for the configuration manager to initialize
	itself before continuing with startup.  This fixes a race condition
	whereby the Boss could start the configuration manager and then
	immediately start components that depended on that component being
	fully initialized.
	(Trac #1271, git 607cbae949553adac7e2a684fa25bda804658f61)

305.	[bug]		jinmei
	Python isc.dns, isc.datasrc, xfrin, xfrout: fixed reference leak
	in Message.get_question(), Message.get_section(),
	RRset.get_rdata(), and DataSourceClient.get_updater().
	The leak caused severe memory leak in b10-xfrin, and (although no
	one reported it) should have caused less visible leak in
	b10-xfrout.  b10-xfrin had its own leak, which was also fixed.
	(Trac #1028, git a72886e643864bb6f86ab47b115a55e0c7f7fcad)

304.	[bug]		jelte
	The run_bind10.sh test script now no longer runs processes from
	an installed version of BIND 10, but will correctly use the
	build tree paths.
	(Trac #1246, git 1d43b46ab58077daaaf5cae3c6aa3e0eb76eb5d8)

303.	[bug]		jinmei
	Changed the installation path for the UNIX domain file used
	for the communication between b10-auth and b10-xfrout to a
	"@PACKAGE@" subdirectory (e.g. from /usr/local/var to
	/usr/local/var/bind10-devel).  This should be transparent change
	because this file is automatically created and cleaned up, but
	if the old file somehow remains, it can now be safely removed.
	(Trac #869, git 96e22f4284307b1d5f15e03837559711bb4f580c)

302.	[bug]		jelte
	msgq no longer crashes if the remote end is closed while msgq
	tries to send data. It will now simply drop the message and close
	the connection itself.
	(Trac #1180, git 6e68b97b050e40e073f736d84b62b3e193dd870a)

301.	[func]		stephen
	Add system test for IXFR over TCP.
	(Trac #1213, git 68ee3818bcbecebf3e6789e81ea79d551a4ff3e8)

300.	[func]*		tomek
	libdhcp: DHCP packet library was implemented. Currently it handles
	packet reception, option parsing, option generation and output
	packet building. Generic and specialized classes for several
	DHCPv6 options (IA_NA, IAADDR, address-list) are available. A
	simple code was added that leverages libdhcp. It is a skeleton
	DHCPv6 server. It receives incoming SOLICIT and REQUEST messages
	and responds with proper ADVERTISE and REPLY. Note that since
	LeaseManager is not implemented, server assigns the same
	hardcoded lease for every client. This change removes existing
	DHCPv6 echo server as it was only a proof of concept code.
	(Trac #1186, git 67ea6de047d4dbd63c25fe7f03f5d5cc2452ad7d)

299.	[build]		jreed
	Do not install the libfake_session, libtestutils, or libbench
	libraries. They are used by tests within the source tree.
	Convert all test-related makefiles to build test code at
	regular make time to better work with test-driven development.
	This reverts some of #1901. (The tests are ran using "make
	check".)
	(Trac #1286, git cee641fd3d12341d6bfce5a6fbd913e3aebc1e8e)

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (NetBSD)

iEUEARECAAYFAk7UCCAACgkQs9Bv5D4YwC0FQQCYgluokVky1HoI1HjEOVQsr3hL
7wCg3OTYBS9Qs8a6sU0J3vTECWNcaXA=
=30qF
-----END PGP SIGNATURE-----



More information about the bind-announce mailing list