Commit graph

716 commits

Author SHA1 Message Date
Evan Hunt
06049b1c6c [master] stats counter for priming queries
4795.	[func]		A new statistics counter has been added to track
			priming queries. [RT #46313]
2017-10-26 21:38:43 -07:00
Evan Hunt
b2597ce86b [master] ignore cache when sending 5011 refresh queries
4771.	[bug]		When sending RFC 5011 refresh queries, disregard
			cached DNSKEY rrsets. [RT #46251]
2017-10-11 14:24:29 -07:00
Ondřej Surý
5de02a075b [master] reduce unnecessary priming queries
4770. [bug] Cache additional data from priming queries as glue.
Previously they were ignored as unsigned
non-answer data from a secure zone, and never
actually got added to the cache, causing hints
to be used frequently for root-server
addresses, which triggered re-priming. [RT #45241]
2017-10-11 09:11:47 +02:00
Mark Andrews
b4c31c8795 tcp test got reversed 2017-09-27 15:19:34 +10:00
Mark Andrews
f9f3f20d2d 4739. [cleanup] Address clang static analysis warnings. [RT #45952] 2017-09-27 10:27:09 +10:00
Evan Hunt
114f95089c [master] cleanup strcat/strcpy
4722.	[cleanup]	Clean up uses of strcpy() and strcat() in favor of
			strlcpy() and strlcat() for safety. [RT #45981]
2017-09-13 00:14:37 -07:00
Evan Hunt
25b33bede4 [master] improve handling of qcount=0 replies
4717.	[bug]		Treat replies with QCOUNT=0 as truncated if TC=1,
			FORMERR if TC=0, and log the error correctly.
			[RT #45836]
2017-09-12 15:26:30 -07:00
Mark Andrews
df50751585 4700. [func] Serving of stale answers is now supported. This
allows named to provide stale cached answers when
                        the authoritative server is under attack.
                        See max-stale-ttl, stale-answer-enable,
                        stale-answer-ttl. [RT #44790]
2017-09-06 09:58:29 +10:00
Mark Andrews
a322a0f31c silence converity warning [RT #45891] 2017-09-05 07:38:13 +10:00
Mark Andrews
5c269d84c2 remove development logging 2017-09-01 14:45:26 +10:00
Mark Andrews
0aed466565 4693. [func] Synthesis of responses from DNSSEC-verified records.
Stage 1 covers NXDOMAIN synthesis from NSEC records.
                        This is controlled by synth-from-dnssec and is enabled
                        by default. [RT #40138]
2017-08-31 07:57:50 +10:00
Mark Andrews
ff8d856db0 4675. [cleanup] Don't use C++ keyword class. [RT #45726] 2017-08-10 08:42:04 +10:00
Evan Hunt
cdacec1dcb [master] silence gcc 7 warnings
4673.	[port]		Silence GCC 7 warnings. [RT #45592]
2017-08-09 00:17:44 -07:00
Mark Andrews
31605091b4 add comment 2017-08-09 08:42:10 +05:30
Evan Hunt
6bba066302 style 2017-08-09 08:41:51 +05:30
Mark Andrews
bcb2df226f style changes from [RT #45321] 2017-08-09 07:48:57 +10:00
Evan Hunt
2013c9751d [master] address coverity warning about uninitialized variable 2017-08-08 10:46:49 -07:00
Mukund Sivaraman
c88efb83b3 Fix a race in resume_dslookup() (#45168) 2017-08-08 12:20:48 +05:30
Mark Andrews
d5cb164074 conditionally declare fctx 2017-08-08 00:51:37 +10:00
Mark Andrews
73cc289e79 remove unused variable 'fctx' from rctx_next 2017-08-05 12:31:45 +10:00
Evan Hunt
61367c604c [master] refactor resquery_response() and related functions
4669.	[func]		Iterative query logic in resolver.c has been
			refactored into smaller functions and commented,
			for improved readability, maintainability and
			testability. [RT #45362]
2017-08-04 16:08:11 -07:00
Mark Andrews
4bf32aa587 4654. [cleanup] Don't use C++ keywords delete, new and namespace.
[RT #45538]
2017-07-21 11:52:24 +10:00
Mark Andrews
638c7c635d 4580. [bug] 4578 introduced a regression when handling CNAME to
referral below the current domain. [RT #44850]
2017-03-14 15:07:00 +11:00
Mark Andrews
f240f4a5de Reimplement:
4578.   [security]      Some chaining (CNAME or DNAME) responses to upstream
                        queries could trigger assertion failures.
                        (CVE-2017-3137) [RT #44734]
2017-03-01 12:01:16 +11:00
Evan Hunt
a1365a0042 [master] remove unnecessary INSIST
4578.	[security]	Some chaining (CNAME or DNAME) responses to upstream
			queries could trigger assertion failures.
			(CVE-2017-3137) [RT #44734]
2017-02-23 14:34:33 -08:00
Witold Krecicki
0790f8a361 4577. [func] Make qtype of resolver fuzzing packet configurable via command line. [RT #43540] 2017-02-21 03:49:55 -08:00
Evan Hunt
650b5e7592 [master] store local and remote addresses in dnstap
4569.	[func]		Store both local and remote addresses in dnstap
			logging, and modify dnstap-read output format to
			print them. [RT #43595]
2017-02-03 17:05:58 -08:00
Evan Hunt
a2bd99a959 [master] address portability issues 2017-01-30 16:52:18 -08:00
Evan Hunt
cd668ea57f [master] change 4558 was incomplete 2017-01-30 14:10:30 -08:00
Mark Andrews
9f4bf43b79 4558. [bug] Synthesised CNAME before matching DNAME was still
being cached when it should have been.  [RT #44318]
2017-01-24 17:40:12 +11:00
Evan Hunt
4f744a027f [master] fix dig +ednsopt padding error
4556.	[bug]		Sending an EDNS Padding option using "dig
			+ednsopt" could cause a crash in dig. [RT #44462]
2017-01-19 23:52:41 -08:00
Tinderbox User
f557aeef7c update copyright notice / whitespace 2017-01-05 23:45:24 +00:00
Evan Hunt
5804332588 [master] EDNS padding and keepalive support
4549.	[func]		Added support for the EDNS TCP Keepalive option
			(RFC 7828). [RT #42126]

4548.	[func]		Added support for the EDNS Padding option (RFC 7830).
			[RT #42094]
2017-01-04 09:16:30 -08:00
Mark Andrews
52e2aab392 4546. [func] Extend the use of const declarations. [RT #43379] 2016-12-30 15:45:08 +11:00
Mark Andrews
6adf421e7e 4510. [security] Named mishandled some responses where covering RRSIG
records are returned without the requested data
                        resulting in a assertion failure. (CVE-2016-9147)
                        [RT #43548]
2016-12-29 11:47:19 +11:00
Mark Andrews
2c1c4b99a1 4508. [security] Named incorrectly tried to cache TKEY records which
could trigger a assertion failure when there was
                            a class mismatch. (CVE-2016-9131) [RT #43522]
2016-12-29 11:07:40 +11:00
Mark Andrews
f3bf3905c3 4517. [security] Named could mishandle authority sections that were
missing RRSIGs triggering an assertion failure.
                        (CVE-2016-9444) [RT # 43632]

(cherry picked from commit 1df30cfd27c5a3c57fce357c54aaf6c702227d51)
2016-12-29 10:39:51 +11:00
Mark Andrews
60cb462c56 4530. [bug] Change 4489 broke the handling of CNAME -> DNAME
in responses resulting in SERVFAIL being returned.
                        [RT #43779]
2016-12-09 12:50:18 +11:00
Mark Andrews
bd6f27f5c3 4489. [security] It was possible to trigger assertions when processing
a response. (CVE-2016-8864) [RT #43465]
2016-10-21 14:55:10 +11:00
Mark Andrews
d9bc0a865e 4470. [bug] Reset message with intent parse before
calling dns_dispatch_getnext. [RT #43229]
2016-09-20 21:12:16 +10:00
Mark Andrews
f431bf02a6 4453. [bug] Prefetching of DS records failed to update their
RRSIGs. [RT #42865]
2016-08-25 09:51:31 +10:00
Tinderbox User
3e0b34d0ac update copyright notice / whitespace 2016-07-11 23:46:33 +00:00
Mark Andrews
ec5e01747a 4408. [func] Continue waiting for expected response when we the
response we get does not match the request. [RT #41026]
2016-07-11 13:36:16 +10:00
Mark Andrews
ecfa005085 4403. [bug] Rename variables and arguments that shadow: basename,
clone and gai_error.
2016-06-28 21:25:30 -04:00
Mark Andrews
0c27b3fe77 4401. [misc] Change LICENSE to MPL 2.0. 2016-06-27 14:56:38 +10:00
Witold Krecicki
19d80ce584 4358. [test] Added American Fuzzy Lop harness that allows
feeding fuzzed packets into BIND.
			[RT #41723]
2016-05-05 11:49:38 +02:00
Mukund Sivaraman
275265ab27 Log query and depth counters during fetches when querytrace is enabled (#41787) 2016-03-04 13:25:37 +05:30
Mark Andrews
c7aae79b62 silence may be used when unset false positive 2016-02-29 11:24:15 +11:00
Mark Andrews
2de89ee9de Part 2 of:
4319.   [security]      Fix resolver assertion failure due to improper
                        DNAME handling when parsing fetch reply messages.
                        (CVE-2016-1286) [RT #41753]
2016-02-29 07:16:48 +11:00
Mark Andrews
455c0848f8 4322. [security] Duplicate EDNS COOKIE options in a response could
trigger an assertion failure. (CVE-2016-2088)
                        [RT #41809]
2016-02-27 11:23:50 +11:00
Mukund Sivaraman
5995fec51c Fix resolver assertion failure due to improper DNAME handling (CVE-2016-1286) (#41753) 2016-02-22 12:22:43 +05:30
Mark Andrews
d372f426ca 4317. [bug] Age all unused servers on fetch timeout. [RT #41597] 2016-02-12 12:32:58 +11:00
Mark Andrews
73fbd4c9d3 4293. [bug] Address memory leak on priming query creation failure.
[RT #41512]
2016-01-20 16:38:11 +11:00
Tinderbox User
feb1ccdaf1 update copyright notice / whitespace 2016-01-05 23:45:26 +00:00
Evan Hunt
41494939b6 [master] fixed bogus server regression
4288.	[bug]		Fixed a regression in resolver.c:possibly_mark()
			which caused known-bogus servers to be queried
			anyway. [RT #41321]
2016-01-04 15:47:16 -08:00
Mark Andrews
c8821d124c 4260. [security] Insufficient testing when parsing a message allowed
records with an incorrect class to be be accepted,
                        triggering a REQUIRE failure when those records
                        were subsequently cached. (CVE-2015-8000) [RT #4098]
2015-11-16 13:12:20 +11:00
Mark Andrews
2f450fcd29 4253. [bug] Address fetch context reference count handling error
on socket error.  [RT#40945]
2015-11-05 17:10:10 +11:00
Mark Andrews
6588a2b404 4238. [bug] Don't send to servers on net zero (0.0.0.0/8).
[RT #40947]
2015-10-16 08:00:15 +11:00
Evan Hunt
b66b333f59 [master] dnstap
4235.	[func]		Added support in named for "dnstap", a fast method of
			capturing and logging DNS traffic, and a new command
			"dnstap-read" to read a dnstap log file.  Use
			"configure --enable-dnstap" to enable this
			feature (note that this requires libprotobuf-c
			and libfstrm). See the ARM for configuration details.

			Thanks to Robert Edmonds of Farsight Security.
			[RT #40211]
2015-10-02 12:32:42 -07:00
Mark Andrews
1b1f6d21c7 curr_srtt = curr->srtt 2015-10-02 07:45:45 +10:00
Mark Andrews
b959848051 compare curr_srtt and best_srtt 2015-10-01 22:12:56 +10:00
Mark Andrews
85e7a259a4 re-organise sort to use best_srtt and curr_srtt 2015-09-29 08:06:21 +10:00
Mark Andrews
98a7f8c7ae 4222. [func] Bias IPv6 servers when selecting the next server to
query. [RT #40836]
2015-09-28 18:57:19 +10:00
Mark Andrews
8d80b4939d 4221. [bug] Resource leak on DNS_R_NXDOMAIN in fctx_create.
[RT #40583]
2015-09-25 09:18:43 +10:00
Mark Andrews
741b63c869 4212. [func] Re-query if we get a bad client cookie returned over
UDP. [RT #40748]
2015-09-17 14:20:32 +10:00
Mark Andrews
02093e4c3b 4193. [bug] Handle broken servers that return BADVERS incorrectly.
[RT #40427]
2015-08-25 16:52:43 +10:00
Evan Hunt
ce9f893e21 [master] address buffer accounting error
4168.	[security]	A buffer accounting error could trigger an
			assertion failure when parsing certain malformed
			DNSSEC keys. (CVE-2015-5722) [RT #40212]
2015-08-07 13:16:10 -07:00
Evan Hunt
1479200aa0 [master] DDoS mitigation features
3938.	[func]		Added quotas to be used in recursive resolvers
			that are under high query load for names in zones
			whose authoritative servers are nonresponsive or
			are experiencing a denial of service attack.

			- "fetches-per-server" limits the number of
			  simultaneous queries that can be sent to any
			  single authoritative server.  The configured
			  value is a starting point; it is automatically
			  adjusted downward if the server is partially or
			  completely non-responsive. The algorithm used to
			  adjust the quota can be configured via the
			  "fetch-quota-params" option.
			- "fetches-per-zone" limits the number of
			  simultaneous queries that can be sent for names
			  within a single domain.  (Note: Unlike
			  "fetches-per-server", this value is not
			  self-tuning.)
			- New stats counters have been added to count
			  queries spilled due to these quotas.

			See the ARM for details of these options. [RT #37125]
2015-07-08 22:53:39 -07:00
Tinderbox User
8f0b326d9a update copyright notice / whitespace 2015-07-05 23:45:22 +00:00
Mark Andrews
ce67023ae3 4152. [func] Implement DNS COOKIE option. This replaces the
experimental SIT option of BIND 9.10.  The following
                        named.conf directives are avaliable: send-cookie,
                        cookie-secret, cookie-algorithm and nocookie-udp-size.
                        The following dig options are available:
                        +[no]cookie[=value] and +[no]badcookie.  [RT #39928]
2015-07-06 09:44:24 +10:00
Mark Andrews
adbf81335b 4146. [bug] Address reference leak that could prevent a clean
shutdown. [RT #37125]
2015-06-25 18:36:27 +10:00
Evan Hunt
a32b6291aa [master] address regression
4126.	[bug]		Addressed a regression introduced in change #4121.
			[RT #39611]
2015-05-26 19:11:08 -07:00
Evan Hunt
c03fe78ef5 [master] use after free in resquery_destroy()
4102.	[bug]		Fix a use after free bug introduced in change
			#4094.  [RT #39281]
2015-04-15 15:38:14 -07:00
Mukund Sivaraman
2c4d5faf7f Don't use query->sendevent after it's been destroyed (#39132) 2015-04-13 15:04:41 +05:30
Evan Hunt
d9b37259f3 [master] hold a reference on fetch context during query
4094.	[bug]		A race during shutdown or reconfiguration could
			cause an assertion in mem.c. [RT #38979]
2015-04-08 14:33:45 -07:00
Mark Andrews
af669cb4fd 4074. [cleanup] Cleaned up more warnings from gcc -Wshadow. [RT #38708] 2015-02-27 10:55:55 +11:00
Mukund Sivaraman
1783676a64 Add a --enable-querytrace configure switch for very verbose query tracelogging (#37520) 2015-02-26 16:51:07 +05:30
Tinderbox User
c110d61b17 update copyright notice / whitespace 2015-01-20 23:45:26 +00:00
Evan Hunt
11463c0ac2 [master] clean up gcc -Wshadow warnings
4039.	[cleanup]	Cleaned up warnings from gcc -Wshadow. [RT #37381]
2015-01-20 13:29:18 -08:00
Mark Andrews
1e0ed0c6f5 4024. [bug] dns_rdata_opt_first, dns_rdata_opt_next,
dns_rdata_opt_current, dns_rdata_txt_first,
                        dns_rdata_txt_next and dns_rdata_txt_current were
                        documented but not implemented.  These have now been
                        implemented.

                        dns_rdata_spf_first, dns_rdata_spf_next and
                        dns_rdata_spf_current were document but not
                        implemented.  The prototypes for these
                        functions have been removed. [RT #38068]

4023.   [bug]           win32: socket handling with explict ports and
                        invoking named with -4 was broken for some
                        configurations. [RT #38068]
2014-12-19 11:35:07 +11:00
Evan Hunt
be7fba8019 [master] adjust max-recursion-queries
4021.	[bug]		Adjust max-recursion-queries to accommodate
			the need for more queries when the cache is
			empty. [RT #38104]
2014-12-15 22:28:06 -08:00
Mark Andrews
017aa9aef6 4019. [func] If named is not configured to validate the answer
then allow fallback to plain DNS on timeout even
                        when we know the server supports EDNS. [RT #37978]
2014-12-05 17:47:26 +11:00
Mark Andrews
ea3aa401bc 4015. [bug] Nameservers that are skipped due to them being
CNAMEs were not being logged. They are now logged
                        to category 'cname' as per BIND 8. [RT #37935]
2014-12-03 11:34:07 +11:00
Francis Dupont
5c5c6d289d Add a TCP only option to server/peer 2014-12-02 14:17:59 +01:00
Evan Hunt
05e448935c [master] refactor max-recursion-queries
- the counters weren't set correctly when fetches timed out.
  instead we now pass down a counter object.
2014-11-19 18:21:02 -08:00
Evan Hunt
c4f54e5bd1 [master] add max-recursion-queries
also fixes and documentation for max-recursion-depth
2014-11-18 22:02:02 -08:00
Evan Hunt
3230429e17 [master] limit recursion depth and iterative queries
4006.	[security]	A flaw in delegation handling could be exploited
			to put named into an infinite loop.  This has
			been addressed by placing limits on the number
			of levels of recursion named will allow (default 7),
			and the number of iterative queries that it will
			send (default 50) before terminating a recursive
			query (CVE-2014-8500).

			The recursion depth limit is configured via the
			"max-recursion-depth" option.  [RT #35780]
2014-11-17 23:24:44 -08:00
Mark Andrews
72775a79fe 3981. [bug] Cache DS/NXDOMAIN independently of other query types.
[RT #37467]
2014-10-18 13:09:09 +11:00
Mark Andrews
dda69168ea 3965. [func] Log outgoing packets and improve packet logging to
support logging the remote address. [RT #36624]
2014-10-02 09:40:11 +10:00
Mark Andrews
1bf72e5325 silence compiler warning 2014-09-11 13:34:17 +10:00
Mark Andrews
947cf282a7 3949. [experimental] Experimental support for draft-andrews-edns1 by sending
EDNS(1) queries (define DRAFT_ANDREWS_EDNS1 when
                        building).  Add support for limiting the EDNS version
                        advertised to servers: server { edns-version 0; };
                        Log the EDNS version received in the query log.
                        [RT #35864]
2014-09-10 15:31:40 +10:00
Mark Andrews
2fa1fc5332 3945. [bug] Invalid wildcard expansions could be incorrectly
accepted by the validator. [RT #37093]
2014-09-05 12:10:55 +10:00
Evan Hunt
a878301981 [master] servfail cache
3943.	[func]		SERVFAIL responses can now be cached for a
			limited time (configured by "servfail-ttl",
			default 10 seconds, limit 30). This can reduce
			the frequency of retries when an authoritative
			server is known to be failing, e.g., due to
			ongoing DNSSEC validation problems. [RT #21347]
2014-09-03 23:28:14 -07:00
Mark Andrews
92a649d814 complete conversion to FCTXTRACE3 2014-08-30 20:37:20 +10:00
Evan Hunt
f5c24a7f48 [master] add better servfail logging
3937.	[func]		Added some debug logging to better indicate the
			conditions causing SERVFAILs when resolving.
			[RT #35538]
2014-08-28 22:37:55 -07:00
Evan Hunt
27d6642e8b [master] complete change #3925
- don't use fwdname in dns_view_findzonecut()
2014-08-22 14:57:30 -07:00
Mark Andrews
291c0dfbc9 remove redundant isc_sockaddr_format call 2014-08-08 21:27:35 +10:00
Mark Andrews
c5734964e6 3912. [bug] Address some unrecoverable lookup failures. [RT #36330] 2014-08-06 14:18:04 +10:00
Mark Andrews
3a55d43527 3904. [func] Add the RPZ SOA to the additional section. [RT36507] 2014-07-31 10:51:48 +10:00
Mark Andrews
a421f4458d use isc_time_seconds rather than .seconds 2014-06-23 23:15:19 +10:00
Evan Hunt
b8a9632333 [master] complete NTA work
3882.	[func]		By default, negative trust anchors will be tested
			periodically to see whether data below them can be
			validated, and if so, they will be allowed to
			expire early. The "rndc nta -force" option
			overrides this behvaior.  The default NTA lifetime
			and the recheck frequency can be configured by the
			"nta-lifetime" and "nta-recheck" options. [RT #36146]
2014-06-18 16:50:38 -07:00
Mark Andrews
b925be3e54 attempt to silence leaked lock false positive 2014-06-04 14:07:16 +10:00
Evan Hunt
0cfb247368 [master] rndc nta
3867.	[func]		"rndc nta" can now be used to set a temporary
			negative trust anchor, which disables DNSSEC
			validation below a specified name for a specified
			period of time (not exceeding 24 hours).  This
			can be used when validation for a domain is known
			to be failing due to a configuration error on
			the part of the domain owner rather than a
			spoofing attack. [RT #29358]
2014-05-29 22:22:53 -07:00
Mark Andrews
35711d3c73 correct EDNSOK sense 2014-05-22 22:02:09 +10:00
Mark Andrews
ba586e9568 3857. [bug] Make it harder for a incorrect NOEDNS classification
to be made. [RT #36020]
2014-05-22 21:38:53 +10:00
Mark Andrews
8d56a8531d remove unused assignment 2014-05-22 00:58:43 +10:00
Mark Andrews
0fe0789181 3855. [bug] Limit smoothed round trip time aging to no more than
once a second. [RT #32909]
2014-05-21 10:08:52 +10:00
Evan Hunt
2b78610512 [master] reduce EDNS logging noise
3831.	[cleanup]	Reduce logging noise when EDNS state changes occur.
			[RT #35843]
2014-04-29 17:06:19 -07:00
Mark Andrews
469bbe0f97 3810. [bug] Work around broken nameservers that fail to ignore
unknown EDNS options. [RT #35766]
2014-04-17 15:43:38 +10:00
Mark Andrews
b4a819a44f othererror should not include badvers now that we have a badvers counter 2014-03-25 16:46:11 +11:00
Tinderbox User
9d7e943c3d update copyright notice 2014-03-19 23:46:06 +00:00
Mark Andrews
a78ffa0cc8 only set FCTX_ADDRINFO_NOSIT if we don't have a existing sit 2014-03-20 07:17:00 +11:00
Mark Andrews
09ab38c151 3790. [bug] Handle broken nameservers that send BADVERS in
response to unknown EDNS options.  Maintain
                        statistics on BADVERS responses.
2014-03-20 05:00:55 +11:00
Evan Hunt
f6d0284ec2 [master] fix memory leak 2014-03-04 08:56:09 -08:00
Evan Hunt
e69790ac00 [master] printable NSID logging
3774.	[func]		When using "request-nsid", log the NSID value in
			printable form as well as hex. [RT #20864]
2014-03-03 20:51:14 -08:00
Mark Andrews
53ebc0959b #ifdef notyet error handling for bad sit 2014-02-24 23:49:21 +11:00
Mark Andrews
9e39bafd2e adjust SIT computation 2014-02-24 09:29:49 +11:00
Evan Hunt
9576baafc0 [master] assert if sitok/sitbad are insane 2014-02-19 21:26:31 -08:00
Mark Andrews
d17d32a7bf set setok/sitbad 2014-02-20 16:16:53 +11:00
Mark Andrews
801b958a5c s/DNS_EDNSOPTIONS/DNS_EDNSOPTIONS/ 2014-02-20 14:00:54 +11:00
Mark Andrews
72ba6ba736 define DNS_OPT_EDNSOPTIONS 2014-02-20 13:55:21 +11:00
Francis Dupont
f1a6c8e78c WIN32 master fixes 2014-02-19 23:17:52 +01:00
Evan Hunt
7f5bdf7f40 [master] fix dns_resolver_destroyfetch race
3747.	[bug]		A race condition could lead to a core dump when
			destroying a resolver fetch object. [RT #35385]
2014-02-18 23:32:02 -08:00
Evan Hunt
6a3fa181d1 [master] add "--with-tuning=large" option
3745.	[func]		"configure --with-tuning=large" adjusts various
			compiled-in constants and default settings to
			values suited to large servers with abundant
			memory. [RT #29538]
2014-02-18 22:36:14 -08:00
Mark Andrews
b5f6271f4d 3744. [experimental] SIT: send and process Source Identity Tokens
(which are similar to DNS Cookies by Donald Eastlake)
                        and are designed to help clients detect off path
                        spoofed responses and for servers to detect legitimate
                        clients.

                        SIT use a experimental EDNS option code (65001).

                        SIT can be enabled via --enable-developer or
                        --enable-sit.  It is on by default in Windows.

                        RRL processing as been updated to know about SIT with
                        legitimate clients not being rate limited. [RT #35389]
2014-02-19 12:53:42 +11:00
Evan Hunt
1d761cb453 [master] delve
3741.	[func]		"delve" (domain entity lookup and validation engine):
			A new tool with dig-like semantics for performing DNS
			lookups, with internal DNSSEC validation, using the
			same resolver and validator logic as named. This
			allows easy validation of DNSSEC data in environments
			with untrustworthy resolvers, and assists with
			troubleshooting of DNSSEC problems. (Note: not yet
			available on win32.) [RT #32406]
2014-02-16 13:03:17 -08:00
Tinderbox User
2cf1d5b098 update copyright notice 2014-01-12 23:46:23 +00:00
Mark Andrews
c24b6b4a40 fix for pre C99 compiler 2014-01-13 09:29:25 +11:00
Mark Andrews
fb756ba304 3703. [func] Prefetch about to expire records if they are queried
for, see prefetch option for details. [RT #35041]
2014-01-12 21:29:15 +11:00
Tinderbox User
431a83fb29 update copyright notice 2014-01-09 23:46:35 +00:00
Evan Hunt
e851ea8260 [master] replace memcpy() with memmove().
3698.	[cleanup]	Replaced all uses of memcpy() with memmove().
			[RT #35120]
2014-01-08 16:39:05 -08:00
Evan Hunt
9b895f30f1 [master] fix insecure delegation across static-stub zones
3689.	[bug]		Fixed a bug causing an insecure delegation from one
			static-stub zone to another to fail with a broken
			trust chain. [RT #35081]
2013-12-12 22:19:33 -08:00
Mark Andrews
c3c8823fed 3681. [port] Update the Windows build system to support feature
selection and WIN64 builds.  This is a work in
                        progress. [RT #34160]
2013-12-04 12:47:23 +11:00
Mark Andrews
0bfc15fe59 missing FCTXTRACE2 macro RT#34914 2013-10-21 15:51:43 +11:00
Mark Andrews
f45818b82a add comment 2013-07-26 10:25:45 +10:00
Evan Hunt
9d4ec6d2c5 [master] "flushtree -all" no longer optional
Updated CHANGES note:
3606.	[func]		"rndc flushtree" now flushes matching
			records in the address database and bad cache
                        as well as the DNS cache. (Previously only the
                        DNS cache was flushed.) [RT #33970]
2013-06-30 18:53:48 -07:00
Evan Hunt
9fa5a723e1 [master] "rndc flushtree -all <name>"
3606.	[func]		"rndc flushtree -all" flushes matching
			records in the ADB and bad cache as well as
			the DNS cache.  (Without the "-all" option,
			flushtree will still only flush records from
			the DNS cache.) [RT #33970]
2013-06-26 14:59:32 -07:00
Tinderbox User
8e9b13f510 update copyright notice 2013-06-12 23:46:16 +00:00
Mark Andrews
baa9d706bd move declaration to begining of block 2013-06-12 21:06:00 +10:00
Mark Andrews
8e15d5eb3a 3593. [func] Update EDNS processing to better track remote server
capabilities. [RT #30655]
2013-06-12 11:31:30 +10:00
Evan Hunt
276457f7a3 [master] assertion failure in resolver.c
3584.	[security]	Caching data from an incompletely signed zone could
			trigger an assertion failure in resolver.c [RT #33690]
2013-06-04 11:22:47 -07:00
Mark Andrews
b4914b3d69 3551. [bug] resolver.querydscp[46] were uninitialized. [RT #32686] 2013-04-19 12:36:02 +10:00
Evan Hunt
b99bfa184b [master] unify internal and export libraries
3550.	[func]		Unified the internal and export versions of the
			BIND libraries, allowing external clients to use
			the same libraries as BIND. [RT #33131]
2013-04-10 13:49:57 -07:00
Mark Andrews
4adf97c32f 3548. [bug] The NSID request code in resolver.c was broken
resulting in invalid EDNS options being sent.
                        [RT #33153]
2013-04-08 16:29:26 +10:00
Mark Andrews
8013077aa7 3541. [bug] The parts if libdns was not being properly initialized
in when built in libexport mode. [RT #33028]
2013-04-03 17:27:40 +11:00
Evan Hunt
67adc03ef8 [master] add DSCP support
3535.	[func]		Add support for setting Differentiated Services Code
			Point (DSCP) values in named.  Most configuration
			options which take a "port" option (e.g.,
			listen-on, forwarders, also-notify, masters,
			notify-source, etc) can now also take a "dscp"
			option specifying a code point for use with
			outgoing traffic, if supported by the underlying
			OS. [RT #27596]
2013-03-22 14:05:33 -07:00
Mark Andrews
c9297d3759 3487. [bug] Change 3444 was not complete. There was a additional
place where the NOQNAME proof needed to be saved.
                        [RT #32629]

Squashed commit of the following:

commit cdef844f57bd3eb30b1f77135b89b6f9360e8bee
Author: Mark Andrews <marka@isc.org>
Date:   Sat Feb 16 00:27:14 2013 +1100

    whitespace

commit 60eb7e3f6cdd102d6aaf0fb4ada8c552576e4502
Author: Mark Andrews <marka@isc.org>
Date:   Sat Feb 16 00:19:51 2013 +1100

    return noqname proof with +cd and dlv
2013-02-16 07:45:43 +11:00
Tinderbox User
5c6b95ba1b update copyright notice 2013-01-10 23:46:00 +00:00
Mark Andrews
4801931443 3461. [bug] Negative responses could incorrectly have AD=1
set. [RT #32237]
2013-01-10 23:09:08 +11:00
Mark Andrews
45d4341eed silence signed/unsigned warning; rename log -> fctx_log 2012-12-19 12:39:54 +11:00