History log of /netbsd-current/external/mpl/bind/dist/bin/tests/system/cds/tests.sh
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: bind-9-18-24-1 bind-9-18-24
# 1.1.1.7 21-Feb-2024 christos

Import bind-9.18.24 (previous was 9.16.42)

--- 9.18.24 released ---

6343. [bug] Fix case insensitive setting for isc_ht hashtable.
[GL #4568]

--- 9.18.23 released ---

6322. [security] Specific DNS answers could cause a denial-of-service
condition due to DNS validation taking a long time.
(CVE-2023-50387) [GL #4424]

6321. [security] Change 6315 inadvertently introduced regressions that
could cause named to crash. [GL #4234]

6320. [bug] Under some circumstances, the DoT code in client
mode could process more than one message at a time when
that was not expected. That has been fixed. [GL #4487]

--- 9.18.22 released ---

6319. [func] Limit isc_task_send() overhead for RBTDB tree pruning.
[GL #4383]

6317. [security] Restore DNS64 state when handling a serve-stale timeout.
(CVE-2023-5679) [GL #4334]

6316. [security] Specific queries could trigger an assertion check with
nxdomain-redirect enabled. (CVE-2023-5517) [GL #4281]

6315. [security] Speed up parsing of DNS messages with many different
names. (CVE-2023-4408) [GL #4234]

6314. [bug] Address race conditions in dns_tsigkey_find().
[GL #4182]

6312. [bug] Conversion from NSEC3 signed to NSEC signed could
temporarily put the zone into a state where it was
treated as unsigned until the NSEC chain was built.
Additionally conversion from one set of NSEC3 parameters
to another could also temporarily put the zone into a
state where it was treated as unsigned until the new
NSEC3 chain was built. [GL #1794] [GL #4495]

6310. [bug] Memory leak in zone.c:sign_zone. When named signed a
zone it could leak dst_keys due to a misplaced
'continue'. [GL #4488]

6306. [func] Log more details about the cause of "not exact" errors.
[GL #4500]

6304. [bug] The wrong time was being used to determine what RRSIGs
where to be generated when dnssec-policy was in use.
[GL #4494]

6302. [func] The "trust-anchor-telemetry" statement is no longer
marked as experimental. This silences a relevant log
message that was emitted even when the feature was
explicitly disabled. [GL #4497]

6300. [bug] Fix statistics export to use full 64 bit signed numbers
instead of truncating values to unsigned 32 bits.
[GL #4467]

6299. [port] NetBSD has added 'hmac' to libc which collides with our
use of 'hmac'. [GL #4478]

--- 9.18.21 released ---

6297. [bug] Improve LRU cleaning behaviour. [GL #4448]

6296. [func] The "resolver-nonbackoff-tries" and
"resolver-retry-interval" options are deprecated;
a warning will be logged if they are used. [GL #4405]

6294. [bug] BIND might sometimes crash after startup or
re-configuration when one 'tls' entry is used multiple
times to connect to remote servers due to initialisation
attempts from contexts of multiple threads. That has
been fixed. [GL #4464]

6290. [bug] Dig +yaml will now report "no servers could be reached"
also for UDP setup failure when no other servers or
tries are left. [GL #1229]

6287. [bug] Recognize escapes when reading the public key from file.
[GL !8502]

6286. [bug] Dig +yaml will now report "no servers could be reached"
on TCP connection failure as well as for UDP timeouts.
[GL #4396]

6282. [func] Deprecate AES-based DNS cookies. [GL #4421]

--- 9.18.20 released ---

6280. [bug] Fix missing newlines in the output of "rndc nta -dump".
[GL !8454]

6277. [bug] Take into account local authoritative zones when
falling back to serve-stale. [GL #4355]

6275. [bug] Fix assertion failure when using lock-file configuration
option together -X argument to named. [GL #4386]

6274. [bug] The 'lock-file' file was being removed when it
shouldn't have been making it ineffective if named was
started 3 or more times. [GL #4387]

6271. [bug] Fix a shutdown race in dns__catz_update_cb(). [GL #4381]

6269. [maint] B.ROOT-SERVERS.NET addresses are now 170.247.170.2 and
2801:1b8:10::b. [GL #4101]

6267. [func] The timeouts for resending zone refresh queries over UDP
were lowered to enable named to more quickly determine
that a primary is down. [GL #4260]

6265. [bug] Don't schedule resign operations on the raw version
of an inline-signing zone. [GL #4350]

6261. [bug] Fix a possible assertion failure on an error path in
resolver.c:fctx_query(), when using an uninitialized
link. [GL #4331]

6254. [cleanup] Add semantic patch to do an explicit cast from char
to unsigned char in ctype.h class of functions.
[GL #4327]

6252. [test] Python system tests have to be executed by invoking
pytest directly. Executing them with the legacy test
runner is no longer supported. [GL #4250]

6250. [bug] The wrong covered value was being set by
dns_ncache_current for RRSIG records in the returned
rdataset structure. This resulted in TYPE0 being
reported as the covered value of the RRSIG when dumping
the cache contents. [GL #4314]

--- 9.18.19 released ---

6246. [security] Fix use-after-free error in TLS DNS code when sending
data. (CVE-2023-4236) [GL #4242]

6245. [security] Limit the amount of recursion that can be performed
by isccc_cc_fromwire. (CVE-2023-3341) [GL #4152]

6244. [bug] Adjust log levels on malformed messages to NOTICE when
transferring in a zone. [GL #4290]

6241. [bug] Take into account the possibility of partial TLS writes
in TLS DNS code. That helps to prevent DNS messages
corruption on long DNS over TLS streams. [GL #4255]

6240. [bug] Use dedicated per-worker thread jemalloc memory
arenas for send buffers allocation to reduce memory
consumption and avoid lock contention. [GL #4038]

6239. [func] Deprecate the 'dnssec-must-be-secure' option.
[GL #3700]

6237. [bug] Address memory leaks due to not clearing OpenSSL error
stack. [GL #4159]

6235. [doc] Clarify BIND 9 time formats. [GL #4266]

6234. [bug] Restore stale-refresh-time value after flushing the
cache. [GL #4278]

6232. [bug] Following the introduction of krb5-subdomain-self-rhs
and ms-subdomain-self-rhs update rules, removal of
nonexistent PTR and SRV records via UPDATE could fail.
[GL #4280]

6231. [func] Make nsupdate honor -v for SOA requests if the server
is specified. [GL #1181]

6230. [bug] Prevent an unnecessary query restart if a synthesized
CNAME target points to the CNAME owner. [GL #3835]

6227. [bug] Check the statistics-channel HTTP Content-length
to prevent negative or overflowing values from
causing a crash. [GL #4125]

6224. [bug] Check the If-Modified-Since value length to prevent
out-of-bounds write. [GL #4124]

--- 9.18.18 released ---

6220. [func] Deprecate the 'dialup' and 'heartbeat-interval'
options. [GL #3700]

6219. [bug] Ignore 'max-zone-ttl' on 'dnssec-policy insecure'.
[GL #4032]

6215. [protocol] Return REFUSED to GSS-API TKEY requests if GSS-API
support is not configured. [GL #4225]

6213. [bug] Mark a primary server as temporarily unreachable if the
TCP connection attempt times out. [GL #4215]

6212. [bug] Don't process detach and close netmgr events when
the netmgr has been paused. [GL #4200]

--- 9.18.17 released ---

6206. [bug] Add shutdown checks in dns_catz_dbupdate_callback() to
avoid a race with dns_catz_shutdown_catzs(). [GL #4171]

6205. [bug] Restore support to read legacy HMAC-MD5 K file pairs.
[GL #4154]

6204. [bug] Use NS records for relaxed QNAME-minimization mode.
This reduces the number of queries named makes when
resolving, as it allows the non-existence of NS RRsets
at non-referral nodes to be cached in addition to the
referrals that are normally cached. [GL #3325]

6200. [bug] Fix nslookup erroneously reporting a timeout when the
input is delayed. [GL #4044]

6199. [bug] Improve HTTP Connection: header protocol conformance
in the statistics channel. [GL #4126]

6198. [func] Remove the holes in the isc_result_t enum to compact
the isc_result tables. [GL #4149]

6197. [bug] Fix a data race between the dns_zone and dns_catz
modules when registering/unregistering a database
update notification callback for a catalog zone.
[GL #4132]

6196. [cleanup] Report "permission denied" instead of "unexpected error"
when trying to update a zone file on a read-only file
system. Thanks to Midnight Veil. [GL #4134]

6193. [bug] Fix a catz db update notification callback registration
logic error, which could crash named when receiving an
AXFR update for a catalog zone while the previous update
process of the catalog zone was already running.
[GL #4136]

6166. [func] Retry without DNS COOKIE on FORMERR if it appears that
the FORMERR was due to the presence of a DNS COOKIE
option. [GL #4049]


Revision tags: bind-9-16-42 bind-9-16-37
# 1.1.1.6 25-Jan-2023 christos

Import bind-9.16.37 (previous was bind-9.16.33)

--- 9.16.37 released ---

6067. [security] Fix serve-stale crash when recursive clients soft quota
is reached. (CVE-2022-3924) [GL #3619]

6066. [security] Handle RRSIG lookups when serve-stale is active.
(CVE-2022-3736) [GL #3622]

6064. [security] An UPDATE message flood could cause named to exhaust all
available memory. This flaw was addressed by adding a
new "update-quota" statement that controls the number of
simultaneous UPDATE messages that can be processed or
forwarded. The default is 100. A stats counter has been
added to record events when the update quota is
exceeded, and the XML and JSON statistics version
numbers have been updated. (CVE-2022-3094) [GL #3523]

6062. [func] The DSCP implementation, which has only been
partly operational since 9.16.0, is now marked as
deprecated. Configuring DSCP values in named.conf
will cause a warning will be logged. [GL #3773]

6060. [bug] Fix a use-after-free bug in dns_zonemgr_releasezone()
by detaching from the zone manager outside of the write
lock. [GL #3768]

6059. [bug] In some serve stale scenarios, like when following an
expired CNAME record, named could return SERVFAIL if the
previous request wasn't successful. Consider non-stale
data when in serve-stale mode. [GL #3678]

6058. [bug] Prevent named from crashing when "rndc delzone"
attempts to delete a zone added by a catalog zone.
[GL #3745]

6050. [bug] Changes to the RPZ response-policy min-update-interval
and add-soa options now take effect as expected when
named is reconfigured. [GL #3740]

6048. [bug] Fix a log message error in dns_catz_update_from_db(),
where serials with values of 2^31 or larger were logged
incorrectly as negative numbers. [GL #3742]

6045. [cleanup] The list of supported DNSSEC algorithms changed log
level from "warning" to "notice" to match named's other
startup messages. [GL !7217]

6044. [bug] There was an "RSASHA236" typo in a log message.
[GL !7206]

--- 9.16.36 released ---

6043. [bug] The key file IO locks objects would never get
deleted from the hashtable due to off-by-one error.
[GL #3727]

6042. [bug] ANY responses could sometimes have the wrong TTL.
[GL #3613]

6040. [bug] Speed up the named shutdown time by explicitly
canceling all recursing ns_client objects for
each ns_clientmgr. [GL #3183]

6039. [bug] Removing a catalog zone from catalog-zones without
also removing the referenced zone could leave a
dangling pointer. [GL #3683]

6031. [bug] Move the "final reference detached" log message
from dns_zone unit to the DEBUG(1) log level.
[GL #3707]

6024. [func] Deprecate 'auto-dnssec'. [GL #3667]

6021. [bug] Use the current domain name when checking answers from
a dual-stack-server. [GL #3607]

6020. [bug] Ensure 'named-checkconf -z' respects the check-wildcard
option when loading a zone. [GL #1905]

6017. [bug] The view's zone table was not locked when it should
have been leading to race conditions when external
extensions that manipulate the zone table where in
use. [GL #3468]

--- 9.16.35 released ---

6013. [bug] Fix a crash that could happen when you change
a dnssec-policy zone with NSEC3 to start using
inline-signing. [GL #3591]

6009. [bug] Don't trust a placeholder KEYDATA from the managed-keys
zone by adding it into secroots. [GL #2895]

6008. [bug] Fixed a race condition that could cause a crash
in dns_zone_synckeyzone(). [GL #3617]

6002. [bug] Fix a resolver prefetch bug when the record's TTL value
is equal to the configured prefetch eligibility value,
but the record was erroneously not treated as eligible
for prefetching. [GL #3603]

6001. [bug] Always call dns_adb_endudpfetch() after calling
dns_adb_beginudpfetch() for UDP queries in resolver.c,
in order to adjust back the quota. [GL #3598]

6000. [bug] Fix a startup issue on Solaris systems with many
(reportedly > 510) CPUs. Thanks to Stacey Marshall from
Oracle for deep investigation of the problem. [GL #3563]

5999. [bug] rpz-ip rules could be ineffective in some scenarios
with CD=1 queries. [GL #3247]

5998. [bug] The RecursClients statistics counter could overflow
in certain resolution scenarios. [GL #3584]

5996. [bug] Fix a couple of bugs in cfg_print_duration(), which
could result in generating incomplete duration values
when printing the configuration using named-checkconf.
[GL !6880]

--- 9.16.34 released ---

5991. [protocol] Add support for parsing and validating "dohpath" to
SVCB. [GL #3544]

5988. [bug] Some out of memory conditions in opensslrsa_link.c
could lead to memory leaks. [GL #3551]

5984. [func] 'named -V' now reports the list of supported
DNSSEC/DS/HMAC algorithms and the supported TKEY modes.
[GL #3541]

5983. [bug] Changing just the TSIG key names for primaries in
catalog zones' member zones was not effective.
[GL #3557]

5973. [bug] Fixed a possible invalid detach in UPDATE
processing. [GL #3522]

5963. [bug] Ensure struct named_server is properly initialized.
[GL #6531]

5921. [test] Convert system tests to use a default DNSKEY algorithm
where the test is not DNSKEY algorithm specific.
[GL #3440]


Revision tags: netbsd-10-base bind-9-16-33
# 1.1.1.5 23-Sep-2022 christos

branches: 1.1.1.5.2;
Import 9.16.33; last imported was 9.16.20

--- 9.16.33 released ---

5962. [security] Fix memory leak in EdDSA verify processing.
(CVE-2022-38178) [GL #3487]

5961. [security] Fix memory leak in ECDSA verify processing.
(CVE-2022-38177) [GL #3487]

5960. [security] Fix serve-stale crash that could happen when
stale-answer-client-timeout was set to 0 and there was
a stale CNAME in the cache for an incoming query.
(CVE-2022-3080) [GL #3517]

5957. [security] Prevent excessive resource use while processing large
delegations. (CVE-2022-2795) [GL #3394]

5956. [func] Make RRL code treat all QNAMEs that are subject to
wildcard processing within a given zone as the same
name. [GL #3459]

5955. [port] The libxml2 library has deprecated the usage of
xmlInitThreads() and xmlCleanupThreads() functions. Use
xmlInitParser() and xmlCleanupParser() instead.
[GL #3518]

5954. [func] Fallback to IDNA2003 processing in dig when IDNA2008
conversion fails. [GL #3485]

5953. [bug] Fix a crash on shutdown in delete_trace_entry(). Add
mctx attach/detach pair to make sure that the memory
context used by a memory pool is not destroyed before
the memory pool itself. [GL #3515]

5952. [bug] Use quotes around address strings in YAML output.
[GL #3511]

5951. [bug] In some cases, the dnstap query_message field was
erroneously set when logging response messages.
[GL #3501]

5948. [bug] Fix nsec3.c:dns_nsec3_activex() function, add a missing
dns_db_detachnode() call. [GL #3500]

5945. [bug] If parsing /etc/bind.key failed, delv could assert
when trying to parse the built in trust anchors as
the parser hadn't been reset. [GL !6468]

5942. [bug] Fix tkey.c:buildquery() function's error handling by
adding the missing cleanup code. [GL #3492]

5941. [func] Zones with dnssec-policy now require dynamic DNS or
inline-siging to be configured explicitly. [GL #3381]

5936. [bug] Don't enable serve-stale for lookups that error because
it is a duplicate query or a query that would be
dropped. [GL #2982]

--- 9.16.32 released ---

5934. [func] Improve fetches-per-zone fetch limit logging to log
the final allowed and spilled values of the fetch
counters before the counter object gets destroyed.
[GL #3461]

5933. [port] Automatically disable RSASHA1 and NSEC3RSASHA1 in
named on Fedorda 33, Oracle Linux 9 and RHEL9 when
they are disabled by the security policy. [GL #3469]

5932. [bug] Fix rndc dumpdb -expired and always include expired
RRsets, not just for RBTDB_VIRTUAL time window.
[GL #3462]

5929. [bug] The "max-zone-ttl" option in "dnssec-policy" was
not fully effective; it was used for timing key
rollovers but did not actually place an upper limit
on TTLs when loading a zone. This has been
corrected, and the documentation has been clarified
to indicate that the old "max-zone-ttl" zone option
is now ignored when "dnssec-policy" is in use.
[GL #2918]

5924. [func] When it's necessary to use AXFR to respond to an
IXFR request, a message explaining the reason
is now logged at level info. [GL #2683]

5923. [bug] Fix inheritance for dnssec-policy when checking for
inline-signing. [GL #3438]

5922. [bug] Forwarding of UPDATE message could fail with the
introduction of netmgr. This has been fixed. [GL #3389]

--- 9.16.31 released ---

5917. [bug] Update ifconfig.sh script as is miscomputed interface
identifiers when destroying interfaces. [GL #3061]

5915. [bug] Detect missing closing brace (}) and computational
overflows in $GENERATE directives. [GL #3429]

5913. [bug] Fix a race between resolver query timeout and
validation in resolver.c:validated(). Remove
resolver.c:maybe_destroy() as it is no loger needed.
[GL #3398]

5909. [bug] The server-side destination port was missing from dnstap
captures of client traffic. [GL #3309]

5905. [bug] When the TCP connection would be closed/reset between
the connect/accept and the read, the uv_read_start()
return value would be unexpected and cause an assertion
failure. [GL #3400]

5903. [bug] When named checks that the OPCODE in a response matches
that of the request, if there is a mismatch named logs
an error. Some of those error messages incorrectly
used RCODE instead of OPCODE to lookup the nemonic.
This has been corrected. [GL !6420]

--- 9.16.30 released ---

5899. [func] Don't try to process DNSSEC-related and ZONEMD records
in catz. [GL #3380]

5890. [bug] When the fetches-per-server quota was adjusted
because of an authoritative server timing out more
or less frequently, it was incorrectly set to 1
rather than the intended value. This has been
fixed. [GL #3327]

5888. [bug] Only write key files if the dnssec-policy keymgr has
changed the metadata. [GL #3302]

5823. [func] Replace hazard pointers based lock-free list with
locked-list based queue that's simpler and has no or
little performance impact. [GL #3180]

--- 9.16.29 released ---

5885. [bug] RPZ NSIP and NSDNAME rule processing didn't handle stub
and static-stub zones at or above the query name. This
has now been addressed. [GL #3232]

5881. [bug] dig +nssearch could hang in rare cases when recv_done()
callback was being called earlier than send_done().
[GL #3278]

5880. [func] Add new named command-line option -C to print built-in
defaults. [GL #1326]

5879. [contrib] dlz: Add FALLTHROUGH and UNREACHABLE macros. [GL #3306]

5874. [bug] keymgr didn't work with python 3.11. [GL !6157]

5866. [bug] Work around a jemalloc quirk which could trigger an
out-of-memory condition in named over time. [GL #3287]

5863. [bug] If there was a pending negative cache DS entry,
validations depending upon it could fail. [GL #3279]

5858. [bug] Don't remove CDS/CDNSKEY DELETE records on zone sign
when using 'auto-dnssec maintain;'. [GL #2931]

--- 9.16.28 released ---

5856. [bug] The "starting maxtime timer" message related to outgoing
zone transfers was incorrectly logged at the ERROR level
instead of DEBUG(1). [GL #3208]

5852. [func] Add new "reuseport" option to enable/disable load
balancing of sockets. [GL #3249]

5843. [bug] When an UPDATE targets a zone that is not configured,
the requested zone name is now logged in the "not
authoritative" error message, so that it is easier to
track down problematic update clients. [GL #3209]

5836. [bug] Quote the dns64 prefix in error messages that complain
about problems with it, to avoid confusion with the
following dns64 ACLs. [GL #3210]

5834. [cleanup] C99 variable-length arrays are difficult to use safely,
so avoid them except in test code. [GL #3201]

5828. [bug] Replace single TCP write timer with per-TCP write
timers. [GL #3200]

5824. [bug] Invalid dnssec-policy definitions were being accepted
where the defined keys did not cover both KSK and ZSK
roles for a given algorithm. This is now checked for
and the dnssec-policy is rejected if both roles are
not present for all algorithms in use. [GL #3142]

--- 9.16.27 released ---

5818. [security] A synchronous call to closehandle_cb() caused
isc__nm_process_sock_buffer() to be called recursively,
which in turn left TCP connections hanging in the
CLOSE_WAIT state blocking indefinitely when
out-of-order processing was disabled. (CVE-2022-0396)
[GL #3112]

5817. [security] The rules for acceptance of records into the cache
have been tightened to prevent the possibility of
poisoning if forwarders send records outside
the configured bailiwick. (CVE-2021-25220) [GL #2950]

5816. [bug] Make BIND compile with LibreSSL 3.5.0, as it was using
not very accurate pre-processor checks for using shims.
[GL #3172]

5815. [bug] If an oversized key name of a specific length was used
in the text form of an HTTP or SVBC record, an INSIST
could be triggered when parsing it. [GL #3175]

5814. [bug] The RecursClients statistics counter could underflow
in certain resolution scenarios. [GL #3147]

5811. [bug] Reimplement the maximum and idle timeouts for outgoing
zone transfers. [GL #1897]

5807. [bug] Add a TCP "write" timer, and time out writing
connections after the "tcp-idle-timeout" period
has elapsed. [GL #3132]

5804. [func] Add a debug log message when starting and ending
the task exclusive mode. [GL #3137]

--- 9.16.26 released ---

5801. [bug] Log "quota reached" message when hard quota
is reached when accepting a connection. [GL #3125]

5800. [func] Add ECS support to the DLZ interface. [GL #3082]

5797. [bug] A failed view configuration during a named
reconfiguration procedure could cause inconsistencies
in BIND internal structures, causing a crash or other
unexpected errors. [GL #3060]

5795. [bug] rndc could crash when interrupted by a signal
before receiving a response. [GL #3080]

5793. [bug] Correctly detect and enable UDP recvmmsg support
in all versions of libuv that support it. [GL #3095]

--- 9.16.25 released ---

5789. [bug] Allow replacing expired zone signatures with
signatures created by the KSK. [GL #3049]

5788. [bug] An assertion could occur if a catalog zone event was
scheduled while the task manager was being shut
down. [GL #3074]

5787. [doc] Update 'auto-dnssec' documentation, it may only be
activated at zone level. [GL #3023]

5786. [bug] Defer detaching from zone->raw in zone_shutdown() if
the zone is in the process of being dumped to disk, to
ensure that the unsigned serial number information is
always written in the raw-format header of the signed
version on an inline-signed zone. [GL #3071]

5785. [bug] named could leak memory when two dnssec-policy clauses
had the same name. named failed to log this error.
[GL #3085]

5776. [bug] Add a missing isc_condition_destroy() for nmsocket
condition variable and add missing isc_mutex_destroy()
for nmworker lock. [GL #3051]

5676. [func] Memory use in named was excessive. This has been
addressed by:
- Replacing locked memory pools with normal memory
allocations.
- Reducing the number of retained free items in
unlocked memory pools.
- Disabling the internal allocator by default.
"named -M internal" turns it back on.
[GL #2398]

--- 9.16.24 released ---

5773. [func] Change the message when accepting TCP connection has
failed to say "Accepting TCP connection failed" and
change the log level for ISC_R_NOTCONNECTED, ISC_R_QUOTA
and ISC_R_SOFTQUOTA results codes from ERROR to INFO.
[GL #2700]

5768. [bug] dnssec-dsfromkey failed to omit revoked keys. [GL #853]

5764. [bug] dns_sdlz_putrr failed to process some valid resource
records. [GL #3021]

5762. [bug] Fix a "named" crash related to removing and restoring a
`catalog-zone` entry in the configuration file and
running `rndc reconfig`. [GL #1608]

5758. [bug] mdig now honors the operating system's preferred
ephemeral port range. [GL #2374]

5757. [test] Replace sed in nsupdate system test with awk to
construct the nsupdate command. The sed expression
was not reliably changing the ttl. [GL #3003]

--- 9.16.23 released ---

5752. [bug] Fix an assertion failure caused by missing member zones
during a reload of a catalog zone. [GL #2308]

5750. [bug] Fix a bug when comparing two RSA keys. There was a typo
which caused the "p" prime factors to not being
compared. [GL #2972]

5737. [bug] Address Coverity warning in lib/dns/dnssec.c.
[GL #2935]

--- 9.16.22 released ---

5736. [security] The "lame-ttl" option is now forcibly set to 0. This
effectively disables the lame server cache, as it could
previously be abused by an attacker to significantly
degrade resolver performance. (CVE-2021-25219)
[GL #2899]

5724. [bug] Address a potential deadlock when checking zone content
consistency. [GL #2908]

5723. [bug] Change 5709 broke backward compatibility for the
"check-names master ..." and "check-names slave ..."
options. This has been fixed. [GL #2911]

5720. [contrib] Old-style DLZ drivers that had to be enabled at
build-time have been marked as deprecated. [GL #2814]

5719. [func] The "map" zone file format has been marked as
deprecated. [GL #2882]

5717. [func] The "cache-file" option, which was documented as "for
testing purposes only" and not to be used, has been
removed. [GL #2903]

5716. [bug] Multiple library names were mistakenly passed to the
krb5-config utility when ./configure was invoked with
the --with-gssapi=[/path/to/]krb5-config option. This
has been fixed by invoking krb5-config separately for
each required library. [GL #2866]

5715. [func] Add a check for ports specified in "*-source(-v6)"
options clashing with a global listening port. Such a
configuration was already unsupported, but it failed
silently; it is now treated as an error. [GL #2888]

5714. [bug] Remove the "adjust interface" mechanism which was
responsible for setting up listeners on interfaces when
the "*-source(-v6)" address and port were the same as
the "listen-on(-v6)" address and port. Such a
configuration is no longer supported; under certain
timing conditions, that mechanism could prevent named
from listening on some TCP ports. This has been fixed.
[GL #2852]

5712. [doc] Add deprecation notice about removing native PKCS#11
support in the next major BIND 9 release. [GL #2691]

--- 9.16.21 released ---

5711. [bug] "map" files exceeding 2GB in size failed to load due to
a size comparison that incorrectly treated the file size
as a signed integer. [GL #2878]

5710. [port] win32: incorrect parentheses resulted in the wrong
sizeof() tests being used to pick the appropriate
Windows atomic operations for the object's size.
[GL #2891]

5709. [cleanup] Enum values throughout the code have been updated
to use the terms "primary" and "secondary" instead of
"master" and "slave", respectively. [GL #1944]

5708. [bug] The thread-local isc_tid_v variable was not properly
initialized when running BIND 9 as a Windows Service,
leading to a crash on startup. [GL #2837]

5705. [bug] Change #5686 altered the internal memory structure of
zone databases, but neglected to update the MAPAPI value
for zone files in "map" format. This caused named to
attempt to load incompatible map files, triggering an
assertion failure on startup. The MAPAPI value has now
been updated, so named rejects outdated files when
encountering them. [GL #2872]

5704. [bug] Change #5317 caused the EDNS TCP Keepalive option to be
ignored inadvertently in client requests. It has now
been fixed and this option is handled properly again.
[GL #1927]

5701. [bug] named-checkconf failed to detect syntactically invalid
values of the "key" and "tls" parameters used to define
members of remote server lists. [GL #2461]

5700. [bug] When a member zone was removed from a catalog zone,
journal files for the former were not deleted.
[GL #2842]

5699. [func] Data structures holding DNSSEC signing statistics are
now grown and shrunk as necessary upon key rollover
events. [GL #1721]

5698. [bug] When a DNSSEC-signed zone which only has a single
signing key available is migrated to use KASP, that key
is now treated as a Combined Signing Key (CSK).
[GL #2857]

5696. [protocol] Support for HTTPS and SVCB record types has been added.
(This does not include ADDITIONAL section processing for
these record types, only basic support for RR type
parsing and printing.) [GL #1132]

5694. [bug] Stale data in the cache could cause named to send
non-minimized queries despite QNAME minimization being
enabled. [GL #2665]

5691. [bug] When a dynamic zone was made available in another view
using the "in-view" statement, running "rndc freeze"
always reported an "already frozen" error even though
the zone was successfully frozen. [GL #2844]

5690. [func] dnssec-signzone now honors Predecessor and Successor
metadata found in private key files: if a signature for
an RRset generated by the inactive predecessor exists
and does not need to be replaced, no additional
signature is now created for that RRset using the
successor key. This enables dnssec-signzone to gradually
replace RRSIGs during a ZSK rollover. [GL #1551]


Revision tags: bind-9-16-20 cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base bind-9-16-15 bind-9-16-12
# 1.1.1.4 19-Feb-2021 christos

--- 9.16.12 released ---

5578. [protocol] Make "check-names" accept A records below "_spf",
"_spf_rate", and "_spf_verify" labels in order to cater
for the "exists" SPF mechanism specified in RFC 7208
section 5.7 and appendix D.1. [GL #2377]

5577. [bug] Fix the "three is a crowd" key rollover bug in KASP by
correctly implementing Equation (2) of the "Flexible and
Robust Key Rollover" paper. [GL #2375]

5575. [bug] When migrating to KASP, BIND 9 considered keys with the
"Inactive" and/or "Delete" timing metadata to be
possible active keys. This has been fixed. [GL #2406]

5572. [bug] Address potential double free in generatexml().
[GL #2420]

5571. [bug] named failed to start when its configuration included a
zone with a non-builtin "allow-update" ACL attached.
[GL #2413]

5570. [bug] Improve performance of the DNSSEC verification code by
reducing the number of repeated calls to
dns_dnssec_keyfromrdata(). [GL #2073]

5569. [bug] Emit useful error message when "rndc retransfer" is
applied to a zone of inappropriate type. [GL #2342]

5568. [bug] Fixed a crash in "dnssec-keyfromlabel" when using ECDSA
keys. [GL #2178]

5567. [bug] Dig now reports unknown dash options while pre-parsing
the options. This prevents "-multi" instead of "+multi"
from reporting memory usage before ending option parsing
with "Invalid option: -lti". [GL #2403]

5566. [func] Add "stale-answer-client-timeout" option, which is the
amount of time a recursive resolver waits before
attempting to answer the query using stale data from
cache. [GL #2247]

5565. [func] The SONAMEs for BIND 9 libraries now include the current
BIND 9 version number, in an effort to tightly couple
internal libraries with a specific release. [GL #2387]

5562. [security] Fix off-by-one bug in ISC SPNEGO implementation.
(CVE-2020-8625) [GL #2354]

5561. [bug] KASP incorrectly set signature validity to the value of
the DNSKEY signature validity. This is now fixed.
[GL #2383]

5560. [func] The default value of "max-stale-ttl" has been changed
from 12 hours to 1 day and the default value of
"stale-answer-ttl" has been changed from 1 second to 30
seconds, following RFC 8767 recommendations. [GL #2248]

5456. [func] Added "primaries" as a synonym for "masters" in
named.conf, and "primary-only" as a synonym for
"master-only" in the parameters to "notify", to bring
terminology up-to-date with RFC 8499. [GL #1948]

5362. [func] Limit the size of IXFR responses so that AXFR will
be used instead if it would be smaller. This is
controlled by the "max-ixfr-ratio" option, which
is a percentage representing the ratio of IXFR size
to the size of the entire zone. This value cannot
exceed 100%, which is the default. [GL #1515]

--- 9.16.11 released ---

5559. [bug] The --with-maxminddb=PATH form of the build-time option
enabling support for libmaxminddb was not working
correctly. This has been fixed. [GL #2366]

5557. [bug] Prevent RBTDB instances from being destroyed by multiple
threads at the same time. [GL #2317]

5556. [bug] Further tweak newline printing in dnssec-signzone and
dnssec-verify. [GL #2359]

5555. [bug] server->reload_status was not properly initialized.
[GL #2361]

5554. [bug] dnssec-signzone and dnssec-verify were missing newlines
between log messages. [GL #2359]

5553. [bug] When reconfiguring named, removing "auto-dnssec" did not
turn off DNSSEC maintenance. [GL #2341]

5552. [func] When switching to "dnssec-policy none;", named now
permits a safe transition to insecure mode and publishes
the CDS and CDNSKEY DELETE records, as described in RFC
8078. [GL #1750]

5551. [bug] named no longer attempts to assign threads to CPUs
outside the CPU affinity set. Thanks to Ole Bj��rn
Hessen. [GL #2245]

5550. [func] dnssec-signzone and named now log a warning when falling
back to the "increment" SOA serial method. [GL #2058]

5545. [func] OS support for load-balanced sockets is no longer
required to receive incoming queries in multiple netmgr
threads. [GL #2137]

5543. [bug] Fix UDP performance issues caused by making netmgr
callbacks asynchronous-only. [GL #2320]

5542. [bug] Refactor netmgr. [GL #1920] [GL #2034] [GL #2061]
[GL #2194] [GL #2221] [GL #2266] [GL #2283] [GL #2318]
[GL #2321]

--- 9.16.10 released ---

5544. [func] Restore the default value of "nocookie-udp-size" to 4096
bytes. [GL #2250]

5541. [func] Adjust the "max-recursion-queries" default from 75 to
100. [GL #2305]

5540. [port] Fix building with native PKCS#11 support for AEP Keyper.
[GL #2315]

5539. [bug] Tighten handling of missing DNS COOKIE responses over
UDP by falling back to TCP. [GL #2275]

5538. [func] Add NSEC3 support to KASP. A new option for
"dnssec-policy", "nsec3param", can be used to set the
desired NSEC3 parameters. NSEC3 salt collisions are
automatically prevented during resalting. Salt
generation is now logged with zone context. [GL #1620]

5534. [bug] The CNAME synthesized from a DNAME was incorrectly
followed when the QTYPE was CNAME or ANY. [GL #2280]

--- 9.16.9 released ---

5533. [func] Add the "stale-refresh-time" option, a time window that
starts after a failed lookup, during which a stale RRset
is served directly from cache before a new attempt to
refresh it is made. [GL #2066]

5530. [bug] dnstap did not capture responses to forwarded UPDATE
requests. [GL #2252]

5527. [bug] A NULL pointer dereference occurred when creating an NTA
recheck query failed. [GL #2244]

5525. [bug] Change 5503 inadvertently broke cross-compilation by
replacing a call to AC_LINK_IFELSE() with a call to
AC_RUN_IFELSE() in configure.ac. This has been fixed,
making cross-compilation possible again. [GL #2237]

5523. [bug] The initial lookup in a zone transitioning to/from a
signed state could fail if the DNSKEY RRset was not
found. [GL #2236]

5522. [bug] Fixed a race/NULL dereference in TCPDNS send. [GL #2227]

5520. [bug] Fixed a number of shutdown races, reference counting
errors, and spurious log messages that could occur
in the network manager. [GL #2221]

5518. [bug] Stub zones now work correctly with primary servers using
"minimal-responses yes". [GL #1736]

5517. [bug] Do not treat UV_EOF as a TCP4RecvErr or a TCP6RecvErr.
[GL #2208]

--- 9.16.8 released ---

5516. [func] The default EDNS buffer size has been changed from 4096
to 1232 bytes. [GL #2183]

5515. [func] Add 'rndc dnssec -rollover' command to trigger a manual
rollover for a specific key. [GL #1749]

5514. [bug] Fix KASP expected key size for Ed25519 and Ed448.
[GL #2171]

5513. [doc] The ARM section describing the "rrset-order" statement
was rewritten to make it unambiguous and up-to-date with
the source code. [GL #2139]

5512. [bug] "rrset-order" rules using "order none" were causing
named to crash despite named-checkconf treating them as
valid. [GL #2139]

5511. [bug] 'dig -u +yaml' failed to display timestamps to the
microsecond. [GL #2190]

5510. [bug] Implement the attach/detach semantics for dns_message_t
to fix a data race in accessing an already-destroyed
fctx->rmessage. [GL #2124]

5509. [bug] filter-aaaa: named crashed upon shutdown if it was in
the process of recursing for A RRsets. [GL #1040]

5508. [func] Added new parameter "-expired" for "rndc dumpdb" that
also prints expired RRsets (awaiting cleanup) to the
dump file. [GL #1870]

5507. [bug] Named could compute incorrect SIG(0) responses.
[GL #2109]

5506. [bug] Properly handle failed sysconf() calls, so we don't
report invalid memory size. [GL #2166]

5505. [bug] Updating contents of a mixed-case RPZ could cause some
rules to be ignored. [GL #2169]

5503. [bug] Cleaned up reference counting of network manager
handles, now using isc_nmhandle_attach() and _detach()
instead of _ref() and _unref(). [GL #2122]

--- 9.16.7 released ---

5501. [func] Log CDS/CDNSKEY publication. [GL #1748]

5500. [bug] Fix (non-)publication of CDS and CDNSKEY records.
[GL #2103]

5499. [func] Add '-P ds' and '-D ds' arguments to dnssec-settime.
[GL #1748]

5497. [bug] 'dig +bufsize=0' failed to disable EDNS. [GL #2054]

5496. [bug] Address a TSAN report by ensuring each rate limiter
object holds a reference to its task. [GL #2081]

5495. [bug] With query minimization enabled, named failed to
resolve ip6.arpa. names that had extra labels to the
left of the IPv6 part. [GL #1847]

5494. [bug] Silence the EPROTO syslog message on older systems.
[GL #1928]

5493. [bug] Fix off-by-one error when calculating new hash table
size. [GL #2104]

5492. [bug] Tighten LOC parsing to reject a period (".") and/or "m"
as a value. Fix handling of negative altitudes which are
not whole meters. [GL #2074]

5491. [bug] rbtversion->glue_table_size could be read without the
appropriate lock being held. [GL #2080]

5489. [bug] Named erroneously accepted certain invalid resource
records that were incorrectly processed after
subsequently being written to disk and loaded back, as
the wire format differed. Such records include: CERT,
IPSECKEY, NSEC3, NSEC3PARAM, NXT, SIG, TLSA, WKS, and
X25. [GL !3953]

5488. [bug] NTA code needed to have a weak reference on its
associated view to prevent the latter from being deleted
while NTA tests were being performed. [GL #2067]

5486. [func] Add 'rndc dnssec -checkds' command, which signals to
named that the DS record for a given zone or key has
been updated in the parent zone. [GL #1613]

--- 9.16.6 released ---

5484. [func] Expire zero TTL records quickly rather than using them
for stale answers. [GL #1829]

5483. [func] A new configuration option "stale-cache-enable" has been
introduced to enable or disable keeping stale answers in
cache. [GL #1712]

5482. [bug] If the Duplicate Address Detection (DAD) mechanism had
not yet finished after adding a new IPv6 address to the
system, BIND 9 would fail to bind to IPv6 addresses in a
tentative state. [GL #2038]

5481. [security] "update-policy" rules of type "subdomain" were
incorrectly treated as "zonesub" rules, which allowed
keys used in "subdomain" rules to update names outside
of the specified subdomains. The problem was fixed by
making sure "subdomain" rules are again processed as
described in the ARM. (CVE-2020-8624) [GL #2055]

5480. [security] When BIND 9 was compiled with native PKCS#11 support, it
was possible to trigger an assertion failure in code
determining the number of bits in the PKCS#11 RSA public
key with a specially crafted packet. (CVE-2020-8623)
[GL #2037]

5479. [security] named could crash in certain query resolution scenarios
where QNAME minimization and forwarding were both
enabled. (CVE-2020-8621) [GL #1997]

5478. [security] It was possible to trigger an assertion failure by
sending a specially crafted large TCP DNS message.
(CVE-2020-8620) [GL #1996]

5477. [bug] The idle timeout for connected TCP sockets, which was
previously set to a high fixed value, is now derived
from the client query processing timeout configured for
a resolver. [GL #2024]

5476. [security] It was possible to trigger an assertion failure when
verifying the response to a TSIG-signed request.
(CVE-2020-8622) [GL #2028]

5475. [bug] Wildcard RPZ passthru rules could incorrectly be
overridden by other rules that were loaded from RPZ
zones which appeared later in the "response-policy"
statement. This has been fixed. [GL #1619]

5474. [bug] dns_rdata_hip_next() failed to return ISC_R_NOMORE
when it should have. [GL !3880]

5473. [func] The RBT hash table implementation has been changed
to use a faster hash function (HalfSipHash2-4) and
Fibonacci hashing for better distribution. Setting
"max-cache-size" now preallocates a fixed-size hash
table so that rehashing does not cause resolution
brownouts while the hash table is grown. [GL #1775]

5471. [bug] The introduction of KASP support inadvertently caused
the second field of "sig-validity-interval" to always be
calculated in hours, even in cases when it should have
been calculated in days. This has been fixed. (Thanks to
Tony Finch.) [GL !3735]

5469. [port] On illumos, a constant called SEC is already defined in
<sys/time.h>, which conflicts with an identically named
constant in libbind9. This conflict has been resolved.
[GL #1993]

5468. [bug] Addressed potential double unlock in process_fd().
[GL #2005]

5466. [bug] Addressed an error in recursive clients stats reporting.
[GL #1719]

5465. [func] Added fallback to built-in trust-anchors, managed-keys,
or trusted-keys if the bindkeys-file (bind.keys) cannot
be parsed. [GL #1235]

5464. [bug] Requesting more than 128 files to be saved when rolling
dnstap log files caused a buffer overflow. This has been
fixed. [GL #1989]

5462. [bug] Move LMDB locking from LMDB itself to named. [GL #1976]

5461. [bug] The STALE rdataset header attribute was updated while
the write lock was not being held, leading to incorrect
statistics. The header attributes are now converted to
use atomic operations. [GL #1475]


Revision tags: netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bind-9-16-5 bind-9-16-3 phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 bind-9-14-8 phil-wifi-20191119 bind-9-14-7 bind-9-14-5 netbsd-9-base phil-wifi-20190609 bind-9-14-1 bind-9-13-7
# 1.1.1.3 24-Feb-2019 christos

branches: 1.1.1.3.2;
--- 9.13.7 released ---

5165. [contrib] Removed SDB drivers from contrib; they're obsolete.
[GL #428]

5164. [bug] Correct errno to result translation in dlz filesystem
modules. [GL #884]

5163. [cleanup] Out-of-tree builds failed --enable-dnstap. [GL #836]

5162. [cleanup] Improve dnssec-keymgr manual. Thanks to Tony Finch.
[GL !1518]

5161. [bug] Do not require the SEP bit to be set for mirror zone
trust anchors. [GL #873]

5160. [contrib] Added DNAME support to the DLZ LDAP schema. Also
fixed a compilation bug affecting several DLZ
modules. [GL #872]

5159. [bug] dnssec-coverage was incorrectly ignoring
names specified on the command line without
trailing dots. [GL !1478]

5158. [protocol] Add support for AMTRELAY and ZONEMD. [GL #867]

5157. [bug] Nslookup now errors out if there are extra command
line arguments. [GL #207]

5141. [security] Zone transfer controls for writable DLZ zones were
not effective as the allowzonexfr method was not being
called for such zones. (CVE-2019-6465) [GL #790]

5118. [security] Named could crash if it is managing a key with
`managed-keys` and the authoritative zone is rolling
the key to an unsupported algorithm. (CVE-2018-5745)
[GL #780]

5110. [security] Named leaked memory if there were multiple Key Tag
EDNS options present. (CVE-2018-5744) [GL #772]

--- 9.13.6 released ---

5156. [doc] Extended and refined the section of the ARM describing
mirror zones. [GL #774]

5155. [func] "named -V" now outputs the default paths to
named.conf, rndc.conf, bind.keys, and other
files used or created by named and other tools, so
that the correct paths to these files can quickly be
determined regardless of the configure settings
used when BIND was built. [GL #859]

5154. [bug] dig: process_opt could be called twice on the same
message leading to a assertion failure. [GL #860]

5153. [func] Zone transfer statistics (size, number of records, and
number of messages) are now logged for outgoing
transfers as well as incoming ones. [GL #513]

5152. [func] Improved logging of DNSSEC key events:
- Zone signing and DNSKEY maintenance events are
now logged to the "dnssec" category
- Messages are now logged when DNSSEC keys are
pubished, activated, inactivated, deleted,
or revoked.
[GL #714]

5151. [func] Options that have been been marked as obsolete in
named.conf for a very long time are now fatal
configuration errors. [GL #358]

5150. [cleanup] Remove the ability to compile BIND with assertions
disabled. [GL #735]

5149. [func] "rndc dumpdb" now prints a line above a stale RRset
indicating how long the data will be retained in the
cache for emergency use. [GL #101]

5148. [bug] named did not sign the TKEY response. [GL #821]

5147. [bug] dnssec-keymgr: Add a five-minute margin to better
handle key events close to 'now'. [GL #848]

5146. [placeholder]

5145. [func] Use atomics instead of locked variables for isc_quota
and isc_counter. [GL !1389]

5144. [bug] dig now returns a non-zero exit code when a TCP
connection is prematurely closed by a peer more than
once for the same lookup. [GL #820]

5143. [bug] dnssec-keymgr and dnssec-coverage failed to find
key files for zone names ending in ".". [GL #560]

5142. [cleanup] Removed "configure --disable-rpz-nsip" and
"--disable-rpz-nsdname" options. "nsip-enable"
and "nsdname-enable" both now default to yes,
regardless of compile-time settings. [GL #824]

5140. [bug] Don't immediately mark existing keys as inactive and
deleted when running dnssec-keymgr for the first
time. [GL #117]

5139. [bug] If possible, don't use forwarders when priming.
This ensures we can get root server IP addresses
from priming query response glue, which may not
be present if the forwarding server is returning
minimal responses. [GL #752]

5138. [bug] Under some circumstances named could hit an assertion
failure when doing qname minimization when using
forwarders. [GL #797]

5137. [func] named now logs messages whenever a mirror zone becomes
usable or unusable for resolution purposes. [GL #818]

5136. [cleanup] Check in named-checkconf that allow-update and
allow-update-forwarding are not set at the
view/options level; fix documentation. [GL #512]

5135. [port] sparc: Use smt_pause() instead of pause. [GL #816]

5134. [bug] win32: WSAStartup was not called before getservbyname
was called. [GL #590]

5133. [bug] 'rndc managed-keys' didn't handle class and view
correctly and failed to add new lines between each
view. [GL !1327]

5132. [bug] Fix race condition in cleanup part of dns_dt_create().
[GL !1323]

5131. [cleanup] Address Coverity warnings. [GL #801]

5130. [cleanup] Remove support for l10n message catalogs. [GL #709]

5129. [contrib] sdlz_helper.c:build_querylist was not properly
splitting the query string. [GL #798]

5128. [bug] Refreshkeytime was not being updated for managed
keys zones. [GL #784]

5127. [bug] rcode.c:maybe_numeric failed to handle NUL in text
regions. [GL #807]

5126. [bug] Named incorrectly accepted empty base64 and hex encoded
fields when reading master files. [GL #807]

5125. [bug] Allow for up to 100 records or 64k of data when caching
a negative response. [GL #804]

5124. [bug] Named could incorrectly return FORMERR rather than
SERVFAIL. [GL #804]

5123. [bug] dig could hang indefinitely after encountering an error
before creating a TCP socket. [GL #692]

5122. [bug] In a "forward first;" configuration, a forwarder
timeout did not prevent that forwarder from being
queried again after falling back to full recursive
resolution. [GL #315]

5121. [contrib] dlz_stub_driver.c fails to return ISC_R_NOTFOUND on none
matching zone names. [GL !1299]

5120. [placeholder]

5119. [placeholder]

5117. [placeholder]

5116. [bug] Named/named-checkconf triggered a assertion when
a mirror zone's name is bad. [GL #778]

5115. [bug] Allow unsupported algorithms in zone when not used for
signing with dnssec-signzone. [GL #783]

5114. [func] Include a 'reconfig/reload in progress' status line
in rndc status, use it in tests.

5113. [port] Fixed a Windows build error.

5112. [bug] Named/named-checkconf could dump core if there was
a missing masters clause and a bad notify clause.
[GL #779]

5111. [bug] Occluded DNSKEY records could make it into the
delegating NSEC/NSEC3 bitmap. [GL #742]

5109. [cleanup] Remove support for RSAMD5 algorithm. [GL #628]


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 bind-9-13-5-W1
# 1.1.1.2 09-Jan-2019 christos

Jump into the 9.13 train since the 9.12 train is about to expire (March 2019).

--- 9.13.5-W1 released ---

5113. [port] Fixed a Windows build error.

--- 9.13.5 released ---

5108. [bug] Named could fail to determine bottom of zone when
removing out of date keys leading to invalid NSEC
and NSEC3 records being added to the zone. [GL #771]

5107. [bug] 'host -U' did not work. [GL #769]

5106. [experimental] A new "plugin" mechanism has been added to allow
extension of query processing functionality through
the use of dynamically loadable libraries. A
"filter-aaaa.so" plugin has been implemented,
replacing the filter-aaaa feature that was formerly
implemented as a native part of BIND.

The "filter-aaaa", "filter-aaaa-on-v4" and
"filter-aaaa-on-v6" options can no longer be
configured using native named.conf syntax. However,
loading the filter-aaaa.so plugin and setting its
parameters provides identical functionality.

Note that the plugin API is a work in progress and
is likely to evolve as further plugins are
implemented. [GL #15]

5105. [bug] Fix a race between process_fd and socketclose in
unix socket code. [GL #744]

5104. [cleanup] Log clearer informational message when a catz zone
is overridden by a zone in named.conf.
Thanks to Tony Finch. [GL !1157]

5103. [bug] Add missing design by contract tests to dns_catz*.
[GL #748]

5102. [bug] dnssec-coverage failed to use the default TTL when
checking KSK deletion times leading to a exception.
[GL #585]

5101. [bug] Fix default installation path for Python modules and
remove the dnspython dependency accidentally introduced
by change 4970. [GL #730]

5100. [func] Pin resolver tasks to specific task queues. [GL !1117]

5099. [func] Failed mutex and conditional creations are always
fatal. [GL #674]

--- 9.13.4 released ---

5098. [func] Failed memory allocations are now fatal. [GL #674]

5097. [cleanup] Remove embedded ATF unit testing framework
from BIND source distribution. [GL !875]

5096. [func] Use multiple event loops in socket code, and
make network threads CPU-affinitive. This
significantly improves performance on large
systems. [GL #666]

5095. [test] Converted all unit tests from ATF to CMocka;
removed the source code for the ATF libraries.
Build with "configure --with-cmocka" to enable
unit testing. [GL #620]

5094. [func] Add 'dig -r' to disable reading of .digrc. [GL !970]

5093. [bug] Log lame qname-minimization servers only if they're
really lame. [GL #671]

5092. [bug] Address memory leak on SIGTERM in nsupdate when using
GSS-TSIG. [GL #558]

5091. [func] Two new global and per-view options min-cache-ttl
and min-ncache-ttl [GL #613]

5090. [bug] dig and mdig failed to properly preparse dash value
pairs when value was a seperate argument and started
with a dash. [GL #584]

5089. [bug] Restore localhost fallback in dig and host which is
used when no nameserver addresses present in
/etc/resolv.conf are usable due to the requested
address family restrictions. [GL #433]

5088. [bug] dig/host/nslookup could crash when interrupted close to
a query timeout. [GL #599]

5087. [test] Check that result tables are complete. [GL #676]

5086. [func] Log of RPZ now includes the QTYPE and QCLASS. [GL #623]

5085. [bug] win32: Restore looking up nameservers, search list,
etc. [GL #186]

5084. [placeholder]

5083. [func] Add autoconf macro AX_POSIX_SHELL, so we
can use POSIX-compatible shell features
in the scripts.

5082. [bug] Fixed a race that could cause a crash in
dig/host/nslookup. [GL #650]

5081. [func] Use per-worker queues in task manager, make task
runners CPU-affine. [GL #659]

5080. [func] Improvements to "rndc nta" user interface:
- catch and report invalid command line options
- when removing an NTA from all views, do not
abort with an error if the NTA was not found
in one of the views
- include the view name in "rndc nta -dump"
output, for consistency with the add and remove
actions
Thanks to Tony Finch. [GL !816]

5079. [func] Disable IDN processing in dig and nslookup
when not on a tty. [GL #653]

5078. [cleanup] Require python components to be explicitly disabled if
python is not available on unix platforms. [GL #601]

5077. [cleanup] Remove ip6.int support (-i) from dig and mdig.
[GL !969]

5076. [bug] "require-server-cookie" was not effective if
"rate-limit" was configured. [GL #617]

5075. [bug] Refresh nameservers from cache when sending final
query in qname minimization. [GL #16]

5074. [cleanup] Remove vector socket functions - isc_socket_recvv(),
isc_socket_sendtov(), isc_socket_sendtov2(),
isc_socket_sendv() - in order to simplify socket code.
[GL #645]

5073. [bug] Destroy a task first when destroying rpzs and catzs.
[GL #84]

5072. [bug] Add unit tests for isc_buffer_copyregion() and fix its
behavior for auto-reallocated buffers. [GL #644]

5071. [bug] Comparision of NXT records was broken. [GL #631]

5070. [bug] Record types which support a empty rdata field were
not handling the empty rdata field case. [GL #638]

5069. [bug] Fix a hang on in RPZ when named is shutdown during RPZ
zone update. [GL !907]

5068. [bug] Fix a race in RPZ with min-update-interval set to 0.
[GL #643]

5067. [bug] Don't minimize qname when sending the query
to a forwarder. [GL #361]

5066. [cleanup] Allow unquoted strings to be used as a zone names
in response-policy statements. [GL #641]

5065. [bug] Only set IPV6_USE_MIN_MTU on IPv6. [GL #553]

5064. [test] Initalize TZ environment variable before calling
dns_test_begin in dnstap_test. [GL #624]

5063. [test] In statschannel test try a few times before failing
when checking if the compressed output is the same as
uncompressed. [GL !909]

5062. [func] Use non-crypto-secure PRNG to generate nonces for
cookies. [GL !887]

5061. [protocol] Add support for EID and NIMLOC. [GL #626]

5060. [bug] GID, UID and UINFO could not be loaded using unknown
record format. [GL #627]

5059. [bug] Display a per-view list of zones in the web interface.
[GL #427]

5058. [func] Replace old message digest and hmac APIs with more
generic isc_md and isc_hmac APIs, and convert their
respective tests to cmocka. [GL #305]

5057. [protocol] Add support for ATMA. [GL #619]

5056. [placeholder]

5055. [func] A default list of primary servers for the root zone is
now built into named, allowing the "masters" statement
to be omitted when configuring an IANA root zone
mirror. [GL #564]

5054. [func] Attempts to use mirror zones with recursion disabled
are now considered a configuration error. [GL #564]

5053. [func] The only valid zone-level NOTIFY settings for mirror
zones are now "notify no;" and "notify explicit;".
[GL #564]

5052. [func] Mirror zones are now configured using "type mirror;"
rather than "mirror yes;". [GL #564]

5051. [doc] Documentation incorrectly stated that the
"server-addresses" static-stub zone option accepts
custom port numbers. [GL #582]

5050. [bug] The libirs version of getaddrinfo() was unable to parse
scoped IPv6 addresses present in /etc/resolv.conf.
[GL #187]

5049. [cleanup] QNAME minimization has been deeply refactored. [GL #16]

5048. [func] Add configure option to enable and enforce FIPS mode
in BIND 9. [GL #506]

5047. [bug] Messages logged for certain query processing failures
now include a more specific error description if it is
available. [GL #572]

5046. [bug] named could crash during shutdown if an RPZ
reload was in progress. [RT #46210]

5045. [func] Remove support for DNSSEC algorithms 3 (DSA)
and 6 (DSA-NSEC3-SHA1). [GL #22]

5044. [cleanup] If "dnssec-enable" is no, then "dnssec-validation"
now also defaults to no. [GL #388]

5043. [bug] Fix creating and validating EdDSA signatures. [GL #579]

5042. [test] Make the chained delegations in reclimit behave
like they would in a regular name server. [GL #578]

5041. [test] The chain test contains a incomplete delegation.
[GL #568]

5040. [func] Extended dnstap so that it can log UPDATE requests
and responses as separate message types. Thanks
to Greg Rabil. [GL #570]

5039. [bug] Named could fail to preserve owner name case of new
RRset. [GL #420]

5038. [bug] Chaosnet addresses were compared incorrectly.
[GL #562]

5037. [func] "allow-recursion-on" and "allow-query-cache-on"
each now default to the other if only one of them
is set, in order to be more consistent with the way
"allow-recursion" and "allow-query-cache" work.
Also we now ensure that both query-cache ACLs are
checked when determining cache access. [GL #319]

5036. [cleanup] Fixed a spacing/formatting error in some RPZ-related
error messages in the log. [GL !805]

5035. [test] Fixed errors that prevented the DNSRPS subtests
from running in the rpz and rpzrecurse system
tests. [GL #503]

5034. [bug] A race between threads could prevent zone maintenance
scheduled immediately after zone load from being
performed. [GL #542]

5033. [bug] When adding NTAs to multiple views using "rndc nta",
the text returned via rndc was incorrectly terminated
after the first line, making it look as if only one
NTA had been added. Also, it was not possible to
differentiate between views with the same name but
different classes; this has been corrected with the
addition of a "-class" option. [GL #105]

5032. [func] Add krb5-selfsub and ms-selfsub update policy rules.
[GL #511]

5031. [cleanup] Various defines in platform.h has been either dropped
if always or never triggered on supported platforms
or replaced with config.h equivalents if the defines
didn't have any impact on public headers. Workarounds
for LinuxThreads have been removed because NPTL is
available since Linux kernel 2.6.0. [GL #525]

5030. [bug] Align CMSG buffers to a 64-bit boundary, fixes crash
on architectures with strict alignment. [GL #521]

--- 9.13.3 released ---

5029. [func] Workarounds for servers that misbehave when queried
with EDNS have been removed, because these broken
servers and the workarounds for their noncompliance
cause unnecessary delays, increase code complexity,
and prevent deployment of new DNS features. See
https://dnsflagday.net for further details. [GL #150]

5028. [bug] Spread the initial RRSIG expiration times over the
entire working sig-validity-interval when signing a
zone in named to even out re-signing and transfer
loads. [GL #418]

5027. [func] Set SO_SNDBUF size on sockets. [GL #74]

5026. [bug] rndc reconfig should not touch already loaded zones.
[GL #276]

5025. [cleanup] Remove isc_keyboard family of functions. [GL #178]

5024. [func] Replace custom assembly for atomic operations with
atomic support from the compiler. The code will now use
C11 stdatomic, or __atomic, or __sync builtins with GCC
or Clang compilers, and Interlocked functions with MSVC.
[GL #10]

5023. [cleanup] Remove wrappers that try to fix broken or incomplete
implementations of IPv6, pthreads and other core
functionality required and used by BIND. [GL #192]

5022. [doc] Update ms-self, ms-subdomain, krb5-self, and
krb5-subdomain documentation. [GL !708]

5021. [bug] dig returned a non-zero exit code when it received a
reply over TCP after a retry. [GL #487]

5020. [func] RNG uses thread-local storage instead of locks, if
supported by platform. [GL #496]

5019. [cleanup] A message is now logged when ixfr-from-differences is
set at zone level for an inline-signed zone. [GL #470]

5018. [bug] Fix incorrect sizeof arguments in lib/isc/pk11.c.
[GL !588]

5017. [bug] lib/isc/pk11.c failed to unlink the session before
releasing the lock which is unsafe. [GL !589]

5016. [bug] Named could assert with overlapping filter-aaaa and
dns64 acls. [GL #445]

5015. [bug] Reloading all zones caused zone maintenance to cease
for inline-signed zones. [GL #435]

5014. [bug] Signatures loaded from the journal for the signed
version of an inline-signed zone were not scheduled for
refresh. [GL #482]

5013. [bug] A referral response with a non-empty ANSWER section was
inadvertently being treated as an error. [GL #390]

5012. [bug] Fix lock order reversal in pk11_initialize. [GL !590]

5011. [func] Remove support for unthreaded named. [GL #478]

5010. [func] New "validate-except" option specifies a list of
domains beneath which DNSSEC validation should not
be performed. [GL #237]

5009. [bug] Upon an OpenSSL failure, the first error in the OpenSSL
error queue was not logged. [GL #476]

5008. [bug] "rndc signing -nsec3param ..." requests were silently
ignored for zones which were not yet loaded or
transferred. [GL #468]

5007. [cleanup] Replace custom ISC boolean and integer data types
with C99 stdint.h and stdbool.h types. [GL #9]

5006. [cleanup] Code preparing a delegation response was extracted from
query_delegation() and query_zone_delegation() into a
separate function in order to decrease code
duplication. [GL #431]

5005. [bug] dnssec-verify, and dnssec-signzone at the verification
step, failed on some validly signed zones. [GL #442]

5004. [bug] 'rndc reconfig' could cause inline zones to stop
re-signing. [GL #439]

5003. [bug] dns_acl_isinsecure did not handle geoip elements.
[GL #406]

5002. [bug] mdig: Handle malformed +ednsopt option, support 100
+ednsopt options per query rather than 100 total and
address memory leaks if +ednsopt was specified.
[GL #410]

5001. [bug] Fix refcount errors on error paths. [GL !563]

5000. [bug] named_server_servestale() could leave the server in
exclusive mode if an error occured. [GL #441]

4999. [cleanup] Remove custom printf implementation in lib/isc/print.c.
[GL #261]

4998. [test] Make resolver and cacheclean tests more civilized.

4997. [security] named could crash during recursive processing
of DNAME records when "deny-answer-aliases" was
in use. (CVE-2018-5740) [GL #387]

4996. [bug] dig: Handle malformed +ednsopt option. [GL #403]

4995. [test] Add tests for "tcp-self" update policy. [GL !282]

4994. [bug] Trust anchor telemetry queries were not being sent
upstream for locally served zones. [GL #392]

4993. [cleanup] Remove support for silently ignoring 'no-change' deltas
from BIND 8 when processing an IXFR stream. 'no-change'
deltas will now trigger a fallback to AXFR as the
recovery mechanism. [GL #369]

4992. [bug] The wrong address was being logged for trust anchor
telemetry queries. [GL #379]

4991. [bug] "rndc reconfig" was incorrectly handling zones whose
"mirror" setting was changed. [GL #381]

4990. [bug] Prevent a possible NULL reference in pkcs11-keygen.
[GL #401]

4989. [cleanup] IDN support in dig has been reworked. IDNA2003
fallbacks were removed in the process. [GL #384]

4988. [bug] Don't synthesize NXDOMAIN from NSEC for records under
a DNAME.

--- 9.13.2 released ---

4987. [cleanup] dns_rdataslab_tordataset() and its related
dns_rdatasetmethods_t callbacks were removed as they
were not being used by anything in BIND. [GL #371]

4986. [func] When built on Linux, BIND now requires the libcap
library to set process privileges, unless capability
support is explicitly overridden with "configure
--disable-linux-caps". [GL #321]

4985. [func] Add a new slave zone option, "mirror", to enable
serving a non-authoritative copy of a zone that
is subject to DNSSEC validation before being
used. For now, this option is only meant to
facilitate deployment of an RFC 7706-style local
copy of the root zone. [GL #33]

4984. [bug] Improve handling of very large incremental
zone transfers to prevent journal corruption. [GL #339]

4983. [func] Add the ability to not return a DNS COOKIE option
when one is present in the request (answer-cookie no;).
[GL #173]

4982. [cleanup] Return FORMERR if the question section is empty
and no COOKIE option is present; this restores
older behavior except in the newly specified
COOKIE case. [GL #260]

4981. [bug] Fix race in cmsg buffer usage in socket code.
[GL #180]

4980. [bug] Named-checkconf failed to detect bad in-view targets.
[GL #288]

4979. [placeholder]

4978. [test] Fix error handling and resolver configuration in the
"rpz" system test. [GL #312]

4977. [func] When starting up, log the same details that
would be reported by 'named -V'. [GL #247]

4976. [bug] Log the label with invalid prefix length correctly
when loading RPZ zones. [GL #254]

4975. [bug] The server cookie computation for sha1 and sha256 did
not match the method described in RFC 7873. [GL #356]

4974. [bug] Restore default rrset-order to random. [GL #336]

4973. [func] verifyzone() and the functions it uses were moved to
libdns and refactored to prevent exit() from being
called upon failure. A side effect of that is that
dnssec-signzone and dnssec-verify now check for memory
leaks upon shutdown. [GL #266]

4972. [func] Declare the 'rdata' argument for dns_rdata_tostruct()
to be const. [GL #341]

4971. [bug] dnssec-signzone and dnssec-verify did not treat records
below a DNAME as out-of-zone data. [GL #298]

4970. [func] Add QNAME minimization option to resolver. [GL #16]

4969. [cleanup] Refactor zone logging functions. [GL #269]

--- 9.13.1 released ---

4968. [bug] If glue records are signed, attempt to validate them.
[GL #209]

4967. [cleanup] Add "answer-cookie" to the parser, marked obsolete.

4966. [placeholder]

4965. [func] Add support for marking options as deprecated.
[GL #322]

4964. [bug] Reduce the probabilty of double signature when deleting
a DNSKEY by checking if the node is otherwise signed
by the algorithm of the key to be deleted. [GL #240]

4963. [test] ifconfig.sh now uses "ip" instead of "ifconfig",
if available, to configure the test interfaces on
linux. [GL #302]

4962. [cleanup] Move 'named -T' processing to its own function.
[GL #316]

4961. [protocol] Remove support for ECC-GOST (GOST R 34.11-94).
[GL #295]

4960. [security] When recursion is enabled, but the "allow-recursion"
and "allow-query-cache" ACLs are not specified,
they should be limited to local networks,
but were inadvertently set to match the default
"allow-query", thus allowing remote queries.
(CVE-2018-5738) [GL #309]

4959. [func] NSID logging (enabled by the "request-nsid" option)
now has its own "nsid" category, instead of using the
"resolver" category. [GL !332]

4958. [bug] Remove redundant space from NSEC3 record. [GL #281]

4957. [func] The default setting for "dnssec-validation" is now
"auto", which activates DNSSEC validation using the
IANA root key. (The default can be changed back to
"yes", which activates DNSSEC validation only when keys
are explicitly configured in named.conf, by building
BIND with "configure --disable-auto-validation".)
[GL #30]

4956. [func] Change isc_random() to be just PRNG using xoshiro128**,
and add isc_nonce_buf() that uses CSPRNG. [GL #289]

4955. [cleanup] Silence cppcheck warnings in lib/dns/master.c.
[GL #286]

4954. [func] Messages about serving of stale answers are now
directed to the "serve-stale" logging category.
Also clarified serve-stale documentation. [GL !323]

4953. [bug] Removed the option to build the red black tree
database without a hash table; the non-hashing
version was buggy and is not needed. [GL #184]

4952. [func] Authoritative server support in named for the
EDNS CLIENT-SUBNET option (which was experimental
and not practical to deploy) has been removed.

The ECS option is still supported in dig and mdig
via the +subnet option, and can be parsed and logged
when received by named, but it is no longer used
for ACL processing. The "geoip-use-ecs" option
is now obsolete; a warning will be logged if it is
used in named.conf. "ecs" tags in an ACL definition
are also obsolete and will cause the configuration
to fail to load. [GL #32]

4951. [protocol] Add "HOME.ARPA" to list of built in empty zones as
per RFC 8375. [GL #273]

--- 9.13.0 released ---

4950. [bug] ISC_SOCKEVENTATTR_TRUNC was not be set. [GL #238]

4949. [placeholder]

4948. [bug] When request-nsid is turned on, EDNS NSID options
should be logged at level info. Since change 3741
they have been logged at debug(3) by mistake.
[GL !290]

4947. [func] Replace all random functions with isc_random(),
isc_random_buf() and isc_random_uniform() API.
[GL #221]

4946. [bug] Additional glue was not being returned by resolver
for unsigned zones since change 4596. [GL #209]

4945. [func] BIND can no longer be built without DNSSEC support.
A cryptography provder (i.e., OpenSSL or a hardware
service module with PKCS#11 support) must be
available. [GL #244]

4944. [cleanup] Silence cppcheck portability warnings in
lib/isc/tests/buffer_test.c. [GL #239]

4943. [bug] Change 4687 consumed too much memory when running
system tests with --with-tuning=large. Reduced the
hash table size to 512 entries for 'named -m record'
restoring the previous memory footprint. [GL #248]

4942. [cleanup] Consolidate multiple instances of splitting of
batchline in dig into a single function. [GL #196]

4941. [cleanup] Silence clang static analyzer warnings. [GL #196]

4940. [cleanup] Extract the loop in dns__zone_updatesigs() into
separate functions to improve code readability.
[GL #135]

4939. [test] Add basic unit tests for update_sigs(). [GL #135]

4938. [placeholder]

4937. [func] Remove support for OpenSSL < 1.0.0 [GL #191]

4936. [func] Always use OpenSSL or PKCS#11 random data providers,
and remove the --{enable,disable}-crypto-rand configure
options. [GL #165]

4935. [func] Add support for LibreSSL >= 2.7.0 (some OpenSSL 1.1.0
call were added). [GL #191]

4934. [security] The serve-stale feature could cause an assertion failure
in rbtdb.c even when stale-answer-enable was false.
Simultaneous use of stale cache records and NSEC
aggressive negative caching could trigger a recursion
loop. (CVE-2018-5737) [GL #185]

4933. [bug] Not creating signing keys for an inline signed zone
prevented changes applied to the raw zone from being
reflected in the secure zone until signing keys were
made available. [GL #159]

4932. [bug] Bumped signed serial of an inline signed zone was
logged even when an error occurred while updating
signatures. [GL #159]

4931. [func] Removed the "rbtdb64" database implementation.
[GL #217]

4930. [bug] Remove a bogus check in nslookup command line
argument processing. [GL #206]

4929. [func] Add the ability to set RA and TC in queries made by
dig (+[no]raflag, +[no]tcflag). [GL #213]

4928. [func] The "dnskey-sig-validity" option allows
"sig-validity-interval" to be overriden for signatures
covering DNSKEY RRsets. [GL #145]

4927. [placeholder]

4926. [func] Add root key sentinel support. To disable, add
'root-key-sentinel no;' to named.conf. [GL #37]

4925. [func] Several configuration options that define intervals
can now take TTL value suffixes (for example, 2h or 1d)
in addition to integer parameters. These include
max-cache-ttl, max-ncache-ttl, max-policy-ttl,
fstrm-set-reopen-interval, interface-interval, and
min-update-interval. [GL #203]

4924. [cleanup] Clean up the isc_string_* namespace and leave
only strlcpy and strlcat. [GL #178]

4923. [cleanup] Refactor socket and socket event options into
enum types. [GL !135]

4922. [bug] dnstap: Log the destination address of client
packets rather than the interface address.
[GL #197]

4921. [cleanup] Add dns_fixedname_initname() and refactor the caller
code to make usage of the new function, as a part of
refactoring dns_fixedname_*() macros were turned into
functions. [GL #183]

4920. [cleanup] Clean up libdns removing most of the backwards
compatibility wrappers.

4919. [cleanup] Clean up the isc_hash_* namespace and leave only
the FNV-1a hash implementation. [GL #178]

4918. [bug] Fix double free after keygen error in dnssec-keygen
when OpenSSL >= 1.1.0 is used and RSA_generate_key_ex
fails. [GL #109]

4917. [func] Support 64 RPZ policy zones by default. [GL #123]

4916. [func] Remove IDNA2003 support and the bundled idnkit-1.0
library.

4915. [func] Implement IDNA2008 support in dig by adding support
for libidn2. New dig option +idnin has been added,
which allows to process invalid domain names much
like dig without IDN support. libidn2 version 2.0
or higher is needed for +idnout enabled by default.

4914. [security] A bug in zone database reference counting could lead to
a crash when multiple versions of a slave zone were
transferred from a master in close succession.
(CVE-2018-5736) [GL #134]

4913. [test] Re-implemented older unit tests in bin/tests as ATF,
removed the lib/tests unit testing library. [GL #115]

4912. [test] Improved the reliability of the 'cds' system test.
[GL #136]

4911. [test] Improved the reliability of the 'mkeys' system test.
[GL #128]

4910. [func] Update util/check-changes to work on release branches.
[GL #113]

4909. [bug] named-checkconf did not detect in-view zone collisions.
[GL #125]

4908. [test] Eliminated unnecessary waiting in the allow_query
system test. Also changed its name to allow-query.
[GL #81]

4907. [test] Improved the reliability of the 'notify' system
test. [GL #59]

4906. [func] Replace getquad() with inet_pton(), completing
change #4900. [GL #56]

4905. [bug] irs_resconf_load() ignored resolv.conf syntax errors
when "domain" or "search" options were present in that
file. [GL #110]

4904. [bug] Temporarily revert change #4859. [GL #124]

4903. [bug] "check-mx fail;" did not prevent MX records containing
IP addresses from being added to a zone by a dynamic
update. [GL #112]

4902. [test] Improved the reliability of the 'ixfr' system
test. [GL #66]

4901. [func] "dig +nssearch" now lists the name servers
for a domain that time out, as well as the servers
that respond. [GL #64]

4900. [func] Remove all uses of inet_aton(). As a result of this
change, IPv4 addresses are now only accepted in
dotted-quad format. [GL #13]

4899. [test] Convert most of the remaining system tests to be able
to run in parallel, continuing the work from change
#4895. To take advantage of this, use "make -jN check",
where N is the number of processors to use. [GL #91]

4898. [func] Remove libseccomp based system-call filtering. [GL #93]

4897. [test] Update to rpz system test so that it doesn't recurse.
[GL #68]

4896. [test] cacheclean system test was not robust. [GL #82]

4895. [test] Allow some system tests to run in parallel.
[RT #46602]

4894. [bug] named could crash while rolling a dnstap output file.
[RT #46942]

4893. [bug] Address various issues reported by cppcheck. [GL #51]

4892. [bug] named could leak memory when "rndc reload" was invoked
before all zone loading actions triggered by a previous
"rndc reload" command were completed. [RT #47076]

4891. [placeholder]

4890. [func] Remove unused ondestroy callback from libisc.
[isc-projects/bind9!3]

4889. [func] Warn about the use of old root keys without the new
root key being present. Warn about dlv.isc.org's
key being present. Warn about both managed and
trusted root keys being present. [RT #43670]

4888. [test] Initialize sockets correctly in sample-update so
that the nsupdate system test will run on Windows.
[RT #47097]

4887. [test] Enable the rpzrecurse test to run on Windows.
[RT #47093]

4886. [doc] Document dig -u in manpage. [RT #47150]

4885. [security] update-policy rules that otherwise ignore the name
field now require that it be set to "." to ensure
that any type list present is properly interpreted.
[RT #47126]

4884. [bug] named could crash on shutdown due to a race between
shutdown_server() and ns__client_request(). [RT #47120]

4883. [cleanup] Improved debugging output from dnssec-cds. [RT #47026]

4882. [bug] Address potential memory leak in
dns_update_signaturesinc. [RT #47084]

4881. [bug] Only include dst_openssl.h when OpenSSL is required.
[RT #47068]

4880. [bug] Named wasn't returning the target of a cross-zone
CNAME between two served zones when recursion was
desired and available (RD=1, RA=1). (When this is
not the case, the CNAME target is deliberately
withheld to prevent accidental cache poisoning.)
[RT #47078]

4879. [bug] dns_rdata_caa:value_len field was too small.
[RT #47086]

4878. [bug] List 'ply' as a requirement for the 'isc' python
package. [RT #47065]

4877. [bug] Address integer overflow when exponentially
backing off retry intervals. [RT #47041]

4876. [bug] Address deadlock with accessing a keytable. [RT #47000]

4875. [bug] Address compile failures on older systems. [RT #47015]

4874. [bug] Wrong time display when reporting new keywarntime.
[RT #47042]

4873. [doc] Grammars for named.conf included in the ARM are now
automatically generated by the configuration parser
itself. As a side effect of the work needed to
separate zone type grammars from each other, this
also makes checking of zone statements in
named-checkconf more correct and consistent.
[RT #36957]

4872. [bug] Don't permit loading meta RR types such as TKEY
from master files. [RT #47009]

4871. [bug] Fix configure glitch in detecting stdatomic.h
support on systems with multiple compilers.
[RT #46959]

4870. [test] Update included ATF library to atf-0.21 preserving
the ATF tool. [RT #46967]

4869. [bug] Address some cases where NULL with zero length could
be passed to memmove which is undefined behavior and
can lead to bad optimization. [RT #46888]

4868. [func] dnssec-keygen can no longer generate HMAC keys.
Use tsig-keygen instead. [RT #46404]

4867. [cleanup] Normalize rndc on/off commands (validation,
querylog, serve-stale) so they all accept the
same synonyms for on/off (yes/no, true/false,
enable/disable). Thanks to Tony Finch. [RT #47022]

4866. [port] DST library initialization verifies MD5 (when MD5
was not disabled) and SHA-1 hash and HMAC support.
[RT #46764]

4865. [cleanup] Simplify handling isc_socket_sendto2() return values.
[RT #46986]

4864. [bug] named acting as a slave for a catalog zone crashed if
the latter contained a master definition without an IP
address. [RT #45999]

4863. [bug] Fix various other bugs reported by Valgrind's
memcheck tool. [RT #46978]

4862. [bug] The rdata flags for RRSIG were not being properly set
when constructing a rdataslab. [RT #46978]

4861. [bug] The isc_crc64 unit test was not endian independent.
[RT #46973]

4860. [bug] isc_int8_t should be signed char. [RT #46973]

4859. [bug] A loop was possible when attempting to validate
unsigned CNAME responses from secure zones;
this caused a delay in returning SERVFAIL and
also increased the chances of encountering
CVE-2017-3145. [RT #46839]

4858. [security] Addresses could be referenced after being freed
in resolver.c, causing an assertion failure.
(CVE-2017-3145) [RT #46839]

4857. [bug] Maintain attach/detach semantics for event->db,
event->node, event->rdataset and event->sigrdataset
in query.c. [RT #46891]

4856. [bug] 'rndc zonestatus' reported the wrong underlying type
for a inline slave zone. [RT #46875]

4855. [bug] isc_time_formatshorttimestamp produced incorrect
output. [RT #46938]

4854. [bug] query_synthcnamewildcard should stop generating the
response if query_synthwildcard fails. [RT #46939]

4853. [bug] Add REQUIRE's and INSIST's to isc_time_formatISO8601L
and isc_time_formatISO8601Lms. [RT #46916]

4852. [bug] Handle strftime() failing in isc_time_formatISO8601ms.
Add REQUIRE's and INSIST's to isc_time_formattimestamp,
isc_time_formathttptimestamp, isc_time_formatISO8601,
isc_time_formatISO8601ms. [RT #46892]

4851. [port] Support using kyua as well as atf-run to run the unit
tests. [RT #46853]

4850. [bug] Named failed to restart with multiple added zones in
lmdb database. [RT #46889]

4849. [bug] Duplicate zones could appear in the .nzf file if
addzone failed. [RT #46435]

4848. [func] Zone types "primary" and "secondary" can now be used
as synonyms for "master" and "slave" in named.conf.
[RT #46713]

4847. [bug] dnssec-dnskey-kskonly was not being honored for
CDS and CDNSKEY. [RT #46755]

4846. [test] Adjust timing values in runtime system test. Address
named.pid removal races in runtime system test.
[RT #46800]

4845. [bug] Dig (non iOS) should exit on malformed names.
[RT #46806]

4844. [test] Address memory leaks in libatf-c. [RT #46798]

4843. [bug] dnssec-signzone free hashlist on exit. [RT #46791]

4842. [bug] Conditionally compile opensslecdsa_link.c to avoid
warnings about unused function. [RT #46790]


Revision tags: pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 bind-9-12-2-P1
# 1.1.1.1 12-Aug-2018 christos

branches: 1.1.1.1.2;
Import bind-9.12.2-P2 since bind-9.10 (the last BSD version) is
now out of support. The changes since our last version imported
(9.10.7) version are too big to include inline here; please consult
the CHANGES file in this directory.


Revision tags: bind-9-16-37
# 1.1.1.6 25-Jan-2023 christos

Import bind-9.16.37 (previous was bind-9.16.33)

--- 9.16.37 released ---

6067. [security] Fix serve-stale crash when recursive clients soft quota
is reached. (CVE-2022-3924) [GL #3619]

6066. [security] Handle RRSIG lookups when serve-stale is active.
(CVE-2022-3736) [GL #3622]

6064. [security] An UPDATE message flood could cause named to exhaust all
available memory. This flaw was addressed by adding a
new "update-quota" statement that controls the number of
simultaneous UPDATE messages that can be processed or
forwarded. The default is 100. A stats counter has been
added to record events when the update quota is
exceeded, and the XML and JSON statistics version
numbers have been updated. (CVE-2022-3094) [GL #3523]

6062. [func] The DSCP implementation, which has only been
partly operational since 9.16.0, is now marked as
deprecated. Configuring DSCP values in named.conf
will cause a warning will be logged. [GL #3773]

6060. [bug] Fix a use-after-free bug in dns_zonemgr_releasezone()
by detaching from the zone manager outside of the write
lock. [GL #3768]

6059. [bug] In some serve stale scenarios, like when following an
expired CNAME record, named could return SERVFAIL if the
previous request wasn't successful. Consider non-stale
data when in serve-stale mode. [GL #3678]

6058. [bug] Prevent named from crashing when "rndc delzone"
attempts to delete a zone added by a catalog zone.
[GL #3745]

6050. [bug] Changes to the RPZ response-policy min-update-interval
and add-soa options now take effect as expected when
named is reconfigured. [GL #3740]

6048. [bug] Fix a log message error in dns_catz_update_from_db(),
where serials with values of 2^31 or larger were logged
incorrectly as negative numbers. [GL #3742]

6045. [cleanup] The list of supported DNSSEC algorithms changed log
level from "warning" to "notice" to match named's other
startup messages. [GL !7217]

6044. [bug] There was an "RSASHA236" typo in a log message.
[GL !7206]

--- 9.16.36 released ---

6043. [bug] The key file IO locks objects would never get
deleted from the hashtable due to off-by-one error.
[GL #3727]

6042. [bug] ANY responses could sometimes have the wrong TTL.
[GL #3613]

6040. [bug] Speed up the named shutdown time by explicitly
canceling all recursing ns_client objects for
each ns_clientmgr. [GL #3183]

6039. [bug] Removing a catalog zone from catalog-zones without
also removing the referenced zone could leave a
dangling pointer. [GL #3683]

6031. [bug] Move the "final reference detached" log message
from dns_zone unit to the DEBUG(1) log level.
[GL #3707]

6024. [func] Deprecate 'auto-dnssec'. [GL #3667]

6021. [bug] Use the current domain name when checking answers from
a dual-stack-server. [GL #3607]

6020. [bug] Ensure 'named-checkconf -z' respects the check-wildcard
option when loading a zone. [GL #1905]

6017. [bug] The view's zone table was not locked when it should
have been leading to race conditions when external
extensions that manipulate the zone table where in
use. [GL #3468]

--- 9.16.35 released ---

6013. [bug] Fix a crash that could happen when you change
a dnssec-policy zone with NSEC3 to start using
inline-signing. [GL #3591]

6009. [bug] Don't trust a placeholder KEYDATA from the managed-keys
zone by adding it into secroots. [GL #2895]

6008. [bug] Fixed a race condition that could cause a crash
in dns_zone_synckeyzone(). [GL #3617]

6002. [bug] Fix a resolver prefetch bug when the record's TTL value
is equal to the configured prefetch eligibility value,
but the record was erroneously not treated as eligible
for prefetching. [GL #3603]

6001. [bug] Always call dns_adb_endudpfetch() after calling
dns_adb_beginudpfetch() for UDP queries in resolver.c,
in order to adjust back the quota. [GL #3598]

6000. [bug] Fix a startup issue on Solaris systems with many
(reportedly > 510) CPUs. Thanks to Stacey Marshall from
Oracle for deep investigation of the problem. [GL #3563]

5999. [bug] rpz-ip rules could be ineffective in some scenarios
with CD=1 queries. [GL #3247]

5998. [bug] The RecursClients statistics counter could overflow
in certain resolution scenarios. [GL #3584]

5996. [bug] Fix a couple of bugs in cfg_print_duration(), which
could result in generating incomplete duration values
when printing the configuration using named-checkconf.
[GL !6880]

--- 9.16.34 released ---

5991. [protocol] Add support for parsing and validating "dohpath" to
SVCB. [GL #3544]

5988. [bug] Some out of memory conditions in opensslrsa_link.c
could lead to memory leaks. [GL #3551]

5984. [func] 'named -V' now reports the list of supported
DNSSEC/DS/HMAC algorithms and the supported TKEY modes.
[GL #3541]

5983. [bug] Changing just the TSIG key names for primaries in
catalog zones' member zones was not effective.
[GL #3557]

5973. [bug] Fixed a possible invalid detach in UPDATE
processing. [GL #3522]

5963. [bug] Ensure struct named_server is properly initialized.
[GL #6531]

5921. [test] Convert system tests to use a default DNSKEY algorithm
where the test is not DNSKEY algorithm specific.
[GL #3440]


Revision tags: netbsd-10-base bind-9-16-33
# 1.1.1.5 23-Sep-2022 christos

Import 9.16.33; last imported was 9.16.20

--- 9.16.33 released ---

5962. [security] Fix memory leak in EdDSA verify processing.
(CVE-2022-38178) [GL #3487]

5961. [security] Fix memory leak in ECDSA verify processing.
(CVE-2022-38177) [GL #3487]

5960. [security] Fix serve-stale crash that could happen when
stale-answer-client-timeout was set to 0 and there was
a stale CNAME in the cache for an incoming query.
(CVE-2022-3080) [GL #3517]

5957. [security] Prevent excessive resource use while processing large
delegations. (CVE-2022-2795) [GL #3394]

5956. [func] Make RRL code treat all QNAMEs that are subject to
wildcard processing within a given zone as the same
name. [GL #3459]

5955. [port] The libxml2 library has deprecated the usage of
xmlInitThreads() and xmlCleanupThreads() functions. Use
xmlInitParser() and xmlCleanupParser() instead.
[GL #3518]

5954. [func] Fallback to IDNA2003 processing in dig when IDNA2008
conversion fails. [GL #3485]

5953. [bug] Fix a crash on shutdown in delete_trace_entry(). Add
mctx attach/detach pair to make sure that the memory
context used by a memory pool is not destroyed before
the memory pool itself. [GL #3515]

5952. [bug] Use quotes around address strings in YAML output.
[GL #3511]

5951. [bug] In some cases, the dnstap query_message field was
erroneously set when logging response messages.
[GL #3501]

5948. [bug] Fix nsec3.c:dns_nsec3_activex() function, add a missing
dns_db_detachnode() call. [GL #3500]

5945. [bug] If parsing /etc/bind.key failed, delv could assert
when trying to parse the built in trust anchors as
the parser hadn't been reset. [GL !6468]

5942. [bug] Fix tkey.c:buildquery() function's error handling by
adding the missing cleanup code. [GL #3492]

5941. [func] Zones with dnssec-policy now require dynamic DNS or
inline-siging to be configured explicitly. [GL #3381]

5936. [bug] Don't enable serve-stale for lookups that error because
it is a duplicate query or a query that would be
dropped. [GL #2982]

--- 9.16.32 released ---

5934. [func] Improve fetches-per-zone fetch limit logging to log
the final allowed and spilled values of the fetch
counters before the counter object gets destroyed.
[GL #3461]

5933. [port] Automatically disable RSASHA1 and NSEC3RSASHA1 in
named on Fedorda 33, Oracle Linux 9 and RHEL9 when
they are disabled by the security policy. [GL #3469]

5932. [bug] Fix rndc dumpdb -expired and always include expired
RRsets, not just for RBTDB_VIRTUAL time window.
[GL #3462]

5929. [bug] The "max-zone-ttl" option in "dnssec-policy" was
not fully effective; it was used for timing key
rollovers but did not actually place an upper limit
on TTLs when loading a zone. This has been
corrected, and the documentation has been clarified
to indicate that the old "max-zone-ttl" zone option
is now ignored when "dnssec-policy" is in use.
[GL #2918]

5924. [func] When it's necessary to use AXFR to respond to an
IXFR request, a message explaining the reason
is now logged at level info. [GL #2683]

5923. [bug] Fix inheritance for dnssec-policy when checking for
inline-signing. [GL #3438]

5922. [bug] Forwarding of UPDATE message could fail with the
introduction of netmgr. This has been fixed. [GL #3389]

--- 9.16.31 released ---

5917. [bug] Update ifconfig.sh script as is miscomputed interface
identifiers when destroying interfaces. [GL #3061]

5915. [bug] Detect missing closing brace (}) and computational
overflows in $GENERATE directives. [GL #3429]

5913. [bug] Fix a race between resolver query timeout and
validation in resolver.c:validated(). Remove
resolver.c:maybe_destroy() as it is no loger needed.
[GL #3398]

5909. [bug] The server-side destination port was missing from dnstap
captures of client traffic. [GL #3309]

5905. [bug] When the TCP connection would be closed/reset between
the connect/accept and the read, the uv_read_start()
return value would be unexpected and cause an assertion
failure. [GL #3400]

5903. [bug] When named checks that the OPCODE in a response matches
that of the request, if there is a mismatch named logs
an error. Some of those error messages incorrectly
used RCODE instead of OPCODE to lookup the nemonic.
This has been corrected. [GL !6420]

--- 9.16.30 released ---

5899. [func] Don't try to process DNSSEC-related and ZONEMD records
in catz. [GL #3380]

5890. [bug] When the fetches-per-server quota was adjusted
because of an authoritative server timing out more
or less frequently, it was incorrectly set to 1
rather than the intended value. This has been
fixed. [GL #3327]

5888. [bug] Only write key files if the dnssec-policy keymgr has
changed the metadata. [GL #3302]

5823. [func] Replace hazard pointers based lock-free list with
locked-list based queue that's simpler and has no or
little performance impact. [GL #3180]

--- 9.16.29 released ---

5885. [bug] RPZ NSIP and NSDNAME rule processing didn't handle stub
and static-stub zones at or above the query name. This
has now been addressed. [GL #3232]

5881. [bug] dig +nssearch could hang in rare cases when recv_done()
callback was being called earlier than send_done().
[GL #3278]

5880. [func] Add new named command-line option -C to print built-in
defaults. [GL #1326]

5879. [contrib] dlz: Add FALLTHROUGH and UNREACHABLE macros. [GL #3306]

5874. [bug] keymgr didn't work with python 3.11. [GL !6157]

5866. [bug] Work around a jemalloc quirk which could trigger an
out-of-memory condition in named over time. [GL #3287]

5863. [bug] If there was a pending negative cache DS entry,
validations depending upon it could fail. [GL #3279]

5858. [bug] Don't remove CDS/CDNSKEY DELETE records on zone sign
when using 'auto-dnssec maintain;'. [GL #2931]

--- 9.16.28 released ---

5856. [bug] The "starting maxtime timer" message related to outgoing
zone transfers was incorrectly logged at the ERROR level
instead of DEBUG(1). [GL #3208]

5852. [func] Add new "reuseport" option to enable/disable load
balancing of sockets. [GL #3249]

5843. [bug] When an UPDATE targets a zone that is not configured,
the requested zone name is now logged in the "not
authoritative" error message, so that it is easier to
track down problematic update clients. [GL #3209]

5836. [bug] Quote the dns64 prefix in error messages that complain
about problems with it, to avoid confusion with the
following dns64 ACLs. [GL #3210]

5834. [cleanup] C99 variable-length arrays are difficult to use safely,
so avoid them except in test code. [GL #3201]

5828. [bug] Replace single TCP write timer with per-TCP write
timers. [GL #3200]

5824. [bug] Invalid dnssec-policy definitions were being accepted
where the defined keys did not cover both KSK and ZSK
roles for a given algorithm. This is now checked for
and the dnssec-policy is rejected if both roles are
not present for all algorithms in use. [GL #3142]

--- 9.16.27 released ---

5818. [security] A synchronous call to closehandle_cb() caused
isc__nm_process_sock_buffer() to be called recursively,
which in turn left TCP connections hanging in the
CLOSE_WAIT state blocking indefinitely when
out-of-order processing was disabled. (CVE-2022-0396)
[GL #3112]

5817. [security] The rules for acceptance of records into the cache
have been tightened to prevent the possibility of
poisoning if forwarders send records outside
the configured bailiwick. (CVE-2021-25220) [GL #2950]

5816. [bug] Make BIND compile with LibreSSL 3.5.0, as it was using
not very accurate pre-processor checks for using shims.
[GL #3172]

5815. [bug] If an oversized key name of a specific length was used
in the text form of an HTTP or SVBC record, an INSIST
could be triggered when parsing it. [GL #3175]

5814. [bug] The RecursClients statistics counter could underflow
in certain resolution scenarios. [GL #3147]

5811. [bug] Reimplement the maximum and idle timeouts for outgoing
zone transfers. [GL #1897]

5807. [bug] Add a TCP "write" timer, and time out writing
connections after the "tcp-idle-timeout" period
has elapsed. [GL #3132]

5804. [func] Add a debug log message when starting and ending
the task exclusive mode. [GL #3137]

--- 9.16.26 released ---

5801. [bug] Log "quota reached" message when hard quota
is reached when accepting a connection. [GL #3125]

5800. [func] Add ECS support to the DLZ interface. [GL #3082]

5797. [bug] A failed view configuration during a named
reconfiguration procedure could cause inconsistencies
in BIND internal structures, causing a crash or other
unexpected errors. [GL #3060]

5795. [bug] rndc could crash when interrupted by a signal
before receiving a response. [GL #3080]

5793. [bug] Correctly detect and enable UDP recvmmsg support
in all versions of libuv that support it. [GL #3095]

--- 9.16.25 released ---

5789. [bug] Allow replacing expired zone signatures with
signatures created by the KSK. [GL #3049]

5788. [bug] An assertion could occur if a catalog zone event was
scheduled while the task manager was being shut
down. [GL #3074]

5787. [doc] Update 'auto-dnssec' documentation, it may only be
activated at zone level. [GL #3023]

5786. [bug] Defer detaching from zone->raw in zone_shutdown() if
the zone is in the process of being dumped to disk, to
ensure that the unsigned serial number information is
always written in the raw-format header of the signed
version on an inline-signed zone. [GL #3071]

5785. [bug] named could leak memory when two dnssec-policy clauses
had the same name. named failed to log this error.
[GL #3085]

5776. [bug] Add a missing isc_condition_destroy() for nmsocket
condition variable and add missing isc_mutex_destroy()
for nmworker lock. [GL #3051]

5676. [func] Memory use in named was excessive. This has been
addressed by:
- Replacing locked memory pools with normal memory
allocations.
- Reducing the number of retained free items in
unlocked memory pools.
- Disabling the internal allocator by default.
"named -M internal" turns it back on.
[GL #2398]

--- 9.16.24 released ---

5773. [func] Change the message when accepting TCP connection has
failed to say "Accepting TCP connection failed" and
change the log level for ISC_R_NOTCONNECTED, ISC_R_QUOTA
and ISC_R_SOFTQUOTA results codes from ERROR to INFO.
[GL #2700]

5768. [bug] dnssec-dsfromkey failed to omit revoked keys. [GL #853]

5764. [bug] dns_sdlz_putrr failed to process some valid resource
records. [GL #3021]

5762. [bug] Fix a "named" crash related to removing and restoring a
`catalog-zone` entry in the configuration file and
running `rndc reconfig`. [GL #1608]

5758. [bug] mdig now honors the operating system's preferred
ephemeral port range. [GL #2374]

5757. [test] Replace sed in nsupdate system test with awk to
construct the nsupdate command. The sed expression
was not reliably changing the ttl. [GL #3003]

--- 9.16.23 released ---

5752. [bug] Fix an assertion failure caused by missing member zones
during a reload of a catalog zone. [GL #2308]

5750. [bug] Fix a bug when comparing two RSA keys. There was a typo
which caused the "p" prime factors to not being
compared. [GL #2972]

5737. [bug] Address Coverity warning in lib/dns/dnssec.c.
[GL #2935]

--- 9.16.22 released ---

5736. [security] The "lame-ttl" option is now forcibly set to 0. This
effectively disables the lame server cache, as it could
previously be abused by an attacker to significantly
degrade resolver performance. (CVE-2021-25219)
[GL #2899]

5724. [bug] Address a potential deadlock when checking zone content
consistency. [GL #2908]

5723. [bug] Change 5709 broke backward compatibility for the
"check-names master ..." and "check-names slave ..."
options. This has been fixed. [GL #2911]

5720. [contrib] Old-style DLZ drivers that had to be enabled at
build-time have been marked as deprecated. [GL #2814]

5719. [func] The "map" zone file format has been marked as
deprecated. [GL #2882]

5717. [func] The "cache-file" option, which was documented as "for
testing purposes only" and not to be used, has been
removed. [GL #2903]

5716. [bug] Multiple library names were mistakenly passed to the
krb5-config utility when ./configure was invoked with
the --with-gssapi=[/path/to/]krb5-config option. This
has been fixed by invoking krb5-config separately for
each required library. [GL #2866]

5715. [func] Add a check for ports specified in "*-source(-v6)"
options clashing with a global listening port. Such a
configuration was already unsupported, but it failed
silently; it is now treated as an error. [GL #2888]

5714. [bug] Remove the "adjust interface" mechanism which was
responsible for setting up listeners on interfaces when
the "*-source(-v6)" address and port were the same as
the "listen-on(-v6)" address and port. Such a
configuration is no longer supported; under certain
timing conditions, that mechanism could prevent named
from listening on some TCP ports. This has been fixed.
[GL #2852]

5712. [doc] Add deprecation notice about removing native PKCS#11
support in the next major BIND 9 release. [GL #2691]

--- 9.16.21 released ---

5711. [bug] "map" files exceeding 2GB in size failed to load due to
a size comparison that incorrectly treated the file size
as a signed integer. [GL #2878]

5710. [port] win32: incorrect parentheses resulted in the wrong
sizeof() tests being used to pick the appropriate
Windows atomic operations for the object's size.
[GL #2891]

5709. [cleanup] Enum values throughout the code have been updated
to use the terms "primary" and "secondary" instead of
"master" and "slave", respectively. [GL #1944]

5708. [bug] The thread-local isc_tid_v variable was not properly
initialized when running BIND 9 as a Windows Service,
leading to a crash on startup. [GL #2837]

5705. [bug] Change #5686 altered the internal memory structure of
zone databases, but neglected to update the MAPAPI value
for zone files in "map" format. This caused named to
attempt to load incompatible map files, triggering an
assertion failure on startup. The MAPAPI value has now
been updated, so named rejects outdated files when
encountering them. [GL #2872]

5704. [bug] Change #5317 caused the EDNS TCP Keepalive option to be
ignored inadvertently in client requests. It has now
been fixed and this option is handled properly again.
[GL #1927]

5701. [bug] named-checkconf failed to detect syntactically invalid
values of the "key" and "tls" parameters used to define
members of remote server lists. [GL #2461]

5700. [bug] When a member zone was removed from a catalog zone,
journal files for the former were not deleted.
[GL #2842]

5699. [func] Data structures holding DNSSEC signing statistics are
now grown and shrunk as necessary upon key rollover
events. [GL #1721]

5698. [bug] When a DNSSEC-signed zone which only has a single
signing key available is migrated to use KASP, that key
is now treated as a Combined Signing Key (CSK).
[GL #2857]

5696. [protocol] Support for HTTPS and SVCB record types has been added.
(This does not include ADDITIONAL section processing for
these record types, only basic support for RR type
parsing and printing.) [GL #1132]

5694. [bug] Stale data in the cache could cause named to send
non-minimized queries despite QNAME minimization being
enabled. [GL #2665]

5691. [bug] When a dynamic zone was made available in another view
using the "in-view" statement, running "rndc freeze"
always reported an "already frozen" error even though
the zone was successfully frozen. [GL #2844]

5690. [func] dnssec-signzone now honors Predecessor and Successor
metadata found in private key files: if a signature for
an RRset generated by the inactive predecessor exists
and does not need to be replaced, no additional
signature is now created for that RRset using the
successor key. This enables dnssec-signzone to gradually
replace RRSIGs during a ZSK rollover. [GL #1551]


Revision tags: bind-9-16-20 cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base bind-9-16-15 bind-9-16-12
# 1.1.1.4 19-Feb-2021 christos

--- 9.16.12 released ---

5578. [protocol] Make "check-names" accept A records below "_spf",
"_spf_rate", and "_spf_verify" labels in order to cater
for the "exists" SPF mechanism specified in RFC 7208
section 5.7 and appendix D.1. [GL #2377]

5577. [bug] Fix the "three is a crowd" key rollover bug in KASP by
correctly implementing Equation (2) of the "Flexible and
Robust Key Rollover" paper. [GL #2375]

5575. [bug] When migrating to KASP, BIND 9 considered keys with the
"Inactive" and/or "Delete" timing metadata to be
possible active keys. This has been fixed. [GL #2406]

5572. [bug] Address potential double free in generatexml().
[GL #2420]

5571. [bug] named failed to start when its configuration included a
zone with a non-builtin "allow-update" ACL attached.
[GL #2413]

5570. [bug] Improve performance of the DNSSEC verification code by
reducing the number of repeated calls to
dns_dnssec_keyfromrdata(). [GL #2073]

5569. [bug] Emit useful error message when "rndc retransfer" is
applied to a zone of inappropriate type. [GL #2342]

5568. [bug] Fixed a crash in "dnssec-keyfromlabel" when using ECDSA
keys. [GL #2178]

5567. [bug] Dig now reports unknown dash options while pre-parsing
the options. This prevents "-multi" instead of "+multi"
from reporting memory usage before ending option parsing
with "Invalid option: -lti". [GL #2403]

5566. [func] Add "stale-answer-client-timeout" option, which is the
amount of time a recursive resolver waits before
attempting to answer the query using stale data from
cache. [GL #2247]

5565. [func] The SONAMEs for BIND 9 libraries now include the current
BIND 9 version number, in an effort to tightly couple
internal libraries with a specific release. [GL #2387]

5562. [security] Fix off-by-one bug in ISC SPNEGO implementation.
(CVE-2020-8625) [GL #2354]

5561. [bug] KASP incorrectly set signature validity to the value of
the DNSKEY signature validity. This is now fixed.
[GL #2383]

5560. [func] The default value of "max-stale-ttl" has been changed
from 12 hours to 1 day and the default value of
"stale-answer-ttl" has been changed from 1 second to 30
seconds, following RFC 8767 recommendations. [GL #2248]

5456. [func] Added "primaries" as a synonym for "masters" in
named.conf, and "primary-only" as a synonym for
"master-only" in the parameters to "notify", to bring
terminology up-to-date with RFC 8499. [GL #1948]

5362. [func] Limit the size of IXFR responses so that AXFR will
be used instead if it would be smaller. This is
controlled by the "max-ixfr-ratio" option, which
is a percentage representing the ratio of IXFR size
to the size of the entire zone. This value cannot
exceed 100%, which is the default. [GL #1515]

--- 9.16.11 released ---

5559. [bug] The --with-maxminddb=PATH form of the build-time option
enabling support for libmaxminddb was not working
correctly. This has been fixed. [GL #2366]

5557. [bug] Prevent RBTDB instances from being destroyed by multiple
threads at the same time. [GL #2317]

5556. [bug] Further tweak newline printing in dnssec-signzone and
dnssec-verify. [GL #2359]

5555. [bug] server->reload_status was not properly initialized.
[GL #2361]

5554. [bug] dnssec-signzone and dnssec-verify were missing newlines
between log messages. [GL #2359]

5553. [bug] When reconfiguring named, removing "auto-dnssec" did not
turn off DNSSEC maintenance. [GL #2341]

5552. [func] When switching to "dnssec-policy none;", named now
permits a safe transition to insecure mode and publishes
the CDS and CDNSKEY DELETE records, as described in RFC
8078. [GL #1750]

5551. [bug] named no longer attempts to assign threads to CPUs
outside the CPU affinity set. Thanks to Ole Bj��rn
Hessen. [GL #2245]

5550. [func] dnssec-signzone and named now log a warning when falling
back to the "increment" SOA serial method. [GL #2058]

5545. [func] OS support for load-balanced sockets is no longer
required to receive incoming queries in multiple netmgr
threads. [GL #2137]

5543. [bug] Fix UDP performance issues caused by making netmgr
callbacks asynchronous-only. [GL #2320]

5542. [bug] Refactor netmgr. [GL #1920] [GL #2034] [GL #2061]
[GL #2194] [GL #2221] [GL #2266] [GL #2283] [GL #2318]
[GL #2321]

--- 9.16.10 released ---

5544. [func] Restore the default value of "nocookie-udp-size" to 4096
bytes. [GL #2250]

5541. [func] Adjust the "max-recursion-queries" default from 75 to
100. [GL #2305]

5540. [port] Fix building with native PKCS#11 support for AEP Keyper.
[GL #2315]

5539. [bug] Tighten handling of missing DNS COOKIE responses over
UDP by falling back to TCP. [GL #2275]

5538. [func] Add NSEC3 support to KASP. A new option for
"dnssec-policy", "nsec3param", can be used to set the
desired NSEC3 parameters. NSEC3 salt collisions are
automatically prevented during resalting. Salt
generation is now logged with zone context. [GL #1620]

5534. [bug] The CNAME synthesized from a DNAME was incorrectly
followed when the QTYPE was CNAME or ANY. [GL #2280]

--- 9.16.9 released ---

5533. [func] Add the "stale-refresh-time" option, a time window that
starts after a failed lookup, during which a stale RRset
is served directly from cache before a new attempt to
refresh it is made. [GL #2066]

5530. [bug] dnstap did not capture responses to forwarded UPDATE
requests. [GL #2252]

5527. [bug] A NULL pointer dereference occurred when creating an NTA
recheck query failed. [GL #2244]

5525. [bug] Change 5503 inadvertently broke cross-compilation by
replacing a call to AC_LINK_IFELSE() with a call to
AC_RUN_IFELSE() in configure.ac. This has been fixed,
making cross-compilation possible again. [GL #2237]

5523. [bug] The initial lookup in a zone transitioning to/from a
signed state could fail if the DNSKEY RRset was not
found. [GL #2236]

5522. [bug] Fixed a race/NULL dereference in TCPDNS send. [GL #2227]

5520. [bug] Fixed a number of shutdown races, reference counting
errors, and spurious log messages that could occur
in the network manager. [GL #2221]

5518. [bug] Stub zones now work correctly with primary servers using
"minimal-responses yes". [GL #1736]

5517. [bug] Do not treat UV_EOF as a TCP4RecvErr or a TCP6RecvErr.
[GL #2208]

--- 9.16.8 released ---

5516. [func] The default EDNS buffer size has been changed from 4096
to 1232 bytes. [GL #2183]

5515. [func] Add 'rndc dnssec -rollover' command to trigger a manual
rollover for a specific key. [GL #1749]

5514. [bug] Fix KASP expected key size for Ed25519 and Ed448.
[GL #2171]

5513. [doc] The ARM section describing the "rrset-order" statement
was rewritten to make it unambiguous and up-to-date with
the source code. [GL #2139]

5512. [bug] "rrset-order" rules using "order none" were causing
named to crash despite named-checkconf treating them as
valid. [GL #2139]

5511. [bug] 'dig -u +yaml' failed to display timestamps to the
microsecond. [GL #2190]

5510. [bug] Implement the attach/detach semantics for dns_message_t
to fix a data race in accessing an already-destroyed
fctx->rmessage. [GL #2124]

5509. [bug] filter-aaaa: named crashed upon shutdown if it was in
the process of recursing for A RRsets. [GL #1040]

5508. [func] Added new parameter "-expired" for "rndc dumpdb" that
also prints expired RRsets (awaiting cleanup) to the
dump file. [GL #1870]

5507. [bug] Named could compute incorrect SIG(0) responses.
[GL #2109]

5506. [bug] Properly handle failed sysconf() calls, so we don't
report invalid memory size. [GL #2166]

5505. [bug] Updating contents of a mixed-case RPZ could cause some
rules to be ignored. [GL #2169]

5503. [bug] Cleaned up reference counting of network manager
handles, now using isc_nmhandle_attach() and _detach()
instead of _ref() and _unref(). [GL #2122]

--- 9.16.7 released ---

5501. [func] Log CDS/CDNSKEY publication. [GL #1748]

5500. [bug] Fix (non-)publication of CDS and CDNSKEY records.
[GL #2103]

5499. [func] Add '-P ds' and '-D ds' arguments to dnssec-settime.
[GL #1748]

5497. [bug] 'dig +bufsize=0' failed to disable EDNS. [GL #2054]

5496. [bug] Address a TSAN report by ensuring each rate limiter
object holds a reference to its task. [GL #2081]

5495. [bug] With query minimization enabled, named failed to
resolve ip6.arpa. names that had extra labels to the
left of the IPv6 part. [GL #1847]

5494. [bug] Silence the EPROTO syslog message on older systems.
[GL #1928]

5493. [bug] Fix off-by-one error when calculating new hash table
size. [GL #2104]

5492. [bug] Tighten LOC parsing to reject a period (".") and/or "m"
as a value. Fix handling of negative altitudes which are
not whole meters. [GL #2074]

5491. [bug] rbtversion->glue_table_size could be read without the
appropriate lock being held. [GL #2080]

5489. [bug] Named erroneously accepted certain invalid resource
records that were incorrectly processed after
subsequently being written to disk and loaded back, as
the wire format differed. Such records include: CERT,
IPSECKEY, NSEC3, NSEC3PARAM, NXT, SIG, TLSA, WKS, and
X25. [GL !3953]

5488. [bug] NTA code needed to have a weak reference on its
associated view to prevent the latter from being deleted
while NTA tests were being performed. [GL #2067]

5486. [func] Add 'rndc dnssec -checkds' command, which signals to
named that the DS record for a given zone or key has
been updated in the parent zone. [GL #1613]

--- 9.16.6 released ---

5484. [func] Expire zero TTL records quickly rather than using them
for stale answers. [GL #1829]

5483. [func] A new configuration option "stale-cache-enable" has been
introduced to enable or disable keeping stale answers in
cache. [GL #1712]

5482. [bug] If the Duplicate Address Detection (DAD) mechanism had
not yet finished after adding a new IPv6 address to the
system, BIND 9 would fail to bind to IPv6 addresses in a
tentative state. [GL #2038]

5481. [security] "update-policy" rules of type "subdomain" were
incorrectly treated as "zonesub" rules, which allowed
keys used in "subdomain" rules to update names outside
of the specified subdomains. The problem was fixed by
making sure "subdomain" rules are again processed as
described in the ARM. (CVE-2020-8624) [GL #2055]

5480. [security] When BIND 9 was compiled with native PKCS#11 support, it
was possible to trigger an assertion failure in code
determining the number of bits in the PKCS#11 RSA public
key with a specially crafted packet. (CVE-2020-8623)
[GL #2037]

5479. [security] named could crash in certain query resolution scenarios
where QNAME minimization and forwarding were both
enabled. (CVE-2020-8621) [GL #1997]

5478. [security] It was possible to trigger an assertion failure by
sending a specially crafted large TCP DNS message.
(CVE-2020-8620) [GL #1996]

5477. [bug] The idle timeout for connected TCP sockets, which was
previously set to a high fixed value, is now derived
from the client query processing timeout configured for
a resolver. [GL #2024]

5476. [security] It was possible to trigger an assertion failure when
verifying the response to a TSIG-signed request.
(CVE-2020-8622) [GL #2028]

5475. [bug] Wildcard RPZ passthru rules could incorrectly be
overridden by other rules that were loaded from RPZ
zones which appeared later in the "response-policy"
statement. This has been fixed. [GL #1619]

5474. [bug] dns_rdata_hip_next() failed to return ISC_R_NOMORE
when it should have. [GL !3880]

5473. [func] The RBT hash table implementation has been changed
to use a faster hash function (HalfSipHash2-4) and
Fibonacci hashing for better distribution. Setting
"max-cache-size" now preallocates a fixed-size hash
table so that rehashing does not cause resolution
brownouts while the hash table is grown. [GL #1775]

5471. [bug] The introduction of KASP support inadvertently caused
the second field of "sig-validity-interval" to always be
calculated in hours, even in cases when it should have
been calculated in days. This has been fixed. (Thanks to
Tony Finch.) [GL !3735]

5469. [port] On illumos, a constant called SEC is already defined in
<sys/time.h>, which conflicts with an identically named
constant in libbind9. This conflict has been resolved.
[GL #1993]

5468. [bug] Addressed potential double unlock in process_fd().
[GL #2005]

5466. [bug] Addressed an error in recursive clients stats reporting.
[GL #1719]

5465. [func] Added fallback to built-in trust-anchors, managed-keys,
or trusted-keys if the bindkeys-file (bind.keys) cannot
be parsed. [GL #1235]

5464. [bug] Requesting more than 128 files to be saved when rolling
dnstap log files caused a buffer overflow. This has been
fixed. [GL #1989]

5462. [bug] Move LMDB locking from LMDB itself to named. [GL #1976]

5461. [bug] The STALE rdataset header attribute was updated while
the write lock was not being held, leading to incorrect
statistics. The header attributes are now converted to
use atomic operations. [GL #1475]


Revision tags: netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bind-9-16-5 bind-9-16-3 phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 bind-9-14-8 phil-wifi-20191119 bind-9-14-7 bind-9-14-5 netbsd-9-base phil-wifi-20190609 bind-9-14-1 bind-9-13-7
# 1.1.1.3 24-Feb-2019 christos

branches: 1.1.1.3.2;
--- 9.13.7 released ---

5165. [contrib] Removed SDB drivers from contrib; they're obsolete.
[GL #428]

5164. [bug] Correct errno to result translation in dlz filesystem
modules. [GL #884]

5163. [cleanup] Out-of-tree builds failed --enable-dnstap. [GL #836]

5162. [cleanup] Improve dnssec-keymgr manual. Thanks to Tony Finch.
[GL !1518]

5161. [bug] Do not require the SEP bit to be set for mirror zone
trust anchors. [GL #873]

5160. [contrib] Added DNAME support to the DLZ LDAP schema. Also
fixed a compilation bug affecting several DLZ
modules. [GL #872]

5159. [bug] dnssec-coverage was incorrectly ignoring
names specified on the command line without
trailing dots. [GL !1478]

5158. [protocol] Add support for AMTRELAY and ZONEMD. [GL #867]

5157. [bug] Nslookup now errors out if there are extra command
line arguments. [GL #207]

5141. [security] Zone transfer controls for writable DLZ zones were
not effective as the allowzonexfr method was not being
called for such zones. (CVE-2019-6465) [GL #790]

5118. [security] Named could crash if it is managing a key with
`managed-keys` and the authoritative zone is rolling
the key to an unsupported algorithm. (CVE-2018-5745)
[GL #780]

5110. [security] Named leaked memory if there were multiple Key Tag
EDNS options present. (CVE-2018-5744) [GL #772]

--- 9.13.6 released ---

5156. [doc] Extended and refined the section of the ARM describing
mirror zones. [GL #774]

5155. [func] "named -V" now outputs the default paths to
named.conf, rndc.conf, bind.keys, and other
files used or created by named and other tools, so
that the correct paths to these files can quickly be
determined regardless of the configure settings
used when BIND was built. [GL #859]

5154. [bug] dig: process_opt could be called twice on the same
message leading to a assertion failure. [GL #860]

5153. [func] Zone transfer statistics (size, number of records, and
number of messages) are now logged for outgoing
transfers as well as incoming ones. [GL #513]

5152. [func] Improved logging of DNSSEC key events:
- Zone signing and DNSKEY maintenance events are
now logged to the "dnssec" category
- Messages are now logged when DNSSEC keys are
pubished, activated, inactivated, deleted,
or revoked.
[GL #714]

5151. [func] Options that have been been marked as obsolete in
named.conf for a very long time are now fatal
configuration errors. [GL #358]

5150. [cleanup] Remove the ability to compile BIND with assertions
disabled. [GL #735]

5149. [func] "rndc dumpdb" now prints a line above a stale RRset
indicating how long the data will be retained in the
cache for emergency use. [GL #101]

5148. [bug] named did not sign the TKEY response. [GL #821]

5147. [bug] dnssec-keymgr: Add a five-minute margin to better
handle key events close to 'now'. [GL #848]

5146. [placeholder]

5145. [func] Use atomics instead of locked variables for isc_quota
and isc_counter. [GL !1389]

5144. [bug] dig now returns a non-zero exit code when a TCP
connection is prematurely closed by a peer more than
once for the same lookup. [GL #820]

5143. [bug] dnssec-keymgr and dnssec-coverage failed to find
key files for zone names ending in ".". [GL #560]

5142. [cleanup] Removed "configure --disable-rpz-nsip" and
"--disable-rpz-nsdname" options. "nsip-enable"
and "nsdname-enable" both now default to yes,
regardless of compile-time settings. [GL #824]

5140. [bug] Don't immediately mark existing keys as inactive and
deleted when running dnssec-keymgr for the first
time. [GL #117]

5139. [bug] If possible, don't use forwarders when priming.
This ensures we can get root server IP addresses
from priming query response glue, which may not
be present if the forwarding server is returning
minimal responses. [GL #752]

5138. [bug] Under some circumstances named could hit an assertion
failure when doing qname minimization when using
forwarders. [GL #797]

5137. [func] named now logs messages whenever a mirror zone becomes
usable or unusable for resolution purposes. [GL #818]

5136. [cleanup] Check in named-checkconf that allow-update and
allow-update-forwarding are not set at the
view/options level; fix documentation. [GL #512]

5135. [port] sparc: Use smt_pause() instead of pause. [GL #816]

5134. [bug] win32: WSAStartup was not called before getservbyname
was called. [GL #590]

5133. [bug] 'rndc managed-keys' didn't handle class and view
correctly and failed to add new lines between each
view. [GL !1327]

5132. [bug] Fix race condition in cleanup part of dns_dt_create().
[GL !1323]

5131. [cleanup] Address Coverity warnings. [GL #801]

5130. [cleanup] Remove support for l10n message catalogs. [GL #709]

5129. [contrib] sdlz_helper.c:build_querylist was not properly
splitting the query string. [GL #798]

5128. [bug] Refreshkeytime was not being updated for managed
keys zones. [GL #784]

5127. [bug] rcode.c:maybe_numeric failed to handle NUL in text
regions. [GL #807]

5126. [bug] Named incorrectly accepted empty base64 and hex encoded
fields when reading master files. [GL #807]

5125. [bug] Allow for up to 100 records or 64k of data when caching
a negative response. [GL #804]

5124. [bug] Named could incorrectly return FORMERR rather than
SERVFAIL. [GL #804]

5123. [bug] dig could hang indefinitely after encountering an error
before creating a TCP socket. [GL #692]

5122. [bug] In a "forward first;" configuration, a forwarder
timeout did not prevent that forwarder from being
queried again after falling back to full recursive
resolution. [GL #315]

5121. [contrib] dlz_stub_driver.c fails to return ISC_R_NOTFOUND on none
matching zone names. [GL !1299]

5120. [placeholder]

5119. [placeholder]

5117. [placeholder]

5116. [bug] Named/named-checkconf triggered a assertion when
a mirror zone's name is bad. [GL #778]

5115. [bug] Allow unsupported algorithms in zone when not used for
signing with dnssec-signzone. [GL #783]

5114. [func] Include a 'reconfig/reload in progress' status line
in rndc status, use it in tests.

5113. [port] Fixed a Windows build error.

5112. [bug] Named/named-checkconf could dump core if there was
a missing masters clause and a bad notify clause.
[GL #779]

5111. [bug] Occluded DNSKEY records could make it into the
delegating NSEC/NSEC3 bitmap. [GL #742]

5109. [cleanup] Remove support for RSAMD5 algorithm. [GL #628]


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 bind-9-13-5-W1
# 1.1.1.2 09-Jan-2019 christos

Jump into the 9.13 train since the 9.12 train is about to expire (March 2019).

--- 9.13.5-W1 released ---

5113. [port] Fixed a Windows build error.

--- 9.13.5 released ---

5108. [bug] Named could fail to determine bottom of zone when
removing out of date keys leading to invalid NSEC
and NSEC3 records being added to the zone. [GL #771]

5107. [bug] 'host -U' did not work. [GL #769]

5106. [experimental] A new "plugin" mechanism has been added to allow
extension of query processing functionality through
the use of dynamically loadable libraries. A
"filter-aaaa.so" plugin has been implemented,
replacing the filter-aaaa feature that was formerly
implemented as a native part of BIND.

The "filter-aaaa", "filter-aaaa-on-v4" and
"filter-aaaa-on-v6" options can no longer be
configured using native named.conf syntax. However,
loading the filter-aaaa.so plugin and setting its
parameters provides identical functionality.

Note that the plugin API is a work in progress and
is likely to evolve as further plugins are
implemented. [GL #15]

5105. [bug] Fix a race between process_fd and socketclose in
unix socket code. [GL #744]

5104. [cleanup] Log clearer informational message when a catz zone
is overridden by a zone in named.conf.
Thanks to Tony Finch. [GL !1157]

5103. [bug] Add missing design by contract tests to dns_catz*.
[GL #748]

5102. [bug] dnssec-coverage failed to use the default TTL when
checking KSK deletion times leading to a exception.
[GL #585]

5101. [bug] Fix default installation path for Python modules and
remove the dnspython dependency accidentally introduced
by change 4970. [GL #730]

5100. [func] Pin resolver tasks to specific task queues. [GL !1117]

5099. [func] Failed mutex and conditional creations are always
fatal. [GL #674]

--- 9.13.4 released ---

5098. [func] Failed memory allocations are now fatal. [GL #674]

5097. [cleanup] Remove embedded ATF unit testing framework
from BIND source distribution. [GL !875]

5096. [func] Use multiple event loops in socket code, and
make network threads CPU-affinitive. This
significantly improves performance on large
systems. [GL #666]

5095. [test] Converted all unit tests from ATF to CMocka;
removed the source code for the ATF libraries.
Build with "configure --with-cmocka" to enable
unit testing. [GL #620]

5094. [func] Add 'dig -r' to disable reading of .digrc. [GL !970]

5093. [bug] Log lame qname-minimization servers only if they're
really lame. [GL #671]

5092. [bug] Address memory leak on SIGTERM in nsupdate when using
GSS-TSIG. [GL #558]

5091. [func] Two new global and per-view options min-cache-ttl
and min-ncache-ttl [GL #613]

5090. [bug] dig and mdig failed to properly preparse dash value
pairs when value was a seperate argument and started
with a dash. [GL #584]

5089. [bug] Restore localhost fallback in dig and host which is
used when no nameserver addresses present in
/etc/resolv.conf are usable due to the requested
address family restrictions. [GL #433]

5088. [bug] dig/host/nslookup could crash when interrupted close to
a query timeout. [GL #599]

5087. [test] Check that result tables are complete. [GL #676]

5086. [func] Log of RPZ now includes the QTYPE and QCLASS. [GL #623]

5085. [bug] win32: Restore looking up nameservers, search list,
etc. [GL #186]

5084. [placeholder]

5083. [func] Add autoconf macro AX_POSIX_SHELL, so we
can use POSIX-compatible shell features
in the scripts.

5082. [bug] Fixed a race that could cause a crash in
dig/host/nslookup. [GL #650]

5081. [func] Use per-worker queues in task manager, make task
runners CPU-affine. [GL #659]

5080. [func] Improvements to "rndc nta" user interface:
- catch and report invalid command line options
- when removing an NTA from all views, do not
abort with an error if the NTA was not found
in one of the views
- include the view name in "rndc nta -dump"
output, for consistency with the add and remove
actions
Thanks to Tony Finch. [GL !816]

5079. [func] Disable IDN processing in dig and nslookup
when not on a tty. [GL #653]

5078. [cleanup] Require python components to be explicitly disabled if
python is not available on unix platforms. [GL #601]

5077. [cleanup] Remove ip6.int support (-i) from dig and mdig.
[GL !969]

5076. [bug] "require-server-cookie" was not effective if
"rate-limit" was configured. [GL #617]

5075. [bug] Refresh nameservers from cache when sending final
query in qname minimization. [GL #16]

5074. [cleanup] Remove vector socket functions - isc_socket_recvv(),
isc_socket_sendtov(), isc_socket_sendtov2(),
isc_socket_sendv() - in order to simplify socket code.
[GL #645]

5073. [bug] Destroy a task first when destroying rpzs and catzs.
[GL #84]

5072. [bug] Add unit tests for isc_buffer_copyregion() and fix its
behavior for auto-reallocated buffers. [GL #644]

5071. [bug] Comparision of NXT records was broken. [GL #631]

5070. [bug] Record types which support a empty rdata field were
not handling the empty rdata field case. [GL #638]

5069. [bug] Fix a hang on in RPZ when named is shutdown during RPZ
zone update. [GL !907]

5068. [bug] Fix a race in RPZ with min-update-interval set to 0.
[GL #643]

5067. [bug] Don't minimize qname when sending the query
to a forwarder. [GL #361]

5066. [cleanup] Allow unquoted strings to be used as a zone names
in response-policy statements. [GL #641]

5065. [bug] Only set IPV6_USE_MIN_MTU on IPv6. [GL #553]

5064. [test] Initalize TZ environment variable before calling
dns_test_begin in dnstap_test. [GL #624]

5063. [test] In statschannel test try a few times before failing
when checking if the compressed output is the same as
uncompressed. [GL !909]

5062. [func] Use non-crypto-secure PRNG to generate nonces for
cookies. [GL !887]

5061. [protocol] Add support for EID and NIMLOC. [GL #626]

5060. [bug] GID, UID and UINFO could not be loaded using unknown
record format. [GL #627]

5059. [bug] Display a per-view list of zones in the web interface.
[GL #427]

5058. [func] Replace old message digest and hmac APIs with more
generic isc_md and isc_hmac APIs, and convert their
respective tests to cmocka. [GL #305]

5057. [protocol] Add support for ATMA. [GL #619]

5056. [placeholder]

5055. [func] A default list of primary servers for the root zone is
now built into named, allowing the "masters" statement
to be omitted when configuring an IANA root zone
mirror. [GL #564]

5054. [func] Attempts to use mirror zones with recursion disabled
are now considered a configuration error. [GL #564]

5053. [func] The only valid zone-level NOTIFY settings for mirror
zones are now "notify no;" and "notify explicit;".
[GL #564]

5052. [func] Mirror zones are now configured using "type mirror;"
rather than "mirror yes;". [GL #564]

5051. [doc] Documentation incorrectly stated that the
"server-addresses" static-stub zone option accepts
custom port numbers. [GL #582]

5050. [bug] The libirs version of getaddrinfo() was unable to parse
scoped IPv6 addresses present in /etc/resolv.conf.
[GL #187]

5049. [cleanup] QNAME minimization has been deeply refactored. [GL #16]

5048. [func] Add configure option to enable and enforce FIPS mode
in BIND 9. [GL #506]

5047. [bug] Messages logged for certain query processing failures
now include a more specific error description if it is
available. [GL #572]

5046. [bug] named could crash during shutdown if an RPZ
reload was in progress. [RT #46210]

5045. [func] Remove support for DNSSEC algorithms 3 (DSA)
and 6 (DSA-NSEC3-SHA1). [GL #22]

5044. [cleanup] If "dnssec-enable" is no, then "dnssec-validation"
now also defaults to no. [GL #388]

5043. [bug] Fix creating and validating EdDSA signatures. [GL #579]

5042. [test] Make the chained delegations in reclimit behave
like they would in a regular name server. [GL #578]

5041. [test] The chain test contains a incomplete delegation.
[GL #568]

5040. [func] Extended dnstap so that it can log UPDATE requests
and responses as separate message types. Thanks
to Greg Rabil. [GL #570]

5039. [bug] Named could fail to preserve owner name case of new
RRset. [GL #420]

5038. [bug] Chaosnet addresses were compared incorrectly.
[GL #562]

5037. [func] "allow-recursion-on" and "allow-query-cache-on"
each now default to the other if only one of them
is set, in order to be more consistent with the way
"allow-recursion" and "allow-query-cache" work.
Also we now ensure that both query-cache ACLs are
checked when determining cache access. [GL #319]

5036. [cleanup] Fixed a spacing/formatting error in some RPZ-related
error messages in the log. [GL !805]

5035. [test] Fixed errors that prevented the DNSRPS subtests
from running in the rpz and rpzrecurse system
tests. [GL #503]

5034. [bug] A race between threads could prevent zone maintenance
scheduled immediately after zone load from being
performed. [GL #542]

5033. [bug] When adding NTAs to multiple views using "rndc nta",
the text returned via rndc was incorrectly terminated
after the first line, making it look as if only one
NTA had been added. Also, it was not possible to
differentiate between views with the same name but
different classes; this has been corrected with the
addition of a "-class" option. [GL #105]

5032. [func] Add krb5-selfsub and ms-selfsub update policy rules.
[GL #511]

5031. [cleanup] Various defines in platform.h has been either dropped
if always or never triggered on supported platforms
or replaced with config.h equivalents if the defines
didn't have any impact on public headers. Workarounds
for LinuxThreads have been removed because NPTL is
available since Linux kernel 2.6.0. [GL #525]

5030. [bug] Align CMSG buffers to a 64-bit boundary, fixes crash
on architectures with strict alignment. [GL #521]

--- 9.13.3 released ---

5029. [func] Workarounds for servers that misbehave when queried
with EDNS have been removed, because these broken
servers and the workarounds for their noncompliance
cause unnecessary delays, increase code complexity,
and prevent deployment of new DNS features. See
https://dnsflagday.net for further details. [GL #150]

5028. [bug] Spread the initial RRSIG expiration times over the
entire working sig-validity-interval when signing a
zone in named to even out re-signing and transfer
loads. [GL #418]

5027. [func] Set SO_SNDBUF size on sockets. [GL #74]

5026. [bug] rndc reconfig should not touch already loaded zones.
[GL #276]

5025. [cleanup] Remove isc_keyboard family of functions. [GL #178]

5024. [func] Replace custom assembly for atomic operations with
atomic support from the compiler. The code will now use
C11 stdatomic, or __atomic, or __sync builtins with GCC
or Clang compilers, and Interlocked functions with MSVC.
[GL #10]

5023. [cleanup] Remove wrappers that try to fix broken or incomplete
implementations of IPv6, pthreads and other core
functionality required and used by BIND. [GL #192]

5022. [doc] Update ms-self, ms-subdomain, krb5-self, and
krb5-subdomain documentation. [GL !708]

5021. [bug] dig returned a non-zero exit code when it received a
reply over TCP after a retry. [GL #487]

5020. [func] RNG uses thread-local storage instead of locks, if
supported by platform. [GL #496]

5019. [cleanup] A message is now logged when ixfr-from-differences is
set at zone level for an inline-signed zone. [GL #470]

5018. [bug] Fix incorrect sizeof arguments in lib/isc/pk11.c.
[GL !588]

5017. [bug] lib/isc/pk11.c failed to unlink the session before
releasing the lock which is unsafe. [GL !589]

5016. [bug] Named could assert with overlapping filter-aaaa and
dns64 acls. [GL #445]

5015. [bug] Reloading all zones caused zone maintenance to cease
for inline-signed zones. [GL #435]

5014. [bug] Signatures loaded from the journal for the signed
version of an inline-signed zone were not scheduled for
refresh. [GL #482]

5013. [bug] A referral response with a non-empty ANSWER section was
inadvertently being treated as an error. [GL #390]

5012. [bug] Fix lock order reversal in pk11_initialize. [GL !590]

5011. [func] Remove support for unthreaded named. [GL #478]

5010. [func] New "validate-except" option specifies a list of
domains beneath which DNSSEC validation should not
be performed. [GL #237]

5009. [bug] Upon an OpenSSL failure, the first error in the OpenSSL
error queue was not logged. [GL #476]

5008. [bug] "rndc signing -nsec3param ..." requests were silently
ignored for zones which were not yet loaded or
transferred. [GL #468]

5007. [cleanup] Replace custom ISC boolean and integer data types
with C99 stdint.h and stdbool.h types. [GL #9]

5006. [cleanup] Code preparing a delegation response was extracted from
query_delegation() and query_zone_delegation() into a
separate function in order to decrease code
duplication. [GL #431]

5005. [bug] dnssec-verify, and dnssec-signzone at the verification
step, failed on some validly signed zones. [GL #442]

5004. [bug] 'rndc reconfig' could cause inline zones to stop
re-signing. [GL #439]

5003. [bug] dns_acl_isinsecure did not handle geoip elements.
[GL #406]

5002. [bug] mdig: Handle malformed +ednsopt option, support 100
+ednsopt options per query rather than 100 total and
address memory leaks if +ednsopt was specified.
[GL #410]

5001. [bug] Fix refcount errors on error paths. [GL !563]

5000. [bug] named_server_servestale() could leave the server in
exclusive mode if an error occured. [GL #441]

4999. [cleanup] Remove custom printf implementation in lib/isc/print.c.
[GL #261]

4998. [test] Make resolver and cacheclean tests more civilized.

4997. [security] named could crash during recursive processing
of DNAME records when "deny-answer-aliases" was
in use. (CVE-2018-5740) [GL #387]

4996. [bug] dig: Handle malformed +ednsopt option. [GL #403]

4995. [test] Add tests for "tcp-self" update policy. [GL !282]

4994. [bug] Trust anchor telemetry queries were not being sent
upstream for locally served zones. [GL #392]

4993. [cleanup] Remove support for silently ignoring 'no-change' deltas
from BIND 8 when processing an IXFR stream. 'no-change'
deltas will now trigger a fallback to AXFR as the
recovery mechanism. [GL #369]

4992. [bug] The wrong address was being logged for trust anchor
telemetry queries. [GL #379]

4991. [bug] "rndc reconfig" was incorrectly handling zones whose
"mirror" setting was changed. [GL #381]

4990. [bug] Prevent a possible NULL reference in pkcs11-keygen.
[GL #401]

4989. [cleanup] IDN support in dig has been reworked. IDNA2003
fallbacks were removed in the process. [GL #384]

4988. [bug] Don't synthesize NXDOMAIN from NSEC for records under
a DNAME.

--- 9.13.2 released ---

4987. [cleanup] dns_rdataslab_tordataset() and its related
dns_rdatasetmethods_t callbacks were removed as they
were not being used by anything in BIND. [GL #371]

4986. [func] When built on Linux, BIND now requires the libcap
library to set process privileges, unless capability
support is explicitly overridden with "configure
--disable-linux-caps". [GL #321]

4985. [func] Add a new slave zone option, "mirror", to enable
serving a non-authoritative copy of a zone that
is subject to DNSSEC validation before being
used. For now, this option is only meant to
facilitate deployment of an RFC 7706-style local
copy of the root zone. [GL #33]

4984. [bug] Improve handling of very large incremental
zone transfers to prevent journal corruption. [GL #339]

4983. [func] Add the ability to not return a DNS COOKIE option
when one is present in the request (answer-cookie no;).
[GL #173]

4982. [cleanup] Return FORMERR if the question section is empty
and no COOKIE option is present; this restores
older behavior except in the newly specified
COOKIE case. [GL #260]

4981. [bug] Fix race in cmsg buffer usage in socket code.
[GL #180]

4980. [bug] Named-checkconf failed to detect bad in-view targets.
[GL #288]

4979. [placeholder]

4978. [test] Fix error handling and resolver configuration in the
"rpz" system test. [GL #312]

4977. [func] When starting up, log the same details that
would be reported by 'named -V'. [GL #247]

4976. [bug] Log the label with invalid prefix length correctly
when loading RPZ zones. [GL #254]

4975. [bug] The server cookie computation for sha1 and sha256 did
not match the method described in RFC 7873. [GL #356]

4974. [bug] Restore default rrset-order to random. [GL #336]

4973. [func] verifyzone() and the functions it uses were moved to
libdns and refactored to prevent exit() from being
called upon failure. A side effect of that is that
dnssec-signzone and dnssec-verify now check for memory
leaks upon shutdown. [GL #266]

4972. [func] Declare the 'rdata' argument for dns_rdata_tostruct()
to be const. [GL #341]

4971. [bug] dnssec-signzone and dnssec-verify did not treat records
below a DNAME as out-of-zone data. [GL #298]

4970. [func] Add QNAME minimization option to resolver. [GL #16]

4969. [cleanup] Refactor zone logging functions. [GL #269]

--- 9.13.1 released ---

4968. [bug] If glue records are signed, attempt to validate them.
[GL #209]

4967. [cleanup] Add "answer-cookie" to the parser, marked obsolete.

4966. [placeholder]

4965. [func] Add support for marking options as deprecated.
[GL #322]

4964. [bug] Reduce the probabilty of double signature when deleting
a DNSKEY by checking if the node is otherwise signed
by the algorithm of the key to be deleted. [GL #240]

4963. [test] ifconfig.sh now uses "ip" instead of "ifconfig",
if available, to configure the test interfaces on
linux. [GL #302]

4962. [cleanup] Move 'named -T' processing to its own function.
[GL #316]

4961. [protocol] Remove support for ECC-GOST (GOST R 34.11-94).
[GL #295]

4960. [security] When recursion is enabled, but the "allow-recursion"
and "allow-query-cache" ACLs are not specified,
they should be limited to local networks,
but were inadvertently set to match the default
"allow-query", thus allowing remote queries.
(CVE-2018-5738) [GL #309]

4959. [func] NSID logging (enabled by the "request-nsid" option)
now has its own "nsid" category, instead of using the
"resolver" category. [GL !332]

4958. [bug] Remove redundant space from NSEC3 record. [GL #281]

4957. [func] The default setting for "dnssec-validation" is now
"auto", which activates DNSSEC validation using the
IANA root key. (The default can be changed back to
"yes", which activates DNSSEC validation only when keys
are explicitly configured in named.conf, by building
BIND with "configure --disable-auto-validation".)
[GL #30]

4956. [func] Change isc_random() to be just PRNG using xoshiro128**,
and add isc_nonce_buf() that uses CSPRNG. [GL #289]

4955. [cleanup] Silence cppcheck warnings in lib/dns/master.c.
[GL #286]

4954. [func] Messages about serving of stale answers are now
directed to the "serve-stale" logging category.
Also clarified serve-stale documentation. [GL !323]

4953. [bug] Removed the option to build the red black tree
database without a hash table; the non-hashing
version was buggy and is not needed. [GL #184]

4952. [func] Authoritative server support in named for the
EDNS CLIENT-SUBNET option (which was experimental
and not practical to deploy) has been removed.

The ECS option is still supported in dig and mdig
via the +subnet option, and can be parsed and logged
when received by named, but it is no longer used
for ACL processing. The "geoip-use-ecs" option
is now obsolete; a warning will be logged if it is
used in named.conf. "ecs" tags in an ACL definition
are also obsolete and will cause the configuration
to fail to load. [GL #32]

4951. [protocol] Add "HOME.ARPA" to list of built in empty zones as
per RFC 8375. [GL #273]

--- 9.13.0 released ---

4950. [bug] ISC_SOCKEVENTATTR_TRUNC was not be set. [GL #238]

4949. [placeholder]

4948. [bug] When request-nsid is turned on, EDNS NSID options
should be logged at level info. Since change 3741
they have been logged at debug(3) by mistake.
[GL !290]

4947. [func] Replace all random functions with isc_random(),
isc_random_buf() and isc_random_uniform() API.
[GL #221]

4946. [bug] Additional glue was not being returned by resolver
for unsigned zones since change 4596. [GL #209]

4945. [func] BIND can no longer be built without DNSSEC support.
A cryptography provder (i.e., OpenSSL or a hardware
service module with PKCS#11 support) must be
available. [GL #244]

4944. [cleanup] Silence cppcheck portability warnings in
lib/isc/tests/buffer_test.c. [GL #239]

4943. [bug] Change 4687 consumed too much memory when running
system tests with --with-tuning=large. Reduced the
hash table size to 512 entries for 'named -m record'
restoring the previous memory footprint. [GL #248]

4942. [cleanup] Consolidate multiple instances of splitting of
batchline in dig into a single function. [GL #196]

4941. [cleanup] Silence clang static analyzer warnings. [GL #196]

4940. [cleanup] Extract the loop in dns__zone_updatesigs() into
separate functions to improve code readability.
[GL #135]

4939. [test] Add basic unit tests for update_sigs(). [GL #135]

4938. [placeholder]

4937. [func] Remove support for OpenSSL < 1.0.0 [GL #191]

4936. [func] Always use OpenSSL or PKCS#11 random data providers,
and remove the --{enable,disable}-crypto-rand configure
options. [GL #165]

4935. [func] Add support for LibreSSL >= 2.7.0 (some OpenSSL 1.1.0
call were added). [GL #191]

4934. [security] The serve-stale feature could cause an assertion failure
in rbtdb.c even when stale-answer-enable was false.
Simultaneous use of stale cache records and NSEC
aggressive negative caching could trigger a recursion
loop. (CVE-2018-5737) [GL #185]

4933. [bug] Not creating signing keys for an inline signed zone
prevented changes applied to the raw zone from being
reflected in the secure zone until signing keys were
made available. [GL #159]

4932. [bug] Bumped signed serial of an inline signed zone was
logged even when an error occurred while updating
signatures. [GL #159]

4931. [func] Removed the "rbtdb64" database implementation.
[GL #217]

4930. [bug] Remove a bogus check in nslookup command line
argument processing. [GL #206]

4929. [func] Add the ability to set RA and TC in queries made by
dig (+[no]raflag, +[no]tcflag). [GL #213]

4928. [func] The "dnskey-sig-validity" option allows
"sig-validity-interval" to be overriden for signatures
covering DNSKEY RRsets. [GL #145]

4927. [placeholder]

4926. [func] Add root key sentinel support. To disable, add
'root-key-sentinel no;' to named.conf. [GL #37]

4925. [func] Several configuration options that define intervals
can now take TTL value suffixes (for example, 2h or 1d)
in addition to integer parameters. These include
max-cache-ttl, max-ncache-ttl, max-policy-ttl,
fstrm-set-reopen-interval, interface-interval, and
min-update-interval. [GL #203]

4924. [cleanup] Clean up the isc_string_* namespace and leave
only strlcpy and strlcat. [GL #178]

4923. [cleanup] Refactor socket and socket event options into
enum types. [GL !135]

4922. [bug] dnstap: Log the destination address of client
packets rather than the interface address.
[GL #197]

4921. [cleanup] Add dns_fixedname_initname() and refactor the caller
code to make usage of the new function, as a part of
refactoring dns_fixedname_*() macros were turned into
functions. [GL #183]

4920. [cleanup] Clean up libdns removing most of the backwards
compatibility wrappers.

4919. [cleanup] Clean up the isc_hash_* namespace and leave only
the FNV-1a hash implementation. [GL #178]

4918. [bug] Fix double free after keygen error in dnssec-keygen
when OpenSSL >= 1.1.0 is used and RSA_generate_key_ex
fails. [GL #109]

4917. [func] Support 64 RPZ policy zones by default. [GL #123]

4916. [func] Remove IDNA2003 support and the bundled idnkit-1.0
library.

4915. [func] Implement IDNA2008 support in dig by adding support
for libidn2. New dig option +idnin has been added,
which allows to process invalid domain names much
like dig without IDN support. libidn2 version 2.0
or higher is needed for +idnout enabled by default.

4914. [security] A bug in zone database reference counting could lead to
a crash when multiple versions of a slave zone were
transferred from a master in close succession.
(CVE-2018-5736) [GL #134]

4913. [test] Re-implemented older unit tests in bin/tests as ATF,
removed the lib/tests unit testing library. [GL #115]

4912. [test] Improved the reliability of the 'cds' system test.
[GL #136]

4911. [test] Improved the reliability of the 'mkeys' system test.
[GL #128]

4910. [func] Update util/check-changes to work on release branches.
[GL #113]

4909. [bug] named-checkconf did not detect in-view zone collisions.
[GL #125]

4908. [test] Eliminated unnecessary waiting in the allow_query
system test. Also changed its name to allow-query.
[GL #81]

4907. [test] Improved the reliability of the 'notify' system
test. [GL #59]

4906. [func] Replace getquad() with inet_pton(), completing
change #4900. [GL #56]

4905. [bug] irs_resconf_load() ignored resolv.conf syntax errors
when "domain" or "search" options were present in that
file. [GL #110]

4904. [bug] Temporarily revert change #4859. [GL #124]

4903. [bug] "check-mx fail;" did not prevent MX records containing
IP addresses from being added to a zone by a dynamic
update. [GL #112]

4902. [test] Improved the reliability of the 'ixfr' system
test. [GL #66]

4901. [func] "dig +nssearch" now lists the name servers
for a domain that time out, as well as the servers
that respond. [GL #64]

4900. [func] Remove all uses of inet_aton(). As a result of this
change, IPv4 addresses are now only accepted in
dotted-quad format. [GL #13]

4899. [test] Convert most of the remaining system tests to be able
to run in parallel, continuing the work from change
#4895. To take advantage of this, use "make -jN check",
where N is the number of processors to use. [GL #91]

4898. [func] Remove libseccomp based system-call filtering. [GL #93]

4897. [test] Update to rpz system test so that it doesn't recurse.
[GL #68]

4896. [test] cacheclean system test was not robust. [GL #82]

4895. [test] Allow some system tests to run in parallel.
[RT #46602]

4894. [bug] named could crash while rolling a dnstap output file.
[RT #46942]

4893. [bug] Address various issues reported by cppcheck. [GL #51]

4892. [bug] named could leak memory when "rndc reload" was invoked
before all zone loading actions triggered by a previous
"rndc reload" command were completed. [RT #47076]

4891. [placeholder]

4890. [func] Remove unused ondestroy callback from libisc.
[isc-projects/bind9!3]

4889. [func] Warn about the use of old root keys without the new
root key being present. Warn about dlv.isc.org's
key being present. Warn about both managed and
trusted root keys being present. [RT #43670]

4888. [test] Initialize sockets correctly in sample-update so
that the nsupdate system test will run on Windows.
[RT #47097]

4887. [test] Enable the rpzrecurse test to run on Windows.
[RT #47093]

4886. [doc] Document dig -u in manpage. [RT #47150]

4885. [security] update-policy rules that otherwise ignore the name
field now require that it be set to "." to ensure
that any type list present is properly interpreted.
[RT #47126]

4884. [bug] named could crash on shutdown due to a race between
shutdown_server() and ns__client_request(). [RT #47120]

4883. [cleanup] Improved debugging output from dnssec-cds. [RT #47026]

4882. [bug] Address potential memory leak in
dns_update_signaturesinc. [RT #47084]

4881. [bug] Only include dst_openssl.h when OpenSSL is required.
[RT #47068]

4880. [bug] Named wasn't returning the target of a cross-zone
CNAME between two served zones when recursion was
desired and available (RD=1, RA=1). (When this is
not the case, the CNAME target is deliberately
withheld to prevent accidental cache poisoning.)
[RT #47078]

4879. [bug] dns_rdata_caa:value_len field was too small.
[RT #47086]

4878. [bug] List 'ply' as a requirement for the 'isc' python
package. [RT #47065]

4877. [bug] Address integer overflow when exponentially
backing off retry intervals. [RT #47041]

4876. [bug] Address deadlock with accessing a keytable. [RT #47000]

4875. [bug] Address compile failures on older systems. [RT #47015]

4874. [bug] Wrong time display when reporting new keywarntime.
[RT #47042]

4873. [doc] Grammars for named.conf included in the ARM are now
automatically generated by the configuration parser
itself. As a side effect of the work needed to
separate zone type grammars from each other, this
also makes checking of zone statements in
named-checkconf more correct and consistent.
[RT #36957]

4872. [bug] Don't permit loading meta RR types such as TKEY
from master files. [RT #47009]

4871. [bug] Fix configure glitch in detecting stdatomic.h
support on systems with multiple compilers.
[RT #46959]

4870. [test] Update included ATF library to atf-0.21 preserving
the ATF tool. [RT #46967]

4869. [bug] Address some cases where NULL with zero length could
be passed to memmove which is undefined behavior and
can lead to bad optimization. [RT #46888]

4868. [func] dnssec-keygen can no longer generate HMAC keys.
Use tsig-keygen instead. [RT #46404]

4867. [cleanup] Normalize rndc on/off commands (validation,
querylog, serve-stale) so they all accept the
same synonyms for on/off (yes/no, true/false,
enable/disable). Thanks to Tony Finch. [RT #47022]

4866. [port] DST library initialization verifies MD5 (when MD5
was not disabled) and SHA-1 hash and HMAC support.
[RT #46764]

4865. [cleanup] Simplify handling isc_socket_sendto2() return values.
[RT #46986]

4864. [bug] named acting as a slave for a catalog zone crashed if
the latter contained a master definition without an IP
address. [RT #45999]

4863. [bug] Fix various other bugs reported by Valgrind's
memcheck tool. [RT #46978]

4862. [bug] The rdata flags for RRSIG were not being properly set
when constructing a rdataslab. [RT #46978]

4861. [bug] The isc_crc64 unit test was not endian independent.
[RT #46973]

4860. [bug] isc_int8_t should be signed char. [RT #46973]

4859. [bug] A loop was possible when attempting to validate
unsigned CNAME responses from secure zones;
this caused a delay in returning SERVFAIL and
also increased the chances of encountering
CVE-2017-3145. [RT #46839]

4858. [security] Addresses could be referenced after being freed
in resolver.c, causing an assertion failure.
(CVE-2017-3145) [RT #46839]

4857. [bug] Maintain attach/detach semantics for event->db,
event->node, event->rdataset and event->sigrdataset
in query.c. [RT #46891]

4856. [bug] 'rndc zonestatus' reported the wrong underlying type
for a inline slave zone. [RT #46875]

4855. [bug] isc_time_formatshorttimestamp produced incorrect
output. [RT #46938]

4854. [bug] query_synthcnamewildcard should stop generating the
response if query_synthwildcard fails. [RT #46939]

4853. [bug] Add REQUIRE's and INSIST's to isc_time_formatISO8601L
and isc_time_formatISO8601Lms. [RT #46916]

4852. [bug] Handle strftime() failing in isc_time_formatISO8601ms.
Add REQUIRE's and INSIST's to isc_time_formattimestamp,
isc_time_formathttptimestamp, isc_time_formatISO8601,
isc_time_formatISO8601ms. [RT #46892]

4851. [port] Support using kyua as well as atf-run to run the unit
tests. [RT #46853]

4850. [bug] Named failed to restart with multiple added zones in
lmdb database. [RT #46889]

4849. [bug] Duplicate zones could appear in the .nzf file if
addzone failed. [RT #46435]

4848. [func] Zone types "primary" and "secondary" can now be used
as synonyms for "master" and "slave" in named.conf.
[RT #46713]

4847. [bug] dnssec-dnskey-kskonly was not being honored for
CDS and CDNSKEY. [RT #46755]

4846. [test] Adjust timing values in runtime system test. Address
named.pid removal races in runtime system test.
[RT #46800]

4845. [bug] Dig (non iOS) should exit on malformed names.
[RT #46806]

4844. [test] Address memory leaks in libatf-c. [RT #46798]

4843. [bug] dnssec-signzone free hashlist on exit. [RT #46791]

4842. [bug] Conditionally compile opensslecdsa_link.c to avoid
warnings about unused function. [RT #46790]


Revision tags: pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 bind-9-12-2-P1
# 1.1.1.1 12-Aug-2018 christos

branches: 1.1.1.1.2;
Import bind-9.12.2-P2 since bind-9.10 (the last BSD version) is
now out of support. The changes since our last version imported
(9.10.7) version are too big to include inline here; please consult
the CHANGES file in this directory.


Revision tags: bind-9-16-33
# 1.1.1.5 23-Sep-2022 christos

Import 9.16.33; last imported was 9.16.20

--- 9.16.33 released ---

5962. [security] Fix memory leak in EdDSA verify processing.
(CVE-2022-38178) [GL #3487]

5961. [security] Fix memory leak in ECDSA verify processing.
(CVE-2022-38177) [GL #3487]

5960. [security] Fix serve-stale crash that could happen when
stale-answer-client-timeout was set to 0 and there was
a stale CNAME in the cache for an incoming query.
(CVE-2022-3080) [GL #3517]

5957. [security] Prevent excessive resource use while processing large
delegations. (CVE-2022-2795) [GL #3394]

5956. [func] Make RRL code treat all QNAMEs that are subject to
wildcard processing within a given zone as the same
name. [GL #3459]

5955. [port] The libxml2 library has deprecated the usage of
xmlInitThreads() and xmlCleanupThreads() functions. Use
xmlInitParser() and xmlCleanupParser() instead.
[GL #3518]

5954. [func] Fallback to IDNA2003 processing in dig when IDNA2008
conversion fails. [GL #3485]

5953. [bug] Fix a crash on shutdown in delete_trace_entry(). Add
mctx attach/detach pair to make sure that the memory
context used by a memory pool is not destroyed before
the memory pool itself. [GL #3515]

5952. [bug] Use quotes around address strings in YAML output.
[GL #3511]

5951. [bug] In some cases, the dnstap query_message field was
erroneously set when logging response messages.
[GL #3501]

5948. [bug] Fix nsec3.c:dns_nsec3_activex() function, add a missing
dns_db_detachnode() call. [GL #3500]

5945. [bug] If parsing /etc/bind.key failed, delv could assert
when trying to parse the built in trust anchors as
the parser hadn't been reset. [GL !6468]

5942. [bug] Fix tkey.c:buildquery() function's error handling by
adding the missing cleanup code. [GL #3492]

5941. [func] Zones with dnssec-policy now require dynamic DNS or
inline-siging to be configured explicitly. [GL #3381]

5936. [bug] Don't enable serve-stale for lookups that error because
it is a duplicate query or a query that would be
dropped. [GL #2982]

--- 9.16.32 released ---

5934. [func] Improve fetches-per-zone fetch limit logging to log
the final allowed and spilled values of the fetch
counters before the counter object gets destroyed.
[GL #3461]

5933. [port] Automatically disable RSASHA1 and NSEC3RSASHA1 in
named on Fedorda 33, Oracle Linux 9 and RHEL9 when
they are disabled by the security policy. [GL #3469]

5932. [bug] Fix rndc dumpdb -expired and always include expired
RRsets, not just for RBTDB_VIRTUAL time window.
[GL #3462]

5929. [bug] The "max-zone-ttl" option in "dnssec-policy" was
not fully effective; it was used for timing key
rollovers but did not actually place an upper limit
on TTLs when loading a zone. This has been
corrected, and the documentation has been clarified
to indicate that the old "max-zone-ttl" zone option
is now ignored when "dnssec-policy" is in use.
[GL #2918]

5924. [func] When it's necessary to use AXFR to respond to an
IXFR request, a message explaining the reason
is now logged at level info. [GL #2683]

5923. [bug] Fix inheritance for dnssec-policy when checking for
inline-signing. [GL #3438]

5922. [bug] Forwarding of UPDATE message could fail with the
introduction of netmgr. This has been fixed. [GL #3389]

--- 9.16.31 released ---

5917. [bug] Update ifconfig.sh script as is miscomputed interface
identifiers when destroying interfaces. [GL #3061]

5915. [bug] Detect missing closing brace (}) and computational
overflows in $GENERATE directives. [GL #3429]

5913. [bug] Fix a race between resolver query timeout and
validation in resolver.c:validated(). Remove
resolver.c:maybe_destroy() as it is no loger needed.
[GL #3398]

5909. [bug] The server-side destination port was missing from dnstap
captures of client traffic. [GL #3309]

5905. [bug] When the TCP connection would be closed/reset between
the connect/accept and the read, the uv_read_start()
return value would be unexpected and cause an assertion
failure. [GL #3400]

5903. [bug] When named checks that the OPCODE in a response matches
that of the request, if there is a mismatch named logs
an error. Some of those error messages incorrectly
used RCODE instead of OPCODE to lookup the nemonic.
This has been corrected. [GL !6420]

--- 9.16.30 released ---

5899. [func] Don't try to process DNSSEC-related and ZONEMD records
in catz. [GL #3380]

5890. [bug] When the fetches-per-server quota was adjusted
because of an authoritative server timing out more
or less frequently, it was incorrectly set to 1
rather than the intended value. This has been
fixed. [GL #3327]

5888. [bug] Only write key files if the dnssec-policy keymgr has
changed the metadata. [GL #3302]

5823. [func] Replace hazard pointers based lock-free list with
locked-list based queue that's simpler and has no or
little performance impact. [GL #3180]

--- 9.16.29 released ---

5885. [bug] RPZ NSIP and NSDNAME rule processing didn't handle stub
and static-stub zones at or above the query name. This
has now been addressed. [GL #3232]

5881. [bug] dig +nssearch could hang in rare cases when recv_done()
callback was being called earlier than send_done().
[GL #3278]

5880. [func] Add new named command-line option -C to print built-in
defaults. [GL #1326]

5879. [contrib] dlz: Add FALLTHROUGH and UNREACHABLE macros. [GL #3306]

5874. [bug] keymgr didn't work with python 3.11. [GL !6157]

5866. [bug] Work around a jemalloc quirk which could trigger an
out-of-memory condition in named over time. [GL #3287]

5863. [bug] If there was a pending negative cache DS entry,
validations depending upon it could fail. [GL #3279]

5858. [bug] Don't remove CDS/CDNSKEY DELETE records on zone sign
when using 'auto-dnssec maintain;'. [GL #2931]

--- 9.16.28 released ---

5856. [bug] The "starting maxtime timer" message related to outgoing
zone transfers was incorrectly logged at the ERROR level
instead of DEBUG(1). [GL #3208]

5852. [func] Add new "reuseport" option to enable/disable load
balancing of sockets. [GL #3249]

5843. [bug] When an UPDATE targets a zone that is not configured,
the requested zone name is now logged in the "not
authoritative" error message, so that it is easier to
track down problematic update clients. [GL #3209]

5836. [bug] Quote the dns64 prefix in error messages that complain
about problems with it, to avoid confusion with the
following dns64 ACLs. [GL #3210]

5834. [cleanup] C99 variable-length arrays are difficult to use safely,
so avoid them except in test code. [GL #3201]

5828. [bug] Replace single TCP write timer with per-TCP write
timers. [GL #3200]

5824. [bug] Invalid dnssec-policy definitions were being accepted
where the defined keys did not cover both KSK and ZSK
roles for a given algorithm. This is now checked for
and the dnssec-policy is rejected if both roles are
not present for all algorithms in use. [GL #3142]

--- 9.16.27 released ---

5818. [security] A synchronous call to closehandle_cb() caused
isc__nm_process_sock_buffer() to be called recursively,
which in turn left TCP connections hanging in the
CLOSE_WAIT state blocking indefinitely when
out-of-order processing was disabled. (CVE-2022-0396)
[GL #3112]

5817. [security] The rules for acceptance of records into the cache
have been tightened to prevent the possibility of
poisoning if forwarders send records outside
the configured bailiwick. (CVE-2021-25220) [GL #2950]

5816. [bug] Make BIND compile with LibreSSL 3.5.0, as it was using
not very accurate pre-processor checks for using shims.
[GL #3172]

5815. [bug] If an oversized key name of a specific length was used
in the text form of an HTTP or SVBC record, an INSIST
could be triggered when parsing it. [GL #3175]

5814. [bug] The RecursClients statistics counter could underflow
in certain resolution scenarios. [GL #3147]

5811. [bug] Reimplement the maximum and idle timeouts for outgoing
zone transfers. [GL #1897]

5807. [bug] Add a TCP "write" timer, and time out writing
connections after the "tcp-idle-timeout" period
has elapsed. [GL #3132]

5804. [func] Add a debug log message when starting and ending
the task exclusive mode. [GL #3137]

--- 9.16.26 released ---

5801. [bug] Log "quota reached" message when hard quota
is reached when accepting a connection. [GL #3125]

5800. [func] Add ECS support to the DLZ interface. [GL #3082]

5797. [bug] A failed view configuration during a named
reconfiguration procedure could cause inconsistencies
in BIND internal structures, causing a crash or other
unexpected errors. [GL #3060]

5795. [bug] rndc could crash when interrupted by a signal
before receiving a response. [GL #3080]

5793. [bug] Correctly detect and enable UDP recvmmsg support
in all versions of libuv that support it. [GL #3095]

--- 9.16.25 released ---

5789. [bug] Allow replacing expired zone signatures with
signatures created by the KSK. [GL #3049]

5788. [bug] An assertion could occur if a catalog zone event was
scheduled while the task manager was being shut
down. [GL #3074]

5787. [doc] Update 'auto-dnssec' documentation, it may only be
activated at zone level. [GL #3023]

5786. [bug] Defer detaching from zone->raw in zone_shutdown() if
the zone is in the process of being dumped to disk, to
ensure that the unsigned serial number information is
always written in the raw-format header of the signed
version on an inline-signed zone. [GL #3071]

5785. [bug] named could leak memory when two dnssec-policy clauses
had the same name. named failed to log this error.
[GL #3085]

5776. [bug] Add a missing isc_condition_destroy() for nmsocket
condition variable and add missing isc_mutex_destroy()
for nmworker lock. [GL #3051]

5676. [func] Memory use in named was excessive. This has been
addressed by:
- Replacing locked memory pools with normal memory
allocations.
- Reducing the number of retained free items in
unlocked memory pools.
- Disabling the internal allocator by default.
"named -M internal" turns it back on.
[GL #2398]

--- 9.16.24 released ---

5773. [func] Change the message when accepting TCP connection has
failed to say "Accepting TCP connection failed" and
change the log level for ISC_R_NOTCONNECTED, ISC_R_QUOTA
and ISC_R_SOFTQUOTA results codes from ERROR to INFO.
[GL #2700]

5768. [bug] dnssec-dsfromkey failed to omit revoked keys. [GL #853]

5764. [bug] dns_sdlz_putrr failed to process some valid resource
records. [GL #3021]

5762. [bug] Fix a "named" crash related to removing and restoring a
`catalog-zone` entry in the configuration file and
running `rndc reconfig`. [GL #1608]

5758. [bug] mdig now honors the operating system's preferred
ephemeral port range. [GL #2374]

5757. [test] Replace sed in nsupdate system test with awk to
construct the nsupdate command. The sed expression
was not reliably changing the ttl. [GL #3003]

--- 9.16.23 released ---

5752. [bug] Fix an assertion failure caused by missing member zones
during a reload of a catalog zone. [GL #2308]

5750. [bug] Fix a bug when comparing two RSA keys. There was a typo
which caused the "p" prime factors to not being
compared. [GL #2972]

5737. [bug] Address Coverity warning in lib/dns/dnssec.c.
[GL #2935]

--- 9.16.22 released ---

5736. [security] The "lame-ttl" option is now forcibly set to 0. This
effectively disables the lame server cache, as it could
previously be abused by an attacker to significantly
degrade resolver performance. (CVE-2021-25219)
[GL #2899]

5724. [bug] Address a potential deadlock when checking zone content
consistency. [GL #2908]

5723. [bug] Change 5709 broke backward compatibility for the
"check-names master ..." and "check-names slave ..."
options. This has been fixed. [GL #2911]

5720. [contrib] Old-style DLZ drivers that had to be enabled at
build-time have been marked as deprecated. [GL #2814]

5719. [func] The "map" zone file format has been marked as
deprecated. [GL #2882]

5717. [func] The "cache-file" option, which was documented as "for
testing purposes only" and not to be used, has been
removed. [GL #2903]

5716. [bug] Multiple library names were mistakenly passed to the
krb5-config utility when ./configure was invoked with
the --with-gssapi=[/path/to/]krb5-config option. This
has been fixed by invoking krb5-config separately for
each required library. [GL #2866]

5715. [func] Add a check for ports specified in "*-source(-v6)"
options clashing with a global listening port. Such a
configuration was already unsupported, but it failed
silently; it is now treated as an error. [GL #2888]

5714. [bug] Remove the "adjust interface" mechanism which was
responsible for setting up listeners on interfaces when
the "*-source(-v6)" address and port were the same as
the "listen-on(-v6)" address and port. Such a
configuration is no longer supported; under certain
timing conditions, that mechanism could prevent named
from listening on some TCP ports. This has been fixed.
[GL #2852]

5712. [doc] Add deprecation notice about removing native PKCS#11
support in the next major BIND 9 release. [GL #2691]

--- 9.16.21 released ---

5711. [bug] "map" files exceeding 2GB in size failed to load due to
a size comparison that incorrectly treated the file size
as a signed integer. [GL #2878]

5710. [port] win32: incorrect parentheses resulted in the wrong
sizeof() tests being used to pick the appropriate
Windows atomic operations for the object's size.
[GL #2891]

5709. [cleanup] Enum values throughout the code have been updated
to use the terms "primary" and "secondary" instead of
"master" and "slave", respectively. [GL #1944]

5708. [bug] The thread-local isc_tid_v variable was not properly
initialized when running BIND 9 as a Windows Service,
leading to a crash on startup. [GL #2837]

5705. [bug] Change #5686 altered the internal memory structure of
zone databases, but neglected to update the MAPAPI value
for zone files in "map" format. This caused named to
attempt to load incompatible map files, triggering an
assertion failure on startup. The MAPAPI value has now
been updated, so named rejects outdated files when
encountering them. [GL #2872]

5704. [bug] Change #5317 caused the EDNS TCP Keepalive option to be
ignored inadvertently in client requests. It has now
been fixed and this option is handled properly again.
[GL #1927]

5701. [bug] named-checkconf failed to detect syntactically invalid
values of the "key" and "tls" parameters used to define
members of remote server lists. [GL #2461]

5700. [bug] When a member zone was removed from a catalog zone,
journal files for the former were not deleted.
[GL #2842]

5699. [func] Data structures holding DNSSEC signing statistics are
now grown and shrunk as necessary upon key rollover
events. [GL #1721]

5698. [bug] When a DNSSEC-signed zone which only has a single
signing key available is migrated to use KASP, that key
is now treated as a Combined Signing Key (CSK).
[GL #2857]

5696. [protocol] Support for HTTPS and SVCB record types has been added.
(This does not include ADDITIONAL section processing for
these record types, only basic support for RR type
parsing and printing.) [GL #1132]

5694. [bug] Stale data in the cache could cause named to send
non-minimized queries despite QNAME minimization being
enabled. [GL #2665]

5691. [bug] When a dynamic zone was made available in another view
using the "in-view" statement, running "rndc freeze"
always reported an "already frozen" error even though
the zone was successfully frozen. [GL #2844]

5690. [func] dnssec-signzone now honors Predecessor and Successor
metadata found in private key files: if a signature for
an RRset generated by the inactive predecessor exists
and does not need to be replaced, no additional
signature is now created for that RRset using the
successor key. This enables dnssec-signzone to gradually
replace RRSIGs during a ZSK rollover. [GL #1551]


Revision tags: bind-9-16-20 cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base bind-9-16-15 bind-9-16-12
# 1.1.1.4 19-Feb-2021 christos

--- 9.16.12 released ---

5578. [protocol] Make "check-names" accept A records below "_spf",
"_spf_rate", and "_spf_verify" labels in order to cater
for the "exists" SPF mechanism specified in RFC 7208
section 5.7 and appendix D.1. [GL #2377]

5577. [bug] Fix the "three is a crowd" key rollover bug in KASP by
correctly implementing Equation (2) of the "Flexible and
Robust Key Rollover" paper. [GL #2375]

5575. [bug] When migrating to KASP, BIND 9 considered keys with the
"Inactive" and/or "Delete" timing metadata to be
possible active keys. This has been fixed. [GL #2406]

5572. [bug] Address potential double free in generatexml().
[GL #2420]

5571. [bug] named failed to start when its configuration included a
zone with a non-builtin "allow-update" ACL attached.
[GL #2413]

5570. [bug] Improve performance of the DNSSEC verification code by
reducing the number of repeated calls to
dns_dnssec_keyfromrdata(). [GL #2073]

5569. [bug] Emit useful error message when "rndc retransfer" is
applied to a zone of inappropriate type. [GL #2342]

5568. [bug] Fixed a crash in "dnssec-keyfromlabel" when using ECDSA
keys. [GL #2178]

5567. [bug] Dig now reports unknown dash options while pre-parsing
the options. This prevents "-multi" instead of "+multi"
from reporting memory usage before ending option parsing
with "Invalid option: -lti". [GL #2403]

5566. [func] Add "stale-answer-client-timeout" option, which is the
amount of time a recursive resolver waits before
attempting to answer the query using stale data from
cache. [GL #2247]

5565. [func] The SONAMEs for BIND 9 libraries now include the current
BIND 9 version number, in an effort to tightly couple
internal libraries with a specific release. [GL #2387]

5562. [security] Fix off-by-one bug in ISC SPNEGO implementation.
(CVE-2020-8625) [GL #2354]

5561. [bug] KASP incorrectly set signature validity to the value of
the DNSKEY signature validity. This is now fixed.
[GL #2383]

5560. [func] The default value of "max-stale-ttl" has been changed
from 12 hours to 1 day and the default value of
"stale-answer-ttl" has been changed from 1 second to 30
seconds, following RFC 8767 recommendations. [GL #2248]

5456. [func] Added "primaries" as a synonym for "masters" in
named.conf, and "primary-only" as a synonym for
"master-only" in the parameters to "notify", to bring
terminology up-to-date with RFC 8499. [GL #1948]

5362. [func] Limit the size of IXFR responses so that AXFR will
be used instead if it would be smaller. This is
controlled by the "max-ixfr-ratio" option, which
is a percentage representing the ratio of IXFR size
to the size of the entire zone. This value cannot
exceed 100%, which is the default. [GL #1515]

--- 9.16.11 released ---

5559. [bug] The --with-maxminddb=PATH form of the build-time option
enabling support for libmaxminddb was not working
correctly. This has been fixed. [GL #2366]

5557. [bug] Prevent RBTDB instances from being destroyed by multiple
threads at the same time. [GL #2317]

5556. [bug] Further tweak newline printing in dnssec-signzone and
dnssec-verify. [GL #2359]

5555. [bug] server->reload_status was not properly initialized.
[GL #2361]

5554. [bug] dnssec-signzone and dnssec-verify were missing newlines
between log messages. [GL #2359]

5553. [bug] When reconfiguring named, removing "auto-dnssec" did not
turn off DNSSEC maintenance. [GL #2341]

5552. [func] When switching to "dnssec-policy none;", named now
permits a safe transition to insecure mode and publishes
the CDS and CDNSKEY DELETE records, as described in RFC
8078. [GL #1750]

5551. [bug] named no longer attempts to assign threads to CPUs
outside the CPU affinity set. Thanks to Ole Bj��rn
Hessen. [GL #2245]

5550. [func] dnssec-signzone and named now log a warning when falling
back to the "increment" SOA serial method. [GL #2058]

5545. [func] OS support for load-balanced sockets is no longer
required to receive incoming queries in multiple netmgr
threads. [GL #2137]

5543. [bug] Fix UDP performance issues caused by making netmgr
callbacks asynchronous-only. [GL #2320]

5542. [bug] Refactor netmgr. [GL #1920] [GL #2034] [GL #2061]
[GL #2194] [GL #2221] [GL #2266] [GL #2283] [GL #2318]
[GL #2321]

--- 9.16.10 released ---

5544. [func] Restore the default value of "nocookie-udp-size" to 4096
bytes. [GL #2250]

5541. [func] Adjust the "max-recursion-queries" default from 75 to
100. [GL #2305]

5540. [port] Fix building with native PKCS#11 support for AEP Keyper.
[GL #2315]

5539. [bug] Tighten handling of missing DNS COOKIE responses over
UDP by falling back to TCP. [GL #2275]

5538. [func] Add NSEC3 support to KASP. A new option for
"dnssec-policy", "nsec3param", can be used to set the
desired NSEC3 parameters. NSEC3 salt collisions are
automatically prevented during resalting. Salt
generation is now logged with zone context. [GL #1620]

5534. [bug] The CNAME synthesized from a DNAME was incorrectly
followed when the QTYPE was CNAME or ANY. [GL #2280]

--- 9.16.9 released ---

5533. [func] Add the "stale-refresh-time" option, a time window that
starts after a failed lookup, during which a stale RRset
is served directly from cache before a new attempt to
refresh it is made. [GL #2066]

5530. [bug] dnstap did not capture responses to forwarded UPDATE
requests. [GL #2252]

5527. [bug] A NULL pointer dereference occurred when creating an NTA
recheck query failed. [GL #2244]

5525. [bug] Change 5503 inadvertently broke cross-compilation by
replacing a call to AC_LINK_IFELSE() with a call to
AC_RUN_IFELSE() in configure.ac. This has been fixed,
making cross-compilation possible again. [GL #2237]

5523. [bug] The initial lookup in a zone transitioning to/from a
signed state could fail if the DNSKEY RRset was not
found. [GL #2236]

5522. [bug] Fixed a race/NULL dereference in TCPDNS send. [GL #2227]

5520. [bug] Fixed a number of shutdown races, reference counting
errors, and spurious log messages that could occur
in the network manager. [GL #2221]

5518. [bug] Stub zones now work correctly with primary servers using
"minimal-responses yes". [GL #1736]

5517. [bug] Do not treat UV_EOF as a TCP4RecvErr or a TCP6RecvErr.
[GL #2208]

--- 9.16.8 released ---

5516. [func] The default EDNS buffer size has been changed from 4096
to 1232 bytes. [GL #2183]

5515. [func] Add 'rndc dnssec -rollover' command to trigger a manual
rollover for a specific key. [GL #1749]

5514. [bug] Fix KASP expected key size for Ed25519 and Ed448.
[GL #2171]

5513. [doc] The ARM section describing the "rrset-order" statement
was rewritten to make it unambiguous and up-to-date with
the source code. [GL #2139]

5512. [bug] "rrset-order" rules using "order none" were causing
named to crash despite named-checkconf treating them as
valid. [GL #2139]

5511. [bug] 'dig -u +yaml' failed to display timestamps to the
microsecond. [GL #2190]

5510. [bug] Implement the attach/detach semantics for dns_message_t
to fix a data race in accessing an already-destroyed
fctx->rmessage. [GL #2124]

5509. [bug] filter-aaaa: named crashed upon shutdown if it was in
the process of recursing for A RRsets. [GL #1040]

5508. [func] Added new parameter "-expired" for "rndc dumpdb" that
also prints expired RRsets (awaiting cleanup) to the
dump file. [GL #1870]

5507. [bug] Named could compute incorrect SIG(0) responses.
[GL #2109]

5506. [bug] Properly handle failed sysconf() calls, so we don't
report invalid memory size. [GL #2166]

5505. [bug] Updating contents of a mixed-case RPZ could cause some
rules to be ignored. [GL #2169]

5503. [bug] Cleaned up reference counting of network manager
handles, now using isc_nmhandle_attach() and _detach()
instead of _ref() and _unref(). [GL #2122]

--- 9.16.7 released ---

5501. [func] Log CDS/CDNSKEY publication. [GL #1748]

5500. [bug] Fix (non-)publication of CDS and CDNSKEY records.
[GL #2103]

5499. [func] Add '-P ds' and '-D ds' arguments to dnssec-settime.
[GL #1748]

5497. [bug] 'dig +bufsize=0' failed to disable EDNS. [GL #2054]

5496. [bug] Address a TSAN report by ensuring each rate limiter
object holds a reference to its task. [GL #2081]

5495. [bug] With query minimization enabled, named failed to
resolve ip6.arpa. names that had extra labels to the
left of the IPv6 part. [GL #1847]

5494. [bug] Silence the EPROTO syslog message on older systems.
[GL #1928]

5493. [bug] Fix off-by-one error when calculating new hash table
size. [GL #2104]

5492. [bug] Tighten LOC parsing to reject a period (".") and/or "m"
as a value. Fix handling of negative altitudes which are
not whole meters. [GL #2074]

5491. [bug] rbtversion->glue_table_size could be read without the
appropriate lock being held. [GL #2080]

5489. [bug] Named erroneously accepted certain invalid resource
records that were incorrectly processed after
subsequently being written to disk and loaded back, as
the wire format differed. Such records include: CERT,
IPSECKEY, NSEC3, NSEC3PARAM, NXT, SIG, TLSA, WKS, and
X25. [GL !3953]

5488. [bug] NTA code needed to have a weak reference on its
associated view to prevent the latter from being deleted
while NTA tests were being performed. [GL #2067]

5486. [func] Add 'rndc dnssec -checkds' command, which signals to
named that the DS record for a given zone or key has
been updated in the parent zone. [GL #1613]

--- 9.16.6 released ---

5484. [func] Expire zero TTL records quickly rather than using them
for stale answers. [GL #1829]

5483. [func] A new configuration option "stale-cache-enable" has been
introduced to enable or disable keeping stale answers in
cache. [GL #1712]

5482. [bug] If the Duplicate Address Detection (DAD) mechanism had
not yet finished after adding a new IPv6 address to the
system, BIND 9 would fail to bind to IPv6 addresses in a
tentative state. [GL #2038]

5481. [security] "update-policy" rules of type "subdomain" were
incorrectly treated as "zonesub" rules, which allowed
keys used in "subdomain" rules to update names outside
of the specified subdomains. The problem was fixed by
making sure "subdomain" rules are again processed as
described in the ARM. (CVE-2020-8624) [GL #2055]

5480. [security] When BIND 9 was compiled with native PKCS#11 support, it
was possible to trigger an assertion failure in code
determining the number of bits in the PKCS#11 RSA public
key with a specially crafted packet. (CVE-2020-8623)
[GL #2037]

5479. [security] named could crash in certain query resolution scenarios
where QNAME minimization and forwarding were both
enabled. (CVE-2020-8621) [GL #1997]

5478. [security] It was possible to trigger an assertion failure by
sending a specially crafted large TCP DNS message.
(CVE-2020-8620) [GL #1996]

5477. [bug] The idle timeout for connected TCP sockets, which was
previously set to a high fixed value, is now derived
from the client query processing timeout configured for
a resolver. [GL #2024]

5476. [security] It was possible to trigger an assertion failure when
verifying the response to a TSIG-signed request.
(CVE-2020-8622) [GL #2028]

5475. [bug] Wildcard RPZ passthru rules could incorrectly be
overridden by other rules that were loaded from RPZ
zones which appeared later in the "response-policy"
statement. This has been fixed. [GL #1619]

5474. [bug] dns_rdata_hip_next() failed to return ISC_R_NOMORE
when it should have. [GL !3880]

5473. [func] The RBT hash table implementation has been changed
to use a faster hash function (HalfSipHash2-4) and
Fibonacci hashing for better distribution. Setting
"max-cache-size" now preallocates a fixed-size hash
table so that rehashing does not cause resolution
brownouts while the hash table is grown. [GL #1775]

5471. [bug] The introduction of KASP support inadvertently caused
the second field of "sig-validity-interval" to always be
calculated in hours, even in cases when it should have
been calculated in days. This has been fixed. (Thanks to
Tony Finch.) [GL !3735]

5469. [port] On illumos, a constant called SEC is already defined in
<sys/time.h>, which conflicts with an identically named
constant in libbind9. This conflict has been resolved.
[GL #1993]

5468. [bug] Addressed potential double unlock in process_fd().
[GL #2005]

5466. [bug] Addressed an error in recursive clients stats reporting.
[GL #1719]

5465. [func] Added fallback to built-in trust-anchors, managed-keys,
or trusted-keys if the bindkeys-file (bind.keys) cannot
be parsed. [GL #1235]

5464. [bug] Requesting more than 128 files to be saved when rolling
dnstap log files caused a buffer overflow. This has been
fixed. [GL #1989]

5462. [bug] Move LMDB locking from LMDB itself to named. [GL #1976]

5461. [bug] The STALE rdataset header attribute was updated while
the write lock was not being held, leading to incorrect
statistics. The header attributes are now converted to
use atomic operations. [GL #1475]


Revision tags: netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bind-9-16-5 bind-9-16-3 phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 bind-9-14-8 phil-wifi-20191119 bind-9-14-7 bind-9-14-5 netbsd-9-base phil-wifi-20190609 bind-9-14-1 bind-9-13-7
# 1.1.1.3 24-Feb-2019 christos

branches: 1.1.1.3.2;
--- 9.13.7 released ---

5165. [contrib] Removed SDB drivers from contrib; they're obsolete.
[GL #428]

5164. [bug] Correct errno to result translation in dlz filesystem
modules. [GL #884]

5163. [cleanup] Out-of-tree builds failed --enable-dnstap. [GL #836]

5162. [cleanup] Improve dnssec-keymgr manual. Thanks to Tony Finch.
[GL !1518]

5161. [bug] Do not require the SEP bit to be set for mirror zone
trust anchors. [GL #873]

5160. [contrib] Added DNAME support to the DLZ LDAP schema. Also
fixed a compilation bug affecting several DLZ
modules. [GL #872]

5159. [bug] dnssec-coverage was incorrectly ignoring
names specified on the command line without
trailing dots. [GL !1478]

5158. [protocol] Add support for AMTRELAY and ZONEMD. [GL #867]

5157. [bug] Nslookup now errors out if there are extra command
line arguments. [GL #207]

5141. [security] Zone transfer controls for writable DLZ zones were
not effective as the allowzonexfr method was not being
called for such zones. (CVE-2019-6465) [GL #790]

5118. [security] Named could crash if it is managing a key with
`managed-keys` and the authoritative zone is rolling
the key to an unsupported algorithm. (CVE-2018-5745)
[GL #780]

5110. [security] Named leaked memory if there were multiple Key Tag
EDNS options present. (CVE-2018-5744) [GL #772]

--- 9.13.6 released ---

5156. [doc] Extended and refined the section of the ARM describing
mirror zones. [GL #774]

5155. [func] "named -V" now outputs the default paths to
named.conf, rndc.conf, bind.keys, and other
files used or created by named and other tools, so
that the correct paths to these files can quickly be
determined regardless of the configure settings
used when BIND was built. [GL #859]

5154. [bug] dig: process_opt could be called twice on the same
message leading to a assertion failure. [GL #860]

5153. [func] Zone transfer statistics (size, number of records, and
number of messages) are now logged for outgoing
transfers as well as incoming ones. [GL #513]

5152. [func] Improved logging of DNSSEC key events:
- Zone signing and DNSKEY maintenance events are
now logged to the "dnssec" category
- Messages are now logged when DNSSEC keys are
pubished, activated, inactivated, deleted,
or revoked.
[GL #714]

5151. [func] Options that have been been marked as obsolete in
named.conf for a very long time are now fatal
configuration errors. [GL #358]

5150. [cleanup] Remove the ability to compile BIND with assertions
disabled. [GL #735]

5149. [func] "rndc dumpdb" now prints a line above a stale RRset
indicating how long the data will be retained in the
cache for emergency use. [GL #101]

5148. [bug] named did not sign the TKEY response. [GL #821]

5147. [bug] dnssec-keymgr: Add a five-minute margin to better
handle key events close to 'now'. [GL #848]

5146. [placeholder]

5145. [func] Use atomics instead of locked variables for isc_quota
and isc_counter. [GL !1389]

5144. [bug] dig now returns a non-zero exit code when a TCP
connection is prematurely closed by a peer more than
once for the same lookup. [GL #820]

5143. [bug] dnssec-keymgr and dnssec-coverage failed to find
key files for zone names ending in ".". [GL #560]

5142. [cleanup] Removed "configure --disable-rpz-nsip" and
"--disable-rpz-nsdname" options. "nsip-enable"
and "nsdname-enable" both now default to yes,
regardless of compile-time settings. [GL #824]

5140. [bug] Don't immediately mark existing keys as inactive and
deleted when running dnssec-keymgr for the first
time. [GL #117]

5139. [bug] If possible, don't use forwarders when priming.
This ensures we can get root server IP addresses
from priming query response glue, which may not
be present if the forwarding server is returning
minimal responses. [GL #752]

5138. [bug] Under some circumstances named could hit an assertion
failure when doing qname minimization when using
forwarders. [GL #797]

5137. [func] named now logs messages whenever a mirror zone becomes
usable or unusable for resolution purposes. [GL #818]

5136. [cleanup] Check in named-checkconf that allow-update and
allow-update-forwarding are not set at the
view/options level; fix documentation. [GL #512]

5135. [port] sparc: Use smt_pause() instead of pause. [GL #816]

5134. [bug] win32: WSAStartup was not called before getservbyname
was called. [GL #590]

5133. [bug] 'rndc managed-keys' didn't handle class and view
correctly and failed to add new lines between each
view. [GL !1327]

5132. [bug] Fix race condition in cleanup part of dns_dt_create().
[GL !1323]

5131. [cleanup] Address Coverity warnings. [GL #801]

5130. [cleanup] Remove support for l10n message catalogs. [GL #709]

5129. [contrib] sdlz_helper.c:build_querylist was not properly
splitting the query string. [GL #798]

5128. [bug] Refreshkeytime was not being updated for managed
keys zones. [GL #784]

5127. [bug] rcode.c:maybe_numeric failed to handle NUL in text
regions. [GL #807]

5126. [bug] Named incorrectly accepted empty base64 and hex encoded
fields when reading master files. [GL #807]

5125. [bug] Allow for up to 100 records or 64k of data when caching
a negative response. [GL #804]

5124. [bug] Named could incorrectly return FORMERR rather than
SERVFAIL. [GL #804]

5123. [bug] dig could hang indefinitely after encountering an error
before creating a TCP socket. [GL #692]

5122. [bug] In a "forward first;" configuration, a forwarder
timeout did not prevent that forwarder from being
queried again after falling back to full recursive
resolution. [GL #315]

5121. [contrib] dlz_stub_driver.c fails to return ISC_R_NOTFOUND on none
matching zone names. [GL !1299]

5120. [placeholder]

5119. [placeholder]

5117. [placeholder]

5116. [bug] Named/named-checkconf triggered a assertion when
a mirror zone's name is bad. [GL #778]

5115. [bug] Allow unsupported algorithms in zone when not used for
signing with dnssec-signzone. [GL #783]

5114. [func] Include a 'reconfig/reload in progress' status line
in rndc status, use it in tests.

5113. [port] Fixed a Windows build error.

5112. [bug] Named/named-checkconf could dump core if there was
a missing masters clause and a bad notify clause.
[GL #779]

5111. [bug] Occluded DNSKEY records could make it into the
delegating NSEC/NSEC3 bitmap. [GL #742]

5109. [cleanup] Remove support for RSAMD5 algorithm. [GL #628]


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 bind-9-13-5-W1
# 1.1.1.2 09-Jan-2019 christos

Jump into the 9.13 train since the 9.12 train is about to expire (March 2019).

--- 9.13.5-W1 released ---

5113. [port] Fixed a Windows build error.

--- 9.13.5 released ---

5108. [bug] Named could fail to determine bottom of zone when
removing out of date keys leading to invalid NSEC
and NSEC3 records being added to the zone. [GL #771]

5107. [bug] 'host -U' did not work. [GL #769]

5106. [experimental] A new "plugin" mechanism has been added to allow
extension of query processing functionality through
the use of dynamically loadable libraries. A
"filter-aaaa.so" plugin has been implemented,
replacing the filter-aaaa feature that was formerly
implemented as a native part of BIND.

The "filter-aaaa", "filter-aaaa-on-v4" and
"filter-aaaa-on-v6" options can no longer be
configured using native named.conf syntax. However,
loading the filter-aaaa.so plugin and setting its
parameters provides identical functionality.

Note that the plugin API is a work in progress and
is likely to evolve as further plugins are
implemented. [GL #15]

5105. [bug] Fix a race between process_fd and socketclose in
unix socket code. [GL #744]

5104. [cleanup] Log clearer informational message when a catz zone
is overridden by a zone in named.conf.
Thanks to Tony Finch. [GL !1157]

5103. [bug] Add missing design by contract tests to dns_catz*.
[GL #748]

5102. [bug] dnssec-coverage failed to use the default TTL when
checking KSK deletion times leading to a exception.
[GL #585]

5101. [bug] Fix default installation path for Python modules and
remove the dnspython dependency accidentally introduced
by change 4970. [GL #730]

5100. [func] Pin resolver tasks to specific task queues. [GL !1117]

5099. [func] Failed mutex and conditional creations are always
fatal. [GL #674]

--- 9.13.4 released ---

5098. [func] Failed memory allocations are now fatal. [GL #674]

5097. [cleanup] Remove embedded ATF unit testing framework
from BIND source distribution. [GL !875]

5096. [func] Use multiple event loops in socket code, and
make network threads CPU-affinitive. This
significantly improves performance on large
systems. [GL #666]

5095. [test] Converted all unit tests from ATF to CMocka;
removed the source code for the ATF libraries.
Build with "configure --with-cmocka" to enable
unit testing. [GL #620]

5094. [func] Add 'dig -r' to disable reading of .digrc. [GL !970]

5093. [bug] Log lame qname-minimization servers only if they're
really lame. [GL #671]

5092. [bug] Address memory leak on SIGTERM in nsupdate when using
GSS-TSIG. [GL #558]

5091. [func] Two new global and per-view options min-cache-ttl
and min-ncache-ttl [GL #613]

5090. [bug] dig and mdig failed to properly preparse dash value
pairs when value was a seperate argument and started
with a dash. [GL #584]

5089. [bug] Restore localhost fallback in dig and host which is
used when no nameserver addresses present in
/etc/resolv.conf are usable due to the requested
address family restrictions. [GL #433]

5088. [bug] dig/host/nslookup could crash when interrupted close to
a query timeout. [GL #599]

5087. [test] Check that result tables are complete. [GL #676]

5086. [func] Log of RPZ now includes the QTYPE and QCLASS. [GL #623]

5085. [bug] win32: Restore looking up nameservers, search list,
etc. [GL #186]

5084. [placeholder]

5083. [func] Add autoconf macro AX_POSIX_SHELL, so we
can use POSIX-compatible shell features
in the scripts.

5082. [bug] Fixed a race that could cause a crash in
dig/host/nslookup. [GL #650]

5081. [func] Use per-worker queues in task manager, make task
runners CPU-affine. [GL #659]

5080. [func] Improvements to "rndc nta" user interface:
- catch and report invalid command line options
- when removing an NTA from all views, do not
abort with an error if the NTA was not found
in one of the views
- include the view name in "rndc nta -dump"
output, for consistency with the add and remove
actions
Thanks to Tony Finch. [GL !816]

5079. [func] Disable IDN processing in dig and nslookup
when not on a tty. [GL #653]

5078. [cleanup] Require python components to be explicitly disabled if
python is not available on unix platforms. [GL #601]

5077. [cleanup] Remove ip6.int support (-i) from dig and mdig.
[GL !969]

5076. [bug] "require-server-cookie" was not effective if
"rate-limit" was configured. [GL #617]

5075. [bug] Refresh nameservers from cache when sending final
query in qname minimization. [GL #16]

5074. [cleanup] Remove vector socket functions - isc_socket_recvv(),
isc_socket_sendtov(), isc_socket_sendtov2(),
isc_socket_sendv() - in order to simplify socket code.
[GL #645]

5073. [bug] Destroy a task first when destroying rpzs and catzs.
[GL #84]

5072. [bug] Add unit tests for isc_buffer_copyregion() and fix its
behavior for auto-reallocated buffers. [GL #644]

5071. [bug] Comparision of NXT records was broken. [GL #631]

5070. [bug] Record types which support a empty rdata field were
not handling the empty rdata field case. [GL #638]

5069. [bug] Fix a hang on in RPZ when named is shutdown during RPZ
zone update. [GL !907]

5068. [bug] Fix a race in RPZ with min-update-interval set to 0.
[GL #643]

5067. [bug] Don't minimize qname when sending the query
to a forwarder. [GL #361]

5066. [cleanup] Allow unquoted strings to be used as a zone names
in response-policy statements. [GL #641]

5065. [bug] Only set IPV6_USE_MIN_MTU on IPv6. [GL #553]

5064. [test] Initalize TZ environment variable before calling
dns_test_begin in dnstap_test. [GL #624]

5063. [test] In statschannel test try a few times before failing
when checking if the compressed output is the same as
uncompressed. [GL !909]

5062. [func] Use non-crypto-secure PRNG to generate nonces for
cookies. [GL !887]

5061. [protocol] Add support for EID and NIMLOC. [GL #626]

5060. [bug] GID, UID and UINFO could not be loaded using unknown
record format. [GL #627]

5059. [bug] Display a per-view list of zones in the web interface.
[GL #427]

5058. [func] Replace old message digest and hmac APIs with more
generic isc_md and isc_hmac APIs, and convert their
respective tests to cmocka. [GL #305]

5057. [protocol] Add support for ATMA. [GL #619]

5056. [placeholder]

5055. [func] A default list of primary servers for the root zone is
now built into named, allowing the "masters" statement
to be omitted when configuring an IANA root zone
mirror. [GL #564]

5054. [func] Attempts to use mirror zones with recursion disabled
are now considered a configuration error. [GL #564]

5053. [func] The only valid zone-level NOTIFY settings for mirror
zones are now "notify no;" and "notify explicit;".
[GL #564]

5052. [func] Mirror zones are now configured using "type mirror;"
rather than "mirror yes;". [GL #564]

5051. [doc] Documentation incorrectly stated that the
"server-addresses" static-stub zone option accepts
custom port numbers. [GL #582]

5050. [bug] The libirs version of getaddrinfo() was unable to parse
scoped IPv6 addresses present in /etc/resolv.conf.
[GL #187]

5049. [cleanup] QNAME minimization has been deeply refactored. [GL #16]

5048. [func] Add configure option to enable and enforce FIPS mode
in BIND 9. [GL #506]

5047. [bug] Messages logged for certain query processing failures
now include a more specific error description if it is
available. [GL #572]

5046. [bug] named could crash during shutdown if an RPZ
reload was in progress. [RT #46210]

5045. [func] Remove support for DNSSEC algorithms 3 (DSA)
and 6 (DSA-NSEC3-SHA1). [GL #22]

5044. [cleanup] If "dnssec-enable" is no, then "dnssec-validation"
now also defaults to no. [GL #388]

5043. [bug] Fix creating and validating EdDSA signatures. [GL #579]

5042. [test] Make the chained delegations in reclimit behave
like they would in a regular name server. [GL #578]

5041. [test] The chain test contains a incomplete delegation.
[GL #568]

5040. [func] Extended dnstap so that it can log UPDATE requests
and responses as separate message types. Thanks
to Greg Rabil. [GL #570]

5039. [bug] Named could fail to preserve owner name case of new
RRset. [GL #420]

5038. [bug] Chaosnet addresses were compared incorrectly.
[GL #562]

5037. [func] "allow-recursion-on" and "allow-query-cache-on"
each now default to the other if only one of them
is set, in order to be more consistent with the way
"allow-recursion" and "allow-query-cache" work.
Also we now ensure that both query-cache ACLs are
checked when determining cache access. [GL #319]

5036. [cleanup] Fixed a spacing/formatting error in some RPZ-related
error messages in the log. [GL !805]

5035. [test] Fixed errors that prevented the DNSRPS subtests
from running in the rpz and rpzrecurse system
tests. [GL #503]

5034. [bug] A race between threads could prevent zone maintenance
scheduled immediately after zone load from being
performed. [GL #542]

5033. [bug] When adding NTAs to multiple views using "rndc nta",
the text returned via rndc was incorrectly terminated
after the first line, making it look as if only one
NTA had been added. Also, it was not possible to
differentiate between views with the same name but
different classes; this has been corrected with the
addition of a "-class" option. [GL #105]

5032. [func] Add krb5-selfsub and ms-selfsub update policy rules.
[GL #511]

5031. [cleanup] Various defines in platform.h has been either dropped
if always or never triggered on supported platforms
or replaced with config.h equivalents if the defines
didn't have any impact on public headers. Workarounds
for LinuxThreads have been removed because NPTL is
available since Linux kernel 2.6.0. [GL #525]

5030. [bug] Align CMSG buffers to a 64-bit boundary, fixes crash
on architectures with strict alignment. [GL #521]

--- 9.13.3 released ---

5029. [func] Workarounds for servers that misbehave when queried
with EDNS have been removed, because these broken
servers and the workarounds for their noncompliance
cause unnecessary delays, increase code complexity,
and prevent deployment of new DNS features. See
https://dnsflagday.net for further details. [GL #150]

5028. [bug] Spread the initial RRSIG expiration times over the
entire working sig-validity-interval when signing a
zone in named to even out re-signing and transfer
loads. [GL #418]

5027. [func] Set SO_SNDBUF size on sockets. [GL #74]

5026. [bug] rndc reconfig should not touch already loaded zones.
[GL #276]

5025. [cleanup] Remove isc_keyboard family of functions. [GL #178]

5024. [func] Replace custom assembly for atomic operations with
atomic support from the compiler. The code will now use
C11 stdatomic, or __atomic, or __sync builtins with GCC
or Clang compilers, and Interlocked functions with MSVC.
[GL #10]

5023. [cleanup] Remove wrappers that try to fix broken or incomplete
implementations of IPv6, pthreads and other core
functionality required and used by BIND. [GL #192]

5022. [doc] Update ms-self, ms-subdomain, krb5-self, and
krb5-subdomain documentation. [GL !708]

5021. [bug] dig returned a non-zero exit code when it received a
reply over TCP after a retry. [GL #487]

5020. [func] RNG uses thread-local storage instead of locks, if
supported by platform. [GL #496]

5019. [cleanup] A message is now logged when ixfr-from-differences is
set at zone level for an inline-signed zone. [GL #470]

5018. [bug] Fix incorrect sizeof arguments in lib/isc/pk11.c.
[GL !588]

5017. [bug] lib/isc/pk11.c failed to unlink the session before
releasing the lock which is unsafe. [GL !589]

5016. [bug] Named could assert with overlapping filter-aaaa and
dns64 acls. [GL #445]

5015. [bug] Reloading all zones caused zone maintenance to cease
for inline-signed zones. [GL #435]

5014. [bug] Signatures loaded from the journal for the signed
version of an inline-signed zone were not scheduled for
refresh. [GL #482]

5013. [bug] A referral response with a non-empty ANSWER section was
inadvertently being treated as an error. [GL #390]

5012. [bug] Fix lock order reversal in pk11_initialize. [GL !590]

5011. [func] Remove support for unthreaded named. [GL #478]

5010. [func] New "validate-except" option specifies a list of
domains beneath which DNSSEC validation should not
be performed. [GL #237]

5009. [bug] Upon an OpenSSL failure, the first error in the OpenSSL
error queue was not logged. [GL #476]

5008. [bug] "rndc signing -nsec3param ..." requests were silently
ignored for zones which were not yet loaded or
transferred. [GL #468]

5007. [cleanup] Replace custom ISC boolean and integer data types
with C99 stdint.h and stdbool.h types. [GL #9]

5006. [cleanup] Code preparing a delegation response was extracted from
query_delegation() and query_zone_delegation() into a
separate function in order to decrease code
duplication. [GL #431]

5005. [bug] dnssec-verify, and dnssec-signzone at the verification
step, failed on some validly signed zones. [GL #442]

5004. [bug] 'rndc reconfig' could cause inline zones to stop
re-signing. [GL #439]

5003. [bug] dns_acl_isinsecure did not handle geoip elements.
[GL #406]

5002. [bug] mdig: Handle malformed +ednsopt option, support 100
+ednsopt options per query rather than 100 total and
address memory leaks if +ednsopt was specified.
[GL #410]

5001. [bug] Fix refcount errors on error paths. [GL !563]

5000. [bug] named_server_servestale() could leave the server in
exclusive mode if an error occured. [GL #441]

4999. [cleanup] Remove custom printf implementation in lib/isc/print.c.
[GL #261]

4998. [test] Make resolver and cacheclean tests more civilized.

4997. [security] named could crash during recursive processing
of DNAME records when "deny-answer-aliases" was
in use. (CVE-2018-5740) [GL #387]

4996. [bug] dig: Handle malformed +ednsopt option. [GL #403]

4995. [test] Add tests for "tcp-self" update policy. [GL !282]

4994. [bug] Trust anchor telemetry queries were not being sent
upstream for locally served zones. [GL #392]

4993. [cleanup] Remove support for silently ignoring 'no-change' deltas
from BIND 8 when processing an IXFR stream. 'no-change'
deltas will now trigger a fallback to AXFR as the
recovery mechanism. [GL #369]

4992. [bug] The wrong address was being logged for trust anchor
telemetry queries. [GL #379]

4991. [bug] "rndc reconfig" was incorrectly handling zones whose
"mirror" setting was changed. [GL #381]

4990. [bug] Prevent a possible NULL reference in pkcs11-keygen.
[GL #401]

4989. [cleanup] IDN support in dig has been reworked. IDNA2003
fallbacks were removed in the process. [GL #384]

4988. [bug] Don't synthesize NXDOMAIN from NSEC for records under
a DNAME.

--- 9.13.2 released ---

4987. [cleanup] dns_rdataslab_tordataset() and its related
dns_rdatasetmethods_t callbacks were removed as they
were not being used by anything in BIND. [GL #371]

4986. [func] When built on Linux, BIND now requires the libcap
library to set process privileges, unless capability
support is explicitly overridden with "configure
--disable-linux-caps". [GL #321]

4985. [func] Add a new slave zone option, "mirror", to enable
serving a non-authoritative copy of a zone that
is subject to DNSSEC validation before being
used. For now, this option is only meant to
facilitate deployment of an RFC 7706-style local
copy of the root zone. [GL #33]

4984. [bug] Improve handling of very large incremental
zone transfers to prevent journal corruption. [GL #339]

4983. [func] Add the ability to not return a DNS COOKIE option
when one is present in the request (answer-cookie no;).
[GL #173]

4982. [cleanup] Return FORMERR if the question section is empty
and no COOKIE option is present; this restores
older behavior except in the newly specified
COOKIE case. [GL #260]

4981. [bug] Fix race in cmsg buffer usage in socket code.
[GL #180]

4980. [bug] Named-checkconf failed to detect bad in-view targets.
[GL #288]

4979. [placeholder]

4978. [test] Fix error handling and resolver configuration in the
"rpz" system test. [GL #312]

4977. [func] When starting up, log the same details that
would be reported by 'named -V'. [GL #247]

4976. [bug] Log the label with invalid prefix length correctly
when loading RPZ zones. [GL #254]

4975. [bug] The server cookie computation for sha1 and sha256 did
not match the method described in RFC 7873. [GL #356]

4974. [bug] Restore default rrset-order to random. [GL #336]

4973. [func] verifyzone() and the functions it uses were moved to
libdns and refactored to prevent exit() from being
called upon failure. A side effect of that is that
dnssec-signzone and dnssec-verify now check for memory
leaks upon shutdown. [GL #266]

4972. [func] Declare the 'rdata' argument for dns_rdata_tostruct()
to be const. [GL #341]

4971. [bug] dnssec-signzone and dnssec-verify did not treat records
below a DNAME as out-of-zone data. [GL #298]

4970. [func] Add QNAME minimization option to resolver. [GL #16]

4969. [cleanup] Refactor zone logging functions. [GL #269]

--- 9.13.1 released ---

4968. [bug] If glue records are signed, attempt to validate them.
[GL #209]

4967. [cleanup] Add "answer-cookie" to the parser, marked obsolete.

4966. [placeholder]

4965. [func] Add support for marking options as deprecated.
[GL #322]

4964. [bug] Reduce the probabilty of double signature when deleting
a DNSKEY by checking if the node is otherwise signed
by the algorithm of the key to be deleted. [GL #240]

4963. [test] ifconfig.sh now uses "ip" instead of "ifconfig",
if available, to configure the test interfaces on
linux. [GL #302]

4962. [cleanup] Move 'named -T' processing to its own function.
[GL #316]

4961. [protocol] Remove support for ECC-GOST (GOST R 34.11-94).
[GL #295]

4960. [security] When recursion is enabled, but the "allow-recursion"
and "allow-query-cache" ACLs are not specified,
they should be limited to local networks,
but were inadvertently set to match the default
"allow-query", thus allowing remote queries.
(CVE-2018-5738) [GL #309]

4959. [func] NSID logging (enabled by the "request-nsid" option)
now has its own "nsid" category, instead of using the
"resolver" category. [GL !332]

4958. [bug] Remove redundant space from NSEC3 record. [GL #281]

4957. [func] The default setting for "dnssec-validation" is now
"auto", which activates DNSSEC validation using the
IANA root key. (The default can be changed back to
"yes", which activates DNSSEC validation only when keys
are explicitly configured in named.conf, by building
BIND with "configure --disable-auto-validation".)
[GL #30]

4956. [func] Change isc_random() to be just PRNG using xoshiro128**,
and add isc_nonce_buf() that uses CSPRNG. [GL #289]

4955. [cleanup] Silence cppcheck warnings in lib/dns/master.c.
[GL #286]

4954. [func] Messages about serving of stale answers are now
directed to the "serve-stale" logging category.
Also clarified serve-stale documentation. [GL !323]

4953. [bug] Removed the option to build the red black tree
database without a hash table; the non-hashing
version was buggy and is not needed. [GL #184]

4952. [func] Authoritative server support in named for the
EDNS CLIENT-SUBNET option (which was experimental
and not practical to deploy) has been removed.

The ECS option is still supported in dig and mdig
via the +subnet option, and can be parsed and logged
when received by named, but it is no longer used
for ACL processing. The "geoip-use-ecs" option
is now obsolete; a warning will be logged if it is
used in named.conf. "ecs" tags in an ACL definition
are also obsolete and will cause the configuration
to fail to load. [GL #32]

4951. [protocol] Add "HOME.ARPA" to list of built in empty zones as
per RFC 8375. [GL #273]

--- 9.13.0 released ---

4950. [bug] ISC_SOCKEVENTATTR_TRUNC was not be set. [GL #238]

4949. [placeholder]

4948. [bug] When request-nsid is turned on, EDNS NSID options
should be logged at level info. Since change 3741
they have been logged at debug(3) by mistake.
[GL !290]

4947. [func] Replace all random functions with isc_random(),
isc_random_buf() and isc_random_uniform() API.
[GL #221]

4946. [bug] Additional glue was not being returned by resolver
for unsigned zones since change 4596. [GL #209]

4945. [func] BIND can no longer be built without DNSSEC support.
A cryptography provder (i.e., OpenSSL or a hardware
service module with PKCS#11 support) must be
available. [GL #244]

4944. [cleanup] Silence cppcheck portability warnings in
lib/isc/tests/buffer_test.c. [GL #239]

4943. [bug] Change 4687 consumed too much memory when running
system tests with --with-tuning=large. Reduced the
hash table size to 512 entries for 'named -m record'
restoring the previous memory footprint. [GL #248]

4942. [cleanup] Consolidate multiple instances of splitting of
batchline in dig into a single function. [GL #196]

4941. [cleanup] Silence clang static analyzer warnings. [GL #196]

4940. [cleanup] Extract the loop in dns__zone_updatesigs() into
separate functions to improve code readability.
[GL #135]

4939. [test] Add basic unit tests for update_sigs(). [GL #135]

4938. [placeholder]

4937. [func] Remove support for OpenSSL < 1.0.0 [GL #191]

4936. [func] Always use OpenSSL or PKCS#11 random data providers,
and remove the --{enable,disable}-crypto-rand configure
options. [GL #165]

4935. [func] Add support for LibreSSL >= 2.7.0 (some OpenSSL 1.1.0
call were added). [GL #191]

4934. [security] The serve-stale feature could cause an assertion failure
in rbtdb.c even when stale-answer-enable was false.
Simultaneous use of stale cache records and NSEC
aggressive negative caching could trigger a recursion
loop. (CVE-2018-5737) [GL #185]

4933. [bug] Not creating signing keys for an inline signed zone
prevented changes applied to the raw zone from being
reflected in the secure zone until signing keys were
made available. [GL #159]

4932. [bug] Bumped signed serial of an inline signed zone was
logged even when an error occurred while updating
signatures. [GL #159]

4931. [func] Removed the "rbtdb64" database implementation.
[GL #217]

4930. [bug] Remove a bogus check in nslookup command line
argument processing. [GL #206]

4929. [func] Add the ability to set RA and TC in queries made by
dig (+[no]raflag, +[no]tcflag). [GL #213]

4928. [func] The "dnskey-sig-validity" option allows
"sig-validity-interval" to be overriden for signatures
covering DNSKEY RRsets. [GL #145]

4927. [placeholder]

4926. [func] Add root key sentinel support. To disable, add
'root-key-sentinel no;' to named.conf. [GL #37]

4925. [func] Several configuration options that define intervals
can now take TTL value suffixes (for example, 2h or 1d)
in addition to integer parameters. These include
max-cache-ttl, max-ncache-ttl, max-policy-ttl,
fstrm-set-reopen-interval, interface-interval, and
min-update-interval. [GL #203]

4924. [cleanup] Clean up the isc_string_* namespace and leave
only strlcpy and strlcat. [GL #178]

4923. [cleanup] Refactor socket and socket event options into
enum types. [GL !135]

4922. [bug] dnstap: Log the destination address of client
packets rather than the interface address.
[GL #197]

4921. [cleanup] Add dns_fixedname_initname() and refactor the caller
code to make usage of the new function, as a part of
refactoring dns_fixedname_*() macros were turned into
functions. [GL #183]

4920. [cleanup] Clean up libdns removing most of the backwards
compatibility wrappers.

4919. [cleanup] Clean up the isc_hash_* namespace and leave only
the FNV-1a hash implementation. [GL #178]

4918. [bug] Fix double free after keygen error in dnssec-keygen
when OpenSSL >= 1.1.0 is used and RSA_generate_key_ex
fails. [GL #109]

4917. [func] Support 64 RPZ policy zones by default. [GL #123]

4916. [func] Remove IDNA2003 support and the bundled idnkit-1.0
library.

4915. [func] Implement IDNA2008 support in dig by adding support
for libidn2. New dig option +idnin has been added,
which allows to process invalid domain names much
like dig without IDN support. libidn2 version 2.0
or higher is needed for +idnout enabled by default.

4914. [security] A bug in zone database reference counting could lead to
a crash when multiple versions of a slave zone were
transferred from a master in close succession.
(CVE-2018-5736) [GL #134]

4913. [test] Re-implemented older unit tests in bin/tests as ATF,
removed the lib/tests unit testing library. [GL #115]

4912. [test] Improved the reliability of the 'cds' system test.
[GL #136]

4911. [test] Improved the reliability of the 'mkeys' system test.
[GL #128]

4910. [func] Update util/check-changes to work on release branches.
[GL #113]

4909. [bug] named-checkconf did not detect in-view zone collisions.
[GL #125]

4908. [test] Eliminated unnecessary waiting in the allow_query
system test. Also changed its name to allow-query.
[GL #81]

4907. [test] Improved the reliability of the 'notify' system
test. [GL #59]

4906. [func] Replace getquad() with inet_pton(), completing
change #4900. [GL #56]

4905. [bug] irs_resconf_load() ignored resolv.conf syntax errors
when "domain" or "search" options were present in that
file. [GL #110]

4904. [bug] Temporarily revert change #4859. [GL #124]

4903. [bug] "check-mx fail;" did not prevent MX records containing
IP addresses from being added to a zone by a dynamic
update. [GL #112]

4902. [test] Improved the reliability of the 'ixfr' system
test. [GL #66]

4901. [func] "dig +nssearch" now lists the name servers
for a domain that time out, as well as the servers
that respond. [GL #64]

4900. [func] Remove all uses of inet_aton(). As a result of this
change, IPv4 addresses are now only accepted in
dotted-quad format. [GL #13]

4899. [test] Convert most of the remaining system tests to be able
to run in parallel, continuing the work from change
#4895. To take advantage of this, use "make -jN check",
where N is the number of processors to use. [GL #91]

4898. [func] Remove libseccomp based system-call filtering. [GL #93]

4897. [test] Update to rpz system test so that it doesn't recurse.
[GL #68]

4896. [test] cacheclean system test was not robust. [GL #82]

4895. [test] Allow some system tests to run in parallel.
[RT #46602]

4894. [bug] named could crash while rolling a dnstap output file.
[RT #46942]

4893. [bug] Address various issues reported by cppcheck. [GL #51]

4892. [bug] named could leak memory when "rndc reload" was invoked
before all zone loading actions triggered by a previous
"rndc reload" command were completed. [RT #47076]

4891. [placeholder]

4890. [func] Remove unused ondestroy callback from libisc.
[isc-projects/bind9!3]

4889. [func] Warn about the use of old root keys without the new
root key being present. Warn about dlv.isc.org's
key being present. Warn about both managed and
trusted root keys being present. [RT #43670]

4888. [test] Initialize sockets correctly in sample-update so
that the nsupdate system test will run on Windows.
[RT #47097]

4887. [test] Enable the rpzrecurse test to run on Windows.
[RT #47093]

4886. [doc] Document dig -u in manpage. [RT #47150]

4885. [security] update-policy rules that otherwise ignore the name
field now require that it be set to "." to ensure
that any type list present is properly interpreted.
[RT #47126]

4884. [bug] named could crash on shutdown due to a race between
shutdown_server() and ns__client_request(). [RT #47120]

4883. [cleanup] Improved debugging output from dnssec-cds. [RT #47026]

4882. [bug] Address potential memory leak in
dns_update_signaturesinc. [RT #47084]

4881. [bug] Only include dst_openssl.h when OpenSSL is required.
[RT #47068]

4880. [bug] Named wasn't returning the target of a cross-zone
CNAME between two served zones when recursion was
desired and available (RD=1, RA=1). (When this is
not the case, the CNAME target is deliberately
withheld to prevent accidental cache poisoning.)
[RT #47078]

4879. [bug] dns_rdata_caa:value_len field was too small.
[RT #47086]

4878. [bug] List 'ply' as a requirement for the 'isc' python
package. [RT #47065]

4877. [bug] Address integer overflow when exponentially
backing off retry intervals. [RT #47041]

4876. [bug] Address deadlock with accessing a keytable. [RT #47000]

4875. [bug] Address compile failures on older systems. [RT #47015]

4874. [bug] Wrong time display when reporting new keywarntime.
[RT #47042]

4873. [doc] Grammars for named.conf included in the ARM are now
automatically generated by the configuration parser
itself. As a side effect of the work needed to
separate zone type grammars from each other, this
also makes checking of zone statements in
named-checkconf more correct and consistent.
[RT #36957]

4872. [bug] Don't permit loading meta RR types such as TKEY
from master files. [RT #47009]

4871. [bug] Fix configure glitch in detecting stdatomic.h
support on systems with multiple compilers.
[RT #46959]

4870. [test] Update included ATF library to atf-0.21 preserving
the ATF tool. [RT #46967]

4869. [bug] Address some cases where NULL with zero length could
be passed to memmove which is undefined behavior and
can lead to bad optimization. [RT #46888]

4868. [func] dnssec-keygen can no longer generate HMAC keys.
Use tsig-keygen instead. [RT #46404]

4867. [cleanup] Normalize rndc on/off commands (validation,
querylog, serve-stale) so they all accept the
same synonyms for on/off (yes/no, true/false,
enable/disable). Thanks to Tony Finch. [RT #47022]

4866. [port] DST library initialization verifies MD5 (when MD5
was not disabled) and SHA-1 hash and HMAC support.
[RT #46764]

4865. [cleanup] Simplify handling isc_socket_sendto2() return values.
[RT #46986]

4864. [bug] named acting as a slave for a catalog zone crashed if
the latter contained a master definition without an IP
address. [RT #45999]

4863. [bug] Fix various other bugs reported by Valgrind's
memcheck tool. [RT #46978]

4862. [bug] The rdata flags for RRSIG were not being properly set
when constructing a rdataslab. [RT #46978]

4861. [bug] The isc_crc64 unit test was not endian independent.
[RT #46973]

4860. [bug] isc_int8_t should be signed char. [RT #46973]

4859. [bug] A loop was possible when attempting to validate
unsigned CNAME responses from secure zones;
this caused a delay in returning SERVFAIL and
also increased the chances of encountering
CVE-2017-3145. [RT #46839]

4858. [security] Addresses could be referenced after being freed
in resolver.c, causing an assertion failure.
(CVE-2017-3145) [RT #46839]

4857. [bug] Maintain attach/detach semantics for event->db,
event->node, event->rdataset and event->sigrdataset
in query.c. [RT #46891]

4856. [bug] 'rndc zonestatus' reported the wrong underlying type
for a inline slave zone. [RT #46875]

4855. [bug] isc_time_formatshorttimestamp produced incorrect
output. [RT #46938]

4854. [bug] query_synthcnamewildcard should stop generating the
response if query_synthwildcard fails. [RT #46939]

4853. [bug] Add REQUIRE's and INSIST's to isc_time_formatISO8601L
and isc_time_formatISO8601Lms. [RT #46916]

4852. [bug] Handle strftime() failing in isc_time_formatISO8601ms.
Add REQUIRE's and INSIST's to isc_time_formattimestamp,
isc_time_formathttptimestamp, isc_time_formatISO8601,
isc_time_formatISO8601ms. [RT #46892]

4851. [port] Support using kyua as well as atf-run to run the unit
tests. [RT #46853]

4850. [bug] Named failed to restart with multiple added zones in
lmdb database. [RT #46889]

4849. [bug] Duplicate zones could appear in the .nzf file if
addzone failed. [RT #46435]

4848. [func] Zone types "primary" and "secondary" can now be used
as synonyms for "master" and "slave" in named.conf.
[RT #46713]

4847. [bug] dnssec-dnskey-kskonly was not being honored for
CDS and CDNSKEY. [RT #46755]

4846. [test] Adjust timing values in runtime system test. Address
named.pid removal races in runtime system test.
[RT #46800]

4845. [bug] Dig (non iOS) should exit on malformed names.
[RT #46806]

4844. [test] Address memory leaks in libatf-c. [RT #46798]

4843. [bug] dnssec-signzone free hashlist on exit. [RT #46791]

4842. [bug] Conditionally compile opensslecdsa_link.c to avoid
warnings about unused function. [RT #46790]


Revision tags: pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 bind-9-12-2-P1
# 1.1.1.1 12-Aug-2018 christos

branches: 1.1.1.1.2;
Import bind-9.12.2-P2 since bind-9.10 (the last BSD version) is
now out of support. The changes since our last version imported
(9.10.7) version are too big to include inline here; please consult
the CHANGES file in this directory.