ChangeLog 88.9 KB
Newer Older
1
2
3
4
5
6
3XX.	[func]		tomek
	libdhcp++: Option6 and Pkt6 now follow the same design as
	options and packet for DHCPv4. General code refactoring after
	end of 2011 year release.
	(Trac #1540, git TBD)

7
8
9
10
11
12
13
14
359.	[bug]		kevin
	Corrected SOA serial check in xfrout.  It now compares the SOA
	serial of an IXFR query with that of the server based serial
	number arithmetic, and replies with a single SOA record of the
	server's current version if the former is equal to or newer
	than the latter.
	(Trac #1462, git ceeb87f6d539c413ebdc66e4cf718e7eb8559c45)

JINMEI Tatuya's avatar
JINMEI Tatuya committed
15
16
17
18
19
20
21
22
23
358.	[bug]		jinmei
	b10-resolver ignored default configuration parameters if listen_on
	failed (this can easily happen especially for a test environment
	where the run time user doesn't have root privilege), and even if
	listen_on was updated later the resolver wouldn't work correctly
	unless it's fully restarted (for example, all queries would be
	rejected due to an empty ACL).
	(Trac #1424, git 2cba8cb83cde4f34842898a848c0b1182bc20597)

JINMEI Tatuya's avatar
JINMEI Tatuya committed
24
25
26
27
28
357.	[bug]		jinmei
	ZoneFinder::find() for database based data sources didn't
	correctly identify out-of-zone query name and could return a
	confusing result such as NXRRSET.  It now returns NXDOMAIN with an
	empty RRset.  Note: we should rather throw an exception in such a
29
	case, which should be revisited later (see Trac #1536).
JINMEI Tatuya's avatar
JINMEI Tatuya committed
30
31
	(Trac #1430, git b35797ba1a49c78246abc8f2387901f9690b328d)

Tomek Mrugalski's avatar
Tomek Mrugalski committed
32
356.	[doc]		tomek
Tomek Mrugalski's avatar
Tomek Mrugalski committed
33
34
35
	BIND10 Guide updated. It now describes DHCPv4 and DHCPv6
	components, including their overview, usage, supported standard
	and limitations. libdhcp++ is also described.
Tomek Mrugalski's avatar
Tomek Mrugalski committed
36
	(Trac #1367, git 3758ab360efe1cdf616636b76f2e0fb41f2a62a0)
Tomek Mrugalski's avatar
Tomek Mrugalski committed
37

38
39
40
41
42
43
44
45
355.	[bug]		jinmei
	Python xfrin.diff module incorrectly combined RRSIGs of different
	type covered, possibly merging different TTLs.  As a result a
	secondary server could store different RRSIGs than those at the
	primary server if it gets these records via IXFR.
	(Trac #1502, git 57b06f8cb6681f591fa63f25a053eb6f422896ef)

354.	[func]		tomek
Tomek Mrugalski's avatar
Tomek Mrugalski committed
46
47
48
	dhcp4: Support for DISCOVER and OFFER implemented. b10-dhcp4 is
	now able to offer hardcoded leases to DHCPv4 clients.
	dhcp6: Code refactored to use the same approach as dhcp4.
Tomek Mrugalski's avatar
Tomek Mrugalski committed
49
	(Trac #1230, git aac05f566c49daad4d3de35550cfaff31c124513)
Tomek Mrugalski's avatar
Tomek Mrugalski committed
50

51
353.	[func]		tomek
Tomek Mrugalski's avatar
Tomek Mrugalski committed
52
	libdhcp++: Interface detection in Linux implemented. libdhcp++
53
54
55
56
	is now able (on Linux systems) to detect available network
	interfaces, its link-layer addresses, flags and configured
	IPv4 and IPv6 addresses. Interface detection on other
	systems is planned.
Tomek Mrugalski's avatar
Tomek Mrugalski committed
57
58
	(Trac #1237, git 8a040737426aece7cc92a795f2b712d7c3407513)

59
352.	[func]		tomek
60
61
62
63
64
	libdhcp++: Transmission and reception of DHCPv4 packets is now
	implemented. Low-level hacks are not implemented for transmission
	to hosts that don't have IPv4 address yet, so currently the code
	is usable for communication with relays only, not hosts on the
	same link.
65
	(Trac #1239, #1240, git f382050248b5b7ed1881b086d89be2d9dd8fe385)
Tomek Mrugalski's avatar
Tomek Mrugalski committed
66

Jeremy C. Reed's avatar
Jeremy C. Reed committed
67
351.	[func]		fdupont
68
69
	Alpha version of DHCP benchmarking tool added.  "perfdhcp" is able to
	test both IPv4 and IPv6 servers: it can time the four-packet exchange
Jeremy C. Reed's avatar
Jeremy C. Reed committed
70
71
72
	(DORA and SARR) as well as time the initial two-packet exchange (DO
	and SA).  More information can be obtained by invoking the utility
	(in tests/tools/perfdhcp) with the "-h" flag.
73
74
	(Trac #1450, git 85083a76107ba2236732b45524ce7018eefbaf90)

75
350.	[func]*		vorner
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
76
77
78
79
80
81
	The target parameter of ZoneFinder::find is no longer present, as the
	interface was awkward. To get all the RRsets of a single domain, use
	the new findAll method (the same applies to python version, the method
	is named find_all).
	(Trac #1483,#1484, git 0020456f8d118c9f3fd6fc585757c822b79a96f6)

Dima Volodin's avatar
Dima Volodin committed
82
349.	[bug]		dvv
Jeremy C. Reed's avatar
Jeremy C. Reed committed
83
84
	resolver: If an upstream server responds with FORMERR to an EDNS
	query, try querying it without EDNS.
Dima Volodin's avatar
Dima Volodin committed
85
	(Trac #1386, git 99ad0292af284a246fff20b3702fbd7902c45418)
Dima Volodin's avatar
Dima Volodin committed
86

87
88
89
348.	[bug]		stephen
	By default the logging output stream is now flushed after each write.
	This fixes a problem seen on some systems where the log output from
Jeremy C. Reed's avatar
Jeremy C. Reed committed
90
91
	different processes was jumbled up.  Flushing can be disabled by
	setting the appropriate option in the logging configuration.
92
93
	(Trac #1405, git 2f0aa20b44604b671e6bde78815db39381e563bf)

Jelte Jansen's avatar
Jelte Jansen committed
94
95
96
97
98
99
100
101
347.	[bug]		jelte
	Fixed a bug where adding Zonemgr/secondary_zones without explicitely
	setting the class value of the added zone resulted in a cryptic
	error in bindctl ("Error: class"). It will now correctly default to
	IN if not set. This also adds better checks on the name and class
	values, and better errors if they are bad.
	(Trac #1414, git 7b122af8489acf0f28f935a19eca2c5509a3677f)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
102
346.	[build]*		jreed
103
104
105
	Renamed libdhcp to libdhcp++.
	(Trac #1446, git d394e64f4c44f16027b1e62b4ac34e054b49221d)

106
345.	[func]		tomek
Tomek Mrugalski's avatar
Tomek Mrugalski committed
107
108
109
	dhcp4: Dummy DHCPv4 component implemented. Currently it does
	nothing useful, except providing skeleton implementation that can
	be expanded in the future.
Tomek Mrugalski's avatar
Tomek Mrugalski committed
110
	(Trac #992, git d6e33479365c8f8f62ef2b9aa5548efe6b194601)
Tomek Mrugalski's avatar
Tomek Mrugalski committed
111

112
344.	[func]		y-aharen
113
114
115
	src/lib/statistics: Added statistics counter library for entire server
	items and per zone items. Also, modified b10-auth to use it. It is
	also intended to use in the other modules such as b10-resolver.
Yoshitaka Aharen's avatar
Yoshitaka Aharen committed
116
	(Trac #510, git afddaf4c5718c2a0cc31f2eee79c4e0cc625499f)
117

Jelte Jansen's avatar
Jelte Jansen committed
118
119
120
121
122
343.	[func]		jelte
	Added IXFR-out system tests, based on the first two test sets of
	http://bind10.isc.org/wiki/IxfrSystemTests.
	(Trac #1314, git 1655bed624866a766311a01214597db01b4c7cec)

123
124
342.	[bug]		stephen
	In the resolver, a FORMERR received from an upstream nameserver
Jeremy C. Reed's avatar
Jeremy C. Reed committed
125
	now results in a SERVFAIL being returned as a response to the original
126
127
128
129
	query.  Additional debug messages added to distinguish between
	different errors in packets received from upstream nameservers.
	(Trac #1383, git 9b2b249d23576c999a65d8c338e008cabe45f0c9)

130
341.	[func]		tomek
Tomek Mrugalski's avatar
Tomek Mrugalski committed
131
132
	libdhcp++: Support for handling both IPv4 and IPv6 added.
	Also added support for binding IPv4 sockets.
133
134
	(Trac #1238, git 86a4ce45115dab4d3978c36dd2dbe07edcac02ac)

Jelte Jansen's avatar
Jelte Jansen committed
135
136
137
138
139
340.	[build]		jelte
	Fixed several linker issues related to recent gcc versions, botan
	and gtest.
	(Trac #1442, git 91fb141bfb3aadfdf96f13e157a26636f6e9f9e3)

140
141
142
143
144
145
146
339.	[bug]		jinmei
	libxfr, used by b10-auth to share TCP sockets with b10-xfrout,
	incorrectly propagated ASIO specific exceptions to the application
	if the given file name was too long.  This could lead to
	unexpected shut down of b10-auth.
	(Trac #1387, git a5e9d9176e9c60ef20c0f5ef59eeb6838ed47ab2)

JINMEI Tatuya's avatar
JINMEI Tatuya committed
147
148
149
150
151
338.	[bug]		jinmei
	b10-xfrin didn't check SOA serials of SOA and IXFR responses,
	which resulted in unnecessary transfer or unexpected IXFR
	timeouts (these issues were not overlooked but deferred to be
	fixed until #1278 was completed).  Validation on responses to SOA
152
	queries were tightened, too.
JINMEI Tatuya's avatar
JINMEI Tatuya committed
153
154
	(Trac #1299, git 6ff03bb9d631023175df99248e8cc0cda586c30a)

Tomek Mrugalski's avatar
Tomek Mrugalski committed
155
337.	[func]		tomek
156
157
158
	libdhcp++: Support for DHCPv4 option that can store a single
	address or a list of IPv4 addresses added. Support for END option
	added.
Tomek Mrugalski's avatar
Tomek Mrugalski committed
159
160
	(Trac #1350, git cc20ff993da1ddb1c6e8a98370438b45a2be9e0a)

JINMEI Tatuya's avatar
JINMEI Tatuya committed
161
336.	[func]		jelte
Jelte Jansen's avatar
Jelte Jansen committed
162
163
164
165
166
167
168
	libdns++ (and its python wrapper) now includes a class Serial, for 
	SOA SERIAL comparison and addition. Operations on instances of this 
	class follow the specification from RFC 1982. 
	Rdata::SOA::getSerial() now returns values of this type (and not 
	uint32_t).
	(Trac #1278, git 2ae72d76c74f61a67590722c73ebbf631388acbd)

Jelte Jansen's avatar
Jelte Jansen committed
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
335.	[bug]*		jelte
	The DataSourceClientContainer class that dynamically loads 
	datasource backend libraries no longer provides just a .so file name 
	to its call to dlopen(), but passes it an absolute path. This means 
	that it is no longer an system implementation detail that depends on 
	[DY]LD_LIBRARY_PATH which file is chosen, should there be multiple 
	options (for instance, when test-running a new build while a 
	different version is installed).
	These loadable libraries are also no longer installed in the default 
	library path, but in a subdirectory of the libexec directory of the 
	target ($prefix/libexec/[version]/backends).
	This also removes the need to handle b10-xfin and b10-xfrout as 
	'special' hardcoded components, and they are now started as regular 
	components as dictated by the configuration of the boss process.
	(Trac #1292, git 83ce13c2d85068a1bec015361e4ef8c35590a5d0)

185
186
187
188
189
190
191
192
193
334.	[bug]		jinmei
	b10-xfrout could potentially create an overflow response message
	(exceeding the 64KB max) or could create unnecessarily small
	messages.  The former was actually unlikely to happen due to the
	effect of name compression, and the latter was marginal and at least
	shouldn't cause an interoperability problem, but these were still
	potential problems and were fixed.
	(Trac #1389, git 3fdce88046bdad392bd89ea656ec4ac3c858ca2f)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
194
195
196
333.	[bug]		dvv
	Solaris needs "-z now" to force non-lazy binding and prevent
	g++ static initialization code from deadlocking.
Dima Volodin's avatar
Dima Volodin committed
197
198
	(Trac #1439, git c789138250b33b6b08262425a08a2a0469d90433)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
199
332.	[bug]		vorner
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
200
201
202
203
	C++ exceptions in the isc.dns.Rdata wrapper are now converted
	to python ones instead of just aborting the interpretter.
	(Trac #1407, git 5b64e839be2906b8950f5b1e42a3fadd72fca033)

204
205
bind10-devel-20111128 released on November 28, 2011

206
207
208
209
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.
210
	(Trac #1430, git 81f62344db074bc5eea3aaf3682122fdec6451ad)
211

Jelte Jansen's avatar
Jelte Jansen committed
212
213
214
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
215
216
	fully running.
	(git c35d0dde3e835fc5f0a78fcfcc8b76c74bc727ca)
Jelte Jansen's avatar
Jelte Jansen committed
217

Jeremy C. Reed's avatar
Jeremy C. Reed committed
218
329.	[doc]		vorner, jreed
219
220
	Document the bind10 run control configuration in guide and
	manual page.
Jeremy C. Reed's avatar
Jeremy C. Reed committed
221
222
	(Trac #1341, git c1171699a2b501321ab54207ad26e5da2b092d63)

Jelte Jansen's avatar
Jelte Jansen committed
223
224
225
226
227
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)

228
229
230
231
232
233
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)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
234
326.	[build]*		jinmei
235
236
237
238
239
240
	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)

JINMEI Tatuya's avatar
JINMEI Tatuya committed
241
242
243
244
245
246
247
248
249
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)

250
251
252
253
254
255
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)

256
257
258
259
260
261
262
263
264
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)

265
266
267
268
269
270
271
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)

272
273
274
275
276
277
278
279
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)

Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
280
320.	[func]*		vorner
281
282
283
	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.
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
284
285
	(Trac #1340, git f9224368908dd7ba16875b0d36329cf1161193f0)

286
319.	[func]		naokikambe
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
287
	b10-stats-httpd was updated. In addition of the access to all
Jeremy C. Reed's avatar
Jeremy C. Reed committed
288
289
290
291
	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
292
	"/bind10/statistics/xml/Auth/queries.tcp". The list of all possible
Jeremy C. Reed's avatar
Jeremy C. Reed committed
293
294
295
296
	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.
297
	(Trac #917, git b34bf286c064d44746ec0b79e38a6177d01e6956)
298

Jeremy C. Reed's avatar
Jeremy C. Reed committed
299
300
301
318.	[func]		stephen
	Add C++ API for accessing zone difference information in
	database-based data sources.
302
303
	(Trac #1330, git 78770f52c7f1e7268d99e8bfa8c61e889813bb33)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
304
305
306
307
308
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.
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
309
310
	(Trac #1331, git 713160c9bed3d991a00b2ea5e7e3e7714d79625d)

Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
311
316.	[func]*		vorner
Jeremy C. Reed's avatar
Jeremy C. Reed committed
312
313
314
	The configuration of what parts of the system run is more
	flexible now.  Everything that should run must have an
	entry in Boss/components.
315
	(Trac #213, git 08e1873a3593b4fa06754654d22d99771aa388a6)
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
316

317
315.	[func]		tomek
Tomek Mrugalski's avatar
Tomek Mrugalski committed
318
319
320
321
322
	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.
Tomek Mrugalski's avatar
Tomek Mrugalski committed
323
324
	(Trac #1228, git 31d5a4f66b18cca838ca1182b9f13034066427a7)

Jelte Jansen's avatar
Jelte Jansen committed
325
326
327
328
329
330
331
332
333
334
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)

335
336
337
338
339
340
341
342
343
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)

Jelte Jansen's avatar
Jelte Jansen committed
344
345
312.	[func]		jelte
	Added an initial framework for doing system tests using the 
346
347
348
349
	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.
Jelte Jansen's avatar
Jelte Jansen committed
350
351
	(Trac #1290, git 6b75c128bcdcefd85c18ccb6def59e9acedd4437)

Jelte Jansen's avatar
Jelte Jansen committed
352
353
354
355
356
357
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)

Jelte Jansen's avatar
Jelte Jansen committed
358
359
360
361
362
363
364
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)

Jelte Jansen's avatar
Jelte Jansen committed
365
366
367
368
369
370
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)

371
372
373
374
375
376
377
378
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)

JINMEI Tatuya's avatar
JINMEI Tatuya committed
379
307.	[func]		vorner
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
380
381
382
383
	When zone transfer in fails with IXFR, it is retried with AXFR
	automatically.
	(Trac #1279, git cd3588c9020d0310f949bfd053c4d3a4bd84ef88)

384
306.	[bug]		stephen
385
386
387
388
389
390
391
	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)

JINMEI Tatuya's avatar
JINMEI Tatuya committed
392
393
394
395
396
397
398
399
400
401
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
402
403
404
405
406
	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)

407
408
409
410
411
412
413
414
415
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)

JINMEI Tatuya's avatar
JINMEI Tatuya committed
416
302.	[bug]		jelte
Jelte Jansen's avatar
Jelte Jansen committed
417
418
419
420
421
	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)

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

Tomek Mrugalski's avatar
Tomek Mrugalski committed
426
300.	[func]*		tomek
427
428
429
430
431
432
433
	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
434
435
436
437
	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)
438

439
440
441
442
443
444
445
446
447
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)

448
449
bind10-devel-20111014 released on October 14, 2011

450
451
452
453
298.	[doc]		jreed
	Shorten README. Include plain text format of the Guide.
	(git d1897d3, git 337198f)

Dima Volodin's avatar
Dima Volodin committed
454
297.	[func]		dvv
455
	Implement the SPF rrtype according to RFC4408.
Dima Volodin's avatar
Dima Volodin committed
456
457
	(Trac #1140, git 146934075349f94ee27f23bf9ff01711b94e369e)

458
296.	[build]		jreed
459
460
461
462
	Do not install the unittest libraries. At this time, they
	are not useful without source tree (and they may or may
	not have googletest support). Also, convert several makefiles
	to build tests at "check" time and not build time.
Jeremy C. Reed's avatar
Jeremy C. Reed committed
463
	(Trac #1091, git 2adf4a90ad79754d52126e7988769580d20501c3)
464

465
295.	[bug]		jinmei
JINMEI Tatuya's avatar
JINMEI Tatuya committed
466
467
468
469
470
471
472
473
	__init__.py for isc.dns was installed in the wrong directory,
	which would now make xfrin fail to start.  It was also bad
	in that it replaced any existing __init__.py in th public
	site-packages directory.  After applying this fix You may want to
	check if the wrong init file is in the wrong place, in which
	case it should be removed.
	(Trac #1285, git af3b17472694f58b3d6a56d0baf64601b0f6a6a1)

474
475
476
477
478
294.	[func]		jelte, jinmei, vorner
	b10-xfrin now supports incoming IXFR.  See BIND 10 Guide for
	how to configure it and operational notes.
	(Trac #1212, multiple git merges)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
479
293.	[func]*		tomek
Tomek Mrugalski's avatar
Tomek Mrugalski committed
480
481
482
483
484
485
486
487
488
	b10-dhcp6: Implemented DHCPv6 echo server. It joins DHCPv6
	multicast groups and listens to incoming DHCPv6 client messages.
	Received messages are then echoed back to clients. This
	functionality is limited, but it can be used to test out client
	resiliency to unexpected messages. Note that network interface
	detection routines are not implemented yet, so interface name
	and its address must be specified in interfaces.txt.
	(Trac #878, git 3b1a604abf5709bfda7271fa94213f7d823de69d)

Dima Volodin's avatar
Dima Volodin committed
489
292.	[func]		dvv
490
	Implement the DLV rrtype according to RFC4431.
Dima Volodin's avatar
Dima Volodin committed
491
	(Trac #1144, git d267c0511a07c41cd92e3b0b9ee9bf693743a7cf)
492

Jeremy C. Reed's avatar
Jeremy C. Reed committed
493
291.	[func]		naokikambe
Naoki Kambe's avatar
Naoki Kambe committed
494
495
496
497
	Statistics items are specified by each module's spec file.
	Stats module can read these through the config manager. Stats
	module and stats httpd report statistics data and statistics
	schema by each module via both bindctl and HTTP/XML.
Jeremy C. Reed's avatar
Jeremy C. Reed committed
498
499
	(Trac #928,#929,#930,#1175,
	git 054699635affd9c9ecbe7a108d880829f3ba229e)
Naoki Kambe's avatar
Naoki Kambe committed
500

501
502
503
504
505
506
507
508
290.	[func]		jinmei
	libdns++/pydnspp: added an option parameter to the "from wire"
	methods of the Message class.  One option is defined,
	PRESERVE_ORDER, which specifies the parser to handle each RR
	separately, preserving the order, and constructs RRsets in the
	message sections so that each RRset contains only one RR.
	(Trac #1258, git c874cb056e2a5e656165f3c160e1b34ccfe8b302)

509
510
289.	[func]*		jinmei
	b10-xfrout: ACLs for xfrout can now be configured per zone basis.
511
	A per zone ACL is part of a more general zone configuration.  A
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
	quick example for configuring an ACL for zone "example.com" that
	rejects any transfer request for that zone is as follows:
	> config add Xfrout/zone_config
	> config set Xfrout/zone_config[0]/origin "example.com"
	> config add Xfrout/zone_config[0]/transfer_acl
	> config set Xfrout/zone_config[0]/transfer_acl[0] {"action": "REJECT"}
	The previous global ACL (query_acl) was renamed to transfer_acl,
	which now works as the default ACL.  Note: backward compatibility
	is not provided, so an existing configuration using query_acl
	needs to be updated by hand.
	Note: the per zone configuration framework is a temporary
	workaround.  It will eventually be redesigned as a system wide
	configuration.
	(Trac #1165, git 698176eccd5d55759fe9448b2c249717c932ac31)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
527
288.	[bug]		stephen
528
529
530
531
532
533
	Fixed problem whereby the order in which component files appeared in
	rdataclass.cc was system dependent, leading to problems on some
	systems where data types were used before the header file in which
	they were declared was included.
	(Trac #1202, git 4a605525cda67bea8c43ca8b3eae6e6749797450)

534
535
536
537
538
539
540
541
287.	[bug]*		jinmei
	Python script files for log messages (xxx_messages.py) should have
	been installed under the "isc" package.  This fix itself should
	be a transparent change without affecting existing configurations
	or other operational practices, but you may want to clean up the
	python files from the common directly (such as "site-packages").
	(Trac #1101, git 0eb576518f81c3758c7dbaa2522bd8302b1836b3)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
542
286.	[func]		ocean
543
544
545
546
	libdns++: Implement the HINFO rrtype support according to RFC1034,
	and RFC1035.
	(Trac #1112, git 12d62d54d33fbb1572a1aa3089b0d547d02924aa)

Jelte Jansen's avatar
Jelte Jansen committed
547
548
549
550
551
552
285.	[bug]		jelte
	sqlite3 data source: fixed a race condition on initial startup,
	when the database has not been initialized yet, and multiple
	processes are trying to do so, resulting in one of them failing.
	(Trac #326, git 5de6f9658f745e05361242042afd518b444d7466)

553
554
555
284.	[bug]		jerry
	b10-zonemgr: zonemgr will not terminate on empty zones, it will
	log a warning and try to do zone transfer for them.
556
	(Trac #1153, git 0a39659638fc68f60b95b102968d7d0ad75443ea)
557

Jeremy C. Reed's avatar
Jeremy C. Reed committed
558
283.	[bug]		zhanglikun
559
560
561
562
563
564
	Make stats and boss processes wait for answer messages from each
	other in block mode to avoid orphan answer messages, add an internal
	command "getstats" to boss process for getting statistics data from
	boss.
	(Trac #519, git 67d8e93028e014f644868fede3570abb28e5fb43)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
565
282.	[func]		ocean
566
567
568
	libdns++: Implement the NAPTR rrtype according to RFC2915,
	RFC2168 and RFC3403.
	(Trac #1130, git 01d8d0f13289ecdf9996d6d5d26ac0d43e30549c)
569

570
571
bind10-devel-20110819 released on August 19, 2011

572
573
574
575
281.	[func]		jelte
	Added a new type for configuration data: "named set". This allows for
	similar configuration as the current "list" type, but with strings
	instead of indices as identifiers. The intended use is for instance
576
577
	/foo/zones/example.org/bar instead of /foo/zones[2]/bar. Currently
	this new type is not in use yet.
578
579
	(Trac #926, git 06aeefc4787c82db7f5443651f099c5af47bd4d6)

580
581
280.	[func]		jerry
	libdns++: Implement the MINFO rrtype according to RFC1035.
582
	(Trac #1113, git 7a9a19d6431df02d48a7bc9de44f08d9450d3a37)
583

584
585
279.	[func]		jerry
	libdns++: Implement the AFSDB rrtype according to RFC1183.
586
	(Trac #1114, git ce052cd92cd128ea3db5a8f154bd151956c2920c)
587

588
589
278.	[doc]		jelte
	Add logging configuration documentation to the guide.
590
	(Trac #1011, git 2cc500af0929c1f268aeb6f8480bc428af70f4c4)
591

592
277.	[func]		jerry
593
	libdns++: Implement the SRV rrtype according to RFC2782.
594
595
	(Trac #1128, git 5fd94aa027828c50e63ae1073d9d6708e0a9c223)

596
597
598
599
600
601
276.	[func]		stephen
	Although the top-level loggers are named after the program (e.g.
	b10-auth, b10-resolver), allow the logger configuration to omit the
	"b10-" prefix and use just the module name.
	(Trac #1003, git a01cd4ac5a68a1749593600c0f338620511cae2d)

602
603
604
605
606
607
608
609
610
611
275.	[func]		jinmei
	Added support for TSIG key matching in ACLs.  The xfrout ACL can
	now refer to TSIG key names using the "key" attribute.  For
	example, the following specifies an ACL that allows zone transfer
	if and only if the request is signed with a TSIG of a key name
	"key.example":
	> config set Xfrout/query_acl[0] {"action": "ACCEPT", \
	                                  "key": "key.example"}
	(Trac #1104, git 9b2e89cabb6191db86f88ee717f7abc4171fa979)

612
274.	[bug]		naokikambe
613
614
615
616
	add unittests for functions xml_handler, xsd_handler and xsl_handler
	respectively to make sure their behaviors are correct, regardless of
	whether type which xml.etree.ElementTree.tostring() after Python3.2
	returns is str or byte.
617
	(Trac #1021, git 486bf91e0ecc5fbecfe637e1e75ebe373d42509b)
618

619
273.	[func]		vorner
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
620
621
	It is possible to specify ACL for the xfrout module. It is in the ACL
	configuration key and has the usual ACL syntax. It currently supports
622
	only the source address. Default ACL accepts everything.
JINMEI Tatuya's avatar
JINMEI Tatuya committed
623
	(Trac #772, git 50070c824270d5da1db0b716db73b726d458e9f7)
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
624

625
626
627
628
629
272.	[func]		jinmei
	libdns++/pydnspp: TSIG signing now handles truncated DNS messages
	(i.e. with TC bit on) with TSIG correctly.
	(Trac #910, 8e00f359e81c3cb03c5075710ead0f87f87e3220)

630
631
632
633
634
635
271.	[func]		stephen
	Default logging for unit tests changed to severity DEBUG (level 99)
	with the output routed to /dev/null.  This can be altered by setting
	the B10_LOGGER_XXX environment variables.
	(Trac #1024, git 72a0beb8dfe85b303f546d09986461886fe7a3d8)

636
637
638
639
640
270.	[func]		jinmei
	Added python bindings for ACLs using the DNS request as the
	context.  They are accessible via the isc.acl.dns module.
	(Trac #983, git c24553e21fe01121a42e2136d0a1230d75812b27)

Yoshitaka Aharen's avatar
Yoshitaka Aharen committed
641
642
643
644
645
269.	[bug]		y-aharen
	Modified IntervalTimerTest not to rely on the accuracy of the timer.
	This fix addresses occasional failure of build tests.
	(Trac #1016, git 090c4c5abac33b2b28d7bdcf3039005a014f9c5b)

646
268.	[func]		stephen
647
648
649
650
	Add environment variable to allow redirection of logging output during
	unit tests.
	(Trac #1071, git 05164f9d61006869233b498d248486b4307ea8b6)

651
652
bind10-devel-20110705 released on July 05, 2011

653
654
655
656
657
658
659
267.	[func]		tomek
	Added a dummy module for DHCP6. This module does not actually
	do anything at this point, and BIND 10 has no option for
	starting it yet. It is included as a base for further
	development.
	(Trac #990, git 4a590df96a1b1d373e87f1f56edaceccb95f267d)

660
661
662
663
664
665
666
667
266.	[func]		Multiple developers
        Convert various error messages, debugging and other output
        to the new logging interface, including for b10-resolver,
        the resolver library, the CC library, b10-auth, b10-cfgmgr,
        b10-xfrin, and b10-xfrout. This includes a lot of new
        documentation describing the new log messages.
        (Trac #738, #739, #742, #746, #759, #761, #762)

668
669
670
671
672
673
674
675
676
677
678
679
680
681
265.	[func]*		jinmei
	b10-resolver: Introduced ACL on incoming queries.  By default the
	resolver accepts queries from ::1 and 127.0.0.1 and rejects all
	others.  The ACL can be configured with bindctl via the
	"Resolver/query_acl" parameter.  For example, to accept queries
	from 192.0.2.0/24 (in addition to the default list), do this:
	> config add Resolver/query_acl
	> config set Resolver/query_acl[2]/action "ACCEPT"
	> config set Resolver/query_acl[2]/from "192.0.2.0/24"
	> config commit
	(Trac #999, git e0744372924442ec75809d3964e917680c57a2ce,
	also based on other ACL related work done by stephen and vorner)

264.	[bug]		jerry
682
683
684
685
	b10-xfrout: fixed a busy loop in its notify-out subthread.  Due to
	the loop, the thread previously woke up every 0.5 seconds throughout
	most of the lifetime of b10-xfrout, wasting the corresponding CPU
	time.
686
	(Trac #1001, git fb993ba8c52dca4a3a261e319ed095e5af8db15a)
687

688
263.	[func]		jelte
Jelte Jansen's avatar
Jelte Jansen committed
689
690
691
692
	Logging configuration can now also accept a * as a first-level
	name (e.g. '*', or '*.cache'), indicating that every module
	should use that configuration, unless overridden by an explicit
	logging configuration for that module
693
	(Trac #1004, git 0fad7d4a8557741f953eda9fed1d351a3d9dc5ef)
Jelte Jansen's avatar
Jelte Jansen committed
694

695
262.	[func]		stephen
696
697
698
699
700
	Add some initial documentation about the logging framework.
	Provide BIND 10 Messages Manual in HTML and DocBook? XML formats.
	This provides all the log message descriptions in a single document.
	A developer tool, tools/system_messages.py (available in git repo),
	was written to generate this.
701
	(Trac #1012, git 502100d7b9cd9d2300e78826a3bddd024ef38a74)
702

703
261.	[func]		stephen
704
	Add new-style logging messages to b10-auth.
705
	(Trac #738, git c021505a1a0d6ecb15a8fd1592b94baff6d115f4)
706

707
260.	[func]		stephen
708
709
	Remove comma between message identification and the message
	text in the new-style logging messages.
710
	(Trac #1031, git 1c7930a7ba19706d388e4f8dcf2a55a886b74cd2)
711

712
259.	[bug]		stephen
713
714
715
	Logging now correctly initialized in b10-auth.  Also, fixed
	bug whereby querying for "version.bind txt ch" would cause
	b10-auth to crash if BIND 10 was started with the "-v" switch.
716
	(Trac #1022,#1023, git 926a65fa08617be677a93e9e388df0f229b01067)
717

Jelte Jansen's avatar
Jelte Jansen committed
718
719
720
721
258.	[build]		jelte
	Now builds and runs with Python 3.2
	(Trac #710, git dae1d2e24f993e1eef9ab429326652f40a006dfb)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
722
257.	[bug]		y-aharen
723
724
725
	Fixed a bug an instance of IntervalTimerImpl may be destructed 
	while deadline_timer is holding the handler. This fix addresses
	occasional failure of IntervalTimerTest.destructIntervalTimer.
726
	(Trac #957, git e59c215e14b5718f62699ec32514453b983ff603)
727

728
729
730
256.	[bug]		jerry
	src/bin/xfrin: update xfrin to check TSIG before other part of
	incoming message.
731
	(Trac #955, git 261450e93af0b0406178e9ef121f81e721e0855c)
732

733
734
735
255.	[func]		zhang likun
	src/lib/cache:  remove empty code in lib/cache and the corresponding
	suppression rule in	src/cppcheck-suppress.lst.
736
	(Trac #639, git 4f714bac4547d0a025afd314c309ca5cb603e212)
737

738
739
254.	[bug]		jinmei
	b10-xfrout: failed to send notifies over IPv6 correctly.
740
	(Trac #964, git 3255c92714737bb461fb67012376788530f16e40)
741

Jeremy C. Reed's avatar
Jeremy C. Reed committed
742
253.	[func]		jelte
Jelte Jansen's avatar
Jelte Jansen committed
743
744
	Add configuration options for logging through the virtual module
	Logging.
745
	(Trac #736, git 9fa2a95177265905408c51d13c96e752b14a0824)
Jelte Jansen's avatar
Jelte Jansen committed
746

Jeremy C. Reed's avatar
Jeremy C. Reed committed
747
252.	[func]		stephen
748
	Add syslog as destination for logging.
749
	(Trac #976, git 31a30f5485859fd3df2839fc309d836e3206546e)
750

JINMEI Tatuya's avatar
JINMEI Tatuya committed
751
752
753
754
755
756
757
251.	[bug]*		jinmei
	Make sure bindctl private files are non readable to anyone except
	the owner or users in the same group.  Note that if BIND 10 is run
	with changing the user, this change means that the file owner or
	group will have to be adjusted.  Also note that this change is
	only effective for a fresh install; if these files already exist,
	their permissions must be adjusted by hand (if necessary).
758
	(Trac #870, git 461fc3cb6ebabc9f3fa5213749956467a14ebfd4)
JINMEI Tatuya's avatar
JINMEI Tatuya committed
759

Jeremy C. Reed's avatar
Jeremy C. Reed committed
760
250.	[bug]		ocean
761
762
763
	src/lib/util/encode, in some conditions, the DecodeNormalizer's
	iterator may reach the end() and when later being dereferenced
	it will cause crash on some platform.
764
	(Trac #838, git 83e33ec80c0c6485d8b116b13045b3488071770f)
765

Jeremy C. Reed's avatar
Jeremy C. Reed committed
766
249.	[func]		jerry
767
	xfrout: add support for TSIG verification.
768
	(Trac #816, git 3b2040e2af2f8139c1c319a2cbc429035d93f217)
769

Jeremy C. Reed's avatar
Jeremy C. Reed committed
770
248.	[func]		stephen
Stephen Morris's avatar
Stephen Morris committed
771
	Add file and stderr as destinations for logging.
772
	(Trac #555, git 38b3546867425bd64dbc5920111a843a3330646b)
Stephen Morris's avatar
Stephen Morris committed
773

Jeremy C. Reed's avatar
Jeremy C. Reed committed
774
247.	[func]		jelte
Jelte Jansen's avatar
Jelte Jansen committed
775
	Upstream queries from the resolver now set EDNS0 buffer size.
776
	(Trac #834, git 48e10c2530fe52c9bde6197db07674a851aa0f5d)
Jelte Jansen's avatar
Jelte Jansen committed
777

Jeremy C. Reed's avatar
Jeremy C. Reed committed
778
246.	[func]		stephen
779
	Implement logging using log4cplus (http://log4cplus.sourceforge.net)
780
	(Trac #899, git 31d3f525dc01638aecae460cb4bc2040c9e4df10)
781

Jeremy C. Reed's avatar
Jeremy C. Reed committed
782
245.	[func]		vorner
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
783
784
785
786
	Authoritative server can now sign the answers using TSIG
	(configured in tsig_keys/keys, list of strings like
	"name:<base64-secret>:sha1-hmac"). It doesn't use them for
	ACL yet, only verifies them and signs if the request is signed.
787
	(Trac #875, git fe5e7003544e4e8f18efa7b466a65f336d8c8e4d)
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
788

Jeremy C. Reed's avatar
Jeremy C. Reed committed
789
244.	[func]		stephen
790
791
792
793
794
795
796
	In unit tests, allow the choice of whether unhandled exceptions are
	caught in the unit test program (and details printed) or allowed to
	propagate to the default exception handler.  See the bind10-dev thread
	https://lists.isc.org/pipermail/bind10-dev/2011-January/001867.html
	for more details.
	(Trac #542, git 1aa773d84cd6431aa1483eb34a7f4204949a610f)

797
243.	[func]*		feng
798
	Add optional hmac algorithm SHA224/384/512.
799
	(Trac #782, git 77d792c9d7c1a3f95d3e6a8b721ac79002cd7db1)
Jeremy C. Reed's avatar
Jeremy C. Reed committed
800

801
802
bind10-devel-20110519 released on May 19, 2011

803
804
805
806
807
808
809
810
811
812
813
242.	[func]		jinmei
	xfrin: added support for TSIG verify.  This change completes TSIG
	support in b10-xfrin.
	(Trac #914, git 78502c021478d97672232015b7df06a7d52e531b)

241.	[func]		jinmei
	pydnspp: added python extension for the TSIG API introduced in
	change 235.
	(Trac #905, git 081891b38f05f9a186814ab7d1cd5c572b8f777f)
	(Trac #915, git 0555ab65d0e43d03b2d40c95d833dd050eea6c23)

Jelte Jansen's avatar
Jelte Jansen committed
814
815
816
817
240.	[func]*		jelte
	Updated configuration options to Xfrin, so that you can specify
	a master address, port, and TSIG key per zone. Still only one per
	zone at this point, and TSIG keys are (currently) only specified
818
819
820
	by their full string representation. This replaces the
	Xfrin/master_addr, Xfrin/master_port, and short-lived
	Xfrin/tsig_key configurations with a Xfrin/zones list.
Jelte Jansen's avatar
Jelte Jansen committed
821
822
	(Trac #811, git 88504d121c5e08fff947b92e698a54d24d14c375)

823
239.	[bug]		jerry
824
	src/bin/xfrout: If a zone doesn't have notify slaves (only has
825
826
827
828
	one apex ns record - the primary master name server) will cause
	b10-xfrout uses 100% of CPU.
	(Trac #684, git d11b5e89203a5340d4e5ca51c4c02db17c33dc1f)

zhanglikun's avatar
zhanglikun committed
829
238.	[func]		zhang likun
830
	Implement the simplest forwarder, which pass everything through
zhanglikun's avatar
zhanglikun committed
831
832
833
	except QID, port number. The response will not be cached.
	(Trac #598_new, git 8e28187a582820857ef2dae9b13637a3881f13ba)

834
237.	[bug]		naokikambe
Naoki Kambe's avatar
Naoki Kambe committed
835
836
837
838
839
840
841
842
843
844
845
	Resolved that the stats module wasn't configurable in bindctl in
	spite of its having configuration items. The configuration part
	was removed from the original spec file "stats.spec" and was
	placed in a new spec file "stats-schema.spec". Because it means
	definitions of statistics items. The command part is still
	there. Thus stats module currently has no its own configuration,
	and the items in "stats-schema.spec" are neither visible nor
	configurable through bindctl. "stats-schema.spec" is shared with
	stats module and stats-httpd module, and maybe with other
	statistical modules in future. "stats.spec" has own configuration
	and commands of stats module, if it requires.
846
	(Trac #719, git a234b20dc6617392deb8a1e00eb0eed0ff353c0a)
847

Jelte Jansen's avatar
Jelte Jansen committed
848
849
850
851
852
853
236.	[func]		jelte
	C++ client side of configuration now uses BIND10 logging system.
	It also has improved error handling when communicating with the
	rest of the system.
	(Trac #743, git 86632c12308c3ed099d75eb828f740c526dd7ec0)

854
855
856
857
858
859
860
861
862
863
864
235.	[func]		jinmei
	libdns++: added support for TSIG signing and verification.  It can
	be done using a newly introduced TSIGContext class.
	Note: we temporarily disabled support for truncated signature
	and modified some part of the code introduced in #226 accordingly.
	We plan to fix this pretty soon.
	(Trac #812, git ebe0c4b1e66d359227bdd1bd47395fee7b957f14)
	(Trac #871, git 7c54055c0e47c7a0e36fcfab4b47ff180c0ca8c8)
	(Trac #813, git ffa2f0672084c1f16e5784cdcdd55822f119feaa)
	(Trac #893, git 5aaa6c0f628ed7c2093ecdbac93a2c8cf6c94349)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
865
234.	[func]		jerry
866
867
	src/bin/xfrin: update xfrin to use TSIG. Currently it only supports
	sending a signed TSIG request or SOA request.
chenzhengzhang's avatar
chenzhengzhang committed
868
	(Trac #815, git a892818fb13a1839c82104523cb6cb359c970e88)
869

Jeremy C. Reed's avatar
Jeremy C. Reed committed
870
233.	[func]		stephen
871
872
873
	Added new-style logging statements to the NSAS code.
	(Trac #745, git ceef68cd1223ae14d8412adbe18af2812ade8c2d)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
874
875
876
877
878
879
232.	[func]		stephen
	To facilitate the writing of extended descriptions in
	message files, altered the message file format.  The message
	is now flagged with a "%" as the first non-blank character
	in the line and the lines in the extended description are
	no longer preceded by a "+".
880
881
	(Trac #900, git b395258c708b49a5da8d0cffcb48d83294354ba3)

Jeremy C. Reed's avatar
Jeremy C. Reed committed
882
231.	[func]*		vorner
883
    The logging interface changed slightly. We use
Jeremy C. Reed's avatar
Jeremy C. Reed committed
884
885
886
887
888
	logger.foo(MESSAGE_ID).arg(bar); instead of logger.foo(MESSAGE_ID,
	bar); internally. The message definitions use '%1,%2,...'
	instead of '%s,%d', which allows us to cope better with
	mismatched placeholders and allows reordering of them in
	case of translation.
889
	(Trac #901, git 4903410e45670b30d7283f5d69dc28c2069237d6)
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
890

Naoki Kambe's avatar
Naoki Kambe committed
891
230.	[bug]		naokikambe
Naoki Kambe's avatar
Naoki Kambe committed
892
893
894
	Removed too repeated verbose messages in two cases of:
	 - when auth sends statistics data to stats
	 - when stats receives statistics data from other modules
895
	(Trac #620, git 0ecb807011196eac01f281d40bc7c9d44565b364)
Naoki Kambe's avatar
Naoki Kambe committed
896

897
898
899
900
901
902
903
904
905
906
907
908
909
229.	[doc]		jreed
	Add manual page for b10-host.
	(git a437d4e26b81bb07181ff35a625c540703eee845)

228.	[func]*		jreed
	The host tool is renamed to b10-host. While the utility is
	a work in progress, it is expected to now be shipped with
	tarballs. Its initial goal was to be a host(1) clone,
	rewritten in C++ from scratch and using BIND 10's libdns++.
	It now supports the -a (any), -c class, -d (verbose) switches
	and has improved output.
	(Trac #872, git d846851699d5c76937533adf9ff9d948dfd593ca)

910
911
912
913
914
915
227.	[build]		jreed
	Add missing libdns++ rdata files for the distribution (this
	fixes distcheck error). Change three generated libdns++
	headers to "nodist" so they aren't included in the distribution
	(they were mistakenly included in last tarball).

Jelte Jansen's avatar
Jelte Jansen committed
916
917
918
919
226.	[func]*		jelte
	Introduced an API for cryptographic operations. Currently it only
	supports HMAC, intended for use with TSIG. The current
	implementation uses Botan as the backend library.
920
921
	This introduces a new dependency, on Botan.  Currently only Botan
	1.8.x works; older or newer versions don't.
922
	(Trac #781, git 9df42279a47eb617f586144dce8cce680598558a)
Jelte Jansen's avatar
Jelte Jansen committed
923

924
225.	[func]		naokikambe
925
	Added the HTTP/XML interface (b10-stats-httpd) to the
926
927
	statistics feature in BIND 10. b10-stats-httpd is a standalone
	HTTP server and it requests statistics data to the stats
928
	daemon (b10-stats) and sends it to HTTP clients in XML
929
930
	format. Items of the data collected via b10-stats-httpd
	are almost equivalent to ones which are collected via
931
932
	bindctl. Since it also can send XSL (Extensible Stylesheet
	Language) document and XSD (XML Schema definition) document,
933
934
	XML document is human-friendly to view through web browsers
	and its data types are strictly defined.
935
	(Trac #547, git 1cbd51919237a6e65983be46e4f5a63d1877b1d3)
Naoki Kambe's avatar
Naoki Kambe committed
936

JINMEI Tatuya's avatar
JINMEI Tatuya committed
937
938
939
940
941
942
943
944
224.	[bug]		jinmei
	b10-auth, src/lib/datasrc: inconsistency between the hot spot
	cache and actual data source could cause a crash while query
	processing.  The crash could happen, e.g., when an sqlite3 DB file
	is being updated after a zone transfer while b10-auth handles a
	query using the corresponding sqlite3 data source.
	(Trac #851, git 2463b96680bb3e9a76e50c38a4d7f1d38d810643)

JINMEI Tatuya's avatar
JINMEI Tatuya committed
945
223.	[bug]		feng
946
947
948
	If ip address or port isn't usable for name server, name
	server process won't exist and give end user chance to
	reconfigure them.
hanfeng's avatar
hanfeng committed
949
	(Trac #775, git 572ac2cf62e18f7eb69d670b890e2a3443bfd6e7)
hanfeng's avatar
hanfeng committed
950

951
952
953
954
955
956
957
222.	[bug]*		jerry
	src/lib/zonemgr: Fix a bug that xfrin not checking for new
	copy of zone on startup.  Imposes some random jitters to
	avoid many zones need to do refresh at the same time. This
	removed the Zonemgr/jitter_scope setting and introduced
	Zonemgr/refresh_jitter and Zonemgr/reload_jitter.
	(Trac #387, git 1241ddcffa16285d0a7bb01d6a8526e19fbb70cb)
958

chenzhengzhang's avatar
chenzhengzhang committed
959
960
221.	[func]*		jerry
	src/lib/util: Create C++ utility library.
961
	(Trac #749, git 084d1285d038d31067f8cdbb058d626acf03566d)
chenzhengzhang's avatar
chenzhengzhang committed
962

963
220.	[func]		stephen
964
965
	Added the 'badpacket' program for testing; it sends a set of
	(potentially) bad packets to a nameserver and prints the responses.
966
	(Trac #703, git 1b666838b6c0fe265522b30971e878d9f0d21fde)
967

968
219.	[func]		ocean
969
970
971
	src/lib: move some dns related code out of asiolink library to
	asiodns library
	(Trac #751, git 262ac6c6fc61224d54705ed4c700dadb606fcb1c)
Ocean Wang's avatar
Ocean Wang committed
972

973
974
975
976
218.	[func]		jinmei
	src/lib/dns: added support for RP RDATA.
	(Trac #806, git 4e47d5f6b692c63c907af6681a75024450884a88)

977
217.	[bug]		jerry
978
979
980
	src/lib/dns/python: Use a signed version of larger size of
	integer and perform more strict range checks with
	PyArg_ParseTuple() in case of overflows.
chenzhengzhang's avatar
chenzhengzhang committed
981
	(Trac #363, git ce281e646be9f0f273229d94ccd75bf7e08d17cf)
chenzhengzhang's avatar
chenzhengzhang committed
982

983
216.	[func]		vorner
984
985
986
	The BIND10_XFROUT_SOCKET_FILE environment variable can be
	used to specify which socket should be used for communication
	between b10-auth and b10-xfrout. Mostly for testing reasons.
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
987
988
	(Trac #615, git 28b01ad5bf72472c824a7b8fc4a8dc394e22e462)

989
215.	[func]		vorner
990
991
992
993
	A new process, b10-sockcreator, is added, which will create
	sockets for the rest of the system.  It is the only part
	which will need to keep the root privileges. However, only
	the process exists, nothing can talk to it yet.
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
994
995
	(Trac #366, git b509cbb77d31e388df68dfe52709d6edef93df3f)

996
214.	[func]*		vorner
997
998
999
1000
	Zone manager no longer thinks it is secondary master for
	all zones in the database. They are listed in
	Zonemgr/secondary_zones configuration variable (in the form
	[{"name": "example.com", "class": "IN"}]).
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
1001
	(Trac #670, git 7c1e4d5e1e28e556b1d10a8df8d9486971a3f052)
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
1002

1003
213.	[bug]		naokikambe
1004
1005
1006
1007
1008
1009
1010
1011
	Solved incorrect datetime of "bind10.boot_time" and also
	added a new command "sendstats" for Bob. This command is
	to send statistics data to the stats daemon immediately.
	The solved problem is that statistics data doesn't surely
	reach to the daemon because Bob sent statistics data to
	the daemon while it is starting. So the daemon invokes the
	command for Bob after it starts up. This command is also
	useful for resending statistics data via bindctl manually.
Naoki Kambe's avatar
Naoki Kambe committed
1012
	(Trac #521, git 1c269cbdc76f5dc2baeb43387c4d7ccc6dc863d2)
Naoki Kambe's avatar
Naoki Kambe committed
1013

1014
212.	[bug]		naokikambe
1015
1016
	Fixed that the ModuleCCSession object may group_unsubscribe in the
	closed CC session in being deleted.
Naoki Kambe's avatar
Naoki Kambe committed
1017
	(Trac #698, git 0355bddc92f6df66ef50b920edd6ec3b27920d61)
1018

1019
211.	[func]		shane
1020
	Implement "--brittle" option, which causes the server to exit
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
1021
	if any of BIND 10's processes dies.
1022
	(Trac #788, git 88c0d241fe05e5ea91b10f046f307177cc2f5bc5)
1023

1024
210.	[bug]		jerry
1025
1026
	src/bin/auth: fixed a bug where type ANY queries don't provide
	additional glue records for ANSWER section.
1027
	(Trac #699, git 510924ebc57def8085cc0e5413deda990b2abeee)
1028

1029
1030
bind10-devel-20110322 released on March 22, 2011

1031
209.	[func]		jelte
Jelte Jansen's avatar
Jelte Jansen committed
1032
1033
1034
1035
1036
	Resolver now uses the NSAS when looking for a nameserver to
	query for any specific zone. This also includes keeping track of
	the RTT for that nameserver.
	(Trac #495, git 76022a7e9f3ff339f0f9f10049aa85e5784d72c5)

1037
208.	[bug]*		jelte
Jelte Jansen's avatar
Jelte Jansen committed
1038
1039
1040
1041
1042
	Resolver now answers REFUSED on queries that are not for class IN.
	This includes the various CH TXT queries, which will be added
	later.
	(git 012f9e78dc611c72ea213f9bd6743172e1a2ca20)

1043
207.	[func]		jelte
Jelte Jansen's avatar
Jelte Jansen committed
1044
1045
1046
1047
	Resolver now starts listening on localhost:53 if no configuration
	is set.
	(Trac #471, git 1960b5becbba05570b9c7adf5129e64338659f07)

1048
206.	[func]		shane
1049
	Add the ability to list the running BIND 10 processes using the
Shane Kerr's avatar
Shane Kerr committed
1050
	command channel. To try this, use "Boss show_processes".
1051
	(Trac #648, git 451bbb67c2b5d544db2f7deca4315165245d2b3b)
Shane Kerr's avatar
Shane Kerr committed
1052

1053
205.	[bug]		jinmei
JINMEI Tatuya's avatar
JINMEI Tatuya committed
1054
1055
1056
1057
1058
1059
	b10-auth, src/lib/datasrc: fixed a bug where b10-auth could return
	an empty additional section for delegation even if some glue is
	crucial when it fails to find some other glue records in its data
	source.
	(Trac #646, git 6070acd1c5b2f7a61574eda4035b93b40aab3e2b)

1060
204.	[bug]		jinmei
1061
1062
1063
1064
1065
1066
	b10-auth, src/lib/datasrc: class ANY queries were not handled
	correctly in the generic data source (mainly for sqlite3).  It
	could crash b10-auth in the worst case, and could result in
	incorrect responses in some other cases.
	(Trac #80, git c65637dd41c8d94399bd3e3cee965b694b633339)

1067
203.	[bug]		zhang likun
1068
1069
	Fix resolver cache memory leak: when cache is destructed, rrset
	and message entries in it are not destructed properly.
1070
	(Trac #643, git aba4c4067da0dc63c97c6356dc3137651755ffce)
zhanglikun's avatar
zhanglikun committed
1071

1072
202.	[func]		vorner
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
1073
	It is possible to specify a different directory where we look for
1074
1075
1076
	configuration files (by -p) and different configuration file to
	use (-c).  Also, it is possible to specify the port on which
	cmdctl should listen (--cmdctl-port).
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
1077
1078
	(Trac #615, git 5514dd78f2d61a222f3069fc94723ca33fb3200b)

1079
201.	[bug]		jerry
1080
1081
1082
	src/bin/bindctl: bindctl doesn't show traceback on shutdown.
	(Trac #588, git 662e99ef050d98e86614c4443326568a0b5be437)

1083
200.	[bug]		Jelte
Jelte Jansen's avatar
Jelte Jansen committed
1084
1085
1086
	Fixed a bug where incoming TCP connections were not closed.
	(Trac #589, git 1d88daaa24e8b1ab27f28be876f40a144241e93b)

1087
199.	[func]		ocean
1088
1089
1090
	Cache negative responses (NXDOMAIN/NODATA) from authoritative
	server for recursive resolver.
	(Trac #493, git f8fb852bc6aef292555063590c361f01cf29e5ca)
Ocean Wang's avatar
Ocean Wang committed
1091

1092
198.	[bug]		jinmei
1093
1094
1095
1096
1097
1098
1099
	b10-auth, src/lib/datasrc: fixed a bug where hot spot cache failed
	to reuse cached SOA for negative responses.  Due to this bug
	b10-auth returned SERVFAIL when it was expected to return a
	negative response immediately after a specific SOA query for
	the zone.
	(Trac #626, git 721a53160c15e8218f6798309befe940b9597ba0)

1100
197.	[bug]		zhang likun
zhanglikun's avatar
zhanglikun committed
1101
1102
1103
1104
1105
	Remove expired message and rrset entries when looking up them
	in cache, touch or remove the rrset entry in cache properly
	when doing lookup or update.
	(Trac #661, git 9efbe64fe3ff22bb5fba46de409ae058f199c8a7)

1106
196.	[bug]		jinmei
zhanglikun's avatar
zhanglikun committed
1107
1108
1109
1110
1111
	b10-auth, src/lib/datasrc: the backend of the in-memory data
	source could not handle the root name.  As a result b10-auth could
	not work as a root server when using the in-memory data source.
	(Trac #683, git 420ec42bd913fb83da37b26b75faae49c7957c46)

1112
195.	[func]		stephen
Naoki Kambe's avatar
Naoki Kambe committed
1113
1114
1115
1116
	Resolver will now re-try a query over TCP if a response to a UDP
	query has the TC bit set.
	(Trac #499, git 4c05048ba059b79efeab53498737abe94d37ee07)

1117
194.	[bug]		vorner
Naoki Kambe's avatar
Naoki Kambe committed
1118
1119
1120
1121
1122
1123
	Solved a 100% CPU usage problem after switching addresses in b10-auth
	(and possibly, but unconfirmed, in b10-resolver). It was caused by
	repeated reads/accepts on closed socket (the bug was in the code for a
	long time, recent changes made it show).
	(Trac #657, git e0863720a874d75923ea66adcfbf5b2948efb10a)

1124
193.	[func]*		jreed
Naoki Kambe's avatar
Naoki Kambe committed
1125
1126
1127
1128
1129
	Listen on the IPv6 (::) and IPv4 (0.0.0.0) wildcard addresses
	for b10-auth. This returns to previous behavior prior to
	change #184. Document the listen_on configuration in manual.
	(Trac #649, git 65a77d8fde64d464c75917a1ab9b6b3f02640ca6)

1130
192.	[func]*		jreed
Naoki Kambe's avatar
Naoki Kambe committed
1131
1132
1133
1134
	Listen on standard domain port 53 for b10-auth and
	b10-resolver.
	(Trac #617, #618, git 137a6934a14cf0c5b5c065e910b8b364beb0973f)

1135
191.	[func]		jinmei
Naoki Kambe's avatar
Naoki Kambe committed
1136
1137
1138
1139
1140
1141
1142
1143
1144
	Imported system test framework of BIND 9.  It can be run by
	'make systest' at the top source directory.  Notes: currently it
	doesn't work when built in a separate tree.  It also requires
	perl, an inherited dependency from the original framework.
	Also, mainly for the purpose of tests, a new option "--pid-file"
	was added to BoB, with which the boss process will dump its PID
	to the specified file.
	(Trac #606, git 6ac000df85625f5921e8895a1aafff5e4be3ba9c)

1145
190.	[func]		jelte
Naoki Kambe's avatar
Naoki Kambe committed
1146
1147
1148
1149
	Resolver now sets random qids on outgoing queries using
	the boost::mt19937 prng.
	(Trac #583, git 5222b51a047d8f2352bc9f92fd022baf1681ed81)

1150
189.	[bug]		jreed
Naoki Kambe's avatar
Naoki Kambe committed
1151
1152
1153
	Do not install the log message compiler.
	(Trac #634, git eb6441aca464980d00e3ff827cbf4195c5a7afc5)

1154
188.	[bug]		zhang likun
1155
1156
1157
	Make the rrset trust level ranking algorithm used by
	isc::cache::MessageEntry::getRRsetTrustLevel() follow RFC2181
	section 5.4.1.
zhanglikun's avatar
zhanglikun committed
1158
	(Trac #595 git 19197b5bc9f2955bd6a8ca48a2d04472ed696e81)
1159

1160
187.	[bug]		zhang likun
zhanglikun's avatar
zhanglikun committed
1161
1162
1163
1164
	Fix the assert error in class isc::cache::RRsetCache by adding the
	check for empty pointer and test case for it.
	(Trac #638, git 54e61304131965c4a1d88c9151f8697dcbb3ce12)

1165
186.	[bug]		jelte
Jelte Jansen's avatar
Jelte Jansen committed
1166
1167
1168
1169
1170
	b10-resolver could stop with an assertion failure on certain kinds
	of messages (there was a problem in error message creation). This
	fixes that.
	(Trac #607, git 25a5f4ec755bc09b54410fcdff22691283147f32)

1171
185.	[bug]		vorner
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
1172
1173
1174
1175
	Tests use port from private range (53210), lowering chance of
	a conflict with something else (eg. running bind 10).
	(Trac #523, git 301da7d26d41e64d87c0cf72727f3347aa61fb40)

1176
184.	[func]*		vorner
1177
1178
1179
1180
	Listening address and port configuration of b10-auth is the same as
	for b10-resolver now. That means, it is configured through bindctl
	at runtime, in the Auth/listen_on list, not through command line
	arguments.
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
1181
1182
	(Trac #575, #576, git f06ce638877acf6f8e1994962bf2dbfbab029edf)

1183
183.	[bug]		jerry
Michal 'vorner' Vaner's avatar
Michal 'vorner' Vaner committed
1184
	src/bin/xfrout: Enable parallel sessions between xfrout server and
1185
1186
	muti-Auth. The session needs to be created only on the first time
	or if an error occur.
1187
	(Trac #419, git 1d60afb59e9606f312caef352ecb2fe488c4e751)
1188

1189
182.	[func]		jinmei
1190
1191
1192
1193
1194
1195
1196
1197
1198
	Support cppcheck for static code check on C++ code.  If cppcheck
	is available, 'make cppcheck' on the top source directory will run
	the checker and should cleanly complete with an exit code of 0
	(at least with cppcheck 1.47).
	Note: the suppression list isn't included in the final
	distributions.  It should be created by hand or retrieved from
	the git repository.
	(Trac #613, git b973f67520682b63ef38b1451d309be9f4f4b218)

1199
181.	[func]		feng
1200
	Add stop interface into dns server, so we can stop each running