Commit graph

517 commits

Author SHA1 Message Date
Evan Hunt
7ae96d8823 [master] add "lock-file" and fix up singleton code
4080.	[func]		Completed change #4022, adding a "lock-file" option
			to named.conf to override the default lock file,
			in addition to the "named -X <filename>" command
			line option.  Setting the lock file to "none"
			using either method disables the check completely.
			[RT #37908]
2015-03-02 19:27:54 -08:00
Tinderbox User
f159b7b5c7 update copyright notice / whitespace 2015-02-25 23:45:22 +00:00
Mukund Sivaraman
5a505fc4c2 Add facility to run system test nameds under Valgrind (#38546) 2015-02-25 09:06:45 +05:30
Evan Hunt
591389c7d4 [master] 5011 tests and fixes
4056.	[bug]		Expanded automatic testing of trust anchor
			management and fixed several small bugs including
			a memory leak and a possible loss of key state
			information. [RT #38458]

4055.	[func]		"rndc managed-keys" can be used to check status
			of trust anchors or to force keys to be refreshed,
			Also, the managed keys data file has easier-to-read
			comments.  [RT #38458]
2015-02-05 17:18:15 -08:00
Tinderbox User
39f68d7b64 update copyright notice / whitespace 2015-01-21 23:45:24 +00:00
Evan Hunt
2817aa56ca [master] "rndc modzone"
4043.	[func]		"rndc modzone" can be used to modify the
			configuration of an existing zone, using similar
			syntax to "rndc addzone". [RT #37895]
2015-01-20 22:34:16 -08:00
Evan Hunt
761d135ed6 [master] add TCP pipelining support
4040.	[func]		Added server-side support for pipelined TCP
			queries. TCP connections are no longer closed after
			the first query received from a client. (The new
			"keep-response-order" option allows clients to be
			specified for which the old behavior will still be
			used.) [RT #37821]
2015-01-20 16:14:09 -08:00
Mukund Sivaraman
a6f0e9c985 Add NTA persistence (#37087)
4034.   [func]          When added, negative trust anchors (NTA) are now
                        saved to files (viewname.nta), in order to
                        persist across restarts of the named server.
                        [RT #37087]
2015-01-12 09:07:48 +05:30
Tinderbox User
b129f72d95 update copyright notice / whitespace 2015-01-07 23:45:22 +00:00
Evan Hunt
74eb2f5cbc [master] rndc showzone / rndc delzone of non-added zones
4030.	[func]		"rndc delzone" is now applicable to zones that were
			configured in named.conf, as well as zones that
			were added via "rndc addzone". (Note, however, that
			if named.conf is not also modified, the deleted zone
			will return when named is reloaded.) [RT #37887]

4029.	[func]		"rndc showzone" displays the current configuration
			of a specified zone. [RT #37887]
2015-01-06 22:57:57 -08:00
Mukund Sivaraman
47d837a499 Make named a singleton process [RT#37908]
Conflicts:
	bin/tests/system/conf.sh.in
	lib/dns/win32/libdns.def.in
	lib/isc/win32/file.c

The merge also needed to update files in legacy and tcp system tests
(newly introduced in master after branch was created) to introduce use
of lockfile.
2014-12-18 12:31:25 +05:30
Mark Andrews
7d42818a3e NS_CLIENTATTR_NOSETFC collided with NS_CLIENTATTR_HAVEECS 2014-12-05 11:56:26 +11:00
Mark Andrews
693d70f96f 4017. [testing] Add system test to check lookups to legacy servers
with broken DNS behaviour. [RT #37965]
2014-12-04 07:01:52 +11:00
Tinderbox User
6472130d32 update copyright notice / whitespace 2014-11-25 23:45:21 +00:00
Mark Andrews
9e69a36ec1 make isc_buffer_t **text 2014-11-26 07:36:53 +11: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
Evan Hunt
e32d354f75 [master] allow arbitrary-size rndc output
4005.	[func]		The buffer used for returning text from rndc
			commands is now dynamically resizable, allowing
			arbitrarily large amounts of text to be sent back
			to the client. (Prior to this change, it was
			possible for the output of "rndc tsig-list" to be
			truncated.) [RT #37731]
2014-11-14 15:58:54 -08:00
Mark Andrews
6979ebf549 3968. [bug] Silence spurious log messages when using 'named -[46]'.
[RT #37308]
2014-10-03 08:05:56 +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
Evan Hunt
d46855caed [master] ECS authoritative support
3936.	[func]		Added authoritative support for the EDNS Client
			Subnet (ECS) option.

			ACLs can now include "ecs" elements which specify
			an address or network prefix; if an ECS option is
			included in a DNS query, then the address encoded
			in the option will be matched against "ecs" ACL
			elements.

			Also, if an ECS address is included in a query,
			then it will be used instead of the client source
			address when matching "geoip" ACL elements.  This
			behavior can be overridden with "geoip-use-ecs no;".

			When "ecs" or "geoip" ACL elements are used to
			select a view for a query, the response will include
			an ECS option to indicate which client network the
			answer is valid for.

			(Thanks to Vincent Bernat.) [RT #36781]
2014-08-28 22:05:57 -07:00
Mark Andrews
d4859b0b2a 3924. [bug] Improve 'rndc addzone' error reporting. RT #35187 2014-08-22 16:18:49 +10:00
Tinderbox User
e2eaaf8015 update copyright notice 2014-08-18 23:45:21 +00:00
Mark Andrews
5244e505ad 3915 [bug] Address a assertion if a route event arrived while
shutting down. [RT #36887]
2014-08-18 13:17:35 +10:00
Tinderbox User
5a31767b09 update copyright notice 2014-06-19 23:45:23 +00:00
Evan Hunt
064785ce84 [master] fix seccomp support for i386/nothreads 2014-06-19 09:38:41 -07:00
Evan Hunt
a4e76a630e [master] update gitignore files; use rev-parse to get srcid 2014-06-17 13:49:30 -07:00
Evan Hunt
e3468c9052 [master] seccomp also needs dup() in the --disable-threads case 2014-06-16 13:52:17 -07:00
Evan Hunt
fc32eac99f [master] seccomp sandboxing wasn't working in nonthreaded builds 2014-06-10 19:10:46 -07: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
Tinderbox User
104f0e51ac update copyright notice 2014-05-16 23:45:21 +00:00
Evan Hunt
896f49f8bd [master] increase and allow configuration of lwresd tasks/clients
3852.	[func]		Increase the default number of clients available
			for servicing lightweight resolver queries, and
			make them configurable via the "lwres-tasks" and
			"lwres-clients" options.  (Thanks to Tomas Hozza.)
			[RT #35857]
2014-05-15 22:01:19 -07:00
Evan Hunt
6fa84a3e25 [master] enable libseccomp system call filtering
3851.	[func]		Allow libseccomp based system-call filtering
			on Linux; use "configure --enable-seccomp" to
			turn it on.  Thanks to Loganaden Velvindron for
			the contribution. [RT #35347]
2014-05-15 20:29:30 -07:00
Evan Hunt
44613d4d86 [master] named -L option for default logfile
3832.	[func]		"named -L <filename>" causes named to send log
			messages to the specified file by default instead
			of to the system log. (Thanks to Tony Finch.)
			[RT #35845]
2014-04-29 17:17:03 -07:00
Mark Andrews
79bd3cf027 we only use 32 octets 2014-02-26 15:54:23 +11:00
Mark Andrews
02a5e3ed85 3755. [func] Add stats counters for known EDNS options + others.
[RT #35447]
2014-02-24 09:24:25 +11:00
Tinderbox User
20a96edbf9 update copyright notice 2014-02-20 23:46:35 +00:00
Mark Andrews
47cb20eae1 add EDNS EXPIRE processing on ixfr and axfr out 2014-02-20 17:51:31 +11:00
Mark Andrews
16134801ce 3750. [experimental] Partially implement EDNS EXPIRE option as described
in draft-andrews-dnsext-expire-00.  Retrivial of
                        remaining time to expiry from slave zones is supported.

                        EXPIRE uses an experimental option code (65002) and
                        is subject to change. [RT #35416]
2014-02-20 14:56:20 +11:00
Mark Andrews
e676a59686 update copyrights 2014-02-20 10:53:11 +11: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
31f6244cc2 [master] tcp and udp stats counters
3739.	[func]		Added per-zone stats counters to track TCP and
			UDP queries. [RT #35375]
2014-02-15 20:57:00 -08:00
Tinderbox User
81f58902eb update copyright notice 2014-02-07 23:46:39 +00:00
Mark Andrews
62ec9fd168 3733. [func] Improve interface scanning support. Interface
information will be automatically updated if the
                        OS supports routing sockets.  Use
                        "automatic-interface-scan no;" to disable.

                        Add "rndc scan" to trigger a scan. [RT #23027]
2014-02-07 17:16:37 +11:00
Mark Andrews
e20788e121 update copyrights 2014-01-16 15:19:24 +11:00
Evan Hunt
ba751492fc [master] native PKCS#11 support
3705.	[func]		"configure --enable-native-pkcs11" enables BIND
			to use the PKCS#11 API for all cryptographic
			functions, so that it can drive a hardware service
			module directly without the need to use a modified
			OpenSSL as intermediary (so long as the HSM's vendor
			provides a complete-enough implementation of the
			PKCS#11 interface). This has been tested successfully
			with the Thales nShield HSM and with SoftHSMv2 from
			the OpenDNSSEC project. [RT #29031]
2014-01-14 15:40:56 -08:00
Tinderbox User
2cf1d5b098 update copyright notice 2014-01-12 23:46:23 +00: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
Mark Andrews
2bdfb330af update copyrights 2013-12-05 15:04:53 +11:00
Evan Hunt
bee9a28af0 [master] clearer "not found" message for rndc commands
3683.	[cleanup]	Add a more detailed "not found" message to rndc
			commands which specify a zone name. [RT #35059]
2013-12-04 12:47:56 -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
Evan Hunt
af9f195c9e [master] add product description
3568.	[cleanup]	Add a product description line to the version file,
			to be reported by named -v/-V. [RT #33366]
2013-05-03 15:08:45 -07:00
Tinderbox User
313b0ea9f2 update copyright notice 2013-03-23 23:46:06 +00: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
Evan Hunt
9ffd0f0270 [master] "rndc validation check"
3512.	[func]		"rndc validation check" reports the current status
			of DNSSEC validation. [RT #21397]
2013-03-04 12:00:51 -08:00
Evan Hunt
4f9f8fa052 [master] add "config-time" to stats/status
3510.	[func]		"rndc status" and XML statistics channel now report
			server start and reconfiguration times. [RT #21048]
2013-03-01 15:07:40 -08:00
Curtis Blackburn
53a4e18582 3509. [cleanup] Added a product line to version file to allow for
easy naming of different products (BIND
                        vs BIND ESV, for example). [RT #32755]
2013-03-01 16:24:12 -06:00
Mark Andrews
8e5fce1f9c update copyrights 2013-03-01 10:39:29 +11:00
Evan Hunt
501941f0b6 [master] add geoip support
3504.	[func]		Add support for ACLs based on geographic location,
			using MaxMind GeoIP databases. Based on code
			contributed by Ken Brownfield <kb@slide.com>.
			[RT #30681]
2013-02-27 17:19:39 -08:00
Mark Andrews
609b8d0817 update copyrights 2013-02-27 12:27:58 +11:00
Mark Andrews
118bdfd8c4 3497. [func] When deleting a slave/stub zone using 'rndc delzone'
report the files that were being used so they can
                        be cleaned up if desired. [RT #27899]

Squashed commit of the following:

commit 0e4e69d0c3153fe94aaa375b908cf7e3e45b5059
Author: Mark Andrews <marka@isc.org>
Date:   Thu Feb 21 17:01:44 2013 +1100

    report the zones to be removed rather than removing them

commit 5d247ac592eef64c4c467d99af4983b8c1ff998f
Author: Mark Andrews <marka@isc.org>
Date:   Wed Feb 20 15:05:47 2013 +1100

    remove slave/stub files when deleting a zone using delzone
2013-02-26 14:48:21 +11:00
Evan Hunt
94315060c2 [master] RPZ speedup (phase 2, multiple RPZ's)
3495.	[func]		Support multiple response-policy zones, while
			improving RPZ performance. [RT #32476]
2013-02-25 12:46:51 -08:00
Evan Hunt
55e5c51e66 [master] DNS RRL
3494.	[func]		DNS RRL: Blunt the impact of DNS reflection and
			amplification attacks by rate-limiting substantially-
			identical responses. [RT #28130]
2013-02-25 12:45:56 -08:00
Mark Andrews
4801931443 3461. [bug] Negative responses could incorrectly have AD=1
set. [RT #32237]
2013-01-10 23:09:08 +11:00
Tinderbox User
49503f1d9f update copyright notice 2013-01-05 23:45:47 +00:00
Mark Andrews
25b95d31ce 3450. [bug] Stop logfileconfig system test spam system logs.
[RT #32315]

Squashed commit of the following:

commit ad40744e2c7dc253b70857bb229def5dd194b418
Author: Mark Andrews <marka@isc.org>
Date:   Fri Jan 4 17:24:45 2013 +1100

    logfileconfig spams the system log files
2013-01-06 07:56:10 +11:00
Mark Andrews
4786e693a7 3413. [func] Record the number of DNS64 AAAA RRsets that have been
synthesized. [RT #27636]

Squashed commit of the following:

commit b375c287a3d95ed2eb29977d4347d845f393add7
Author: Evan Hunt <each@isc.org>
Date:   Wed Oct 24 21:28:04 2012 -0700

    [rt27636] add dns64 responses stat counter
2012-11-01 14:23:14 +11:00
Evan Hunt
bcf966e614 [rt31494] add gitID to kit.sh generated tarballs 2012-10-22 12:56:47 -07:00
Mark Andrews
4b17401c9c add test support for dropping edns messages (-T dropedns); ignoring edns in queries (-T noedns); variable max UDP (-T maxudp=value) 2012-10-16 10:23:08 +11:00
Tinderbox User
adb113e235 update copyright notice 2012-09-29 23:46:01 +00:00
Mark Andrews
cc0a2f0283 Add undocumented '-T delay=value' to allow for simulation of remote servers 2012-09-29 13:07:09 +10:00
Mark Andrews
4118cd4276 3371. [bug] AD=1 should behave like DO=1 when deciding whether to
add NS RRsets to the additional section or not.
                        [RT #30479]
2012-08-31 11:20:38 +10:00
Vernon Schryver
929621dd7d undo rogue merge on bin/tests/.gitignore
add bin/named/include/.gitignore so that `git add` and other commands
will not whine about changes in the bin/named/include/named directory
2012-07-09 19:16:11 +00:00
Evan Hunt
d878b8d87c merged filter-aaaa-on-v6 (ATT SoW)
3327.	[func]		Added 'filter-aaaa-on-v6' option; this is similar
			to 'filter-aaaa-on-v4' but applies to IPv6
			connections.  (Use "configure --enable-filter-aaaa"
			to enable this option.)  [RT #27308]
2012-05-14 11:50:00 -07:00
Evan Hunt
dd2a0a6d2d Merge statistics code (ATT SoW, rt24117)
This includes the following changes:

3326.	[func]		Added task list statistics: task model, worker
			threads, quantum, tasks running, tasks ready.
			[RT #27678]

3325.	[func]		Report cache statistics: memory use, number of
			nodes, number of hash buckets, hit and miss counts.
			[RT #27056]

3324.	[test]		Add better tests for ADB stats [RT #27057]

3323.	[func]		Report the number of buckets the resolver is using.
			[RT #27020]

3322.	[func]		Monitor the number of active TCP and UDP dispatches.
			[RT #27055]

3321.	[func]		Monitor the number of recursive fetches and the
			number of open sockets, and report these values in
			the statistics channel. [RT #27054]

3320.	[func]		Added support for monitoring of recursing client
			count. [RT #27009]

3319.	[func]		Added support for monitoring of ADB entry count and
			hash size. [RT #27057]
2012-05-14 10:06:05 -07:00
Automatic Updater
41f1164438 update copyright notice 2012-01-31 23:47:33 +00:00
Evan Hunt
93143fd81a 3273. [bug] AAAA responses could be returned in the additional
section even when filter-aaaa-on-v4 was in use.
                        [RT #27292]
2012-01-31 06:58:39 +00:00
Evan Hunt
2855e27723 3271. [func] New "rndc zonestatus" command prints information
about the specified zone. [RT #21671]
2012-01-31 03:35:41 +00:00
Evan Hunt
5d23a6ac83 3214. [func] Add 'named -U' option to set the number of UDP
listener threads per interface. [RT #26485]
2011-11-09 18:44:04 +00:00
Evan Hunt
f550b4b104 3201. [func] 'rndc querylog' can now be given an on/off parameter
instead of only being used as a toggle. [RT #18351]
2011-11-03 23:05:31 +00:00
Evan Hunt
9c03f13e18 3185. [func] New 'rndc signing' option for auto-dnssec zones:
- 'rndc signing -list' displays the current
			   state of signing operations
			 - 'rndc signing -clear' clears the signing state
		  	   records for keys that have fully signed the zone
			 - 'rndc signing -nsec3param' sets the NSEC3
			   parameters for the zone
			The 'rndc keydone' syntax is removed. [RT #23729]
2011-10-28 06:20:07 +00:00
Mark Andrews
b1c6de5456 3177. [func] 'rndc keydone', remove the indicator record that
named has finished signing the zone with the
                        corresponding key.  [RT #26206]
2011-10-25 01:54:22 +00:00
Automatic Updater
0e11ca0f0b update copyright notice 2011-10-11 23:46:45 +00:00
Evan Hunt
793814f807 3164. [func] Enable DLZ modules to retrieve client information,
so that responses can be changed depending on the
			source address of the query. [RT #25768]
2011-10-11 00:09:03 +00:00
Evan Hunt
b2086d798b 3163. [bug] Use finer-grained locking in client.c to address
concurrency problems with large numbers of threads.
			[RT #26044]
2011-10-10 22:57:14 +00:00
Automatic Updater
4e68c7c87c update copyright notice 2011-08-30 23:46:53 +00:00
Mark Andrews
9198ab377b 3147. [func] Initial inline signing support. [RT #23657] 2011-08-30 05:16:15 +00:00
Evan Hunt
0127993480 3140. [func] New command "rndc flushtree <name>" clears the
specified name from the server cache along with
			all names under it. [RT #19970]
2011-08-02 20:36:13 +00:00
Automatic Updater
2f17ad4545 update copyright notice 2011-07-28 23:47:59 +00:00
Evan Hunt
f07b2fccaf 3137. [func] Improve hardware scalability by allowing multiple
worker threads to process incoming UDP packets.
			This can significantly increase query throughput
			on some systems.  [RT #22992]
2011-07-28 04:04:37 +00:00
Automatic Updater
313b4dc3b2 update copyright notice 2011-06-17 23:47:49 +00:00
Evan Hunt
e7220c9b84 3129. [bug] Named could crash on 'rndc reconfig' when
allow-new-zones was set to yes and named ACLs
			were used, [RT #22739]
2011-06-17 07:05:02 +00:00
Automatic Updater
6333ba02a5 update copyright notice 2011-03-21 23:47:21 +00:00
Evan Hunt
7cb226ec34 3084. [func] A new command "rndc sync" dumps pending changes in
a dynamic zone to disk; "rndc sync -clean" also
			removes the journal file after syncing.  Also,
			"rndc freeze" no longer removes journal files.
			[RT #22473]
2011-03-21 07:22:14 +00:00
Francis Dupont
50f64cf0e5 silent compiler warnings for DLZ exernal driver support and example 2011-03-17 09:25:54 +00:00
Automatic Updater
cf786a52ce update copyright notice 2011-03-10 23:47:50 +00:00
Evan Hunt
422009fe5b 3066. [func] The DLZ "dlopen" driver is now built by default,
no longer requiring a configure option.  To
			disable it, use "configure --without-dlopen".
                        Driver also supported on win32.  [RT #23467]
2011-03-10 04:36:16 +00:00
Automatic Updater
9cee5bb028 update copyright notice 2011-01-13 04:59:26 +00:00
Mark Andrews
87708bde16 3008. [func] Response policy zones (RPZ) support. [RT #21726] 2011-01-13 01:59:28 +00:00
Automatic Updater
ca103999e6 update copyright notice 2010-12-20 23:47:21 +00:00
Evan Hunt
71bd858d8e 2989. [func] Added support for writable DLZ zones. (Contributed
by Andrew Tridgell of the Samba project.) [RT #22629]

2988.	[experimental]	Added a "dlopen" DLZ driver, allowing the creation
			of external DLZ drivers that can be loaded as
			shared objects at runtime rather than linked with
			named.  Currently this is switched on via a
			compile-time option, "configure --with-dlz-dlopen".
			Note: the syntax for configuring DLZ zones
			is likely to be refined in future releases.
			(Contributed by Andrew Tridgell of the Samba
			project.) [RT #22629]

2987.	[func]		Improve ease of configuring TKEY/GSS updates by
			adding a "tkey-gssapi-keytab" option.  If set,
			updates will be allowed with any key matching
			a principal in the specified keytab file.
			"tkey-gssapi-credential" is no longer required
			and is expected to be deprecated.  (Contributed
			by Andrew Tridgell of the Samba project.)
			[RT #22629]
2010-12-18 01:56:23 +00:00