xref: /freebsd/contrib/unbound/doc/Changelog (revision 38a52bd3)
111 October 2022: George
2	- Fix PROXYv2 header read for TCP connections when no proxied addresses
3	  are provided.
4
57 October 2022: George
6	- Fix to stop possible loops in the tcp reuse code (write_wait list
7	  and tcp_wait list). Based on analysis and patch from Prad Seniappan
8	  and Karthik Umashankar.
9	- Fix unit test to properly test the reuse_write_wait_pop function.
10
116 October 2022: Wouter
12	- Fix to stop responses with TC flag from resulting in partial
13	  responses. It retries to fetch the data elsewhere, or fails the
14	  query and in depth fix removes the TC flag from the cached item.
15	- Fix proxy length debug output printout typecasts.
16
175 October 2022: Wouter
18	- Fix dnscrypt compile for proxy protocol code changes.
19
205 October 2022: George
21	- Use DEBUG_TDIR from environment in mini_tdir.sh for debugging.
22	- Fix string comparison in mini_tdir.sh.
23	- Make ede.tdir test more predictable by using static data.
24	- Fix checkconf test for dnscrypt and proxy port.
25
264 October 2022: George
27	- Merge #764: Leniency for target discovery when under load (for
28	  NRDelegation changes).
29
304 October 2022: Wouter
31	- Fix static analysis report to remove dead code from the
32	  rpz_callback_from_iterator_module function.
33	- Fix to clean up after the acl_interface unit test.
34
353 October 2022: George
36	- Merge #760: PROXYv2 downstream support. (New proxy-protocol-port
37	  configuration option).
38
393 October 2022: Wouter
40	- Fix to remove erroneous TC flag from TCP upstream.
41	- Fix test tdir skip report printout.
42	- Fix windows compile, the identifier interface is defined in headers.
43	- Fix to close errno block in comm_point_tcp_handle_read outside of
44	  ifdef.
45
4626 September 2022: George
47	- Better output for skipped tdir tests.
48
4921 September 2022: Wouter
50	- Patch for CVE-2022-3204 Non-Responsive Delegation Attack.
51	- This patch was released in 1.16.3, the code repository continues
52	  with the previous features and fixes for 1.17.0.
53	- Fix doxygen warning in respip.h.
54
5520 September 2022: George
56	- Convert tdir tests to use the new skip_test functionality.
57	- Remove unused testcode/mini_tpkg.sh file.
58
5916 September 2022: George
60	- Merge #753: ACL per interface. (New interface-* configuration
61	  options).
62
632 September 2022: Wouter
64	- Remove include that was there for debug purposes.
65	- Fix to check pthread_t size after pthread has been detected.
66
671 September 2022: Wouter
68	- Fix to update config tests to fix checking if nonblocking sockets
69	  work on OpenBSD.
70	- Slow down log frequency of write wait failures.
71	- Fix to set out of file descriptor warning to operational verbosity.
72	- Fix to log a verbose message at operational notice level if a
73	  thread is not responding, to stats requests. It is logged with
74	  thread identifiers.
75
7631 August 2022: Wouter
77	- Fix to avoid process wide fcntl calls mixed with nonblocking
78	  operations after a blocked write.
79	- Patch from Vadim Fedorenko that adds MSG_DONTWAIT to receive
80	  operations, so that instruction reordering does not cause mistakenly
81	  blocking socket operations.
82	- Fix to wait for blocked write on UDP sockets, with a timeout if it
83	  takes too long the packet is dropped.
84	- Fix for wait for udp send to stop when packet is successfully sent.
85
8622 August 2022: Wouter
87	- Fix #741: systemd socket activation fails on IPv6.
88
8912 August 2022: Wouter
90	- Fix to log accept error ENFILE and EMFILE errno, but slowly, once
91	  per 10 seconds. Also log accept failures when no slow down is used.
92
935 August 2022: Wouter
94	- Fix #734 [FR] enable unbound-checkconf to detect more (basic)
95	  errors.
96
974 August 2022: Wouter
98	- Fix ratelimit inconsistency, for ip-ratelimits the value is the
99	  amount allowed, like for ratelimits.
100
1012 August 2022: Wouter
102	- Fix edns subnet so that scope 0 answers only match sourcemask 0
103	  queries for answers from cache if from a query with sourcemask 0.
104	- Fix unittest for edns subnet change.
105	- Merge #730 from luisdallos: Fix startup failure on Windows 8.1 due
106	  to unsupported IPV6_USER_MTU socket option being set.
107
1081 August 2022: Wouter
109	- Fix the novel ghost domain issues CVE-2022-30698 and CVE-2022-30699.
110	- Tests for ghost domain fixes.
111	- Tag for 1.16.2 release. The code repo continues with 1.16.3.
112	- Fix #728: alloc_reg_obtain() core dump. Stop double
113	  alloc_reg_release when serviced_create fails.
114
11519 July 2022: George
116	- Update documentation for 'outbound-msg-retry:'.
117
11819 July 2022: Wouter
119	- Merge #718: Introduce infra-cache-max-rtt option to config max
120	  retransmit timeout.
121
12215 July 2022: Wouter
123	- Merge PR 714: Avoid treat normal hosts as unresponsive servers.
124	  And fixup the lock code.
125	- iana portlist update.
126
12712 July 2022: George
128	- For windows crosscompile, fix setting the IPV6_MTU socket option
129	  equivalent (IPV6_USER_MTU); allows cross compiling with latest
130	  cross-compiler versions.
131
13212 July 2022: Wouter
133	- Fix dname count in sldns parse type descriptor for SVCB and HTTPS.
134
13511 July 2022: Wouter
136	- Fix verbose EDE error printout.
137
1384 July 2022: George
139	- Fix bug introduced in 'improve val_sigcrypt.c::algo_needs_missing for
140	  one loop pass'.
141	- Merge PR #668 from Cristian Rodríguez: Set IP_BIND_ADDRESS_NO_PORT on
142	  outbound tcp sockets.
143
1444 July 2022: Wouter
145	- Tag for 1.16.1rc1 release. This became 1.16.1 on 11 July 2022.
146	  The code repo continues with version 1.16.2 under development.
147
1483 July 2022: George
149	- Merge PR #671 from Petr Menšík: Disable ED25519 and ED448 in FIPS
150	  mode on openssl3.
151	- Merge PR #660 from Petr Menšík: Sha1 runtime insecure.
152	- For #660: formatting, less verbose logging, add EDE information.
153	- Fix for correct openssl error when adding windows CA certificates to
154	  the openssl trust store.
155	- Improve val_sigcrypt.c::algo_needs_missing for one loop pass.
156	- Reintroduce documentation and more EDE support for
157	  val_sigcrypt.c::dnskeyset_verify_rrset_sig.
158
1591 July 2022: George
160	- Merge PR #706: NXNS fallback.
161	- From #706: Cached NXDOMAIN does not increase the target nx
162	  responses.
163	- From #706: Don't generate parent side queries if we already
164	  have the lame records in cache.
165	- From #706: When a lame address is the best choice, don't try to
166	  generate target queries when the missing targets are all lame.
167
16829 June 2022: Wouter
169	- iana portlist update.
170	- Fix detection of libz on windows compile with static option.
171	- Fix compile warning for windows compile.
172
17329 June 2022: George
174	- Add debug option to the mini_tdir.sh test code.
175	- Fix #704: [FR] Statistics counter for number of outgoing UDP queries
176	  sent; introduces 'num.query.udpout' to the 'unbound-control stats'
177	  command.
178	- Fix to not count cached NXDOMAIN for MAX_TARGET_NX.
179	- Allow fallback to the parent side when MAX_TARGET_NX is reached.
180	  This will also allow MAX_TARGET_NX more NXDOMAINs.
181
18228 June 2022: George
183	- Show the output of the exact .rpl run that failed with 'make test'.
184	- Fix for cached 0 TTL records to not trigger prefetching when
185	  serve-expired-client-timeout is set.
186
18728 June 2022: Wouter
188	- Fix test program dohclient close to use portability routine.
189
19023 June 2022: Tom
191	- Clarify -v flag manpage entry (#705)
192
19322 June 2022: Philip
194	- Fix #663: use after free issue with edns options.
195
19621 June 2022: Philip
197	- Fix for loading locally stored zones that have lines with blanks or
198	  blanks and comments.
199
20020 June 2022: George
201	- Remove unused LDNS function check for GOST Engine unloading.
202
20314 June 2022: George
204	- Merge PR #688: Rpz url notify issue.
205	- Note in the unbound.conf text that NOTIFY is allowed from the url:
206	  addresses for auth and rpz zones.
207
2083 June 2022: George
209	- Fix for edns client subnet to respect not looking in its cache when
210	  instructed to do so (e.g., prefetch).
211
2123 June 2022: Wouter
213	- makedist.sh picks up 32bit libssp-0.dll when 32bit compile.
214
21527 May 2022: Wouter
216	- Fix #684: [FTBS] configure script error with libmnl on openSUSE 15.3 (and possibly other distributions)
217	- Version is set to 1.16.0 for release. Release tag 1.16.0rc1. This
218	  became release 1.16.0 on 2 June 2022. The source code branch
219	  continues with version 1.16.1 under development.
220
22120 May 2022: Wouter
222	- Fix to silence test for ede error output to the console from the
223	  test setup script.
224	- Fix ede test to not use default pidfile, and use local interface.
225	- Fix some lint type warnings.
226
22718 May 2022: George
228	- Fix typos in config_set_option for the 'num-threads' and
229	  'ede-serve-expired' options.
230
23115 May 2022: George
232	- Fix #678: [FR] modify behaviour of unbound-control rpz_enable zone,
233	  by updating unbound-control's documentation.
234
23512 May 2022: George
236	- Fix #417: prefetch and ECS causing cache corruption when used
237	  together.
238
23912 May 2022: Wouter
240	- Merge #677: Allow using system certificates not only on Windows,
241	  from pemensik.
242	- For #677: Added tls-system-cert to config parser and documentation.
243
24411 May 2022: Wouter
245	- Fix #673: DNS over TLS: error: SSL_handshake syscall: No route to
246	  host.
247
24810 May 2022: George
249	- Fix Python build in non-source directory; based on patch by
250	  Michael Tokarev.
251
2526 May 2022: Tom
253	- Merge PR #604: Add basic support for EDE (RFC8914).
254
25528 April 2022: Wouter
256	- Fix #670: SERVFAIL problems with unbound 1.15.0 running on
257	  OpenBSD 7.1.
258
2598 April 2022: Wouter
260	- Fix zonemd check to allow unsupported algorithms to load.
261	  If there are only unsupported algorithms, or unsupported schemes,
262	  and no failed or successful other ZONEMD records, or malformed
263	  or bad ZONEMD records, the unsupported records allow the zone load.
264	- Fix zonemd unsupported algo check.
265	- Fix zonemd unsupported algo check reason to not copy to next record,
266	  and check for success for debug printout.
267	- Fix zonemd unsupported algo check to print unsupported reason before
268	  zeroing it.
269	- Fix zonemd unsupported algo check to set reason to NULL before the
270	  check routine, but after malformed checks, to get the correct NULL
271	  output when the digest matches.
272
27325 March 2022: Wouter
274	- Fix spelling error in comment in sldns_str2wire_svcparam_key_lookup.
275
27623 March 2022: Wouter
277	- Fix #651: [FR] Better logging for refused queries.
278
27918 March 2022: George
280	- Merge PR #648 from eaglegai: fix -q doesn't work when use with
281	  'unbound-control stats_shm'.
282
28317 March 2022: Wouter
284	- Fix to describe auth-zone and other configuration at the local-zone
285	  configuration option, to allow for more broadly view of the options.
286
28716 March 2022: Wouter
288	- Fix to ensure uniform handling of spaces and tabs when parsing RRs.
289
2909 March 2022: Wouter
291	- Merge #644: Make `install-lib` make target install the pkg-config
292	  file.
293
2947 March 2022: Wouter
295	- Fix configure for python to use sysutils, because distutils is
296	  deprecated. It uses sysutils when available, distutils otherwise.
297
2983 March 2022: Wouter
299	- Fix #637: Integer Overflow in sldns_str2period function.
300	- Fix for #637: fix integer overflow checks in sldns_str2period.
301
3022 March 2022: George
303	- Merge PR #632 from scottrw93: Match cnames in ipset.
304	- Various fixes for #632: variable initialisation, convert the qinfo
305	  to str once, accept trailing dot in the local-zone ipset option.
306
3072 March 2022: Wouter
308	- Fix compile warnings for printf ll format on mingw compile.
309
3101 March 2022: Wouter
311	- Fix pythonmod for change in iter_dp_is_useless function prototype.
312
31328 February 2022: George
314	- Fix #630: Unify the RPZ log messages.
315	- Merge #623 from rex4539: Fix typos.
316
31728 February 2022: Wouter
318	- Fix #633: Document unix domain socket support for unbound-control.
319	- Fix for #633: updated fix with new text.
320	- Fix edns client subnet to add the option based on the option list,
321	  so that it is not state dependent, after the state fix of #605 for
322	  double EDNS options.
323	- Fix for edns client subnet option add fix in removal code, from review.
324
32525 February 2022: Wouter
326	- Fix to detect that no IPv6 support means that IPv6 addresses are
327	  useless for delegation point lookups.
328	- update Makefile dependencies.
329	- Fix check interface existence for support detection in remote lookup.
330
33118 February 2022: Wouter
332	- Fix that address not available is squelched from the logs for
333	  udp connect failures. It is visible on verbosity 4 and more.
334	- Merge #631 from mollyim: Replace OpenSSL's ERR_PACK with
335	  ERR_GET_REASON.
336
33716 February 2022: Wouter
338	- Fix for #628: fix rpz-passthru for qname trigger by localzone type.
339
34015 February 2022: Wouter
341	- Fix #628: A rpz-passthru action is not ending RPZ zone processing.
342
34311 February 2022: Wouter
344	- Fix #624: Unable to stop Unbound in Windows console (does not
345	  respond to CTRL+C command).
346	- Fix #618: enabling interface-automatic disables DNS-over-TLS.
347	  Adds the option to list interface-automatic-ports.
348	- Remove debug info from #618 fix.
349
3507 February 2022: Wouter
351	- Fix that TCP interface does not use TLS when TLS is also configured.
352
3534 February 2022: Wouter
354	- Fix #412: cache invalidation issue with CNAME+A.
355
3563 February 2022: Wouter
357	- Fix for #611: Integer overflow in sldns_wire2str_pkt_scan.
358	- Tag for 1.15.0rc1 created. That became 1.15.0 on 10 feb 2022.
359	  The repository continues with version 1.15.1.
360
3612 February 2022: George
362	- Merge PR #532 from Shchelk: Fix: buffer overflow bug.
363	- Merge PR #616: Update ratelimit logic. It also introduces
364	  ratelimit-backoff and ip-ratelimit-backoff configuration options.
365	- Change aggressive-nsec default to yes.
366	- Merge PR #617: Update stub/forward-host notation to accept port and
367	  tls-auth-name.
368	- Update stream_ssl.tdir test to also use the new forward-host
369	  notation.
370
3712 February 2022: Wouter
372	- Update version number in repo to 1.15.0 for upcoming release,
373	  since it changes the aggressive-nsec default and the ratelimit change.
374	- Fix header comment for doxygen for authextstrtoaddr.
375	- please clang analyzer for loop in test code.
376	- Fix docker splint test to use more portable uname.
377	- Update contrib/aaaa-filter-iterator.patch with diff for current
378	  software version.
379
3801 February 2022: George
381	- Merge PR #603 from fobser: Use OpenSSL 1.1 API to access DSA and RSA
382	  internals.
383
38431 January 2022: George
385	- Fix review comment for use-after-free when failing to send UDP out.
386
38731 January 2022: Wouter
388	- iana portlist update.
389
39029 January 2022: George
391	- Fix tls-* and ssl-* documented alternate syntax to also be available
392	  through remote-control and unbound-checkconf.
393	- Better cleanup on failed DoT/DoH listening socket creation.
394
39526 January 2022: George
396	- Fix #599: [FR] RFC 9156 (obsoletes RFC 7816), by noting the new RFC
397	  document.
398
39926 January 2022: Wouter
400	- Test for NSID in SERVFAIL response due to DNSSEC bogus.
401
40225 January 2022: George
403	- Fix #588: Unbound 1.13.2 crashes due to p->pc is NULL in
404	  serviced_udp_callback.
405	- Merge PR #612: TCP race condition.
406
40725 January 2022: Wouter
408	- Fix #610: Undefine-shift in sldns_str2wire_hip_buf.
409
41019 January 2022: George
411	- For dnstap, do not wakeupnow right there. Instead zero the timer to
412	  force the wakeup callback asap.
413
41414 January 2022: George
415	- Merge PR #605:
416	  - Fix EDNS to upstream where the same option could be attached
417	     more than once.
418	  - Add a region to serviced_query for allocations.
419
42014 January 2022: Wouter
421	- Add rpz: for-downstream: yesno option, where the RPZ zone is
422	  authoritatively answered for, so the RPZ zone contents can be
423	  checked with DNS queries directed at the RPZ zone.
424	- For #602: Allow the module-config "subnetcache validator cachedb
425	  iterator".
426
42711 January 2022: George
428	- Fix prematurely terminated TCP queries when a reply has the same ID.
429
4307 January 2022: Wouter
431	- Merge #600 from pemensik: Change file mode before changing file
432	  owner.
433
4345 January 2022: Wouter
435	- Fix for #596: fix that rpz return message is returned and not just
436	  the rcode from the iterator return path. This fixes signal unset RA
437	  after a CNAME.
438	- Fix unit tests for rpz now that the AA flag returns successfully from
439	  the iterator loop.
440	- Fix for #596: add unit test for nsdname trigger and signal unset RA.
441	- Fix for #596: add unit test for nsip trigger and signal unset RA.
442	- Fix #598: Fix unbound-checkconf fatal error: module conf
443	  'respip dns64 validator iterator' is not known to work.
444	- Fix for #596: Fix rpz-signal-nxdomain-ra to work for clientip
445	  triggered operation.
446
4474 January 2022: Wouter
448	- Fix #596: unset the RA bit when a query is blocked by an unbound
449	  RPZ nxdomain reply. The option rpz-signal-nxdomain-ra allows to
450	  signal that a domain is externally blocked to clients when it
451	  is blocked with NXDOMAIN by unsetting RA.
452	- Fix to add test for rpz-signal-nxdomain-ra.
453	- Fix #596: only unset RA when NXDOMAIN is signalled.
454	- Fix that RPZ does not set RD flag on replies, it should be copied
455	  from the query.
456
45722 December 2021: George
458	- contrib/aaaa-filter-iterator.patch file renewed diff content to
459	  apply cleanly to the current coderepo for the current code version.
460
46120 December 2021: George
462	- Fix #591: Unbound-anchor manpage links to non-existent license file.
463
46413 December 2021: George
465	- Add missing configure flags for optional features in the
466	  documentation.
467	- Fix Unbound capitalization in the documentation.
468
46913 December 2021: Wouter
470	- Fix to pick up other class local zone information before unlock.
471
47210 December 2021: George
473	- Allow local-data for classes other than IN to inherit a configured
474	  local-zone's type if possible, instead of defaulting to type
475	  transparent as per the implicit rule.
476
47710 December 2021: Wouter
478	- Add code similar to fix for ldns for tab between strings, for
479	  consistency, the test case was not broken.
480
4816 December 2021: Wouter
482	- Merge PR #581 from fobser: Fix -Wmissing-prototypes and -Wshadow
483	  warnings in rpz.
484	- Fix validator debug output about DS support, print correct algorithm.
485
4863 December 2021: Wouter
487	- Fix compile warning for if_nametoindex on windows 64bit.
488
4891 December 2021: Wouter
490	- configure is set to 1.14.0, and release branch.
491	  This was released as version 1.14.0 on 9 Dec 2021, with the doxygen
492	  fix below included. The main branch continues as 1.14.1.
493	- Fix doc/unbound.doxygen to remove obsolete tag warning.
494
4951 December 2021: George
496	- Merge PR #511 from yan12125: Reduce unnecessary linking.
497	- Merge PR #493 from Jaap: Fix generation of libunbound.pc.
498	- Merge PR #555 from fobser: Allow interface names as scope-id in IPv6
499	  link-local addresses.
500	- Merge PR #562 from Willem: Reset keepalive per new tcp session.
501	- Merge PR #522 from sibeream: memory management violations fixed.
502	- Merge PR #530 from Shchelk: Fix: dereferencing a null pointer.
503	- Fix #454: listen_dnsport.c:825: error: ‘IPV6_TCLASS’ undeclared.
504	- Fix #574: Review fixes for size allocation.
505
50630 November 2021: Wouter
507	- Fix to remove git tracking and ci information from release tarballs.
508	- iana portlist update.
509
51029 November 2021: Wouter
511	- Merge PR #570 from rex4539: Fix typos.
512	- Fix for #570: regen aclocal.m4, fix configure.ac for spelling.
513	- Fix to make python module opt_list use opt_list_in.
514	- Fix #574: unbound-checkconf reports fatal error if interface names
515	  are used as value for interfaces:
516	- Fix #574: Review fixes for it.
517	- Fix #576: [FR] UB_* error codes in unbound.h
518	- Fix #574: Review fix for spelling.
519
52015 November 2021: Tom
521	- Improve EDNS option handling, now also works for synthesised
522	  responses such as local-data and server.id CH TXT responses.
523
5245 November 2021: George
525	- Fix for #558: fix loop in comm_point->tcp_free when a comm_point is
526	  reclaimed more than once during callbacks.
527	- Fix for #558: clear the UB_EV_TIMEOUT bit before adding an event.
528
5295 November 2021: Wouter
530	- Fix that forward-zone name is documented as the full name of the
531	  zone. It is not relative but a fully qualified domain name.
532	- Fix analyzer review failure in rpz action override code to not
533	  crash on unlocking the local zone lock.
534	- Fix to remove unused code from rpz resolve client and action
535	  function.
536	- Merge #565: unbound.service.in: Disable ProtectKernelTunables again.
537
5382 November 2021: Wouter
539	- Fix #552: Unbound assumes index.html exists on RPZ host.
540
54111 October 2021: Wouter
542	- Fix chaos replies to have truncation for short message lengths,
543	  or long reply strings.
544	- Fix to protect custom regional create against small values.
545
5464 October 2021: Wouter
547	- Fix to add example.conf note for outbound-msg-retry.
548
54927 September 2021: Wouter
550	- Implement RFC8375: Special-Use Domain 'home.arpa.'.
551
55221 September 2021: Wouter
553	- For crosscompile on windows, detect 64bit stackprotector library.
554	- Fix crosscompile shell syntax.
555	- Fix crosscompile windows to use libssp when it exists.
556	- For the windows compile script disable gost.
557	- Fix that on windows, use BIO_set_callback_ex instead of deprecated
558	  BIO_set_callback.
559	- Fix crosscompile script for the shared build flags.
560
56120 September 2021: Wouter
562	- Fix crosscompile on windows to work with openssl 3.0.0 the
563	  link with ws2_32 needs -l:libssp.a for __strcpy_chk.
564	  Also copy results from lib64 directory if needed.
565
56610 September 2021: Wouter
567	- Fix initialisation errors reported by gcc sanitizer.
568	- Fix lock debug code for gcc sanitizer reports.
569	- Fix more initialisation errors reported by gcc sanitizer.
570
5718 September 2021: Wouter
572	- Merged #41 from Moritz Schneider: made outbound-msg-retry
573	  configurable.
574	- Small fixes for #41: changelog, conflicts resolved,
575	  processQueryResponse takes an iterator env argument like other
576	  functions in the iterator, no colon in string for set_option,
577	  and some whitespace style, to make it similar to the rest.
578	- Fix for #41: change outbound retry to int to fix signed comparison
579	  warnings.
580	- Fix root_anchor test to check with new icannbundle date.
581
5823 September 2021: Wouter
583	- Fix #538: Fix subnetcache statistics.
584
5851 September 2021: Wouter
586	- Fix tcp fastopen failure when disabled, try normal connect instead.
587
58827 August 2021: Wouter
589	- Fix #533: Negative responses get cached even when setting
590	  cache-max-negative-ttl: 1
591
59225 August 2021: Wouter
593	- Merge #401: RPZ triggers. This add additional RPZ triggers,
594	  unbound supports a full set of rpz triggers, and this now
595	  includes nsdname, nsip and clientip triggers. Also actions
596	  are fully supported, and this now includes the tcp-only action.
597	- Fix #536: error: RPZ: name of record (drop.spamhaus.org.rpz.local.)
598	  to insert into RPZ.
599	- Fix the stream wait stream_wait_count_lock and http2 buffer locks
600	  setup and desetup from race condition.
601	- Fix RPZ locks. Do not unlock zones lock if requested and rpz find
602	  zone does not find the zone. Readlock the clientip that is found
603	  for ipbased triggers. Unlock the nsdname zone lock when done.
604	  Unlock zone and ip in rpz nsip and nsdname callback. Unlock
605	  authzone and localzone if clientip found in rpz worker call.
606	- Fix compile warning in libunbound for listen desetup routine.
607	- Fix asynclook unit test for setup of lockchecks before log.
608
60920 August 2021: Wouter
610	- Fix #529: Fix: log_assert does nothing if UNBOUND_DEBUG is
611	  undefined.
612	- Fix #531: Fix: passed to proc after free.
613
61417 August 2021: Wouter
615	- Fix that --with-ssl can use "/usr/include/openssl11" to pass the
616	  location of a different openssl version.
617	- Fix #527: not sending quad9 cert to syslog (and may be more).
618	- Fix sed script in ssldir split handling.
619
62016 August 2021: George
621	- Merge PR #528 from fobser: Make sldns_str2wire_svcparam_buf()
622	  static.
623
62416 August 2021: Wouter
625	- Fix to support harden-algo-downgrade for ZONEMD dnssec checks.
626
62713 August 2021: Wouter
628	- Support using system-wide crypto policies.
629	- Fix for #431: Squelch permission denied errors for udp connect,
630	  and udp send, they are visible at higher verbosity settings.
631	- Fix zonemd verification of key that is not in DNS but in the zone
632	  and needs a chain of trust.
633	- zonemd, fix order of bogus printout string manipulation.
634
63512 August 2021: George
636	- Merge PR #514, from ziollek: Docker environment for run tests.
637	- For #514: generate configure.
638
63912 August 2021: Wouter
640	- And 1.13.2rc1 became the 1.13.2 with the fix for the python module
641	  build. The current code repository continues with version 1.13.3.
642	- Add test tool readzone to .gitignore.
643	- Merge #521: Update mini_event.c.
644	- Merge #523: fix: free() call more than once with the same pointer.
645	- Merge #519: Support for selective enabling tcp-upstream for
646	  stub/forward zones.
647	- For #519: note stub-tcp-upstream and forward-tcp-upstream in
648	  the example configuration file.
649	- For #519: yacc and lex. And fix python bindings, and test program
650	  unbound-dnstap-socket.
651	- For #519: fix comments for doxygen.
652	- Fix to print error from unbound-anchor for writing to the key
653	  file, also when not verbose.
654
6555 August 2021: Wouter
656	- Tag for 1.13.2rc1 release.
657	- Fix #520: Unbound 1.13.2rc1 fails to build python module.
658
6594 August 2021: George
660	- Merge PR #415 from sibeream: Use
661	  /proc/sys/net/ipv4/ip_local_port_range to determine available outgoing
662	  ports. (New --enable-linux-ip-local-port-range configuration option)
663	- Bump MAX_RESTART_COUNT to 11 from 8; in relation to #438. This
664	  allows longer CNAME chains in Unbound.
665
6664 August 2021: Wouter
667	- In unit test use openssl set security level to allow keys in test.
668	- Fix static analysis warnings about localzone locks that are unused.
669	- Fix missing locks in zonemd unit test.
670	- Fix readzone compile under debug config.
671	- Fix out of sourcedir run of zonemd unit tests.
672	- Fix libnettle zonemd unit test.
673	- Fix unit test zonemd_reload for use in run_vm.
674
6753 August 2021: George
676	- Listen to read or write events after the SSL handshake.
677	  Sticky events on windows would stick on read when write was needed.
678
6793 August 2021: Wouter
680	- Merge PR #517 from dyunwei: #420 breaks the mesh reply list
681	  function that need to reuse the dns answer.
682	- Annotate assertion into error printout; we think it may be an
683	  error, but the situation looks harmless.
684	- Fix sign comparison warning on FreeBSD.
685
6862 August 2021: Wouter
687	- Prepare for OpenSSL 3.0.0 provider API usage, move the sldns
688	  keyraw functions to produce EVP_PKEY results.
689	- Move RSA and DSA to use OpenSSL 3.0.0 API.
690	- Move ECDSA functions to use OpenSSL 3.0.0 API.
691	- iana portlist update.
692	- Fix verbose printout failure in tcp reuse unit test.
693
69430 July 2021: Wouter
695	- Fix #515: Compilation against openssl 3.0.0 beta2 is failing to
696	  build unbound.
697	- For #515: Fix compilation with openssl 3.0.0 beta2, lib64 dir and
698	  SSL_get_peer_certificate.
699	- Move acx_nlnetlabs.m4 to version 41, with lib64 openssl dir check.
700
70126 July 2021: George
702	- Merge #513: Stream reuse, attempt to fix #411, #439, #469. This
703	  introduces a couple of fixes for the stream reuse functionality
704	  that could result in broken internal structures.
705
70626 July 2021: Wouter
707	- Merge #512: unbound.service.in: upgrade hardening to latest
708	  standards.
709	- Fix readzone unknown type print for memory resize.
710
71121 July 2021: Wouter
712	- Fix that ldns_zone_new_frm_fp_l counts the line number for an empty
713	  line after a comment.
714
71516 July 2021: George
716	- Introduce 'http-user-agent:' and 'hide-http-user-agent:' options.
717
71816 July 2021: Wouter
719	- Merge #510 from ndptech: Don't call a function which hasn't been
720	  defined.
721	- Fix for #510: in depth, use ifdefs for windows api event calls.
722	- Fix spelling in doc/unbound.doxygen comment.
723	- Fix spelling in localzone.h comment.
724	- Fix unbound-control local_data and local_datas to print detailed
725	  syntax errors.
726	- review fix to remove duplicate error printout.
727	- Insert header into testcode/readzone.c, it was missing.
728	- Fix from lint for ignored return value.
729	- Fix for older parsers for function call in serve expired get cached.
730
7316 July 2021: Wouter
732	- iana portlist update.
733
7345 July 2021: George
735	- Fix compiler warnings for #491.
736	- Fix clang-analysis warnings for testcode/readzone.c.
737
7384 July 2021: George
739	- Fix Wunused-result compile warnings.
740
7412 July 2021: Tom
742	- Merge PR #491: Add SVCB and HTTPS types and handling according to
743	  draft-ietf-dnsop-svcb-https.
744
7452 July 2021: Wouter
746	- Fix #506: Python Module Seems to Leak Memory if it Experiences an
747	  Unhandled Exception.
748
74925 June 2021: Wouter
750	- Fix up permissions on rpl data file in tests.
751	- Fix testbound newline treatment in moment_read and tempfile write.
752	- Fix configure grep for reuseport default for failure.
753	- Fix compat ctime_r return value
754	- Fix configure does not require pkg-config if not needed.
755	- Fix unit test in the ctime_r calls for autotrust and in testbound.
756	- Fix auth zone download on windows to unlink before rename.
757
75824 June 2021: Wouter
759	- Add analyzer and port compile github workflow.
760
76123 June 2021: Wouter
762	- Fix #503: DNS over HTTPS response truncated.
763	- Fix warnings reported by the gcc analyzer.
764
76521 June 2021: George
766	- Fix #495: Documentation or implementation of "verbosity" option.
767
76818 June 2021: Wouter
769	- Fix a number of warnings reported by the gcc analyzer.
770
77115 June 2021: George
772	- Merge #440 by kimheino: Various fixes to contrib/unbound_munin_ file.
773
77414 June 2021: Wouter
775	- Fix configure nonblocking test and onmingw test to use host.
776
77710 June 2021: Wouter
778	- Fix #500: SPEC file in version 1.13.1 references version 1.4;
779	  unable to build RPM from source.
780	- Fix contrib/unbound.spec, fixed url and comment.
781
7829 June 2021: George
783	- Merge #486 by fobster: Make VAL_MAX_RESTART_COUNT configurable.
784	- Generated lexer and parser for #486; updated example.conf.
785	- Fix #413 (based on patch by k-ronny): unbound: does not compile
786	  on macOS 11.1-x86_64 host.
787	- Use host_os instead of target_os in configure for Darwin8 build.
788
7898 June 2021: George
790	- Fix unused variable warning when compiling with --enable-dnstap.
791
7927 June 2021: George
793	- Merge #448 from shoeper: Update unbound-control.8.in, fix
794	  rpz_disable typo.
795	- Fix #425: Document auth-zone supports communication with DNS
796	  primary on nondefault port.
797
7981 June 2021: George
799	- Fix test for zonemd-check option.
800
80127 May 2021: Wouter
802	- Merge #496 from banburybill: Use build system endianness if
803	  available, otherwise try to work it out.
804	- zonemd-check: yesno option, default no, enables the processing
805	  of ZONEMD records for that zone.
806
80725 May 2021: Wouter
808	- Move the NSEC3 max iterations count in line with the 150 value
809	  used by BIND, Knot and PowerDNS. This sets the default value
810	  for it in the configuration to 150 for all key sizes.
811	- Fix #492: module-config respip missing in unbound.conf.5.in man
812	  page. Merges #494 from he32.
813	- For #492: Fix font highlighting for the man page on emacs.
814
81521 May 2021: Wouter
816	- Test code has -q option for quiet output.
817
81819 May 2021: George
819	- Fix for #411, #439, #469: Reset the DNS message ID when moving queries
820	  between TCP streams.
821	- Refactor for uniform way to produce random DNS message IDs.
822
82317 May 2021: Wouter
824	- Fix #489: Compile using MSYS2 MinGW 64-bit.
825
82612 May 2021: Wouter
827	- Fix that auth-zone zonefiles use last TTL if no TTL is specified.
828
82910 May 2021: Wouter
830	- Merge PR #487: ifdef RLIMIT_AS in recently added check.
831
8327 May 2021: Wouter
833	- Fix #485: Unbound occasionally reports broken stats.
834	- Add ./configure --with-deprecate-rsa-1024 that turns off RSA 1024.
835	- Remove case fallthrough from deprecate-rsa-1024 code.
836
8374 May 2021: George
838	- Fix for #367: only attempt to get the interface for queries that are no
839	  longer on the tcp_waiting_list.
840	- Add more logging for out-of-memory cases.
841
8424 May 2021: Wouter
843	- Merge #478: Allow configuration of TCP timeout while waiting for
844	  response.
845	- Fix to squelch tcp socket bind failures when the interface is gone.
846	- Rerun flex and bison.
847
8483 May 2021: Wouter
849	- Fix #481: Fix comment in configuration file.
850
85129 April 2021: Wouter
852	- Add that log-servfail prints an IP address and more information
853	  about one of the last failures for that query.
854
85528 April 2021: George
856	- Fix compiler warning for signed/unsigned comparison for
857	  max_reuse_tcp_queries.
858
85928 April 2021: Wouter
860	- Fix #474: always_null and others inside view.
861
86226 April 2021: Wouter
863	- Merge #470 from edevil: Allow configuration of persistent TCP
864	  connections.
865
86622 April 2021: Wouter
867	- Merge #466 from FGasper: Support OpenSSLs that lack
868	  SSL_get0_alpn_selected.
869	- Fix #468: OpenSSL 1.0.1 can no longer build Unbound.
870	- Further fix for #468: detect SSL_CTX_set_alpn_protos for build with
871	  OpenSSL 1.0.1.
872	- Fix that testcode dohclient has OpenSSL initialisation calls.
873
87413 April 2021: George
875	- Fix documentation comment for files previously residing in checkconf/.
876	- Remove unused functions worker_handle_reply and libworker_handle_reply.
877
87813 April 2021: Wouter
879	- Fix that nxdomain synthesis does not happen above the stub or
880	  forward definition.
881
88212 April 2021: George
883	- Fix (increase) verbosity level for iterator error log in
884	  processQueryTargets().
885
88612 April 2021: Wouter
887	- Fix permission denied sendto log, squelch the log messages
888	  unless high verbosity is set.
889
8909 April 2021: Wouter
891	- rebuild configure to set EXTRALINK to libunbound.la for #460.
892
8937 April 2021: Wouter
894	- Fix for #411: Depth protect for crash on deleted element timeout.
895
8961 April 2021: Wouter
897	- Merge #460 from orbea: build: Link with the libtool archive.
898	- Fix to stop IPv6 PMTU discovery.
899
90031 March 2021: George
901	- Clean makedist.sh.
902
90331 March 2021: Wouter
904	- Fix stack-protector change to not override other CFLAGS options.
905
90630 March 2021: George
907	- Disable the use of stack-protector for cross compiled 32-bit windows
908	  builds; relates to #444.
909
91025 March 2021: Wouter
911	- Fix #429: Also fix end of transfer for http download of auth zones.
912
91324 March 2021: Wouter
914	- Fix deprecation test to work for iOS TVOS and WatchOS, it uses
915	  CFLAGS and CPPFLAGS and also checks if the item is unavailable.
916	- Travis, fix script to fail when tasks fail.
917	- Travis, fix warning in ubsan compile.
918	- Fix configure Targetconfiditionals.h header check, to use compile.
919	- Fix that cachedb does not produce empty object files when disabled.
920
92123 March 2021: Wouter
922	- Travis enable all tests again. Clang analyzer only a couple times,
923	  when there is a difference. homebrew updates disabled, so it does
924	  not hang. removed trailing slashes from configure paths. Moved iOS
925	  tests to allow-failure.
926	- travis, analyzer disabled on test without debug, that does not
927	  run anway.  Turn off failing tests except one.  Update iOS test
928	  to xcode image 12.2.
929
93022 March 2021: George
931	- Fix unused-function warning when compiling with --enable-dnscrypt.
932	- Fix for #367: fix memory leak when cannot bind to listening port.
933	- Reformat pythonmod/pythonmod_utils.{c,h}.
934
93522 March 2021: Wouter
936	- Merge #449 from orbea: build: Add missing linker flags.
937	- iana portlist update.
938	- Comment out nonworking OSX and IOS travis tests, vm fails to start.
939	- Fix compile error in listen_dnsport on Android.
940	- Fix memory leak reported by asan in rpz SOA record query name.
941
94219 March 2021: Wouter
943	- Fix for #447: squelch connection refused tcp connection failures
944	  from the log, unless verbosity is high.
945
94617 March 2021: Wouter
947	- Fix #441: Minimal NSEC range not accepted for top level domains.
948
94911 March 2021: Wouter
950	- Fix parse of LOC RR type for decimetres.
951
9525 March 2021: Wouter
953	- Workaround for #439: prevent loops in the reuse rbtree.
954	- Debug output for #411 and #439: printout internal error and details.
955
9564 March 2021: Wouter
957	- iana portlist update.
958	- Fix spurious errors about "Could not generate request: out of
959	  memory".  The mesh detect cycle routine no longer wrongly stops
960	  the check when the calling mesh state is unique.
961
96226 February 2021: George
963	- Fix for #367: rc_ports don't have ub_sock; skip cleaning up.
964
96526 February 2021: Wouter
966	- Fix: Resolve interface names on control-interface too.
967
96825 February 2021: Wouter
969	- Merge PR #367 : DNSTAP log local address.  With code from PR #365
970	  and fixes #368 : dnstap does not log the DNS message ID for
971	  FORWARDER_QUERY.
972	- Fix to allow rpz with wildcard that applies to all TLDs at once.
973
97424 February 2021: George
975	- Fix #384: (1) A minor request to improve the log (2) A minor bug in one
976	  log message.
977	- ipsecmod: Better logging for detecting a cycle when attaching the
978	  A/AAAA subquery.
979
98024 February 2021: Wouter
981	- On startup of unbound it checks if rlimits on memory size look
982	  sufficient for the configured cache size, and logs warning if not.
983	- Fix function documentation.
984	- Fix unit test for added ulimit checks.
985	- spelling fix in header.
986
98723 February 2021: Wouter
988	- Fix for zonemd, that domain-insecure zones work without dnssec.
989	- Fix for zonemd, do not reject insecure result from trust anchor
990	  validation step in dnssec chain of trust.
991
99222 February 2021: Wouter
993	- Fix #431: Squelch permission denied errors for tcp connect
994	  and udp connect from the logs, unless at high verbosity.
995	- Fix for zonemd, that nxdomain for the chain of trust is allowed
996	  for island zones, it is treated as an insecure zone for verification.
997
99818 February 2021: Wouter
999	- Merge PR #317: ZONEMD Zone Verification, with RFC 8976 support.
1000	  ZONEMD records are checked for zones loaded as auth-zone,
1001	  with DNSSEC if available.  There is an added option
1002	  zonemd-permissive-mode that makes it log but not fail wrong zones.
1003	  With zonemd-reject-absence for an auth-zone the presence of a
1004	  zonemd can be mandated for specific zones.
1005	- Fix doxygen and pydoc warnings.
1006	- Fix #429: rpz: url: with https: broken (regression in 1.13.1).
1007	- rpz skip nsec3param records, and nicer log for unsupported actions.
1008
100915 February 2021: Wouter
1010	- Fix #422: IPv6 fallback issues when IPv6 is not properly
1011	  enabled/configured.
1012	- Fix to make tests work with support indicators set for iterator.
1013	- Fix build on Python 3.10.
1014
101510 February 2021: Wouter
1016	- Merge PR #420 from dyunwei: DOH not responsing with
1017	  "http2_query_read_done failure" logged.
1018
10199 February 2021: Wouter
1020	- Fix for Python 3.9, no longer use deprecated functions of
1021	  PyEval_CallObject (now PyObject_Call), PyEval_InitThreads (now
1022	  none), PyParser_SimpleParseFile (now Py_CompileString).
1023
10244 February 2021: Wouter
1025	- release 1.13.1rc2 tag on branch-1.13.1 with added changes of 2 feb.
1026	  This became 1.13.1 release tag on 9 feb.  The main branch is set
1027	  to version 1.13.2.
1028
10292 February 2021: Wouter
1030	- branch-1.13.1 is created, with release-1.13.1rc1 tag.
1031	- Fix dynlibmod link on rhel8 for -ldl inclusion.
1032	- Fix windows dependency on libssp.dll because of default stack
1033	  protector in mingw.
1034	- Fix indentation of root anchor for use by windows install script.
1035
10361 February 2021: George
1037	- Attempt to fix NULL keys in the reuse_tcp tree; relates to #411.
1038
103929 January 2021: Wouter
1040	- Fix for doxygen 1.8.20 compatibility.
1041
104228 January 2021: Wouter
1043	- Annotate that we ignore the return value of if_indextoname.
1044	- Fix to use correct type for label count in rpz routine.
1045	- Fix empty clause warning in config_file nsid parse.
1046	- Fix to use correct type for label count in ipdnametoaddr rpz routine.
1047	- Fix empty clause warning in edns pass for padding.
1048	- Fix fwd ancil test post script when not supported.
1049
105026 January 2021: George
1051	- Merge PR #408 from fobser: Prevent a few more yacc clashes.
1052	- Merge PR #275 from Roland van Rijswijk-Deij: Add feature to return the
1053	  original instead of a decrementing TTL ('serve-original-ttl')
1054	- Merge PR #355 from noloader: Make ICANN Update CA and DS Trust Anchor
1055	  static data.
1056	- Ignore cache blacklisting when trying to reply with expired data from
1057	  cache (#394).
1058
105926 January 2021: Wouter
1060	- Fix compile of unbound-dnstap-socket without dnstap installed.
1061
106222 January 2021: Willem
1063	- Padding of queries and responses with DNS over TLS as specified in
1064	  RFC7830 and RFC8467.
1065
106622 January 2021: George
1067	- Fix TTL of SOA record for negative answers (localzone and
1068	  authzone data) to be the minimum of the SOA TTL and the SOA.MINIMUM.
1069
107019 January 2021: Willem
1071	- Support for RFC5001: DNS Name Server Identifier (NSID) Option
1072	  with the nsid: option in unbound.conf
1073
107418 January 2021: Wouter
1075	- Fix #404: DNS query with small edns bufsize fail.
1076	- Fix declaration before statement and signed comparison warning in
1077	  dns64.
1078
107915 January 2021: Wouter
1080	- Merge #402 from fobser: Implement IPv4-Embedded addresses according
1081	  to RFC6052.
1082
108314 January 2021: Wouter
1084	- Fix for #93: dynlibmodule import library is named libunbound.dll.a.
1085
108613 January 2021: Wouter
1087	- Merge #399 from xiangbao227: The lock of lruhash table should
1088	  unlocked after markdel entry.
1089	- Fix for #93: dynlibmodule link fix for Windows.
1090
109112 January 2021: Wouter
1092	- Fix #397: [Feature request] add new type always_null to local-zone
1093	  similar to always_nxdomain.
1094	- Fix so local zone types always_nodata and always_deny can be used
1095	  from the config file.
1096
10978 January 2021: Wouter
1098	- Merge PR #391 from fhriley: Add start_time to reply callbacks so
1099	  modules can compute the response time.
1100	- For #391: use struct timeval* start_time for callback information.
1101	- For #391: fix indentation.
1102	- For #391: more double casts in python start time calculation.
1103	- Add comment documentation.
1104	- Fix clang analysis warning.
1105
11066 January 2021: Wouter
1107	- Fix #379: zone loading over HTTP appears to have buffer issues.
1108	- Merge PR #395 from mptre: add missing null check.
1109	- Fix #387: client-subnet-always-forward seems to effectively bypass
1110	  any caching?
1111
11125 January 2021: Wouter
1113	- Fix #385: autoconf 2.70 impacts unbound build
1114	- Merge PR #375 by fhriley: Add rpz_enable and rpz_disable commands
1115	  to unbound-control.
1116
11174 January 2021: Wouter
1118	- For #376: Fix that comm point event is not double removed or double
1119	  added to event map.
1120	- iana portlist updated.
1121
112216 December 2020: George
1123	- Fix error cases when udp-connect is set and send() returns an error
1124	  (modified patch from Xin Li @delphij).
1125
112611 December 2020: Wouter
1127	- Fix #371: unbound-control timeout when Unbound is not running.
1128	- Fix to squelch permission denied and other errors from remote host,
1129	  they are logged at higher verbosity but not on low verbosity.
1130	- Merge PR #335 from fobser: Sprinkle in some static to prevent
1131	  missing prototype warnings.
1132	- Merge PR #373 from fobser: Warning: arithmetic on a pointer to void
1133	  is a GNU extension.
1134	- Fix missing prototypes in the code.
1135
11363 December 2020: Wouter
1137	- make depend.
1138	- iana portlist updated.
1139
11402 December 2020: Wouter
1141	- Fix #360: for the additionally reported TCP Fast Open makes TCP
1142	  connections fail, in that case we print a hint that this is
1143	  happening with the error in the logs.
1144	- Fix #356: deadlock when listening tcp.
1145	- Fix unbound-dnstap-socket to not use log routine from interrupt
1146	  handler and not print so frequently when invoked in sequence.
1147	- Fix on windows to ignore connection failure on UDP, unless verbose.
1148	- Fix for #283: fix stream reuse and tcp fast open.
1149	- Fix update, with write event check with streamreuse and fastopen.
1150
11511 December 2020: Wouter
1152	- Fix #358: Squelch udp connect 'no route to host' errors on low
1153	  verbosity.
1154
115530 November 2020: Wouter
1156	- Fix assertion failure on double callback when iterator loses
1157	  interest in query at head of line that then has the tcp stream
1158	  not kept for reuse.
1159	- tag for the 1.13.0rc4 release.  This also became the 1.13.0
1160	  release version on 3 dec 2020 with the streamreuse and fastopen
1161	  fix from 2 dec 2020.  The code repo continues for 1.13.1 in
1162	  development.
1163
116427 November 2020: Wouter
1165	- Fix compile warning for type cast in http2_submit_dns_response.
1166	- Fix when use free buffer to initialize rbtree for stream reuse.
1167	- Fix compile warnings for windows.
1168	- Fix compile warnings in rpz initialization.
1169	- Fix contrib/metrics.awk for FreeBSD awk compatibility.
1170	- tag for the 1.13.0rc3 release.
1171
117226 November 2020: Wouter
1173	- Fix to omit UDP receive errors from log, if verbosity low.
1174	  These happen because of udp-connect.
1175	- For #352: contrib/metrics.awk for Prometheus style metrics output.
1176	- Fix that after failed read, the readagain cannot activate.
1177	- Clear readagain upon decommission of pending tcp structure.
1178
117925 November 2020: Wouter
1180	- with udp-connect ignore connection refused with UDP timeouts.
1181	- Fix udp-connect on FreeBSD, do send calls on connected UDP socket.
1182	- Better fix for reuse tree comparison for is-tls sockets.  Where
1183	  the tree key identity is preserved after cleanup of the TLS state.
1184	- Remove debug commands from reuse tests.
1185	- Fix memory leak for edns client tag opcode config element.
1186	- Attempt fix for libevent state in tcp reuse cases after a packet
1187	  is written.
1188	- Fix readagain and writeagain callback functions for comm point
1189	  cleanup.
1190	- tag for the 1.13.0rc2 release.
1191
119224 November 2020: Wouter
1193	- Merge PR #283 : Stream reuse.  This implements upstream stream
1194	  reuse for performing several queries over the same TCP or TLS
1195	  channel.
1196	- set version of main branch to 1.13.0 for upcoming release.
1197	- iana portlist updated.
1198	- Fix one port unit test for udp-connect.
1199	- tag for the 1.13.0rc1 release.
1200	- Fix crash when TLS connection is closed prematurely, when
1201	  reuse tree comparison is not properly identical to insertion.
1202	- Fix padding of struct regional for 32bit systems.
1203
120423 November 2020: George
1205	- Merge PR #313 from Ralph Dolmans: Replace edns-client-tag with
1206	  edns-client-string option.
1207
120823 November 2020: Wouter
1209	- Merge #351 from dvzrv: Add AF_NETLINK to set of allowed socket
1210	  address families.
1211	- Fix #350: with the AF_NETLINK permission, to fix 1.12.0 error:
1212	  failed to list interfaces: getifaddrs: Address family not
1213	  supported by protocol.
1214	- Fix #347: IP_DONTFRAG broken on Apple xcode 12.2.
1215	- Option to toggle udp-connect, default is enabled.
1216	- Fix for #303 CVE-2020-28935 : Fix that symlink does not interfere
1217	  with chown of pidfile.
1218	- Further fix for it and retvalue 0 fix for it.
1219
122012 November 2020: Wouter
1221	- Fix to connect() to UDP destinations, default turned on,
1222	  this lowers vulnerability to ICMP side channels.
1223	- Retry for interfaces with unused ports if possible.
1224
122510 November 2020: Wouter
1226	- Fix #341: fixing a possible memory leak.
1227	- Fix memory leak after fix for possible memory leak failure.
1228	- Fix #343: Fail to build --with-libnghttp2 with error: 'SSIZE_MAX'
1229	  undeclared.
1230
123127 October 2020: Wouter
1232	- In man page note that tls-cert-bundle is read before permission
1233	  drop and chroot.
1234
123522 October 2020: Wouter
1236	- Fix #333: Unbound Segmentation Fault w/ log_info Functions From
1237	  Python Mod.
1238	- Fix that minimal-responses does not remove addresses from a priming
1239	  query response.
1240
124121 October 2020: George
1242	- Fix #327: net/if.h check fails on some darwin versions; contribution by
1243	  Joshua Root.
1244	- Fix #320: potential memory corruption due to size miscomputation upton
1245	  custom region alloc init.
1246
124721 October 2020: Wouter
1248	- Merge PR #228 : infra-keep-probing option to probe hosts that are
1249	  down.  Add infra-keep-probing: yes option. Hosts that are down are
1250	  probed more frequently.
1251	  With the option turned on, it probes about every 120 seconds,
1252	  eventually after exponential backoff, and that keeps that way. If
1253	  traffic keeps up for the domain. It probes with one at a time, eg.
1254	  one query is allowed to probe, other queries within that 120 second
1255	  interval are turned away.
1256
125719 October 2020: George
1258	- Merge PR #324 from James Renken: Add modern X.509v3 extensions to
1259	  unbound-control TLS certificates.
1260	- Fix for PR #324 to attach the x509v3 extensions to the client
1261	  certificate.
1262
126319 October 2020: Ralph
1264	- local-zone regional allocations outside of chunk
1265
126619 October 2020: Wouter
1267	- Fix that http settings have colon in set_option, for
1268	  http-endpoint, http-max-streams, http-query-buffer-size,
1269	  http-response-buffer-size, and http-nodelay.
1270	- Fix memory leak of https port string when reading config.
1271	- Fix #330: [Feature request] Add unencrypted DNS over HTTPS support.
1272	  This adds the option http-notls-downstream: yesno to change that,
1273	  and the dohclient test code has the -n option.
1274	- Fix python documentation warning on functions.rst inplace_cb_reply.
1275	- Fix dnstap test to wait for log timer to see if queries are logged.
1276	- Log ip address when http session recv fails, eg. due to tls fail.
1277	- Fix to set the tcp handler event toggle flag back to default when
1278	  the handler structure is reused.
1279	- Clean the fix for out of order TCP processing limits on number
1280	  of queries.  It was tested to work.
1281
128216 October 2020: Wouter
1283	- Fix that the out of order TCP processing does not limit the
1284	  number of outstanding queries over a connection.
1285
128615 October 2020: George
1287	- Fix that if there are reply callbacks for the given rcode, those
1288	  are called per reply and a new message created if that was modified
1289	  by the call.
1290	- Pass the comm_reply information to the inplace_cb_reply* functions
1291	  during the mesh state and update the documentation on that.
1292
129315 October 2020: Wouter
1294	- Merge PR #326 from netblue30: DoH: implement content-length
1295	  header field
1296	- DoH content length, simplify code, remove declaration after
1297	  statement and fix cast warning.
1298
129914 October 2020: Wouter
1300	- Fix for python reply callback to see mesh state reply_list member,
1301	  it only removes it briefly for the commpoint call so that it does
1302	  not drop it and attempt to modify the reply list during reply.
1303	- Fix that if there are on reply callbacks, those are called per
1304	  reply and a new message created if that was modified by the call.
1305	- Free up auth zone parse region after use for lookup of host
1306
130713 October 2020: Wouter
1308	- Fix #323: unbound testsuite fails on mock build in systemd-nspawn
1309	  if systemd support is build.
1310
13119 October 2020: Wouter
1312	- Fix dnstap socket and the chroot not applied properly to the dnstap
1313	  socket path.
1314	- Fix warning in libnss compile, nss_buf2dsa is not used without DSA.
1315
13168 October 2020: Wouter
1317	- Tag for 1.12.0 release.
1318	- Current repo is version 1.12.1 in development.
1319	- Fix #319: potential memory leak on config failure, in rpz config.
1320
13211 October 2020: Wouter
1322	- Current repo is version 1.12.0 for release.  Tag for 1.12.0rc1.
1323
132430 September 2020: Wouter
1325	- Fix doh tests when not compiled in.
1326	- Add dohclient test executable to gitignore.
1327	- Fix stream_ssl, ssl_req_order and ssl_req_timeout tests for
1328	  alloc check debug output.
1329	- Easier kill of unbound-dnstap-socket tool in test.
1330	- Fix memory leak of edns tags at libunbound context delete.
1331	- Fix double loopexit for unbound-dnstap-socket after sigterm.
1332
133329 September 2020: Ralph
1334	- DNS Flag Day 2020: change edns-buffer-size default to 1232.
1335
133628 September 2020: Wouter
1337	- Fix unit test for dnstap changes, so that it waits for the timer.
1338
133923 September 2020: Wouter
1340	- Fix #305: dnstap logging significantly affects unbound performance
1341	  (regression in 1.11).
1342	- Fix #305: only wake up thread when threshold reached.
1343	- Fix to ifdef fptr wlist item for dnstap.
1344
134523 September 2020: Ralph
1346	- Fix edns-client-tags get_option typo
1347	- Add edns-client-tag-opcode option
1348	- Use inclusive language in configuration
1349
135021 September 2020: Ralph
1351	- Fix #304: dnstap logging not recovering after dnstap process restarts
1352
135321 September 2020: Wouter
1354	- Merge PR #311 by luismerino: Dynlibmod leak.
1355	- Error message is logged for dynlibmod malloc failures.
1356	- iana portlist updated.
1357
135818 September 2020: Wouter
1359	- Fix that prefer-ip4 and prefer-ip6 can be get and set with
1360	  unbound-control, with libunbound and the unbound-checkconf option
1361	  output function.
1362	- iana portlist updated.
1363
136415 September 2020: George
1365	- Introduce test for statistics.
1366
136715 September 2020: Wouter
1368	- Spelling fix.
1369
137011 September 2020: Wouter
1371	- Remove x file mode on ipset/ipset.c and h files.
1372
13739 September 2020: Wouter
1374	- Fix num.expired statistics output.
1375
137631 August 2020: Wouter
1377	- Merge PR #293: Add missing prototype.  Also refactor to use the new
1378	  shorthand function to clean up the code.
1379	- Refactor to use sock_strerr shorthand function.
1380	- Fix #296: systemd nss-lookup.target is reached before unbound can
1381	  successfully answer queries. Changed contrib/unbound.service.in.
1382
138327 August 2020: Wouter
1384	- Similar to NSD PR#113, implement that interface names can be used,
1385	  eg. something like interface: eth0 is resolved at server start and
1386	  uses the IP addresses for that named interface.
1387	- Review fix, doxygen and assign null in case of error free.
1388
138926 August 2020: George
1390	- Update documentation in python example code.
1391
139224 August 2020: Wouter
1393	- Fix that dnstap reconnects do not spam the log with the repeated
1394	  attempts.  Attempts on the timer are only logged on high verbosity,
1395	  if they produce a connection failure error.
1396	- Fix to apply chroot to dnstap-socket-path, if chroot is enabled.
1397	- Change configure to use EVP_sha256 instead of HMAC_Update for
1398	  openssl-3.0.0.
1399
140020 August 2020: Ralph
1401	- Fix stats double count issue (#289).
1402
140313 August 2020: Ralph
1404	- Create and init edns tags data for libunbound.
1405
140610 August 2020: Ralph
1407	- Merge (modified) PR #277, use EVP_MAC_CTX_set_params if available,
1408	  by Vítězslav Čížek.
1409
141010 August 2020: Wouter
1411	- Fix #287: doc typo: "Additionaly".
1412	- Rerun autoconf
1413
14146 August 2020: Wouter
1415	- Merge PR #284 and Fix #246: Remove DLV entirely from Unbound.
1416	  The DLV has been decommisioned and in unbound 1.5.4, in 2015, there
1417	  was advise to stop using it.  The current code base does not contain
1418	  DLV code any more.  The use of dlv options displays a warning.
1419
14205 August 2020: Wouter
1421	- contrib/aaaa-filter-iterator.patch file renewed diff content to
1422	  apply cleanly to the current coderepo for the current code version.
1423
14245 August 2020: Ralph
1425	- Merge PR #272: Add EDNS client tag functionality.
1426
14274 August 2020: George
1428	- Improve error log message when inserting rpz RR.
1429	- Merge PR #280, Make tvOS & watchOS checks verify truthiness as well as
1430	  definedness, by Felipe Gasper.
1431
14324 August 2020: Wouter
1433	- Fix mini_event.h on OpenBSD cannot find fd_set.
1434
143531 July 2020: Wouter
1436	- Fix doxygen comment for no ssl for tls session ticket key callback
1437	  routine.
1438
143927 July 2020: George
1440	- Merge PR #268, draft-ietf-dnsop-serve-stale-10 has become RFC 8767 on
1441	  March 2020, by and0x000.
1442
144327 July 2020: Ralph
1444	- Merge PR #269, Fix python module len() implementations, by Torbjörn
1445	  Lönnemark
1446
144727 July 2020: Wouter
1448	- branch now named 1.11.1.  1.11.0rc1 became the 1.11.0 release.
1449	- Merge PR #270 from cgzones: munin plugin: always exit 0 in autoconf
1450
145120 July 2020: Wouter
1452	- Fix streamtcp to print packet data to stdout.  This makes the
1453	  stdout and stderr not mix together lines, when parsing its output.
1454	- Fix contrib/fastrpz.patch to apply cleanly.  It fixes for changes
1455	  due to added libdynmod, but it does not compile, it conflicts with
1456	  new rpz code.
1457	- branch now named 1.11.0 and 1.11.0rc1 tag.
1458
145917 July 2020: Wouter
1460	- Fix libnettle compile for session ticket key callback function
1461	  changes.
1462	- Fix lock dependency cycle in rpz zone config setup.
1463
146417 July 2020: Ralph
1465	- Merge PR #234 - Ensure proper alignment of cmsg buffers by Jérémie
1466	  Courrèges-Anglas.
1467	- Fix PR #234 log_assert sizeof to use union buffer.
1468
146916 July 2020: Wouter
1470	- Fix check conf test for referencing installation paths.
1471	- Fix unused variable warning for clang analyzer.
1472
147316 July 2020: George
1474	- Introduce 'include-toplevel:' configuration option.
1475
147616 July 2020: Ralph
1477	- Add bidirectional frame streams support.
1478
14798 July 2020: Wouter
1480	- Fix add missing DSA header, for compilation without deprecated
1481	  OpenSSL APIs.
1482	- Fix to use SSL_CTX_set_tlsext_ticket_key_evp_cb in OpenSSL
1483	  3.0.0-alpha4.
1484	- Longer keys for the test set, this avoids weak crypto errors.
1485
14867 July 2020: Wouter
1487	- Fix #259: Fix unbound-checkconf does not check view existence.
1488	  unbound-checkconf checks access-control-view, access-control-tags,
1489	  access-control-tag-actions and access-control-tag-datas.
1490	- Fix offset of error printout for access-control-tag-datas.
1491	- Review fixes for checkconf #259 change.
1492
14936 July 2020: Wouter
1494	- run_vm cleanup better and removes trailing slash on single argument.
1495
149629 June 2020: Wouter
1497	- Move reply list clean for serve expired mesh callback to after
1498	  the reply is sent, so that script callbacks have reply_info.
1499	- Also move reply list clean for mesh callbacks to the scrip callback
1500	  can see the reply_info.
1501	- Fix for mesh accounting if the reply list already empty to begin
1502	  with.
1503	- Fix for mesh accounting when rpz decides to drop a reply with a
1504	  tcp stream waiting for it.
1505	- Review fix for number of detached states due to use of variable
1506	  after end of loop.
1507	- Fix tcp req info drop due to size call into mesh accounting
1508	  removal of mesh state during mesh send reply.
1509
151024 June 2020: Wouter
1511	- iana portlist updated.
1512	- doxygen file comments for dynlibmodule.
1513
151417 June 2020: Wouter
1515	- Fix default explanation in man page for qname-minimisation-strict.
1516	- Fix display of event loop method with libev.
1517
15188 June 2020: Wouter
1519	- Mention tls name possible when tls is enabled for stub-addr in the
1520	  man page.
1521
152227 May 2020: George
1523	- Merge PR #241 by Robert Edmonds: contrib/libunbound.pc.in: Do not use
1524	  "Requires:".
1525
152625 May 2020: George
1527	- Update contrib/aaaa-filter-iterator.patch for the recent
1528	  generate_sub_request() change and to apply cleanly.
1529
153021 May 2020: George
1531	- Fix for integer overflow when printing RDF_TYPE_TIME.
1532
153319 May 2020: Wouter
1534	- CVE-2020-12662 Unbound can be tricked into amplifying an incoming
1535	  query into a large number of queries directed to a target.
1536	- CVE-2020-12663 Malformed answers from upstream name servers can be
1537	  used to make Unbound unresponsive.
1538	- Release 1.10.1 is 1.10.0 with fixes, code repository continues,
1539	  including those fixes, towards the next release.  Configure has
1540	  version 1.10.2 version number in it.
1541	- For PR #93: windows compile warnings removal
1542	- windows compile warnings removal for ip dscp option code.
1543	- For PR #93: unit test for dynlib module.
1544
154518 May 2020: Wouter
1546	- For PR #93: dynlibmod can handle reloads and deinit and inits again,
1547	  with dlclose and dlopen of the library again.  Also for multiple
1548	  modules.  Fix memory leak by not closing dlopened content.  Fix
1549	  to allow one dynlibmod instance by unbound-checkconf.
1550	- For PR #93: checkconf allows multiple dynlib in module-config, for
1551	  a couple cases.
1552	- For PR #93: checkconf allows python dynlib in module-config, for
1553	  a couple cases.
1554	- For PR #93: man page spelling reference fix.
1555	- For PR #93: fix link of other executables for dynlibmod dependency.
1556
155715 May 2020: Wouter
1558	- Merge PR #93: Add dynamic library support.
1559	- Fixed conflicts for PR #93 and make configure, yacc, lex.
1560	- For PR #93: Fix warnings for dynlibmodule.
1561
156215 May 2020: Ralph
1563	- Cache ECS answers with longest scope of CNAME chain.
1564
156522 April 2020: George
1566	- Explicitly use 'rrset-roundrobin: no' for test cases.
1567
156821 April 2020: Wouter
1569	- Merge #225 from akhait: KSK-2010 has been revoked. It removes the
1570	  KSK-2010 from the default list in unbound-anchor, now that the
1571	  revocation period is over.  KSK-2017 is the only trust anchor in
1572	  the shipped default now.
1573
157421 April 2020: George
1575	- Change default value for 'rrset-roundrobin' to yes.
1576	- Fix tests for new rrset-roundrobin default.
1577
157820 April 2020: Wouter
1579	- Fix #222: --enable-rpath, fails to rpath python lib.
1580	- Fix for count of reply states in the mesh.
1581	- Remove unneeded was_mesh_reply check.
1582
158317 April 2020: George
1584	- Add SNI support on more TLS connections (fixes #193).
1585	- Add SNI support to unbound-anchor.
1586
158716 April 2020: George
1588	- Add doxygen documentation for DSCP.
1589
159016 April 2020: Wouter
1591	- Fix help return code in unbound-control-setup script.
1592	- Fix for posix shell syntax for trap in nsd-control-setup.
1593	- Fix for posix shell syntax for trap in run_msg.sh test script.
1594
159515 April 2020: George
1596	- Fix #220: auth-zone section in config may lead to segfault.
1597
15987 April 2020: Wouter
1599	- Merge PR #214 from gearnode: unbound-control-setup recreate
1600	  certificates.  With the -r option the certificates are created
1601	  again, without it, only the files that do not exist are created.
1602
16036 April 2020: Ralph
1604	- Keep track of number of timeouts. Use this counter to determine if
1605	  capsforid fallback should be started.
1606
16076 April 2020: George
1608	- More documentation for redis-expire-records option.
1609
16101 April 2020: George
1611	- Merge PR #206: Redis TTL, by Talkabout.
1612
161330 March 2020: Wouter
1614	- Merge PR #207: Clarify if-automatic listens on 0.0.0.0 and ::
1615	- Merge PR #208: Fix uncached CLIENT_RESPONSE'es on stateful
1616	  transports.
1617
161827 March 2020: Wouter
1619	- Merge PR #203 from noloader: Update README-Travis.md with current
1620	  procedures.
1621
162227 March 2020: Ralph
1623	- Make unbound-control error returned on missing domain name more user
1624	  friendly.
1625
162626 March 2020: Ralph
1627	- Fix RPZ concurrency issue when using auth_zone_reload.
1628
162925 March 2020: George
1630	- Merge PR #201 from noloader: Fix OpenSSL cross-compaile warnings.
1631	- Fix on #201.
1632
163324 March 2020: Wouter
1634	- Merge PR #200 from yarikk: add ip-dscp option to specify the DSCP
1635	  tag for outgoing packets.
1636	- Fixes on #200.
1637	- Travis fix for ios by omitting tools from install.
1638
163923 March 2020: Wouter
1640	- Fix compile on Solaris for unbound-checkconf.
1641
164220 March 2020: George
1643	- Merge PR #198 from fobser: Declare lz_enter_rr_into_zone() static, it's
1644	  only used in this file.
1645
164620 March 2020: Wouter
1647	- Merge PR #197 from fobser: Make log_ident_revert_to_default() a
1648	  proper prototype.
1649
165019 March 2020: Ralph
1651	- Merge PR#191: Update iOS testing on Travis, by Jeffrey Walton.
1652	- Fix #158: open tls-session-ticket-keys as binary, for Windows. By
1653	  Daisuke HIGASHI.
1654	- Merge PR#134, Allow the kernel to provide random source ports. By
1655	  Florian Obser.
1656	- Log warning when using outgoing-port-permit and outgoing-port-avoid
1657	  while explicit port randomisation is disabled.
1658	- Merge PR#194: Add libevent testing to Travis, by Jeffrey Walton.
1659	- Fix .travis.yml error, missing 'env' option.
1660
166116 March 2020: Wouter
1662	- Fix #192: In the unbound-checkconf tool, the module config of
1663	  dns64 subnetcache respip validator iterator is whitelisted, it was
1664	  reported it seems to work.
1665
166612 March 2020: Wouter
1667	- Fix compile of test tools without protobuf.
1668
166911 March 2020: Ralph
1670	- Add check to make sure RPZ records are subdomains of configured
1671	  zone origin.
1672
167311 March 2020: George
1674	- Fix #189: mini_event.h:142:17: error: field 'ev_timeout' has incomplete
1675	  type, by noloader.
1676	- Changelog entry for (Fix #189, Merge PR #190).
1677
167811 March 2020: Wouter
1679	- Fix #188: unbound-control.c:882:6: error: 'execlp' is
1680	  unavailable: not available on tvOS.
1681
16826 March 2020: George
1683	- Merge PR #186, fix #183: Fix unrecognized 'echo -n' option on OS X, by
1684	  noloader
1685
16865 March 2020: Wouter
1687	- Fix PR #182 from noloader: Add iOS testing to Travis.
1688
16894 March 2020: Ralph
1690	- Update README-Travis.md (from PR #179), by Jeffrey Walton.
1691
16924 March 2020: George
1693	- Merge PR #181 from noloader: Fix OpenSSL -pie warning on Android.
1694
16954 March 2020: Wouter
1696	- Merge PR #180 from noloader: Avoid calling exit in Travis script.
1697
16983 March 2020: George
1699	- Upgrade config.guess(2020-01-01) and config.sub(2020-01-01).
1700
17012 March 2020: Ralph
1702	- Fix #175, Merge PR #176: fix link error when OpenSSL is configured
1703 	  with no-engine, thanks noloader.
1704
17052 March 2020: George
1706	- Fix compiler warning in dns64/dns64.c
1707	- Merge PR #174: Add Android to Travis testing, by noloader.
1708	- Move android build scripts to contrib/ and allow android tests to fail.
1709
17102 March 2020: Wouter
1711	- Fix #177: dnstap does not build on macOS.
1712
171328 February 2020: Ralph
1714	- Merge PR #172: Add IBM s390x arch for testing, by noloader.
1715
171628 February 2020: Wouter
1717	- Merge PR #173: updated makedist.sh for config.guess and
1718	  config.sub and sha256 digest for gpg, by noloader.
1719	- Merge PR #164: Framestreams, this branch implements dnstap
1720	  unidirectional connectivity in unbound. This has a number of
1721	  new features.
1722
1723	  The dependency on libfstrm is removed. The fstrm protocol code
1724	  resides in dnstap/dnstap_fstrm.h and dnstap/dnstap_fstrm.c. This
1725	  contains a brief definition of what unbound needs.
1726
1727	  The make unbound-dnstap-socket builds a debug tool,
1728	  unbound-dnstap-socket. It can listen, accept multiple DNSTAP
1729	  streams and print information. Commandline options control it.
1730
1731	  Unbound can reconnect if the unix domain socket file socket is
1732	  closed. This uses exponential backoff after which it uses a
1733	  one second timer to throttle cpu down. There is also support
1734	  to use TCP and TLS for connecting to the log server. There
1735	  are new config options to turn them on, in the dnstap section
1736	  in the man page and example config file. dnstap-ip with IP
1737	  address of server for TCP or TLS use. dnstap-tls to turn
1738	  on TLS. And dnstap-tls-server-name, dnstap-tls-cert-bundle,
1739	  dnstap-tls-client-key-file and dnstap-tls-client-cert-file
1740	  to configure the certificates for server authentication and
1741	  client authentication, or leave at "" to not use that.
1742
174327 February 2020: George
1744	- Merge PR #171: Add additional compilers and platforms to Travis
1745	  testing, by noloader.
1746
174727 February 2020: Wouter
1748	- Fix #169: Fix warning for daemon/remote.c output may be truncated
1749	  from snprintf.
1750	- Fix #170: Fix gcc undefined sanitizer signed integer overflow
1751	  warning in signature expiry RFC1982 serial number arithmetic.
1752	- Fix more undefined sanitizer issues, in respip copy_rrset null
1753	  dname, and in the client_info_compare routine for null memcmp.
1754
175526 February 2020: Wouter
1756	- iana portlist updated.
1757
175825 February 2020: Wouter
1759	- Fix #165: Add prefer-ip4: yesno config option to prefer ipv4 for
1760	  using ipv4 filters, because the hosts ip6 netblock /64 is not owned
1761	  by one operator, and thus reputation is shared.
1762
176324 February 2020: George
1764	- Merge PR #166: Fix typo in unbound.service.in, by glitsj16.
1765
176620 February 2020: Wouter
1767	- Updated contrib/unbound_smf23.tar.gz with Solaris SMF service for
1768	  Unbound from Yuri Voinov.
1769	- master branch has 1.10.1 version.
1770
177118 February 2020: Wouter
1772	- protect X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS with ifdef for
1773	  different openssl versions.
1774
177517 February 2020: Wouter
1776	- changelog point where the tag for 1.10.0rc2 release is.  And with
1777	  the unbound_smf23 commit added to it, that is the 1.10.0 release.
1778
177917 February 2020: Ralph
1780	- Add respip to supported module-config options in unbound-checkconf.
1781
178217 February 2020: George
1783	- Remove unused variable.
1784
178517 February 2020: Wouter
1786	- contrib/drop2rpz: perl script that converts the Spamhaus DROP-List
1787	  in RPZ-Format, contributed by Andreas Schulze.
1788
178914 February 2020: Wouter
1790	- Fix spelling in unbound.conf.5.in.
1791	- Stop unbound-checkconf from insisting that auth-zone and rpz
1792	  zonefiles have to exist.  They can not exist, and download later.
1793
179413 February 2020: Wouter
1795	- tag for 1.10.0rc1 release.
1796
179712 February 2020: Wouter
1798	- Fix with libnettle make test with dsa disabled.
1799	- Fix contrib/fastrpz.patch to apply cleanly.  Fix for serve-stale
1800	  fixes, but it does not compile, conflicts with new rpz code.
1801	- Fix to clean memory leak of respip_addr.lock when ip_tree deleted.
1802	- Fix compile warning when threads disabled.
1803	- updated version number to 1.10.0.
1804
180510 February 2020: George
1806	- Document 'ub_result.was_ratelimited' in libunbound.
1807	- Fix use after free on log-identity after a reload; Fixes #163.
1808
18096 February 2020: George
1810	- Fix num_reply_states and num_detached_states counting with
1811	  serve_expired_callback.
1812	- Cleaner code in mesh_serve_expired_lookup.
1813	- Document in unbound.conf manpage that configuration clauses can be
1814	  repeated in the configuration file.
1815
18166 February 2020: Wouter
1817	- Fix num_reply_addr counting in mesh and tcp drop due to size
1818	  after serve_stale commit.
1819	- Fix to create and destroy rpz_lock in auth_zones structure.
1820	- Fix to lock zone before adding rpz qname trigger.
1821	- Fix to lock and release once in mesh_serve_expired_lookup.
1822	- Fix to put braces around empty if body when threading is disabled.
1823
18245 February 2020: George
1825	- Added serve-stale functionality as described in
1826	  draft-ietf-dnsop-serve-stale-10. `serve-expired-*` options can be used
1827	  to configure the behavior.
1828	- Updated cachedb to honor `serve-expired-ttl`; Fixes #107.
1829	- Renamed statistic `num.zero_ttl` to `num.expired` as expired replies
1830	  come with a configurable TTL value (`serve-expired-reply-ttl`).
1831	- Fixed stats when replying with cached, cname-aliased records.
1832	- Added missing default values for redis cachedb backend.
1833
18343 February 2020: Ralph
1835	- Add assertion to please static analyzer
1836
183731 January 2020: Wouter
1838	- Fix fclose on error in TLS session ticket code.
1839
184030 January 2020: Ralph
1841	- Fix memory leak in error condition remote.c
1842	- Fix double free in error condition view.c
1843	- Fix memory leak in do_auth_zone_transfer on success
1844	- Merge RPZ support into master. Only QNAME and Response IP triggers are
1845	  supported.
1846	- Stop working on socket when socket() call returns an error.
1847	- Check malloc return values in TLS session ticket code
1848
184930 January 2020: Wouter
1850	- Fix subnet tests for disabled DSA algorithm by default.
1851	- Update contrib/fastrpz.patch for clean diff with current code.
1852	- Merge PR#151: Fixes for systemd units, by Maryse47, Edmonds
1853	  and Frzk.  Updates the unbound.service systemd file and adds
1854	  a portable systemd service file.
1855	- updated .gitignore for added contrib file.
1856	- Add build rule for ipset to Makefile
1857	- Add getentropy_freebsd.o to Makefile dependencies.
1858
185929 January 2020: Ralph
1860	- Merge PR#156 from Alexander Berkes; Added unbound-control
1861	  view_local_datas_remove command.
1862
186329 January 2020: Wouter
1864	- Fix #157: undefined reference to `htobe64'.
1865
186628 January 2020: Ralph
1867	- Merge PR#147; change rfc reference for reserved top level dns names.
1868
186928 January 2020: Wouter
1870	- iana portlist updated.
1871	- Fix to silence the tls handshake errors for broken pipe and reset
1872	  by peer, unless verbosity is set to 2 or higher.
1873
187427 January 2020: Ralph
1875	- Merge PR#154; Allow use of libbsd functions with configure option
1876	  --with-libbsd. By Robert Edmonds and Steven Chamberlain.
1877	- Merge PR#148; Add some TLS stats to unbound_munin_. By Fredrik Pettai.
1878
187927 January 2020: Wouter
1880	- Merge PR#155 from Robert Edmonds: contrib/libunbound.pc.in: Fixes
1881	  to Libs/Requires for crypto library dependencies.
1882	- Fix #153: Disable validation for DSA algorithms.  RFC 8624
1883	  compliance.
1884
188523 January 2020: Wouter
1886	- Merge PR#150 from Frzk: Systemd unit without chroot.  It add
1887	  contrib/unbound_nochroot.service.in, a systemd file for use with
1888	  chroot: "", see comments in the file, it uses systemd protections
1889	  instead.
1890
189114 January 2020: Wouter
1892	- Removed the dnscrypt_queries and dnscrypt_queries_chacha tests,
1893	  because dnscrypt-proxy (2.0.36) does not support the test setup
1894	  any more, and also the config file format does not seem to have
1895	  the appropriate keys to recreate that setup.
1896	- Fix crash after reload where a stats lookup could reference old key
1897	  cache and neg cache structures.
1898	- Fix for memory leak when edns subnet config options are read when
1899	  compiled without edns subnet support.
1900	- Fix auth zone support for NSEC3 records without salt.
1901
190210 January 2020: Wouter
1903	- Fix the relationship between serve-expired and prefetch options,
1904	  patch from Saksham Manchanda from Secure64.
1905	- Fix unreachable code in ssl set options code.
1906
19078 January 2020: Ralph
1908	- Fix #138: stop binding pidfile inside chroot dir in systemd service
1909	  file.
1910
19118 January 2020: Wouter
1912	- Fix 'make test' to work for --disable-sha1 configure option.
1913	- Fix out-of-bounds null-byte write in sldns_bget_token_par while
1914	  parsing type WKS, reported by Luis Merino from X41 D-Sec.
1915	- Updated sldns_bget_token_par fix for also space for the zero
1916	  delimiter after the character.  And update for more spare space.
1917
19186 January 2020: George
1919	- Downgrade compat/getentropy_solaris.c to version 1.4 from OpenBSD.
1920	  The dl_iterate_phdr() function introduced in newer versions raises
1921	  compilation errors on solaris 10.
1922	- Changes to compat/getentropy_solaris.c for,
1923	  ifdef stdint.h inclusion for older systems.
1924	  ifdef sha2.h inclusion for older systems.
1925
19266 January 2020: Wouter
1927	- Merge #135 from Florian Obser: Use passed in neg and key cache
1928	  if non-NULL.
1929	- Fix #140: Document slave not downloading new zonefile upon update.
1930
193116 December 2019: George
1932	- Update mailing list URL.
1933
193412 December 2019: Ralph
1935	- Master is 1.9.7 in development.
1936	- Fix typo to let serve-expired-ttl work with ub_ctx_set_option(), by
1937	  Florian Obser
1938
193910 December 2019: Wouter
1940	- Fix to make auth zone IXFR to fallback to AXFR if a single
1941	  response RR is received over TCP with the SOA in it.
1942
19436 December 2019: Wouter
1944	- Fix ipsecmod compile.
1945	- Fix Makefile.in for ipset module compile, from Adi Prasaja.
1946	- release-1.9.6 tag, which became the 1.9.6 release
1947
19485 December 2019: Wouter
1949	- unbound-fuzzers.tar.bz2: three programs for fuzzing, that are 1:1
1950	  replacements for unbound-fuzzme.c that gets created after applying
1951	  the contrib/unbound-fuzzme.patch.  They are contributed by
1952	  Eric Sesterhenn from X41 D-Sec.
1953	- tag for 1.9.6rc1.
1954
19554 December 2019: Wouter
1956	- Fix lock type for memory purify log lock deletion.
1957	- Fix testbound for alloccheck runs, memory purify and lock checks.
1958	- update contrib/fastrpz.patch to apply more cleanly.
1959	- Fix Make Test Fails when Configured With --enable-alloc-nonregional,
1960	  reported by X41 D-Sec.
1961
19623 December 2019: Wouter
1963	- Merge pull request #124 from rmetrich: Changed log lock
1964	  from 'quick' to 'basic' because this is an I/O lock.
1965	- Fix text around serial arithmatic used for RRSIG times to refer
1966	  to correct RFC number.
1967	- Fix Assert Causing DoS in synth_cname(),
1968	  reported by X41 D-Sec.
1969	- Fix similar code in auth_zone synth cname to add the extra checks.
1970	- Fix Assert Causing DoS in dname_pkt_copy(),
1971	  reported by X41 D-Sec.
1972	- Fix OOB Read in sldns_wire2str_dname_scan(),
1973	  reported by X41 D-Sec.
1974	- Fix Out of Bounds Write in sldns_str2wire_str_buf(),
1975	  reported by X41 D-Sec.
1976	- Fix Out of Bounds Write in sldns_b64_pton(),
1977	  fixed by check in sldns_str2wire_int16_data_buf(),
1978	  reported by X41 D-Sec.
1979	- Fix Insufficient Handling of Compressed Names in dname_pkt_copy(),
1980	  reported by X41 D-Sec.
1981	- Fix Out of Bound Write Compressed Names in rdata_copy(),
1982	  reported by X41 D-Sec.
1983	- Fix Hang in sldns_wire2str_pkt_scan(),
1984	  reported by X41 D-Sec.
1985	  This further lowers the max to 256.
1986	- Fix snprintf() supports the n-specifier,
1987	  reported by X41 D-Sec.
1988	- Fix Bad Indentation, in dnscrypt.c,
1989	  reported by X41 D-Sec.
1990	- Fix Client NONCE Generation used for Server NONCE,
1991	  reported by X41 D-Sec.
1992	- Fix compile error in dnscrypt.
1993	- Fix _vfixed not Used, removed from sbuffer code,
1994	  reported by X41 D-Sec.
1995	- Fix Hardcoded Constant, reported by X41 D-Sec.
1996	- make depend
1997
19982 December 2019: Wouter
1999	- Merge pull request #122 from he32: In tcp_callback_writer(),
2000	  don't disable time-out when changing to read.
2001
200222 November 2019: George
2003	- Fix compiler warnings.
2004
200522 November 2019: Wouter
2006	- Fix dname loop maximum, reported by Eric Sesterhenn from X41 D-Sec.
2007	- Add make distclean that removes everything configure produced,
2008	  and make maintainer-clean that removes bison and flex output.
2009
201020 November 2019: Wouter
2011	- Fix Out of Bounds Read in rrinternal_get_owner(),
2012	  reported by X41 D-Sec.
2013	- Fix Race Condition in autr_tp_create(),
2014	  reported by X41 D-Sec.
2015	- Fix Shared Memory World Writeable,
2016	  reported by X41 D-Sec.
2017	- Adjust unbound-control to make stats_shm a read only operation.
2018	- Fix Weak Entropy Used For Nettle,
2019	  reported by X41 D-Sec.
2020	- Fix Randomness Error not Handled Properly,
2021	  reported by X41 D-Sec.
2022	- Fix Out-of-Bounds Read in dname_valid(),
2023	  reported by X41 D-Sec.
2024	- Fix Config Injection in create_unbound_ad_servers.sh,
2025	  reported by X41 D-Sec.
2026	- Fix Local Memory Leak in cachedb_init(),
2027	  reported by X41 D-Sec.
2028	- Fix Integer Underflow in Regional Allocator,
2029	  reported by X41 D-Sec.
2030	- Upgrade compat/getentropy_linux.c to version 1.46 from OpenBSD.
2031	- Synchronize compat/getentropy_win.c with version 1.5 from
2032	  OpenBSD, no changes but makes the file, comments, identical.
2033	- Upgrade compat/getentropy_solaris.c to version 1.13 from OpenBSD.
2034	- Upgrade compat/getentropy_osx.c to version 1.12 from OpenBSD.
2035	- Changes to compat/getentropy files for,
2036	  no link to openssl if using nettle, and hence config.h for
2037	  HAVE_NETTLE variable.
2038	  compat definition of MAP_ANON, for older systems.
2039	  ifdef stdint.h inclusion for older systems.
2040	  ifdef sha2.h inclusion for older systems.
2041	- Fixed Compat Code Diverging from Upstream, reported by X41 D-Sec.
2042	- Fix compile with --enable-alloc-checks, reported by X41 D-Sec.
2043	- Fix Terminating Quotes not Written, reported by X41 D-Sec.
2044	- Fix Useless memset() in validator, reported by X41 D-Sec.
2045	- Fix Unrequired Checks, reported by X41 D-Sec.
2046	- Fix Enum Name not Used, reported by X41 D-Sec.
2047	- Fix NULL Pointer Dereference via Control Port,
2048	  reported by X41 D-Sec.
2049	- Fix Bad Randomness in Seed, reported by X41 D-Sec.
2050	- Fix python examples/calc.py for eval, reported by X41 D-Sec.
2051	- Fix comments for doxygen in dns64.
2052
205319 November 2019: Wouter
2054	- Fix CVE-2019-18934, shell execution in ipsecmod.
2055	- 1.9.5 is 1.9.4 with bugfix, trunk is 1.9.6 in development.
2056	- Fix authzone printout buffer length check.
2057	- Fixes to please lint checks.
2058	- Fix Integer Overflow in Regional Allocator,
2059	  reported by X41 D-Sec.
2060	- Fix Unchecked NULL Pointer in dns64_inform_super()
2061	  and ipsecmod_new(), reported by X41 D-Sec.
2062	- Fix Out-of-bounds Read in rr_comment_dnskey(),
2063	  reported by X41 D-Sec.
2064	- Fix Integer Overflows in Size Calculations,
2065	  reported by X41 D-Sec.
2066	- Fix Integer Overflow to Buffer Overflow in
2067	  sldns_str2wire_dname_buf_origin(), reported by X41 D-Sec.
2068	- Fix Out of Bounds Read in sldns_str2wire_dname(),
2069	  reported by X41 D-Sec.
2070	- Fix Out of Bounds Write in sldns_bget_token_par(),
2071	  reported by X41 D-Sec.
2072
207318 November 2019: Wouter
2074	- In unbound-host use separate variable for get_option to please
2075	  code checkers.
2076	- update to bison output of 3.4.1 in code repository.
2077	- Provide a prototype for compat malloc to remove compile warning.
2078	- Portable grep usage for reuseport configure test.
2079	- Check return type of HMAC_Init_ex for openssl 0.9.8.
2080	- gitignore .source tempfile used for compatible make.
2081
208213 November 2019: Wouter
2083	- iana portlist updated.
2084	- contrib/fastrpz.patch updated to apply for current code.
2085	- fixes for splint cleanliness, long vs int in SSL set_mode.
2086
208711 November 2019: Wouter
2088	- Fix #109: check number of arguments for stdin-pipes in
2089	  unbound-control and fail if too many arguments.
2090	- Merge #102 from jrtc27: Add getentropy emulation for FreeBSD.
2091
209224 October 2019: Wouter
2093	- Fix #99: Memory leak in ub_ctx (event_base will never be freed).
2094
209523 October 2019: George
2096	- Add new configure option `--enable-fully-static` to enable full static
2097	  build if requested; in relation to #91.
2098
209923 October 2019: Wouter
2100	- Merge #97: manpage: Add missing word on unbound.conf,
2101	  from Erethon.
2102
210322 October 2019: Wouter
2104	- drop-tld.diff: adds option drop-tld: yesno that drops 2 label
2105	  queries, to stop random floods.  Apply with
2106	  patch -p1 < contrib/drop-tld.diff and compile.
2107	  From Saksham Manchanda (Secure64).  Please note that we think this
2108	  will drop DNSKEY and DS lookups for tlds and hence break DNSSEC
2109	  lookups for downstream clients.
2110
21117 October 2019: Wouter
2112	- Add doxygen comments to unbound-anchor source address code, in #86.
2113
21143 October 2019: Wouter
2115	- Merge #90 from vcunat: fix build with nettle-3.5.
2116	- Merge 1.9.4 release with fix for vulnerability CVE-2019-16866.
2117	- Continue with development of 1.9.5.
2118	- Merge #86 from psquarejho: Added -b source address option to
2119	  smallapp/unbound-anchor.c, from Lukas Wunner.
2120
212126 September 2019: Wouter
2122	- Merge #87 from hardfalcon: Fix contrib/unbound.service.in,
2123	  Drop CAP_KILL, use + prefix for ExecReload= instead.
2124
212525 September 2019: Wouter
2126	- The unbound.conf includes are sorted ascending, for include
2127	  statements with a '*' from glob.
2128
212923 September 2019: Wouter
2130	- Merge #85 for #84 from sam-lunt: Add kill capability to systemd
2131	  service file to fix that systemctl reload fails.
2132
213320 September 2019: Wouter
2134	- Merge #82 from hardfalcon: Downgrade CAP_NET_ADMIN to CAP_NET_RAW
2135	  in unbound.service.
2136	- Merge #81 from Maryse47: Consistently use /dev/urandom instead
2137	  of /dev/random in scripts and docs.
2138	- Merge #83 from Maryse47: contrib/unbound.service.in: do not fork
2139	  into the background.
2140
214119 September 2019: Wouter
2142	- Fix #78: Memory leak in outside_network.c.
2143	- Merge pull request #76 from Maryse47: Improvements and fixes for
2144	  systemd unbound.service.
2145	- oss-fuzz badge on README.md.
2146	- Fix fix for #78 to also free service callback struct.
2147	- Fix for oss-fuzz build warning.
2148	- Fix wrong response ttl for prepended short CNAME ttls, this would
2149	  create a wrong zero_ttl response count with serve-expired enabled.
2150	- Merge #80 from stasic: Improve wording in man page.
2151
215211 September 2019: Wouter
2153	- Use explicit bzero for wiping clear buffer of hash in cachedb,
2154	  reported by Eric Sesterhenn from X41 D-Sec.
2155
21569 September 2019: Wouter
2157	- Fix #72: configure --with-syslog-facility=LOCAL0-7 with default
2158	  LOG_DAEMON (as before) can set the syslog facility that the server
2159	  uses to log messages.
2160
21614 September 2019: Wouter
2162	- Fix #71: fix openssl error squelch commit compilation error.
2163
21643 September 2019: Wouter
2165	- squelch DNS over TLS errors 'ssl handshake failed crypto error'
2166	  on low verbosity, they show on verbosity 3 (query details), because
2167	  there is a high volume and the operator cannot do anything for the
2168	  remote failure.  Specifically filters the high volume errors.
2169
21702 September 2019: Wouter
2171	- ipset module #28: log that an address is added, when verbosity high.
2172	- ipset: refactor long routine into three smaller ones.
2173	- updated Makefile dependencies.
2174
217523 August 2019: Wouter
2176	- Fix contrib/fastrpz.patch asprintf return value checks.
2177
217822 August 2019: Wouter
2179	- Fix that pkg-config is setup before --enable-systemd needs it.
2180	- 1.9.3rc2 release candidate tag.  And this became the 1.9.3 release.
2181	  Master is 1.9.4 in development.
2182
218321 August 2019: Wouter
2184	- Fix log_dns_msg to log irrespective of minimal responses config.
2185
218619 August 2019: Ralph
2187	- Document limitation of pidfile removal outside of chroot directory.
2188
218916 August 2019: Wouter
2190	- Fix unittest valgrind false positive uninitialised value report,
2191	  where if gcc 9.1.1 uses -O2 (but not -O1) then valgrind 3.15.0
2192	  issues an uninitialised value for the token buffer at the str2wire.c
2193	  rrinternal_get_owner() strcmp with the '@' value.  Rewritten to use
2194	  straight character comparisons removes the false positive.  Also
2195	  valgrinds --expensive-definedness-checks=yes can stop this false
2196	  positive.
2197	- Please doxygen's parser for "@" occurrence in doxygen comment.
2198	- Fixup contrib/fastrpz.patch
2199	- Remove warning about unknown cast-function-type warning pragma.
2200
220115 August 2019: Wouter
2202	- iana portlist updated.
2203	- Fix autotrust temp file uniqueness windows compile.
2204	- avoid warning about upcast on 32bit systems for autotrust.
2205	- escape commandline contents for -V.
2206	- Fix character buffer size in ub_ctx_hosts.
2207	- 1.9.3rc1 release candidate tag.
2208	- Option -V prints if TCP fastopen is available.
2209
221014 August 2019: George
2211	- Fix #59, when compiled with systemd support check that we can properly
2212	  communicate with systemd through the `NOTIFY_SOCKET`.
2213
221414 August 2019: Wouter
2215	- Generate configlexer with newer flex.
2216	- Fix warning for unused variable for compilation without systemd.
2217
221812 August 2019: George
2219	- Introduce `-V` option to print the version number and build options.
2220	  Previously reported build options like linked libs and linked modules
2221	  are now moved from `-h` to `-V` as well for consistency.
2222	- PACKAGE_BUGREPORT now also includes link to GitHub issues.
2223
22241 August 2019: Wouter
2225	- For #52 #53, second context does not close logfile override.
2226	- Fix #52 #53, fix for example fail program.
2227	- Fix to return after failed auth zone http chunk write.
2228	- Fix to remove unused test for task_probe existance.
2229	- Fix to timeval_add for remaining second in microseconds.
2230	- Check repinfo in worker_handle_request, if null, drop it.
2231
223229 July 2019: Wouter
2233	- Add verbose log message when auth zone file is written, at level 4.
2234	- Add hex print of trust anchor pointer to trust anchor file temp
2235	  name to make it unique, for libunbound created multiple contexts.
2236
223723 July 2019: Wouter
2238	- Fix question section mismatch in local zone redirect.
2239
224019 July 2019: Wouter
2241	- Fix #49: Set no renegotiation on the SSL context to stop client
2242	  session renegotiation.
2243
224412 July 2019: Wouter
2245	- Fix #48: Unbound returns additional records on NODATA response,
2246	  if minimal-responses is enabled, also the additional for negative
2247	  responses is removed.
2248
22499 July 2019: Ralph
2250	- Fix in respip addrtree selection. Absence of addr_tree_init_parents()
2251	  call made it impossible to go up the tree when the matching netmask is
2252	  too specific.
2253
22545 July 2019: Ralph
2255	- Fix for possible assertion failure when answering respip CNAME from
2256	  cache.
2257
225825 June 2019: Wouter
2259	- For #45, check that 127.0.0.1 and ::1 are not used in unbound.conf
2260	  when do-not-query-localhost is turned on, or at default on,
2261	  unbound-checkconf prints a warning if it is found in forward-addr or
2262	  stub-addr statements.
2263
226424 June 2019: Wouter
2265	- Fix memleak in unit test, reported from the clang 8.0 static analyzer.
2266
226718 June 2019: Wouter
2268	- PR #28: IPSet module, by Kevin Chou.  Created a module to support
2269	  the ipset that could add the domain's ip to a list easily.
2270	  Needs libmnl, and --enable-ipset and config it, doc/README.ipset.md.
2271	- Fix to omit RRSIGs from addition to the ipset.
2272	- Fix to make unbound-control with ipset, remove unused variable,
2273	  use unsigned type because of comparison, and assign null instead
2274	  of compare with it.  Remade lex and yacc output.
2275	- make depend
2276	- Added documentation to the ipset files (for doxygen output).
2277	- Merge PR #6: Python module: support multiple instances
2278	- Merge PR #5: Python module: define constant MODULE_RESTART_NEXT
2279	- Merge PR #4: Python module: assign something useful to the
2280	  per-query data store 'qdata'
2281	- Fix python dict reference and double free in config.
2282
228317 June 2019: Wouter
2284	- Master contains version 1.9.3 in development.
2285	- Fix #39: In libunbound, leftover logfile is close()d unpredictably.
2286	- Fix for #24: Fix abort due to scan of auth zone masters using old
2287	  address from previous scan.
2288
228912 June 2019: Wouter
2290	- Fix another spoolbuf storage code point, in prefetch.
2291	- 1.9.2rc3 release candidate tag.  Which became the 1.9.2 release
2292	  on 17 June 2019.
2293
229411 June 2019: Wouter
2295	- Fix that fixes the Fix that spoolbuf is not used to store tcp
2296	  pipelined response between mesh send and callback end, this fixes
2297	  error cases that did not use the correct spoolbuf.
2298	- 1.9.2rc2 release candidate tag.
2299
23006 June 2019: Wouter
2301	- 1.9.2rc1 release candidate tag.
2302
23034 June 2019: Wouter
2304	- iana portlist updated.
2305
230629 May 2019: Wouter
2307	- Fix to guard _OPENBSD_SOURCE from redefinition.
2308
230928 May 2019: Wouter
2310	- Fix to define _OPENBSD_SOURCE to get reallocarray on NetBSD.
2311	- gitignore config.h.in~.
2312
231327 May 2019: Wouter
2314	- Fix double file close in tcp pipelined response code.
2315
231624 May 2019: Wouter
2317	- Fix that spoolbuf is not used to store tcp pipelined response
2318	  between mesh send and callback end.
2319
232020 May 2019: Wouter
2321	- Note that so-reuseport at extreme load is better turned off,
2322	  otherwise queries are not distributed evenly, on Linux 4.4.x.
2323
232416 May 2019: Wouter
2325	- Fix #31: swig 4.0 and python module.
2326
232713 May 2019: Wouter
2328	- Squelch log messages from tcp send about connection reset by peer.
2329	  They can be enabled with verbosity at higher values for diagnosing
2330	  network connectivity issues.
2331	- Attempt to fix malformed tcp response.
2332
23339 May 2019: Wouter
2334	- Revert fix for oss-fuzz, error is in that build script that
2335	  unconditionally includes .o files detected by configure, also
2336	  when the machine architecture uses different LIBOBJS files.
2337
23388 May 2019: Wouter
2339	- Attempt to fix build failure in oss-fuzz because of reallocarray.
2340	  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14648.
2341	  Does not omit compile flags from commandline.
2342
23437 May 2019: Wouter
2344	- Fix edns-subnet locks, in error cases the lock was not unlocked.
2345	- Fix doxygen output error on readme markdown vignettes.
2346
23476 May 2019: Wouter
2348	- Fix #29: Solaris 11.3 and missing symbols be64toh, htobe64.
2349	- Fix #30: AddressSanitizer finding in lookup3.c.  This sets the
2350	  hash function to use a slower but better auditable code that does
2351	  not read beyond array boundaries.  This makes code better security
2352	  checkable, and is better for security.  It is fixed to be slower,
2353	  but not read outside of the array.
2354
23552 May 2019: Wouter
2356	- contrib/fastrpz.patch updated for code changes, and with git diff.
2357	- Fix .gitignore, add pythonmod and dnstap generated files.
2358	  And unit test generated files, and generated doc files.
2359
23601 May 2019: Wouter
2361	- Update makedist for git.
2362	- Nicer travis output for clang analysis.
2363	- PR #16: XoT support, AXFR over TLS, turn it on with
2364	  master: <ip>#<authname> in unbound.conf.  This uses TLS to
2365	  download the AXFR (or IXFR).
2366
236725 April 2019: Wouter
2368	- Fix wrong query name in local zone redirect answers with a CNAME,
2369	  the copy of the local alias is in unpacked form.
2370
237118 April 2019: Ralph
2372	- Scrub RRs from answer section when reusing NXDOMAIN message for
2373	  subdomain answers.
2374	- For harden-below-nxdomain: do not consider a name to be non-exitent
2375	  when message contains a CNAME record.
2376
237718 April 2019: Wouter
2378	- travis build file.
2379
238016 April 2019: Wouter
2381	- Better braces in if statement in TCP fastopen code.
2382	- iana portlist updated.
2383
238415 April 2019: Wouter
2385	- Fix tls write event for read state change to re-call SSL_write and
2386	  not resume the TLS handshake.
2387
238811 April 2019: George
2389	- Update python documentation for init_standard().
2390	- Typos.
2391
239211 April 2019: Wouter
2393	- Fix that auth zone uses correct network type for sockets for
2394	  SOA serial probes.  This fixes that probes fail because earlier
2395	  probe addresses are unreachable.
2396	- Fix that auth zone fails over to next master for timeout in tcp.
2397	- Squelch SSL read and write connection reset by peer and broken pipe
2398	  messages.  Verbosity 2 and higher enables them.
2399
24008 April 2019: Wouter
2401	- Fix to use event_assign with libevent for thread-safety.
2402	- verbose information about auth zone lookup process, also lookup
2403	  start, timeout and fail.
2404	- Fix #17: Add python module example from Jan Janak, that is a
2405	  plugin for the Unbound DNS resolver to resolve DNS records in
2406	  multicast DNS [RFC 6762] via Avahi.  The plugin communicates
2407	  with Avahi via DBus. The comment section at the beginning of
2408	  the file contains detailed documentation.
2409	- Fix to wipe ssl ticket keys from memory with explicit_bzero,
2410	  if available.
2411
24125 April 2019: Wouter
2413	- Fix to reinit event structure for accepted TCP (and TLS) sockets.
2414
24154 April 2019: Wouter
2416	- Fix spelling error in log output for event method.
2417
24183 April 2019: Wouter
2419	- Move goto label in answer_from_cache to the end of the function
2420	  where it is more visible.
2421	- Fix auth-zone NSEC3 response for wildcard nodata answers,
2422	  include the closest encloser in the answer.
2423
24242 April 2019: Wouter
2425	- Fix auth-zone NSEC3 response for empty nonterminals with exact
2426	  match nsec3 records.
2427	- Fix for out of bounds integers, thanks to OSTIF audit.  It is in
2428	  allocation debug code.
2429	- Fix for auth zone nsec3 ent fix for wildcard nodata.
2430
243125 March 2019: Wouter
2432	- Fix that tls-session-ticket-keys: "" on its own in unbound.conf
2433	  disables the tls session ticker key calls into the OpenSSL API.
2434	- Fix crash if tls-servic-pem not filled in when necessary.
2435
243621 March 2019: Wouter
2437	- Fix #4240: Fix whitespace cleanup in example.conf.
2438
243919 March 2019: Wouter
2440	- add type CAA to libpyunbound (accessing libunbound from python).
2441
244218 March 2019: Wouter
2443	- Add log message, at verbosity 4, that says the query is encrypted
2444	  with TLS, if that is enabled for the query.
2445	- Fix #4239: set NOTIMPL when deny-any is enabled, for RFC8482.
2446
24477 March 2019: Wouter
2448	- Fix for #4233: guard use of NDEBUG, so that it can be passed in
2449	  CFLAGS into configure.
2450
24515 March 2019: Wouter
2452	- Tag release 1.9.1rc1.  Which became 1.9.1 on 12 March 2019.  Trunk
2453	  has 1.9.2 in development.
2454
24551 March 2019: Wouter
2456	- output forwarder log in ssl_req_order test.
2457
245828 February 2019: Wouter
2459	- Remove memory leak on pythonmod python2 script file init.
2460	- Remove swig gcc8 python function cast warnings, they are ignored.
2461	- Print correct module that failed when module-config is wrong.
2462
246327 February 2019: Wouter
2464	- Fix #4229: Unbound man pages lack information, about access-control
2465	  order and local zone tags, and elements in views.
2466	- Fix #14: contrib/unbound.init: Fix wrong comparison judgment
2467	  before copying.
2468	- Fix for python module on Windows, fix fopen.
2469
247025 February 2019: Wouter
2471	- Fix #4227: pair event del and add for libevent for tcp_req_info.
2472
247321 February 2019: Wouter
2474	- Fix the error for unknown module in module-config is understandable,
2475	  and explains it was not compiled in and where to see the list.
2476	- In example.conf explain where to put cachedb module in module-config.
2477	- In man page and example config explain that most modules have to
2478	  be listed at the start of module-config.
2479
248020 February 2019: Wouter
2481	- Fix pythonmod include and sockaddr_un ifdefs for compile on
2482	  Windows, and for libunbound.
2483
248418 February 2019: Wouter
2485	- Print query name with ip_ratelimit exceeded log lines.
2486	- Spaces instead of tabs in that log message.
2487	- Print query name and IP address when domain rate limit exceeded.
2488
248914 February 2019: Wouter
2490	- Fix capsforid canonical sort qsort callback.
2491
249211 February 2019: Wouter
2493	- Note default for module-config in man page.
2494	- Fix recursion lame test for qname minimisation asked queries,
2495	  that were not present in the set of prepared answers.
2496	- Fix #13: Remove left-over requirements on OpenSSL >= 1.1.0 for
2497	  cert name matching, from man page.
2498	- make depend, with newer gcc, nicer layout.
2499
25007 February 2019: Wouter
2501	- Fix #4206: OpenSSL 1.0.2 hostname verification for FreeBSD 11.2.
2502	- Fix that qname minimisation does not skip a label when missing
2503	  nameserver targets need to be fetched.
2504	- Fix #4225: clients seem to erroneously receive no answer with
2505	  DNS-over-TLS and qname-minimisation.
2506
25074 February 2019: Wouter
2508	- Fix that log-replies prints the correct name for local-alias
2509	  names, for names that have a CNAME in local-data configuration.
2510	  It logs the original query name, not the target of the CNAME.
2511	- Add local-zone type inform_redirect, which logs like type inform,
2512	  and redirects like type redirect.
2513	- Perform canonical sort for 0x20 capsforid compare of replies,
2514	  this sorts rrsets in the authority and additional section before
2515	  comparison, so that out of order rrsets do not cause failure.
2516
251731 January 2019: Wouter
2518	- Set ub_ctx_set_tls call signature in ltrace config file for
2519	  libunbound in contrib/libunbound.so.conf.
2520	- improve documentation for tls-service-key and forward-first.
2521	- #10: fixed pkg-config operations, PKG_PROG_PKG_CONFIG moved out of
2522	  conditional section, fixes systemd builds, from Enrico Scholz.
2523	- #9: For openssl 1.0.2 use the CRYPTO_THREADID locking callbacks,
2524	  still supports the set_id_callback previous API.  And for 1.1.0
2525	  no locking callbacks are needed.
2526	- #8: Fix OpenSSL without ENGINE support compilation.
2527	- Wipe TLS session key data from memory on exit.
2528
252930 January 2019: Ralph
2530	- Fix case in which query timeout can result in marking delegation
2531	  as edns_lame_known.
2532
253329 January 2019: Wouter
2534	- Fix spelling of tls-ciphers in example.conf.in.
2535	- Fix #4224: auth_xfr_notify.rpl test broken due to typo
2536	- Fix locking for libunbound context setup with broken port config.
2537
253828 January 2019: Wouter
2539	- ub_ctx_set_tls call for libunbound that enables DoT for the machines
2540	  set with ub_ctx_set_fwd.  Patch from Florian Obser.
2541	- Set build system for added call in the libunbound API.
2542	- List example config for root zone copy locally hosted with auth-zone
2543	  as suggested from draft-ietf-dnsop-7706-bis-02.  But with updated
2544	  B root address.
2545	- set version to 1.9.0 for release.  And this was released with the
2546	  spelling for tls-ciphers fix as 1.9.0 on Feb 5.  Trunk has 1.9.1 in
2547	  development.
2548
254925 January 2019: Wouter
2550	- Fix that tcp for auth zone and outgoing does not remove and
2551	  then gets the ssl read again applied to the deleted commpoint.
2552	- updated contrib/fastrpz.patch to cleanly diff.
2553	- no lock when threads disabled in tcp request buffer count.
2554	- remove compile warnings from libnettle compile.
2555	- output of newer lex 2.6.1 and bison 3.0.5.
2556
255724 January 2019: Wouter
2558	- Newer aclocal and libtoolize used for generating configure scripts,
2559	  aclocal 1.16.1 and libtoolize 2.4.6.
2560	- Fix unit test for python 3.7 new keyword 'async'.
2561	- clang analysis fixes, assert arc4random buffer in init,
2562	  no check for already checked delegation pointer in iterator,
2563	  in testcode check for NULL packet matches, in perf do not copy
2564	  from NULL start list when growing capacity.  Adjust host and file
2565	  only when present in test header read to please checker.  In
2566	  testcode for unknown macro operand give zero result. Initialise the
2567	  passed argv array in test code.  In test code add EDNS data
2568	  segment copy only when nonempty.
2569	- Patch from Florian Obser fixes some compiler warnings:
2570	  include mini_event.h to have a prototype for mini_ev_cmp
2571	  include edns.h to have a prototype for apply_edns_options
2572	  sldns_wire2str_edns_keepalive_print is only called in the wire2str,
2573	  module declare it static to get rid of compiler warning:
2574	  no previous prototype for function
2575	  infra_find_ip_ratedata() is only called in the infra module,
2576	  declare it static to get rid of compiler warning:
2577	  no previous prototype for function
2578	  do not shadow local variable buf in authzone
2579	  auth_chunks_delete and az_nsec3_findnode are only called in the
2580	  authzone module, declare them static to get rid of compiler warning:
2581	  no previous prototype for function...
2582	  copy_rrset() is only called in the respip module, declare it
2583	  static to get rid of compiler warning:
2584	  no previous prototype for function 'copy_rrset'
2585	  no need for another variable "r"; gets rid of compiler warning:
2586	  declaration shadows a local variable in libunbound.c
2587	  no need for another variable "ns"; gets rid of compiler warning:
2588	  declaration shadows a local variable in iterator.c
2589	- Moved includes and make depend.
2590
259123 January 2019: Wouter
2592	- Patch from Manabu Sonoda with tls-ciphers and tls-ciphersuites
2593	  options for unbound.conf.
2594	- Fixes for the patch, and man page entry.
2595	- Fix configure to detect SSL_CTX_set_ciphersuites, for better
2596	  library compatibility when compiling.
2597	- Patch for TLS session resumption from Manabu Sonoda,
2598	  enable with tls-session-ticket-keys in unbound.conf.
2599	- Fixes for patch (includes, declarations, warnings).  Free at end
2600	  and keep config options in order read from file to keep the first
2601	  one as the first one.
2602	- Fix for IXFR fallback to reset counter when IXFR does not timeout.
2603
260422 January 2019: Wouter
2605	- Fix space calculation for tcp req buffer size.
2606	- Doc for stream-wait-size and unit test.
2607	- unbound-control stats has mem.streamwait that counts TCP and TLS
2608	  waiting result buffers.
2609	- Fix for #4219: secondaries not updated after serial change, unbound
2610	  falls back to AXFR after IXFR gives several timeout failures.
2611	- Fix that auth zone after IXFR fallback tries the same master.
2612
261321 January 2019: Wouter
2614	- Fix tcp idle timeout test, for difference in the tcp reply code.
2615	- Unit test for tcp request reorder and timeouts.
2616	- Unit tests for ssl out of order processing.
2617	- Fix that multiple dns fragments can be carried in one TLS frame.
2618	- Add stream-wait-size: 4m config option to limit the maximum
2619	  memory used by waiting tcp and tls stream replies.  This avoids
2620	  a denial of service where these replies use up all of the memory.
2621
262217 January 2019: Wouter
2623	- For caps-for-id fallback, use the whitelist to avoid timeout
2624	  starting a fallback sequence for it.
2625	- increase mesh max activation count for capsforid long fetches.
2626
262716 January 2019: Ralph
2628	- Get ready for the DNS flag day: remove EDNS lame procedure, do not
2629	  re-query without EDNS after timeout.
2630
263115 January 2019: Wouter
2632	- In the out of order processing, reset byte count for (potential)
2633	  partial read.
2634	- Review fixes in out of order processing.
2635
263614 January 2019: Wouter
2637	- streamtcp option -a send queries consecutively and prints answers
2638	  as they arrive.
2639	- Fix for out of order processing administration quit cleanup.
2640	- unit test for tcp out of order processing.
2641
264211 January 2019: Wouter
2643	- Initial commit for out-of-order processing for TCP and TLS.
2644
26459 January 2019: Wouter
2646	- Log query name for looping module errors.
2647
26488 January 2019: Wouter
2649	- Fix syntax in comment of local alias processing.
2650	- Fix NSEC3 record that is returned in wildcard replies from
2651	  auth-zone zones with NSEC3 and wildcards.
2652
26537 January 2019: Wouter
2654	- On FreeBSD warn if systcl settings do not allow server TCP FASTOPEN,
2655	  and server tcp fastopen is enabled at compile time.
2656	- Document interaction between the tls-upstream option in the server
2657	  section and forward-tls-upstream option in the forward-zone sections.
2658	- Add contrib/unbound-fuzzme.patch from Jacob Hoffman-Andrews,
2659	  the patch adds a program used for fuzzing.
2660
266112 December 2018: Wouter
2662	- Fix for crash in dns64 module if response is null.
2663
266410 December 2018: Wouter
2665	- Fix config parser memory leaks.
2666	- ip-ratelimit-factor of 1 allows all traffic through, instead of the
2667	  previous blocking everything.
2668	- Fix for FreeBSD port make with dnscrypt and dnstap enabled.
2669	- Fix #4206: support openssl 1.0.2 for TLS hostname verification,
2670	  alongside the 1.1.0 and later support that is already there.
2671	- Fixup openssl 1.0.2 compile
2672
26736 December 2018: Wouter
2674	- Fix dns64 allocation in wrong region for returned internal queries.
2675
26763 December 2018: Wouter
2677	- Fix icon, no ragged edges and nicer resolutions available, for eg.
2678	  Win 7 and Windows 10 display.
2679	- cache-max-ttl also defines upperbound of initial TTL in response.
2680
268130 November 2018: Wouter
2682	- Patch for typo in unbound.conf man page.
2683	- log-tag-queryreply: yes in unbound.conf tags the log-queries and
2684	  log-replies in the log file for easier log filter maintenance.
2685
268629 November 2018: Wouter
2687	- iana portlist updated.
2688	- Fix chroot auth-zone fix to remove chroot prefix.
2689	- tag for 1.8.2rc1, which became 1.8.2 on 4 dec 2018, with icon
2690	  updated.  Trunk contains 1.8.3 in development.
2691	  Which became 1.8.3 on 11 december with only the dns64 fix of 6 dec.
2692	  Trunk then became 1.8.4 in development.
2693	- Fix that unbound-checkconf does not complains if the config file
2694	  is not placed inside the chroot.
2695	- Refuse to start with no ports.
2696	- Remove clang analysis warnings.
2697
269828 November 2018: Wouter
2699	- Fix leak in chroot fix for auth-zone.
2700	- Fix clang analysis for outside directory build test.
2701
270227 November 2018: Wouter
2703	- Fix DNS64 to not store intermediate results in cache, this avoids
2704	  other threads from picking up the wrong data.  The module restores
2705	  the previous no_cache_store setting when the the module is finished.
2706	- Fix #4208: 'stub-no-cache' and 'forward-no-cache' not work.
2707	- New and better fix for Fix #4193: Fix that prefetch failure does
2708	  not overwrite valid cache entry with SERVFAIL.
2709	- auth-zone give SERVFAIL when expired, fallback activates when
2710	  expired, and this is documented in the man page.
2711	- stat count SERVFAIL downstream auth-zone queries for expired zones.
2712	- Put new logos into windows installer.
2713	- Fix windows compile for new rrset roundrobin fix.
2714	- Update contrib fastrpz patch for latest release.
2715
271626 November 2018: Wouter
2717	- Fix to not set GLOB_NOSORT so the unbound.conf include: files are
2718	  sorted and in a predictable order.
2719	- Fix #4193: Fix that prefetch failure does not overwrite valid cache
2720	  entry with SERVFAIL.
2721	- Add unbound-control view_local_datas command, like local_datas.
2722	- Fix that unbound-control can send file for view_local_datas.
2723
272422 November 2018: Wouter
2725	- With ./configure --with-pyunbound --with-pythonmodule
2726	  PYTHON_VERSION=3.6 or with 2.7 unbound can compile and unit tests
2727	  succeed for the python module.
2728	- pythonmod logs the python error and traceback on failure.
2729	- ignore debug python module for test in doxygen output.
2730	- review fixes for python module.
2731	- Fix #4209: Crash in libunbound when called from getdns.
2732	- auth zone zonefiles can be in a chroot, the chroot directory
2733	  components are removed before use.
2734	- Fix that empty zonefile means the zonefile is not set and not used.
2735	- make depend.
2736
273721 November 2018: Wouter
2738	- Scrub NS records from NODATA responses as well.
2739
274020 November 2018: Wouter
2741	- Scrub NS records from NXDOMAIN responses to stop fragmentation
2742	  poisoning of the cache.
2743	- Add patch from Jan Vcelak for pythonmod,
2744	  add sockaddr_storage getters, add support for query callbacks,
2745	  allow raw address access via comm_reply and update API documentation.
2746	- Removed compile warnings in pythonmod sockaddr routines.
2747
274819 November 2018: Wouter
2749	- Support SO_REUSEPORT_LB in FreeBSD 12 with the so-reuseport: yes
2750	  option in unbound.conf.
2751
27526 November 2018: Ralph
2753	- Bugfix min-client-subnet-ipv6
2754
275525 October 2018: Ralph
2756	- Add min-client-subnet-ipv6 and min-client-subnet-ipv4 options.
2757
275825 October 2018: Wouter
2759	- Fix #4191: NXDOMAIN vs SERVFAIL during dns64 PTR query.
2760	- Fix #4190: Please create a "ANY" deny option, adds the option
2761	  deny-any: yes in unbound.conf.  This responds with an empty message
2762	  to queries of type ANY.
2763	- Fix #4141: More randomness to rrset-roundrobin.
2764	- Fix #4132: Openness/closeness of RANGE intervals in rpl files.
2765	- Fix #4126: RTT_band too low on VSAT links with 600+ms latency,
2766	  adds the option unknown-server-time-limit to unbound.conf that
2767	  can be increased to avoid the problem.
2768	- remade makefile dependencies.
2769	- Fix #4152: Logs shows wrong time when using log-time-ascii: yes.
2770
277124 October 2018: Ralph
2772	- Add markdel function to ECS slabhash.
2773	- Limit ECS scope returned to client to the scope used for caching.
2774	- Make lint like previous #4154 fix.
2775
277622 October 2018: Wouter
2777	- Fix #4192: unbound-control-setup generates keys not readable by
2778	  group.
2779	- check that the dnstap socket file can be opened and exists, print
2780	  error if not.
2781	- Fix #4154: make ECS_MAX_TREESIZE configurable, with
2782	  the max-ecs-tree-size-ipv4 and max-ecs-tree-size-ipv6 options.
2783
278422 October 2018: Ralph
2785	- Change fast-server-num default to 3.
2786
27878 October 2018: Ralph
2788	- Add fast-server-permil and fast-server-num options.
2789	- Deprecate low-rtt and low-rtt-permil options.
2790
27918 October 2018: Wouter
2792	- Squelch log of failed to tcp initiate after TCP Fastopen failure.
2793
27945 October 2018: Wouter
2795	- Squelch EADDRNOTAVAIL errors when the interface goes away,
2796	  this omits 'can't assign requested address' errors unless
2797	  verbosity is set to a high value.
2798	- Set default for so-reuseport to no for FreeBSD.  It is enabled
2799	  by default for Linux and DragonFlyBSD.  The setting can
2800	  be configured in unbound.conf to override the default.
2801	- iana port update.
2802
28032 October 2018: Wouter
2804	- updated contrib/fastrpz.patch to apply for this version
2805	- dnscrypt.c removed sizeof to get array bounds.
2806	- Fix testlock code to set noreturn on error routine.
2807	- Remove unused variable from contrib fastrpz/rpz.c and
2808	  remove unused diagnostic pragmas that themselves generate warnings
2809	- clang analyze test is used only when assertions are enabled.
2810
28111 October 2018: Wouter
2812	- tag for release 1.8.1rc1.  Became release 1.8.1 on 8 oct, with
2813	  fastrpz.patch fix included.  Trunk has 1.8.2 in development.
2814
281527 September 2018: Wouter
2816	- Fix #4188: IPv6 forwarders without ipv6 result in SERVFAIL, fixes
2817	  qname minimisation with a forwarder when connectivity has issues
2818	  from rejecting responses.
2819
282025 September 2018: Wouter
2821	- Perform TLS SNI indication of the host that is being contacted
2822	  for DNS over TLS service.  It sets the configured tls auth name.
2823	  This is useful for hosts that apart from the DNS over TLS services
2824	  also provide other (web) services.
2825	- Fix #4149: Add SSL cleanup for tcp timeout.
2826
282717 September 2018: Wouter
2828	- Fix compile on Mac for unbound, provide explicit_bzero when libc
2829	  does not have it.
2830	- Fix unbound for openssl in FIPS mode, it uses the digests with
2831	  the EVP call contexts.
2832	- Fix that with harden-below-nxdomain and qname minisation enabled
2833	  some iterator states for nonresponsive domains can get into a
2834	  state where they waited for an empty list.
2835	- Stop UDP to TCP failover after timeouts that causes the ping count
2836	  to be reset by the TCP time measurement (that exists for TLS),
2837	  because that causes the UDP part to not be measured as timeout.
2838	- Fix #4156: Fix systemd service manager state change notification.
2839
284013 September 2018: Wouter
2841	- Fix seed for random backup code to use explicit zero when wiped.
2842	- exit log routine is annotated as noreturn function.
2843	- free memory leaks in config strlist and str2list insert functions.
2844	- do not move unused argv variable after getopt.
2845	- Remove unused if clause in testcode.
2846	- in testcode, free async ids, initialise array, and check for null
2847	  pointer during test of the test.  And use exit for return to note
2848	  irregular program stop.
2849	- Free memory leak in config strlist append.
2850	- make sure nsec3 comparison salt is initialized.
2851	- unit test has clang analysis.
2852	- remove unused variable assignment from iterator scrub routine.
2853	- check for null in delegation point during iterator refetch
2854	  in forward zone.
2855	- neater pointer cast in libunbound context quit routine.
2856	- initialize statistics totals for printout.
2857	- in authzone check that node exists before adding rrset.
2858	- in unbound-anchor, use readwrite memory BIO.
2859	- assertion in autotrust that packed rrset is formed correctly.
2860	- Fix memory leak when message parse fails partway through copy.
2861	- remove unused udpsize assignment in message encode.
2862	- nicer bio free code in unbound-anchor.
2863	- annotate exit functions with noreturn in unbound-control.
2864
286511 September 2018: Wouter
2866	- Fixed unused return value warnings in contrib/fastrpz.patch for
2867	  asprintf.
2868	- Fix to squelch respip warning in unit test, it is printed at
2869	  higher verbosity settings.
2870	- Fix spelling errors.
2871	- Fix initialisation in remote.c
2872
287310 September 2018: Wouter
2874	- 1.8.1 in svn trunk. (changes from 4,5,.. sep apply).
2875	- iana port update.
2876
28775 September 2018: Wouter
2878	- Fix spelling error in header, from getdns commit by Andreas Gelmini.
2879
28804 September 2018: Ralph
2881	- More explicitly mention the type of ratelimit when applying
2882	  ip-ratelimit.
2883
28844 September 2018: Wouter
2885	- Tag for 1.8.0rc1 release, became 1.8.0 release on 10 Sep 2018.
2886
288731 August 2018: Wouter
2888	- Disable minimal-responses in subnet unit tests.
2889
289030 August 2018: Wouter
2891	- Fix that a local-zone with a local-zone-type that is transparent
2892	  in a view with view-first, makes queries check for answers from the
2893	  local-zones defined outside of views.
2894
289528 August 2018: Ralph
2896	- Disable minimal-responses in ipsecmod unit tests.
2897	- Added serve-expired-ttl and serve-expired-ttl-reset options.
2898
289927 August 2018: Wouter
2900	- Set defaults to yes for a number of options to increase speed and
2901	  resilience of the server.  The so-reuseport, harden-below-nxdomain,
2902	  and minimal-responses options are enabled by default.  They used
2903	  to be disabled by default, waiting to make sure they worked.  They
2904	  are enabled by default now, and can be disabled explicitly by
2905	  setting them to "no" in the unbound.conf config file.  The reuseport
2906	  and minimal options increases speed of the server, and should be
2907	  otherwise harmless.  The harden-below-nxdomain option works well
2908	  together with the recently default enabled qname minimisation, this
2909	  causes more fetches to use information from the cache.
2910	- next release is called 1.8.0.
2911	- Fix lintflags for lint on FreeBSD.
2912
291322 August 2018: George
2914	- #4140: Expose repinfo (comm_reply) to the inplace_callbacks. This
2915	  gives access to reply information for the client's communication
2916	  point when the callback is called before the mesh state (modules).
2917	  Changes to C and Python's inplace_callback signatures were also
2918	  necessary.
2919
292021 August 2018: Wouter
2921	- log-local-actions: yes option for unbound.conf that logs all the
2922	  local zone actions, a patch from Saksham Manchanda (Secure64).
2923	- #4146: num.query.subnet and num.query.subnet_cache counters.
2924	- Fix only misc failure from log-servfail when val-log-level is not
2925	  enabled.
2926
292717 August 2018: Ralph
2928	- Fix classification for QTYPE=CNAME queries when QNAME minimisation is
2929 	  enabled.
2930
293117 August 2018: Wouter
2932	- Set libunbound to increase current, because the libunbound change
2933	  to the event callback function signature.  That needs programs,
2934	  that use it, to recompile against the new header definition.
2935	- print servfail info to log as error.
2936	- added more servfail printout statements, to the iterator.
2937	- log-servfail: yes prints log lines that say why queries are
2938	  returning SERVFAIL to clients.
2939
294016 August 2018: Wouter
2941	- Fix warning on compile without threads.
2942	- Fix contrib/fastrpz.patch.
2943
294415 August 2018: Wouter
2945	- Fix segfault in auth-zone read and reorder of RRSIGs.
2946
294714 August 2018: Wouter
2948	- Fix that printout of error for cycle targets is a verbosity 4
2949	  printout and does not wrongly print it is a memory error.
2950	- Upgraded crosscompile script to include libunbound DLL in the
2951	  zipfile.
2952
295310 August 2018: Wouter
2954	- Fix #4144: dns64 module caches wrong (negative) information.
2955
29569 August 2018: Wouter
2957	- unbound-checkconf checks if modules exist and prints if they are
2958	  not compiled in the name of the wrong module.
2959	- document --enable-subnet in doc/README.
2960	- Patch for stub-no-cache and forward-no-cache options that disable
2961	  caching for the contents of that stub or forward, for when you
2962	  want immediate changes visible, from Bjoern A. Zeeb.
2963
29647 August 2018: Ralph
2965	- Make capsforid fallback QNAME minimisation aware.
2966
29677 August 2018: Wouter
2968	- Fix #4142: unbound.service.in: improvements and fixes.
2969	  Add unit dependency ordering (based on systemd-resolved).
2970	  Add 'CAP_SYS_RESOURCE' to 'CapabilityBoundingSet' (fixes warnings
2971	  about missing privileges during startup). Add 'AF_INET6' to
2972	  'RestrictAddressFamilies' (without it IPV6 can't work). From
2973	  Guido Shanahan.
2974	- Patch to implement tcp-connection-limit from Jim Hague (Sinodun).
2975	  This limits the number of simultaneous TCP client connections
2976	  from a nominated netblock.
2977	- make depend, yacc, lex, doc, headers.  And log the limit exceeded
2978	  message only on high verbosity, so as to not spam the logs when
2979	  it is busy.
2980
29816 August 2018: Wouter
2982	- Fix for #4136: Fix to unconditionally call destroy in daemon.c.
2983
29843 August 2018: George
2985	- Expose if a query (or a subquery) was ratelimited (not src IP
2986	  ratelimiting) to libunbound under 'ub_result.was_ratelimited'.
2987	  This also introduces a change to 'ub_event_callback_type' in
2988	  libunbound/unbound-event.h.
2989	- Tidy pylib tests.
2990
29913 August 2018: Wouter
2992	- Revert previous change for #4136: because it introduces build
2993	  problems.
2994	- New fix for #4136: This one ignores lex without without
2995	  yylex_destroy.
2996
29971 August 2018: Wouter
2998	- Fix to remove systemd sockaddr function check, that is not
2999	  always present.  Make socket activation more lenient.  But not
3000	  different when socket activation is not used.
3001	- iana port list update.
3002
300331 July 2018: Wouter
3004	- Patches from Jim Hague (Sinodun) for EDNS KeepAlive.
3005	- Sort out test runs when the build directory isn't the project
3006	  root directory.
3007	- Add config tcp-idle-timeout (default 30s). This applies to
3008	  client connections only; the timeout on TCP connections upstream
3009	  is unaffected.
3010	- Error if EDNS Keepalive received over UDP.
3011	- Add edns-tcp-keepalive and edns-tcp-keepalive timeout options
3012	  and implement option in client responses.
3013	- Correct and expand manual page entries for keepalive and idle timeout.
3014	- Implement progressive backoff of TCP idle/keepalive timeout.
3015	- Fix 'make depend' to work when build dir is not project root.
3016	- Add delay parameter to streamtcp, -d secs.
3017	  To be used when testing idle timeout.
3018	- From Wouter: make depend, the dependencies in the patches did not
3019	  apply cleanly.  Also remade yacc and lex.
3020	- Fix mesh.c incompatible pointer pass.
3021	- Please doxygen so it passes.
3022	- Fix #4139: Fix unbound-host leaks memory on ANY.
3023
302430 July 2018: Wouter
3025	- Fix #4136: insufficiency from mismatch of FLEX capability between
3026	  released tarball and build host.
3027
302827 July 2018: Wouter
3029	- Fix man page, say that chroot is enabled by default.
3030
303126 July 2018: Wouter
3032	- Fix #4135: 64-bit Windows Installer Creates Entries Under The
3033	  Wrong Registry Key, reported by Brian White.
3034
303523 July 2018: Wouter
3036	- Fix use-systemd readiness signalling, only when use-systemd is yes
3037	  and not in signal handler.
3038
303920 July 2018: Wouter
3040	- Fix #4130: print text describing -dd and unbound-checkconf on
3041	  config file read error at startup, the errors may have been moved
3042	  away by the startup process.
3043	- Fix #4131: for solaris, error YY_CURRENT_BUFFER undeclared.
3044
304519 July 2018: Wouter
3046	- Fix #4129 unbound-control error message with wrong cert permissions
3047	  is too cryptic.
3048
304917 July 2018: Wouter
3050	- Fix #4127 unbound -h does not list -p help.
3051	- Print error if SSL name verification configured but not available
3052	  in the ssl library.
3053	- Fix that ratelimit and ip-ratelimit are applied after reload of
3054	  changed config file.
3055	- Resize ratelimit and ip-ratelimit caches if changed on reload.
3056
305716 July 2018: Wouter
3058	- Fix qname minimisation NXDOMAIN validation lookup failures causing
3059	  error_supers assertion fails.
3060	- Squelch can't bind socket errors with Permission denied unless
3061	  verbosity is 4 or higher, for UDP outgoing sockets.
3062
306312 July 2018: Wouter
3064	- Fix to improve systemd socket activation code file descriptor
3065	  assignment.
3066	- Fix for 4126 that the #define for UNKNOWN_SERVER_NICENESS can be more
3067	  easily changed to adjust default rtt assumptions.
3068
306910 July 2018: Wouter
3070	- Note in documentation that the cert name match code needs
3071	  OpenSSL 1.1.0 or later to be enabled.
3072
30736 July 2018: Wouter
3074	- Fix documentation ambiguity for tls-win-cert in tls-upstream and
3075	  forward-tls-upstream docs.
3076	- iana port update.
3077	- Note RFC8162 support.  SMIMEA record type can be read in by the
3078	  zone record parser.
3079	- Fix round robin for failed addresses with prefer-ip6: yes
3080
30814 July 2018: Wouter
3082	- Fix #4112: Fix that unbound-anchor -f /etc/resolv.conf will not pass
3083	  if DNSSEC is not enabled.  New option -R allows fallback from
3084	  resolv.conf to direct queries.
3085
30863 July 2018: Wouter
3087	- Better documentation for unblock-lan-zones and insecure-lan-zones
3088	  config statements.
3089	- Fix permission denied printed for auth zone probe random port nrs.
3090
30912 July 2018: Wouter
3092	- Fix checking for libhiredis printout in configure output.
3093	- Fix typo on man page in ip-address description.
3094	- Update libunbound/python/examples/dnssec_test.py example code to
3095	  also set the 20326 trust anchor for the root in the example code.
3096
309729 June 2018: Wouter
3098	- dns64-ignore-aaaa: config option to list domain names for which the
3099	  existing AAAA is ignored and dns64 processing is used on the A
3100	  record.
3101
310228 June 2018: Wouter
3103	- num.queries.tls counter for queries over TLS.
3104	- log port number with err_addr logs.
3105
310627 June 2018: Wouter
3107	- #4109: Fix that package config depends on python unconditionally.
3108	- Patch, do not export python from pkg-config, from Petr Menšík.
3109
311026 June 2018: Wouter
3111	- Partial fix for permission denied on IPv6 address on FreeBSD.
3112	- Fix that auth-zone master reply with current SOA serial does not
3113	  stop scan of masters for an updated zone.
3114	- Fix that auth-zone does not start the wait timer without checking
3115	  if the wait timer has already been started.
3116
311721 June 2018: Wouter
3118	- #4108: systemd reload hang fix.
3119	- Fix usage printout for unbound-host, hostname has to be last
3120	  argument on BSDs and Windows.
3121
312219 June 2018: Wouter
3123	- Fix for unbound-control on Windows and set TCP socket parameters
3124	  more closely.
3125	  This fix is part of 1.7.3.
3126	- Windows example service.conf edited with more windows specific
3127	  configuration.
3128	- Fix windows unbound-control no cert bad file descriptor error.
3129	  This fix is part of 1.7.3.
3130
313118 June 2018: Wouter
3132	- Fix that control-use-cert: no works for 127.0.0.1 to disable certs.
3133	  This fix is part of 1.7.3rc2.
3134	- Fix unbound-checkconf for control-use-cert.
3135	  This fix is part of 1.7.3.
3136
313715 June 2018: Wouter
3138	- tag for 1.7.3rc1.
3139	- trunk has 1.7.4.
3140	- unbound-control auth_zone_reload _zone_ option rereads the zonefile.
3141	- unbound-control auth_zone_transfer _zone_ option starts the probe
3142	  sequence for a master to transfer the zone from and transfers when
3143	  a new zone version is available.
3144
314514 June 2018: Wouter
3146	- #4103: Fix that auth-zone does not insist on SOA record first in
3147	  file for url downloads.
3148	- Fix that first control-interface determines if TLS is used.  Warn
3149	  when IP address interfaces are used without TLS.
3150	- Fix nettle compile.
3151
315212 June 2018: Ralph
3153	- Don't count CNAME response types received during qname minimisation as
3154	  query restart.
3155
315612 June 2018: Wouter
3157	- #4102 for NSD, but for Unbound.  Named unix pipes do not use
3158	  certificate and key files, access can be restricted with file and
3159	  directory permissions.  The option control-use-cert is no longer
3160	  used, and ignored if found in unbound.conf.
3161	- Rename tls-additional-ports to tls-additional-port, because every
3162	  line adds one port.
3163	- Fix buffer size warning in unit test.
3164	- remade dependencies in the Makefile.
3165
31666 June 2018: Wouter
3167	- Patch to fix openwrt for mac os build darwin detection in configure.
3168
31695 June 2018: Wouter
3170	- Fix crash if ratelimit taken into use with unbound-control
3171	  instead of with unbound.conf.
3172
31734 June 2018: Wouter
3174	- Fix deadlock caused by incoming notify for auth-zone.
3175	- tag for 1.7.2rc1, became 1.7.2 release on 11 June 2018,
3176	  trunk is 1.7.3 in development from this point.
3177	- #4100: Fix stub reprime when it becomes useless.
3178
31791 June 2018: Wouter
3180	- Rename additional-tls-port to tls-additional-ports.
3181	  The older name is accepted for backwards compatibility.
3182
318330 May 2018: Wouter
3184	- Patch from Syzdek: Add ability to ignore RD bit and treat all
3185	  requests as if the RD bit is set.
3186
318729 May 2018: Wouter
3188	- in compat/arc4random call getentropy_urandom when getentropy fails
3189	  with ENOSYS.
3190	- Fix that fallback for windows port.
3191
319228 May 2018: Wouter
3193	- Fix windows tcp and tls spin on events.
3194	- Add routine from getdns to add windows cert store to the SSL_CTX.
3195	- tls-win-cert option that adds the system certificate store for
3196	  authenticating DNS-over-TLS connections.  It can be used instead
3197	  of the tls-cert-bundle option, or with it to add certificates.
3198
319925 May 2018: Wouter
3200	- For TCP and TLS connections that don't establish, perform address
3201	  update in infra cache, so future selections can exclude them.
3202	- Fix that tcp sticky events are removed for closed fd on windows.
3203	- Fix close events for tcp only.
3204
320524 May 2018: Wouter
3206	- Fix that libunbound can do DNS-over-TLS, when configured.
3207	- Fix that windows unbound service can use DNS-over-TLS.
3208	- unbound-host initializes ssl (for potential DNS-over-TLS usage
3209	  inside libunbound), when ssl upstream or a cert-bundle is configured.
3210
321123 May 2018: Wouter
3212	- Use accept4 to speed up incoming TCP (and TLS) connections,
3213	  available on Linux, FreeBSD and OpenBSD.
3214
321517 May 2018: Ralph
3216	- Qname minimisation default changed to yes.
3217
321815 May 2018: Wouter
3219	- Fix low-rtt-pct to low-rtt-permil, as it is parts in one thousand.
3220
322111 May 2018: Wouter
3222	- Fix contrib/libunbound.pc for libssl libcrypto references,
3223	  from https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=226914
3224
32257 May 2018: Wouter
3226	- Fix windows to not have sticky TLS events for TCP.
3227	- Fix read of DNS over TLS length and data in one read call.
3228	- Fix mesh state assertion failure due to callback removal.
3229
32303 May 2018: Wouter
3231	- Fix that configure --with-libhiredis also turns on cachedb.
3232	- Fix gcc 8 buffer warning in testcode.
3233	- Fix function type cast warning in libunbound context callback type.
3234
32352 May 2018: Wouter
3236	- Fix fail to reject dead peers in forward-zone, with ssl-upstream.
3237
32381 May 2018: Wouter
3239	- Fix that unbound-control reload frees the rrset keys and returns
3240	  the memory pages to the system.
3241
324230 April 2018: Wouter
3243	- Fix spelling error in man page and note defaults as no instead of
3244	  off.
3245
324626 April 2018: Wouter
3247	- Fix for crash in daemon_cleanup with dnstap during reload,
3248	  from Saksham Manchanda.
3249	- Also that for dnscrypt.
3250	- tag for 1.7.1rc1 release.  Became 1.7.1 release on 3 May, trunk
3251	  is from here 1.7.2 in development.
3252
325325 April 2018: Ralph
3254	- Fix memory leak when caching wildcard records for aggressive NSEC use
3255
325624 April 2018: Wouter
3257	- Fix contrib/fastrpz.patch for this release.
3258	- Fix auth https for libev.
3259
326024 April 2018: Ralph
3261	- Added root-key-sentinel support
3262
326323 April 2018: Wouter
3264	- makedist uses bz2 for expat code, instead of tar.gz.
3265	- Fix #4092: libunbound: use-caps-for-id lacks colon in
3266	  config_set_option.
3267	- auth zone http download stores exact copy of downloaded file,
3268	  including comments in the file.
3269	- Fix sldns parse failure for CDS alternate delete syntax empty hex.
3270	- Attempt for auth zone fix; add of callback in mesh gets from
3271	  callback does not skip callback of result.
3272	- Fix cname classification with qname minimisation enabled.
3273	- list_auth_zones unbound-control command.
3274
327520 April 2018: Wouter
3276	- man page documentation for dns-over-tls forward-addr '#' notation.
3277	- removed free from failed parse case.
3278	- Fix #4091: Fix that reload of auth-zone does not merge the zonefile
3279	  with the previous contents.
3280	- Delete auth zone when removed from config.
3281
328219 April 2018: Wouter
3283	- Can set tls authentication with forward-addr: IP#tls.auth.name
3284	  And put the public cert bundle in tls-cert-bundle: "ca-bundle.pem".
3285	  such as forward-addr: 9.9.9.9@853#dns.quad9.net or
3286	  1.1.1.1@853#cloudflare-dns.com
3287	- Fix #658: unbound using TLS in a forwarding configuration does not
3288	  verify the server's certificate (RFC 8310 support).
3289	- For addr with #authname and no @port notation, the default is 853.
3290
329118 April 2018: Wouter
3292	- Fix auth-zone retry timer to be on schedule with retry timeout,
3293	  with backoff.  Also time a refresh at the zone expiry.
3294
329517 April 2018: Wouter
3296	- auth zone notify work.
3297	- allow-notify: config statement for auth-zones.
3298	- unit test for allow-notify
3299
330016 April 2018: Wouter
3301	- Fix auth zone target lookup iterator.
3302	- auth zone notify with prefix
3303	- auth zone notify work.
3304
330513 April 2018: Wouter
3306	- Fix for max include depth for authzones.
3307	- Fix memory free on fail for $INCLUDE in authzone.
3308	- Fix that an internal error to look up the wrong rr type for
3309	  auth zone gets stopped, before trying to send there.
3310	- auth zone notify work.
3311
331210 April 2018: Ralph
3313	- num.query.aggressive.NOERROR and num.query.aggressive.NXDOMAIN
3314	  statistics counters.
3315
331610 April 2018: Wouter
3317	- documentation for low-rtt and low-rtt-pct.
3318	- auth zone notify work.
3319
33209 April 2018: Wouter
3321	- Fix that flush_zone sets prefetch ttl expired, so that with
3322	  serve-expired enabled it'll start prefetching those entries.
3323	- num.query.authzone.up and num.query.authzone.down statistics counters.
3324	- Fix downstream auth zone, only fallback when auth zone fails to
3325	  answer and fallback is enabled.
3326	- Accept both option names with and without colon for get_option
3327	  and set_option.
3328	- low-rtt and low-rtt-pct in unbound.conf enable the server selection
3329	  of fast servers for some percentage of the time.
3330
33315 April 2018: Wouter
3332	- Combine write of tcp length and tcp query for dns over tls.
3333	- nitpick fixes in example.conf.
3334	- Fix above stub queries for type NS and useless delegation point.
3335	- Fix unbound-control over pipe with openssl 1.1.1, the TLSv1.3
3336	  tls_choose_sigalg routine does not allow the ciphers for the pipe,
3337	  so use TLSv1.2.
3338	- ED448 support.
3339
33403 April 2018: Wouter
3341	- Fix #4043: make test fails due to v6 presentation issue in macOS.
3342	- Fix unable to resolve after new WLAN connection, due to auth-zone
3343	  failing with a forwarder set.  Now, auth-zone is only used for
3344	  answers (not referrals) when a forwarder is set.
3345
334629 March 2018: Ralph
3347	- Check "result" in dup_all(), by Florian Obser.
3348
334923 March 2018: Ralph
3350	- Fix unbound-control get_option aggressive-nsec
3351
335221 March 2018: Ralph
3353	- Do not use cached NSEC records to generate negative answers for
3354	  domains under DNSSEC Negative Trust Anchors.
3355
335619 March 2018: Wouter
3357	- iana port update.
3358
335916 March 2018: Wouter
3360	- corrected a minor typo in the changelog.
3361	- move htobe64/be64toh portability code to cachedb.c.
3362
336315 March 2018: Wouter
3364	- Add --with-libhiredis, unbound support for a new cachedb backend
3365	  that uses a Redis server as the storage.  This implementation
3366	  depends on the hiredis client library (https://redislabs.com/lp/hiredis/).
3367	  And unbound should be built with both --enable-cachedb and
3368	  --with-libhiredis[=PATH] (where $PATH/include/hiredis/hiredis.h
3369	  should exist).  Patch from Jinmei Tatuya (Infoblox).
3370	- Fix #3817: core dump happens in libunbound delete, when queued
3371	  servfail hits deleted message queue.
3372	- Create additional tls service interfaces by opening them on other
3373	  portnumbers and listing the portnumbers as additional-tls-port: nr.
3374
337513 March 2018: Wouter
3376	- Fix typo in documentation.
3377	- Fix #3736: Fix 0 TTL domains stuck on SERVFAIL unless manually
3378	  flushed with serve-expired on.
3379
338012 March 2018: Wouter
3381	- Added documentation for aggressive-nsec: yes.
3382	- tag 1.7.0rc3.  That became the 1.7.0 release on 15 Mar, trunk
3383	  now has 1.7.1 in development.
3384	- Fix #3727: Protocol name is TLS, options have been renamed but
3385	  documentation is not consistent.
3386	- Check IXFR start serial.
3387
33889 March 2018: Wouter
3389	- Fix #3598: Fix swig build issue on rhel6 based system.
3390	  configure --disable-swig-version-check stops the swig version check.
3391
33928 March 2018: Wouter
3393	- tag 1.7.0rc2.
3394
33957 March 2018: Wouter
3396	- Fixed contrib/fastrpz.patch, even though this already applied
3397	  cleanly for me, now also for others.
3398	- patch to log creates keytag queries, from A. Schulze.
3399	- patch suggested by Debian lintian: allow to -> allow one to, from
3400	  A. Schulze.
3401	- Attempt to remove warning about trailing whitespace.
3402
34036 March 2018: Wouter
3404	- Reverted fix for #3512, this may not be the best way forward;
3405	  although it could be changed at a later time, to stay similar to
3406	  other implementations.
3407	- svn trunk contains 1.7.0, this is the number for the next release.
3408	- Fix for windows compile.
3409	- tag 1.7.0rc1.
3410
34115 March 2018: Wouter
3412	- Fix to check define of DSA for when openssl is without deprecated.
3413	- iana port update.
3414	- Fix #3582: Squelch address already in use log when reuseaddr option
3415	  causes same port to be used twice for tcp connections.
3416
341727 February 2018: Wouter
3418	- Fixup contrib/fastrpz.patch so that it applies.
3419	- Fix compile without threads, and remove unused variable.
3420	- Fix compile with staticexe and python module.
3421	- Fix nettle compile.
3422
342322 February 2018: Ralph
3424	- Save wildcard RRset from answer with original owner for use in
3425 	  aggressive NSEC.
3426
342721 February 2018: Wouter
3428	- Fix #3512: unbound incorrectly reports SERVFAIL for CAA query
3429	  when there is a CNAME loop.
3430	- Fix validation for CNAME loops.  When it detects a cname loop,
3431	  by finding the cname, cname in the existing list, it returns
3432	  the partial result with the validation result up to then.
3433	- more robust cachedump rrset routine.
3434
343519 February 2018: Wouter
3436	- Fix #3505: Documentation for default local zones references
3437	  wrong RFC.
3438	- Fix #3494: local-zone noview can be used to break out of the view
3439	  to the global local zone contents, for queries for that zone.
3440	- Fix for more maintainable code in localzone.
3441
344216 February 2018: Wouter
3443	- Fixes for clang static analyzer, the missing ; in
3444	  edns-subnet/addrtree.c after the assert made clang analyzer
3445	  produce a failure to analyze it.
3446
344713 February 2018: Ralph
3448	- Aggressive NSEC tests
3449
345013 February 2018: Wouter
3451	- tls-cert-bundle option in unbound.conf enables TLS authentication.
3452	- iana port update.
3453
345412 February 2018: Wouter
3455	- Unit test for auth zone https url download.
3456
345712 February 2018: Ralph
3458	- Added tests with wildcard expanded NSEC records (CVE-2017-15105 test)
3459	- Processed aggressive NSEC code review remarks Wouter
3460
34618 February 2018: Ralph
3462	- Aggressive use of NSEC implementation. Use cached NSEC records to
3463	  generate NXDOMAIN, NODATA and positive wildcard answers.
3464
34658 February 2018: Wouter
3466	- iana port update.
3467	- auth zone url config.
3468
34695 February 2018: Wouter
3470	- Fix #3451: dnstap not building when you have a separate build dir.
3471	  And removed protoc warning, set dnstap.proto syntax to proto2.
3472	- auth-zone provides a way to configure RFC7706 from unbound.conf,
3473	  eg. with auth-zone: name: "." for-downstream: no for-upstream: yes
3474	  fallback-enabled: yes and masters or a zonefile with data.
3475
34762 February 2018: Wouter
3477	- Fix unfreed locks in log and arc4random at exit of unbound.
3478	- unit test with valgrind
3479	- Fix lock race condition in dns cache dname synthesis.
3480	- lock subnet new item before insertion to please checklocks,
3481	  no modification of critical regions outside of lock region.
3482
34831 February 2018: Wouter
3484	- fix unaligned structure making a false positive in checklock
3485	  unitialised memory.
3486
348729 January 2018: Ralph
3488	- Use NSEC with longest ce to prove wildcard absence.
3489	- Only use *.ce to prove wildcard absence, no longer names.
3490
349125 January 2018: Wouter
3492	- ltrace.conf file for libunbound in contrib.
3493
349423 January 2018: Wouter
3495	- Fix that unbound-checkconf -f flag works with auto-trust-anchor-file
3496	  for startup scripts to get the full pathname(s) of anchor file(s).
3497	- Print fatal errors about remote control setup before log init,
3498	  so that it is printed to console.
3499
350022 January 2018: Wouter
3501	- Accept tls-upstream in unbound.conf, the ssl-upstream keyword is
3502	  also recognized and means the same.  Also for tls-port,
3503	  tls-service-key, tls-service-pem, stub-tls-upstream and
3504	  forward-tls-upstream.
3505	- Fix #3397: Fix that cachedb could return a partial CNAME chain.
3506	- Fix #3397: Fix that when the cache contains an unsigned DNAME in
3507	  the middle of a cname chain, a result without the DNAME could
3508	  be returned.
3509
351019 January 2018: Wouter
3511	- tag 1.6.8 for release with CVE fix.
3512	- trunk has 1.6.9 with fix and previous commits.
3513	- patch for CVE-2017-15105: vulnerability in the processing of
3514	  wildcard synthesized NSEC records.
3515	- iana port update.
3516	- make depend: code dependencies updated in Makefile.
3517
35184 January 2018: Ralph
3519	- Copy query and correctly set flags on REFUSED answers when cache
3520	  snooping is not allowed.
3521
35223 January 2018: Ralph
3523	- Fix queries being leaked above stub when refetching glue.
3524
35252 January 2017: Wouter
3526	- Fix that DS queries with referral replies are answered straight
3527	  away, without a repeat query picking the DS from cache.
3528	  The correct reply should have been an answer, the reply is fixed
3529	  by the scrubber to have the answer in the answer section.
3530	- Remove clang optimizer disable,
3531	  Fix that expiration date checks don't fail with clang -O2.
3532
353315 December 2017: Wouter
3534	- Fix timestamp failure because of clang optimizer failure, by
3535	  disabling -O2 when the compiler --version is clang.
3536	- iana port update.
3537	- Also disable -flto for clang, to make incep-expi signature check
3538	  work.
3539
354012 December 2017: Ralph
3541	- Fix qname-minimisation documentation (A QTYPE, not NS)
3542
354312 December 2017: Wouter
3544	- authzone work, transfer connect.
3545
35467 December 2017: Ralph
3547	- Check whether --with-libunbound-only is set when using --with-nettle
3548	  or --with-nss.
3549
35504 December 2017: Wouter
3551	- Fix link failure on OmniOS.
3552
35531 December 2017: Wouter
3554	- auth zone work.
3555
355630 November 2017: Wouter
3557	- Fix #3299 - forward CNAME daisy chain is not working
3558
355914 November 2017: Wouter
3560	- Fix #2882: Unbound behaviour changes (wrong) when domain-insecure is
3561	  set for stub zone.  It no longer searches for DNSSEC information.
3562	- auth xfer work on probe timer and lookup.
3563
356413 November 2017: Wouter
3565	- Fix #2801: Install libunbound.pc.
3566	- Fix qname minimisation to send AAAA queries at zonecut like type A.
3567	- reverted AAAA change.
3568
35697 November 2017: Wouter
3570	- Fix #2492: Documentation libunbound.
3571
35723 November 2017: Wouter
3573	- Fix #2362: TLS1.3/openssl-1.1.1 not working.
3574	- Fix #2034 - Autoconf and -flto.
3575	- Fix #2141 - for libsodium detect lack of entropy in chroot, print
3576	  a message and exit.
3577
35782 November 2017: Wouter
3579	- Fix #1913: ub_ctx_config is under circumstances thread-safe.
3580	- make ip-transparent option work on OpenBSD.
3581
358231 October 2017: Wouter
3583	- Document that errno is left informative on libunbound config read
3584	  fail.
3585	- lexer output.
3586	- iana port update.
3587
358825 October 2017: Ralph
3589	- Fixed libunbound manual typo.
3590	- Fix #1949: [dnscrypt] make provider name mismatch more obvious.
3591	- Fix #2031: Double included headers
3592
359324 October 2017: Ralph
3594	- Update B root ipv4 address.
3595
359619 October 2017: Wouter
3597	- authzone work, probe timer setup.
3598
359918 October 2017: Wouter
3600	- lint for recent authzone commit.
3601
360217 October 2017: Wouter
3603	- Fix #1749: With harden-referral-path: performance drops, due to
3604	  circular dependency in NS and DS lookups.
3605	- [dnscrypt] prevent dnscrypt-secret-key, dnscrypt-provider-cert
3606	  duplicates
3607	- [dnscrypt] introduce dnscrypt-provider-cert-rotated option,
3608	  from Manu Bretelle.
3609	This option allows handling multiple cert/key pairs while only
3610	distributing some of them.
3611	In order to reliably match a client magic with a given key without
3612	strong assumption as to how those were generated, we need both key and
3613	cert. Likewise, in order to know which ES version should be used.
3614	On the other hand, when rotating a cert, it can be desirable to only
3615	serve the new cert but still be able to handle clients that are still
3616	using the old certs's public key.
3617	The `dnscrypt-provider-cert-rotated` allow to instruct unbound to not
3618	publish the cert as part of the DNS's provider_name's TXT answer.
3619	- Better documentation for cache-max-negative-ttl.
3620	- Work on local root zone code.
3621
362210 October 2017: Wouter
3623	- tag 1.6.7
3624	- trunk has version 1.6.8.
3625
36266 October 2017: Wouter
3627	- Fix spelling in unbound-control man page.
3628
36295 October 2017: Wouter
3630	- Fix trust-anchor-signaling works in libunbound.
3631	- Fix some more crpls in testdata for different signaling default.
3632	- tag 1.6.7rc1
3633
36345 October 2017: Ralph
3635	- Set trust-anchor-signaling default to yes
3636	- Use RCODE from A query on DNS64 synthesized answer.
3637
36382 October 2017: Wouter
3639	- Fix param unused warning for windows exportsymbol compile.
3640
364125 September 2017: Ralph
3642	- Fix #1450: Generate again patch contrib/aaaa-filter-iterator.patch
3643	   (by Danilo G. Baio).
3644
364521 September 2017: Ralph
3646	- Log name of looping module
3647
364819 September 2017: Wouter
3649	- use a cachedb answer even if it's "expired" when serve-expired is yes
3650	  (patch from Jinmei Tatuya).
3651	- trigger refetching of the answer in that case (this will bypass
3652	  cachedb lookup)
3653	- allow storing a 0-TTL answer from cachedb in the in-memory message
3654	  cache when serve-expired is yes
3655	- Fix DNSCACHE_STORE_ZEROTTL to be bigger than 0xffff.
3656
365718 September 2017: Ralph
3658	- Fix #1400: allowing use of global cache on ECS-forwarding unless
3659	  always-forward.
3660
366118 September 2017: Wouter
3662	- tag 1.6.6 (is 1.6.6rc2)
3663	- Fix that looping modules always stop the query, and don't pass
3664	  control.
3665	- Fix #1435: Please allow UDP to be disabled separately upstream and
3666	  downstream.
3667	- Fix #1440: [dnscrypt] client nonce cache.
3668
366915 September 2017: Wouter
3670	- Fix unbound-host to report error for DNSSEC state of failed lookups.
3671	- Spelling fixes, from Josh Soref.
3672
367313 September 2017: Wouter
3674	- tag 1.6.6rc2, became 1.6.6 on 18 sep.  trunk 1.6.7 in development.
3675
367612 September 2017: Wouter
3677	- Add dns64 for client-subnet in unbound-checkconf.
3678
36794 September 2017: Ralph
3680	- Fix #1412: QNAME minimisation strict mode not honored
3681	- Fix #1434: Fix windows openssl 1.1.0 linking.
3682
36834 September 2017: Wouter
3684	- tag 1.6.6rc1
3685	- makedist fix for windows binaries, with openssl 1.1.0 windres fix,
3686	  and expat 2.2.4 install target fix.
3687
36881 September 2017: Wouter
3689	- Recommend 1472 buffer size in unbound.conf
3690
369131 August 2017: Wouter
3692	- Fix #1424: cachedb:testframe is not thread safe.
3693	- For #1417: escape ; in dnscrypt tests.
3694	- but reverted that, tests fails with that escape.
3695	- Fix #1417: [dnscrypt] shared secret cache counters, and works when
3696	  dnscrypt is not enabled.  And cache size configuration option.
3697	- make depend
3698	- Fix #1418: [ip ratelimit] initialize slabhash using
3699	  ip-ratelimit-slabs.
3700
370130 August 2017: Wouter
3702	- updated contrib/fastrpz.patch to apply with configparser changes.
3703	- Fix 1416: qname-minimisation breaks TLSA lookups with CNAMEs.
3704
370529 August 2017: Wouter
3706	- Fix #1414: fix segfault on parse failure and log_replies.
3707	- zero qinfo in handle_request, this zeroes local_alias and also the
3708	  qname member.
3709	- new keys and certs for dnscrypt tests.
3710	- fixup WKS test on buildhost without servicebyname.
3711
371228 August 2017: Wouter
3713	- Fix #1415: patch to free dnscrypt environment on reload.
3714	- iana portlist update
3715	- Fix #1415: [dnscrypt] shared secret cache, patch from
3716	  Manu Bretelle.
3717	- Small fixes for the shared secret cache patch.
3718	- Fix WKS records on kvm autobuild host, with default protobyname
3719	  entries for udp and tcp.
3720
372123 August 2017: Wouter
3722	- Fix #1407: Add ECS options check to unbound-checkconf.
3723	- make depend
3724	- Fix to reclaim tcp handler when it is closed due to dnscrypt buffer
3725	  allocation failure.
3726
372722 August 2017: Wouter
3728	- Fix install of trust anchor when two anchors are present, makes both
3729	  valid. Checks hash of DS but not signature of new key. This fixes
3730	  the root.key file if created when unbound is installed between
3731	  sep11 and oct11 2017.
3732	- tag 1.6.5 with pointrelease 1.6.5 (1.6.4 plus 5011 fix).
3733	- trunk version 1.6.6 in development.
3734	- Fix issue on macOX 10.10 where TCP fast open is detected but not
3735	  implemented causing TCP to fail. The fix allows fallback to regular
3736	  TCP in this case and is also more robust for cases where connectx()
3737	  fails for some reason.
3738	- Fix #1402: squelch invalid argument error for fd_set_block on windows.
3739
374010 August 2017: Wouter
3741	- Patch to show DNSCrypt status in help output, from Carsten
3742	  Strotmann.
3743
37448 August 2017: Wouter
3745	- Fix #1398: make cachedb secret configurable.
3746	- Remove spaces from Makefile.
3747
37487 August 2017: Wouter
3749	- Fix #1397: Recursive DS lookups for AS112 zones names should recurse.
3750
37513 August 2017: Ralph
3752	- Remove unused iter_env member (ip6arpa_dname)
3753	- Do not reset rrset.bogus stats when called using stats_noreset.
3754	- Added stats for queries that have been ratelimited by domain
3755	  recursion.
3756	- Do not add rrset_bogus and query ratelimiting stats per thread, these
3757	  module stats are global.
3758
37593 August 2017: Wouter
3760	- Fix #1394: mix of serve-expired and response-ip could cause a crash.
3761
376224 July 2017: Wouter
3763	- upgrade aclocal(pkg.m4 0.29.1), config.guess(2016-10-02),
3764	  config.sub(2016-09-05).
3765	- annotate case statement fallthrough for gcc 7.1.1.
3766	- flex output from flex 2.6.1.
3767	- snprintf of thread number does not warn about truncated string.
3768	- squelch TCP fast open error on FreeBSD when kernel has it disabled,
3769	  unless verbosity is high.
3770	- remove warning from windows compile.
3771	- Fix compile with libnettle
3772	- Fix DSA configure switch (--disable dsa) for libnettle and libnss.
3773	- Fix #1365: Add Ed25519 support using libnettle.
3774	- iana portlist update
3775
377617 July 2017: Wouter
3777	- Fix #1350: make cachedb backend configurable (from JINMEI Tatuya).
3778	- Fix #1349: allow suppression of pidfiles (from Daniel Kahn Gillmor).
3779	  With the -p option unbound does not create a pidfile.
3780
378111 July 2017: Wouter
3782	- Fix #1344: RFC6761-reserved domains: test. and invalid.
3783	- Redirect all localhost names to localhost address for RFC6761.
3784
37856 July 2017: Wouter
3786	- Fix tests to use .tdir (from Manu Bretelle) instead of .tpkg.
3787	- Fix svn hooks for tdir (selected if testcode/mini_tdir.sh exists)..
3788
37894 July 2017: Wouter
3790	- Fix 1332: Bump verbosity of failed chown'ing of the control socket.
3791
37923 July 2017: Wouter
3793	- Fix for unbound-checkconf, check ipsecmod-hook if ipsecmod is turned
3794	  on.
3795	- Fix #1331: libunbound segfault in threaded mode when context is
3796	  deleted.
3797	- Fix pythonmod link line option flag.
3798	- Fix openssl 1.1.0 load of ssl error strings from ssl init.
3799
380029 June 2017: Wouter
3801	- Fix python example0 return module wait instead of error for pass.
3802	- iana portlist update
3803	- enhancement for hardened-tls for DNS over TLS.  Removed duplicated
3804	  security settings.
3805
380627 June 2017: Wouter
3807	- Tag 1.6.4 is created with the 1.6.4rc2 contents.
3808	- Trunk contains 1.6.5, with changes from 26, 27 june.
3809	- Remove signed unsigned warning from authzone.
3810	- Fix that infra cache host hash does not change after reconfig.
3811
381226 June 2017: Wouter
3813	- (for 1.6.5)
3814	  Better fixup of dnscrypt_cert_chacha test for different escapes.
3815	- First fix for zero b64 and hex text zone format in sldns.
3816	- unbound-control dump_infra prints port number for address if not 53.
3817
381823 June 2017: Wouter
3819	- (for 1.6.5): fixup of dnscrypt_cert_chacha test (from Manu Bretelle).
3820
382122 June 2017: Wouter
3822	- Tag 1.6.4rc2
3823
382422 June 2017: Ralph
3825	- Added fastrpz patch to contrib
3826
382721 June 2017: Wouter
3828	- Fix #1316: heap read buffer overflow in parse_edns_options.
3829
383020 June 2017: Wouter
3831	- Fix warning in pythonmod under clang compiler.
3832	- Tag 1.6.4rc1
3833	- Fix lintian typo.
3834
383516 June 2017: Ralph
3836	- Fix #1277: disable domain ratelimit by setting value to 0.
3837
383816 June 2017: Wouter
3839	- Fix #1301: memory leak in respip and tests.
3840	- Free callback in edns-subnetmod on exit and restart.
3841	- Fix memory leak in sldns_buffer_new_frm_data.
3842	- Fix memory leak in dnscrypt config read.
3843	- Fix dnscrypt chacha cert support ifdefs.
3844	- Fix dnscrypt chacha cert unit test escapes in grep.
3845	- Remove asynclook tests that cause test and purifier problems.
3846	- Fix to unlock view in view test.
3847
384815 June 2017: Wouter
3849	- Fix stub zone queries leaking to the internet for
3850	  harden-referral-path ns checks.
3851	- Fix query for refetch_glue of stub leaking to internet.
3852
385313 June 2017: Wouter
3854	- Fix #1279: Memory leak on reload when python module is enabled.
3855	- Fix #1280: Unbound fails assert when response from authoritative
3856	  contains malformed qname.  When 0x20 caps-for-id is enabled, when
3857	  assertions are not enabled the malformed qname is handled correctly.
3858	- 1.6.3 tag created, with only #1280 fix, trunk is 1.6.4 development.
3859	- More fixes in depth for buffer checks in 0x20 qname checks.
3860
386112 June 2017: Wouter
3862	- Fix #1278: Incomplete wildcard proof.
3863
38648 June 2017: Ralph
3865	- Added domain name based ECS whitelist.
3866
38678 June 2017: Wouter
3868	- Detect chacha for dnscrypt at configure time.
3869	- dnscrypt unit tests with chacha.
3870
38717 June 2017: Wouter
3872	- Fix that unbound-control can set val_clean_additional and val_permissive_mode.
3873	- Add dnscrypt XChaCha20 tests.
3874
38756 June 2017: Wouter
3876	- Add an explicit type cast for TCP FASTOPEN fix.
3877	- renumbering B-Root's IPv6 address to 2001:500:200::b.
3878	- Fix #1275: cached data in cachedb is never used.
3879	- Fix #1276: [dnscrypt] add XChaCha20-Poly1305 cipher.
3880
38811 June 2017: Ralph
3882	- Fix #1274: automatically trim chroot path from dnscrypt key/cert paths
3883	  (from Manu Bretelle).
3884
38851 June 2017: Wouter
3886	- Fix fastopen EPIPE fallthrough to perform connect.
3887
388831 May 2017: Ralph
3889	- Also use global local-zones when there is a matching view that does
3890	  not have any local-zone specified.
3891
389231 May 2017: Wouter
3893	- Fix #1273: cachedb.c doesn't compile with -Wextra.
3894	- If MSG_FASTOPEN gives EPIPE fallthrough to try normal tcp write.
3895
389630 May 2017: Ralph
3897	- Fix #1269: inconsistent use of built-in local zones with views.
3898	- Add defaults for new local-zone trees added to views using
3899	  unbound-control.
3900
390130 May 2017: Wouter
3902	- Support for openssl EVP_DigestVerify.
3903	- Support for the ED25519 algorithm with openssl (from openssl 1.1.1).
3904
390529 May 2017: Wouter
3906	- Fix assertion for low buffer size and big edns payload when worker
3907	  overrides udpsize.
3908
390926 May 2017: Ralph
3910	- Added redirect-bogus.patch to contrib directory.
3911
391226 May 2017: Wouter
3913	- Fix #1270: unitauth.c doesn't compile with higher warning level
3914	  and optimization
3915	- exec_prefix is by default equal to prefix.
3916	- printout localzone for duplicate local-zone warnings.
3917
391824 May 2017: Wouter
3919	- authzone cname chain, no rrset duplicates, wildcard doesn't change
3920	  rrsets added for cname chain.
3921
392223 May 2017: Wouter
3923	- first services/authzone check in, it compiles and reads and writes
3924	  zonefiles.
3925	- iana portlist update
3926
392722 May 2017: Wouter
3928	- Fix #1268: SIGSEGV after log_reopen.
3929
393018 May 2017: Wouter
3931	- Fix #1265 to use /bin/kill.
3932	- Fix #1267: Libunbound validator/val_secalgo.c uses obsolete APIs,
3933	  and compatibility with BoringSSL.
3934
393517 May 2017: Wouter
3936	- Fix #1265: contrib/unbound.service contains hardcoded path.
3937
393817 May 2017: George
3939	- Use qstate's region for IPSECKEY rrset (ipsecmod).
3940
394116 May 2017: George
3942	- Implemented opportunistic IPsec support module (ipsecmod).
3943	- Some whitespace fixup.
3944
394516 May 2017: Wouter
3946	- updated dependencies in the makefile.
3947	- document trust-anchor-signaling in example config file.
3948	- updated configure, dependencies and flex output.
3949	- better module memory lookup, fix of unbound-control shm names for
3950	  module memory printout of statistics.
3951	- Fix type AVC sldns rrdef.
3952
395312 May 2017: Wouter
3954	- Adjust servfail by iterator to not store in cache when serve-expired
3955	  is enabled, to avoid overwriting useful information there.
3956	- Fix queries for nameservers under a stub leaking to the internet.
3957
39589 May 2017: Ralph
3959	- Add 'c' to getopt() in testbound.
3960	- iana portlist update
3961
39628 May 2017: Wouter
3963	- Fix tcp-mss failure printout text.
3964	- Set SO_REUSEADDR on outgoing tcp connections to fix the bind before
3965	  connect limited tcp connections.  With the option tcp connections
3966	  can share the same source port (for different destinations).
3967
39682 May 2017: Ralph
3969	- Added mesh_add_sub to add detached mesh entries.
3970	- Use mesh_add_sub for key tag signaling query.
3971
39722 May 2017: Wouter
3973	- Added test for leak of stub information.
3974	- Fix sldns wire2str printout of RR type CAA tags.
3975	- Fix sldns int16_data parse.
3976	- Fix sldns parse and printout of TSIG RRs.
3977	- sldns SMIMEA and AVC definitions, same as getdns definitions.
3978
39791 May 2017: Wouter
3980	- Fix #1259: "--disable-ecdsa" argument overwritten
3981	  by "#ifdef SHA256_DIGEST_LENGTH@daemon/remote.c".
3982	- iana portlist update
3983	- Fix #1258: Windows 10 X64 unbound 1.6.2 service will not start.
3984	  and fix that 64bit getting installed in C:\Program Files (x86).
3985
398626 April 2017: Ralph
3987	- Implemented trust anchor signaling using key tag query.
3988
398926 April 2017: Wouter
3990	- Based on #1257: check parse limit before t increment in sldns RR
3991	  string parse routine.
3992
399324 April 2017: Wouter
3994	- unbound-checkconf -o allows query of dnstap config variables.
3995	  Also unbound-control get_option.  Also for dnscrypt.
3996	- trunk contains 1.6.3 version number (changes from 1.6.2 back from
3997	  when the 1.6.2rc1 tag has been created).
3998
399921 April 2017: Ralph
4000	- Fix #1254: clarify ratelimit-{for,below}-domain (from Manu Bretelle).
4001	- iana portlist update
4002
400318 April 2017: Ralph
4004	- Fix #1252: more indentation inconsistencies.
4005	- Fix #1253: unused variable in edns-subnet/addrtree.c:getbit().
4006
400713 April 2017: Ralph
4008	- Added ECS unit test (from Manu Bretelle).
4009	- ECS documentation fix (from Manu Bretelle).
4010
401113 April 2017: Wouter
4012	- Fix #1250: inconsistent indentation in services/listen_dnsport.c.
4013	- tag for 1.6.2rc1
4014	- (for 1.6.3:) unbound.h exports the shm stats structures.  They use
4015	  type long long and no ifdefs, and ub_ before the typenames.
4016
401712 April 2017: Wouter
4018	- subnet mem value is available in shm, also when not enabled,
4019	  to make the struct easier to memmap by other applications,
4020	  independent of the configuration of unbound.
4021
402212 April 2017: Ralph
4023	- Fix #1247: unbound does not shorten source prefix length when
4024	  forwarding ECS.
4025	- Properly check for allocation failure in local_data_find_tag_datas.
4026	- Fix #1249: unbound doesn't return FORMERR to bogus ECS.
4027	- Set SHM ECS memory usage to 0 when module not loaded.
4028
402911 April 2017: Ralph
4030	- Display ECS module memory usage.
4031
403210 April 2017: Wouter
4033	- harden-algo-downgrade: no also makes unbound more lenient about
4034	  digest algorithms in DS records.
4035
403610 April 2017: Ralph
4037	- Remove ECS option after REFUSED answer.
4038	- Fix small memory leak in edns_opt_copy_alloc.
4039	- Respip dereference after NULL check.
4040	- Zero initialize addrtree allocation.
4041	- Use correct identifier for SHM destroy.
4042
40437 April 2017: George
4044	- Fix pythonmod for cb changes.
4045	- Some whitespace fixup.
4046
40477 April 2017: Ralph
4048	- Unlock view in respip unit test
4049
40506 April 2017: Ralph
4051	- Generalise inplace callback (de)registration
4052	- (de)register inplace callbacks for module id
4053	- No unbound-control set_option for ECS options
4054	- Deprecated client-subnet-opcode config option
4055	- Introduced client-subnet-always-forward config option
4056	- Changed max-client-subnet-ipv6 default to 56 (as in RFC)
4057	- Removed extern ECS config options
4058	- module_restart_next now calls clear on all following modules
4059	- Also create ECS module qstate on module_event_pass event
4060	- remove malloc from inplace_cb_register
4061
40626 April 2017: Wouter
4063	- Small fixup for documentation.
4064	- iana portlist update
4065	- Fix respip for braces when locks arent used.
4066	- Fix pythonmod for cb changes.
4067
40684 April 2017: Wouter
4069	- Fix #1244: document that use of chroot requires trust anchor file to
4070	  be under chroot.
4071	- iana portlist update
4072
40733 April 2017: Ralph
4074	- Do not add current time twice to TTL before ECS cache store.
4075	- Do not touch rrset cache after ECS cache message generation.
4076	- Use LDNS_EDNS_CLIENT_SUBNET as default ECS opcode.
4077
40783 April 2017: Wouter
4079	- Fix #1217: Add metrics to unbound-control interface showing
4080	  crypted, cert request, plaintext and malformed queries (from
4081	  Manu Bretelle).
4082	- iana portlist update
4083
408427 March 2017: Wouter
4085	- Remove (now unused) event2 include from dnscrypt code.
4086
408724 March 2017: George
4088	- Fix to prevent non-referal query from being cached as referal when the
4089	  no_cache_store flag was set.
4090
409123 March 2017: Wouter
4092	- Fix #1239: configure fails to find python distutils if python
4093	  prints warning.
4094
409522 March 2017: Wouter
4096	- Fix #1238: segmentation fault when adding through the remote
4097	  interface a per-view local zone to a view with no previous
4098	  (configured) local zones.
4099	- Fix #1229: Systemd service sandboxing, options in wrong sections.
4100
410121 March 2017: Ralph
4102	- Merge EDNS Client subnet implementation from feature branch into main
4103	  branch, using new EDNS processing framework.
4104
410521 March 2017: Wouter
4106	- Fix doxygen for dnscrypt files.
4107
410820 March 2017: Wouter
4109	- #1217. DNSCrypt support, with --enable-dnscrypt, libsodium and then
4110	  enabled in the config file from Manu Bretelle.
4111	- make depend, autoconf, remove warnings about statement before var.
4112	- lru_demote and lruhash_insert_or_retrieve functions for getdns.
4113	- fixup for lruhash (whitespace and header file comment).
4114	- dnscrypt tests.
4115
411617 March 2017: Wouter
4117	- Patch for view functionality for local-data-ptr from Björn Ketelaars.
4118	- Fix #1237 - Wrong resolving in chain, for norec queries that get
4119	  SERVFAIL returned.
4120
412116 March 2017: Wouter
4122	- Fix that SHM is not inited if not enabled.
4123	- Add trustanchor.unbound CH TXT that gets a response with a number
4124	  of TXT RRs with a string like "example.com. 2345 1234" with
4125	  the trust anchors and their keytags.
4126	- Fix that looped DNAMEs do not cause unbound to spend effort.
4127	- trustanchor tags are sorted.  reusable routine to fetch taglist.
4128
412913 March 2017: Wouter
4130	- testbound understands Deckard MATCH rcode question answer commands.
4131	- Fix #1235: Fix too long DNAME expansion produces SERVFAIL instead
4132	  of YXDOMAIN + query loop, reported by Petr Spacek.
4133
413410 March 2017: Wouter
4135	- Fix #1234: shortening DNAME loop produces duplicate DNAME records
4136	  in ANSWER section.
4137
41389 March 2017: Wouter
4139	- --disable-sha1 disables SHA1 support in RRSIG, so from DNSKEY and
4140	  DS records.  NSEC3 is not disabled.
4141	- fake-sha1 test option; print warning if used.  To make unit tests.
4142	- unbound-control list local zone and data commands listed in the
4143	  help output.
4144
41458 March 2017: Wouter
4146	- make depend for build dependencies.
4147	- swig version 2.0.1 required.
4148	- fix enum conversion warnings
4149
41507 March 2017: Wouter
4151	- Fix #1230: swig version 2.0.0 is required for pythonmod, with
4152	  1.3.40 it crashes when running repeatly unbound-control reload.
4153	- Response actions based on IP address from Jinmei Tatuya (Infoblox).
4154
41556 March 2017: Wouter
4156	- Fix #1229: Systemd service sandboxing in contrib/unbound.service.
4157	- iana portlist update
4158
415928 February 2017: Ralph
4160	- Fix testpkts.c, check if DO bit is set, not only if there is an OPT
4161	  record.
4162
416328 February 2017: Wouter
4164	- For #1227: if we have sha256, set the cipher list to have no
4165	  known vulns.
4166
416727 February 2017: Wouter
4168	- Fix #1227: Fix that Unbound control allows weak ciphersuits.
4169	- Fix #1226: provide official 32bit binary for windows.
4170
417124 February 2017: Wouter
4172	- include sys/time.h for new shm code on NetBSD.
4173
417423 February 2017: Wouter
4175	- Fix doc/CNAME-basedRedirectionDesignNotes.pdf zone static to
4176	  redirect.
4177	- Patch from Luiz Fernando Softov for Stats Shared Memory.
4178	- unbound-control stats_shm command prints stats using shared memory,
4179	  which uses less cpu.
4180	- make depend, autoconf, doxygen and lint fixed up.
4181
418222 February 2017: Wouter
4183	- Fix #1224: Fix that defaults should not fall back to "Program Files
4184	  (x86) if Unbound is 64bit by default on windows.
4185
418621 February 2017: Wouter
4187	- iana portlist update
4188
418916 February 2017: Wouter
4190	- sldns updated for vfixed and buffer resize indication from getdns.
4191
419215 February 2017: Wouter
4193	- sldns has ED25519 and ED448 algorithm number and name for display.
4194
419514 February 2017: Wouter
4196	- tag 1.6.1rc3. -- which became 1.6.1 on 21feb, trunk has 1.6.2
4197
419813 February 2017: Wouter
4199	- Fix autoconf of systemd check for lack of pkg-config.
4200
420110 February 2017: Wouter
4202	- Fix pythonmod for typedef changes.
4203	- Fix dnstap for warning of set but not used.
4204	- tag 1.6.1rc2.
4205
42069 February 2017: Wouter
4207	- tag 1.6.1rc1.
4208
42098 February 2017: Wouter
4210	- Fix for type name change and fix warning on windows compile.
4211
42127 February 2017: Wouter
4213	- Include root trust anchor id 20326 in unbound-anchor.
4214
42156 February 2017: Wouter
4216	- Fix compile on solaris of the fix to use $host detect.
4217
42184 February 2017: Wouter
4219	- fix root_anchor test for updated icannbundle.pem lower certificates.
4220
422126 January 2017: Wouter
4222	- Fix 1211: Fix can't enable interface-automatic if no IPv6 with
4223	  more helpful error message.
4224
422520 January 2017: Wouter
4226	- Increase MAX_MODULE to 16.
4227
422819 January 2017: Wouter
4229	- Fix to Rename ub_callback_t to ub_callback_type, because POSIX
4230	  reserves _t typedefs.
4231	- Fix to rename internally used types from _t to _type, because _t
4232	  type names are reserved by POSIX.
4233	- iana portlist update
4234
423512 January 2017: Wouter
4236	- Fix to also block meta types 128 through to 248 with formerr.
4237	- Fix #1206: Some view-related commands are missing from 'unbound-control -h'
4238
42399 January 2017: Wouter
4240	- Fix #1202: Fix code comment that packed_rrset_data is not always
4241	  'packed'.
4242
42436 January 2017: Wouter
4244	- Fix #1201: Fix missing unlock in answer_from_cache error condition.
4245
42465 January 2017: Wouter
4247	- Fix to return formerr for queries for meta-types, to avoid
4248	  packet amplification if this meta-type is sent on to upstream.
4249	- Fix #1184: Log DNS replies. This includes the same logging
4250	  information that DNS queries and response code and response size,
4251	  patch from Larissa Feng.
4252	- Fix #1187: Source IP rate limiting, patch from Larissa Feng.
4253
42543 January 2017: Wouter
4255	- configure --enable-systemd and lets unbound use systemd sockets if
4256	  you enable use-systemd: yes in unbound.conf.
4257	  Also there are contrib/unbound.socket and contrib/unbound.service:
4258	  systemd files for unbound, install them in /usr/lib/systemd/system.
4259	  Contributed by Sami Kerola and Pavel Odintsov.
4260	- Fix reload chdir failure when also chrooted to that directory.
4261
42622 January 2017: Wouter
4263	- Fix #1194: Cross build fails when $host isn't `uname` for getentropy.
4264
426523 December 2016: Ralph
4266	- Fix #1190: Do not echo back EDNS options in local-zone error response.
4267	- iana portlist update
4268
426921 December 2016: Ralph
4270	- Fix #1188: Unresolved symbol 'fake_dsa' in libunbound.so when built
4271	  with Nettle
4272
427319 December 2016: Ralph
4274	- Fix #1191: remove comment about view deletion.
4275
427615 December 2016: Wouter
4277	- iana portlist update
4278	- 64bit is default for windows builds.
4279	- Fix inet_ntop and inet_pton warnings in windows compile.
4280
428114 December 2016: Wouter
4282	- Fix #1178: attempt to fix setup error at end, pop result values
4283	  at end of install.
4284
428513 December 2016: Wouter
4286	- Fix #1182: Fix Resource leak (socket), at startup.
4287	- Fix unbound-control and ipv6 only.
4288
42899 December 2016: Wouter
4290	- Fix #1176: stack size too small for Alpine Linux.
4291
42928 December 2016: Wouter
4293	- Fix downcast warnings from visual studio in sldns code.
4294	- tag 1.6.0rc1 which became 1.6.0 on 15 dec, and trunk is 1.6.1.
4295
42967 December 2016: Ralph
4297	- Add DSA support for OpenSSL 1.1.0
4298	- Fix remote control without cert for LibreSSL
4299
43006 December 2016: George
4301	- Added generic EDNS code for registering known EDNS option codes,
4302	  bypassing the cache response stage and uniquifying mesh states. Four EDNS
4303	  option lists were added to module_qstate (module_qstate.edns_opts_*) to
4304	  store EDNS options from/to front/back side.
4305	- Added two flags to module_qstate (no_cache_lookup, no_cache_store) that
4306	  control the modules' cache interactions.
4307	- Added code for registering inplace callback functions. The registered
4308	  functions can be called just before replying with local data or Chaos,
4309	  replying from cache, replying with SERVFAIL, replying with a resolved
4310	  query, sending a query to a nameserver. The functions can inspect the
4311	  available data and maybe change response/query related data (i.e. append
4312	  EDNS options).
4313	- Updated Python module for the above.
4314	- Updated Python documentation.
4315
43165 December 2016: Ralph
4317	- Fix #1173: differ local-zone type deny from unset
4318	  tag_actions element.
4319
43205 December 2016: Wouter
4321	- Fix #1170: document that 'inform' local-zone uses local-data.
4322
43231 December 2016: Ralph
4324	- hyphen as minus fix, by Andreas Schulze
4325
432630 November 2016: Ralph
4327	- Added local-zones and local-data bulk addition and removal
4328	  functionality in unbound-control (local_zones, local_zones_remove,
4329	  local_datas and local_datas_remove).
4330	- iana portlist update
4331
433229 November 2016: Wouter
4333	- version 1.6.0 is in the development branch.
4334	- braces in view.c around lock statements.
4335
433628 November 2016: Wouter
4337	- new install-sh.
4338
433925 November 2016: Wouter
4340	- Fix that with openssl 1.1 control-use-cert: no uses less cpu, by
4341	  using no encryption over the unix socket.
4342
434322 Novenber 2016: Ralph
4344	- Make access-control-tag-data RDATA absolute. This makes the RDATA
4345	  origin consistent between local-data and access-control-tag-data.
4346	- Fix NSEC ENT wildcard check. Matching wildcard does not have to be a
4347	  subdomain of the NSEC owner.
4348	- QNAME minimisation uses QTYPE=A, therefore always check cache for
4349	  this type in harden-below-nxdomain functionality.
4350	- Added unit test for QNAME minimisation + harden below nxdomain
4351	  synergy.
4352
435322 November 2016: Wouter
4354	- iana portlist update.
4355	- Fix unit tests for DS hash processing for fake-dsa test option.
4356	- patch from Dag-Erling Smorgrav that removes code that relies
4357	  on sbrk().
4358
435921 November 2016: Wouter
4360	- Fix #1158: reference RFC 8020 "NXDOMAIN: There Really Is Nothing
4361	  Underneath" for the harden-below-nxdomain option.
4362
436310 November 2016: Ralph
4364	- Fix #1155: test status code of unbound-control in 04-checkconf,
4365	  not the status code from the tee command.
4366
43674 November 2016: Ralph
4368	- Added stub-ssl-upstream and forward-ssl-upstream options.
4369
43704 November 2016: Wouter
4371	- configure detects ssl security level API function in the autoconf
4372	  manner.  Every function on its own, so that other libraries (eg.
4373	  LibreSSL) can develop their API without hindrance.
4374	- Fix #1154: segfault when reading config with duplicate zones.
4375	- Note that for harden-below-nxdomain the nxdomain must be secure,
4376	  this means nsec3 with optout is insufficient.
4377
43783 November 2016: Ralph
4379	- Set OpenSSL security level to 0 when using aNULL ciphers.
4380
43813 November 2016: Wouter
4382	- .gitattributes line for githubs code language display.
4383	- log-identity: config option to set sys log identity, patch from
4384	  "Robin H. Johnson" <robbat2@gentoo.org>
4385
43862 November 2016: Wouter
4387	- iana portlist update.
4388
438931 October 2016: Wouter
4390	- Fix failure to build on arm64 with no sbrk.
4391	- iana portlist update.
4392
439328 October 2016: Wouter
4394	- Patch for server.num.zero_ttl stats for count of expired replies,
4395	  from Pavel Odintsov.
4396
439726 October 2016: Wouter
4398	- Fix unit tests for openssl 1.1, with no DSA, by faking DSA, enabled
4399	  with the undocumented switch 'fake-dsa'.  It logs a warning.
4400
440125 October 2016: Wouter
4402	- Fix #1134: unbound-control set_option -- val-override-date: -1 works
4403	  immediately to ignore datetime, or back to 0 to enable it again.
4404	  The -- is to ignore the '-1' as an option flag.
4405
440624 October 2016: Wouter
4407	- serve-expired config option: serve expired responses with TTL 0.
4408	- g.root-servers.net has AAAA address.
4409
441021 October 2016: Wouter
4411	- Ported tests for local_cname unit test to testbound framework.
4412
441320 October 2016: Wouter
4414	- suppress compile warning in lex files.
4415	- init lzt variable, for older gcc compiler warnings.
4416	- fix --enable-dsa to work, instead of copying ecdsa enable.
4417	- Fix DNSSEC validation of query type ANY with DNAME answers.
4418	- Fixup query_info local_alias init.
4419
442019 October 2016: Wouter
4421	- Fix #1130: whitespace in example.conf.in more consistent.
4422
442318 October 2016: Wouter
4424	- Patch that resolves CNAMEs entered in local-data conf statements that
4425	  point to data on the internet, from Jinmei Tatuya (Infoblox).
4426	- Removed patch comments from acllist.c and msgencode.c
4427	- Added documentation doc/CNAME-basedRedirectionDesignNotes.pdf,
4428	  from Jinmei Tatuya (Infoblox).
4429	- Fix #1125: unbound could reuse an answer packet incorrectly for
4430	  clients with different EDNS parameters, from Jinmei Tatuya.
4431	- Fix #1118: libunbound.pc sets strange Libs, Libs.private values.
4432	- Added Requires line to libunbound.pc
4433	- Please doxygen by modifying mesh.h
4434
443517 October 2016: Wouter
4436	- Re-fix #839 from view commit overwrite.
4437	- Fixup const void cast warning.
4438
443912 October 2016: Ralph
4440	- Free view config elements.
4441
444211 October 2016: Ralph
4443	- Added qname-minimisation-strict config option.
4444	- iana portlist update.
4445	- fix memoryleak logfile when in debug mode.
4446
44475 October 2016: Ralph
4448	- Added views functionality.
4449	- Fix #1117: spelling errors, from Robert Edmonds.
4450
445130 September 2016: Wouter
4452	- Fix Nits for 1.5.10 reported by Dag-Erling Smorgrav.
4453
445429 September 2016: Wouter
4455	- Fix #838: 1.5.10 cannot be built on Solaris, undefined PATH_MAX.
4456	- Fix #839: Memory grows unexpectedly with large RPZ files.
4457	- Fix #840: infinite loop in unbound_munin_ plugin on unowned lockfile.
4458	- Fix #841: big local-zone's make it consume large amounts of memory.
4459
446027 September 2016: Wouter
4461	- tag for 1.5.10 release
4462	- trunk contains 1.5.11 in development.
4463	- Fix dnstap relaying "random" messages instead of resolver/forwarder
4464	  responses, from Nikolay Edigaryev.
4465	- Fix #836: unbound could echo back EDNS options in an error response.
4466
446720 September 2016: Wouter
4468	- iana portlist update.
4469	- Fix #835: fix --disable-dsa with nettle verify.
4470	- tag for 1.5.10rc1 release.
4471
447215 September 2016: Wouter
4473	- Fix 883: error for duplicate local zone entry.
4474	- Test for openssl init_crypto and init_ssl functions.
4475
447615 September 2016: Ralph
4477	- fix potential memory leak in daemon/remote.c and nullpointer
4478	  dereference in validator/autotrust.
4479	- iana portlist update.
4480
448113 September 2016: Wouter
4482	- Silenced flex-generated sign-unsigned warning print with gcc
4483	  diagnostic pragma.
4484	- Fix for new splint on FreeBSD.  Fix cast for sockaddr_un.sun_len.
4485
44869 September 2016: Wouter
4487	- Fix #831: workaround for spurious fread_chk warning against petal.c
4488
44895 September 2016: Ralph
4490	- Take configured minimum TTL into consideration when reducing TTL
4491	  to original TTL from RRSIG.
4492
44935 September 2016: Wouter
4494	- Fix #829: doc of sldns_wire2str_rdata_buf() return value has an
4495	  off-by-one typo, from Jinmei Tatuya (Infoblox).
4496	- Fix incomplete prototypes reported by Dag-Erling Smørgrav.
4497	- Fix #828: missing type in access-control-tag-action redirect results
4498	  in NXDOMAIN.
4499
45002 September 2016: Wouter
4501	- Fix compile with openssl 1.1.0 with api=1.1.0.
4502
45031 September 2016: Wouter
4504	- RFC 7958 is now out, updated docs for unbound-anchor.
4505	- Fix for compile without warnings with openssl 1.1.0.
4506	- Fix #826: Fix refuse_non_local could result in a broken response.
4507	- iana portlist update.
4508
450929 August 2016: Wouter
4510	- Fix #777: OpenSSL 1.1.0 compatibility, patch from Sebastian A.
4511	  Siewior.
4512	- Add default root hints for IPv6 E.ROOT-SERVERS.NET, 2001:500:a8::e.
4513
451425 August 2016: Ralph
4515	- Clarify local-zone-override entry in unbound.conf.5
4516
451725 August 2016: Wouter
4518	- 64bit build option for makedist windows compile, -w64.
4519
452024 August 2016: Ralph
4521	- Fix #820: set sldns_str2wire_rr_buf() dual meaning len parameter
4522	  in each iteration in find_tag_datas().
4523	- unbound.conf.5 entries for define-tag, access-control-tag,
4524	  access-control-tag-action, access-control-tag-data, local-zone-tag,
4525	  and local-zone-override.
4526
452723 August 2016: Wouter
4528	- Fix #804: unbound stops responding after outage.  Fixes queries
4529	  that attempt to wait for an empty list of subqueries.
4530	- Fix #804: lower num_target_queries for iterator also for failed
4531	  lookups.
4532
45338 August 2016: Wouter
4534	- Note that OPENPGPKEY type is RFC 7929.
4535
45364 August 2016: Wouter
4537	- Fix #807: workaround for possible some "unused" function parameters
4538	  in test code, from Jinmei Tatuya.
4539
45403 August 2016: Wouter
4541	- use sendmsg instead of sendto for TFO.
4542
454328 July 2016: Wouter
4544	- Fix #806: wrong comment removed.
4545
454626 July 2016: Wouter
4547	- nicer ratelimit-below-domain explanation.
4548
454922 July 2016: Wouter
4550	- Fix #801: missing error condition handling in
4551	  daemon_create_workers().
4552	- Fix #802: workaround for function parameters that are "unused"
4553	  without log_assert.
4554	- Fix #803: confusing (and incorrect) code comment in daemon_cleanup().
4555
455620 July 2016: Wouter
4557	- Fix typo in unbound.conf.
4558
455918 July 2016: Wouter
4560	- Fix #798: Client-side TCP fast open fails (Linux).
4561
456214 July 2016: Wouter
4563	- TCP Fast open patch from Sara Dickinson.
4564	- Fixed unbound.doxygen for 1.8.11.
4565
45667 July 2016: Wouter
4567	- access-control-tag-data implemented. verbose(4) prints tag debug.
4568
45695 July 2016: Wouter
4570	- Fix dynamic link of anchor-update.exe on windows.
4571	- Fix detect of mingw for MXE package build.
4572	- Fixes for 64bit windows compile.
4573	- Fix #788 for nettle 3.0: Failed to build with Nettle >= 3.0 and
4574	  --with-libunbound-only --with-nettle.
4575
45764 July 2016: Wouter
4577	- For #787: prefer-ip6 option for unbound.conf prefers to send
4578	  upstream queries to ipv6 servers.
4579	- Fix #787: outgoing-interface netblock/64 ipv6 option to use linux
4580	  freebind to use 64bits of entropy for every query with random local
4581	  part.
4582
458330 June 2016: Wouter
4584	- Document always_transparent, always_refuse, always_nxdomain types.
4585
458629 June 2016: Wouter
4587	- Fix static compile on windows missing gdi32.
4588
458928 June 2016: Wouter
4590	- Create a pkg-config file for libunbound in contrib.
4591
459227 June 2016: Wouter
4593	- Fix #784: Build configure assumess that having getpwnam means there
4594	  is endpwent function available.
4595	- Updated repository with newer flex and bison output.
4596
459724 June 2016: Ralph
4598	- Possibility to specify local-zone type for an acl/tag pair
4599	- Possibility to specify (override) local-zone type for a source address
4600	  block
460116 June 2016: Ralph
4602	- Decrease dp attempts at each QNAME minimisation iteration
4603
460416 June 2016: Wouter
4605	- Fix tcp timeouts in tv.usec.
4606
460715 June 2016: Wouter
4608	- TCP_TIMEOUT is specified in milliseconds.
4609	- If more than half of tcp connections are in use, a shorter timeout
4610	  is used (200 msec, vs 2 minutes) to pressure tcp for new connects.
4611
461214 June 2016: Ralph
4613	- QNAME minimisation unit test for dropped QTYPE=A queries.
4614
461514 June 2016: Wouter
4616	- Fix 775: unbound-host and unbound-anchor crash on windows, ignore
4617	  null delete for wsaevent.
4618	- Fix spelling in freebind option man page text.
4619	- Fix windows link of ssl with crypt32.
4620	- Fix 779: Union casting is non-portable.
4621	- Fix 780: MAP_ANON not defined in HP-UX 11.31.
4622	- Fix 781: prealloc() is an HP-UX system library call.
4623
462413 June 2016: Ralph
4625	- Use QTYPE=A for QNAME minimisation.
4626	- Keep track of number of time-outs when performing QNAME minimisation.
4627	  Stop minimising when number of time-outs for a QNAME/QTYPE pair is
4628	  more than three.
4629
463013 June 2016: Wouter
4631	- Fix #778: unbound 1.5.9: -h segfault (null deref).
4632	- Fix directory: fix for unbound-checkconf, it restores cwd.
4633
463410 June 2016: Wouter
4635	- And delete service.conf.shipped on uninstall.
4636	- In unbound.conf directory: dir immediately changes to that directory,
4637	  so that include: file below that is relative to that directory.
4638	  With chroot, make the directory an absolute path inside chroot.
4639	- keep debug symbols in windows build.
4640	- do not delete service.conf on windows uninstall.
4641	- document directory immediate fix and allow EXECUTABLE syntax in it
4642	  on windows.
4643
46449 June 2016: Wouter
4645	- Trunk is called 1.5.10 (with previous fixes already in there to 2
4646	  june).
4647	- Revert fix for NetworkService account on windows due to breakage
4648	  it causes.
4649	- Fix that windows install will not overwrite existing service.conf
4650	  file (and ignore gui config choices if it exists).
4651
46527 June 2016: Ralph
4653	- Lookup localzones by taglist from acl.
4654	- Possibility to lookup local_zone, regardless the taglist.
4655	- Added local_zone/taglist/acl unit test.
4656
46577 June 2016: Wouter
4658	- Fix #773: Non-standard Python location build failure with pyunbound.
4659	- Improve threadsafety for openssl 0.9.8 ecdsa dnssec signatures.
4660
46616 June 2016: Wouter
4662	- Better help text from -h (from Ray Griffith).
4663	- access-control-tag config directive.
4664	- local-zone-override config directive.
4665	- access-control-tag-action and access-control-tag-data config
4666	  directives.
4667	- free acl-tags, acltag-action and acltag-data config lists during
4668	  initialisation to free up memory for more entries.
4669
46703 June 2016: Wouter
4671	- Fix to not ignore return value of chown() in daemon startup.
4672
46732 June 2016: Wouter
4674	- Fix libubound for edns optlist feature.
4675	- Fix distinction between free and CRYPTO_free in dsa and ecdsa alloc.
4676	- Fix #752: retry resource temporarily unavailable on control pipe.
4677	- un-document localzone tags.
4678	- tag for release 1.5.9rc1.
4679	  And this also became release 1.5.9.
4680	- Fix (for 1.5.10): Fix unbound-anchor.exe file location defaults to
4681	  Program Files with (x86) appended.
4682	- re-documented localzone tags in example.conf.
4683
468431 May 2016: Wouter
4685	- Fix windows service to be created run with limited rights, as a
4686	  network service account, from Mario Turschmann.
4687	- compat strsep implementation.
4688	- generic edns option parse and store code.
4689	- and also generic edns options for upstream messages (and replies).
4690	  after parse use edns_opt_find(edns.opt_list, LDNS_EDNS_NSID),
4691	  to insert use edns_opt_append(edns, region, code, len, bindata) on
4692	  the opt_list passed to send_query, or in edns_opt_inplace_reply.
4693
469430 May 2016: Wouter
4695	- Fix time in case answer comes from cache in ub_resolve_event().
4696	- Attempted fix for #765: _unboundmodule missing for python3.
4697
469827 May 2016: Wouter
4699	- Fix #770: Small subgroup attack on DH used in unix pipe on localhost
4700	  if unbound control uses a unix local named pipe.
4701	- Document write permission to directory of trust anchor needed.
4702	- Fix #768:  Unbound Service Sometimes Can Not Shutdown
4703	  Completely, WER Report Shown Up.  Close handle before closing WSA.
4704
470526 May 2016: Wouter
4706	- Updated patch from Charles Walker.
4707
470824 May 2016: Wouter
4709	- disable-dnssec-lame-check config option from Charles Walker.
4710	- remove memory leak from lame-check patch.
4711	- iana portlist update.
4712
471323 May 2016: Wouter
4714	- Fix #767:  Reference to an expired Internet-Draft in
4715	  harden-below-nxdomain documentation.
4716
471720 May 2016: Ralph
4718	- No QNAME minimisation fall-back for NXDOMAIN answers from DNSSEC
4719	  signed zones.
4720	- iana portlist update.
4721
472219 May 2016: Wouter
4723	- Fix #766: dns64 should synthesize results on timeout/errors.
4724
472518 May 2016: Wouter
4726	- Fix #761: DNSSEC LAME false positive resolving nic.club.
4727
472817 May 2016: Wouter
4729	- trunk updated with output of flex 2.6.0.
4730
47316 May 2016: Wouter
4732	- Fix memory leak in out-of-memory conditions of local zone add.
4733
473429 April 2016: Wouter
4735	- Fix sldns with static checking fixes copied from getdns.
4736
473728 April 2016: Wouter
4738	- Fix #759: 0x20 capsforid no longer checks type PTR, for
4739	  compatibility with cisco dns guard.  This lowers false positives.
4740
474118 April 2016: Wouter
4742	- Fix some malformed responses to edns queries get fallback to nonedns.
4743
474415 April 2016: Wouter
4745	- cachedb module event handling design.
4746
474714 April 2016: Wouter
4748	- cachedb module framework (empty).
4749	- iana portlist update.
4750
475112 April 2016: Wouter
4752	- Fix #753: document dump_requestlist is for first thread.
4753
475424 March 2016: Wouter
4755	- Document permit-small-holddown for 5011 debug.
4756	- Fix #749: unbound-checkconf gets SIGSEGV when use against a
4757	  malformatted conf file.
4758
475923 March 2016: Wouter
4760	- OpenSSL 1.1.0 portability, --disable-dsa configure option.
4761
476221 March 2016: Wouter
4763	- Fix compile of getentropy_linux for SLES11 servicepack 4.
4764	- Fix dnstap-log-resolver-response-messages, from Nikolay Edigaryev.
4765	- Fix test for openssl to use HMAC_Update for 1.1.0.
4766	- acx_nlnetlabs.m4 to v33, with HMAC_Update.
4767	- acx_nlnetlabs.m4 to v34, with -ldl -pthread test for libcrypto.
4768	- ERR_remove_state deprecated since openssl 1.0.0.
4769	- OPENSSL_config is deprecated, removing.
4770
477118 March 2016: Ralph
4772	- Validate QNAME minimised NXDOMAIN responses.
4773	- If QNAME minimisation is enabled, do cache lookup for QTYPE NS in
4774	  harden-below-nxdomain.
4775
477617 March 2016: Ralph
4777	- Limit number of QNAME minimisation iterations.
4778
477917 March 2016: Wouter
4780	- Fix #746: Fix unbound sets CD bit on all forwards.
4781	  If no trust anchors, it'll not set CD bit when forwarding to another
4782	  server.  If a trust anchor, no CD bit on the first attempt to a
4783	  forwarder, but CD bit thereafter on repeated attempts to get DNSSEC.
4784	- iana portlist update.
4785
478616 March 2016: Wouter
4787	- Fix ip-transparent for ipv6 on FreeBSD, thanks to Nick Hibma.
4788	- Fix ip-transparent for tcp on freebsd.
4789
479015 March 2016: Wouter
4791	- ip_freebind: yesno option in unbound.conf sets IP_FREEBIND for
4792	  binding to an IP address while the interface or address is down.
4793
479414 March 2016: Wouter
4795	- Fix warnings in ifdef corner case, older or unknown libevent.
4796	- Fix compile for ub_event code with older libev.
4797
479811 March 2016: Wouter
4799	- Remove warning about unused parameter in event_pluggable.c.
4800	- Fix libev usage of dispatch return value.
4801	- No side effects in tolower() call, in case it is a macro.
4802	- For test put free in pluggable api in parenthesis.
4803
480410 March 2016: Wouter
4805	- Fixup backend2str for libev.
4806
480709 March 2016: Willem
4808	- User defined pluggable event API for libunbound
4809	- Fixup of compile fix for pluggable event API from P.Y. Adi
4810	  Prasaja.
4811
481209 March 2016: Wouter
4813	- Updated configure and ltmain.sh.
4814	- Updated L root IPv6 address.
4815
481607 March 2016: Wouter
4817	- Fix #747: assert in outnet_serviced_query_stop.
4818	- iana ports fetched via https.
4819	- iana portlist update.
4820
482103 March 2016: Wouter
4822	- configure tests for the weak attribute support by the compiler.
4823
482402 March 2016: Wouter
4825	- 1.5.8 release tag
4826	- trunk contains 1.5.9 in development.
4827	- iana portlist update.
4828	- Fix #745: unbound.py - idn2dname throws UnicodeError when idnname
4829	  contains trailing dot.
4830
483124 February 2016: Wouter
4832	- Fix OpenBSD asynclook lock free that gets used later (fix test code).
4833	- Fix that NSEC3 negative cache is used when there is no salt.
4834
483523 February 2016: Wouter
4836	- ub_ctx_set_stub() function for libunbound to config stub zones.
4837	- sorted ubsyms.def file with exported libunbound functions.
4838
483919 February 2016: Wouter
4840	- Print understandable debug log when unusable DS record is seen.
4841	- load gost algorithm if digest is seen before key algorithm.
4842	- iana portlist update.
4843
484417 February 2016: Wouter
4845	- Fix that "make install" fails due to "text file busy" error.
4846
484716 February 2016: Wouter
4848	- Set IPPROTO_IP6 for ipv6 sockets otherwise invalid argument error.
4849
485015 February 2016: Wouter
4851	- ip-transparent option for FreeBSD with IP_BINDANY socket option.
4852	- wait for sendto to drain socket buffers when they are full.
4853
48549 February 2016: Wouter
4855	- Test for type OPENPGPKEY.
4856	- insecure-lan-zones: yesno config option, patch from Dag-Erling
4857	  Smørgrav.
4858
48598 February 2016: Wouter
4860	- Fix patch typo in prevuous commit for 734 from Adi Prasaja.
4861	- RR Type CSYNC support RFC 7477, in debug printout and config input.
4862	- RR Type OPENPGPKEY support (draft-ietf-dane-openpgpkey-07).
4863
486429 January 2016: Wouter
4865	- Neater cmdline_verbose increment patch from Edgar Pettijohn.
4866
486727 January 2016: Wouter
4868	- Made netbsd sendmsg test nonfatal, in case of false positives.
4869	- Fix #741: log message for dnstap socket connection is more clear.
4870
487126 January 2016: Wouter
4872	- Fix #734: chown the pidfile if it resides inside the chroot.
4873	- Use arc4random instead of random in tests (because it is
4874	  available, possibly as compat, anyway).
4875	- Fix cmsg alignment for argument to sendmsg on NetBSD.
4876	- Fix that unbound complains about unimplemented IP_PKTINFO for
4877	  sendmsg on NetBSD (for interface-automatic).
4878
487925 January 2016: Wouter
4880	- Fix #738: Swig should not be invoked with CPPFLAGS.
4881
488219 January 2016: Wouter
4883	- Squelch 'cannot assign requested address' log messages unless
4884	  verbosity is high, it was spammed after network down.
4885
488614 January 2016: Wouter
4887	- Fix to simplify empty string checking from Michael McConville.
4888	- iana portlist update.
4889
489012 January 2016: Wouter
4891	- Fix #734: Do not log an error when the PID file cannot be chown'ed.
4892	  Patch from Simon Deziel.
4893
489411 January 2016: Wouter
4895	- Fix test if -pthreads unused to use better grep for portability.
4896
489706 January 2016: Wouter
4898	- Fix mingw crosscompile for recent mingw.
4899	- Update aclocal, autoconf output with new versions (1.15, 2.4.6).
4900
490105 January 2016: Wouter
4902	- #731: tcp-mss, outgoing-tcp-mss options for unbound.conf, patch
4903	  from Daisuke Higashi.
4904	- Support RFC7686: handle ".onion" Special-Use Domain. It is blocked
4905	  by default, and can be unblocked with "nodefault" localzone config.
4906
490704 January 2016: Wouter
4908	- Define DEFAULT_SOURCE together with BSD_SOURCE when that is defined,
4909	  for Linux glibc 2.20.
4910	- Fixup contrib/aaaa-filter-iterator.patch for moved contents in the
4911	  source code, so it applies cleanly again.  Removed unused variable
4912	  warnings.
4913
491415 December 2015: Ralph
4915	- Fix #729: omit use of escape sequences in echo since they are not
4916	  portable (unbound-control-setup).
4917
491811 December 2015: Wouter
4919	- remove NULL-checks before free, patch from Michael McConville.
4920	- updated ax_pthread.m4 to version 21 with clang support, this
4921	  removes a warning from compilation.
4922	- OSX portability, detect if sbrk is deprecated.
4923	- OSX clang, stop -pthread unused during link stage warnings.
4924	- OSX clang new flto check.
4925
492610 December 2015: Wouter
4927	- 1.5.7 release
4928	- trunk has 1.5.8 in development.
4929
49308 December 2015: Wouter
4931	- Fixup 724 for unbound-control.
4932
49337 December 2015: Ralph
4934	- Do not minimise forwarded requests.
4935
49364 December 2015: Wouter
4937	- Removed unneeded whitespace from example.conf.
4938
49393 December 2015: Ralph
4940	- (after rc1 tag)
4941	- Committed fix to qname minimisation and unit test case for it.
4942
49433 December 2015: Wouter
4944	- iana portlist update.
4945	- 1.5.7rc1 prerelease tag.
4946
49472 December 2015: Wouter
4948	- Fixup 724: Fix PCA prompt for unbound-service-install.exe.
4949	  re-enable stdout printout.
4950	- For 724: Add Changelog to windows binary dist.
4951
49521 December 2015: Ralph
4953	- Qname minimisation review fixes
4954
49551 December 2015: Wouter
4956	- Fixup 724 fix for fname_after_chroot() calls.
4957	- Remove stdout printout for unbound-service-install.exe
4958	- .gitignore for git users.
4959
496030 November 2015: Ralph
4961	- Implemented qname minimisation
4962
496330 November 2015: Wouter
4964	- Fix for #724: conf syntax to read files from run dir (on Windows).
4965
496625 November 2015: Wouter
4967	- Fix for #720, fix unbound-control-setup windows batch file.
4968
496924 November 2015: Wouter
4970	- Fix #720: add windows scripts to zip bundle.
4971	- iana portlist update.
4972
497320 November 2015: Wouter
4974	- Added assert on rrset cache correctness.
4975	- Fix that malformed EDNS query gets a response without malformed EDNS.
4976
497718 November 2015: Wouter
4978	- newer acx_nlnetlabs.m4.
4979	- spelling fixes from Igor Sobrado Delgado.
4980
498117 November 2015: Wouter
4982	- Fix #594. libunbound: optionally use libnettle for crypto.
4983	  Contributed by Luca Bruno.  Added --with-nettle for use with
4984	  --with-libunbound-only.
4985	- refactor nsec3 hash implementation to be more library-portable.
4986	- iana portlist update.
4987	- Fixup DER encoded DSA signatures for libnettle.
4988
498916 November 2015: Wouter
4990	- Fix for lenient accept of reverse order DNAME and CNAME.
4991
49926 November 2015: Wouter
4993	- Change example.conf: ftp.internic.net to https://www.internic.net
4994
49955 November 2015: Wouter
4996	- ACX_SSL_CHECKS no longer adds -ldl needlessly.
4997
49983 November 2015: Wouter
4999	- Fix #718: Fix unbound-control-setup with support for env
5000	  without HEREDOC bash support.
5001
500229 October 2015: Wouter
5003	- patch from Doug Hogan for SSL_OP_NO_SSLvx options.
5004	- Fix #716: nodata proof with empty non-terminals and wildcards.
5005
500628 October 2015: Wouter
5007	- Fix checklock testcode for linux threads on exit.
5008
500927 October 2015: Wouter
5010	- isblank() compat implementation.
5011	- detect libexpat without xml_StopParser function.
5012	- portability fixes.
5013	- portability, replace snprintf if return value broken.
5014
501523 October 2015: Wouter
5016	- Fix #714: Document config to block private-address for IPv4
5017	  mapped IPv6 addresses.
5018
501922 October 2015: Wouter
5020	- Fix #712: unbound-anchor appears to not fsync root.key.
5021
502220 October 2015: Wouter
5023	- 1.5.6 release.
5024	- trunk tracks development of 1.5.7.
5025
502615 October 2015: Wouter
5027	- Fix segfault in the dns64 module in the formaterror error path.
5028	- Fix sldns_wire2str_rdata_scan for malformed RRs.
5029	- tag for 1.5.6rc1 release.
5030
503114 October 2015: Wouter
5032	- ANY responses include DNAME records if present, as per Evan Hunt's
5033	  remark in dnsop.
5034	- Fix manpage to suggest using SIGTERM to terminate the server.
5035
50369 October 2015: Wouter
5037	- Default for ssl-port is port 853, the temporary port assignment
5038	  for secure domain name system traffic.
5039	  If you used to rely on the older default of port 443, you have
5040	  to put a clause in unbound.conf for that.  The new value is likely
5041	  going to be the standardised port number for this traffic.
5042	- iana portlist update.
5043
50446 October 2015: Wouter
5045	- 1.5.5 release.
5046	- trunk tracks the development of 1.5.6.
5047
504828 September 2015: Wouter
5049	- MAX_TARGET_COUNT increased to 64, to fix up sporadic resolution
5050	  failures.
5051	- tag for 1.5.5rc1 release.
5052	- makedist.sh: pgp sig echo commands.
5053
505425 September 2015: Wouter
5055	- Fix unbound-control flush that does not succeed in removing data.
5056
505722 September 2015: Wouter
5058	- Fix config globbed include chroot treatment, this fixes reload of
5059	  globs (patch from Dag-Erling Smørgrav).
5060	- iana portlist update.
5061	- Fix #702: New IPs for for h.root-servers.net.
5062	- Remove confusion comment from canonical_compare() function.
5063	- Fix #705: ub_ctx_set_fwd() return value mishandled on windows.
5064	- testbound selftest also works in non-debug mode.
5065	- Fix minor error in unbound.conf.5.in
5066	- Fix unbound.conf(5) access-control description for precedence
5067	  and default.
5068
506931 August 2015: Wouter
5070	- changed windows setup compression to be more transparent.
5071
507228 August 2015: Wouter
5073	- Fix #697: Get PY_MAJOR_VERSION failure at configure for python
5074	  2.4 to 2.6.
5075	- Feature #699: --enable-pie option to that builds PIE binary.
5076	- Feature #700: --enable-relro-now option that enables full read-only
5077	  relocation.
5078
507924 August 2015: Wouter
5080	- Fix deadlock for local data add and zone add when unbound-control
5081	  list_local_data printout is interrupted.
5082	- iana portlist update.
5083	- Change default of harden-algo-downgrade to off.  This is lenient
5084	  for algorithm rollover.
5085
508613 August 2015: Wouter
5087	- 5011 implementation does not insist on all algorithms, when
5088	  harden-algo-downgrade is turned off.
5089	- Reap the child process that libunbound spawns.
5090
509111 August 2015: Wouter
5092	- Fix #694: configure script does not detect LibreSSL 2.2.2
5093
50944 August 2015: Wouter
5095	- Document that local-zone nodefault matches exactly and transparent
5096	  can be used to release a subzone.
5097
50983 August 2015: Wouter
5099	- Document in the manual more text about configuring locally served
5100	  zones.
5101	- Fix 5011 anchor update timer after reload.
5102	- Fix mktime in unbound-anchor not using UTC.
5103
510430 July 2015: Wouter
5105	- please afl-gcc (llvm) for uninitialised variable warning.
5106	- Added permit-small-holddown config to debug fast 5011 rollover.
5107
510824 July 2015: Wouter
5109	- Fix #690: Reload fails when so-reuseport is yes after changing
5110	  num-threads.
5111	- iana portlist update.
5112
511321 July 2015: Wouter
5114	- Fix configure to detect SSL_CTX_set_ecdh_auto.
5115	- iana portlist update.
5116
511720 July 2015: Wouter
5118	- Enable ECDHE for servers.  Where available, use
5119	  SSL_CTX_set_ecdh_auto() for TLS-wrapped server configurations to
5120	  enable ECDHE.  Otherwise, manually offer curve p256.
5121	  Client connections should automatically use ECDHE when available.
5122	  (thanks Daniel Kahn Gillmor)
5123
512418 July 2015: Willem
5125	- Allow certificate chain files to allow for intermediate certificates.
5126	  (thanks Daniel Kahn Gillmor)
5127
512813 July 2015: Wouter
5129	- makedist produces sha1 and sha256 files for created binaries too.
5130
51319 July 2015: Wouter
5132	- 1.5.4 release tag
5133	- trunk has 1.5.5 in development.
5134	- Fix #681: Setting forwarders with unbound-control forward
5135	  implicitly turns on forward-first.
5136
513729 June 2015: Wouter
5138	- iana portlist update.
5139	- Fix alloc with log for allocation size checks.
5140
514126 June 2015: Wouter
5142	- Fix #677 Fix DNAME responses from cache that failed internal chain
5143	  test.
5144	- iana portlist update.
5145
514622 June 2015: Wouter
5147	- Fix #677 Fix CNAME corresponding to a DNAME was checked incorrectly
5148	  and was therefore always synthesized (thanks to Valentin Dietrich).
5149
51504 June 2015: Wouter
5151	- RFC 7553 RR type URI support, is now enabled by default.
5152
51532 June 2015: Wouter
5154	- Fix #674: Do not free pointers given by getenv.
5155
515629 May 2015: Wouter
5157	- Fix that unparseable error responses are ratelimited.
5158	- SOA negative TTL is capped at minimumttl in its rdata section.
5159	- cache-max-negative-ttl config option, default 3600.
5160
516126 May 2015: Wouter
5162	- Document that ratelimit works with unbound-control set_option.
5163
516421 May 2015: Wouter
5165	- iana portlist update.
5166	- documentation proposes ratelimit of 1000 (closer to what upstream
5167	  servers expect from us).
5168
516920 May 2015: Wouter
5170	- DLV is going to be decommissioned.  Advice to stop using it, and
5171	  put text in the example configuration and man page to that effect.
5172
517310 May 2015: Wouter
5174	- Change syntax of particular validator error to be easier for
5175	  machine parse, swap rrset and ip adres info so it looks like:
5176	  validation failure <www.example.nl. TXT IN>: signature crypto
5177	  failed from 2001:DB8:7:bba4::53 for <*.example.nl. NSEC IN>
5178
51791 May 2015: Wouter
5180	- caps-whitelist in unbound.conf allows whitelist of loadbalancers
5181	  that cannot work with caps-for-id or its fallback.
5182
518330 April 2015: Wouter
5184	- Unit test for type ANY synthesis.
5185
518622 April 2015: Wouter
5187	- Removed contrib/unbound_unixsock.diff, because it has been
5188	  integrated, use control-interface: /path in unbound.conf.
5189	- iana portlist update.
5190
519117 April 2015: Wouter
5192	- Synthesize ANY responses from cache.  Does not search exhaustively,
5193	  but MX,A,AAAA,SOA,NS also CNAME.
5194	- Fix leaked dns64prefix configuration string.
5195
519616 April 2015: Wouter
5197	- Add local-zone type inform_deny, that logs query and drops answer.
5198	- Ratelimit does not apply to prefetched queries, and ratelimit-factor
5199	  is default 10.  Repeated normal queries get resolved and with
5200	  prefetch stay in the cache.
5201	- Fix bug#664: libunbound python3 related fixes (from Tomas Hozza)
5202	  Use print_function also for Python2.
5203	  libunbound examples: produce sorted output.
5204	  libunbound-Python: libldns is not used anymore.
5205	  Fix issue with Python 3 mapping of FILE* using file_py3.i from ldns.
5206
520710 April 2015: Wouter
5208	- unbound-control ratelimit_list lists high rate domains.
5209	- ratelimit feature, ratelimit: 100, or some sensible qps, can be
5210	  used to turn it on.  It ratelimits recursion effort per zone.
5211	  For particular names you can configure exceptions in unbound.conf.
5212	- Fix that get_option for cache-sizes does not print double newline.
5213	- Fix#663: ssl handshake fails when using unix socket because dh size
5214	  is too small.
5215
52168 April 2015: Wouter
5217	- Fix crash in dnstap: Do not try to log TCP responses after timeout.
5218
52197 April 2015: Wouter
5220	- Libunbound skips dos-line-endings from etc/hosts.
5221	- Unbound exits with a fatal error when the auto-trust-anchor-file
5222	  fails to be writable.  This is seconds after startup.  You can
5223	  load a readonly auto-trust-anchor-file with trust-anchor-file.
5224	  The file has to be writable to notice the trust anchor change,
5225	  without it, a trust anchor change will be unnoticed and the system
5226	  will then become inoperable.
5227	- unbound-control list_insecure command shows the negative trust
5228	  anchors currently configured, patch from Jelte Jansen.
5229
52302 April 2015: Wouter
5231	- Fix #660: Fix interface-automatic broken in the presence of
5232	  asymmetric routing.
5233
523426 March 2015: Wouter
5235	- remote.c probedelay line is easier to read.
5236	- rename ldns subdirectory to sldns to avoid name collision.
5237
523825 March 2015: Wouter
5239	- Fix #657:  libunbound(3) recommends deprecated
5240	  CRYPTO_set_id_callback.
5241	- If unknown trust anchor algorithm, and libressl is used, error
5242	  message encourages upgrade of the libressl package.
5243
524423 March 2015: Wouter
5245	- Fix segfault on user not found at startup (from Maciej Soltysiak).
5246
524720 March 2015: Wouter
5248	- Fixed to add integer overflow checks on allocation (defense in depth).
5249
525019 March 2015: Wouter
5251	- Add ip-transparent config option for bind to non-local addresses.
5252
525317 March 2015: Wouter
5254	- Use reallocarray for integer overflow protection, patch submitted
5255	  by Loganaden Velvindron.
5256
525716 March 2015: Wouter
5258	- Fixup compile on cygwin, more portable openssl thread id.
5259
526012 March 2015: Wouter
5261	- Updated default keylength in unbound-control-setup to 3k.
5262
526310 March 2015: Wouter
5264	- Fix lintian warning in unbound-checkconf man page (from Andreas
5265	  Schulze).
5266	- print svnroot when building windows dist.
5267	- iana portlist update.
5268	- Fix warning on sign compare in getentropy_linux.
5269
52709 March 2015: Wouter
5271	- Fix #644: harden-algo-downgrade option, if turned off, fixes the
5272	  reported excessive validation failure when multiple algorithms
5273	  are present.  It allows the weakest algorithm to validate the zone.
5274	- iana portlist update.
5275
52765 March 2015: Wouter
5277	- contrib/unbound_smf22.tar.gz: Solaris SMF installation/removal
5278	  scripts.  Contributed by Yuri Voinov.
5279	- Document that incoming-num-tcp increase is good for large servers.
5280	- stats reports tcp usage, of incoming-num-tcp buffers.
5281
52824 March 2015: Wouter
5283	- Patch from Brad Smith that syncs compat/getentropy_linux with
5284	  OpenBSD's version (2015-03-04).
5285	- 0x20 fallback improved: servfail responses do not count as missing
5286	  comparisons (except if all responses are errors),
5287	  inability to find nameservers does not fail equality comparisons,
5288	  many nameservers does not try to compare more than max-sent-count,
5289	  parse failures start 0x20 fallback procedure.
5290	- store caps_response with best response in case downgrade response
5291	  happens to be the last one.
5292	- Document windows 8 tests.
5293
52943 March 2015: Wouter
5295	- tag 1.5.3rc1
5296	[ This became 1.5.3 on 10 March, trunk is 1.5.4 in development ]
5297
52982 March 2015: Wouter
5299	- iana portlist update.
5300
530120 February 2015: Wouter
5302	- Use the getrandom syscall introduced in Linux 3.17 (from Heiner
5303	  Kallweit).
5304	- Fix #645 Portability to Solaris 10, use AF_LOCAL.
5305	- Fix #646 Portability to Solaris, -lrt for getentropy_solaris.
5306	- Fix #647 crash in 1.5.2 because pwd.db no longer accessible after
5307	  reload.
5308
530919 February 2015: Wouter
5310	- 1.5.2 release tag.
5311	- svn trunk contains 1.5.3 under development.
5312
531313 February 2015: Wouter
5314	- Fix #643: doc/example.conf.in: unnecessary whitespace.
5315
531612 February 2015: Wouter
5317	- tag 1.5.2rc1
5318
531911 February 2015: Wouter
5320	- iana portlist update.
5321
532210 February 2015: Wouter
5323	- Fix scrubber with harden-glue turned off to reject NS (and other
5324	  not-address) records.
5325
53269 February 2015: Wouter
5327	- Fix validation failure in case upstream forwarder (ISC BIND) does
5328	  not have the same trust anchors and decides to insert unsigned NS
5329	  record in authority section.
5330
53312 February 2015: Wouter
5332	- infra-cache-min-rtt patch from Florian Riehm, for expected long
5333	  uplink roundtrip times.
5334
533530 January 2015: Wouter
5336	- Fix 0x20 capsforid fallback to omit gratuitous NS and additional
5337	  section changes.
5338	- Portability fix for Solaris ('sun' is not usable for a variable).
5339
534029 January 2015: Wouter
5341	- Fix pyunbound byte string representation for python3.
5342
534326 January 2015: Wouter
5344	- Fix unintended use of gcc extension for incomplete enum types,
5345	  compile with pedantic c99 compliance (from Daniel Dickman).
5346
534723 January 2015: Wouter
5348	- windows port fixes, no AF_LOCAL, no chown, no chmod(grp).
5349
535016 January 2015: Wouter
5351	- unit test for local unix connection.  Documentation and log_addr
5352	  does not inspect port for AF_LOCAL.
5353	- unbound-checkconf -f prints chroot with pidfile path.
5354
535513 January 2015: Wouter
5356	- iana portlist update.
5357
535812 January 2015: Wouter
5359	- Cast sun_len sizeof to socklen_t.
5360	- Fix pyunbound ord call, portable for python 2 and 3.
5361
53627 January 2015: Wouter
5363	- Fix warnings in pythonmod changes.
5364
53656 January 2015: Wouter
5366	- iana portlist update.
5367	- patch for remote control over local sockets, from Dag-Erling
5368	  Smorgrav, Ilya Bakulin.  Use control-interface: /path/sock and
5369	  control-use-cert: no.
5370	- Fixup that patch and uid lookup (only for daemon).
5371	- coded the default of control-use-cert, to yes.
5372
53735 January 2015: Wouter
5374	- getauxval test for ppc64 linux compatibility.
5375	- make strip works for unbound-host and unbound-anchor.
5376	- patch from Stephane Lapie that adds to the python API, that
5377	  exposes struct delegpt, and adds the find_delegation function.
5378	- print query name when max target count is exceeded.
5379	- patch from Stuart Henderson that fixes DESTDIR in
5380	  unbound-control-setup for installs where config is not in
5381	  the prefix location.
5382	- Fix #634: fix fail to start on Linux LTS 3.14.X, ignores missing
5383	  IP_MTU_DISCOVER OMIT option (fix from Remi Gacogne).
5384	- Updated contrib warmup.cmd/sh to support two modes - load
5385	  from pre-defined list of domains or (with filename as argument)
5386	  load from user-specified list of domains, and updated contrib
5387	  unbound_cache.sh/cmd to support loading/save/reload cache to/from
5388	  default path or (with secondary argument) arbitrary path/filename,
5389	  from Yuri Voinov.
5390	- Patch from Philip Paeps to contrib/unbound_munin_ that uses
5391	  type ABSOLUTE.  Allows munin.conf: [idleserver.example.net]
5392	  unbound_munin_hits.graph_period minute
5393
53949 December 2014: Wouter
5395	- svn trunk has 1.5.2 in development.
5396	- config.guess and config.sub update from libtoolize.
5397	- local-zone: example.com inform makes unbound log a message with
5398	  client IP for queries in that zone.  Eg. for finding infected hosts.
5399
54008 December 2014: Wouter
5401	- Fix CVE-2014-8602: denial of service by making resolver chase
5402	  endless series of delegations.
5403
54041 December 2014: Wouter
5405	- Fix bug#632: unbound fails to build on AArch64, protects
5406	  getentropy compat code from calling sysctl if it is has been removed.
5407
540829 November 2014: Wouter
5409	- Add include to getentropy_linux.c, hopefully fixing debian build.
5410
541128 November 2014: Wouter
5412	- Fix makefile for build from noexec source tree.
5413
541426 November 2014: Wouter
5415	- Fix libunbound undefined symbol errors for main.
5416	  Referencing main does not seem to be possible for libunbound.
5417
541824 November 2014: Wouter
5419	- Fix log at high verbosity and memory allocation failure.
5420	- iana portlist update.
5421
542221 November 2014: Wouter
5423	- Fix crash on multiple thread random usage on systems without
5424	  arc4random.
5425
542620 November 2014: Wouter
5427	- fix compat/getentropy_win.c check if CryptGenRandom works and no
5428	  immediate exit on windows.
5429
543019 November 2014: Wouter
5431	- Fix cdflag dns64 processing.
5432
543318 November 2014: Wouter
5434	- Fix that CD flag disables DNS64 processing, returning the DNSSEC
5435	  signed AAAA denial.
5436	- iana portlist update.
5437
543817 November 2014: Wouter
5439	- Fix #627: SSL_CTX_load_verify_locations return code not properly
5440	  checked.
5441
544214 November 2014: Wouter
5443	- parser with bison 2.7
5444
544513 November 2014: Wouter
5446	- Patch from Stephane Lapie for ASAHI Net that implements aaaa-filter,
5447	added to contrib/aaaa-filter-iterator.patch.
5448
544912 November 2014: Wouter
5450	- trunk has 1.5.1 in development.
5451	- Patch from Robert Edmonds to build pyunbound python module
5452	  differently.  No versioninfo, with -shared and without $(LIBS).
5453	- Patch from Robert Edmonds fixes hyphens in unbound-anchor man page.
5454	- Removed 'increased limit open files' log message that is written
5455	  to console.  It is only written on verbosity 4 and higher.
5456	  This keeps system bootup console cleaner.
5457	- Patch from James Raftery, always print stats for rcodes 0..5.
5458
545911 November 2014: Wouter
5460	- iana portlist update.
5461	- Fix bug where forward or stub addresses with same address but
5462	  different port number were not tried.
5463	- version number in svn trunk is 1.5.0
5464	- tag 1.5.0rc1
5465	- review fix from Ralph.
5466
54677 November 2014: Wouter
5468	- dnstap fixes by Robert Edmonds:
5469		dnstap/dnstap.m4: cosmetic fixes
5470		dnstap/: Remove compiled protoc-c output files
5471		dnstap/dnstap.m4: Error out if required libraries are not found
5472		dnstap: Fix ProtobufCBufferSimple usage that is incorrect as of
5473			protobuf-c 1.0.0
5474		dnstap/: Adapt to API changes in latest libfstrm (>= 0.2.0)
5475
54764 November 2014: Wouter
5477	- Add ub_ctx_add_ta_autr function to add a RFC5011 automatically
5478	  tracked trust anchor to libunbound.
5479	- Redefine internal minievent symbols to unique symbols that helps
5480	  linking on platforms where the linker leaks names across modules.
5481
548227 October 2014: Wouter
5483	- Disabled use of SSLv3 in remote-control and ssl-upstream.
5484	- iana portlist update.
5485
548616 October 2014: Wouter
5487	- Documented dns64 configuration in unbound.conf man page.
5488
548913 October 2014: Wouter
5490	- Fix #617: in ldns in unbound, lowercase WKS services.
5491	- Fix ctype invocation casts.
5492
549310 October 2014: Wouter
5494	- Fix unbound-checkconf check for module config with dns64 module.
5495	- Fix unbound capsforid fallback, it ignores TTLs in comparison.
5496
54976 October 2014: Wouter
5498	- Fix #614: man page variable substitution bug.
54996 October 2014: Willem
5500	- Whitespaces after $ORIGIN are not part of the origin dname (ldns).
5501	- $TTL's value starts at position 5 (ldns).
5502
55031 October 2014: Wouter
5504	- fix #613: Allow tab ws in var length last rdfs (in ldns str2wire).
5505
550629 September 2014: Wouter
5507	- Fix #612: create service with service.conf in present directory and
5508	  auto load it.
5509	- Fix for mingw compile openssl ranlib.
5510
551125 September 2014: Wouter
5512	- updated configure and aclocal with newer autoconf 1.13.
5513
551422 September 2014: Wouter
5515	- Fix swig and python examples for Python 3.x.
5516	- Fix for mingw compile with openssl-1.0.1i.
5517
551819 September 2014: Wouter
5519	- improve python configuration detection to build on Fedora 22.
5520
552118 September 2014: Wouter
5522	- patches to also build with Python 3.x (from Pavel Simerda).
5523
552416 September 2014: Wouter
5525	- Fix tcp timer waiting list removal code.
5526	- iana portlist update.
5527	- Updated the TCP_BACLOG from 5 to 256, so that the tcp accept queue
5528	  is longer and more tcp connections can be handled.
5529
553015 September 2014: Wouter
5531	- Fix unit test for CDS typecode.
5532
55335 September 2014: Wouter
5534	- type CDS and CDNSKEY types in sldns.
5535
553625 August 2014: Wouter
5537	- Fixup checklock code for log lock and its mutual initialization
5538	  dependency.
5539	- iana portlist update.
5540	- Removed necessity for pkg-config from the dnstap.m4, new are
5541	  the --with-libfstrm and --with-protobuf-c configure options.
5542
554319 August 2014: Wouter
5544	- Update unbound manpage with more explanation (from Florian Obser).
5545
554618 August 2014: Wouter
5547	- Fix #603: unbound-checkconf -o <option> should skip verification
5548	  checks.
5549	- iana portlist update.
5550	- Fixup doc/unbound.doxygen to remove obsolete 1.8.7 settings.
5551
55525 August 2014: Wouter
5553	- dnstap support, with a patch from Farsight Security, written by
5554	  Robert Edmonds. The --enable-dnstap needs libfstrm and protobuf-c.
5555	  It is BSD licensed (see dnstap/dnstap.c).
5556	  Building with --enable-dnstap needs pkg-config with this patch.
5557	- Noted dnstap in doc/README and doc/CREDITS.
5558	- Changes to the dnstap patch.
5559	  - lint fixes.
5560	  - dnstap/dnstap_config.h should not have been added to the repo,
5561	    because is it generated.
5562
55631 August 2014: Wouter
5564	- Patch add msg, rrset, infra and key cache sizes to stats command
5565	  from Maciej Soltysiak.
5566	- iana portlist update.
5567
556831 July 2014: Wouter
5569	- DNS64 from Viagenie (BSD Licensed), written by Simon Perrault.
5570	  Initial commit of the patch from the FreeBSD base (with its fixes).
5571	  This adds a module (for module-config in unbound.conf) dns64 that
5572	  performs DNS64 processing, see README.DNS64.
5573	- Changes from DNS64:
5574	  strcpy changed to memmove.
5575	  arraybound check fixed from prefix_net/8/4 to prefix_net/8+4.
5576	  allocation of result consistently in the correct region.
5577	  time_t is now used for ttl in unbound (since the patch's version).
5578	- testdata/dns64_lookup.rpl for unit test for dns64 functionality.
5579
558029 July 2014: Wouter
5581	- Patch from Dag-Erling Smorgrav that implements feature, unbound -dd
5582	  does not fork in the background and also logs to stderr.
5583
558421 July 2014: Wouter
5585	- Fix endian.h include for OpenBSD.
5586
558716 July 2014: Wouter
5588	- And Fix#596: Bail out of unbound-control dump_infra when ssl
5589	  write fails.
5590
559115 July 2014: Wouter
5592	- Fix #596: Bail out of unbound-control list_local_zones when ssl
5593	  write fails.
5594	- iana portlist update.
5595
559613 July 2014: Wouter
5597	- Configure tests if main can be linked to from getentropy compat.
5598
559912 July 2014: Wouter
5600	- Fix getentropy compat code, function refs were not portable.
5601	- Fix to check openssl version number only for OpenSSL.
5602	- LibreSSL provides compat items, check for that in configure.
5603	- Fix bug in fix for log locks that caused deadlock in signal handler.
5604	- update compat/getentropy and arc4random to the most recent ones from OpenBSD.
5605
560611 July 2014: Matthijs
5607	- fake-rfc2553 patch (thanks Benjamin Baier).
5608
560911 July 2014: Wouter
5610	- arc4random in compat/ and getentropy, explicit_bzero, chacha for
5611	  dependencies, from OpenBSD.  arc4_lock and sha512 in compat.
5612	  This makes arc4random available on all platforms, except when
5613	  compiled with LIBNSS (it uses libNSS crypto random).
5614	- fix strptime implicit declaration error on OpenBSD.
5615	- arc4random, getentropy and explicit_bzero compat for Windows.
5616
56174 July 2014: Wouter
5618	- Fix #593: segfault or crash upon rotating logfile.
5619
56203 July 2014: Wouter
5621	- DLV tests added.
5622	- signit tool fixup for compile with libldns library.
5623	- iana portlist updated.
5624
562527 June 2014: Wouter
5626	- so-reuseport is available on BSDs(such as FreeBSD 10) and OS/X.
5627
562826 June 2014: Wouter
5629	- unbound-control status reports if so-reuseport was successful.
5630	- iana portlist updated.
5631
563224 June 2014: Wouter
5633	- Fix caps-for-id fallback, and added fallback attempt when servers
5634	  drop 0x20 perturbed queries.
5635	- Fixup testsetup for VM tests (run testcode/run_vm.sh).
5636
563717 June 2014: Wouter
5638	- iana portlist updated.
5639
56403 June 2014: Wouter
5641	- Add AAAA for B root server to default root hints.
5642
56432 June 2014: Wouter
5644	- Remove unused define from iterator.h
5645
564630 May 2014: Wouter
5647	- Fixup sldns_enum_edns_option typedef definition.
5648
564928 May 2014: Wouter
5650	- Code cleanup patch from Dag-Erling Smorgrav, with compiler issue
5651	  fixes from FreeBSD's copy of Unbound, he notes:
5652	  Generate unbound-control-setup.sh at build time so it respects
5653	  prefix and sysconfdir from the configure script.  Also fix the
5654	  umask to match the comment, and the comment to match the umask.
5655	  Add const and static where needed.  Use unions instead of
5656	  playing pointer poker.  Move declarations that are needed in
5657	  multiple source files into a shared header.  Move sldns_bgetc()
5658	  from parse.c to buffer.c where it belongs.  Introduce a new
5659	  header file, worker.h, which declares the callbacks that
5660	  all workers must define.  Remove those declarations from
5661	  libworker.h.	Include the correct headers in the correct places.
5662	  Fix a few dummy callbacks that don't match their prototype.
5663	  Fix some casts.  Hide the sbrk madness behind #ifdef HAVE_SBRK.
5664	  Remove a useless printf which breaks reproducible builds.
5665	  Get rid of CONFIGURE_{TARGET,DATE,BUILD_WITH} now that they're
5666	  no longer used.  Add unbound-control-setup.sh to the list of
5667	  generated files.  The prototype for libworker_event_done_cb()
5668	  needs to be moved from libunbound/libworker.h to
5669	  libunbound/worker.h.
5670	- Fixup out-of-directory compile with unbound-control-setup.sh.in.
5671	- make depend.
5672
567323 May 2014: Wouter
5674	- unbound-host -D enabled dnssec and reads root trust anchor from
5675	  the default root key file that was compiled in.
5676
567720 May 2014: Wouter
5678	- Feature, unblock-lan-zones: yesno that you can use to make unbound
5679	  perform 10.0.0.0/8 and other reverse lookups normally, for use if
5680	  unbound is running service for localhost on localhost.
5681
568216 May 2014: Wouter
5683	- Updated create_unbound_ad_servers and unbound_cache scripts from
5684	  Yuri Voinov in the source/contrib directory. Added
5685	  warmup.cmd (and .sh): warm up the DNS cache with your MRU domains.
5686
56879 May 2014: Wouter
5688	- Implement draft-ietf-dnsop-rfc6598-rfc6303-01.
5689	- iana portlist updated.
5690
56918 May 2014: Wouter
5692	- Contrib windows scripts from Yuri Voinov added to src/contrib:
5693	  create_unbound_ad_servers.cmd: enters anti-ad server lists.
5694	  unbound_cache.cmd: saves and loads the cache.
5695	- Added unbound-control-setup.cmd from Yuri Voinov to the windows
5696	  unbound distribution set.  It requires openssl installed in %PATH%.
5697
56986 May 2014: Wouter
5699	- Change MAX_SENT_COUNT from 16 to 32 to resolve some cases easier.
5700
57015 May 2014: Wouter
5702	- More #567: remove : from output of stub and forward lists, this is
5703	  easier to parse.
5704
570529 April 2014: Wouter
5706	- iana portlist updated.
5707	- Add unbound-control flush_negative that flushed nxdomains, nodata,
5708	  and errors from the cache.  For dnssec-trigger and NetworkManager,
5709	  fixes cases where network changes have localdata that was already
5710	  negatively cached from the previous network.
5711
571223 April 2014: Wouter
5713	- Patch from Jeremie Courreges-Anglas to use arc4random_uniform
5714	  if available on the OS, it gets entropy from the OS.
5715
571615 April 2014: Wouter
5717	- Fix compile with libevent2 on FreeBSD.
5718
571911 April 2014: Wouter
5720	- Fix #502: explain that do-ip6 disable does not stop AAAA lookups,
5721	  but it stops the use of the ipv6 transport layer for DNS traffic.
5722	- iana portlist updated.
5723
572410 April 2014: Wouter
5725	- iana portlist updated.
5726	- Patch from Hannes Frederic Sowa for Linux 3.15 fragmentation
5727	  option for DNS fragmentation defense.
5728	- Document that dump_requestlist only prints queries from thread 0.
5729	- unbound-control stats prints num.query.tcpout with number of TCP
5730	  outgoing queries made in the previous statistics interval.
5731	- Fix #567: unbound lists if forward zone is secure or insecure with
5732	  +i annotation in output of list_forwards, also for list_stubs
5733	  (for NetworkManager integration.)
5734	- Fix #554: use unsigned long to print 64bit statistics counters on
5735	  64bit systems.
5736	- Fix #558: failed prefetch lookup does not remove cached response
5737	  but delays next prefetch (in lieu of caching a SERVFAIL).
5738	- Fix #545: improved logging, the ip address of the error is printed
5739	  on the same log-line as the error.
5740
57418 April 2014: Wouter
5742	- Fix #574: make test fails on Ubuntu 14.04.  Disabled remote-control
5743	  in testbound scripts.
5744	- iana portlist updated.
5745
57467 April 2014: Wouter
5747	- C.ROOT-SERVERS.NET has an IPv6 address, and we updated the root
5748	  hints (patch from Anand Buddhdev).
5749	- Fix #572: Fix unit test failure for systems with different
5750	  /etc/services.
5751
575228 March 2014: Wouter
5753	- Fix #569: do_tcp is do-tcp in unbound.conf man page.
5754
575525 March 2014: Wouter
5756	- Patch from Stuart Henderson to build unbound-host man from .1.in.
5757
575824 March 2014: Wouter
5759	- Fix print filename of encompassing config file on read failure.
5760
576112 March 2014: Wouter
5762	- tag 1.4.22
5763	- trunk has 1.4.23 in development.
5764
576510 March 2014: Wouter
5766	- Fix bug#561: contrib/cacti plugin did not report SERVFAIL rcodes
5767	  because of spelling.  Patch from Chris Coates.
5768
576927 February 2014: Wouter
5770	- tag 1.4.22rc1
5771
577221 February 2014: Wouter
5773	- iana portlist updated.
5774
577520 February 2014: Matthijs
5776	- Be lenient when a NSEC NameError response with RCODE=NXDOMAIN is
5777	  received. This is okay according 4035, but not after revising
5778	  existence in 4592.  NSEC empty non-terminals exist and thus the
5779	  RCODE should have been NOERROR. If this occurs, and the RRsets
5780	  are secure, we set the RCODE to NOERROR and the security status
5781	  of the response is also considered secure.
5782
578314 February 2014: Wouter
5784	- Works on Minix (3.2.1).
5785
578611 February 2014: Wouter
5787	- Fix parse of #553(NSD) string in sldns, quotes without spaces.
5788
57897 February 2014: Wouter
5790	- iana portlist updated.
5791	- add body to ifstatement if locks disabled.
5792	- add TXT string"string" test case to unit test.
5793	- Fix #551: License change "Regents" to "Copyright holder", matching
5794	  the BSD license on opensource.org.
5795
57966 February 2014: Wouter
5797	- sldns has type HIP.
5798	- code documentation on the module interface.
5799
58005 February 2014: Wouter
5801	- Fix sldns parse tests on osx.
5802
58033 February 2014: Wouter
5804	- Detect libevent2 install automatically by configure.
5805	- Fixup link with lib/event2 subdir.
5806	- Fix parse in sldns of quoted parenthesized text strings.
5807
580831 January 2014: Wouter
5809	- unit test for ldns wire to str and back with zones, root, nlnetlabs
5810	  and types.sidnlabs.
5811	- Fix for hex to string in unknown, atma and nsap.
5812	- fixup nss compile (no ldns in it).
5813	- fixup warning in unitldns
5814	- fixup WKS and rdata type service to print unsigned because strings
5815	  are not portable; they cannot be read (for sure) on other computers.
5816	- fixup type EUI48 and EUI64, type APL and type IPSECKEY in string
5817	  parse sldns.
5818
581930 January 2014: Wouter
5820	- delay-close does not act if there are udp-wait queries, so that
5821	  it does not make a socketdrain DoS easier.
5822
582328 January 2014: Wouter
5824	- iana portlist updated.
5825	- iana portlist test updated so it does not touch the source
5826	  if there are no changes.
5827	- delay-close: msec option that delays closing ports for which
5828	  the UDP reply has timed out.  Keeps the port open, only accepts
5829	  the correct reply.  This correct reply is not used, but the port
5830	  is open so that no port-denied ICMPs are generated.
5831
583227 January 2014: Wouter
5833	- reuseport is attempted, then fallback to without on failure.
5834
583524 January 2014: Wouter
5836	- Change unbound-event.h to use void* buffer, length idiom.
5837	- iana portlist updated.
5838	- unbound-event.h is installed if you configure --enable-event-api.
5839	- speed up unbound (reports say it could be up to 10%), by reducing
5840	  lock contention on localzones.lock.  It is changed to an rwlock.
5841	- so-reuseport: yesno option to distribute queries evenly over
5842	  threads on Linux (Thanks Robert Edmonds).
5843	- made lint clean.
5844
584521 January 2014: Wouter
5846	- Fix #547: no trustanchor written if filesystem full, fclose checked.
5847
584817 January 2014: Wouter
5849	- Fix isprint() portability in sldns, uses unsigned int.
5850	- iana portlist updated.
5851
585216 January 2014: Wouter
5853	- fix #544: Fixed +i causes segfault when running with module conf
5854	  "iterator".
5855	- Windows port, adjust %lld to %I64d, and warning in win_event.c.
5856
585714 January 2014: Wouter
5858	- iana portlist updated.
5859
58605 Dec 2013: Wouter
5861	- Fix bug in cachedump that uses sldns.
5862	- update pythonmod for ldns_ to sldns_ name change.
5863
58643 Dec 2013: Wouter
5865	- Fix sldns to use sldns_ prefix for all ldns_ variables.
5866	- Fix windows compile to compile with sldns.
5867
586830 Nov 2013: Wouter
5869	- Fix sldns to make globals use sldns_ prefix.  This fixes
5870	  linking with libldns that uses global variables ldns_ .
5871
587213 Nov 2013: Wouter
5873	- Fix bug#537: compile python plugin without ldns library.
5874
587512 Nov 2013: Wouter
5876	- Fix bug#536: acl_deny_non_local and refuse_non_local added.
5877
58785 Nov 2013: Wouter
5879	- Patch from Neel Goyal to fix async id assignment if callback
5880	  is called by libunbound in the mesh attach.
5881	- Accept ip-address: as an alternative for interface: for
5882	  consistency with nsd.conf syntax.
5883
58844 Nov 2013: Wouter
5885	- Patch from Neel Goyal to fix callback in libunbound.
5886
58873 Nov 2013: Wouter
5888	- if configured --with-libunbound-only fix make install.
5889
589031 Oct 2013: Wouter
5891	- Fix #531: Set SO_REUSEADDR so that the wildcard interface and a
5892	  more specific interface port 53 can be used at the same time, and
5893	  one of the daemons is unbound.
5894	- iana portlist update.
5895	- separate ldns into core ldns inside ldns/ subdirectory.  No more
5896	  --with-ldns is needed and unbound does not rely on libldns.
5897	- portability fixes for new USE_SLDNS ldns subdir codebase.
5898
589922 Oct 2013: Wouter
5900	- Patch from Neel Goyal: Add an API call to set an event base on an
5901	  existing ub_ctx.  This basically just destroys the current worker and
5902	  sets the event base to the current.  And fix a deadlock in
5903	  ub_resolve_event – the cfglock is held when libworker_create is
5904	  called.  This ends up trying to acquire the lock again in
5905	  context_obtain_alloc in the call chain.
5906	- Fix #528: if very high logging (4 or more) segfault on allow_snoop.
5907
590826 Sep 2013: Wouter
5909	- unbound-event.h is installed if configured --with-libevent.  It
5910	  contains low-level library calls, that use libevent's event_base
5911	  and an ldns_buffer for the wire return packet to perform async
5912	  resolution in the client's eventloop.
5913
591419 Sep 2013: Wouter
5915	- 1.4.21 tag created.
5916	- trunk has 1.4.22 number inside it.
5917	- iana portlist updated.
5918	- acx_nlnetlabs.m4 to 26; improve FLTO help text.
5919
592016 Sep 2013: Wouter
5921	- Fix#524: max-udp-size not effective to non-EDNS0 queries, from
5922	  Daisuke HIGASHI.
5923
592410 Sep 2013: Wouter
5925	- MIN_TTL and MAX_TTL also in time_t.
5926	- tag 1.4.21rc1 made again.
5927
592826 Aug 2013: Wouter
5929	- More fixes for bug#519: for the threaded case test if the bg
5930	  thread has been killed, on ub_ctx_delete, to avoid hangs.
5931
593222 Aug 2013: Wouter
5933	- more fixes that I overlooked.
5934	- review fixes from Willem.
5935
593621 Aug 2013: Wouter
5937	- Fix#520: Errors found by static analysis from Tomas Hozza(redhat).
5938
593920 Aug 2013: Wouter
5940	- Fix for 2038, with time_t instead of uint32_t.
5941
594219 Aug 2013: Wouter
5943	- Fix#519 ub_ctx_delete may hang in some scenarios (libunbound).
5944
594514 Aug 2013: Wouter
5946	- Fix uninit variable in fix#516.
5947
59488 Aug 2013: Wouter
5949	- Fix#516 dnssec lameness detection for answers that are improper.
5950
595130 Jun 2013: Wouter
5952	- tag 1.4.21rc1
5953
595429 Jun 2013: Wouter
5955	- Fix#512 memleak in testcode for testbound (if it fails).
5956	- Fix#512 NSS returned arrays out of setup function to be statics.
5957
595826 Jun 2013: Wouter
5959	- max include of 100.000 files (depth and globbed at one time).
5960	  This is to preserve system memory in bug cases, or endless cases.
5961	- iana portlist updated.
5962
596319 Jun 2013: Wouter
5964	- streamtcp man page, contributed by Tomas Hozza.
5965	- iana portlist updated.
5966	- libunbound documentation on how to avoid openssl race conditions.
5967
596825 Jun 2013: Wouter
5969	- Squelch sendto-permission denied errors when the network is
5970	  not connected, to avoid spamming syslog.
5971	- configure --disable-flto option (from Robert Edmonds).
5972
597318 Jun 2013: Wouter
5974	- Fix for const string literals in C++ for libunbound, from Karel
5975	  Slany.
5976	- iana portlist updated.
5977
597817 Jun 2013: Wouter
5979	- Fixup manpage syntax.
5980
598114 Jun 2013: Wouter
5982	- get_option and set_option support for log-time-ascii, python-script
5983	  val-sig-skew-min and val-sig-skew-max.  log-time-ascii takes effect
5984	  immediately.  The others are mostly useful for libunbound users.
5985
598613 Jun 2013: Wouter
5987	- get_option, set_option, unbound-checkconf -o and libunbound
5988	  getoption and setoption support cache-min-ttl and cache-max-ttl.
5989
599010 Jun 2013: Wouter
5991	- Fix#501: forward-first does not recurse, when forward name is ".".
5992	- iana portlist update.
5993	- Max include depth is unlimited.
5994
599527 May 2013: Wouter
5996	- Update acx_pthreads.m4 to ax_pthreads.4 (2013-03-29), and apply
5997	  patch to it to not fail when -Werror is also specified, from the
5998	  autoconf-archives.
5999	- iana portlist update.
6000
600121 May 2013: Wouter
6002	- Explain bogus and secure flags in libunbound more.
6003
600416 May 2013: Wouter
6005	- Fix#499 use-after-free in out-of-memory handling code (thanks Jake
6006	  Montgomery).
6007	- Fix#500 use on non-initialised values on socket bind failures.
6008
600915 May 2013: Wouter
6010	- Fix round-robin doesn't work with some Windows clients (from Ilya
6011	  Bakulin).
6012
60133 May 2013: Wouter
6014	- update acx_nlnetlabs.m4 to v23, sleep w32 fix.
6015
601626 April 2013: Wouter
6017	- add unbound-control insecure_add and insecure_remove for the
6018	  administration of negative trust anchors.
6019
602025 April 2013: Wouter
6021	- Implement max-udp-size config option, default 4096 (thanks
6022	  Daisuke Higashi).
6023	- Robust checks on dname validity from rdata for dname compare.
6024	- updated iana portlist.
6025
602619 April 2013: Wouter
6027	- Fixup snprintf return value usage, fixed libunbound_get_option.
6028
602918 April 2013: Wouter
6030	- fix bug #491: pick program name (0th argument) as syslog identity.
6031	- own implementation of compat/snprintf.c.
6032
603315 April 2013: Wouter
6034	- Fix so that for a configuration line of include: "*.conf" it is not
6035	  an error if there are no files matching the glob pattern.
6036	- unbound-anchor review: BIO_write can return 0 successfully if it
6037	  has successfully appended a zero length string.
6038
603911 April 2013: Wouter
6040	- Fix queries leaking up for stubs and forwards, if the configured
6041	  nameservers all fail to answer.
6042
604310 April 2013: Wouter
6044	- code improve for minimal responses, small speed increase.
6045
60469 April 2013: Wouter
6047	- updated iana portlist.
6048	- Fix crash in previous private address fixup of 22 March.
6049
605028 March 2013: Wouter
6051	- Make reverse zones easier by documenting the nodefault statements
6052	  commented-out in the example config file.
6053
605426 March 2013: Wouter
6055	- more fixes to lookup3.c endianness detection.
6056
605725 March 2013: Wouter
6058	- #492: Fix endianness detection, revert to older lookup3.c detection
6059	  and put new detect lines after previous tests, to avoid regressions
6060	  but allow new detections to succeed.
6061	  And add detection for machine/endian.h to it.
6062
606322 March 2013: Wouter
6064	- Fix resolve of names that use a mix of public and private addresses.
6065	- iana portlist update.
6066	- Fix makedist for new svn for -d option.
6067	- unbound.h header file has UNBOUND_VERSION_MAJOR define.
6068	- Fix windows RSRC version for long version numbers.
6069
607021 March 2013: Wouter
6071	- release 1.4.20
6072	- trunk has 1.4.21
6073	- committed libunbound version 4:1:2 for binary API updated in 1.4.20
6074	- install copy of unbound-control.8 man page for unbound-control-setup
6075
607614 March 2013: Wouter
6077	- iana portlist update.
6078	- tag 1.4.20rc1
6079
608012 March 2013: Wouter
6081	- Fixup makedist.sh for windows compile.
6082
608311 March 2013: Wouter
6084	- iana portlist update.
6085	- testcode/ldns-testpkts.c check for makedist is informational.
6086
608715 February 2013: Wouter
6088	- fix defines in lookup3 for bigendian bsd alpha
6089
609011 February 2013: Wouter
6091	- Fixup openssl_thread init code to only run if compiled with SSL.
6092
60937 February 2013: Wouter
6094	- detect endianness in lookup3 on BSD.
6095	- add libunbound.ttl at end of result structure, version bump for
6096	  libunbound and binary backwards compatible, but 1.4.19 is not
6097	  forward compatible with 1.4.20.
6098	- update iana port list.
6099
610030 January 2013: Wouter
6101	- includes and have_ssl fixes for nss.
6102
610329 January 2013: Wouter
6104	- printout name of zone with duplicate fwd and hint errors.
6105
610628 January 2013: Wouter
6107	- updated fwd_zero for newer nc. Updated common.sh for newer netstat.
6108
610917 January 2013: Wouter
6110	- unbound-anchors checks the emailAddress of the signer of the
6111	  root.xml file, default is dnssec@iana.org.  It also checks that
6112	  the signer has the correct key usage for a digital signature.
6113	- update iana port list.
6114
61153 January 2013: Wouter
6116	- Test that unbound-control checks client credentials.
6117	- Test that unbound can handle a CNAME at an intermediate node in
6118	  the chain of trust (where it seeks a DS record).
6119	- Check the commonName of the signer of the root.xml file in
6120	  unbound-anchor, default is dnssec@iana.org.
6121
61222 January 2013: Wouter
6123	- Fix openssl lock free on exit (reported by Robert Fleischman).
6124	- iana portlist updated.
6125	- Tested that unbound implements the RFC5155 Technical Errata id 3441.
6126	  Unbound already implements insecure classification of an empty
6127	  nonterminal in NSEC3 optout zone.
6128
612920 December 2012: Wouter
6130	- Fix unbound-anchor xml parse of entity declarations for safety.
6131
613219 December 2012: Wouter
6133	- iana portlist updated.
6134
613518 December 2012: Wouter
6136	- iana portlist updated.
6137
613814 December 2012: Wouter
6139	- Change of D.ROOT-SERVERS.NET A address in default root hints.
6140
614112 December 2012: Wouter
6142	- 1.4.19 release.
6143	- trunk has 1.4.20 under development.
6144
61455 December 2012: Wouter
6146	- note support for AAAA RR type RFC.
6147
61484 December 2012: Wouter
6149	- 1.4.19rc1 tag.
6150
615130 November 2012: Wouter
6152	- bug 481: fix python example0.
6153	- iana portlist updated.
6154
615527 November 2012: Wouter
6156	- iana portlist updated.
6157
61589 November 2012: Wouter
6159	- Fix unbound-control forward disables configured stubs below it.
6160
61617 November 2012: Wouter
6162	- Fixup ldns-testpkts, identical to ldns/examples.
6163	- iana portlist updated.
6164
616530 October 2012: Wouter
6166	- Fix bug #477: unbound-anchor segfaults if EDNS is blocked.
6167
616829 October 2012: Matthijs
6169	- Fix validation for responses with both CNAME and wildcard
6170	  expanded CNAME records in answer section.
6171
61728 October 2012: Wouter
6173	- update ldns-testpkts.c to ldns 1.6.14 version.
6174	- fix build of pythonmod in objdir, for unbound.py.
6175	- make clean and makerealclean remove generated python and docs.
6176
61775 October 2012: Wouter
6178	- fix build of pythonmod in objdir (thanks Jakob Schlyter).
6179
61803 October 2012: Wouter
6181	- fix text in unbound-anchor man page.
6182
61831 October 2012: Wouter
6184	- ignore trusted-keys globs that have no files (from Paul Wouters).
6185
618627 September 2012: Wouter
6187	- include: directive in config file accepts wildcards.  Patch from
6188	  Paul Wouters.  Suggested use: include: "/etc/unbound.d/conf.d/*"
6189	- unbound-control -q option is quiet, patch from Mariano Absatz.
6190	- iana portlist updated.
6191	- updated contrib/unbound.spec, patch from Valentin Bud.
6192
619321 September 2012: Wouter
6194	- chdir to / after chroot call (suggested by Camiel Dobbelaar).
6195
619617 September 2012: Wouter
6197	- patch_rsamd5_enable.diff: this patch enables RSAMD5 validation
6198	  otherwise it is treated as insecure.  The RSAMD5 algorithm is
6199	  deprecated (RFC6725).  The MD5 hash is considered weak for some
6200	  purposes, if you want to sign your zone, then RSASHA256 is an
6201	  uncontested hash.
6202
620330 August 2012: Wouter
6204	- RFC6725 deprecates RSAMD5: this DNSKEY algorithm is disabled.
6205	- iana portlist updated.
6206
620729 August 2012: Wouter
6208	- Nicer comments outgoing-port-avoid, thanks Stu (bug #465).
6209
621022 August 2012: Wouter
6211	- Fallback to 1472 and 1232, one fragment size without headers.
6212
621321 August 2012: Wouter
6214	- Fix timeouts so that when a server has been offline for a while
6215	  and is probed to see it works, it becomes fully available for
6216	  server selection again.
6217
621817 August 2012: Wouter
6219	- Add documentation to libunbound for default nonuse of resolv.conf.
6220
62212 August 2012: Wouter
6222	- trunk has 1.4.19 under development (fixes from 1 aug and 31 july
6223	are for 1.4.19).
6224	- iana portlist updated.
6225
62261 August 2012: Wouter
6227	- Fix openssl race condition, initializes openssl locks, reported
6228	  by Einar Lonn and Patrik Wallstrom.
6229
623031 July 2012: Wouter
6231	- Improved forward-first and stub-first documentation.
6232	- Fix that enables modules to register twice for the same
6233	  serviced_query, without race conditions or administration issues.
6234	  This should not happen with the current codebase, but it is robust.
6235	- Fix forward-first option where it sets the RD flag wrongly.
6236	- added manpage links for libunbound calls (Thanks Paul Wouters).
6237
623830 July 2012: Wouter
6239	- tag 1.4.18rc2 (became 1.4.18 release at 2 august 2012).
6240
624127 July 2012: Wouter
6242	- unbound-host works with libNSS
6243	- fix bogus nodata cname chain not reported as bogus by validator,
6244	  (Thanks Peter van Dijk).
6245
624626 July 2012: Wouter
6247	- iana portlist updated.
6248	- tag 1.4.18rc1.
6249
625025 July 2012: Wouter
6251	- review fix for libnss, check hash prefix allocation size.
6252
625323 July 2012: Wouter
6254	- fix missing break for GOST DS hash function.
6255	- implemented forward_first for the root.
6256
625720 July 2012: Wouter
6258	- Fix bug#452 and another assertion failure in mesh.c, makes
6259	  assertions in mesh.c resist duplicates.  Fixes DS NS search to
6260	  not generate duplicate sub queries.
6261
626219 July 2012: Willem
6263	- Fix bug#454: Remove ACX_CHECK_COMPILER_FLAG from configure.ac,
6264	  if CFLAGS is specified at configure time then '-g -O2' is not
6265	  appended to CFLAGS, so that the user can override them.
6266
626718 July 2012: Willem
6268	- Fix libunbound report of errors when in background mode.
6269
627011 July 2012: Willem
6271	- updated iana ports list.
6272
62739 July 2012: Willem
6274	- Add flush_bogus option for unbound-control
6275
62766 July 2012: Wouter
6277	- Fix validation of qtype DS queries that result in no data for
6278	  non-optout NSEC3 zones.
6279
62804 July 2012: Wouter
6281	- compile libunbound with libnss on Suse, passes regression tests.
6282
62833 July 2012: Wouter
6284	- FIPS_mode openssl does not use arc4random but RAND_pseudo_bytes.
6285
62862 July 2012: Wouter
6287	- updated iana ports list.
6288
628929 June 2012: Wouter
6290	- patch for unbound_munin_ script to handle arbitrary thread count by
6291	  Sven Ulland.
6292
629328 June 2012: Wouter
6294	- detect if openssl has FIPS_mode.
6295	- code review: return value of cache_store can be ignored for better
6296	  performance in out of memory conditions.
6297	- fix edns-buffer-size and msg-buffer-size manpage documentation.
6298	- updated iana ports list.
6299
630025 June 2012: Wouter
6301	- disable RSAMD5 if in FIPS mode (for openssl and for libnss).
6302
630322 June 2012: Wouter
6304	- implement DS records, NSEC3 and ECDSA for compile with libnss.
6305
630621 June 2012: Wouter
6307	- fix error handling of alloc failure during rrsig verification.
6308	- nss check for verification failure.
6309	- nss crypto works for RSA and DSA.
6310
631120 June 2012: Wouter
6312	- work on --with-nss build option (for now, --with-libunbound-only).
6313
631419 June 2012: Wouter
6315	- --with-libunbound-only build option, only builds the library and
6316	  not the daemon and other tools.
6317
631818 June 2012: Wouter
6319	- code review.
6320
632115 June 2012: Wouter
6322	- implement log-time-ascii on windows.
6323	- The key-cache bad key ttl is now 60 seconds.
6324	- updated iana ports list.
6325	- code review.
6326
632711 June 2012: Wouter
6328	- bug #452: fix crash on assert in mesh_state_attachment.
6329
633030 May 2012: Wouter
6331	- silence warning from swig-generated code (md set but not used in
6332	  swig initmodule, due to ifdefs in swig-generated code).
6333
633427 May 2012: Wouter
6335	- Fix debian-bugs-658021: Please enable hardened build flags.
6336
633725 May 2012: Wouter
6338	- updated iana ports list.
6339
634024 May 2012: Wouter
6341	- tag for 1.4.17 release.
6342	- trunk is 1.4.18 in development.
6343
634418 May 2012: Wouter
6345	- Review comments, removed duplicate memset to zero in delegpt.
6346
634716 May 2012: Wouter
6348	- Updated doc/FEATURES with RFCs that are implemented but not listed.
6349	- Protect if statements in val_anchor for compile without locks.
6350	- tag for 1.4.17rc1.
6351
635215 May 2012: Wouter
6353	- fix configure ECDSA support in ldns detection for windows compile.
6354	- fix possible uninitialised variable in windows pipe implementation.
6355
63569 May 2012: Wouter
6357	- Fix alignment problem in util/random on sparc64/freebsd.
6358
63598 May 2012: Wouter
6360	- Fix for accept spinning reported by OpenBSD.
6361	- iana portlist updated.
6362
63632 May 2012: Wouter
6364	- Fix validation of nodata for DS query in NSEC zones, reported by
6365	  Ondrej Mikle.
6366
636713 April 2012: Wouter
6368	- ECDSA support (RFC 6605) by default. Use --disable-ecdsa for older
6369	  openssl.
6370
637110 April 2012: Wouter
6372	- Applied patch from Daisuke HIGASHI for rrset-roundrobin and
6373	  minimal-responses features.
6374	- iana portlist updated.
6375
63765 April 2012: Wouter
6377	- fix bug #443: --with-chroot-dir not honoured by configure.
6378	- fix bug #444: setusercontext was called too late (thanks Bjorn
6379	  Ketelaars).
6380
638127 March 2012: Wouter
6382	- fix bug #442: Fix that Makefile depends on pythonmod headers
6383	  even using --without-pythonmodule.
6384
638522 March 2012: Wouter
6386	- contrib/validation-reporter follows rotated log file (patch from
6387	  Augie Schwer).
6388
638921 March 2012: Wouter
6390	- new approach to NS fetches for DS lookup that works with
6391	  cornercases, and is more robust and considers forwarders.
6392
639319 March 2012: Wouter
6394	- iana portlist updated.
6395	- fix to locate nameservers for DS lookup with NS fetches.
6396
639716 March 2012: Wouter
6398	- Patch for access to full DNS packet data in unbound python module
6399	  from Ondrej Mikle.
6400
64019 March 2012: Wouter
6402	- Applied line-buffer patch from Augie Schwer to validation.reporter.sh.
6403
64042 March 2012: Wouter
6405	- flush_infra cleans timeouted servers from the cache too.
6406	- removed warning from --enable-ecdsa.
6407
64081 March 2012: Wouter
6409	- forward-first option.  Tries without forward if a query fails.
6410	  Also stub-first option that is similar.
6411
641228 February 2012: Wouter
6413	- Fix from code review, if EINPROGRESS not defined chain if statement
6414	  differently.
6415
641627 February 2012: Wouter
6417	- Fix bug#434: on windows check registry for config file location
6418	  for unbound-control.exe, and unbound-checkconf.exe.
6419
642023 February 2012: Wouter
6421	- Fix to squelch 'network unreachable' errors from tcp connect in
6422	  logs, high verbosity will show them.
6423
642416 February 2012: Wouter
6425	- iter_hints is now thread-owned in module env, and thus threadsafe.
6426	- Fix prefetch and sticky NS, now the prefetch works.  It picks
6427	  nameservers that 'would be valid in the future', and if this makes
6428	  the NS timeout, it updates that NS by asking delegation from the
6429	  parent again.  If child NS has longer TTL, that TTL does not get
6430	  refreshed from the lookup to the child nameserver.
6431
643215 February 2012: Wouter
6433	- Fix forward-zone memory, uses malloc and frees original root dp.
6434	- iter hints (stubs) uses malloc inside for more dynamicity.
6435	- unbound-control forward_add, forward_remove, stub_add, stub_remove
6436	  can modify stubs and forwards for running unbound (on mobile computer)
6437	  they can also add and remove domain-insecure for the zone.
6438
643914 February 2012: Wouter
6440	- Fix sticky NS (ghost domain problem) if prefetch is yes.
6441	- iter forwards uses malloc inside for more dynamicity.
6442
644313 February 2012: Wouter
6444	- RT#2955. Fix for cygwin compilation.
6445	- iana portlist updated.
6446
644710 February 2012: Wouter
6448	- Slightly smaller critical region in one case in infra cache.
6449	- Fix timeouts to keep track of query type, A, AAAA and other, if
6450	  another has caused timeout blacklist, different type can still probe.
6451	- unit test fix for nomem_cnametopos.rpl race condition.
6452
64539 February 2012: Wouter
6454	- Fix AHX_BROKEN_MEMCMP for autoheader mess up of #undef in config.h.
6455
64568 February 2012: Wouter
6457	- implement draft-ietf-dnsext-ecdsa-04; which is in IETF LC; This
6458	  implementation is experimental at this time and not recommended
6459	  for use on the public internet (the protocol numbers have not
6460	  been assigned).  Needs recent ldns with --enable-ecdsa.
6461	- fix memory leak in errorcase for DSA signatures.
6462	- iana portlist updated.
6463	- workaround for openssl 0.9.8 ecdsa sha2 and evp problem.
6464
64653 February 2012: Wouter
6466	- fix for windows, rename() is not posix compliant on windows.
6467
64682 February 2012: Wouter
6469	- 1.4.16 release tag.
6470	- svn trunk is 1.4.17 in development.
6471	- iana portlist updated.
6472
64731 February 2012: Wouter
6474	- Fix validation failures (like: validation failure xx: no NSEC3
6475	  closest encloser from yy for DS zz. while building chain of trust,
6476	  because of a bug in the TTL-fix in 1.4.15, it picked the wrong rdata
6477	  for an NSEC3.  Now it does not change rdata, and fixes TTL.
6478
647930 January 2012: Wouter
6480	- Fix version-number in libtool to be version-info so it produces
6481	  libunbound.so.2 like it should.
6482
648326 January 2012: Wouter
6484	- Tag 1.4.15 (same as 1.4.15rc1), for 1.4.15 release.
6485	- trunk 1.4.16; includes changes memset testcode, #424 openindiana,
6486	  and keyfile write fixup.
6487	- applied patch to support outgoing-interface with ub_ctx_set_option.
6488
648923 January 2012: Wouter
6490	- Fix memset in test code.
6491
649220 January 2012: Wouter
6493	- Fix bug #424: compile on OpenIndiana OS with gcc 4.6.2.
6494
649519 January 2012: Wouter
6496	- Fix to write key files completely to a temporary file, and if that
6497	  succeeds, replace the real key file.  So failures leave a useful file.
6498
649918 January 2012: Wouter
6500	- tag 1.4.15rc1 created
6501	- updated libunbound/ubsyms.def and remade tag 1.4.15rc1.
6502
650317 January 2012: Wouter
6504	- Fix bug where canonical_compare of RRSIG did not downcase the
6505	  signer-name.  This is mostly harmless because RRSIGs do not have
6506	  to be sorted in canonical order, usually.
6507
650812 January 2012: Wouter
6509	- bug#428: add ub_version() call to libunbound.  API version increase,
6510	  with (binary) backwards compatibility for the previous version.
6511
651210 January 2012: Wouter
6513	- Fix bug #425: unbound reports wrong TTL in reply, it reports a TTL
6514	  that would be permissible by the RFCs but it is not the TTL in the
6515	  cache.
6516	- iana portlist updated.
6517	- uninitialised variable in reprobe for rtt blocked domains fixed.
6518	- lintfix and new flex output.
6519
65202 January 2012: Wouter
6521	- Fix to randomize hash function, based on 28c3 congress, reported
6522	  by Peter van Dijk.
6523
652424 December 2011: Wouter
6525	- Fix for memory leak (about 20 bytes when a tcp or udp send operation
6526	  towards authority servers failed, takes about 50.000 such failures to
6527	  leak one Mb, such failures are also usually logged), reported by
6528	  Robert Fleischmann.
6529	- iana portlist updated.
6530
653119 December 2011: Wouter
6532	- Fix for VU#209659 CVE-2011-4528: Unbound denial of service
6533	  vulnerabilities from nonstandard redirection and denial of existence
6534	  http://www.unbound.net/downloads/CVE-2011-4528.txt
6535	- robust checks for next-closer NSEC3s.
6536	- tag 1.4.14 created.
6537	- trunk has 1.4.15 in development.
6538
653915 December 2011: Wouter
6540	- remove uninit warning from cachedump code.
6541	- Fix parse error on negative SOA RRSIGs if badly ordered in the packet.
6542
654313 December 2011: Wouter
6544	- iana portlist updated.
6545	- svn tag 1.4.14rc1
6546	- fix infra cache comparison.
6547	- Fix to constrain signer_name to be a parent of the lookupname.
6548
65495 December 2011: Wouter
6550	- Fix getaddrinfowithincludes on windows with fedora16 mingw32-gcc.
6551	- Fix warnings with gcc 4.6 in compat/inet_ntop.c.
6552	- Fix warning unused in compat/strptime.c.
6553	- Fix malloc detection and double definition.
6554
65552 December 2011: Wouter
6556	- configure generated with autoconf 2.68.
6557
655830 November 2011: Wouter
6559	- Fix for tcp-upstream and ssl-upstream for if a laptop sleeps, causes
6560	  SERVFAILs.  Also fixed for UDP (but less likely).
6561
656228 November 2011: Wouter
6563	- Fix quartile time estimate, it was too low, (thanks Jan Komissar).
6564	- iana ports updated.
6565
656611 November 2011: Wouter
6567	- Makefile compat with SunOS make, BSD make and GNU make.
6568	- iana ports updated.
6569
657010 November 2011: Wouter
6571	- Makefile changed for BSD make compatibility.
6572
65739 November 2011: Wouter
6574	- added unit test for SSL service and SSL-upstream.
6575
65768 November 2011: Wouter
6577	- can configure ssl service to one port number, and not on others.
6578	- fixup windows compile with ssl support.
6579	- Fix double free in unbound-host, reported by Steve Grubb.
6580	- iana portlist updated.
6581
65821 November 2011: Wouter
6583	- dns over ssl support as a client, ssl-upstream yes turns it on.
6584	  It performs an SSL transaction for every DNS query (250 msec).
6585	- documentation for new options: ssl-upstream, ssl-service-key and
6586	  ssl-service.pem.
6587	- iana portlist updated.
6588	- fix -flto detection on Lion for llvm-gcc.
6589
659031 October 2011: Wouter
6591	- dns over ssl support, ssl-service-pem and ssl-service-key files
6592	  can be given and then TCP queries are serviced wrapped in SSL.
6593
659427 October 2011: Wouter
6595	- lame-ttl and lame-size options no longer exist, it is integrated
6596	  with the host info.  They are ignored (with verbose warning) if
6597	  encountered to keep the config file backwards compatible.
6598	- fix iana-update for changing gzip compression of results.
6599	- fix export-all-symbols on OSX.
6600
660126 October 2011: Wouter
6602	- iana portlist updated.
6603	- Infra cache stores information about ping and lameness per IP, zone.
6604	  This fixes bug #416.
6605	- fix iana_update target for gzipped file on iana site.
6606
660724 October 2011: Wouter
6608	- Fix resolve of partners.extranet.microsoft.com with a fix for the
6609	  server selection for choosing out of a (particular) list of bad
6610	  choices. (bug#415)
6611	- Fix make_new_space function so that the incoming query is not
6612	  overwritten if a jostled out query causes a waiting query to be
6613	  resumed that then fails and sends an error message.  (Thanks to
6614	  Matthew Lee).
6615
661621 October 2011: Wouter
6617	- fix --enable-allsymbols, fptr wlist is disabled on windows with this
6618	  option enabled because of memory layout exe vs dll.
6619
662019 October 2011: Wouter
6621	- fix unbound-anchor for broken strptime on OSX lion, detected
6622	  in configure.
6623	- Detect if GOST really works, openssl1.0 on OSX fails.
6624	- Implement ipv6%interface notation for scope_id usage.
6625
662617 October 2011: Wouter
6627	- better documentation for inform_super (Thanks Yang Zhe).
6628
662914 October 2011: Wouter
6630	- Fix for out-of-memory condition in libunbound (thanks
6631	  Robert Fleischman).
6632
663313 October 2011: Wouter
6634	- Fix --enable-allsymbols, it depended on link specifics of the
6635	  target platform, or fptr_wlist assertion failures could occur.
6636
663712 October 2011: Wouter
6638	- updated contrib/unbound_munin_ to family=auto so that it works with
6639	  munin-node-configure automatically (if installed as
6640	  /usr/local/share/munin/plugins/unbound_munin_ ).
6641
664227 September 2011: Wouter
6643	- unbound.exe -w windows option for start and stop service.
6644
664523 September 2011: Wouter
6646	- TCP-upstream calculates tcp-ping so server selection works if there
6647	  are alternatives.
6648
664920 September 2011: Wouter
6650	- Fix classification of NS set in answer section, where there is a
6651	  parent-child server, and the answer has the AA flag for dir.slb.com.
6652	  Thanks to Amanda Constant from Secure64.
6653
665416 September 2011: Wouter
6655	- fix bug #408: accept patch from Steve Snyder that comments out
6656	  unused functions in lookup3.c.
6657	- iana portlist updated.
6658	- fix EDNS1480 change memleak and TCP fallback.
6659	- fix various compiler warnings (reported by Paul Wouters).
6660	- max sent count.  EDNS1480 only for rtt < 5000.  No promiscuous
6661	  fetch if sentcount > 3, stop query if sentcount > 16.  Count is
6662	  reset when referral or CNAME happens.  This makes unbound better
6663	  at managing large NS sets, they are explored when there is continued
6664	  interest (in the form of queries).
6665
666615 September 2011: Wouter
6667	- release 1.4.13.
6668	- trunk contains 1.4.14 in development.
6669	- Unbound probes at EDNS1480 if there an EDNS0 timeout.
6670
667112 September 2011: Wouter
6672	- Reverted dns EDNS backoff fix, it did not help and needs
6673	  fragmentation fixes instead.
6674	- tag 1.4.13rc2
6675
66767 September 2011: Wouter
6677	- Fix operation in ipv6 only (do-ip4: no) mode.
6678
66796 September 2011: Wouter
6680	- fedora specfile updated.
6681
66825 September 2011: Wouter
6683	- tag 1.4.13rc1
6684
66852 September 2011: Wouter
6686	- iana portlist updated.
6687
668826 August 2011: Wouter
6689	- Fix num-threads 0 does not segfault, reported by Simon Deziel.
6690	- Fix validation failures due to EDNS backoff retries, the retry
6691	  for fetch of data has want_dnssec because the iter_indicate_dnssec
6692	  function returns true when validation failure retry happens, and
6693	  then the serviced query code does not fallback to noEDNS, even if
6694	  the cache says it has this.  This helps for DLV deployment when
6695	  the DNSSEC status is not known for sure before the lookup concludes.
6696
669724 August 2011: Wouter
6698	- Applied patch from Karel Slany that fixes a memory leak in the
6699	  unbound python module, in string conversions.
6700
670122 August 2011: Wouter
6702	- Fix validation of qtype ANY responses with CNAMEs (thanks Cathy
6703	  Zhang and Luo Ce).  Unbound responds with the RR types that are
6704	  available at the name for qtype ANY and validates those RR types.
6705	  It does not test for completeness (i.e. with NSEC or NSEC3 query),
6706	  and it does not follow the CNAME or DNAME to another name (with
6707	  even more data for the already large response).
6708	- Fix that internally, CNAMEs with NXDOMAIN have that as rcode.
6709	- Documented the options that work with control set_option command.
6710	- tcp-upstream yes/no option (works with set_option) for tunnels.
6711
671218 August 2011: Wouter
6713	- fix autoconf call in makedist crosscompile to RC or snapshot.
6714
671517 August 2011: Wouter
6716	- Fix validation of . DS query.
6717	- new xml format at IANA, new awk for iana_update.
6718	- iana portlist updated.
6719
672010 August 2011: Wouter
6721	- Fix python site-packages path to /usr/lib64.
6722	- updated patch from Tom.
6723	- fix memory and fd leak after out-of-memory condition.
6724
67259 August 2011: Wouter
6726	- patch from Tom Hendrikx fixes load of python modules.
6727
67288 August 2011: Wouter
6729	- make clean had ldns-src reference, removed.
6730
67311 August 2011: Wouter
6732	- Fix autoconf 2.68 warnings
6733
673414 July 2011: Wouter
6735	- Unbound implements RFC6303 (since version 1.4.7).
6736	- tag 1.4.12rc1 is released as 1.4.12 (without the other fixes in the
6737	  meantime, those are for 1.4.13).
6738	- iana portlist updated.
6739
674013 July 2011: Wouter
6741	- Quick fix for contrib/unbound.spec example, no ldns-builtin any more.
6742
674311 July 2011: Wouter
6744	- Fix wildcard expansion no-data reply under an optout NSEC3 zone is
6745	  validated as insecure, reported by Jia Li (lijia@cnnic.cn).
6746
67474 July 2011: Wouter
6748	- 1.4.12rc1 tag created.
6749
67501 July 2011: Wouter
6751	- version number in example config file.
6752	- fix that --enable-static-exe does not complain about it unknown.
6753
675430 June 2011: Wouter
6755	- tag relase 1.4.11, trunk is 1.4.12 development.
6756	- iana portlist updated.
6757	- fix bug#395: id bits of other query may leak out under conditions
6758	- fix replyaddr count wrong after jostled queries, which leads to
6759	  eventual starvation where the daemon has no replyaddrs left to use.
6760	- fix comment about rndc port, that referred to the old port number.
6761	- fix that the listening socket is not closed when too many remote
6762	  control connections are made at the same time.
6763	- removed ldns-src tarball inside the unbound tarball.
6764
676523 June 2011: Wouter
6766	- Changed -flto check to support clang compiler.
6767	- tag 1.4.11rc3 created.
6768
676917 June 2011: Wouter
6770	- tag 1.4.11rc1 created.
6771	- remove warning about signed/unsigned from flex (other flex version).
6772	- updated aclocal.m4 and libtool to match.
6773	- tag 1.4.11rc2 created.
6774
677516 June 2011: Wouter
6776	- log-queries: yesno option, default is no, prints querylog.
6777	- version is 1.4.11.
6778
677914 June 2011: Wouter
6780	- Use -flto compiler flag for link time optimization, if supported.
6781	- iana portlist updated.
6782
678312 June 2011: Wouter
6784	- IPv6 service address for d.root-servers.net (2001:500:2D::D).
6785
678610 June 2011: Wouter
6787	- unbound-control has version number in the header,
6788	  UBCT[version]_space_ is the header sent by the client now.
6789	- Unbound control port number is registered with IANA:
6790	  ub-dns-control  8953/tcp    unbound dns nameserver control
6791	  This is the new default for the control-port config setting.
6792	- statistics-interval prints the number of jostled queries to log.
6793
679430 May 2011: Wouter
6795	- Fix Makefile for U in environment, since wrong U is more common than
6796	  deansification necessity.
6797	- iana portlist updated.
6798	- updated ldns tarball to 1.6.10rc2 snapshot of today.
6799
680025 May 2011: Wouter
6801	- Fix assertion failure when unbound generates an empty error reply
6802	  in response to a query, CVE-2011-1922 VU#531342.
6803	- This fix is in tag 1.4.10.
6804	- defense in depth against the above bug, an error is printed to log
6805	  instead of an assertion failure.
6806
680710 May 2011: Wouter
6808	- bug#386: --enable-allsymbols option links all binaries to libunbound
6809	  and reduces install size significantly.
6810	- feature, ignore-cd-flag: yesno to provide dnssec to legacy servers.
6811	- iana portlist updated.
6812	- Fix TTL of SOA so negative TTL is separately cached from normal TTL.
6813
681414 April 2011: Wouter
6815	- configure created with newer autoconf 2.66.
6816
681712 April 2011: Wouter
6818	- bug#378: Fix that configure checks for ldns_get_random presence.
6819
68208 April 2011: Wouter
6821	- iana portlist updated.
6822	- queries with CD flag set cause DNSSEC validation, but the answer is
6823	  not withheld if it is bogus.  Thus, unbound will retry if it is bad
6824	  and curb the TTL if it is bad, thus protecting the cache for use by
6825	  downstream validators.
6826	- val-override-date: -1 ignores dates entirely, for NTP usage.
6827
682829 March 2011: Wouter
6829	- harden-below-nxdomain: changed so that it activates when the
6830	  cached nxdomain is dnssec secure.  This avoids backwards
6831	  incompatibility because those old servers do not have dnssec.
6832
683324 March 2011: Wouter
6834	- iana portlist updated.
6835	- release 1.4.9.
6836	- trunk is 1.5.0
6837
683817 March 2011: Wouter
6839	- bug#370: new unbound.spec for CentOS 5.x from Harold Jones.
6840	  Applied but did not do the --disable-gost.
6841
684210 March 2011: Wouter
6843	- tag 1.4.9 release candidate 1 created.
6844
68453 March 2011: Wouter
6846	- updated ldns to today.
6847
68481 March 2011: Wouter
6849	- Fix no ADflag for NXDOMAIN in NSEC3 optout. And wildcard in optout.
6850	- give config parse error for multiple names on a stub or forward zone.
6851	- updated ldns tarball to 1.6.9(todays snapshot).
6852
685324 February 2011: Wouter
6854	- bug #361: Fix, time.elapsed variable not reset with stats_noreset.
6855
685623 February 2011: Wouter
6857	- iana portlist updated.
6858	- common.sh to version 3.
6859
686018 February 2011: Wouter
6861	- common.sh in testdata updated to version 2.
6862
686315 February 2011: Wouter
6864	- Added explicit note on unbound-anchor usage:
6865	  Please note usage of unbound-anchor root anchor is at your own risk
6866	  and under the terms of our LICENSE (see that file in the source).
6867
686811 February 2011: Wouter
6869	- iana portlist updated.
6870	- tpkg updated with common.sh for common functionality.
6871
68727 February 2011: Wouter
6873	- Added regression test for addition of a .net DS to the root, and
6874	  cache effects with different TTL for glue and DNSKEY.
6875	- iana portlist updated.
6876
687728 January 2011: Wouter
6878	- Fix remove private address does not throw away entire response.
6879
688024 January 2011: Wouter
6881	- release 1.4.8
6882
688319 January 2011: Wouter
6884	- fix bug#349: no -L/usr for ldns.
6885
688618 January 2011: Wouter
6887	- ldns 1.6.8 tarball included.
6888	- release 1.4.8rc1.
6889
689017 January 2011: Wouter
6891	- add get and set option for harden-below-nxdomain feature.
6892	- iana portlist updated.
6893
689414 January 2011: Wouter
6895	- Fix so a changed NS RRset does not get moved name stuck on old
6896	  server, for type NS the TTL is not increased.
6897
689813 January 2011: Wouter
6899	- Fix prefetch so it does not get stuck on old server for moved names.
6900
690112 January 2011: Wouter
6902	- iana portlist updated.
6903
690411 January 2011: Wouter
6905	- Fix insecure CNAME sequence marked as secure, reported by Bert
6906	  Hubert.
6907
690810 January 2011: Wouter
6909	- faster lruhash get_mem routine.
6910
69114 January 2011: Wouter
6912	- bug#346: remove ITAR scripts from contrib, the service is discontinued, use the root.
6913	- iana portlist updated.
6914
691523 December 2010: Wouter
6916	- Fix in infra cache that could cause rto larger than TOP_TIMEOUT kept.
6917
691821 December 2010: Wouter
6919	- algorithm compromise protection using the algorithms signalled in
6920	  the DS record.  Also, trust anchors, DLV, and RFC5011 receive this,
6921	  and thus, if you have multiple algorithms in your trust-anchor-file
6922	  then it will now behave different than before.  Also, 5011 rollover
6923	  for algorithms needs to be double-signature until the old algorithm
6924	  is revoked.
6925	  It is not an option, because I see no use to turn the security off.
6926	- iana portlist updated.
6927
692817 December 2010: Wouter
6929	- squelch 'tcp connect: bla' in logfile, (set verbosity 2 to see them).
6930	- fix validation in this case: CNAME to nodata for co-hosted opt-in
6931	  NSEC3 insecure delegation, was bogus, fixed to be insecure.
6932
693316 December 2010: Wouter
6934	- Fix our 'BDS' license (typo reported by Xavier Belanger).
6935
693610 December 2010: Wouter
6937	- iana portlist updated.
6938	- review changes for unbound-anchor.
6939
69402 December 2010: Wouter
6941	- feature typetransparent localzone, does not block other RR types.
6942
69431 December 2010: Wouter
6944	- Fix bug#338: print address when socket creation fails.
6945
694630 November 2010: Wouter
6947	- Fix storage of EDNS failures in the infra cache.
6948	- iana portlist updated.
6949
695018 November 2010: Wouter
6951	- harden-below-nxdomain option, default off (because very old
6952	  software may be incompatible).  We could enable it by default in
6953	  the future.
6954
695517 November 2010: Wouter
6956	- implement draft-vixie-dnsext-resimprove-00, we stop on NXDOMAIN.
6957	- make test output nicer.
6958
695915 November 2010: Wouter
6960	- silence 'tcp connect: broken pipe' and 'net down' at low verbosity.
6961	- iana portlist updated.
6962	- so-sndbuf option for very busy servers, a bit like so-rcvbuf.
6963
69649 November 2010: Wouter
6965	- unbound-anchor compiles with openssl 0.9.7.
6966
69678 November 2010: Wouter
6968	- release tag 1.4.7.
6969	- trunk is version 1.4.8.
6970	- Be lenient and accept imgw.pl malformed packet (like BIND).
6971
69725 November 2010: Wouter
6973	- do not synthesize a CNAME message from cache for qtype DS.
6974
69754 November 2010: Wouter
6976	- Use central entropy to seed threads.
6977
69783 November 2010: Wouter
6979	- Change the rtt used to probe EDNS-timeout hosts to 1000 msec.
6980
69812 November 2010: Wouter
6982	- tag 1.4.7rc1.
6983	- code review.
6984
69851 November 2010: Wouter
6986	- GOST code enabled by default (RFC 5933).
6987
698827 October 2010: Wouter
6989	- Fix uninit value in dump_infra print.
6990	- Fix validation failure for parent and child on same server with an
6991	  insecure childzone and a CNAME from parent to child.
6992	- Configure detects libev-4.00.
6993
699426 October 2010: Wouter
6995	- dump_infra and flush_infra commands for unbound-control.
6996	- no timeout backoff if meanwhile a query succeeded.
6997	- Change of timeout code.  No more lost and backoff in blockage.
6998	  At 12sec timeout (and at least 2x lost before) one probe per IP
6999	  is allowed only.  At 120sec, the IP is blocked.  After 15min, a
7000	  120sec entry has a single retry packet.
7001
700225 October 2010: Wouter
7003	- Configure errors if ldns is not found.
7004
700522 October 2010: Wouter
7006	- Windows 7 fix for the installer.
7007
700821 October 2010: Wouter
7009	- Fix bug where fallback_tcp causes wrong roundtrip and edns
7010	  observation to be noted in cache.  Fix bug where EDNSprobe halted
7011	  exponential backoff if EDNS status unknown.
7012	- new unresponsive host method, exponentially increasing block backoff.
7013	- iana portlist updated.
7014
701520 October 2010: Wouter
7016	- interface automatic works for some people with ip6 disabled.
7017	  Therefore the error check is removed, so they can use the option.
7018
701919 October 2010: Wouter
7020	- Fix for request list growth, if a server has long timeout but the
7021	  lost counter is low, then its effective rtt is the one without
7022	  exponential backoff applied.  Because the backoff is not working.
7023	  The lost counter can then increase and the server is blacklisted,
7024	  or the lost counter does not increase and the server is working
7025	  for some queries.
7026
702718 October 2010: Wouter
7028	- iana portlist updated.
7029
703013 October 2010: Wouter
7031	- Fix TCP so it uses a random outgoing-interface.
7032	- unbound-anchor handles ADDPEND keystate.
7033
703411 October 2010: Wouter
7035	- Fix bug when DLV below a trust-anchor that uses NSEC3 optout where
7036	  the zone has a secure delegation hosted on the same server did not
7037	  verify as secure (it was insecure by mistake).
7038	- iana portlist updated.
7039	- ldns tarball updated (for reading cachedumps with bad RR data).
7040
70411 October 2010: Wouter
7042	- test for unbound-anchor. fix for reading certs.
7043	- Fix alloc_reg_release for longer uptime in out of memory conditions.
7044
704528 September 2010: Wouter
7046	- unbound-anchor working, it creates or updates a root.key file.
7047	  Use it before you start the validator (e.g. at system boot time).
7048
704927 September 2010: Wouter
7050	- iana portlist updated.
7051
705224 September 2010: Wouter
7053	- bug#329: in example.conf show correct ipv4 link-local 169.254/16.
7054
705523 September 2010: Wouter
7056	- unbound-anchor app, unbound requires libexpat (xml parser library).
7057
705822 September 2010: Wouter
7059	- compliance with draft-ietf-dnsop-default-local-zones-14, removed
7060	  reverse ipv6 orchid prefix from builtin list.
7061	- iana portlist updated.
7062
706317 September 2010: Wouter
7064	- DLV has downgrade protection again, because the RFC says so.
7065	- iana portlist updated.
7066
706716 September 2010: Wouter
7068	- Algorithm rollover operational reality intrudes, for trust-anchor,
7069	  5011-store, and DLV-anchor if one key matches it's good enough.
7070	- iana portlist updated.
7071	- Fix reported validation error in out of memory condition.
7072
707315 September 2010: Wouter
7074	- Abide RFC5155 section 9.2: no AD flag for replies with NSEC3 optout.
7075
707614 September 2010: Wouter
7077	- increased mesh-max-activation from 1000 to 3000 for crazy domains
7078	  like _tcp.slb.com with 262 servers.
7079	- iana portlist updated.
7080
708113 September 2010: Wouter
7082	- bug#327: Fix for cannot access stub zones until the root is primed.
7083
70849 September 2010: Wouter
7085	- unresponsive servers are not completely blacklisted (because of
7086	  firewalls), but also not probed all the time (because of the request
7087	  list size it generates).  The probe rate is 1%.
7088	- iana portlist updated.
7089
709020 August 2010: Wouter
7091	- openbsd-lint fixes: acl_list_get_mem used if debug-alloc enabled.
7092	  iterator get_mem includes priv_get_mem.  delegpt nodup removed.
7093	  listen_pushback, query_info_allocqname, write_socket, send_packet,
7094	  comm_point_set_cb_arg and listen_resume removed.
7095
709619 August 2010: Wouter
7097	- Fix bug#321: resolution of rs.ripe.net artifacts with 0x20.
7098	  Delegpt structures checked for duplicates always.
7099	  No more nameserver lookups generated when depth is full anyway.
7100	- example.conf notes how to do DNSSEC validation and track the root.
7101	- iana portlist updated.
7102
710318 August 2010: Wouter
7104	- Fix bug#322: configure does not respect CFLAGS on Solaris.
7105	  Pass CFLAGS="-xO4 -xtarget=generic" on the configure command line
7106	  if use sun-cc, but some systems need different flags.
7107
710816 August 2010: Wouter
7109	- Fix acx_nlnetlabs.m4 configure output for autoconf-2.66 AS_TR_CPP
7110	  changes, uses m4_bpatsubst now.
7111	- make test (or make check) should be more portable and run the unit
7112	  test and testbound scripts. (make longtest has special requirements).
7113
711413 August 2010: Wouter
7115	- More pleasant remote control command parsing.
7116	- documentation added for return values reported by doxygen 1.7.1.
7117	- iana portlist updated.
7118
71199 August 2010: Wouter
7120	- Fix name of rrset printed that failed validation.
7121
71225 August 2010: Wouter
7123	- Return NXDOMAIN after chain of CNAMEs ends at name-not-found.
7124
71254 August 2010: Wouter
7126	- Fix validation in case a trust anchor enters into a zone with
7127	  unsupported algorithms.
7128
71293 August 2010: Wouter
7130	- updated ldns tarball with bugfixes.
7131	- release tag 1.4.6.
7132	- trunk becomes 1.4.7 develop.
7133	- iana portlist updated.
7134
713522 July 2010: Wouter
7136	- more error details on failed remote control connection.
7137
713815 July 2010: Wouter
7139	- rlimit adjustments for select and ulimit can happen at the same time.
7140
714114 July 2010: Wouter
7142	- Donation text added to README.
7143	- Fix integer underflow in prefetch ttl creation from cache.  This
7144	  fixes a potential negative prefetch ttl.
7145
714612 July 2010: Wouter
7147	- Changed the defaults for num-queries-per-thread/outgoing-range.
7148	  For builtin-select: 512/960, for libevent 1024/4096 and for
7149	  windows 24/48 (because of win api).  This makes the ratio this way
7150	  to improve resilience under heavy load.  For high performance, use
7151	  libevent and possibly higher numbers.
7152
715310 July 2010: Wouter
7154	- GOST enabled if SSL is recent and ldns has GOST enabled too.
7155	- ldns tarball updated.
7156
71579 July 2010: Wouter
7158	- iana portlist updated.
7159	- Fix validation of qtype DNSKEY when a key-cache entry exists but
7160	  no rr-cache entry is used (it expired or prefetch), it then goes
7161	  back up to the DS or trust-anchor to validate the DNSKEY.
7162
71637 July 2010: Wouter
7164	- Neat function prototypes, unshadowed local declarations.
7165
71666 July 2010: Wouter
7167	- failure to chown the pidfile is not fatal any more.
7168	- testbound uses UTC timezone.
7169	- ldns tarball updated (ports and works on Minix 3.1.7).  On Minix, add
7170	  /usr/gnu/bin to PATH, use ./configure AR=/usr/gnu/bin/gar and gmake.
7171
71725 July 2010: Wouter
7173	- log if a server is skipped because it is on the donotquery list,
7174	  at verbosity 4, to enable diagnosis why no queries to 127.0.0.1.
7175	- added feature to print configure date, target and options with -h.
7176	- added feature to print event backend system details with -h.
7177	- wdiff is not actually required by make test, updated requirements.
7178
71791 July 2010: Wouter
7180	- Fix RFC4035 compliance with 2.2 statement that the DNSKEY at apex
7181	  must be signed with all algorithms from the DS rrset at the parent.
7182	  This is now checked and becomes bogus if not.
7183
718428 June 2010: Wouter
7185	- Fix jostle list bug found by Vince (luoce@cnnic), it caused the qps
7186	  in overload situations to be about 5 qps for the class of shortly
7187	  serviced queries.
7188	  The capacity of the resolver is then about (numqueriesperthread / 2)
7189	  / (average time for such long queries) qps for long queries.
7190	  And about (numqueriesperthread / 2)/(jostletimeout in whole seconds)
7191	  qps for short queries, per thread.
7192	- Fix the max number of reply-address count to be applied for duplicate
7193	  queries, and not for new query list entries.  This raises the memory
7194	  usage to a max of (16+1)*numqueriesperthread reply addresses.
7195
719625 June 2010: Wouter
7197	- Fix handling of corner case reply from lame server, follows rfc2308.
7198	  It could lead to a nodata reply getting into the cache if the search
7199	  for a non-lame server turned up other misconfigured servers.
7200	- unbound.h has extern "C" statement for easier include in c++.
7201
720223 June 2010: Wouter
7203	- iana portlist updated.
7204	- makedist upgraded cross compile openssl option, like this:
7205	  ./makedist.sh -s -wssl openssl-1.0.0a.tar.gz -w --enable-gost
7206
720722 June 2010: Wouter
7208	- Unbound reports libev or libevent correctly in logs in verbose mode.
7209	- Fix to unload gost dynamic library module for leak testing.
7210
721118 June 2010: Wouter
7212	- iana portlist updated.
7213
721417 June 2010: Wouter
7215	- Add AAAA to root hints for I.ROOT-SERVERS.NET.
7216
721716 June 2010: Wouter
7218	- Fix assertion failure reported by Kai Storbeck from XS4ALL, the
7219	  assertion was wrong.
7220	- updated ldns tarball.
7221
722215 June 2010: Wouter
7223	- tag 1.4.5 created.
7224	- trunk contains 1.4.6 in development.
7225	- Fix TCPreply on systems with no writev, if just 1 byte could be sent.
7226	- Fix to use one pointer less for iterator query state store_parent_NS.
7227	- makedist crosscompile to windows uses builtin ldns not host ldns.
7228	- Max referral count from 30 to 130, because 128 one character domains
7229	  is valid DNS.
7230	- added documentation for the histogram printout to syslog.
7231
723211 June 2010: Wouter
7233	- When retry to parent the retrycount is not wiped, so failed
7234	  nameservers are not tried again.
7235	- iana portlist updated.
7236
723710 June 2010: Wouter
7238	- Fix bug where a long loop could be entered, now cycle detection
7239	  has a loop-counter and maximum search amount.
7240
72414 June 2010: Wouter
7242	- iana portlist updated.
7243	- 1.4.5rc1 tag created.
7244
72453 June 2010: Wouter
7246	- ldns tarball updated, 1.6.5.
7247	- review comments, split dependency cycle tracking for parentside
7248	  last resort lookups for A and AAAA so there are more lookup options.
7249
72502 June 2010: Wouter
7251	- Fix compile warning if compiled without threads.
7252	- updated ldns-tarball with current ldns svn (pre 1.6.5).
7253	- GOST disabled-by-default, the algorithm number is allocated but the
7254	  RFC is still has to pass AUTH48 at the IETF.
7255
72561 June 2010: Wouter
7257	- Ignore Z flag in incoming messages too.
7258	- Fix storage of negative parent glue if that last resort fails.
7259	- libtoolize 2.2.6b, autoconf 2.65 applied to configure.
7260	- new splint flags for newer splint install.
7261
726231 May 2010: Wouter
7263	- Fix AD flag handling, it could in some cases mistakenly copy the AD
7264	  flag from upstream servers.
7265	- alloc_special_obtain out of memory is not a fatal error any more,
7266	  enabling unbound to continue longer in out of memory conditions.
7267	- parentside names are dispreferred but not said to be dnssec-lame.
7268	- parentside check for cached newname glue.
7269	- fix parentside and querytargets modulestate, for dump_requestlist.
7270	- unbound-control-setup makes keys -rw-r--- so not all users permitted.
7271	- fix parentside from cache to be marked dispreferred for bad names.
7272
727328 May 2010: Wouter
7274	- iana portlist updated.
7275	- parent-child disagreement approach altered.  Older fixes are
7276	  removed in place of a more exhaustive search for misconfigured data
7277	  available via the parent of a delegation.
7278	  This is designed to be throttled by cache entries, with TTL from the
7279	  parent if possible.  Additionally the loop-counter is used.
7280	  It also tests for NS RRset differences between parent and child.
7281	  The fetch of misconfigured data should be more reliable and thorough.
7282	  It should work reliably even with no or only partial data in cache.
7283	  Data received from the child (as always) is deemed more
7284	  authoritative than information received from the delegation parent.
7285	  The search for misconfigured data is not performed normally.
7286
728726 May 2010: Wouter
7288	- Contribution from Migiel de Vos (Surfnet): nagios patch for
7289	  unbound-host, in contrib/ (in the source tarball).  Makes
7290	  unbound-host suitable for monitoring dnssec(-chain) status.
7291
729221 May 2010: Wouter
7293	- EDNS timeout code will not fire if EDNS status already known.
7294	- EDNS failure not stored if EDNS status known to work.
7295
729619 May 2010: Wouter
7297	- Fix resolution for domains like safesvc.com.cn.  If the iterator
7298	  can not recurse further and it finds the delegation in a state
7299	  where it would otherwise have rejected it outhand if so received
7300	  from a cache lookup, then it can try to ask higherup (with loop
7301	  protection).
7302	- Fix comments in iter_utils:dp_is_useless.
7303
730418 May 2010: Wouter
7305	- Fix various compiler warnings from the clang llvm compiler.
7306	- iana portlist updated.
7307
73086 May 2010: Wouter
7309	- Fix bug#308: spelling error in variable name in parser and lexer.
7310
73114 May 2010: Wouter
7312	- Fix dnssec-missing detection that was turned off by server selection.
7313	- Conforms to draft-ietf-dnsop-default-local-zones-13.  Added default
7314	  reverse lookup blocks for IPv4 test nets 100.51.198.in-addr.arpa,
7315	  113.0.203.in-addr.arpa and Orchid prefix 0.1.1.0.0.2.ip6.arpa.
7316
731729 April 2010: Wouter
7318	- Fix for dnssec lameness detection to use the key cache.
7319	- infra cache entries that are expired are wiped clean.  Previously
7320	  it was possible to not expire host data (if accessed often).
7321
732228 April 2010: Wouter
7323	- ldns tarball updated and GOST support is detected and then enabled.
7324	- iana portlist updated.
7325	- Fix detection of gost support in ldns (reported by Chris Smith).
7326
732727 April 2010: Wouter
7328	- unbound-control get_option domain-insecure shows config file items.
7329	- fix retry sequence if prime hints are recursion-lame.
7330	- autotrust anchor file can be initialized with a ZSK key as well.
7331	- harden-referral-path does not result in failures due to max-depth.
7332	  You can increase the max-depth by adding numbers (' 0') after the
7333	  target-fetch-policy, this increases the depth to which is checked.
7334
733526 April 2010: Wouter
7336	- Compile fix using Sun Studio 12 compiler on Solaris 5.9, use
7337	  CPPFLAGS during configure process.
7338	- if libev is installed on the base system (not libevent), detect
7339	  it from the event.h header file and link with -lev.
7340	- configlexer.lex gets config.h, and configyyrename.h added by make,
7341	  no more double include.
7342	- More strict scrubber (Thanks to George Barwood for the idea):
7343	  NS set must be pertinent to the query (qname subdomain nsname).
7344	- Fix bug#307: In 0x20 backoff fix fallback so the number of
7345	  outstanding queries does not become -1 and block the request.
7346	  Fixed handling of recursion-lame in combination with 0x20 fallback.
7347	  Fix so RRsets are compared canonicalized and sorted if the immediate
7348	  comparison fails, this makes it work around round-robin sites.
7349
735023 April 2010: Wouter
7351	- Squelch log message: sendto failed permission denied for
7352	  255.255.255.255, it is visible in VERB_DETAIL (verbosity 2).
7353	- Fix to fetch data as last resort more tenaciously.  When cycle
7354	  targets cause the server selection to believe there are more options
7355	  when they really are not there, the server selection is reinitiated.
7356	- Fix fetch from blacklisted dnssec lame servers as last resort.  The
7357	  server's IP address is then given in validator errors as well.
7358	- Fix local-zone type redirect that did not use the query name for
7359	  the answer rrset.
7360
736122 April 2010: Wouter
7362	- tag 1.4.4.
7363	- trunk contains 1.4.5 in development.
7364	- Fix validation failure for qtype ANY caused by a RRSIG parse failure.
7365	  The validator error message was 'no signatures from ...'.
7366
736716 April 2010: Wouter
7368	- more portability defines for CMSG_SPACE, CMSG_ALIGN, CMSG_LEN.
7369	- tag 1.4.4rc1.
7370
737115 April 2010: Wouter
7372	- ECC-GOST algorithm number 12 that is assigned by IANA.  New test
7373	  example key and signatures for GOST.  GOST requires openssl-1.0.0.
7374	  GOST is still disabled by default.
7375
73769 April 2010: Wouter
7377	- Fix bug#305: pkt_dname_tolower could read beyond end of buffer or
7378	  get into an endless loop, if 0x20 was enabled, and buffers are small
7379	  or particular broken packets are received.
7380	- Fix chain of trust with CNAME at an intermediate step, for the DS
7381	  processing proof.
7382
73838 April 2010: Wouter
7384	- Fix validation of queries with wildcard names (*.example).
7385
73866 April 2010: Wouter
7387	- Fix EDNS probe for .de DNSSEC testbed failure, where the infra
7388	  cache timeout coincided with a server update, the current EDNS
7389	  backoff is less sensitive, and does not cache the backoff unless
7390	  the backoff actually works and the domain is not expecting DNSSEC.
7391	- GOST support with correct algorithm numbers.
7392
73931 April 2010: Wouter
7394	- iana portlist updated.
7395
739624 March 2010: Wouter
7397	- unbound control flushed items are not counted when flushed again.
7398
739923 March 2010: Wouter
7400	- iana portlist updated.
7401
740222 March 2010: Wouter
7403	- unbound-host disables use-syslog from config file so that the
7404	  config file for the main server can be used more easily.
7405	- fix bug#301: unbound-checkconf could not parse interface
7406	  '0.0.0.0@5353', even though unbound itself worked fine.
7407
740819 March 2010: Wouter
7409	- fix fwd_ancil test to pass if the socket options are not supported.
7410
741118 March 2010: Wouter
7412	- Fixed random numbers for port, interface and server selection.
7413	  Removed very small bias.
7414	- Refer to the listing in unbound-control man page in the extended
7415	  statistics entry in the unbound.conf man page.
7416
741716 March 2010: Wouter
7418	- Fix interface-automatic for OpenBSD: msg.controllen was too small,
7419	  also assertions on ancillary data buffer.
7420	- check for IP_SENDSRCADDR for interface-automatic or IP_PKTINFO.
7421	- for NSEC3 check if signatures are cached.
7422
742315 March 2010: Wouter
7424	- unit test for util/regional.c.
7425
742612 March 2010: Wouter
7427	- Reordered configure checks so fork and -lnsl -lsocket checks are
7428	  earlier, and thus later checks benefit from and do not hinder them.
7429	- iana portlist updated.
7430	- ldns tarball updated.
7431	- Fix python use when multithreaded.
7432	- Fix solaris python compile.
7433	- Include less in config.h and include per code file for ldns, ssl.
7434
743511 March 2010: Wouter
7436	- another memory allocation option: --enable-alloc-nonregional.
7437	  exposes the regional allocations to other memory purifiers.
7438	- fix for memory alignment in struct sock_list allocation.
7439	- Fix for MacPorts ldns without ssl default, unbound checks if ldns
7440	  has dnssec functionality and uses the builtin if not.
7441	- Fix daemonize on Solaris 10, it did not detach from terminal.
7442	- tag 1.4.3 created.
7443	- trunk is 1.4.4 in development.
7444	- spelling fix in validation error involving cnames.
7445
744610 March 2010: Wouter
7447	- --enable-alloc-lite works with test set.
7448	- portability in the testset: printf format conversions, prototypes.
7449
74509 March 2010: Wouter
7451	- tag 1.4.2 created.
7452	- trunk is 1.4.3 in development.
7453	- --enable-alloc-lite debug option.
7454
74558 March 2010: Wouter
7456	- iana portlist updated.
7457
74584 March 2010: Wouter
7459	- Fix crash in control channel code.
7460
74613 March 2010: Wouter
7462	- better casts in pipe code, brackets placed wrongly.
7463	- iana portlist updated.
7464
74651 March 2010: Wouter
7466	- make install depends on make all.
7467	- Fix 5011 auto-trust-anchor-file initial read to skip RRSIGs.
7468	- --enable-checking: enables assertions but does not look nonproduction.
7469	- nicer VERB_DETAIL (verbosity 2, unbound-host -d) output, with
7470	  nxdomain and nodata distinguished.
7471	- ldns tarball updated.
7472	- --disable-rpath fixed for libtool not found errors.
7473	- new fedora specfile from Fedora13 in contrib from Paul Wouters.
7474
747526 February 2010: Wouter
7476	- Fixup prototype for lexer cleanup in daemon code.
7477	- unbound-control list_stubs, list_forwards, list_local_zones and
7478	  list_local_data.
7479
748024 February 2010: Wouter
7481	- Fix scrubber bug that potentially let NS records through.  Reported
7482	  by Amanda Constant.
7483	- Also delete potential poison references from additional.
7484	- Fix: no classification of a forwarder as lame, throw away instead.
7485
748623 February 2010: Wouter
7487	- libunbound ub_ctx_get_option() added.
7488	- unbound-control set_option and get_option commands.
7489	- iana portlist updated.
7490
749118 February 2010: Wouter
7492	- A little more strict DS scrubbing.
7493	- No more blacklisting of unresponsive servers, a 2 minute timeout
7494	  is backed off to.
7495	- RD flag not enabled for dnssec-blacklisted tries, unless necessary.
7496	- pickup ldns compile fix, libdl for libcrypto.
7497	- log 'tcp connect: connection timed out' only in high verbosity.
7498	- unbound-control log_reopen command.
7499	- moved get_option code from unbound-checkconf to util/config_file.c
7500
750117 February 2010: Wouter
7502	- Disregard DNSKEY from authority section for chain of trust.
7503	  DS records that are irrelevant to a referral scrubbed.  Anti-poison.
7504	- iana portlist updated.
7505
750616 February 2010: Wouter
7507	- Check for 'no space left on device' (or other errors) when
7508	  writing updated autotrust anchors and print errno to log.
7509
751015 February 2010: Wouter
7511	- Fixed the requery protection, the TTL was 0, it is now 900 seconds,
7512	  hardcoded.  We made the choice to send out more conservatively,
7513	  protecting against an aggregate effect more than protecting a
7514	  single user (from their own folly, perhaps in case of misconfig).
7515
751612 February 2010: Wouter
7517	- Re-query pattern changed on validation failure.  To protect troubled
7518	  authority servers, unbound caches a failure for the DNSKEY or DS
7519	  records for the entire zone, and only retries that 900 seconds later.
7520	  This implies that only a handful of packets are sent extra to the
7521	  authority if the zone fails.
7522
752311 February 2010: Wouter
7524	- ldns tarball update for long label length syntax error fix.
7525	- iana portlist updated.
7526
75279 February 2010: Wouter
7528	- Fixup in compat snprintf routine, %f 1.02 and %g support.
7529	- include math.h for testbound test compile portability.
7530
75312 February 2010: Wouter
7532	- Updated url of IANA itar, interim trust anchor repository, in script.
7533
75341 February 2010: Wouter
7535	- iana portlist updated.
7536	- configure test for memcmp portability.
7537
753827 January 2010: Wouter
7539	- removed warning on format string in validator error log statement.
7540	- iana portlist updated.
7541
754222 January 2010: Wouter
7543	- libtool finish the install of unbound python dynamic library.
7544
754521 January 2010: Wouter
7546	- acx_nlnetlabs.m4 synchronised with nsd's version.
7547
754820 January 2010: Wouter
7549	- Fixup lookup trouble for parent-child domains on the first query.
7550
755114 January 2010: Wouter
7552	- Fixup ldns detection to also check for header files.
7553
755413 January 2010: Wouter
7555	- prefetch-key option that performs DNSKEY queries earlier in the
7556	  validation process, and that could halve the latency on DNSSEC
7557	  queries.  It takes some extra processing (CPU, a cache is needed).
7558
755912 January 2010: Wouter
7560	- Fix unbound-checkconf for auto-trust-anchor-file present checks.
7561
75628 January 2010: Wouter
7563	- Fix for parent-child disagreement code which could have trouble
7564	  when (a) ipv6 was disabled and (b) the TTL for parent and child
7565	  were different.  There were two bugs, the parent-side information
7566	  is fixed to no longer block lookup of child side information and
7567	  the iterator is fixed to no longer attempt to get ipv6 when it is
7568	  not enabled and then give up in failure.
7569	- test and fixes to make prefetch actually store the answer in the
7570	  cache.  Considers some rrsets 'already expired' but does not allow
7571	  overwriting of rrsets considered more secure.
7572
75737 January 2010: Wouter
7574	- Fixup python documentation (thanks Leo Vandewoestijne).
7575	- Work on cache prefetch feature.
7576	- Stats for prefetch, in log print stats, unbound-control stats
7577	  and in unbound_munin plugin.
7578
75796 January 2010: Wouter
7580	- iana portlist updated.
7581	- bug#291: DNS wireformat max is 255. dname_valid allowed 256 length.
7582	- verbose output includes parent-side-address notion for lameness.
7583	- documented val-log-level: 2 setting in example.conf and man page.
7584	- change unbound-control-setup from 1024(sha1) to 1536(sha256).
7585
75861 January 2010: Wouter
7587	- iana portlist updated.
7588
758922 December 2009: Wouter
7590	- configure with newer libtool 2.2.6b.
7591
759217 December 2009: Wouter
7593	- review comments.
7594	- tag 1.4.1.
7595	- trunk to version 1.4.2.
7596
759715 December 2009: Wouter
7598	- Answer to qclass=ANY queries, with class IN contents.
7599	  Test that validation also works.
7600	- updated ldns snapshot tarball with latest fixes (parsing records).
7601
760211 December 2009: Wouter
7603	- on IPv4 UDP turn off DF flag.
7604
760510 December 2009: Wouter
7606	- requirements.txt updated with design choice explanations.
7607	- Reading fixes: fix to set unlame when child confirms parent glue,
7608	  and fix to avoid duplicate addresses in delegation point.
7609	- verify_rrsig routine checks expiration last.
7610
76119 December 2009: Wouter
7612	- Fix Bug#287(reopened): update of ldns tarball with fix for parse
7613	  errors generated for domain names like '.example.com'.
7614	- Fix SOA excluded from negative DS responses.  Reported by Hauke
7615	  Lampe.  The negative cache did not include proper SOA records for
7616	  negative qtype DS responses which makes BIND barf on it, such
7617	  responses are now only used internally.
7618	- Fix negative cache lookup of closestencloser check of DS type bit.
7619
76208 December 2009: Wouter
7621	- Fix for lookup of parent-child disagreement domains, where the
7622	  parent-side glue works but it does not provide proper NS, A or AAAA
7623	  for itself, fixing domains such as motorcaravanners.eu.
7624	- Feature: you can specify a port number in the interface: line, so
7625	  you can bind the same interface multiple times at different ports.
7626
76277 December 2009: Wouter
7628	- Bug#287: Fix segfault when unbound-control remove nonexistent local
7629	  data.  Added check to tests.
7630
76311 December 2009: Wouter
7632	- Fix crash with module-config "iterator".
7633	- Added unit test that has "iterator" module-config.
7634
763530 November 2009: Wouter
7636	- bug#284: fix parse of # without end-of-line at end-of-file.
7637
763826 November 2009: Wouter
7639	- updated ldns with release candidate for version 1.6.3.
7640	- tag for 1.4.0 release.
7641	- 1.4.1 version in trunk.
7642	- Fixup major libtool version to 2 because of why_bogus change.
7643	  It was 1:5:0 but should have been 2:0:0.
7644
764523 November 2009: Wouter
7646	- Patch from David Hubbard for libunbound manual page.
7647	- Fixup endless spinning in unbound-control stats reported by
7648	  Attila Nagy.  Probably caused by clock reversal.
7649
765020 November 2009: Wouter
7651	- contrib/split-itar.sh contributed by Tom Hendrikx.
7652
765319 November 2009: Wouter
7654	- better argument help for unbound-control.
7655	- iana portlist updated.
7656
765717 November 2009: Wouter
7658	- noted multiple entries for multiple domain names in example.conf.
7659	- iana portlist updated.
7660
766116 November 2009: Wouter
7662	- Fixed signer detection of CNAME responses without signatures.
7663	- Fix#282 libunbound memleak on error condition by Eric Sesterhenn.
7664	- Tests for CNAMEs to deeper trust anchors, secure and bogus.
7665	- svn tag 1.4.0rc1 made.
7666
766713 November 2009: Wouter
7668	- Fixed validation failure for CNAME to optout NSEC3 nodata answer.
7669	- unbound-host does not fail on type ANY.
7670	- Fixed wireparse failure to put RRSIGs together with data in some
7671	  long ANY mix cases, which fixes validation failures.
7672
767312 November 2009: Wouter
7674	- iana portlist updated.
7675	- fix manpage errors reported by debian lintian.
7676	- review comments.
7677	- fixup very long vallog2 level error strings.
7678
767911 November 2009: Wouter
7680	- ldns tarball updated (to 1.6.2).
7681	- review comments.
7682
768310 November 2009: Wouter
7684	- Thanks to Surfnet found bug in new dnssec-retry code that failed
7685	  to combine well when combined with DLV and a particular failure.
7686	- Fixed unbound-control -h output about argument optionality.
7687	- review comments.
7688
76895 November 2009: Wouter
7690	- lint fixes and portability tests.
7691	- better error text for multiple domain keys in one autotrust file.
7692
76932 November 2009: Wouter
7694	- Fix bug where autotrust does not work when started with a DS.
7695	- Updated GOST unit tests for unofficial algorithm number 249
7696	  and DNSKEY-format changes in draft version -01.
7697
769829 October 2009: Wouter
7699	- iana portlist updated.
7700	- edns-buffer-size option, default 4096.
7701	- fixed do-udp: no.
7702
770328 October 2009: Wouter
7704	- removed abort on prealloc failure, error still printed but softfail.
7705	- iana portlist updated.
7706	- RFC 5702: RSASHA256 and RSASHA512 support enabled by default.
7707	- ldns tarball updated (which also enables rsasha256 support).
7708
770927 October 2009: Wouter
7710	- iana portlist updated.
7711
77128 October 2009: Wouter
7713	- please doxygen
7714	- add val-log-level print to corner case (nameserver.epost.bg).
7715	- more detail to errors from insecure delegation checks.
7716	- Fix double time subtraction in negative cache reported by
7717	  Amanda Constant and Hugh Mahon.
7718	- Made new validator error string available from libunbound for
7719	  applications.  It is in result->why_bogus, a zero-terminated string.
7720	  unbound-host prints it by default if a result is bogus.
7721	  Also the errinf is public in module_qstate (for other modules).
7722
77237 October 2009: Wouter
7724	- retry for validation failure in DS and prime results. Less mem use.
7725	  unit test.  Provisioning in other tests for requeries.
7726	- retry for validation failure in DNSKEY in middle of chain of trust.
7727	  unit test.
7728	- retry for empty non terminals in chain of trust and unit test.
7729	- Fixed security bug where the signatures for NSEC3 records were not
7730	  checked when checking for absence of DS records.  This could have
7731	  enabled the substitution of an insecure delegation.
7732	- moved version number to 1.4.0 because of 1.3.4 release with only
7733	  the NSEC3 patch from the entry above.
7734	- val-log-level: 2 shows extended error information for validation
7735	  failures, but still one (longish) line per failure.  For example:
7736	  validation failure <example.com. DNSKEY IN>: signature expired from
7737	  192.0.2.4 for trust anchor example.com. while building chain of trust
7738	  validation failure <www.example.com. A IN>: no signatures from
7739	  192.0.2.6 for key example.com. while building chain of trust
7740
77416 October 2009: Wouter
7742	- Test set updated to provide additional ns lookup result.
7743	  The retry would attempt to fetch the data from other nameservers
7744	  for bogus data, and this needed to be provisioned in the tests.
7745
77465 October 2009: Wouter
7747	- first validation failure retry code.  Retries for data failures.
7748	  And unit test.
7749
77502 October 2009: Wouter
7751	- improve 5011 modularization.
7752	- fix unbound-host so -d can be given before -C.
7753	- iana portlist updated.
7754
775528 September 2009: Wouter
7756	- autotrust-anchor-file can read multiline input and $ORIGIN.
7757	- prevent integer overflow in holddown calculation. review fixes.
7758	- fixed race condition in trust point revocation. review fix.
7759	- review fixes to comments, removed unused code.
7760
776125 September 2009: Wouter
7762	- so-rcvbuf: 4m option added.  Set this on large busy servers to not
7763	  drop the occasional packet in spikes due to full socket buffers.
7764	  netstat -su keeps a counter of UDP dropped due to full buffers.
7765	- review of validator/autotrust.c, small fixes and comments.
7766
776723 September 2009: Wouter
7768	- 5011 query failed counts verification failures, not lookup failures.
7769	- 5011 probe failure handling fixup.
7770	- test unbound reading of original autotrust data.
7771	  The metadata per-key, such as key state (PENDING, MISSING, VALID) is
7772	  picked up, otherwise performs initial probe like usual.
7773
777422 September 2009: Wouter
7775	- autotrust test with algorithm rollover, new ordering of checks
7776	  assists in orderly rollover.
7777	- autotrust test with algorithm rollover to unknown algorithm.
7778	  checks if new keys are supported before adding them.
7779	- autotrust test with trust point revocation, becomes unsigned.
7780	- fix DNSSEC-missing-signature detection for minimal responses
7781	  for qtype DNSKEY (assumes DNSKEY occurs at zone apex).
7782
778318 September 2009: Wouter
7784	- autotrust tests, fix trustpoint timer deletion code.
7785	  fix count of valid anchors during missing remove.
7786	- autotrust: pick up REVOKE even if not signed with known other keys.
7787
778817 September 2009: Wouter
7789	- fix compile of unbound-host when --enable-alloc-checks.
7790	- Fix lookup problem reported by Koh-ichi Ito and Jaap Akkerhuis.
7791	- Manual page fixes reported by Tony Finch.
7792
779316 September 2009: Wouter
7794	- Fix memory leak reported by Tao Ma.
7795	- Fix memstats test tool for log-time-ascii log format.
7796
779715 September 2009: Wouter
7798	- iana portlist updated.
7799
780010 September 2009: Wouter
7801	- increased MAXSYSLOGLEN so .bg key can be printed in debug output.
7802	- use linebuffering for log-file: output, this can be significantly
7803	  faster than the previous fflush method and enable some class of
7804	  resolvers to use high verbosity (for short periods).
7805	  Not on windows, because line buffering does not work there.
7806
78079 September 2009: Wouter
7808	- Fix bug where DNSSEC-bogus messages were marked with too high TTL.
7809	  The RRsets would still expire at the normal time, but this would
7810	  keep messages bogus in the cache for too long.
7811	- regression test for that bug.
7812	- documented that load_cache is meant for debugging.
7813
78148 September 2009: Wouter
7815	- fixup printing errors when load_cache, they were printed to the
7816	  SSL connection which broke, now to the log.
7817	- new ldns - with fixed parse of large SOA values.
7818
78197 September 2009: Wouter
7820	- autotrust testbound scenarios.
7821	- autotrust fix that failure count is written to file.
7822	- autotrust fix that keys may become valid after add holddown time
7823	  alone, before the probe returns.
7824
78254 September 2009: Wouter
7826	- Changes to make unbound work with libevent-2.0.3 alpha. (in
7827	  configure detection due to new ssl dependency in libevent)
7828	- do not call sphinx for documentation when python is disabled.
7829	- remove EV_PERSIST from libevent timeout code to make the code
7830	  compatible with the libevent-2.0.  Works with older libevent too.
7831	- fix memory leak in python code.
7832
78333 September 2009: Wouter
7834	- Got a patch from Luca Bruno for libunbound support on windows to
7835	  pick up the system resolvconf nameservers and hosts there.
7836	- included ldns updated (enum warning fixed).
7837	- makefile fix for parallel makes.
7838	- Patch from Zdenek Vasicek and Attila Nagy for using the source IP
7839	  from python scripts.  See pythonmod/examples/resip.py.
7840	- doxygen comment fixes.
7841
78422 September 2009: Wouter
7843	- TRAFFIC keyword for testbound. Simplifies test generation.
7844	  ${range lower val upper} to check probe timeout values.
7845	- test with 5011-prepublish rollover and revocation.
7846	- fix revocation of RR for autotrust, stray exclamation mark.
7847
78481 September 2009: Wouter
7849	- testbound variable arithmetic.
7850	- autotrust probe time is randomised.
7851	- autotrust: the probe is active and does not fetch from cache.
7852
785331 August 2009: Wouter
7854	- testbound variable processing.
7855
785628 August 2009: Wouter
7857	- fixup unbound-control lookup to print forward and stub servers.
7858
785927 August 2009: Wouter
7860	- autotrust: mesh answer callback is empty.
7861
786226 August 2009: Wouter
7863	- autotrust probing.
7864	- iana portlist updated.
7865
786625 August 2009: Wouter
7867	- fixup memleak in trust anchor unsupported algorithm check.
7868	- iana portlist updated.
7869	- autotrust options: add-holddown, del-holddown, keep-missing.
7870	- autotrust store revoked status of trust points.
7871	- ctime_r compat definition.
7872	- detect yylex_destroy() in configure.
7873	- detect SSL_get_compression_methods declaration in configure.
7874	- fixup DS lookup at anchor point with unsigned parent.
7875	- fixup DLV lookup for DS queries to unsigned domains.
7876
787724 August 2009: Wouter
7878	- cleaner memory allocation on exit. autotrust test routines.
7879	- free all memory on program exit, fix for ssl and flex.
7880
788121 August 2009: Wouter
7882	- autotrust: debug routines. Read,write and conversions work.
7883
788420 August 2009: Wouter
7885	- autotrust: save and read trustpoint variables.
7886
788719 August 2009: Wouter
7888	- autotrust: state table updates.
7889	- iana portlist updated.
7890
789117 August 2009: Wouter
7892	- autotrust: process events.
7893
789417 August 2009: Wouter
7895	- Fix so that servers are only blacklisted if they fail to reply
7896	  to 16 queries in a row and the timeout gets above 2 minutes.
7897	- autotrust work, split up DS verification of DNSKEYs.
7898
789914 August 2009: Wouter
7900	- unbound-control lookup prints out infra cache information, like RTT.
7901	- Fix bug in DLV lookup reported by Amanda from Secure64.
7902	  It could sometimes wrongly classify a domain as unsigned, which
7903	  does not give the AD bit on replies.
7904
790513 August 2009: Wouter
7906	- autotrust read anchor files. locked trust anchors.
7907
790812 August 2009: Wouter
7909	- autotrust import work.
7910
791111 August 2009: Wouter
7912	- Check for openssl compatible with gost if enabled.
7913	- updated unit test for GOST=211 code.
7914	  Nicer naming of test files.
7915	- iana portlist updated.
7916
79177 August 2009: Wouter
7918	- call OPENSSL_config() in unbound and unit test so that the
7919	  operator can use openssl.cnf for configuration options.
7920	- removed small memory leak from config file reader.
7921
79226 August 2009: Wouter
7923	- configure --enable-gost for GOST support, experimental
7924	  implementation of draft-dolmatov-dnsext-dnssec-gost-01.
7925	- iana portlist updated.
7926	- ldns tarball updated (with GOST support).
7927
79285 August 2009: Wouter
7929	- trunk moved to 1.3.4.
7930
79314 August 2009: Wouter
7932	- Added test that the examples from draft rsasha256-14 verify.
7933	- iana portlist updated.
7934	- tagged 1.3.3
7935
79363 August 2009: Wouter
7937	- nicer warning when algorithm not supported, tells you to upgrade.
7938	- iana portlist updated.
7939
794027 July 2009: Wouter
7941	- Updated unbound-cacti contribution from Dmitriy Demidov, with
7942	  the queue statistics displayed in its own graph.
7943	- iana portlist updated.
7944
794522 July 2009: Wouter
7946	- Fix bug found by Michael Tokarev where unbound would try to
7947	  prime the root servers even though forwarders are configured for
7948	  the root.
7949	- tagged 1.3.3rc1
7950
795121 July 2009: Wouter
7952	- Fix server selection, so that it waits for open target queries when
7953	  faced with lameness.
7954
795520 July 2009: Wouter
7956	- Ignore transient sendto errors, no route to host, and host, net down.
7957	- contrib/update-anchor.sh has -r option for root-hints.
7958	- feature val-log-level: 1 prints validation failures so you can
7959	  keep track of them during dnssec deployment.
7960
796116 July 2009: Wouter
7962	- fix replacement malloc code.  Used in crosscompile.
7963	- makedist -w creates crosscompiled setup.exe on fedora11.
7964
796515 July 2009: Wouter
7966	- dependencies for compat items, for crosscompile.
7967	- mingw32 crosscompile changes, dependencies and zipfile creation.
7968	  and with System.dll from the windows NSIS you can make setup.exe.
7969	- package libgcc_s_sjlj exception handler for NSISdl.dll.
7970
797114 July 2009: Wouter
7972	- updated ldns tarball for solaris x64 compile assistance.
7973	- no need to define RAND_MAX from config.h.
7974	- iana portlist updated.
7975	- configure changes and ldns update for mingw32 crosscompile.
7976
797713 July 2009: Wouter
7978	- Fix for crash at start on windows.
7979	- tag for release 1.3.2.
7980	- trunk has version 1.3.3.
7981	- Fix for ID bits on windows to use all 16. RAND_MAX was not
7982	  defined like you'd expect on mingw. Reported by Mees de Roo.
7983
79849 July 2009: Wouter
7985	- tag for release 1.3.1.
7986	- trunk has version 1.3.2.
7987
79887 July 2009: Wouter
7989	- iana portlist updated.
7990
79916 July 2009: Wouter
7992	- prettier error handling in SSL setup.
7993	- makedist.sh uname fix (same as ldns).
7994	- updated fedora spec file.
7995
79963 July 2009: Wouter
7997	- fixup linking when ldnsdir is "".
7998
799930 June 2009: Wouter
8000	- more lenient truncation checks.
8001
800229 June 2009: Wouter
8003	- ldns trunk r2959 imported as tarball, because of solaris cc compile
8004	  support for c99.  r2960 for better configure.
8005	- better wrongly_truncated check.
8006	- On Linux, fragment IPv6 datagrams to the IPv6 minimum MTU, to
8007	  avoid dropped packets at routers.
8008
800926 June 2009: Wouter
8010	- Fix EDNS fallback when EDNS works for short answers but long answers
8011	  are dropped.
8012
801322 June 2009: Wouter
8014	- fixup iter priv strict aliasing while preserving size of sockaddr.
8015	- iana portlist updated.  (one less port allocated, one more fraction
8016	  of a bit for security!)
8017	- updated fedora specfile in contrib from Paul Wouters.
8018
801919 June 2009: Wouter
8020	- Fixup strict aliasing warning in iter priv code.
8021	  and config_file code.
8022	- iana portlist updated.
8023	- harden-referral-path: handle cases where NS is in answer section.
8024
802518 June 2009: Wouter
8026	- Fix of message parse bug where (specifically) an NSEC and RRSIG
8027	  in the wrong order would be parsed, but put wrongly into internal
8028	  structures so that later validation would fail.
8029	- Extreme lenience for wrongly truncated replies where a positive
8030	  reply has an NS in the authority but no signatures.  They are
8031	  turned into minimal responses with only the (secure) answer.
8032	- autoconf 2.63 for configure.
8033	- python warnings suppress.  Keep python API away from header files.
8034
803517 June 2009: Wouter
8036	- CREDITS entry for cz.nic, sponsoring a 'summer of code' that was
8037	  used for the python code in unbound. (http://www.nic.cz/vip/ in cz).
8038
803916 June 2009: Wouter
8040	- Fixup opportunistic target query generation to it does not
8041	  generate queries that are known to fail.
8042	- Touchup on munin total memory report.
8043	- messages picked out of the cache by the iterator are checked
8044	  if their cname chain is still correct and if validation status
8045	  has to be reexamined.
8046
804715 June 2009: Wouter
8048	- iana portlist updated.
8049
805014 June 2009: Wouter
8051	- Fixed bug where cached responses would lose their security
8052	  status on second validation, which especially impacted dlv
8053	  lookups.  Reported by Hauke Lampe.
8054
805513 June 2009: Wouter
8056	- bug #254. removed random whitespace from example.conf.
8057
805812 June 2009: Wouter
8059	- Fixup potential wrong NSEC picked out of the cache.
8060	- If unfulfilled callbacks are deleted they are called with an error.
8061	- fptr wlist checks for mesh callbacks.
8062	- fwd above stub in configuration works.
8063
806411 June 2009: Wouter
8065	- Fix queries for type DS when forward or stub zones are there.
8066	  They are performed to higherup domains, and thus treated as if
8067	  going to higher zones when looking up the right forward or stub
8068	  server.  This makes a stub pointing to a local server that has
8069	  a local view of example.com signed with the same keys as are
8070	  publicly used work.  Reported by Johan Ihren.
8071	- Added build-unbound-localzone-from-hosts.pl to contrib, from
8072	  Dennis DeDonatis.  It converts /etc/hosts into config statements.
8073	- same thing fixed for forward-zone and DS, chain of trust from
8074	  public internet into the forward-zone works now.  Added unit test.
8075
80769 June 2009: Wouter
8077	- openssl key files are opened apache-style, when user is root and
8078	  before chrooting.  This makes permissions on remote-control key
8079	  files easier to set up.  Fixes bug #251.
8080	- flush_type and flush_name remove msg cache entries.
8081	- codereview - dp copy bogus setting fix.
8082
80838 June 2009: Wouter
8084	- Removed RFC5011 REVOKE flag support. Partial 5011 support may cause
8085	  inadvertant behaviour.
8086	- 1.3.0 tarball for release created.
8087	- 1.3.1 development in svn trunk.
8088	- iana portlist updated.
8089	- fix lint from complaining on ldns/sha.h.
8090	- help compiler figure out aliasing in priv_rrset_bad() routine.
8091	- fail to configure with python if swig is not found.
8092	- unbound_munin_ in contrib uses ps to show rss if sbrk does not work.
8093
80943 June 2009: Wouter
8095	- fixup bad free() when wrongly encoded DSA signature is seen.
8096	  Reported by Paul Wouters.
8097	- review comments from Matthijs.
8098
80992 June 2009: Wouter
8100	- --enable-sha2 option. The draft rsasha256 changed its algorithm
8101	  numbers too often.  Therefore it is more prudent to disable the
8102	  RSASHA256 and RSASHA512 support by default.
8103	- ldns trunk included as new tarball.
8104	- recreated the 1.3.0 tag in svn. rc1 tarball generated at this point.
8105
810629 May 2009: Wouter
8107	- fixup doc bug in README reported by Matthew Dempsky.
8108
810928 May 2009: Wouter
8110	- update iana port list
8111	- update ldns lib tarball
8112
811327 May 2009: Wouter
8114	- detect lack of IPv6 support on XP (with a different error code).
8115	- Fixup a crash-on-exit which was triggered by a very long queue.
8116	  Unbound would try to re-use ports that came free, but this is
8117	  of course not really possible because everything is deleted.
8118	  Most easily triggered on XP (not Vista), maybe because of the
8119	  network stack encouraging large messages backlogs.
8120	- change in debug statements.
8121	- Fixed bug that could cause a crash if root prime failed when there
8122	  were message backlogs.
8123
812426 May 2009: Wouter
8125	- Thanks again to Brett Carr, found an assertion that was not true.
8126	  Assertion checked if recursion parent query still existed.
8127
812829 April 2009: Wouter
8129	- Thanks to Brett Carr, caught windows resource leak, use
8130	  closesocket() and not close() on sockets or else the network stack
8131	  starts to leak handles.
8132	- Removed usage of windows Mutex because windows cannot handle enough
8133	  mutexes open.  Provide own mutex implementation using primitives.
8134
813528 April 2009: Wouter
8136	- created svn tag for 1.3.0.
8137
813827 April 2009: Wouter
8139	- optimised cname from cache.
8140	- ifdef windows functions in testbound.
8141
814223 April 2009: Wouter
8143	- fix for threadsafety in solaris thr_key_create() in tests.
8144	- iana portlist updated.
8145	- fix pylib test for Darwin.
8146	- fix pymod test for Darwin and a python threading bug in pymod init.
8147	- check python >= 2.4 in configure.
8148	- -ldl check for libcrypto 1.0.0beta.
8149
815021 April 2009: Wouter
8151	- fix for build outside sourcedir.
8152	- fix for configure script swig detection.
8153
815417 April 2009: Wouter
8155	- Fix reentrant in minievent handler for unix. Could have resulted
8156	  in spurious event callbacks.
8157	- timers do not take up a fd slot for winsock handler.
8158	- faster fix for winsock reentrant check.
8159	- fix rsasha512 unit test for new (interim) algorithm number.
8160	- fix test:ldns doesn't like DOS line endings in keyfiles on unix.
8161	- fix compile warning on ubuntu (configlexer fwrite return value).
8162	- move python include directives into CPPFLAGS instead of CFLAGS.
8163
816416 April 2009: Wouter
8165	- winsock event handler exit very quickly on signal, even if
8166	  under heavy load.
8167	- iana portlist updated.
8168	- fixup windows winsock handler reentrant problem.
8169
817014 April 2009: Wouter
8171	- bug #245: fix munin plugin, perform cleanup of stale lockfiles.
8172	- makedist.sh; better help text.
8173	- cache-min-ttl option and tests.
8174	- mingw detect error condition on TCP sockets (NOTCONN).
8175
81769 April 2009: Wouter
8177	- Fix for removal of RSASHA256_NSEC3 protonumber from ldns.
8178	- ldns tarball updated.
8179	- iana portlist update.
8180	- detect GOST support in openssl-1.0.0-beta1, and fix compile problem
8181	  because that openssl defines the name STRING for itself.
8182
81836 April 2009: Wouter
8184	- windows compile fix.
8185	- Detect FreeBSD jail without ipv6 addresses assigned.
8186	- python libunbound wrapper unit test.
8187	- installs the following files. Default is to not build them.
8188	  	from configure --with-pythonmodule:
8189	  /usr/lib/python2.x/site-packages/unboundmodule.py
8190	  	from configure --with-pyunbound:
8191	  /usr/lib/python2.x/site-packages/unbound.py
8192	  /usr/lib/python2.x/site-packages/_unbound.so*
8193	  The example python scripts (pythonmod/examples and
8194	  libunbound/python/examples) are not installed.
8195	- python invalidate routine respects packed rrset ids and locks.
8196	- clock skew checks in unbound, config statements.
8197	- nxdomain ttl considerations in requirements.txt
8198
81993 April 2009: Wouter
8200	- Fixed a bug that caused messages to be stored in the cache too
8201	  long.  Hard to trigger, but NXDOMAINs for nameservers or CNAME
8202	  targets have been more vulnerable to the TTL miscalculation bug.
8203	- documentation test fixed for python addition.
8204
82052 April 2009: Wouter
8206	- pyunbound (libunbound python plugin) compiles using libtool.
8207	- documentation for pythonmod and pyunbound is generated in doc/html.
8208	- iana portlist updated.
8209	- fixed bug in unbound-control flush_zone where it would not flush
8210	  every message in the target domain.  This especially impacted
8211	  NXDOMAIN messages which could remain in the cache regardless.
8212	- python module test package.
8213
82141 April 2009: Wouter
8215	- suppress errors when trying to contact authority servers that gave
8216	  ipv6 AAAA records for their nameservers with ipv4 mapped contents.
8217	  Still tries to do so, could work when deployed in intranet.
8218	  Higher verbosity shows the error.
8219	- new libunbound calls documented.
8220	- pyunbound in libunbound/python. Removed compile warnings.
8221	  Makefile to make it.
8222
822330 March 2009: Wouter
8224	- Fixup LDFLAGS from libevent sourcedir compile configure restore.
8225	- Fixup so no non-absolute rpaths are added.
8226	- Fixup validation of RRSIG queries, they are let through.
8227	- read /dev/random before chroot
8228	- checkconf fix no python checks when no python module enabled.
8229	- fix configure, pthread first, so other libs do not change outcome.
8230
823127 March 2009: Wouter
8232	- nicer -h output. report linked libraries and modules.
8233	- prints modules in intuitive order (config file friendly).
8234	- python compiles easily on BSD.
8235
823626 March 2009: Wouter
8237	- ignore swig varargs warnings with gcc.
8238	- remove duplicate example.conf text from python example configs.
8239	- outofdir compile fix for python.
8240	- pyunbound works.
8241	- print modules compiled in on -h. manpage.
8242
824325 March 2009: Wouter
8244	- initial import of the python contribution from Zdenek Vasicek and
8245	  Marek Vavrusa.
8246	- pythonmod in Makefile; changes to remove warnings/errors for 1.3.0.
8247
824824 March 2009: Wouter
8249	- more neat configure.ac. Removed duplicate config.h includes.
8250	- neater config.h.in.
8251	- iana portlist updated.
8252	- fix util/configlexer.c and solaris -std=c99 flag.
8253	- fix postcommit aclocal errors.
8254	- spaces stripped. Makefile cleaner, /usr omitted from -I, -L, -R.
8255	- swap order of host detect and libtool generation.
8256
825723 March 2009: Wouter
8258	- added launchd plist example file for MacOSX to contrib.
8259	- deprecation test for daemon(3).
8260	- moved common configure actions to m4 include, prettier Makefile.
8261
826220 March 2009: Wouter
8263	- bug #239: module-config entries order is important. Documented.
8264	- build fix for test asynclook.
8265
826619 March 2009: Wouter
8267	- winrc/README.txt dos-format text file.
8268	- iana portlist updated.
8269	- use _beginthreadex() when available (performs stack alignment).
8270	- defaults for windows baked into configure.ac (used if on mingw).
8271
827218 March 2009: Wouter
8273	- Added tests, unknown algorithms become insecure. fallback works.
8274	- Fix for and test for unknown algorithms in a trust anchor
8275	  definition.  Trust anchors with no supported algos are ignored.
8276	  This means a (higher)DS or DLV entry for them could succeed, and
8277	  otherwise they are treated as insecure.
8278	- domain-insecure: "example.com" statement added. Sets domain
8279	  insecure regardless of chain of trust DSs or DLVs. The inverse
8280	  of a trust-anchor.
8281
828217 March 2009: Wouter
8283	- unit test for unsupported algorithm in anchor warning.
8284	- fixed so queries do not fail on opportunistic target queries.
8285
828616 March 2009: Wouter
8287	- fixup diff error printout in contrib/update-itar.sh.
8288	- added contrib/unbound_cacti for statistics support in cacti,
8289	  contributed by Dmitriy Demidov.
8290
829113 March 2009: Wouter
8292	- doxygen and lex/yacc on linux.
8293	- strip update-anchor on makedist -w.
8294	- fix testbound on windows.
8295	- default log to syslog for windows.
8296	- uninstaller can stop unbound - changed text on it to reflect that.
8297	- remove debugging from windows 'cron' actions.
8298
829912 March 2009: Wouter
8300	- log to App.logs on windows prints executable identity.
8301	- fixup tests.
8302	- munin plugin fix benign locking error printout.
8303	- anchor-update for windows, called every 24 hours; unbound reloads.
8304
830511 March 2009: Wouter
8306	- winsock event handler resets WSAevents after signalled.
8307	- winsock event handler tests if signals are really signalled.
8308	- install and service with log to file works on XP and Vista on
8309	  default install location.
8310	- on windows logging to the Application logbook works (as a service).
8311	- fix RUN_DIR on windows compile setting in makedist.
8312	- windows registry has Software\Unbound\ConfigFile element.
8313	  If does not exist, the default is used. The -c switch overrides it.
8314	- fix makedist version cleanup function.
8315
831610 March 2009: Wouter
8317	- makedist -w strips out old rc.. and snapshot info from version.
8318	- setup.exe starts and stops unbound after install, before uninstall.
8319	- unbound-checkconf recognizes absolute pathnames on windows (C:...).
8320
83219 March 2009: Wouter
8322	- Nullsoft NSIS installer creation script.
8323
83245 March 2009: Wouter
8325	- fixup memory leak introduced on 18feb in mesh reentrant fix.
8326
83273 March 2009: Wouter
8328	- combined icon with 16x16(4) 32x32(4) 48x48(8) 64x64(8).
8329	- service works on xp/vista, no config necessary (using defaults).
8330	- windows registry settings.
8331
83322 March 2009: Wouter
8333	- fixup --export-symbols to be -export-symbls for libtool.
8334	  This should fix extraneous symbols exported from libunbound.
8335	  Thanks to Ondrej Sury and Robert Edmonds for finding it.
8336	- iana portlist updated.
8337	- document FAQ entry on stub/forward zones and default blocking.
8338	- fix asynclook test app for libunbound not exporting symbols.
8339	- service install and remove utils that work with vista UAC.
8340
834127 February 2009: Wouter
8342	- Fixup lexer, to not give warnings about fwrite. Appeared in
8343	  new lexer features.
8344	- makedistro functionality for mingw. Has RC support.
8345	- support spaces and backslashes in configured defaults paths.
8346	- register, deregister in service control manager.
8347
834825 February 2009: Wouter
8349	- windres usage for application resources.
8350
835124 February 2009: Wouter
8352	- isc moved their dlv key download location.
8353	- fixup warning on vista/mingw.
8354	- makedist -w for window zip distribution first version.
8355
835620 February 2009: Wouter
8357	- Fixup contrib/update-itar.sh, the exit codes 1 and 0 were swapped.
8358	  Nicer script layout.  Added url to site in -h output.
8359
836019 February 2009: Wouter
8361	- unbound-checkconf and unbound print warnings when trust anchors
8362	  have unsupported algorithms.
8363	- added contrib/update-itar.sh  This script is similar to
8364	  update-anchor.sh, and updates from the IANA ITAR repository.
8365	  You can provide your own PGP key and trust repo, or can use the
8366	  builtin.  The program uses wget and gpg to work.
8367	- iana portlist updated.
8368	- update-itar.sh: using ftp:// urls because https godaddy certificate
8369	  is not available everywhere and then gives fatal errors.  The
8370	  security is provided by pgp signature.
8371
837218 February 2009: Wouter
8373	- more cycle detection. Also for target queries.
8374	- fixup bug where during deletion of the mesh queries the callbacks
8375	  that were reentrant caused assertion failures. Keep the mesh in
8376	  a reentrant safe state.  Affects libunbound, reload of server,
8377	  on quit and flush_requestlist.
8378	- iana portlist updated.
8379
838013 February 2009: Wouter
8381	- forwarder information now per-thread duplicated.
8382	  This keeps it read only for speed, with no locking necessary.
8383	- forward command for unbound control to change forwarders to use
8384	  on the fly.
8385	- document that unbound-host reads no config file by default.
8386	- updated iana portlist.
8387
838812 February 2009: Wouter
8389	- call setusercontext if available (on BSD).
8390	- small refactor of stats clearing.
8391	- #227: flush_stats feature for unbound-control.
8392	- stats_noreset feature for unbound-control.
8393	- flush_requestlist feature for unbound-control.
8394	- libunbound version upped API (was changed 5 feb).
8395	- unbound-control status shows if root forwarding is in use.
8396	- slightly nicer memory management in iter-fwd code.
8397
839810 February 2009: Wouter
8399	- keys with rfc5011 REVOKE flag are skipped and not considered when
8400	  validating data.
8401	- iana portlist updated
8402	- #226: dump_requestlist feature for unbound-control.
8403
84046 February 2009: Wouter
8405	- contrib contains specfile for fedora 1.2.1 (from Paul Wouters).
8406	- iana portlist updated.
8407	- fixup EOL in include directive (reported by Paul Wouters).
8408	  You can no longer specify newlines in the names of included files.
8409	- config parser changed. Gives some syntax errors closer to where they
8410	  occurred. Does not enforce a space after keyword anymore.
8411	  Does not allow literal newlines inside quoted strings anymore.
8412	- verbosity level 5 logs customer IP for new requestlist entries.
8413	- test fix, lexer and cancel test.
8414	- new option log-time-ascii: yes  if you enable it prints timestamps
8415	  in the log file as Feb 06 13:45:26 (like syslog does).
8416	- detect event_base_new in libevent-1.4.1 and later and use it.
8417	- #231 unbound-checkconf -o option prints that value from config file.
8418	  Useful for scripting in management scripts and the like.
8419
84205 February 2009: Wouter
8421	- ldns 1.5.0 rc as tarball included.
8422	- 1.3.0 development continues:
8423	  change in libunbound API: ub_cancel can return an error, that
8424	  the async_id did not exist, or that it was already delivered.
8425	  The result could have been delivered just before the cancel
8426	  routine managed to acquire the lock, so a caller may get the
8427	  result at the same time they call cancel.  For this case,
8428	  ub_cancel tries to return an error code.
8429	  Fixes race condition in ub_cancel() libunbound function.
8430	- MacOSX Leopard cleaner text output from configure.
8431	- initgroups(3) is called to drop secondary group permissions, if
8432	  applicable.
8433	- configure option --with-ldns-builtin forces the use of the
8434	  inluded ldns package with the unbound source.  The -I include
8435	  is put before the others, so it avoids bad include files from
8436	  an older ldns install.
8437	- daemon(3) posix call is used when available.
8438	- testbound test for older fix added.
8439
84404 February 2009: Wouter
8441	- tag for release 1.2.1.
8442	- trunk setup for 1.3.0 development.
8443
84443 February 2009: Wouter
8445	- noted feature requests in doc/TODO.
8446	- printout more detailed errors on ssl certificate loading failures.
8447	- updated IANA portlist.
8448
844916 January 2009: Wouter
8450	- more quiet about ipv6 network failures, i.e. when ipv6 is not
8451	  available (network unreachable). Debug still printed on high
8452	  verbosity.
8453	- unbound-host -4 and -6 options. Stops annoying ipv6 errors when
8454	  debugging with unbound-host -4 -d ...
8455	- more cycle detection for NS-check, addr-check, root-prime and
8456	  stub-prime queries in the iterator.  Avoids possible deadlock
8457	  when priming fails.
8458
845915 January 2009: Wouter
8460	- bug #229: fixup configure checks for compilation with Solaris
8461	  Sun cc compiler, ./configure CC=/opt/SUNWspro/bin/cc
8462	- fixup suncc warnings.
8463	- fix bug where unbound could crash using libevent 1.3 and older.
8464	- update testset for recent retry change.
8465
846614 January 2009: Wouter
8467	- 1.2.1 feature: negative caching for failed queries.
8468	  Queries that failed are cached for 5 seconds (NORR_TTL).
8469	  If the failure is local, like out of memory, it is not cached.
8470	- the TTL comparison for the cache used different comparisons,
8471	  causing many cache responses that used the iterator and validator
8472	  state machines unnecessarily.
8473	- retry from 4 to 5 so that EDNS drop retry is part of the first
8474	  query resolve attempt, and cached error does not stop EDNS fallback.
8475	- remove debug prints that protect against bad referrals.
8476	- honor QUIET=no on make commandline (or QUIET=yes ).
8477
847813 January 2009: Wouter
8479	- fixed bug in lameness marking, removed printouts.
8480	- find NS rrset more cleanly for qtype NS.
8481	- Moved changes to 1.2.0 for release. Thanks to Mark Zealey for
8482	  reporting and logs.
8483	- 1.2.1 feature: stops resolving AAAAs promiscuously when they
8484	  are in the negative cache.
8485
848612 January 2009: Wouter
8487	- fixed bug in infrastructure lameness cache, did not lowercase
8488	  name of zone to hash when setting lame.
8489	- lameness debugging printouts.
8490
84919 January 2009: Wouter
8492	- created svn tag for 1.2.0 release.
8493	- svn trunk contains 1.2.1 version number.
8494	- iana portlist updated for todays list.
8495	- removed debug print.
8496
84978 January 2009: Wouter
8498	- new version of ldns-trunk (today) included as tarball, fixed
8499	  bug #224, building with -j race condition.
8500	- remove possible race condition in the test for race conditions.
8501
85027 January 2009: Wouter
8503	- version 1.2.0 in preparation.
8504	- feature to allow wildcards (*, ?, [], {}. ~) in trusted-keys-file
8505	  statements. (Adapted from patch by Paul Wouters).
8506	- typo fix and iana portlist updated.
8507	- porting testsuite; unused var warning, and type fixup.
8508
85096 January 2009: Wouter
8510	- fixup packet-of-death when compiled with --enable-debug.
8511	  A malformed packet could cause an internal assertion failure.
8512	- added test for HINFO canonicalisation behaviour.
8513	- fixup reported problem with transparent local-zone data where
8514	  queries with different type could get nxdomain. Now queries
8515	  with a different name get resolved normally, with different type
8516	  get a correct NOERROR/NODATA answer.
8517	- HINFO no longer downcased for validation, making unbound compatible
8518	  with bind and ldns.
8519	- fix reading included config files when chrooted.
8520	  Give full path names for include files.
8521	  Relative path names work if the start dir equals the working dir.
8522	- fix libunbound message transport when no packet buffer is available.
8523
85245 January 2009: Wouter
8525	- fixup getaddrinfo failure handling for remote control port.
8526	- added L.ROOT-SERVERS.NET. AAAA 2001:500:3::42 to builtin root hints.
8527	- fixup so it works with libev-3.51 from http://dist.schmorp.de/libev/
8528	- comm_timer_set performs base_set operation after event_add.
8529
853018 December 2008: Wouter
8531	- fixed bug reported by Duane Wessels: error in DLV lookup, would make
8532	  some zones that had correct DLV keys as insecure.
8533	- follows -rc makedist from ldns changes (no _rc).
8534	- ldns tarball updated with 1.4.1rc for DLV unit test.
8535	- verbose prints about recursion lame detection and server selection.
8536	- fixup BSD port for infra host storage. It hashed wrongly.
8537	- fixup makedist snapshot name generation.
8538	- do not reopen syslog to avoid dev/log dependency.
8539
854017 December 2008: Wouter
8541	- follows ldns makedist.sh. -rc option. autom4te dir removed.
8542	- unbound-control status command.
8543	- extended statistics has a number of ipv6 queries counter.
8544	  contrib/unbound_munin_ was updated to draw ipv6 in the hits graph.
8545
854616 December 2008: Wouter
8547	- follow makedist improvements from ldns, for maintainers prereleases.
8548	- snapshot version uses _ not - to help rpm distinguish the
8549	  version number.
8550
855111 December 2008: Wouter
8552	- better fix for bug #219: use LOG_NDELAY with openlog() call.
8553	  Thanks to Tamas Tevesz.
8554
85559 December 2008: Wouter
8556	- bug #221 fixed: unbound checkconf checks if key files exist if
8557	  remote control is enabled. Also fixed NULL printf when not chrooted.
8558	- iana portlist updated.
8559
85603 December 2008: Wouter
8561	- Fix problem reported by Jaco Engelbrecht where unbound-control stats
8562	  freezes up unbound if this was compiled without threading, and
8563	  was using multiple processes.
8564	- iana portlist updated.
8565	- test for remote control with interprocess communication.
8566	- created command distribution mechanism so that remote control
8567	  commands other than 'stats' work on all processes in a nonthreaded
8568	  compiled version. dump/load cache work, on the first process.
8569	- fixup remote control local_data addition memory corruption bug.
8570
85711 December 2008: Wouter
8572	- SElinux policy files in contrib/selinux for the unbound daemon,
8573	  by Paul Wouters and Adam Tkac.
8574
857525 November 2008: Wouter
8576	- configure complains when --without-ssl is given (bug #220).
8577	- skip unsupported feature tests on vista/mingw.
8578	- fixup testcode/streamtcp to work on vista/mingw.
8579	- root-hints test checks version of dig required.
8580	- blacklisted servers are polled at a low rate (1%) to see if they
8581	  come back up. But not if there is some other working server.
8582
858324 November 2008: Wouter
8584	- document that the user of the server daemon needs read privileges
8585	  on the keys and certificates generated by unbound-control-setup.
8586	  This is different per system or distribution, usually, running the
8587	  script under the same username as the server uses suffices.
8588	  i.e.  sudo -u unbound unbound-control-setup
8589	- testset port to vista/mingw.
8590	- tcp_sigpipe to freebsd port.
8591
859221 November 2008: Wouter
8593	- fixed tcp accept, errors were printed when they should not.
8594	- unbound-control-setup.sh removes read/write permissions other
8595	  from the keys it creates (as suggested by Dmitriy Demidov).
8596
859720 November 2008: Wouter
8598	- fixup fatal error due to faulty error checking after tcp accept.
8599	- add check in rlimit to avoid integer underflow.
8600	- rlimit check with new formula; better estimate for number interfaces
8601	- nicer comments in rlimit check.
8602	- tag 1.1.1 created in svn.
8603	- trunk label is 1.1.2
8604
860519 November 2008: Wouter
8606	- bug #219: fixed so that syslog which delays opening until the first
8607	  log line is written, gets a log line while not chroot'ed yet.
8608
860918 November 2008: Wouter
8610	- iana portlist updated.
8611	- removed cast in unit test debug print that was not 64bit safe.
8612	- trunk back to 1.1.0; copied to tags 1.1.0 release.
8613	- trunk to has version number 1.1.1 again.
8614	- in 1.1.1; make clean nicer. grammar in manpage.
8615
861617 November 2008: Wouter
8617	- theoretical fix for problems reported on mailing list.
8618	  If a delegation point has no A but only AAAA and do-ip6 is no,
8619	  resolution would fail. Fixed to ask for the A and AAAA records.
8620	  It has to ask for both always, so that it can fail quietly, from
8621	  TLD perspective, when a zone is only reachable on one transport.
8622	- test for above, only AAAA and doip6 is no. Fix causes A record
8623	  for nameserver to be fetched.
8624	- fixup address duplication on cache fillup for delegation points.
8625	- testset updated for new query answer requirements.
8626
862714 November 2008: Wouter
8628	- created 1.1.0 release tag in svn.
8629	- trunk moved to 1.1.1
8630	- fixup unittest-neg for locking.
8631
863213 November 2008: Wouter
8633	- added fedora init and specfile to contrib (by Paul Wouters).
8634	- added configure check for ldns 1.4.0 (using its compat funcs).
8635	- neater comments in worker.h.
8636	- removed doc/plan and updated doc/TODO.
8637	- silenced EHOSTDOWN (verbosity 2 or higher to see it).
8638	- review comments from Jelte, Matthijs. Neater code.
8639
864012 November 2008: Wouter
8641	- add unbound-control manpage to makedist replace list.
8642
864311 November 2008: Wouter
8644	- unit test for negative cache, stress tests the refcounting.
8645	- fix for refcounting error that could cause fptr_wlist fatal exit
8646	  in the negative cache rbtree (upcoming 1.1 feature). (Thanks to
8647	  Attila Nagy for testing).
8648	- nicer comments in cachedump about failed RR to string conversion.
8649	- fix 32bit wrap around when printing large (4G and more) mem usage
8650	  for extended statistics.
8651
865210 November 2008: Wouter
8653	- fixup the getaddrinfo compat code rename.
8654
86558 November 2008: Wouter
8656	- added configure check for eee build warning.
8657
86587 November 2008: Wouter
8659	- fix bug 217: fixed, setreuid and setregid do not work on MacOSX10.4.
8660	- detect nonblocking problems in network stack in configure script.
8661
86626 November 2008: Wouter
8663	- dname_priv must decompress the name before comparison.
8664	- iana portlist updated.
8665
86665 November 2008: Wouter
8667	- fixed possible memory leak in key_entry_key deletion.
8668	  Would leak a couple bytes when trust anchors were replaced.
8669	- if query and reply qname overlap, the bytes are skipped not copied.
8670	- fixed file descriptor leak when messages were jostled out that
8671	  had outstanding (TCP) replies.
8672	- DNAMEs used from cache have their synthesized CNAMEs initialized
8673	  properly.
8674	- fixed file descriptor leak for localzone type deny (for TCP).
8675	- fixed memleak at exit for nsec3 negative cached zones.
8676	- fixed memleak for the keyword 'nodefault' when reading config.
8677	- made verbosity of 'edns incapable peer' warning higher, so you
8678	  do not get spammed by it.
8679	- caught elusive Bad file descriptor error bug, that would print the
8680	  error while unnecessarily try to listen to a closed fd. Fixed.
8681
86824 November 2008: Wouter
8683	- fixed -Wwrite-strings warnings that result in better code.
8684
86853 November 2008: Wouter
8686	- fixup build process for Mac OSX linker, use ldns b32 compat funcs.
8687	- generated configure with autoconf-2.61.
8688	- iana portlist updated.
8689	- detect if libssl needs libdl.  For static linking with libssl.
8690	- changed to use new algorithm identifiers for sha256/sha512
8691	  from ldns 1.4.0 (need very latest version).
8692	- updated the included ldns tarball.
8693	- proper detection of SHA256 and SHA512 functions (not just sizes).
8694
869523 October 2008: Wouter
8696	- a little more debug info for failure on signer names. prints names.
8697
869822 October 2008: Wouter
8699	- CFLAGS are picked up by configure from the environment.
8700	- iana portlist updated.
8701	- updated ldns to use 1.4.0-pre20081022 so it picks up CFLAGS too.
8702	- new stub-prime: yesno option. Default is off, so it does not prime.
8703	  can be turned on to get same behaviour as previous unbound release.
8704	- made automated test that checks if builtin root hints are uptodate.
8705	- finished draft-wijngaards-dnsext-resolver-side-mitigation
8706	  implementation. The unwanted-reply-threshold can be set.
8707	- fixup so fptr_whitelist test in alloc.c works.
8708
870921 October 2008: Wouter
8710	- fix update-anchors.sh, so it does not report different RR order
8711	  as an update.  Sorts the keys in the file.  Updated copyright.
8712	- fixup testbound on windows, the command control pipe doesn't exist.
8713	- skip 08hostlib test on windows, no fork() available.
8714	- made unbound-remote work on windows.
8715
871620 October 2008: Wouter
8717	- quench a log message that is debug only.
8718	- iana portlist updated.
8719	- do not query bogus nameservers.  It is like nameservers that have
8720	  the NS or A or AAAA record bogus are listed as donotquery.
8721	- if server selection is faced with only bad choices, it will
8722	  attempt to get more options to be fetched.
8723	- changed bogus-ttl default value from 900 to 60 seconds.
8724	  In anticipation that operator caused failures are more likely than
8725	  actual attacks at this time.  And thus repeated validation helps
8726	  the operators get the problem fixed sooner.  It makes validation
8727	  failures go away sooner (60 seconds after the zone is fixed).
8728	  Also it is likely to try different nameserver targets every minute,
8729	  so that if a zone is bad on one server but not another, it is
8730	  likely to pick up the 'correct' one after a couple minutes,
8731	  and if the TTL is big enough that solves validation for the zone.
8732	- fixup unbound-control compilation on windows.
8733
873417 October 2008: Wouter
8735	- port Leopard/G5: fixup type conversion size_t/uint32.
8736	  please ranlib, stop file without symbols warning.
8737	- harden referral path now also validates the root after priming.
8738	  It looks up the root NS authoritatively as well as the root servers
8739	  and attemps to validate the entries.
8740
874116 October 2008: Wouter
8742	- Fixup negative TTL values appearing (reported by Attila Nagy).
8743
874415 October 2008: Wouter
8745	- better documentation for 0x20; remove fallback TODO, it is done.
8746	- harden-referral-path feature includes A, AAAA queries for glue,
8747	  as well as very careful NS caching (only when doing NS query).
8748	  A, AAAA use the delegation from the NS-query.
8749
875014 October 2008: Wouter
8751	- fwd_three.tpkg test was flaky.  If the three requests hit the
8752	  wrong threads by chance (or bad OS) then the test would fail.
8753	  Made less flaky by increasing number of retries.
8754	- stub_udp.tpkg changed to work, give root hints. fixed ldns_dname_abs.
8755	- ldns tarball is snapshot of ldns r2759 (1.4.0-pre-20081014).
8756	  Which includes the ldns_dname_absolute fix.
8757	- fwd_three test remains flaky now that unbound does not stop
8758	  listening when full.  Thus, removed timeout problem.
8759	  It may be serviced by three threads, or maybe by one.
8760	  Mostly only useful for lock-check testing now.
8761
876213 October 2008: Wouter
8763	- fixed recursion servers deployed as authoritative detection, so
8764	  that as a last resort, a +RD query is sent there to get the
8765	  correct answer.
8766	- iana port list update.
8767	- ldns tarball is snapshot of ldns r2759 (1.4.0-pre-20081013).
8768
876910 October 2008: Wouter
8770	- fixup tests - the negative cache contained the correct NSEC3s for
8771	  two tests that are supposed to fail to validate.
8772
87739 October 2008: Wouter
8774	- negative cache caps max iterations of NSEC3 done.
8775	- NSEC3 negative cache for qtype DS works.
8776
87778 October 2008: Wouter
8778	- NSEC negative cache for DS.
8779
87806 October 2008: Wouter
8781	- jostle-timeout option, so you can config for slow links.
8782	- 0x20 fallback code.  Tries 3xnumber of nameserver addresses
8783	  queries that must all be the same.  Sent to random nameservers.
8784	- documented choices for DoS, EDNS, 0x20.
8785
87862 October 2008: Wouter
8787	- fixup unlink of pidfile.
8788	- fixup SHA256 algorithm collation code.
8789	- contrib/update-anchor.sh does not overwrite anchors if not needed.
8790	  exits 0 when a restart is needed, other values if not.
8791	  so,  update-anchor.sh -d mydir && /etc/rc.d/unbound restart
8792	  can restart unbound exactly when needed.
8793
879430 September 2008: Wouter
8795	- fixup SHA256 DS downgrade, no longer possible to downgrade to SHA1.
8796	- tests for sha256 support and downgrade resistance.
8797	- RSASHA256 and RSASHA512 support (using the draft in dnsext),
8798	  using the drafted protocol numbers.
8799	- when using stub on localhost (127.0.0.1@10053) unbound works.
8800	  Like when running NSD to host a local zone, on the same machine.
8801	  The noprime feature. manpages more explanation. Added a test for it.
8802	- shorthand for reverse PTR,  local-data-ptr: "1.2.3.4 www.ex.com"
8803
880429 September 2008: Wouter
8805	- EDNS lameness detection, if EDNS packets are dropped this is
8806	  detected, eventually.
8807	- multiple query timeout rtt backoff does not backoff too much.
8808
880926 September 2008: Wouter
8810	- tests for remote-control.
8811	- small memory leak in exception during remote control fixed.
8812	- fixup for lock checking but not unchecking in remote control.
8813	- iana portlist updated.
8814
881523 September 2008: Wouter
8816	- Msg cache is loaded. A cache load enables cache responses.
8817	- unbound-control flush [name], flush_type and flush_zone.
8818
881922 September 2008: Wouter
8820	- dump_cache and load_cache statements in unbound-control.
8821	  RRsets are dumped and loaded correctly.
8822	  Msg cache is dumped.
8823
882419 September 2008: Wouter
8825	- locking on the localdata structure.
8826	- add and remove local zone and data with unbound-control.
8827	- ldns trunk snapshot updated, make tests work again.
8828
882918 September 2008: Wouter
8830	- fixup error in time calculation.
8831	- munin plugin improvements.
8832	- nicer abbreviations for high query types values (ixfr, axfr, any...)
8833	- documented the statistics output in unbound-control man page.
8834	- extended statistics prints out histogram, over unbound-control.
8835
883617 September 2008: Wouter
8837	- locking for threadsafe bogus rrset counter.
8838	- ldns trunk no longer exports b32 functions, provide compat.
8839	- ldns tarball updated.
8840	- testcode/ldns-testpkts.c const fixups.
8841	- fixed rcode stat printout.
8842	- munin plugin in contrib.
8843	- stats always printout uptime, because stats plugins need it.
8844
884516 September 2008: Wouter
8846	- extended-statistics: yesno config option.
8847	- unwanted replies spoof nearmiss detector.
8848	- iana portlist updated.
8849
885015 September 2008: Wouter
8851	- working start, stop, reload commands for unbound-control.
8852	- test for unbound-control working; better exit value for control.
8853	- verbosity control via unbound-control.
8854	- unbound-control stats.
8855
885612 September 2008: Wouter
8857	- removed browser control mentions. Proto speccy.
8858
885911 September 2008: Wouter
8860	- set nonblocking on new TCP streams, because linux does not inherit
8861	  the socket options to the accepted socket.
8862	- fix TCP timeouts.
8863	- SSL protected connection between server and unbound-control.
8864
886510 September 2008: Wouter
8866	- remove memleak in privacy addresses on reloads and quits.
8867	- remote control work.
8868
88699 September 2008: Wouter
8870	- smallapp/unbound-control-setup.sh script to set up certificates.
8871
88724 September 2008: Wouter
8873	- scrubber scrubs away private addresses.
8874	- test for private addresses. man page entry.
8875	- code refactored for name and address tree lookups.
8876
88773 September 2008: Wouter
8878	- options for 'DNS Rebinding' protection: private-address and
8879	  private-domain.
8880	- dnstree for reuse of routines that help with domain, addr lookups.
8881	- private-address and private-domain config option read, stored.
8882
88832 September 2008: Wouter
8884	- DoS protection features. Queries are jostled out to make room.
8885	- testbound can pass time, increasing the internal timer.
8886	- do not mark unsigned additionals bogus, leave unchecked, which
8887	  is removed too.
8888
88891 September 2008: Wouter
8890	- disallow nonrecursive queries for cache snooping by default.
8891	  You can allow is using access-control: <subnet> allow_snoop.
8892	  The defaults do allow access no authoritative data without RD bit.
8893	- two tests for it and fixups of tests for nonrec refused.
8894
889529 August 2008: Wouter
8896	- version 1.1 number in trunk.
8897	- harden-referral-path option for query for NS records.
8898	  Default turns off expensive, experimental option.
8899
890028 August 2008: Wouter
8901	- fixup logfile handling; it is created with correct permissions
8902	  again. (from bugfix#199).
8903	  Some errors are not written to logfile (pidfile writing, forking),
8904	  and these are only visible by using the -d commandline flag.
8905
890627 August 2008: Wouter
8907	- daemon(3) is causing problems for people. Reverting the patch.
8908	  bug#200, and 199 and 203 contain sideline discussion on it.
8909	- bug#199 fixed: pidfile can be outside chroot. openlog is done before
8910	  chroot and drop permissions.
8911	- config option to set size of aggressive negative cache,
8912	  neg-cache-size.
8913	- bug#203 fixed: dlv has been implemented.
8914
891526 August 2008: Wouter
8916	- test for insecure zone when DLV is in use, also does negative cache.
8917	- test for trustanchor when DLV is in use (the anchor works).
8918	- test for DLV used for a zone below a trustanchor.
8919	- added scrub filter for overreaching NSEC records and unit test.
8920	- iana portlist update
8921	- use of setresuid or setreuid when available.
8922	- use daemon(3) if available.
8923
892425 August 2008: Wouter
8925	- realclean patch from Robert Edmonds.
8926
892722 August 2008: Wouter
8928	- nicer debuglogging of DLV.
8929	- test with secure delegation inside the DLV repository.
8930
893121 August 2008: Wouter
8932	- negative cache code linked into validator, for DLV use.
8933	  negative cache works for DLV.
8934	- iana portlist update.
8935	- dlv-anchor option for unit tests.
8936	- fixup NSEC_AT_APEX classification for short typemaps.
8937	- ldns-testns has subdomain checks, for unit tests.
8938
893920 August 2008: Wouter
8940	- negative cache code, reviewed.
8941
894218 August 2008: Wouter
8943	- changes info: in logfile to notice: info: or debug: depending on
8944	  the verbosity of the statements.  Better logfile message
8945	  classification.
8946	- bug #208: extra rc.d unbound flexibility for freebsd/nanobsd.
8947
894815 August 2008: Wouter
8949	- DLV nsec code fixed for better detection of closest existing
8950	  enclosers from NSEC responses.
8951	- DLV works, straight to the dlv repository, so not for production.
8952	- Iana port update.
8953
895414 August 2008: Wouter
8955	- synthesize DLV messages from the rrset cache, like done for DS.
8956
895713 August 2008: Wouter
8958	- bug #203: nicer do-auto log message when user sets incompatible
8959	  options.
8960	- bug #204: variable name ameliorated in log.c.
8961	- bug #206: in iana_update, no egrep, but awk use.
8962	- ldns snapshot r2699 taken (includes DLV type).
8963	- DLV work, config file element, trust anchor read in.
8964
896512 August 2008: Wouter
8966	- finished adjusting testset to provide qtype NS answers.
8967
896811 August 2008: Wouter
8969	- Fixup rrset security updates overwriting 2181 trust status.
8970	  This makes validated to be insecure data just as worthless as
8971	  nonvalidated data, and 2181 rules prevent cache overwrites to them.
8972	- Fix assertion fail on bogus key handling.
8973	- dnssec lameness detection works on first query at trust apex.
8974	- NS queries get proper cache and dnssec lameness treatment.
8975	- fixup compilation without pthreads on linux.
8976
89778 August 2008: Wouter
8978	- NS queries are done after every referral.
8979	  validator is used on those NS records (if anchors enabled).
8980
89817 August 2008: Wouter
8982	- Scrubber more strict. CNAME chains, DNAMEs from cache, other
8983	  irrelevant rrsets removed.
8984	- 1.0.2 released from 1.0 support branch.
8985	- fixup update-anchor.sh to work both in BSD shell and bash.
8986
89875 August 2008: Wouter
8988	- fixup DS test so apex nodata works again.
8989
89904 August 2008: Wouter
8991	- iana port update.
8992	- TODO update.
8993	- fix bug 201: null ptr deref on cleanup while udp pkts wait for port.
8994	- added explanatory text for outgoing-port-permit in manpage.
8995
899630 July 2008: Wouter
8997	- fixup bug qtype DS for unsigned zone and signed parent validation.
8998
899925 July 2008: Wouter
9000	- added original copyright statement of OpenBSD arc4random code.
9001	- created tube signaling solution on windows, as a pipe replacement.
9002	  this makes background asynchronous resolution work on windows.
9003	- removed very insecure socketpair compat code. It also did not
9004	  work with event_waiting. Solved by pipe replacement.
9005	- unbound -h prints openssl version number as well.
9006
900722 July 2008: Wouter
9008	- moved pipe actions to util/tube.c. easier porting and shared code.
9009	- check _raw() commpoint callbacks with fptr_wlist.
9010	- iana port update.
9011
901221 July 2008: Wouter
9013	- #198: nicer entropy warning message. manpage OS hints.
9014
901519 July 2008: Wouter
9016	- #198: fixup man page to suggest chroot entropy fix.
9017
901818 July 2008: Wouter
9019	- branch for 1.0 support.
9020	- trunk work on tube.c.
9021
902217 July 2008: Wouter
9023	- fix bug #196, compile outside source tree.
9024	- fix bug #195, add --with-username=user configure option.
9025	- print error and exit if started with config that requires more
9026	  fds than the builtin minievent can handle.
9027
902816 July 2008: Wouter
9029	- made svn tag 1.0.1, trunk now 1.0.2
9030	- sha256 checksums enabled in makedist.sh
9031
903215 July 2008: Wouter
9033	- Follow draft-ietf-dnsop-default-local-zones-06 added reverse
9034	  IPv6 example prefix to AS112 default blocklist.
9035	- fixup lookup of DS records by client with trustanchor for same.
9036	- libunbound ub_resolve, fix handling of error condition during setup.
9037	- lowered log_hex blocksize to fit through BSD syslog linesize.
9038	- no useless initialisation if getpwnam not available.
9039	- iana, ldns snapshot updated.
9040
90413 July 2008: Wouter
9042	- Matthijs fixed memory leaks in root hints file reading.
9043
904426 June 2008: Wouter
9045	- fixup streamtcp bounds setting for udp mode, in the test framework.
9046	- contrib item for updating trust anchors.
9047
904825 June 2008: Wouter
9049	- fixup fwd_ancil test typos.
9050	- Fix for newegg lameness : ok for qtype=A, but lame for others.
9051	- fixup unit test for infra cache, test lame merging.
9052	- porting to mingw, bind, listen, getsockopt and setsockopt error
9053	  handling.
9054
905524 June 2008: Wouter
9056	- removed testcode/checklocks from production code compilation path.
9057	- streamtcp can use UDP mode (connected UDP socket), for testing IPv6
9058	  on windows.
9059	- fwd_ancil test fails if platform support is lacking.
9060
906123 June 2008: Wouter
9062	- fixup minitpkg to cleanup on windows with its file locking troubles.
9063	- minitpkg shows skipped tests in report.
9064	- skip ipv6 tests on ipv4 only hosts (requires only ipv6 localhost not
9065	  ipv6 connectivity).
9066	- winsock event handler keeps track of sticky TCP events, that have
9067	  not been fully handled yet. when interest in the event(s) resumes,
9068	  they are sent again. When WOULDBLOCK is returned events are cleared.
9069	- skip tests that need signals when testing on mingw.
9070
907118 June 2008: Wouter
9072	- open testbound replay files in binary mode, because fseek/ftell
9073	  do not work in ascii-mode on windows. The b does nothing on unix.
9074	  unittest and testbound tests work on windows (xp too).
9075	- ioctlsocket prints nicer error message.
9076	- fixed up some TCP porting for winsock.
9077	- lack of IPv6 gives a warning, no fatal error.
9078	- use WSAGetLastError() on windows instead of errno for some errors.
9079
908017 June 2008: Wouter
9081	- outgoing num fds 32 by default on windows ; it supports less
9082	  fds for waiting on than unixes.
9083	- winsock_event minievent handler for windows. (you could also
9084	  attempt to link with libevent/libev ports for windows).
9085	- neater crypto check and gdi32 detection.
9086	- unbound.exe works to resolve and validate www.nlnetlabs.nl on vista.
9087
908816 June 2008: Wouter
9089	- on windows, use windows threads, mutex and thread-local-storage(Tls).
9090	- detect if openssl needs gdi32.
9091	- if no threading, THREADS_DISABLED is defined for use in the code.
9092	- sets USE_WINSOCK if using ws2_32 on windows.
9093	- wsa_strerror() function for more readable errors.
9094	- WSA Startup and Cleanup called in unbound.exe.
9095
909613 June 2008: Wouter
9097	- port mingw32, more signal ifdefs, detect sleep, usleep,
9098	  random, srandom (used inside the tests).
9099	- signed or unsigned FD_SET is cast.
9100
910110 June 2008: Wouter
9102	- fixup warnings compiling on eeepc xandros linux.
9103
91049 June 2008: Wouter
9105	- in iteration response type code
9106	  * first check for SOA record (negative answer) before NS record
9107	    and lameness.
9108	  * check if no AA bit for non-forwarder, and thus lame zone.
9109	    In response to error report by Richard Doty for mail.opusnet.com.
9110	- fixup unput warning from lexer on freeBSD.
9111	- bug#183. pidfile, rundir, and chroot configure options. Also the
9112	  example.conf and manual pages get the configured defaults.
9113	  You can use: (or accept the defaults to /usr/local/etc/unbound/)
9114	  --with-conf-file=filename
9115	  --with-pidfile=filename
9116	  --with-run-dir=path
9117	  --with-chroot-dir=path
9118
91198 June 2008: Wouter
9120	- if multiple CNAMEs, use the first one. Fixup akamai CNAME bug.
9121	  Reported by Robert Edmonds.
9122	- iana port updated.
9123
91244 June 2008: Wouter
9125	- updated libtool files with newer version.
9126	- iana portlist updated.
9127
91283 June 2008: Wouter
9129	- fixup local-zone: "30.172.in-addr.arpa." nodefault, so that the
9130	  trailing dot is not used during comparison.
9131
91322 June 2008: Wouter
9133	- Jelte fixed bugs in my absence
9134	  - bug 178: fixed unportable shell usage in configure (relied on
9135	    bash shell).
9136	  - bug 180: fixed buffer overflow in unbound-checkconf use of strncat.
9137	  - bug 181: fixed buffer overflow in ldns (called by unbound to parse
9138	    config file parts).
9139	- fixes by Wouter
9140	  - bug 177: fixed compilation failure on opensuse, the
9141	    --disable-static configure flag caused problems.  (Patch from
9142	    Klaus Singvogel)
9143	  - bug 179: same fix as 177.
9144	  - bug 185: --disable-shared not passed along to ldns included with
9145	    unbound. Fixed so that configure parameters are passed to the
9146	    subdir configure script.
9147	    fixed that ./libtool is used always, you can still override
9148	    manually with ./configure libtool=mylibtool or set $libtool in
9149	    the environment.
9150	- update of the ldns tarball to current ldns svn version (fix 181).
9151	- bug 184: -r option for unbound-host, read resolv.conf for
9152	  forwarder. (Note that forwarder must support DNSSEC for validation
9153	  to succeed).
9154
915523 May 2008: Wouter
9156	- mingw32 porting.
9157	  - test for sys/wait.h
9158	  - WSAEWOULDBLOCK test after nonblocking TCP connect.
9159	  - write_iov_buffer removed: unused and no struct iov on windows.
9160	  - signed/unsigned warning fixup mini_event.
9161	  - use ioctlsocket to set nonblocking I/O if fnctl is unavailable.
9162	  - skip signals that are not defined
9163	  - detect pwd.h.
9164	  - detect getpwnam, getrlimit, setsid, sbrk, chroot.
9165	  - default config has no chroot if chroot() unavailable.
9166	  - if no kill() then no pidfile is read or written.
9167	  - gmtime_r is replaced by nonthreadsafe alternative if unavail.
9168	    used in rrsig time validation errors.
9169
917022 May 2008: Wouter
9171	- contrib unbound.spec from Patrick Vande Walle.
9172	- fixup bug#175: call tzset before chroot to have correct timestamps
9173	  in system log.
9174	- do not generate lex input and lex unput functions.
9175	- mingw port. replacement functions labelled _unbound.
9176	- fix bug 174 - check for tcp_sigpipe that ldns-testns is installed.
9177
917819 May 2008: Wouter
9179	- fedora 9, check in6_pktinfo define in configure.
9180	- CREDITS fixup of history.
9181	- ignore ldns-1.2.2 if installed, use builtin 1.3.0-pre alternative.
9182
918316 May 2008: Wouter
9184	- fixup for MacOSX hosts file reading (reported by John Dickinson).
9185	- created 1.0.0 svn tag.
9186	- trunk version 1.0.1.
9187
918814 May 2008: Wouter
9189	- accepted patch from Ondrej Sury for library version libtool option.
9190	- configure --disable-rpath fixes up libtool for rpath trouble.
9191	  Adapted from debian package patch file.
9192
919313 May 2008: Wouter
9194	- Added root ipv6 addresses to builtin root hints.
9195	- TODO modified for post 1.0 plans.
9196	- trunk version set to 1.0.0.
9197	- no unnecessary linking with librt (only when libevent/libev used).
9198
91997 May 2008: Wouter
9200	- fixup no-ip4 problem with error callback in outside network.
9201
920225 April 2008: Wouter
9203	- DESTDIR is honored by the Makefile for rpms.
9204	- contrib files unbound.spec and unbound.init, builds working RPM
9205	  on FC7 Linux, a chrooted caching resolver, and libunbound.
9206	- iana ports update.
9207
920824 April 2008: Wouter
9209	- chroot checks improved. working directory relative to chroot.
9210	  checks if config file path is inside chroot. Documentation on it.
9211	- nicer example.conf text.
9212	- created 0.11 tag.
9213
921423 April 2008: Wouter
9215	- parseunbound.pl contrib update from Kai Storbeck for threads.
9216	- iana ports update
9217
921822 April 2008: Wouter
9219	- ignore SIGPIPE.
9220	- unit test for SIGPIPE ignore.
9221
922221 April 2008: Wouter
9223	- FEATURES document.
9224	- fixup reread of config file if it was given as a full path
9225	  and chroot was used.
9226
922716 April 2008: Wouter
9228	- requirements doc, updated clean query returns.
9229	- parseunbound.pl update from Kai Storbeck.
9230	- sunos4 porting changes.
9231
923215 April 2008: Wouter
9233	- fixup default rc.d pidfile location to /usr/local/etc.
9234	- iana ports updated.
9235	- copyright updated in ldns-testpkts to keep same as in ldns.
9236	- fixup checkconf chroot tests a bit more, chdir must be inside
9237	  chroot dir.
9238	- documented 'gcc: unrecognized -KPIC option' errors on Solaris.
9239	- example.conf values changed to /usr/local/etc/unbound
9240	- DSA test work.
9241	- DSA signatures: unbound is compatible with both encodings found.
9242	  It will detect and convert when necessary.
9243
924414 April 2008: Wouter
9245	- got update for parseunbound.pl statistics script from Kai Storbeck.
9246	- tpkg tests for udp wait list.
9247	- documented 0x20 status.
9248	- fixup chroot and checkconf, it is much smarter now.
9249	- fixup DSA EVP signature decoding. Solution that Jelte found copied.
9250	- and check first sig byte for the encoding type.
9251
925211 April 2008: Wouter
9253	- random port selection out of the configged ports.
9254	- fixup threadsafety for libevent-1.4.3+ (event_base_get_method).
9255	- removed base_port.
9256	- created 256-port ephemeral space for the OS, 59802 available.
9257	- fixup consistency of port_if out array during heavy use.
9258
925910 April 2008: Wouter
9260	- --with-libevent works with latest libevent 1.4.99-trunk.
9261	- added log file statistics perl script to contrib.
9262	- automatic iana ports update from makefile. 60058 available.
9263
92649 April 2008: Wouter
9265	- configure can detect libev(from its build directory) when passed
9266	  --with-libevent=/home/wouter/libev-3.2
9267	  libev-3.2 is a little faster than libevent-1.4.3-stable (about 5%).
9268	- unused commpoints not listed in epoll list.
9269	- statistics-cumulative option so that the values are not reset.
9270	- config creates array of available ports, 61841 available,
9271	  it excludes <1024 and iana assigned numbers.
9272	  config statements to modify the available port numbers.
9273
92748 April 2008: Wouter
9275	- unbound tries to set the ulimit fds when started as server.
9276	  if that does not work, it will scale back its requirements.
9277
927827 March 2008: Wouter
9279	- documented /dev/random symlink from chrootdir as FAQ entry.
9280
928126 March 2008: Wouter
9282	- implemented AD bit signaling. If a query sets AD bit (but not DO)
9283	  then the AD bit is set in the reply if the answer validated.
9284	  Without including DNSSEC signatures. Useful if you have a trusted
9285	  path from the client to the resolver. Follows dnssec-updates draft.
9286
928725 March 2008: Wouter
9288	- implemented check that for NXDOMAIN and NOERROR answers a query
9289	  section must be present in the reply (by the scrubber). And it must
9290	  be equal to the question sent, at least lowercase folded.
9291	  Previously this feature happened because the cache code refused
9292	  to store such messages. However blocking by the scrubber makes
9293	  sure nothing gets into the RRset cache. Also, this looks like a
9294	  timeout (instead of an allocation failure) and this retries are
9295	  done (which is useful in a spoofing situation).
9296	- RTT banding. Band size 400 msec, this makes band around zero (fast)
9297	  include unknown servers. This makes unbound explore unknown servers.
9298
92997 March 2008: Wouter
9300	- -C config feature for harvest program.
9301	- harvest handles CNAMEs too.
9302
93035 March 2008: Wouter
9304	- patch from Hugo Koji Kobayashi for iterator logs spelling.
9305
93064 March 2008: Wouter
9307	- From report by Jinmei Tatuya, rfc2181 trust value for remainder
9308	  of a cname trust chain is lower; not full answer_AA.
9309	- test for this fix.
9310	- default config file location is /usr/local/etc/unbound.
9311	  Thus prefix is used to determine the location. This is also the
9312	  chroot and pidfile default location.
9313
93143 March 2008: Wouter
9315	- Create 0.10 svn tag.
9316	- 0.11 version in trunk.
9317	- indentation nicer.
9318
931929 February 2008: Wouter
9320	- documentation update.
9321	- fixup port to Solaris of perf test tool.
9322	- updated ldns-tarball with decl-after-statement fixes.
9323
932428 February 2008: Wouter
9325	- fixed memory leaks in libunbound (during cancellation and wait).
9326	- libunbound returns the answer packet in full.
9327	- snprintf compat update.
9328	- harvest performs lookup.
9329	- ldns-tarball update with fix for ldns_dname_label.
9330	- installs to sbin by default.
9331	- install all manual pages (unbound-host and libunbound too).
9332
933327 February 2008: Wouter
9334	- option to use caps for id randomness.
9335	- config file option use-caps-for-id: yes
9336	- harvest debug tool
9337
933826 February 2008: Wouter
9339	- delay utility delays TCP as well. If the server that is forwarded
9340	  to has a TCP error, the delay utility closes the connection.
9341	- delay does REUSE_ADDR, and can handle a server that closes its end.
9342	- answers use casing from query.
9343
934425 February 2008: Wouter
9345	- delay utility works. Gets decent thoughput too (>20000).
9346
934722 February 2008: Wouter
9348	- +2% for recursions, if identical queries (except for destination
9349	  and query ID) in the reply list, avoid re-encoding the answer.
9350	- removed TODO items for optimizations that do not show up in
9351	  profile reports.
9352	- default is now minievent - not libevent. As its faster and
9353	  not needed for regular installs, only for very large port ranges.
9354	- loop check different speedup pkt-dname-reading, 1% faster for
9355	  nocache-recursion check.
9356	- less hashing during msg parse, 4% for recursion.
9357	- small speed fix for dname_count_size_labels, +1 or +2% recursion.
9358	- some speed results noted:
9359	  optimization resulted in +40% for recursion (cache miss) and
9360	  +70 to +80 for cache hits, and +96% for version.bind.
9361	  zone nsec3 example, 100 NXDOMAIN queries, NSD 35182.8 Ub 36048.4
9362	  www.nlnetlabs.nl from cache: BIND 8987.99 Ub 31218.3
9363	  www with DO bit set : BIND 8269.31 Ub 28735.6 qps.
9364	  So, unbound can be about equal qps to NSD in cache hits.
9365	  And about 3.4x faster than BIND in cache performance.
9366	- delay utility for testing.
9367
936821 February 2008: Wouter
9369	- speedup of root-delegation message encoding by 15%.
9370	- minor speedup of compress tree_lookup, maybe 1%.
9371	- speedup of dname_lab_cmp and memlowercmp - the top functions in
9372	  profiler output, maybe a couple percent when it matters.
9373
937420 February 2008: Wouter
9375	- setup speec_cache for need-ldns-testns in dotests.
9376	- check number of queued replies on incoming queries to avoid overload
9377	  on that account.
9378	- fptr whitelist checks are not disabled in optimize mode.
9379	- do-daemonize config file option.
9380	- minievent time share initializes time at start.
9381	- updated testdata for nsec3 new algorithm numbers (6, 7).
9382	- small performance test of packet encoding (root delegation).
9383
938419 February 2008: Wouter
9385	- applied patch to unbound-host man page from Jan-Piet Mens.
9386	- fix donotquery-localhost: yes default (it erroneously was switched
9387	  to default 'no').
9388	- time is only gotten once and the value is shared across unbound.
9389	- unittest cleans up crypto, so that it has no memory leaks.
9390	- mini_event shares the time value with unbound this results in
9391	  +3% speed for cache responses and +9% for recursions.
9392	- ldns tarball update with new NSEC3 sign code numbers.
9393	- perform several reads per UDP operation. This improves performance
9394	  in DoS conditions, and costs very little in normal conditions.
9395	  improves cache response +50%, and recursions +10%.
9396	- modified asynclook test. because the callback from async is not
9397	  in any sort of lock (and thus can use all library functions freely),
9398	  this causes a tiny race condition window when the last lock is
9399	  released for a callback and a new cancel() for that callback.
9400	  The only way to remove this is by putting callbacks into some
9401	  lock window. I'd rather have the small possibility of a callback
9402	  for a cancelled function then no use of library functions in
9403	  callbacks. Could be possible to only outlaw process(), wait(),
9404	  cancel() from callbacks, by adding another lock, but I'd rather not.
9405
940618 February 2008: Wouter
9407	- patch to unbound-host from Jan-Piet Mens.
9408	- unbound host prints errors if fails to configure context.
9409	- fixup perf to resend faster, so that long waiting requests do
9410	  not hold up the queue, they become lost packets or SERVFAILs,
9411	  or can be sent a little while later (i.e. processing time may
9412	  take long, but throughput has to be high).
9413	- fixup iterator operating in no cache conditions (RD flag unset
9414	  after a CNAME).
9415	- streamlined code for RD flag setting.
9416	- profiled code and changed dname compares to be faster.
9417	  The speedup is about +3% to +8% (depending on the test).
9418	- minievent tests for eintr and eagain.
9419
942015 February 2008: Wouter
9421	- added FreeBSD rc.d script to contrib.
9422	- --prefix option for configure also changes directory: pidfile:
9423	  and chroot: defaults in config file.
9424	- added cache speed test, for cache size OK and cache too small.
9425
942614 February 2008: Wouter
9427	- start without a config file (will complain, but start with
9428	  defaults).
9429	- perf test program works.
9430
943113 February 2008: Wouter
9432	- 0.9 released.
9433	- 1.0 development. Printout ldns version on unbound -h.
9434	- start of perf tool.
9435	- bugfix to read empty lines from /etc/hosts.
9436
943712 February 2008: Wouter
9438	- fixup problem with configure calling itself if ldns-src tarball
9439	  is not present.
9440
944111 February 2008: Wouter
9442	- changed library to use ub_ instead of ub_val_ as prefix.
9443	- statistics output text nice.
9444	- etc/hosts handling.
9445	- library function to put logging to a stream.
9446	- set any option interface.
9447
94488 February 2008: Wouter
9449	- test program for multiple queries over a TCP channel.
9450	- tpkg test for stream tcp queries.
9451	- unbound replies to multiple TCP queries on a TCP channel.
9452	- fixup misclassification of root referral with NS in answer
9453	  when validating a nonrec query.
9454	- tag 0.9
9455	- layout of manpages, spelling fix in header, manpages process by
9456	  makedist, list asynclook and tcpstream tests as ldns-testns
9457	  required.
9458
94597 February 2008: Wouter
9460	- moved up all current level 2 to be level 3. And 3 to 4.
9461	  to make room for new debug level 2 for detailed information
9462	  for operators.
9463	- verbosity level 2. Describes recursion and validation.
9464	- cleaner configure script and fixes for libevent solaris.
9465	- signedness for log output memory sizes in high verbosity.
9466
94676 February 2008: Wouter
9468	- clearer explanation of threading configure options.
9469	- fixup asynclook test for nothreading (it creates only one process
9470	  to do the extended test).
9471	- changed name of ub_val_result_free to ub_val_resolve_free.
9472	- removes warning message during library linking, renamed
9473	  libunbound/unbound.c -> libunbound.c and worker to libworker.
9474	- fallback without EDNS if result is NOTIMPL as well as on FORMERR.
9475
94765 February 2008: Wouter
9477	- statistics-interval: seconds option added.
9478	- test for statistics option
9479	- ignore errors making directories, these can occur in parallel builds
9480	- fixup Makefile strip command and libunbound docs typo.
9481
948231 January 2008: Wouter
9483	- bg thread/process reads and writes the pipe nonblocking all the time
9484	  so that even if the pipe is buffered or so, the bg thread does not
9485	  block, and services both pipes and queries.
9486
948730 January 2008: Wouter
9488	- check trailing / on chrootdir in checkconf.
9489	- check if root hints and anchor files are in chrootdir.
9490	- no route to host tcp error is verbosity level 2.
9491	- removed unused send_reply_iov. and its configure check.
9492	- added prints of 'remote address is 1.2.3.4 port 53' to errors
9493	  from netevent; the basic socket errors.
9494
949528 January 2008: Wouter
9496	- fixup uninit use of buffer by libunbound (query id, flags) for
9497	  local_zone answers.
9498	- fixup uninit warning from random.c; also seems to fix sporadic
9499	  sigFPE coming out of openssl.
9500	- made openssl entropy warning more silent for library use. Needs
9501	  verbosity 1 now.
9502	- fixup forgotten locks for rbtree_searches on ctx->query tree.
9503	- random generator cleanup - RND_STATE_SIZE removed, and instead
9504	  a super-rnd can be passed at init to chain init random states.
9505	- test also does lock checks if available.
9506	- protect config access in libworker_setup().
9507	- libevent doesn't like comm_base_exit outside of runloop.
9508	- close fds after removing commpoints only (for epoll, kqueue).
9509
951025 January 2008: Wouter
9511	- added tpkg for asynclook and library use.
9512	- allows localhost to be queried when as a library.
9513	- fixup race condition between cancel and answer (in case of
9514	  really fast answers that beat the cancel).
9515	- please doxygen, put doxygen comment in one place.
9516	- asynclook -b blocking mode and test.
9517	- refactor asynclook, nicer code.
9518	- fixup race problems from opensll in rand init from library, with
9519	  a mutex around the rand init.
9520	- fix pass async_id=NULL to _async resolve().
9521	- rewrote _wait() routine, so that it is threadsafe.
9522	- cancelation is threadsafe.
9523	- asynclook extended test in tpkg.
9524	- fixed two races where forked bg process waits for (somehow shared?)
9525	  locks, so does not service the query pipe on the bg side.
9526	  Now those locks are only held for fg_threads and for bg_as_a_thread.
9527
952824 January 2008: Wouter
9529	- tested the cancel() function.
9530	- asynclook -c (cancel) feature.
9531	- fix fail to allocate context actions.
9532	- make pipe nonblocking at start.
9533	- update plane for retry mode with caution to limit bandwidth.
9534	- fix Makefile for concurrent make of unbound-host.
9535	- renamed ub_val_ctx_wait/poll/process/fd to ub_val*.
9536	- new calls to set forwarding added to header and docs.
9537
953823 January 2008: Wouter
9539	- removed debug prints from if-auto, verb-algo enables some.
9540	- libunbound QUIT setup, remove memory leaks, when using threads
9541	  will share memory for passing results instead of writing it over
9542	  the pipe, only writes ID number over the pipe (towards the handler
9543	  thread that does process() ).
9544
954522 January 2008: Wouter
9546	- library code for async in libunbound/unbound.c.
9547	- fix link testbound.
9548	- fixup exit bug in mini_event.
9549	- background worker query enter and result functions.
9550	- bg query test application asynclook, it looks up multiple
9551	  hostaddresses (A records) at the same time.
9552
955321 January 2008: Wouter
9554	- libworker work, netevent raw commpoints, write_msg, serialize.
9555
955618 January 2008: Wouter
9557	- touch up of manpage for libunbound.
9558	- support for IP_RECVDSTADDR (for *BSD ip4).
9559	- fix for BSD, do not use ip4to6 mapping, make two sockets, once
9560	  ip6 and once ip4, uses socket options.
9561	- goodbye ip4to6 mapping.
9562	- update ldns-testpkts with latest version from ldns-trunk.
9563	- updated makedist for relative ldns pathnames.
9564	- library API with more information inside the result structure.
9565	- work on background resolves.
9566
956717 January 2008: Wouter
9568	- fixup configure in case -lldns is installed.
9569	- fixup a couple of doxygen warnings, about enum variables.
9570	- interface-automatic now copies the interface address from the
9571	  PKT_INFO structure as well.
9572	- manual page with library API, all on one page 'man libunbound'.
9573	- rewrite of PKTINFO structure, it also captures IP4 PKTINFO.
9574
957516 January 2008: Wouter
9576	- incoming queries to the server with TC bit on are replied FORMERR.
9577	- interface-automatic replied the wrong source address on localhost
9578	  queries. Seems to be due to ifnum=0 in recvmsg PKTINFO. Trying
9579	  to use ifnum=-1 to mean 'no interface, use kernel route'.
9580
958115 January 2008: Wouter
9582	- interface-automatic feature. experimental. Nice for anycast.
9583	- tpkg test for ip6 ancillary data.
9584	- removed debug prints.
9585	- porting experience, define for Solaris, test refined for BSD
9586	  compatibility. The feature probably will not work on OpenBSD.
9587	- makedist fixup for ldns-src in build-dir.
9588
958914 January 2008: Wouter
9590	- in no debug sets NDEBUG to remove asserts.
9591	- configure --enable-debug is needed for dependency generation
9592	  for assertions and for compiler warnings.
9593	- ldns.tgz updated with ldns-trunk (where buffer.h is updated).
9594	- fix lint, unit test in optimize mode.
9595	- default access control allows ::ffff:127.0.0.1 v6mapped localhost.
9596
959711 January 2008: Wouter
9598	- man page, warning removed.
9599	- added text describing the use of stub zones for private zones.
9600	- checkconf tests for bad hostnames (IP address), and for doubled
9601	  interface lines.
9602	- memory sizes can be given with 'k', 'Kb', or M or G appended.
9603
960410 January 2008: Wouter
9605	- typo in example.conf.
9606	- made using ldns-src that is included the package more portable
9607	  by linking with .lo instead of .o files in the ldns package.
9608	- nicer do-ip6: yes/no documentation.
9609	- nicer linking of libevent .o files.
9610	- man pages render correctly on solaris.
9611
96129 January 2008: Wouter
9613	- fixup openssl RAND problem, when the system is not configured to
9614	  give entropy, and the rng needs to be seeded.
9615
96168 January 2008: Wouter
9617	- print median and quartiles with extensive logging.
9618
96194 January 2008: Wouter
9620	- document misconfiguration in private network.
9621
96222 January 2008: Wouter
9623	- fixup typo in requirements.
9624	- document that 'refused' is a better choice than 'drop' for
9625	  the access control list, as refused will stop retries.
9626
96277 December 2007: Wouter
9628	- unbound-host has a -d option to show what happens. This can help
9629	  with debugging (why do I get this answer).
9630	- fixup CNAME handling, on nodata, sets and display canonname.
9631	- dot removed from CNAME display.
9632	- respect -v for NXDOMAINs.
9633	- updated ldns-src.tar.gz with ldns-trunk today (1.2.2 fixes).
9634	- size_t to int for portability of the header file.
9635	- fixup bogus handling.
9636	- dependencies and lint for unbound-host.
9637
96386 December 2007: Wouter
9639	- library resolution works in foreground mode, unbound-host app
9640	  receives data.
9641	- unbound-host prints rdata using ldns.
9642	- unbound-host accepts trust anchors, and prints validation
9643	  information when you give -v.
9644
96455 December 2007: Wouter
9646	- locking in context_new() inside the function.
9647	- setup of libworker.
9648
96494 December 2007: Wouter
9650	- minor Makefile fixup.
9651	- moved module-stack code out of daemon/daemon into services/modstack,
9652	  preparing for code-reuse.
9653	- move context into own header file.
9654	- context query structure.
9655	- removed unused variable pwd from checkconf.
9656	- removed unused assignment from outside netw.
9657	- check timeval length of string.
9658	- fixup error in val_utils getsigner.
9659	- fixup same (*var) error in netblocktostr.
9660	- fixup memleak on parse error in localzone.
9661	- fixup memleak on packet parse error.
9662	- put ; after union in parser.y.
9663	- small hardening in iter_operate against iq==NULL.
9664	- hardening, if error reply with rcode=0 (noerror) send servfail.
9665	- fixup same (*var) error in find_rrset in msgparse, was harmless.
9666	- check return value of evtimer_add().
9667	- fixup lockorder in lruhash_reclaim(), building up a list of locked
9668	  entries one at a time. Instead they are removed and unlocked.
9669	- fptr_wlist for markdelfunc.
9670	- removed is_locked param from lruhash delkeyfunc.
9671	- moved bin_unlock during bin_split purely to please.
9672
96733 December 2007: Wouter
9674	- changed checkconf/ to smallapp/ to make room for more support tools.
9675	  (such as unbound-host).
9676	- install dirs created with -m 755 because they need to be accessible.
9677	- library extensive featurelist added to TODO.
9678	- please doxygen, lint.
9679	- library test application, with basic functionality.
9680	- fix for building in a subdirectory.
9681	- link lib fix for Leopard.
9682
968330 November 2007: Wouter
9684	- makefile that creates libunbound.la, basic file or libunbound.a
9685	  when creating static executables (no libtool).
9686	- more API setup.
9687
968829 November 2007: Wouter
9689	- 0.9 public API start.
9690
969128 November 2007: Wouter
9692	- Changeup plan for 0.8 - no complication needed, a simple solution
9693	  has been chosen for authoritative features.
9694	- you can use single quotes in the config file, so it is possible
9695	  to specify TXT records in local data.
9696	- fixup small memory problem in implicit transparent zone creation.
9697	- test for implicit zone creation and multiple RR RRsets local data.
9698	- local-zone nodefault test.
9699	- show testbound testlist on commit.
9700	- iterator normalizer changes CNAME chains ending in NXDOMAIN where
9701	  the packet got rcode NXDOMAIN into rcode NOERROR. (since the initial
9702	  domain exists).
9703	- nicer verbosity: 0 and 1 levels.
9704	- lower nonRDquery chance of eliciting wrongly typed validation
9705	  requiring message from the cache.
9706	- fix for nonRDquery validation typing; nodata is detected when
9707	  SOA record in auth section (all validation-requiring nodata messages
9708	  have a SOA record in authority, so this is OK for the validator),
9709	  and NS record is needed to be a referral.
9710	- duplicate checking when adding NSECs for a CNAME, and test.
9711	- created svn tag 0.8, after completing testbed tests.
9712
971327 November 2007: Wouter
9714	- per suggestion in rfc2308, replaced default max-ttl value with 1 day.
9715	- set size of msgparse lookup table to 32, from 1024, so that its size
9716	  is below the 2048 regional large size threshold, and does not cause
9717	  a call to malloc when a message is parsed.
9718	- update of memstats tool to print number of allocation calls.
9719	  This is what is taking time (not space) and indicates the avg size
9720	  of the allocations as well. region_alloc stat is removed.
9721
972222 November 2007: Wouter
9723	- noted EDNS in-the-middle dropping trouble as a TODO.
9724	  At this point theoretical, no user trouble has been reported.
9725	- added all default AS112 zones.
9726	- answers from local zone content.
9727		* positive answer, the rrset in question
9728		* nodata answer (exist, but not that type).
9729		* nxdomain answer (domain does not exist).
9730		* empty-nonterminal answer.
9731		* But not: wildcard, nsec, referral, rrsig, cname/dname,
9732			or additional section processing, NS put in auth.
9733	- test for correct working of static and transparent and couple
9734	  of important defaults (localhost, as112, reverses).
9735	  Also checks deny and refuse settings.
9736	- fixup implicit zone generation and AA bit for NXDOMAIN on localdata.
9737
973821 November 2007: Wouter
9739	- local zone internal data setup.
9740
974120 November 2007: Wouter
9742	- 0.8 - str2list config support for double string config options.
9743	- local-zone and local-data options, config storage and documentation.
9744
974519 November 2007: Wouter
9746	- do not downcase NSEC and RRSIG for verification. Follows
9747	  draft-ietf-dnsext-dnssec-bis-updates-06.txt.
9748	- fixup leaking unbound daemons at end of tests.
9749	- README file updated.
9750	- nice libevent not found error.
9751	- README talks about gnu make.
9752	- 0.8: unit test for addr_mask and fixups for it.
9753	  and unit test for addr_in_common().
9754	- 0.8: access-control config file element.
9755	  and unit test rpl replay file.
9756	- 0.8: fixup address reporting from netevent.
9757
975816 November 2007: Wouter
9759	- privilege separation is not needed in unbound at this time.
9760	  TODO item marked as such.
9761	- created beta-0.7 branch for support.
9762	- tagged 0.7 for beta release.
9763	- moved trunk to 0.8 for 0.8(auth features) development.
9764	- 0.8: access control list setup.
9765
976615 November 2007: Wouter
9767	- review fixups from Jelte.
9768
976914 November 2007: Wouter
9770	- testbed script does not recreate configure, since its in svn now.
9771	- fixup checkconf test so that it does not test
9772	  /etc/unbound/unbound.conf.
9773	- tag 0.6.
9774
977513 November 2007: Wouter
9776	- remove debug print.
9777	- fixup testbound exit when LIBEVENT_SIGNAL_PROBLEM exists.
9778
977912 November 2007: Wouter
9780	- fixup signal handling where SIGTERM could be ignored if a SIGHUP
9781	  arrives later on.
9782	- bugreports to unbound-bugs@nlnetlabs.nl
9783	- fixup testbound so it exits cleanly.
9784	- cleanup the caches on a reload, so that rrsetID numbers won't clash.
9785
97869 November 2007: Wouter
9787	- took ldns snapshot in repo.
9788	- default config file is /etc/unbound/unbound.conf.
9789	  If it doesn't exist, it is installed with the doc/example.conf file.
9790	  The file is not deleted on uninstall.
9791	- default listening is not all, but localhost interfaces.
9792
97938 November 2007: Wouter
9794	- Fixup chroot and drop user privileges.
9795	- new L root ip address in default hints.
9796
97971 November 2007: Wouter
9798	- Fixup of crash on reload, due to anchors in env not NULLed after
9799	  dealloc during deinit.
9800	- Fixup of chroot call. Happens after privileges are dropped, so
9801	  that checking the passwd entry still works.
9802	- minor touch up of clear() hashtable function.
9803	- VERB_DETAIL prints out what chdir, username, chroot is being done.
9804	- when id numbers run out, caches are cleared, as in design notes.
9805	  Tested with a mock setup with very few bits in id, it worked.
9806	- harden-dnssec-stripped: yes is now default. It insists on dnssec
9807	  data for trust anchors. Included tests for the feature.
9808
980931 October 2007: Wouter
9810	- cache-max-ttl config option.
9811	- building outside sourcedir works again.
9812	- defaults more secure:
9813		username: "unbound"
9814		chroot: "/etc/unbound"
9815	  The operator can override them to be less secure ("") if necessary.
9816	- fix horrible oversight in sorting rrset references in a message,
9817	  sort per reference key pointer, not on referencepointer itself.
9818	- pidfile: "/etc/unbound/unbound.pid" is now the default.
9819	- tests changed to reflect the updated default.
9820	- created hashtable clear() function that respects locks.
9821
982230 October 2007: Wouter
9823	- fixup assertion failure that relied on compressed names to be
9824	  smaller than uncompressed names. A packet from comrite.com was seen
9825	  to be compressed to a larger size. Added it as unit test.
9826	- quieter logging at low verbosity level for common tcp messages.
9827	- no greedy TTL update.
9828
982923 October 2007: Wouter
9830	- fixup (grand-)parent problem for dnssec-lameness detection.
9831	- fixup tests to do additional section processing for lame replies,
9832	  since the detection needs that.
9833	- no longer trust in query section in reply during dnssec lame detect.
9834	- dnssec lameness does not make the server never ever queried, but
9835	  non-preferred. If no other servers exist or answer, the dnssec lame
9836	  server is used; the fastest dnssec lame server is chosen.
9837	- added test then when trust anchor cannot be primed (nodata), the
9838	  insecure mode from unbound works.
9839	- Fixup max queries per thread, any more are dropped.
9840
984122 October 2007: Wouter
9842	- added donotquerylocalhost config option. Can be turned off for
9843	  out test cases.
9844	- ISO C compat changes.
9845	- detect RA-no-AA lameness, as LAME.
9846	- DNSSEC-lameness detection, as LAME.
9847	  See notes in requirements.txt for choices made.
9848	- tests for lameness detection.
9849	- added all to make test target; need unbound for fwd tests.
9850	- testbound does not pollute /etc/unbound.
9851
985219 October 2007: Wouter
9853	- added configure (and its files) to svn, so that the trunk is easier
9854	  to use. ./configure, config.guess, config.sub, ltmain.sh,
9855	  and config.h.in.
9856	- added yacc/lex generated files, util/configlexer.c,
9857	  util/configparser.c util/configparser.h, to svn.
9858	- without lex no attempt to use it.
9859	- unsecure response validation collated into one block.
9860	- remove warning about const cast of cfgfile name.
9861	- outgoing-interfaces can be different from service interfaces.
9862	- ldns-src configure is done during unbound configure and
9863	  ldns-src make is done during unbound make, and so inherits the
9864	  make arguments from the unbound make invocation.
9865	- nicer error when libevent problem causes instant exit on signal.
9866	- read root hints from a root hint file (like BIND does).
9867
986818 October 2007: Wouter
9869	- addresses are logged with errors.
9870	- fixup testcode fake event to remove pending before callback
9871	  since the callback may create new pending items.
9872	- tests updated because retries are now in iterator module.
9873	- ldns-testpkts code is checked for differences between unbound
9874	  and ldns by makedist.sh.
9875	- ldns trunk from today added in svn repo for fallback in case
9876	  no ldns is installed on the system.
9877	  make download_ldns refreshes the tarball with ldns svn trunk.
9878	- ldns-src.tar.gz is used if no ldns is found on the system, and
9879	  statically linked into unbound.
9880	- start of regional allocator code.
9881	- regional uses less memory and variables, simplified code.
9882	- remove of region-allocator.
9883	- alloc cache keeps a cache of recently released regional blocks,
9884	  up to a maximum.
9885	- make unit test cleanly free memory.
9886
988717 October 2007: Wouter
9888	- fixup another cycle detect and ns-addr timeout resolution bug.
9889	  This time by refusing delegations from the cache without addresses
9890	  when resolving a mandatory-glue nameserver-address for that zone.
9891	  We're going to have to ask a TLD server anyway; might as well be
9892	  the TLD server for this name. And this resolves a lot of cases where
9893	  the other nameserver names lead to cycles or are not available.
9894	- changed random generator from random(3) clone to arc4random wrapped
9895	  for thread safety. The random generator is initialised with
9896	  entropy from the system.
9897	- fix crash where failure to prime DNSKEY tried to print null pointer
9898	  in the log message.
9899	- removed some debug prints, only verb_algo (4) enables them.
9900	- fixup test; new random generator took new paths; such as one
9901	  where no scripted answer was available.
9902	- mark insecure RRs as insecure.
9903	- fixup removal of nonsecure items from the additional.
9904	- reduced timeout values to more realistic, 376 msec (262 msec has
9905	  90% of roundtrip times, 512 msec has 99% of roundtrip times.)
9906	- server selection failover to next server after timeout (376 msec).
9907
990816 October 2007: Wouter
9909	- no malloc in log_hex.
9910	- assertions around system calls.
9911	- protect against gethostname without ending zero.
9912	- ntop output is null terminated by unbound.
9913	- pidfile content null termination
9914	- various snprintf use sizeof(stringbuf) instead of fixed constant.
9915	- changed loopdetect % 8 with & 0x7 since % can become negative for
9916	  weird negative input and particular interpretation of integer math.
9917	- dname_pkt_copy checks length of result, to protect result buffers.
9918	  prints an error, this should not happen. Bad strings should have
9919	  been rejected earlier in the program.
9920	- remove a size_t underflow from msgreply size func.
9921
992215 October 2007: Wouter
9923	- nicer warning.
9924	- fix IP6 TCP, wrong definition check. With test package.
9925	- fixup the fact that the query section was not compressed to,
9926	  the code was there but was called by value instead of by reference.
9927	  And test for the case, uses xxd and nc.
9928	- more portable ip6 check for sockaddr types.
9929
99308 October 2007: Wouter
9931	- --disable-rpath option in configure for 64bit systems with
9932	  several dynamic lib dirs.
9933
99347 October 2007: Wouter
9935	- fixup tests for no AD bit in non-DO queries.
9936	- test that makes sure AD bit is not set on non-DO query.
9937
99386 October 2007: Wouter
9939	- removed logfile open early. It did not have the proper permissions;
9940	  it was opened as root instead of the user. And we cannot change user
9941	  id yet, since chroot and bind ports need to be done.
9942	- callback checks for event callbacks done from mini_event. Because
9943	  of deletions cannot do this from netevent. This means when using
9944	  libevent the protection does not work on event-callbacks.
9945	- fixup too small reply (did not zero counts).
9946	- fixup reply no longer AD bit when query without DO bit.
9947
99485 October 2007: Wouter
9949	- function pointer whitelist.
9950
99514 October 2007: Wouter
9952	- overwrite sensitive random seed value after use.
9953	- switch to logfile very soon if not -d (console attached).
9954	- error messages do not reveal the trustanchor contents.
9955	- start work on function pointer whitelists.
9956
99573 October 2007: Wouter
9958	- fix for multiple empty nonterminals, after multiple DSes in the
9959	  chain of trust.
9960	- mesh checks if modules are looping, and stops them.
9961	- refetch with CNAMEd nameserver address regression test added.
9962	- fixup line count bug in testcode, so testbound prints correct line
9963	  number with parse errors.
9964	- unit test for multiple ENT case.
9965	- fix for cname out of validated unsec zone.
9966	- fixup nasty id=0 reuse. Also added assertions to detect its
9967	  return (the assertion catches in the existing test cases).
9968
99691 October 2007: Wouter
9970	- skip F77, CXX, objC tests in configure step.
9971	- fixup crash in refetch glue after a CNAME.
9972	  and protection against similar failures (with error print).
9973
997428 September 2007: Wouter
9975	- test case for unbound-checkconf, fixed so it also checks the
9976	  interface: statements.
9977
997826 September 2007: Wouter
9979	- SIGHUP will reopen the log file.
9980	- Option to log to syslog.
9981	- please lint, fixup tests (that went to syslog on open, oops).
9982	- config check program.
9983
998425 September 2007: Wouter
9985	- tests for NSEC3. Fixup bitmap checks for NSEC3.
9986	- positive ANY response needs to check if wildcard expansion, and
9987	  check that original data did not exist.
9988	- tests for NSEC3 that wrong use of OPTOUT is bad. For insecure
9989	  delegation, for abuse of child zone apex nsec3.
9990	- create 0.5 release tag.
9991
999224 September 2007: Wouter
9993	- do not make test programs by default.
9994	- But 'make test' will perform all of the tests.
9995	- Advertise builtin select libevent alternative when no libevent
9996	  is found.
9997	- signit can generate NSEC3 hashes, for generating tests.
9998	- multiple nsec3 parameters in message test.
9999	- too high nsec3 iterations becomes insecure test.
10000
1000121 September 2007: Wouter
10002	- fixup empty_DS_name allocated in wrong region (port DEC Alpha).
10003	- fixup testcode lock safety (port FreeBSD).
10004	- removes subscript has type char warnings (port Solaris 9).
10005	- fixup of field with format type to int (port MacOS/X intel).
10006	- added test for infinite loop case in nonRD answer validation.
10007	  It was a more general problem, but hard to reproduce. When an
10008	  unsigned rrset is being validated and the key fetched, the DS
10009	  sequence is followed, but if the final name has no DS, then no
10010	  proof is possible - the signature has been stripped off.
10011
1001220 September 2007: Wouter
10013	- fixup and test for NSEC wildcard with empty nonterminals.
10014	- makedist.sh fixup for svn info.
10015	- acl features request in plan.
10016	- improved DS empty nonterminal handling.
10017	- compat with ANS nxdomain for empty nonterminals. Attempts the nodata
10018	  proof anyway, which succeeds in ANS failure case.
10019	- striplab protection in case it becomes -1.
10020	- plans for static and blacklist config.
10021
1002219 September 2007: Wouter
10023	- comments about non-packed usage.
10024	- plan for overload support in 0.6.
10025	- added testbound tests for a failed resolution from the logs
10026	  and for failed prime when missing glue.
10027	- fixup so useless delegation points are not returned from the
10028	  cache. Also the safety belt is used if priming fails to complete.
10029	- fixup NSEC rdata not to be lowercased, bind compat.
10030
1003118 September 2007: Wouter
10032	- wildcard nsec3 testcases, and fixup to get correct wildcard name.
10033	- validator prints subtype classification for debug.
10034
1003517 September 2007: Wouter
10036	- NSEC3 hash cache unit test.
10037	- validator nsec3 nameerror test.
10038
1003914 September 2007: Wouter
10040	- nsec3 nodata proof, nods proof, wildcard proof.
10041	- nsec3 support for cname chain ending in noerror or nodata.
10042	- validator calls nsec3 proof routines if no NSECs prove anything.
10043	- fixup iterator bug where it stored the answer to a cname under
10044	  the wrong qname into the cache. When prepending the cnames, the
10045	  qname has to be reset to the original qname.
10046
1004713 September 2007: Wouter
10048	- nsec3 find matching and covering, ce proof, prove namerror msg.
10049
1005012 September 2007: Wouter
10051	- fixup of manual page warnings, like for NSD bugreport.
10052	- nsec3 work, config, max iterations, filter, and hash cache.
10053
100546 September 2007: Wouter
10055	- fixup to find libevent on mac port install.
10056	- fixup size_t vs unsigned portability in validator/sigcrypt.
10057	- please compiler on different platforms, for unreachable code.
10058	- val_nsec3 file.
10059	- pthread_rwlock type is optional, in case of old pthread libs.
10060
100615 September 2007: Wouter
10062	- cname, name error validator tests.
10063	- logging of qtype ANY works.
10064	- ANY type answers get RRSIG in answer section of replies (but not
10065	  in other sections, unless DO bit is on).
10066	- testbound can replay a TCP query (set MATCH TCP in the QUERY).
10067	- DS and noDS referral validation test.
10068	- if you configure many trust anchors, parent trust anchors can
10069	  securely deny existence of child trust anchors, if validated.
10070	- not all *.name NSECs are present because a wildcard was matched,
10071	  and *.name NSECs can prove nodata for empty nonterminals.
10072	  Also, for wildcard name NSECs, check they are not from the parent
10073	  zone (for wildcarded zone cuts), and check absence of CNAME bit,
10074	  for a nodata proof.
10075	- configure option for memory allocation debugging.
10076	- port configure option for memory allocation to solaris10.
10077
100784 September 2007: Wouter
10079	- fixup of Leakage warning when serviced queries processed multiple
10080	  callbacks for the same query from the same server.
10081	- testbound removes config file from /tmp on failed exit.
10082	- fixup for referral cleanup of the additional section.
10083	- tests for cname, referral validation.
10084	- neater testbound tpkg output.
10085	- DNAMEs no longer match their apex when synthesized from the cache.
10086	- find correct signer name for DNAME responses.
10087	- wildcarded DNAME test and fixup code to detect.
10088	- prepend NSEC and NSEC3 rrsets in the iterator while chasing CNAMEs.
10089	  So that wildcarded CNAMEs get their NSEC with them to the answer.
10090	- test for a CNAME to a DNAME to a CNAME to an answer, all from
10091	  different domains, for key fetching and signature checking of
10092	  CNAME'd messages.
10093
100943 September 2007: Wouter
10095	- Fixed error in iterator that would cause assertion failure in
10096	  validator. CNAME to a NXDOMAIN response was collated into a response
10097	  with both a CNAME and the NXDOMAIN rcode. Added a test that the
10098	  rcode is changed to NOERROR (because of the CNAME).
10099	- timeout on tcp does not lead to spurious leakage detect.
10100	- account memory for name of lame zones, so that memory leakages does
10101	  not show lame cache growth as a leakage growth.
10102	- config setting for lameness cache expressed in bytes, instead of
10103	  number of entries.
10104	- tool too summarize allocations per code line.
10105
1010631 August 2007: Wouter
10107	- can read bind trusted-keys { ... }; files, in a compatibility mode.
10108	- iterator should not detach target queries that it still could need.
10109	  the protection against multiple outstanding queries is moved to a
10110	  current_query num check.
10111	- validator nodata, positive, referral tests.
10112	- dname print can print '*' wildcard.
10113
1011430 August 2007: Wouter
10115	- fixup override date config option.
10116	- config options to control memory usage.
10117	- caught bad free of un-alloced data in worker_send error case.
10118	- memory accounting for key cache (trust anchors and temporary cache).
10119	- memory accounting fixup for outside network tcp pending waits.
10120	- memory accounting fixup for outside network tcp callbacks.
10121	- memory accounting for iterator fixed storage.
10122	- key cache size and slabs config options.
10123	- lib crypto cleanups at exit.
10124
1012529 August 2007: Wouter
10126	- test tool to sign rrsets for testing validator with.
10127	- added RSA and DSA test keys, public and private pairs, 512 bits.
10128	- default configuration is with validation enabled.
10129	  Only a trust-anchor needs to be configured for DNSSEC to work.
10130	- do not convert to DER for DSA signature verification.
10131	- validator replay test file, for a DS to DNSKEY DSA key prime and
10132	  positive response.
10133
1013428 August 2007: Wouter
10135	- removed double use for udp buffers, that could fail,
10136	  instead performs a malloc to do the backup.
10137	- validator validates referral messages, by validating all the rrsets
10138	  and stores the rrsets in the cache. Further referral (nonRD queries)
10139	  replies are made from the rrset cache directly. Unless unchecked
10140	  rrsets are encountered, there are then validated.
10141	- enforce that signing is done by a parent domain (or same domain).
10142	- adjust TTL downwards if rrset TTL bigger than signature allows.
10143	- permissive mode feature, sets AD bit for secure, but bogus does
10144	  not give servfail (bogus is changed into indeterminate).
10145	- optimization of rrset verification. rr canonical sorting is reused,
10146	  for the same rrset. canonical rrset image in buffer is reused for
10147	  the same signature.
10148	- if the rrset is too big (64k exactly + large owner name) the
10149	  canonicalization routine will fail if it does not fit in buffer.
10150	- faster verification for large sigsets.
10151	- verb_detail mode reports validation failures, but not the entire
10152	  algorithm for validation. Key prime failures are reported as
10153	  verb_ops level.
10154
1015527 August 2007: Wouter
10156	- do not garble the edns if a cache answer fails.
10157	- answer norecursive from cache if possible.
10158	- honor clean_additional setting when returning secure non-recursive
10159	  referrals.
10160	- do not store referral in msg cache for nonRD queries.
10161	- store verification status in the rrset cache to speed up future
10162	  verification.
10163	- mark rrsets indeterminate and insecure if they are found to be so.
10164	  and store this in the cache.
10165
1016624 August 2007: Wouter
10167	- message is bogus if unsecure authority rrsets are present.
10168	- val-clean-additional option, so you can turn it off.
10169	- move rrset verification out of the specific proof types into one
10170	  routine. This makes the proof routines prettier.
10171	- fixup cname handling in validator, cname-to-positive and cname-to-
10172	  nodata work.
10173	- Do not synthesize DNSKEY and DS responses from the rrset cache if
10174	  the rrset is from the additional section. Signatures may have
10175	  fallen off the packet, and cause validation failure.
10176	- more verbose signature date errors (with the date attached).
10177	- increased default infrastructure cache size. It is important for
10178	  performance, and 1000 entries are only 212k (or a 400 k total cache
10179	  size). To 10000 entries (for 2M entries, 4M cache size).
10180
1018123 August 2007: Wouter
10182	- CNAME handling - move needs_validation to before val_new().
10183	  val_new() setups the chase-reply to be an edited copy of the msg.
10184	  new classification, and find signer can find for it.
10185	  removal of unsigned crap from additional, and query restart for
10186	  cname.
10187	- refuse to follow wildcarded DNAMEs when validating.
10188	  But you can query for qtype ANY, or qtype DNAME and validate that.
10189
1019022 August 2007: Wouter
10191	- bogus TTL.
10192	- review - use val_error().
10193
1019421 August 2007: Wouter
10195	- ANY response validation.
10196	- store security status in cache.
10197	- check cache security status and either send the query to be
10198	  validated, return the query to client, or send servfail to client.
10199	  Sets AD bit on validated replies.
10200	- do not examine security status on an error reply in mesh_done.
10201	- construct DS, DNSKEY messages from rrset cache.
10202	- manual page entry for override-date.
10203
1020420 August 2007: Wouter
10205	- validate and positive validation, positive wildcard NSEC validation.
10206	- nodata validation, nxdomain validation.
10207
1020818 August 2007: Wouter
10209	- process DNSKEY response in FINDKEY state.
10210
1021117 August 2007: Wouter
10212	- work on DS2KE routine.
10213	- val_nsec.c for validator NSEC proofs.
10214	- unit test for NSEC bitmap reading.
10215	- dname iswild and canonical_compare with unit tests.
10216
1021716 August 2007: Wouter
10218	- DS sig unit test.
10219	- latest release libevent 1.3c and 1.3d have threading fixed.
10220	- key entry fixup data pointer and ttl absolute.
10221	- This makes a key-prime succeed in validator, with DS or DNSKEY as
10222	  trust-anchor.
10223	- fixup canonical compare byfield routine, fix bug and also neater.
10224	- fixed iterator response type classification for queries of type
10225	  ANY and NS.
10226	  dig ANY gives sometimes NS rrset in AN and NS section, and parser
10227	  removes the NS section duplicate. dig NS gives sometimes the NS
10228	  in the answer section, as referral.
10229	- validator FINDKEY state.
10230
1023115 August 2007: Wouter
10232	- crypto calls to verify signatures.
10233	- unit test for rrsig verification.
10234
1023514 August 2007: Wouter
10236	- default outgoing ports changed to avoid port 2049 by default.
10237	  This port is widely blocked by firewalls.
10238	- count infra lameness cache in memory size.
10239	- accounting of memory improved
10240	- outbound entries are allocated in the query region they are for.
10241	- extensive debugging for memory allocations.
10242	- --enable-lock-checks can be used to enable lock checking.
10243	- protect undefs in config.h from autoheaders ministrations.
10244	- print all received udp packets. log hex will print on multiple
10245	  lines if needed.
10246	- fixed error in parser with backwards rrsig references.
10247	- mark cycle targets for iterator did not have CD flag so failed
10248	  its task.
10249
1025013 August 2007: Wouter
10251	- fixup makefile, if lexer is missing give nice error and do not
10252	  mess up the dependencies.
10253	- canonical compare routine updated.
10254	- canonical hinfo compare.
10255	- printout list of the queries that the mesh is working on.
10256
1025710 August 2007: Wouter
10258	- malloc and free overrides that track total allocation and frees.
10259	  for memory debugging.
10260	- work on canonical sort.
10261
102629 August 2007: Wouter
10263	- canonicalization, signature checks
10264	- dname signature label count and unit test.
10265	- added debug heap size print to memory printout.
10266	- typo fixup in worker.c
10267	- -R needed on solaris.
10268	- validator override option for date check testing.
10269
102708 August 2007: Wouter
10271	- ldns _raw routines created (in ldns trunk).
10272	- sigcrypt DS digest routines
10273	- val_utils uses sigcrypt to perform signature cryptography.
10274	- sigcrypt keyset processing
10275
102767 August 2007: Wouter
10277	- security status type.
10278	- security status is copied when rdata is equal for rrsets.
10279	- rrset id is updated to invalidate all the message cache entries
10280	  that refer to NSEC, NSEC3, DNAME rrsets that have changed.
10281	- val_util work
10282	- val_sigcrypt file for validator signature checks.
10283
102846 August 2007: Wouter
10285	- key cache for validator.
10286	- moved isroot and dellabel to own dname routines, with unit test.
10287
102883 August 2007: Wouter
10289	- replanning.
10290	- scrubber check section of lame NS set.
10291	- trust anchors can be in config file or read from zone file,
10292	  DS and DNSKEY entries.
10293	- unit test trust anchor storage.
10294	- trust anchors converted to packed rrsets.
10295	- key entry definition.
10296
102972 August 2007: Wouter
10298	- configure change for latest libevent trunk version (needs -lrt).
10299	- query_done and walk_supers are moved out of module interface.
10300	- fixup delegation point duplicates.
10301	- fixup iterator scrubber; lame NS set is let through the scrubber
10302	  so that the classification is lame.
10303	- validator module exists, and does nothing but pass through,
10304	  with calling of next module and return.
10305	- validator work.
10306
103071 August 2007: Wouter
10308	- set version to 0.5
10309	- module work for module to module interconnections.
10310	- config of modules.
10311	- detect cycle takes flags.
10312
1031331 July 2007: Wouter
10314	- updated plan
10315	- release 0.4 tag.
10316
1031730 July 2007: Wouter
10318	- changed random state init, so that sequential process IDs are not
10319	  cancelled out by sequential thread-ids in the random number seed.
10320	- the fwd_three test, which sends three queries to unbound, and
10321	  unbound is kept waiting by ldns-testns for 3 seconds, failed
10322	  because the retry timeout for default by unbound is 3 seconds too,
10323	  it would hit that timeout and fail the test. Changed so that unbound
10324	  is kept waiting for 2 seconds instead.
10325
1032627 July 2007: Wouter
10327	- removed useless -C debug option. It did not work.
10328	- text edit of documentation.
10329	- added doc/CREDITS file, referred to by the manpages.
10330	- updated planning.
10331
1033226 July 2007: Wouter
10333	- cycle detection, for query state dependencies. Will attempt to
10334	  circumvent the cycle, but if no other targets available fails.
10335	- unit test for AXFR, IXFR response.
10336	- test for cycle detection.
10337
1033825 July 2007: Wouter
10339	- testbound read ADDRESS and check it.
10340	- test for version.bind and friends.
10341	- test for iterator chaining through several referrals.
10342	- test and fixup for refetch for glue. Refetch fails if glue
10343	  is still not provided.
10344
1034524 July 2007: Wouter
10346	- Example section in config manual.
10347	- Addr stored for range and moment in replay.
10348
1034920 July 2007: Wouter
10350	- Check CNAME chain before returning cache entry with CNAMEs.
10351	- Option harden-glue, default is on. It will discard out of zone
10352	  data. If disabled, performance is faster, but spoofing attempts
10353	  become a possibility. Note that still normalize scrubbing is done,
10354	  and that the potentially spoofed data is used for infrastructure
10355	  and not returned to the client.
10356	- if glue times out, refetch by asking parent of delegation again.
10357	  Much like asking for DS at the parent side.
10358	- TODO items from forgery-resilience draft.
10359	  and on memory handling improvements.
10360	- renamed module_event_timeout to module_event_noreply.
10361	- memory reporting code; reports on memory usage after handling
10362	  a network packet (not on cache replies).
10363
1036419 July 2007: Wouter
10365	- shuffle NS selection when getting nameserver target addresses.
10366	- fixup of deadlock warnings, yield cpu in checklock code so that
10367	  freebsd scheduler selects correct process to run.
10368	- added identity and version config options and replies.
10369	- store cname messages complete answers.
10370
1037118 July 2007: Wouter
10372	- do not query addresses, 127.0.0.1, and ::1 by default.
10373
1037417 July 2007: Wouter
10375	- forward zone options in config file.
10376	- forward per zone in iterator. takes precedence over stubs.
10377	- fixup commithooks.
10378	- removed forward-to and forward-to-port features, subsumed by
10379	  new forward zones.
10380	- fix parser to handle absent server: clause.
10381	- change untrusted rrset test to account for scrubber that is now
10382	  applied during the test (which removes the poison, by the way).
10383	- feature, addresses can be specified with @portnumber, like nsd.conf.
10384	- test config files changed over to new forwarder syntax.
10385
1038627 June 2007: Wouter
10387	- delete of mesh does a postorder traverse of the tree.
10388	- found and fixed a memory leak. For TTL=0 messages, that would
10389	  not be cached, instead the msg-replyinfo structure was leaked.
10390	- changed server selection so it will filter out hosts that are
10391	  unresponsive. This is defined as a host with the maximum rto value.
10392	  This means that unbound tried the host for retries up to 120 secs.
10393	  The rto value will time out after host-ttl seconds from the cache.
10394	  This keeps such unresolvable queries from taking up resources.
10395	- utility for keeping histogram.
10396
1039726 June 2007: Wouter
10398	- mesh is called by worker, and iterator uses it.
10399	  This removes the hierarchical code.
10400	  QueryTargets state and Finished state are merged for iterator.
10401	- forwarder mode no longer sets AA bit on first reply.
10402	- rcode in walk_supers is not needed.
10403
1040425 June 2007: Wouter
10405	- more mesh work.
10406	- error encode routine for ease.
10407
1040822 June 2007: Wouter
10409	- removed unused _node iterator value from rbtree_t. Takes up space.
10410	- iterator can handle querytargets state without a delegation point
10411	  set, so that a priming(stub) subquery error can be handled.
10412	- iterator stores if it is priming or not.
10413	- log_query_info() neater logging.
10414	- changed iterator so that it does not alter module_qstate.qinfo
10415	  but keeps a chase query info. Also query_flags are not altered,
10416	  the iterator uses chase_flags.
10417	- fixup crash in case no ports for the family exist.
10418
1041921 June 2007: Wouter
10420	- Fixup secondary buffer in case of error callback.
10421	- cleanup slumber list of runnable states.
10422	- module_subreq_depth fails to work in slumber list.
10423	- fixup query release for cached results to sub targets.
10424	- neater error for tcp connection failure, shows addr in verbose.
10425	- rbtree_init so that it can be used with preallocated memory.
10426
1042720 June 2007: Wouter
10428	- new -C option to enable coredumps after forking away.
10429	- doc update.
10430	- fixup CNAME generation by scrubber, and memory allocation of it.
10431	- fixup deletion of serviced queries when all callbacks delete too.
10432	- set num target queries to 0 when you move them to slumber list.
10433	- typo in check caused subquery errors to be ignored, fixed.
10434	- make lint happy about rlim_t.
10435	- freeup of modules after freeup of module-states.
10436	- duplicate replies work, this uses secondary udp buffer in outnet.
10437
1043819 June 2007: Wouter
10439	- nicer layout in stats.c, review 0.3 change.
10440	- spelling improvement, review 0.3 change.
10441	- uncapped timeout for server selection, so that very fast or slow
10442	  servers will stand out from the rest.
10443	- target-fetch-policy: "3 2 1 0 0" config setting.
10444	- fixup queries answered without RD bit (for root prime results).
10445	- refuse AXFR and IXFR requests.
10446	- fixup RD flag in error reply from iterator. fixup RA flag from
10447	  worker error reply.
10448	- fixup encoding of very short edns buffer sizes, now sets TC bit.
10449	- config options harden-short-bufsize and harden-large-queries.
10450
1045118 June 2007: Wouter
10452	- same, move subqueries to slumber list when first has resolved.
10453	- fixup last fix for duplicate callbacks.
10454	- another offbyone in targetcounter. Also in Java prototype by the way.
10455
1045615 June 2007: Wouter
10457	- if a query asks to be notified of the same serviced query result
10458	  multiple times, this will succeed. Only one callback will happen;
10459	  multiple outbound-list entries result (but the double cleanup of it
10460	  will not matter).
10461	- when iterator moves on due to CNAME or referral, it will remove
10462	  the subqueries (for other targets). These are put on the slumber
10463	  list.
10464	- state module wait subq is OK with no new subqs, an old one may have
10465	  stopped, with an error, and it is still waiting for other ones.
10466	- if a query loops, halt entire query (easy way to clean up properly).
10467
1046814 June 2007: Wouter
10469	- num query targets was > 0 , not >= 0 compared, so that fetch
10470	  policy of 0 did nothing.
10471
1047213 June 2007: Wouter
10473	- debug option: configure --enable-static-exe for compile where
10474	  ldns and libevent are linked statically. Default is off.
10475	- make install and make uninstall. Works with static-exe and without.
10476	  installation of unbound binary and manual pages.
10477	- alignment problem fix on solaris 64.
10478	- fixup address in case of TCP error.
10479
1048012 June 2007: Wouter
10481	- num target queries was set to 0 at a bad time. Default it to 0 and
10482	  increase as target queries are done.
10483	- synthesize CNAME and DNAME responses from the cache.
10484	- Updated doxygen config for doxygen 1.5.
10485	- aclocal newer version.
10486	- doxygen 1.5 fixes for comments (for the strict check on docs).
10487
1048811 June 2007: Wouter
10489	- replies on TCP queries have the address field set in replyinfo,
10490	  for serviced queries, because the initiator does not know that
10491	  a TCP fallback has occured.
10492	- omit DNSSEC types from nonDO replies, except if qtype is ANY or
10493	  if qtype directly queries for the type (and then only show that
10494	  'unknown type' in the answer section).
10495	- fixed message parsing where rrsigs on their own would be put
10496	  in the signature list over the rrsig type.
10497
104987 June 2007: Wouter
10499	- fixup error in double linked list insertion for subqueries and
10500	  for outbound list of serviced queries for iterator module.
10501	- nicer printout of outgoing port selection.
10502	- fixup cname target readout.
10503	- nicer debug output.
10504	- fixup rrset counts when prepending CNAMEs to the answer.
10505	- fixup rrset TTL for prepended CNAMEs.
10506	- process better check for looping modules, and which submodule to
10507	  run next.
10508	- subreq insertion code fixup for slumber list.
10509	- VERB_DETAIL, verbosity: 2 level gives short but readable output.
10510	  VERB_ALGO, verbosity: 3 gives extensive output.
10511	- fixup RA bit in cached replies.
10512	- fixup CNAME responses from the cache no longer partial response.
10513	- error in network send handled without leakage.
10514	- enable ip6 from config, and try ip6 addresses if available,
10515	  if ip6 is not connected, skips to next server.
10516
105175 June 2007: Wouter
10518	- iterator state finished.
10519	- subrequests without parent store in cache and stop.
10520	- worker slumber list for ongoing promiscuous queries.
10521	- subrequest error handling.
10522	- priming failure returns SERVFAIL.
10523	- priming gives LAME result, returns SERVFAIL.
10524	- debug routine to print dns_msg as handled by iterator.
10525	- memleak in config file stubs fixup.
10526	- more small bugs, in scrubber, query compare no ID for lookup,
10527	  in dname validation for NS targets.
10528	- sets entry.key for new special allocs.
10529	- lognametypeclass can display unknown types and classes.
10530
105314 June 2007: Wouter
10532	- random selection of equally preferred nameserver targets.
10533	- reply info copy routine. Reuses existing code.
10534	- cache lameness in response handling.
10535	- do not touch qstate after worker_process_query because it may have
10536	  been deleted by that routine.
10537	- Prime response state.
10538	- Process target response state.
10539	- some memcmp changed to dname_compare for case preservation.
10540
105411 June 2007: Wouter
10542	- normalize incoming messages. Like unbound-java, with CNAME chain
10543	  checked, DNAME checked, CNAME's synthesized, glue checked.
10544	- sanitize incoming messages.
10545	- split msgreply encode functions into own file msgencode.c.
10546	- msg_parse to queryinfo/replyinfo conversion more versatile.
10547	- process_response, classify response, delegpt_from_message.
10548
1054931 May 2007: Wouter
10550	- querytargets state.
10551	- dname_subdomain_c() routine.
10552	- server selection, based on RTT. ip6 is filtered out if not available,
10553	  and lameness is checked too.
10554	- delegation point copy routine.
10555
1055630 May 2007: Wouter
10557	- removed FLAG_CD from message and rrset caches. This was useful for
10558	  an agnostic forwarder, but not for a sophisticated (trust value per
10559	  rrset enabled) cache.
10560	- iterator response typing.
10561	- iterator cname handle.
10562	- iterator prime start.
10563	- subquery work.
10564	- processInitRequest and processInitRequest2.
10565	- cache synthesizes referral messages, with DS and NSEC.
10566	- processInitRequest3.
10567	- if a request creates multiple subrequests these are all activated.
10568
1056929 May 2007: Wouter
10570	- routines to lock and unlock array of rrsets moved to cache/rrset.
10571	- lookup message from msg cache (and copy to region).
10572	- fixed cast error in dns msg lookup.
10573	- message with duplicate rrset does not increase its TTLs twice.
10574	- 'qnamesize' changed to 'qname_len' for similar naming scheme.
10575
1057625 May 2007: Wouter
10577	- Acknowledge use of unbound-java code in iterator. Nicer readme.
10578	- services/cache/dns.c DNS Cache. Hybrid cache uses msgcache and
10579	  rrset cache from module environment.
10580	- packed rrset key has type and class as easily accessible struct
10581	  members. They are still kept in network format for fast msg encode.
10582	- dns cache find_delegation routine.
10583	- iterator main functions setup.
10584	- dns cache lookup setup.
10585
1058624 May 2007: Wouter
10587	- small changes to prepare for subqueries.
10588	- iterator forwarder feature separated out.
10589	- iterator hints stub code, config file stub code, so that first
10590	  testing can proceed locally.
10591	- replay tests now have config option to enable forwarding mode.
10592
1059323 May 2007: Wouter
10594	- outside network does precise timers for roundtrip estimates for rtt
10595	  and for setting timeout for UDP. Pending_udp takes milliseconds.
10596	- cleaner iterator sockaddr conversion of forwarder address.
10597	- iterator/iter_utils and iter_delegpt setup.
10598	- root hints.
10599
1060022 May 2007: Wouter
10601	- outbound query list for modules and support to callback with the
10602	  outbound entry to the module.
10603	- testbound support for new serviced queries.
10604	- test for retry to TCP cannot use testbound any longer.
10605	- testns test for EDNS fallback, test for TCP fallback already exists.
10606	- fixes for no-locking compile.
10607	- mini_event timer precision and fix for change in timeouts during
10608	  timeout callback. Fix for fwd_three tests, performed nonexit query.
10609
1061021 May 2007: Wouter
10611	- small comment on hash table locking.
10612	- outside network serviced queries, contain edns and tcp fallback,
10613	  and udp retries and rtt timing.
10614
1061516 May 2007: Wouter
10616	- lruhash_touch() would cause locking order problems. Fixup in
10617	  lock-verify in case locking cycle is found.
10618	- services/cache/rrset.c for rrset cache code.
10619	- special rrset_cache LRU updating function that uses the rrset id.
10620	- no dependencies calculation when make clean is called.
10621	- config settings for infra cache.
10622	- daemon code slightly cleaner, only creates caches once.
10623
1062415 May 2007: Wouter
10625	- host cache code.
10626	- unit test for host cache.
10627
1062814 May 2007: Wouter
10629	- Port to OS/X and Dec Alpha. Printf format and alignment fixes.
10630	- extensive lock debug report on join timeout.
10631	- proper RTT calculation, in utility code.
10632	- setup of services/cache/infra, host cache.
10633
1063411 May 2007: Wouter
10635	- iterator/iterator.c module.
10636	- fixup to pass reply_info in testcode and in netevent.
10637
1063810 May 2007: Wouter
10639	- created release-0.3 svn tag.
10640	- util/module.h
10641	- fixed compression - no longer compresses root name.
10642
106439 May 2007: Wouter
10644	- outside network cleans up waiting tcp queries on exit.
10645	- fallback to TCP.
10646	- testbound replay with retry in TCP mode.
10647	- tpkg test for retry in TCP mode, against ldns-testns server.
10648	- daemon checks max number of open files and complains if not enough.
10649	- test where data expires in the cache.
10650	- compiletests: fixed empty body ifstatements in alloc.c, in case
10651	  locks are disabled.
10652
106538 May 2007: Wouter
10654	- outgoing network keeps list of available tcp buffers for outgoing
10655	  tcp queries.
10656	- outgoing-num-tcp config option.
10657	- outgoing network keeps waiting list of queries waiting for buffer.
10658	- netevent supports outgoing tcp commpoints, nonblocking connects.
10659
106607 May 2007: Wouter
10661	- EDNS read from query, used to make reply smaller.
10662	- advertised edns value constants.
10663	- EDNS BADVERS response, if asked for too high edns version.
10664	- EDNS extended error responses once the EDNS record from the query
10665	  has successfully been parsed.
10666
106674 May 2007: Wouter
10668	- msgreply sizefunc is more accurate.
10669	- config settings for rrset cache size and slabs.
10670	- hashtable insert takes argument so that a thread can use its own
10671	  alloc cache to store released keys.
10672	- alloc cache special_release() locks if necessary.
10673	- rrset trustworthiness type added.
10674	- thread keeps a scratchpad region for handling messages.
10675	- writev used in netevent to write tcp length and data after another.
10676	  This saves a roundtrip on tcp replies.
10677	- test for one rrset updated in the cache.
10678	- test for one rrset which is not updated, as it is not deemed
10679	  trustworthy enough.
10680	- test for TTL refreshed in rrset.
10681
106823 May 2007: Wouter
10683	- fill refs. Use new parse and encode to answer queries.
10684	- stores rrsets in cache.
10685	- uses new msgreply format in cache.
10686
106872 May 2007: Wouter
10688	- dname unit tests in own file and spread out neatly in functions.
10689	- more dname unit tests.
10690	- message encoding creates truncated TC flagged messages if they do
10691	  not fit, and will leave out (whole)rrsets from additional if needed.
10692
106931 May 2007: Wouter
10694	- decompress query section, extremely lenient acceptance.
10695	  But only for answers from other servers, not for plain queries.
10696	- compression and decompression test cases.
10697	- some stats added.
10698	- example.conf interface: line is changed from 127.0.0.1 which leads
10699	  to problems if used (restricting communication to the localhost),
10700	  to a documentation and test address.
10701
1070227 April 2007: Wouter
10703	- removed iov usage, it is not good for dns message encoding.
10704	- owner name compression more optimal.
10705	- rrsig owner name compression.
10706	- rdata domain name compression.
10707
1070826 April 2007: Wouter
10709	- floating point exception fix in lock-verify.
10710	- lint uses make dependency
10711	- fixup lint in dname owner domain name compression code.
10712	- define for offset range that can be compressed to.
10713
1071425 April 2007: Wouter
10715	- prettier code; parse_rrset->type kept in host byte order.
10716	- datatype used for hashvalue of converted rrsig structure.
10717	- unit test compares edns section data too.
10718
1071924 April 2007: Wouter
10720	- ttl per RR, for RRSIG rrsets and others.
10721	- dname_print debug function.
10722	- if type is not known, size calc will skip DNAME decompression.
10723	- RRSIG parsing and storing and putting in messages.
10724	- dnssec enabled unit tests (from nlnetlabs.nl and se queries).
10725	- EDNS extraction routine.
10726
1072720 April 2007: Wouter
10728	- code comes through all of the unit tests now.
10729	- disabled warning about spurious extra data.
10730	- documented the RRSIG parse plan in msgparse.h.
10731	- rrsig reading and outputting.
10732
1073319 April 2007: Wouter
10734	- fix unit test to actually to tests.
10735	- fix write iov helper, and fakevent code.
10736	- extra builtin testcase (small packet).
10737	- ttl converted to network format in packets.
10738	- flags converted correctly
10739	- rdatalen off by 2 error fixup.
10740	- uses less iov space for header.
10741
1074218 April 2007: Wouter
10743	- review of msgparse code.
10744	- smaller test cases.
10745
1074617 April 2007: Wouter
10747	- copy and decompress dnames.
10748	- store calculated hash value too.
10749	- routine to create message out of stored information.
10750	- util/data/msgparse.c for message parsing code.
10751	- unit test, and first fixes because of test.
10752		* forgot rrset_count addition.
10753		* did & of ptr on stack for memory position calculation.
10754		* dname_pkt_copy forgot to read next label length.
10755	- test from file and fixes
10756		* double frees fixed in error conditions.
10757		* types with less than full rdata allowed by parser.
10758		  Some dynamic update packets seem to use it.
10759
1076016 April 2007: Wouter
10761	- following a small change in LDNS, parsing code calculates the
10762	  memory size to allocate for rrs.
10763	- code to handle ID creation.
10764
1076513 April 2007: Wouter
10766	- parse routines. Code that parses rrsets, rrs.
10767
1076812 April 2007: Wouter
10769	- dname compare routine that preserves case, with unit tests.
10770
1077111 April 2007: Wouter
10772	- parse work - dname packet parse, msgparse, querysection parse,
10773	  start of sectionparse.
10774
1077510 April 2007: Wouter
10776	- Improved alignment of reply_info packet, nice for 32 and 64 bit.
10777	- Put RRset counts in reply_info, because the number of RRs can change
10778	  due to RRset updates.
10779	- import of region-allocator code from nsd.
10780	- set alloc special type to ub_packed_rrset_key.
10781	  Uses lruhash entry overflow chain next pointer in alloc cache.
10782	- doxygen documentation for region-allocator.
10783	- setup for parse scratch data.
10784
107855 April 2007: Wouter
10786	- discussed packed rrset with Jelte.
10787
107884 April 2007: Wouter
10789	- moved to version 0.3.
10790	- added util/data/dname.c
10791	- layout of memory for rrsets.
10792
107933 April 2007: Wouter
10794	- detect sign of msghdr.msg_iovlen so that the cast to that type
10795	  in netevent (which is there to please lint) can be correct.
10796	  The type on several OSes ranges from int, int32, uint32, size_t.
10797	  Detects unsigned or signed using math trick.
10798	- constants for DNS flags.
10799	- compilation without locks fixup.
10800	- removed include of unportable header from lookup3.c.
10801	- more portable use of struct msghdr.
10802	- casts for printf warning portability.
10803	- tweaks to tests to port them to the testbed.
10804	- 0.2 tag created.
10805
108062 April 2007: Wouter
10807	- check sizes of udp received messages, not too short.
10808	- review changes. Some memmoves can be memcpys: 4byte aligned.
10809	  set id correctly on cached answers.
10810	- review changes msgreply.c, memleak on error condition. AA flag
10811	  clear on cached reply. Lowercase queries on hashing.
10812	  unit test on lowercasing. Test AA bit not set on cached reply.
10813	  Note that no TTLs are managed.
10814
1081529 March 2007: Wouter
10816	- writev or sendmsg used when answering from cache.
10817	  This avoids a copy of the data.
10818	- do not do useless byteswap on query id. Store reply flags in uint16
10819	  for easier access (and no repeated byteswapping).
10820	- reviewed code.
10821	- configure detects and config.h includes sys/uio.h for writev decl.
10822
1082328 March 2007: Wouter
10824	- new config option: num-queries-per-thread.
10825	- added tpkg test for answering three queries at the same time
10826	  using one thread (from the query service list).
10827
1082827 March 2007: Wouter
10829	- added test for cache and not cached answers, in testbound replays.
10830	- testbound can give config file and commandline options from the
10831	  replay file to unbound.
10832	- created test that checks if items drop out of the cache.
10833	- added word 'partitioned hash table' to documentation on slab hash.
10834	  A slab hash is a partitioned hash table.
10835	- worker can handle multiple queries at a time.
10836
1083726 March 2007: Wouter
10838	- config settings for slab hash message cache.
10839	- test for cached answer.
10840	- Fixup deleting fake answer from testbound list.
10841
1084223 March 2007: Wouter
10843	- review of yesterday's commits.
10844	- covered up memory leak of the entry locks.
10845	- answers from the cache correctly. Copies flags correctly.
10846	- sanity check for incoming query replies.
10847	- slabbed hash table. Much nicer contention, need dual cpu to see.
10848
1084922 March 2007: Wouter
10850	- AIX configure check.
10851	- lock-verify can handle references to locks that are created
10852	  in files it has not yet read in.
10853	- threaded hash table test.
10854	- unit test runs lock-verify afterwards and checks result.
10855	- need writelock to update data on hash_insert.
10856	- message cache code, msgreply code.
10857
1085821 March 2007: Wouter
10859	- unit test of hash table, fixup locking problem in table_grow().
10860	- fixup accounting of sizes for removing items from hashtable.
10861	- unit test for hash table, single threaded test of integrity.
10862	- lock-verify reports errors nicely. More quiet in operation.
10863
1086416 March 2007: Wouter
10865	- lock-verifier, checks consistent order of locking.
10866
1086714 March 2007: Wouter
10868	- hash table insert (and subroutines) and lookup implemented.
10869	- hash table remove.
10870	- unit tests for hash internal bin, lru functions.
10871
1087213 March 2007: Wouter
10873	- lock_unprotect in checklocks.
10874	- util/storage/lruhash.h for LRU hash table structure.
10875
1087612 March 2007: Wouter
10877	- configure.ac moved to 0.2.
10878	- query_info and replymsg util/data structure.
10879
108809 March 2007: Wouter
10881	- added rwlock writelock checking.
10882	  So it will keep track of the writelock, and readlocks are enforced
10883	  to not change protected memory areas.
10884	- log_hex function to dump hex strings to the logfile.
10885	- checklocks zeroes its destroyed lock after checking memory areas.
10886	- unit test for alloc.
10887	- identifier for union in checklocks to please older compilers.
10888	- created 0.1 tag.
10889
108908 March 2007: Wouter
10891	- Reviewed checklock code.
10892
108937 March 2007: Wouter
10894	- created a wrapper around thread calls that performs some basic
10895	  checking for data race and deadlock, and basic performance
10896	  contention measurement.
10897
108986 March 2007: Wouter
10899	- Testbed works with threading (different machines, different options).
10900	- alloc work, does the special type.
10901
109022 March 2007: Wouter
10903	- do not compile fork funcs unless needed. Otherwise will give
10904	  type errors as their typedefs have not been enabled.
10905	- log shows thread numbers much more nicely (and portably).
10906	- even on systems with nonthreadsafe libevent signal handling,
10907	  unbound will exit if given a signal.
10908	  Reloads will not work, and exit is not graceful.
10909	- start of alloc framework layout.
10910
109111 March 2007: Wouter
10912	- Signals, libevent and threads work well, with libevent patch and
10913	  changes to code (close after event_del).
10914	- set ipc pipes nonblocking.
10915
1091627 February 2007: Wouter
10917	- ub_thread_join portable definition.
10918	- forking is used if no threading is available.
10919	  Tested, it works, since pipes work across processes as well.
10920	  Thread_join is replaced with waitpid.
10921	- During reloads the daemon will temporarily handle signals,
10922	  so that they do not result in problems.
10923	- Also randomize the outgoing port range for tests.
10924	- If query list is full, will stop selecting listening ports for read.
10925	  This makes all threads service incoming requests, instead of one.
10926	  No memory is leaking during reloads, service of queries, etc.
10927	- test that uses ldns-testns -f to test threading. Have to answer
10928	  three queries at the same time.
10929	- with verbose=0 operates quietly.
10930
1093126 February 2007: Wouter
10932	- ub_random code used to select ID and port.
10933	- log code prints thread id.
10934	- unbound can thread itself, with reload(HUP) and quit working
10935	  correctly.
10936	- don't open pipes for #0, doesn't need it.
10937	- listens to SIGTERM, SIGQUIT, SIGINT (all quit) and SIGHUP (reload).
10938
1093923 February 2007: Wouter
10940	- Can do reloads on sigHUP. Everything is stopped, and freed,
10941	  except the listening ports. Then the config file is reread.
10942	  And everything is started again (and listening ports if needed).
10943	- Ports for queries are shared.
10944	- config file added interface:, chroot: and username:.
10945	- config file: directory, logfile, pidfile. And they work too.
10946	- will daemonize by default now. Use -d to stay in the foreground.
10947	- got BSD random[256 state] code, made it threadsafe. util/random.
10948
1094922 February 2007: Wouter
10950	- Have a config file. Removed commandline options, moved to config.
10951	- tests use config file.
10952
1095321 February 2007: Wouter
10954	- put -c option in man page.
10955	- minievent fd array capped by FD_SETSIZE.
10956
1095720 February 2007: Wouter
10958	- Added locks code and pthread spinlock detection.
10959	- can use no locks, or solaris native thread library.
10960	- added yacc and lex configure, and config file parsing code.
10961	  also makedist.sh, and manpage.
10962	- put include errno.h in config.h
10963
1096419 February 2007: Wouter
10965	- Created 0.0 svn tag.
10966	- added acx_pthread.m4 autoconf check for pthreads from
10967	  the autoconf archive. It is GPL-with-autoconf-exception Licensed.
10968	  You can specify --with-pthreads, or --without-pthreads to configure.
10969
1097016 February 2007: Wouter
10971	- Updated testbed script, works better by using make on remote end.
10972	- removed check decls, we can compile without them.
10973	- makefile supports LIBOBJ replacements.
10974	- docs checks ignore compat code.
10975	- added util/mini-event.c and .h, a select based alternative used with
10976	  ./configure --with-libevent=no
10977	  It is limited to 1024 file descriptors, and has less features.
10978	- will not create ip6 sockets if ip6 not on the machine.
10979
1098015 February 2007: Wouter
10981	- port to FreeBSD 4.11 Dec Alpha. Also works on Solaris 10 sparc64,
10982	  Solaris 9, FreeBSD 6, Linux i386 and OSX powerpc.
10983	- malloc rndstate, so that it is aligned for access.
10984	- fixed rbtree cleanup with postorder traverse.
10985	- fixed pending messages are deleted when handled.
10986	- You can control verbosity; default is not verbose, every -v
10987	  adds more verbosity.
10988
1098914 February 2007: Wouter
10990	- Included configure.ac changes from ldns.
10991	- detect (some) headers before the standards check.
10992	- do not use isblank to test c99, since its not available on solaris9.
10993	- review of testcode.
10994		* entries in a RANGE are no longer reversed.
10995		* print name of file with replay entry parse errors.
10996	- port to OSX: cast to int for some prints of sizet.
10997	- Makefile copies ldnstestpkts.c before doing dependencies on it.
10998
1099913 February 2007: Wouter
11000	- work on fake events, first fwd replay works.
11001	- events can do timeouts and errors on queries to servers.
11002	- test package that runs replay scenarios.
11003
1100412 February 2007: Wouter
11005	- work on fake events.
11006
110079 February 2007: Wouter
11008	- replay file reading.
11009	- fake event setup, it creates fake structures, and teardowns,
11010	  added signal callbacks to reply to be able to fake those,
11011	  and main structure of event replay routines.
11012
110138 February 2007: Wouter
11014	- added tcp test.
11015	- replay storage.
11016	- testcode/fake_event work.
11017
110187 February 2007: Wouter
11019	- return answer with the same ID as query was sent with.
11020	- created udp forwarder test. I've done some effort to make it perform
11021	  quickly. After servers are created, no big sleep statements but
11022	  it checks the logfiles to see if servers have come up. Takes 0.14s.
11023	- set addrlen value when calling recvfrom.
11024	- comparison of addrs more portable.
11025	- LIBEVENT option for testbed to set libevent directory.
11026	- work on tcp input.
11027
110286 February 2007: Wouter
11029	- reviewed code and improved in places.
11030
110315 February 2007: Wouter
11032	- Picked up stdc99 and other define tests from ldns. Improved
11033	  POSIX define test to include getaddrinfo.
11034	- defined constants for netevent callback error code.
11035	- unit test for strisip6.
11036
110372 February 2007: Wouter
11038	- Created udp4 and udp6 port arrays to provide service for both
11039	  address families.
11040	- uses IPV6_USE_MIN_MTU for udp6 ,IPV6_V6ONLY to make ip6 sockets.
11041	- listens on both ip4 and ip6 ports to provide correct return address.
11042	- worker fwder address filled correctly.
11043	- fixup timer code.
11044	- forwards udp queries and sends answer.
11045
110461 February 2007: Wouter
11047	- outside network more UDP work.
11048	- moved * closer to type.
11049	- comm_timer object and events.
11050
1105131 January 2007: Wouter
11052	- Added makedist.sh script to make release tarball.
11053	- Removed listen callback layer, did not add anything.
11054	- Added UDP recv to netevent, worker callback for udp.
11055	- netevent communication reply storage structure.
11056	- minimal query header sanity checking for worker.
11057	- copied over rbtree implementation from NSD (BSD licensed too).
11058	- outgoing network query service work.
11059
1106030 January 2007: Wouter
11061	- links in example/ldns-testpkts.c and .h for premade packet support.
11062	- added callback argument to listen_dnsport and daemon/worker.
11063
1106429 January 2007: Wouter
11065	- unbound.8 a short manpage.
11066
1106726 January 2007: Wouter
11068	- fixed memleak.
11069	- make lint works on BSD and Linux (openssl defines).
11070	- make tags works.
11071	- testbound program start.
11072
1107325 January 2007: Wouter
11074	- fixed lint so it may work on BSD.
11075	- put license into header of every file.
11076	- created verbosity flag.
11077	- fixed libevent configure flag.
11078	- detects event_base_free() in new libevent 1.2 version.
11079	- getopt in daemon. fatal_exit() and verbose() logging funcs.
11080	- created log_assert, that throws assertions to the logfile.
11081	- listen_dnsport service. Binds ports.
11082
1108324  January 2007: Wouter
11084	- cleaned up configure.ac.
11085
1108623  January 2007: Wouter
11087	- added libevent to configure to link with.
11088	- util/netevent setup work.
11089	- configure searches for libevent.
11090	- search for libs at end of configure (when other headers and types
11091	  have been found).
11092	- doxygen works with ATTR_UNUSED().
11093	- util/netevent implementation.
11094
1109522  January 2007: Wouter
11096	- Designed header file for network communication.
11097
1109816  January 2007: Wouter
11099	- added readme.svn and readme.tests.
11100
111014 January 2007: Wouter
11102	- Testbed script (run on multiple platforms the test set).
11103	  Works on Sunos9, Sunos10, FreeBSD 6.1, Fedora core 5.
11104	- added unit test tpkg.
11105
111063 January 2007: Wouter
11107	- committed first set of files into subversion repository.
11108	  svn co svn+ssh://unbound.net/svn/unbound
11109	  You need a ssh login.  There is no https access yet.
11110	- Added LICENSE, the BSD license.
11111	- Added doc/README with compile help.
11112	- main program stub and quiet makefile.
11113	- minimal logging service (to stderr).
11114	- added postcommit hook that serves emails.
11115	- added first test 00-lint. postcommit also checks if build succeeds.
11116	- 01-doc: doxygen doc target added for html docs. And stringent test
11117	  on documented files, functions and parameters.
11118
1111915 December 2006: Wouter
11120	- Created Makefile.in and configure.ac.
11121