Development release of BIND 10: bind10-devel-20101201 We are pleased to announce the seventh development release of BIND 10. BIND 10 provides a C++ library for DNS (with python wrappers) and several cooperating daemons for providing authoritative DNS service (with SQLite3 backend and DNSSEC). It contains prototype code and experimental interfaces. Current development includes a stats daemon for collecting and reporting statistics data. We are also continuing work on the first phase of the recursive caching DNS server. Documentation is included and also available via the BIND 10 website at http://bind10.isc.org/ The bind10-devel-20101201 source may be downloaded from: ftp://ftp.isc.org/isc/bind10/devel-20101201/bind10-devel-20101201.tar.gz A PGP signature of the distribution is at ftp://ftp.isc.org/isc/bind10/devel-20101201/bind10-devel-20101201.tar.gz.sha512.asc The signature was generated with the ISC public key, which is available at https://www.isc.org/about/openpgp 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 Bugs may be reported as tickets via the developers website (after logging into Trac): http://bind10.isc.org/ A summary of the significant changes since the previous release include (from the ChangeLog): 124. [bug] jreed Fix some wrong version reporting. Now also show the version for the component and BIND 10 suite. (Trac #302, svn r3696) 123. [bug] jelte src/bin/bindctl printed values had the form of python literals (e.g. 'True'), while the input requires valid JSON (e.g. 'true'). Output changed to JSON format for consistency. (svn r3694) 122. [func] stephen src/bin/bind10: Added configuration options to Boss to determine whether to start the authoritative server, recursive server (or both). A dummy recursor has been provided for test purposes. (Trac #412, svn r3676) 121. [func] jinmei src/lib/dns: Added support for TSIG RDATA. At this moment this is not much of real use, however, because no protocol support was added yet. It will soon be added. (Trac #372, svn r3649) 120. [func] jinmei src/lib/dns: introduced two new classes, TSIGKey and TSIGKeyRing, to manage TSIG keys. (Trac #381, svn r3622) 119. [bug] jinmei The master file parser of the python datasrc module incorrectly regarded a domain name beginning with a decimal number as a TTL specification. This confused b10-loadzone and had it reject to load a zone file that contains such a name. Note: this fix is incomplete and the loadzone would still be confused if the owner name is a syntactically indistinguishable from a TTL specification. This is part of a more general issue and will be addressed in Trac #413. (Trac #411, svn r3599) 118. [func] jinmei src/lib/dns: changed the interface of AbstractRRset::getRdataIterator() so that the internal cursor would point to the first RDATA automatically. This will be a more intuitive and less error prone behavior. This is a backward compatible change. (Trac #410, r3595) 117. [func] jinmei src/lib/datasrc: added new zone and zone table classes for the support of in memory data source. This is an intermediate step to the bigger feature, and is not yet actually usable in practice. (Trac #399, svn r3590) 116. [bug] jerry src/bin/xfrout: Xfrout and Auth will communicate by long tcp connection, Auth needs to make a new connection only on the first time or if an error occurred. (Trac #299, svn r3482) 115. [func]* jinmei src/lib/dns: Changed DNS message flags and section names from separate classes to simpler enums, considering the balance between type safety and usability. API has been changed accordingly. More documentation and tests were provided with these changes. (Trac #358, r3439) 114. [build] jinmei Supported clang++. Note: Boost >= 1.44 is required. (Trac #365, svn r3383) 113. [func]* zhanglikun Folder name 'utils'(the folder in /src/lib/python/isc/) has been renamed to 'util'. Programs that used 'import isc.utils.process' now need to use 'import isc.util.process'. The folder /src/lib/python/isc/Util is removed since it isn't used by any program. (Trac #364, r3382) 112. [func] zhang likun Add one mixin class to override the naive serve_forever() provided in python library socketserver. Instead of polling for shutdwon every poll_interval seconds, one socketpair is used to wake up the waiting server. (Trac #352, svn r3366) 111. [bug]* zhanglikun, Michal Vaner Make sure process xfrin/xfrout/zonemgr/cmdctl can be stopped properly when user enter "ctrl+c" or 'Boss shutdown' command through bindctl. The ZonemgrRefresh.run_timer and NotifyOut.dispatcher spawn a thread themselves. (Trac #335, svn r3273) 110. [func] Michal Vaner Added isc.net.check module to check ip addresses and ports for correctness and isc.net.addr to hold IP address. The bind10, xfrin and cmdctl programs are modified to use it. (Trac #353, svn r3240) 109. [func] naokikambe Added the initial version of the stats module for the statistics feature of BIND 10, which supports the restricted features and items and reports via bindctl command. (Trac #191, r3218) Added the document of the stats module, which is about how stats module collects the data (Trac #170, [wiki:StatsModule]) 108. [func] jerry src/bin/zonemgr: Provide customizable configurations for lowerbound_refresh, lowerbound_retry, max_transfer_timeout and jitter_scope. (Trac #340, r3205) 107. [func] zhang likun Remove the parameter 'db_file' for command 'retransfer' of xfrin module. xfrin.spec will not be generated by script. (Trac #329, r3171) 106. [bug] zhang likun When xfrin can't connect with one zone's master, it should tell the bad news to zonemgr, so that zonemgr can reset the timer for that zone. (Trac #329, r3170) 105. [bug] Michal Vaner Python processes: they no longer take 100% CPU while idle due to a busy loop in reading command session in a nonblocking way. (Trac #349, svn r3153), (Trac #382, svn r3294) 104. [bug] jerry bin/zonemgr: zonemgr should be attempting to refresh expired zones. (Trac #336, r3139) 103. [bug] jerry lib/python/isc/log: Fixed an issue with python logging, python log shouldn't die with OSError. (Trac #267, r3137) 102. [build] jinmei Disable threads in ASIO to minimize build time dependency. (Trac #345, r3100) 101. [func] jinmei src/lib/dns: Completed Opcode and Rcode implementation with more tests and documentation. API is mostly the same but the validation was a bit tightened. (Trac #351, svn r3056) 100. [func] Michal Vaner Python processes: support naming of python processes so they're not all called python3. (Trac #322, svn r3052) 99. [func]* jinmei Introduced a separate EDNS class to encapsulate EDNS related information more cleanly. The related APIs are changed a bit, although it won't affect most of higher level applications. (Trac #311, svn r3020) 98. [build] jinmei The ./configure script now tries to search some common include paths for boost header files to minimize the need for explicit configuration with --with-boost-include. (Trac #323, svn r3006) 97. [func] jinmei Added a micro benchmark test for query processing of b10-auth. (Trac #308, svn r2982) 96. [bug] jinmei Fixed two small issues with configure: Do not set CXXFLAGS so that it can be customized; Make sure --disable-static works. (Trac #325, r2976) We look forward to hearing from you, Jeremy C. Reed ISC Release Engineer