Compare commits

...

1588 Commits

Author SHA1 Message Date
Evan Hunt
4eb49c4882 Merge branch 'remove-bind9-bugs-references' into 'v9_9_12_patch'
Update documentation to remove obsolete bind9-bugs@isc.org email address

See merge request isc-projects/bind9!111
2018-03-08 12:56:13 -08:00
Ondřej Surý
4c3009ff38 Update documentation to remove obsolete bind9-bugs@isc.org email address
(cherry picked from commit efc9bc5d8d)
(cherry picked from commit 486e79050f)
(cherry picked from commit 292d6c8a5b)
(cherry picked from commit 5e88bf24f7)
2018-03-08 12:54:01 -08:00
Tinderbox User
319525610a Merge branch 'prep-release' into v9_9_12_patch 2018-03-08 01:34:47 +00:00
Tinderbox User
ce8edda72b prep 9.9.12 2018-03-08 01:33:44 +00:00
Tinderbox User
cfc78d797e Merge branch 'prep-release' into v9_9_12_patch 2018-03-02 21:54:14 +00:00
Tinderbox User
7af73b918e prep 9.9.12rc2 2018-03-02 21:53:47 +00:00
Evan Hunt
2206ea1ea6 Merge branch '124-revert-deadlock' into 'v9_9_12_patch'
revert cname loop test due to effects on apex CNAMEs under insecure delegations

See merge request isc-projects/bind9!95
2018-03-02 12:19:32 -08:00
Evan Hunt
ce1114a95a temporarily revert change #4859
(cherry picked from commit 06b52cc939)
2018-03-02 12:18:03 -08:00
Tinderbox User
1a63a9b4b2 regen v9_9 2018-02-15 19:47:47 +00:00
Evan Hunt
ff9f94f78a [v9_9] prep 9.9.12rc1 2018-02-15 11:20:01 -08:00
Evan Hunt
950777feb8 [v9_9] copyrights 2018-02-10 16:32:35 -08:00
Mark Andrews
c6cd108838 check warning text 2018-02-09 14:04:35 +11:00
Mark Andrews
8e700f440d get the correct test file
(cherry picked from commit ae09500989)
2018-02-09 13:57:52 +11:00
Evan Hunt
e2170a7769 [v9_9] fix test error 2018-02-08 18:46:11 -08:00
Evan Hunt
8ac589acc5 [rt43670] more emphatic warning 2018-02-09 12:29:29 +11:00
Mark Andrews
f6b7ff7280 fix meger error 2018-02-09 12:20:34 +11:00
Mark Andrews
11221a5504 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]

(cherry picked from commit baef0ca988)
2018-02-09 12:16:30 +11:00
Evan Hunt
43dfbaef94 [v9_9] fix typo 2018-02-08 16:16:30 -08:00
Tinderbox User
af6854e060 update copyright notice / whitespace 2018-02-08 23:53:55 +00:00
Tinderbox User
c64c974891 newcopyrights 2018-02-08 23:30:54 +00:00
Mark Andrews
e004a9a491 [v9_9] fix nsupdate test on windows
4888.	[test]		Initialize sockets correctly in sample-update so
			that nsupdate system test will will run on Windows.
			[RT #47097]

(cherry picked from commit 6757dc6488)
2018-02-08 13:36:44 -08:00
Mark Andrews
676dafa28c add IgnoreImportLibrary 2018-02-08 18:30:37 +11:00
Tinderbox User
6d013aed03 regen v9_9 2018-02-08 01:43:29 +00:00
Tinderbox User
0cba4c94d4 update copyright notice / whitespace 2018-02-07 23:52:52 +00:00
Tinderbox User
6ce1da9ef9 newcopyrights 2018-02-07 23:34:57 +00:00
Mark Andrews
e8cf0beea2 add note for update-policy rules changes
(cherry picked from commit ff8f2a584d)
2018-02-07 14:04:06 +11:00
Mark Andrews
274b1ae55a 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]

(cherry picked from commit ec771bbdc8)
2018-02-07 13:51:05 +11:00
Mark Andrews
61fea4f83b look for #! to determine if the file is PYTHON or PYTHON-BIN
(cherry picked from commit 4fcc550877)
2018-02-05 11:41:05 +11:00
Tinderbox User
1cbeda829d update copyright notice / whitespace 2018-01-30 23:50:48 +00:00
Tinderbox User
c3f7cbf61d newcopyrights 2018-01-30 23:31:14 +00:00
Evan Hunt
f98e326f8e [v9_9] use 'command' instead of 'type' to find atf-run and kyua paths 2018-01-30 10:33:46 -08:00
Evan Hunt
fd135e541e [v9_9] remove 'ply' requirement, not needed before 9.11
(cherry picked from commit c6a2350fb7)
2018-01-30 09:19:22 -08:00
Evan Hunt
4e3c68e863 [v9_9] typo 2018-01-30 09:15:18 -08:00
Mark Andrews
e1994f4fd9 4882. [bug] Address potential memory leak in
dns_update_signaturesinc. [RT #47084]

(cherry picked from commit 7817caa3c7)
2018-01-30 15:29:41 +11:00
Mark Andrews
7e6d7232c7 4879. [bug] dns_rdata_caa:value_len is was small. [RT #47086]
(cherry picked from commit 3ae586b857)
2018-01-30 11:01:02 +11:00
Tinderbox User
8aad9a803f update copyright notice / whitespace 2018-01-29 23:50:23 +00:00
Tinderbox User
8835d39e4b newcopyrights 2018-01-29 23:30:40 +00:00
Mark Andrews
996b041ed4 4878. [bug] List 'ply' as a requirement for the 'isc' python
package. [RT #47065]

(cherry picked from commit 6e08af82ed)
2018-01-29 13:30:59 +11:00
Tinderbox User
763a9ad41f update copyright notice / whitespace 2018-01-24 23:49:40 +00:00
Tinderbox User
5b43fe60c5 newcopyrights 2018-01-24 23:30:30 +00:00
Tinderbox User
470cee7071 regen v9_9 2018-01-24 21:11:07 +00:00
Evan Hunt
7fe379bf51 [v9_9] change uint to isc_uint 2018-01-24 11:02:45 -08:00
Evan Hunt
0712192947 [v9_9] update 9.11 api range 2018-01-24 10:24:48 -08:00
Evan Hunt
00947bf45d [v9_9] prep 9.9.12b1 2018-01-24 10:15:30 -08:00
Evan Hunt
12edba1c1b [v9_9] copyrights 2018-01-24 09:53:05 -08:00
Mark Andrews
cc30c2c06a 4876. [bug] Address deadlock with accessing a keytable. [RT #47000] 2018-01-24 21:43:52 +11:00
Tinderbox User
135d4c632c update copyright notice / whitespace 2018-01-23 23:49:46 +00:00
Tinderbox User
8f93b51d9b newcopyrights 2018-01-23 23:30:27 +00:00
Mark Andrews
54945751e2 4874. [bug] Wrong time display when reporting new keywarntime.
[RT #47042]

(cherry picked from commit 83d005de61)
2018-01-24 08:01:17 +11:00
Tinderbox User
6650f52fec regen v9_9 2018-01-23 01:24:40 +00:00
Tinderbox User
0478b1d205 update copyright notice / whitespace 2018-01-22 23:49:47 +00:00
Tinderbox User
89968f2dab newcopyrights 2018-01-22 23:40:24 +00:00
Mark Andrews
d244983672 doc/misc/*.zoneopt are X
(cherry picked from commit 7f4dfa539c)
2018-01-23 10:39:36 +11:00
Tinderbox User
d530e50f1f newcopyrights 2018-01-22 23:33:48 +00:00
Mukund Sivaraman
ef838436ef Don't permit loading meta RR types such as TKEY from master files (#47009)
(cherry picked from commit 8a4ce20172)
(cherry picked from commit c8eb726046)
(cherry picked from commit 6fb3db01ac)
(cherry picked from commit 96456c0834)
2018-01-22 15:03:31 +05:30
Mukund Sivaraman
18fca91e74 Fix configure issue detecting stdatomic.h support (#46959)
(cherry picked from commit 63d0c6a3fc)
(cherry picked from commit 7e1ed15762)
(cherry picked from commit fd82c70695)
(cherry picked from commit 7c36869fdf)
2018-01-22 13:53:32 +05:30
Mark Andrews
061199c4d9 remove old entries
(cherry picked from commit 54c4adef80)
2018-01-22 11:28:59 +11:00
Tinderbox User
ecfc27bf6d update copyright notice / whitespace 2018-01-21 23:49:55 +00:00
Tinderbox User
21718fd6a7 newcopyrights 2018-01-21 23:35:11 +00:00
Mark Andrews
e54847154f 4870. [test] Update included ATF library to atf-0.21 preserving
the ATF tool. [RT #46967]

(cherry picked from commit 23d77c8747)
2018-01-22 10:01:01 +11:00
Mark Andrews
2f346f4275 4869. [bug] Address some cases where NULL with zero length could
be passed to memmove which is undefined behaviour and
                        can lead to bad optimisation. [RT #46888]

(cherry picked from commit fdd8838bf9)
2018-01-22 09:42:25 +11:00
Tinderbox User
97f23a2202 newcopyrights 2018-01-19 23:31:00 +00:00
Tinderbox User
f305f65ea5 regen v9_9 2018-01-19 01:37:38 +00:00
Tinderbox User
44e1182a87 update copyright notice / whitespace 2018-01-18 23:50:43 +00:00
Tinderbox User
5beb70f9c8 newcopyrights 2018-01-18 23:30:43 +00:00
Evan Hunt
de38f4a19a [v9_9] fix merge error
(cherry picked from commit cdda779d07)
2018-01-18 13:30:03 -08:00
Evan Hunt
1b2b139592 [v9_9] normalize rndc on/off commands
4867.	[cleanup]	Normalize rndc on/off commands (validation and
			querylog) so they accept the same synonyms
			for on/off (yes/no, true/false, enable/disable).
			Thanks to Tony Finch. [RT #47022]

(cherry picked from commit cf8f4241e7)
(cherry picked from commit 4221d9cd1d)
(cherry picked from commit d75441a500)
2018-01-18 10:54:54 -08:00
Tinderbox User
8d5a01a868 update copyright notice / whitespace 2018-01-13 23:50:30 +00:00
Tinderbox User
5ead9ed920 newcopyrights 2018-01-13 23:30:50 +00:00
Mukund Sivaraman
4f47e5fd63 Fix various bugs reported by valgrind --tool=memcheck (#46978)
(cherry picked from commit f96133826e)
(cherry picked from commit 0374e1c3fd)
(cherry picked from commit 929329d2d6)
(cherry picked from commit d072be0691)
2018-01-13 12:02:18 +05:30
Mark Andrews
a8b6d87ebe ret was not being set to 1 on dig error. [RT #46990]
(cherry picked from commit 69c4c987f6)
2018-01-13 13:18:15 +11:00
Tinderbox User
a0a1ae4cc1 update copyright notice / whitespace 2018-01-11 23:49:10 +00:00
Tinderbox User
867adec491 newcopyrights 2018-01-11 23:30:35 +00:00
Evan Hunt
72b980db23 [v9_9] go three section levels deep in the ARM table of contents
(cherry picked from commit 0c061ce614)
2018-01-11 13:41:40 -08:00
Tinderbox User
4c71ca4ae7 update copyright notice / whitespace 2018-01-10 23:57:36 +00:00
Tinderbox User
515f3bd86b newcopyrights 2018-01-10 23:31:15 +00:00
Mark Andrews
be5f692681 grammar
(cherry picked from commit a35b95acb1)
2018-01-11 09:55:33 +11:00
Mark Andrews
efb95afc6f 4862. [bug] The rdata flags for RRSIG was not being properly set
when constructing a rdataslab. [RT #46978]

(cherry picked from commit 7befb67af4)
2018-01-11 09:55:07 +11:00
Tinderbox User
536fe358af update copyright notice / whitespace 2018-01-09 23:49:31 +00:00
Tinderbox User
8ea32cfdf3 newcopyrights 2018-01-09 23:30:27 +00:00
Mark Andrews
55c81d796c 4860. [bug] isc_int8_t should be signed char. [RT #46973]
(cherry picked from commit 21f708c88c)
2018-01-10 08:42:38 +11:00
Tinderbox User
007ab1019f newcopyrights 2018-01-05 23:30:23 +00:00
Mark Andrews
79dc8a0013 test devent->sigrdataset rather than devent->rdataset before calling query_putrdataset
(cherry picked from commit e08a31e317)
2018-01-05 12:41:51 +11:00
Tinderbox User
e75efb5b43 regen v9_9 2018-01-05 01:40:06 +00:00
Mark Andrews
455296d36a Revert "unconditionally typedef summarystat_t for coverity"
This reverts commit 59c2cad2f3.
2018-01-05 11:10:28 +11:00
Tinderbox User
f3e5a44f00 update copyright notice / whitespace 2018-01-04 23:47:43 +00:00
Tinderbox User
5bce14d090 newcopyrights 2018-01-04 23:30:34 +00:00
Mark Andrews
59c2cad2f3 unconditionally typedef summarystat_t for coverity
(cherry picked from commit a0e66ef6dd)
2018-01-05 10:12:16 +11:00
Evan Hunt
2921125a40 [v9_9] typo 2018-01-03 19:30:35 -08:00
Evan Hunt
f6ec7f6b99 [v9_9] block validator deadlock and prevent use-after-free
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]
2018-01-03 19:19:59 -08:00
Mark Andrews
385d0b66e0 4857. [bug] Maintain attach/detach semantics for event->db,
event->node, event->rdataset and event->sigrdataset
                        in query.c. [RT #46891]

(cherry picked from commit cad79077bd)
2018-01-04 13:20:34 +11:00
Tinderbox User
01dd316a95 update copyright notice / whitespace 2018-01-03 23:47:32 +00:00
Tinderbox User
fecf11b50f newcopyrights 2018-01-03 23:30:22 +00:00
Mark Andrews
26be82ee90 missing newline in comment
(cherry picked from commit 7258b852cf)
2018-01-03 17:12:04 +11:00
Tinderbox User
3d87b339d1 update copyright notice / whitespace 2018-01-02 23:47:41 +00:00
Tinderbox User
2668b95937 newcopyrights 2018-01-02 23:30:24 +00:00
Tinderbox User
2bf55621ac regen v9_9 2018-01-02 01:40:42 +00:00
Mark Andrews
4d16a4653d 4852. [bug] Add REQUIRE's and INSIST's to isc_time_formattimestamp,
isc_time_formathttptimestamp, isc_time_formatISO8601.
                        [RT #46892]
2018-01-02 10:49:43 +11:00
Tinderbox User
2c0cfa6398 update copyright notice / whitespace 2018-01-01 23:47:39 +00:00
Tinderbox User
7904434f8f newcopyrights 2018-01-01 23:30:38 +00:00
Mark Andrews
87710f11d8 4851. [port] Support using kyua as well as atf-run to run the unit
tests. [RT #46853]

(cherry picked from commit ccb5678066)
2018-01-02 10:22:29 +11:00
Tinderbox User
a0bce5b943 newcopyrights 2017-12-29 23:32:25 +00:00
Tinderbox User
bb69fd0a5e regen v9_9 2017-12-29 07:38:35 +00:00
Mark Andrews
6cda436b33 X Kyuafile's
(cherry picked from commit fa0caa1f85)
2017-12-29 13:42:35 +11:00
Tinderbox User
7aeee801e6 regen v9_9 2017-12-29 02:41:20 +00:00
Mark Andrews
b4e91bdae5 silence clang static analysis
(cherry picked from commit f933be6d45)
2017-12-22 13:09:44 +11:00
Mark Andrews
9711fe2244 initalize sigsize to zero; ATF_CHECK_EQ(sigsize, tsig.siglen);
(cherry picked from commit 9f61f6b46b)
2017-12-22 08:59:15 +11:00
Tinderbox User
dce370c959 regen v9_9 2017-12-21 01:41:40 +00:00
Mark Andrews
7a4bb46dd1 lowercase m in macOS
(cherry picked from commit 2cc7c4d62c)
2017-12-21 10:58:06 +11:00
Francis Dupont
ef75e19ff6 Fixed embedded atf code warning (RT 46833) 2017-12-18 16:20:00 +01:00
Tinderbox User
0cfdad53dc regen v9_9 2017-12-16 01:47:39 +00:00
Mark Andrews
aeb6df2983 fix case
(cherry picked from commit 68a2932f75)
2017-12-15 14:54:30 +11:00
Mark Andrews
fa39c8ad72 add MacOS to contents
(cherry picked from commit 13508261e0)
2017-12-15 14:47:03 +11:00
Mark Andrews
2406a700f9 add MacOS note
(cherry picked from commit 91e4700bcc)
2017-12-15 14:39:33 +11:00
Mark Andrews
7210904eb9 backport support for Windows differences 2017-12-13 17:51:29 +11:00
Mark Andrews
26facb12cb test for key != NULL on error path
(cherry picked from commit 9bad78cbc2)
2017-12-13 15:13:30 +11:00
Mark Andrews
93b42ff4cc 4846. [test] Adjust timing values in runtime system test. Address
named.pid removal races in runtime system test.
                        [RT #46800]

(cherry picked from commit c67180f09b)
(cherry picked from commit 0f14b04132)
(cherry picked from commit 265ba7d08b)
2017-12-13 10:38:48 +11:00
Mark Andrews
2884abf6a1 don't attempt to call isc_buffer_free(&buf) twice; don't attempt to call dns_message_destroy(&msg) twice; don't test for key != NULL
(cherry picked from commit cb8650d875)
2017-12-12 13:25:12 +11:00
Tinderbox User
8f8e4b6505 regen v9_9 2017-12-09 01:38:38 +00:00
Tinderbox User
fd254260b6 newcopyrights 2017-12-08 23:30:31 +00:00
Mark Andrews
60a1305469 increment test number
(cherry picked from commit e5c2cfdbf9)
2017-12-08 14:51:37 +11:00
Evan Hunt
591c63758d [v9_9] document "fixedpoint" 2017-12-07 19:01:32 -08:00
Mark Andrews
e68c3d1c7e 4844. [test] Address memory leaks in libatf-c. [RT #46798]
(cherry picked from commit 1c794002f5)
2017-12-08 12:35:03 +11:00
Mark Andrews
fdb6a8e3c9 4843. [bug] dnssec-signzone free hashlist on exit. [RT #46791]
(cherry picked from commit 8444b4856a)
2017-12-07 19:30:24 +11:00
Mark Andrews
4e7801ebfd 4842. [bug] Conditionally compile opensslecdsa_link.c to avoid
warnings about unused function. [RT #46790]

(cherry picked from commit 63459cdc05)
(cherry picked from commit 2d82ed9456)
2017-12-07 13:41:50 +11:00
Tinderbox User
92c1063230 update copyright notice / whitespace 2017-12-06 23:48:04 +00:00
Tinderbox User
67b2782b43 newcopyrights 2017-12-06 23:30:49 +00:00
Mark Andrews
7b34ba54c9 4841. [bug] Address -fsanitize=undefined warnings. [RT #46786]
(cherry picked from commit 9d5a0abe81)
(cherry picked from commit 58c86991ee)
2017-12-06 21:05:34 +11:00
Mark Andrews
4a51a6fd40 4840. [test] Add tests to cover fallback to using ZSK on inactive
KSK. [RT #46787]

(cherry picked from commit 32d09cd7e0)
(cherry picked from commit 0d6328ce5f)
(cherry picked from commit 51f13bcd2f)
2017-12-06 20:50:56 +11:00
Tinderbox User
2fb2f85572 regen v9_9 2017-12-06 01:39:53 +00:00
Tinderbox User
d114b94481 update copyright notice / whitespace 2017-12-05 23:48:43 +00:00
Tinderbox User
99069f6859 newcopyrights 2017-12-05 23:30:50 +00:00
Curtis Blackburn
60b4b5ead3 clarify "stage 1" and "stage 2" in autosign test 2017-12-05 10:05:21 -08:00
Mark Andrews
02324ce60a set the DNSKEY deletion time to now+5 once we got all the zones into their initial state
(cherry picked from commit ecafa2ae50)
(cherry picked from commit 15057131d5)
2017-12-05 21:43:13 +11:00
Mark Andrews
124a44db43 use 9.11 and earlier syntax for dnssec-keygen
(cherry picked from commit 7f31784c52)
2017-12-05 20:44:20 +11:00
Mark Andrews
6f1e9471fa add [RT #46774]
(cherry picked from commit 77f9623439)
2017-12-05 16:14:51 +11:00
Mark Andrews
3666b9bfb6 4839. [bug] zone.c:zone_sign was not properly determining
if there were active KSK and ZSK keys for
                        a algorithm when update-check-ksk is true
                        (default) leaving records unsigned with one or
                        more DNSKEY algorithms. [RT #46774]

(cherry picked from commit 00f5ea91cf)
2017-12-05 16:12:05 +11:00
Tinderbox User
087be21e1b regen v9_9 2017-12-05 01:31:52 +00:00
Tinderbox User
55da37ecc7 update copyright notice / whitespace 2017-12-04 23:51:02 +00:00
Evan Hunt
36794f5653 [v9_9] fix test descriptions 2017-12-04 15:48:09 -08:00
Evan Hunt
facc6fc966 [v9_9] revised release note 2017-12-04 15:37:47 -08:00
Tinderbox User
afb7408d08 newcopyrights 2017-12-04 23:31:38 +00:00
Mark Andrews
8d9bbc5128 add note for [RT #46743] and [RT #46754]
(cherry picked from commit 9ff34db455)
(cherry picked from commit 15bc7f54ff)
2017-12-05 09:54:24 +11:00
Mark Andrews
2c0a365200 4838. [bug] zone.c:add_sigs was not properly determining
if there were active KSK and ZSK keys for
                        a algorithm when update-check-ksk is true
                        (default) leaving records unsigned with one or
                        more DNSKEY algorithms. [RT #46754]

(cherry picked from commit 6fa2a0691e)
(cherry picked from commit 677f507de7)
2017-12-05 09:44:49 +11:00
Tinderbox User
bd9577293b update copyright notice / whitespace 2017-12-03 23:47:49 +00:00
Tinderbox User
f9161a79bf newcopyrights 2017-12-03 23:30:34 +00:00
Mark Andrews
5ed673c0d2 4837. [bug] dns_update_signatures{inc} (add_sigs) was not
properly determining if there were active KSK and
                        ZSK keys for a algorithm when update-check-ksk is
                        true (default) leaving records unsigned. [RT #46743]

(cherry picked from commit 196e01da5f)
(cherry picked from commit bf459d24a1)
(cherry picked from commit 5623f65cc4)
2017-12-04 10:09:45 +11:00
Tinderbox User
53495041f9 regen v9_9 2017-12-01 01:32:01 +00:00
Tinderbox User
03674299c7 update copyright notice / whitespace 2017-11-30 23:50:30 +00:00
Tinderbox User
9343980c29 newcopyrights 2017-11-30 23:31:22 +00:00
Evan Hunt
17122341fe [v9_9] fix "allow-transfer" inheritance and clean up ACL configuration
4836.	[bug]		Zones created using "rndc addzone" could
			temporarily fail to inherit an "allow-transfer"
			ACL that had been configured in the options
			statement. [RT #46603]

(cherry picked from commit e197a2bd15)
(cherry picked from commit f53e0bda46)
(cherry picked from commit 9dfff4e378)
2017-11-30 13:34:53 -08:00
Tinderbox User
a0c8227d06 update copyright notice / whitespace 2017-11-29 23:47:59 +00:00
Mark Andrews
5e94477563 4833. [bug] isc_event_free should check that the event is not
linked when called. [RT #46725]

4832.   [bug]           Events were not being removed from zone->rss_events.
                        [RT #46725]

(cherry picked from commit 9ddf7d6c4c)
2017-11-30 10:39:29 +11:00
Tinderbox User
be0cf6ba6a newcopyrights 2017-11-29 23:30:30 +00:00
Mark Andrews
a267c17a85 4831. [bug] Convert the RRSIG expirytime to 64 bits for
comparisions in diff.c:resign. [RT #46710]

(cherry picked from commit 0579a11658)
2017-11-29 15:31:53 +11:00
Tinderbox User
0b464aa2fe regen v9_9 2017-11-29 01:32:11 +00:00
Tinderbox User
c49b27bc75 update copyright notice / whitespace 2017-11-28 23:48:09 +00:00
Tinderbox User
10a446524d newcopyrights 2017-11-28 23:30:58 +00:00
Michał Kępień
fa9d613af9 [v9_9] Bail out of "./configure --with-atf" if "./configure" inside unit/atf-src fails
4830.	[bug]		Failure to configure ATF when requested did not cause
			an error in top-level configure script. [RT #46655]

(cherry picked from commit 376d5996a1)
2017-11-28 13:38:28 +01:00
Mark Andrews
76cff0f786 4829. [bug] isc_heap_delete did not zero the index value when
the heap was created with a callback to do that.
                        [RT #46709]

(cherry picked from commit 65a483106e)
2017-11-28 19:04:56 +11:00
Mark Andrews
900560e800 map more entry points to <name>64 2017-11-28 14:16:57 +11:00
Mark Andrews
ade2ece256 #define update_recordsandbytes update_recordsandbytes64 2017-11-28 14:16:01 +11:00
Tinderbox User
88dcddea15 regen v9_9 2017-11-28 01:31:46 +00:00
Tinderbox User
230916c184 update copyright notice / whitespace 2017-11-27 23:50:30 +00:00
Tinderbox User
8d20dc227b newcopyrights 2017-11-27 23:31:12 +00:00
Mark Andrews
d5b0589e4c restore setting header->heap_index to zero in setsigningtime
(cherry picked from commit c22b540e4c)
2017-11-28 06:47:49 +11:00
Michał Kępień
a59eb10b23 [v9_9] Stabilize nsupdate system test [RT #46673]
(cherry picked from commit 00ff44c7c2)
2017-11-27 10:16:09 +01:00
Michał Kępień
e85163f84c [v9_9] Fix OPTIONS formatting
(cherry picked from commit ea9b7c7ed7)
2017-11-27 09:40:25 +01:00
Mark Andrews
d42c4a628d More:
4819.   [bug]           Fully backout the transaction when adding a RRset
                        to the resigning / removal heaps fails. [RT #46473]

(cherry picked from commit 19f6a63184)
2017-11-27 15:23:16 +11:00
Mark Andrews
d049bb62b8 add missing symbols 2017-11-27 15:04:33 +11:00
Mark Andrews
08bd76a17c 4827. [misc] Add a precommit check script util/checklibs.sh
[RT #46215]
2017-11-27 15:01:35 +11:00
Mark Andrews
abbc4b2c4f 4817. [cleanup] Use DNS_NAME_INITABSOLUTE and DNS_NAME_INITNONABSOLUTE.
[RT #45433]
2017-11-27 13:30:58 +11:00
Tinderbox User
d9d5eb26d9 update copyright notice / whitespace 2017-11-23 23:48:18 +00:00
Tinderbox User
e5585c8039 newcopyrights 2017-11-23 23:30:30 +00:00
Mark Andrews
c4f2e47fea silence %lu vs size_t warning by casting to (unsigned long)
(cherry picked from commit 1dc8208a89)
2017-11-24 10:26:48 +11:00
Mark Andrews
889cc681eb in rdbdb.c:setsigningtime stop breaking heap invariant property unless we are going to restore the invariant property
(cherry picked from commit 6ead410268)
2017-11-24 08:51:14 +11:00
Michał Kępień
2a44ffeed8 [v9_9] Disable parallel make inside bin/confgen/ and bin/named/
4826.	[cleanup]	Prevent potential build failures in bin/confgen/ and
			bin/named/ when using parallel make. [RT #46648]

(cherry picked from commit 600e425eb2)
2017-11-23 11:47:15 +01:00
Mark Andrews
8572cac546 silence compiler warning [RT #46471] 2017-11-23 17:04:01 +11:00
Mark Andrews
f020870e4a remove bin/tests/system/reclimit/ans4/ans.pl 2017-11-23 12:11:04 +11:00
Tinderbox User
f2f3b68ac7 update copyright notice / whitespace 2017-11-21 23:47:58 +00:00
Tinderbox User
ffdd1ec718 newcopyrights 2017-11-21 23:30:32 +00:00
Michał Kępień
bbfa83da40 [v9_9] Refactor reclimit system test
4823.	[test]		Refactor reclimit system test to improve its
			reliability and speed. [RT #46632]

(cherry picked from commit 1fd4803e84)
2017-11-21 10:34:03 +01:00
Tinderbox User
a42d1f9000 update copyright notice / whitespace 2017-11-17 23:47:28 +00:00
Mark Andrews
ae7cb54fe0 remove out of date comment
(cherry picked from commit a197094d76)
2017-11-18 08:52:10 +11:00
Mark Andrews
8187dfac8c 4822. [bug] Use resign_sooner in dns_db_setsigningtime. [RT #46473]
(cherry picked from commit f975d0acaa)
2017-11-18 07:51:30 +11:00
Mark Andrews
cae44b160b 4821. [bug] When resigning ensure that the SOA's expire time is
always later that the resigning time of other records.
                        [RT #46473]

4820.   [bug]           dns_db_subtractrdataset should transfer the resigning
                        information to the new header. [RT #46473]

4819.   [bug]           Fully backout the transaction when adding a RRset
                        to the resigning / removal heaps fail. [RT #46473]

(cherry picked from commit 656eed7c9b)
2017-11-18 07:32:10 +11:00
Tinderbox User
7fed20ed8f update copyright notice / whitespace 2017-11-16 23:48:10 +00:00
Tinderbox User
8048bc0993 newcopyrights 2017-11-16 23:30:36 +00:00
Michał Kępień
a3b4977931 [v9_9] Stabilize logfileconfig system test
4818.	[test]		The logfileconfig system test could intermittently
			report false negatives on some platforms. [RT #46615]

(cherry picked from commit 169ce30bf7)
2017-11-16 08:17:18 +01:00
Tinderbox User
d5aa066651 newcopyrights 2017-11-13 23:30:40 +00:00
Mark Andrews
49299282a5 fix merge error 2017-11-13 12:48:50 +11:00
Mark Andrews
19f7fffacd more AS_HELP_STRING 2017-11-13 12:44:44 +11:00
Mark Andrews
693f6638a5 more AS_HELP_STRING 2017-11-13 12:43:46 +11:00
Mark Andrews
e3286b980e 4814. [cleanup] Use AS_HELP_STRING for consistent help text. [RT #46521]
(cherry picked from commit 6bbbf12936)
2017-11-13 12:39:48 +11:00
Michał Kępień
c799c10ffe [v9_9] Minor improvements to code handling managed keys
4812.	[bug]		Minor improvements to stability and consistency of code
			handling managed keys. [RT #46468]

(cherry picked from commit 54c1627c6f)
2017-11-09 15:21:04 +01:00
Tinderbox User
ec547a9877 update copyright notice / whitespace 2017-11-08 23:48:10 +00:00
Tinderbox User
b682348ac5 newcopyrights 2017-11-08 23:30:30 +00:00
Michał Kępień
dbda79e4ec [v9_9] Prevent junk from being logged when using "also-notify { <ip> key <keyname>; };"
(cherry picked from commit 4034b098d8)
2017-11-08 09:22:34 +01:00
Michał Kępień
14e1eac55c [v9_9] Do not NOTIFY back the master view from slave views in notify system test
This prevents a Linux kernel bug discussed in RT #32355 from being
triggered and thus makes "checking notify to multiple views using tsig"
stable.

(cherry picked from commit 27bf48327c)
2017-11-08 09:22:31 +01:00
Tinderbox User
003e886bda regen v9_9 2017-11-08 01:36:55 +00:00
Mark Andrews
38400d2bec 4810. [test] The chain system test failed if the IPv6 interfaces
were not configured. [RT #46508]

(cherry picked from commit c652213857)
2017-11-08 10:18:47 +11:00
Evan Hunt
0e99de2897 [v9_9] Check if -latomic is needed to handle 64-bit stdatomic.h types
4809.	[port]		Check at configure time whether -latomic is needed
			for stdatomic.h. [RT #46324]

(cherry picked from commit e3d9aafff0)
2017-11-07 13:29:07 -08:00
Tinderbox User
08aafe4640 regen v9_9 2017-11-03 01:32:51 +00:00
Tinderbox User
f8a2d1a7c9 update copyright notice / whitespace 2017-11-02 23:48:31 +00:00
Tinderbox User
6fff7f2e15 newcopyrights 2017-11-02 23:30:28 +00:00
Evan Hunt
e754ae67a7 [v9_9] clarify doc on zone refresh and expiry 2017-11-01 23:08:25 -07:00
Evan Hunt
2534b26732 [v9_9] removed references to obsolete versions in documentation 2017-11-01 22:21:00 -07:00
Mark Andrews
90f743306c don't use the ERR macro as GCC 7 only does a partial static analysis which generates false positives for fallthrough. [RT #46115]
(cherry picked from commit 0698ad8503)
2017-11-01 19:19:40 +11:00
Mark Andrews
6909f46b2d fix merge error
(cherry picked from commit 48865bf022)
2017-11-01 11:58:28 +11:00
Tinderbox User
709025bb14 update copyright notice / whitespace 2017-10-31 23:48:39 +00:00
Mark Andrews
3b9332a20d 4804. [port] win32: access() does not work on directories as
required by POSIX.  Supply a alternative in
                        isc_file_isdirwritable. [RT #46394]
2017-11-01 09:47:52 +11:00
Michał Kępień
7e6fe17488 [v9_9] Backport fix for RT #46055
4803.   [bug]		Backport fix for RT #46055 from RT #46267. [RT #46430]

(cherry picked from commit 406caf7b9c)
2017-10-31 06:13:16 +01:00
Mark Andrews
b746de8891 tmp should be a (struct in_addr) not (struct in_addr *)
(cherry picked from commit 6e02359034)
2017-10-31 10:36:14 +11:00
Tinderbox User
dcbbdce8e1 regen v9_9 2017-10-30 01:31:07 +00:00
Evan Hunt
5f0cc4be38 [v9_9] copyrights 2017-10-29 16:44:31 -07:00
Mark Andrews
e1dd822fc3 number tests 2017-10-30 08:32:18 +11:00
Mark Andrews
24592f9f78 Add system tests and remove redundent logging from:
4801.   [func]          'dnssec-lookaside auto;' and 'dnssec-lookaside .
                        trust-anchor dlv.isc.org;' now elicit warnings rather
                        than being fatal configuration errors. [RT #46410]

(cherry picked from commit f5e1b555c5)
2017-10-30 08:20:51 +11:00
Mark Andrews
6ae0880ad0 allow for numbered namedX.args
(cherry picked from commit 4cbaa08602)
2017-10-28 10:54:30 +11:00
Tinderbox User
c5cc8a3498 update copyright notice / whitespace 2017-10-26 23:49:18 +00:00
Mark Andrews
5edaaffd29 .md for MKD
(cherry picked from commit f808b5e0d2)
2017-10-27 10:41:54 +11:00
Tinderbox User
51457bf78a newcopyrights 2017-10-26 23:30:31 +00:00
Evan Hunt
328f8a440b [v9_9] some improvements in doc/dev [RT #46011]
- add info about rdatasets, etc, to dev.md (thanks to Tony Finch)
- convert rdata.html to markdown

(cherry picked from commit 63270d33f1)
(cherry picked from commit ef844e095f)
2017-10-25 23:31:32 -07:00
Evan Hunt
b783e3dfc7 [v9_9] clean up DNS_MESSAGETEXTFLAG comments
(cherry picked from commit 89d1777560)
2017-10-25 21:34:58 -07:00
Tinderbox User
1b3e20fc34 regen v9_9 2017-10-26 01:38:49 +00:00
Tinderbox User
f46bfe0899 update copyright notice / whitespace 2017-10-25 23:55:13 +00:00
Tinderbox User
43dba14484 newcopyrights 2017-10-25 23:31:06 +00:00
Evan Hunt
f5a9a4d52c [v9_9] fix some documentation errors [RT #45527]
(cherry picked from commit 81570e84a2)
2017-10-25 11:06:39 -07:00
Mark Andrews
d6802cfd42 4790. [bug] nsupdate could trigger a require when sending a
update to the second address of the server.
                        [RT #45731]

(cherry picked from commit 2bbca9594f)
2017-10-26 00:31:36 +11:00
Evan Hunt
dcaf355f00 [v9_9] log when update-policy local gets a key match from a remote host
4788.	[cleanup]	When using "update-policy local", log a warning
			when an update matching the session key is received
			from a remote host. [RT #46213]

- this completes change #4762.
2017-10-25 01:09:41 -07:00
Michał Kępień
c6753bad79 [v9_9] Rename nsec3param_salt_totext() to dns_nsec3param_salttotext(), make it public, add unit tests
4786.	[cleanup]	Turn nsec3param_salt_totext() into a public function,
			dns_nsec3param_salttotext(), and add unit tests for it.
			[RT #46289]

(cherry picked from commit 54a43e9bf1)
2017-10-25 09:51:06 +02:00
Mark Andrews
42f1b7e3e8 read dig.out.ns3.test$n rather than dig.out.ns2.test$n
(cherry picked from commit 80739779fc)
2017-10-25 15:03:28 +11:00
Tinderbox User
79080a4014 regen v9_9 2017-10-25 01:38:04 +00:00
Tinderbox User
c53d3336d6 update copyright notice / whitespace 2017-10-24 23:53:22 +00:00
Tinderbox User
c763c1c0c1 newcopyrights 2017-10-24 23:31:49 +00:00
Mark Andrews
8221d208a7 4783. [test] dnssec: 'check that NOTIFY is sent at the end of
NSEC3 chain generation failed' required more time
                        on some machines for the IXFR to complete. [RT #46388]

(cherry picked from commit 969d923536)
2017-10-25 09:22:28 +11:00
Michał Kępień
eba17e0581 [v9_9] Remove REQUIRE preventing change 4592 from working
Change 4592 was supposed to replace a REQUIRE with a conditional return.
While the latter was added, the former was not removed.  Remove the
relevant REQUIRE to fix RT #43822 for good.

(cherry picked from commit a94d68ce43)
2017-10-24 21:11:56 +02:00
Evan Hunt
3dbc4979c6 [v9_9] fix merge error; missing hunk from change 4780
(cherry picked from commit 4d39bffd95)
2017-10-24 10:10:04 -07:00
Evan Hunt
9c1540b207 [v9_9] update B.ROOT-SERVERS.NET 2017-10-24 09:17:36 -07:00
Mark Andrews
6455eec8e2 remove redundent reconfig; number tests 2017-10-24 14:46:27 +11:00
Evan Hunt
d67a5c4867 [v9_9] zone "file" option was undocumented
(cherry picked from commit b1042e011c)
2017-10-23 19:41:14 -07:00
Evan Hunt
0a5b0a447e [v9_9] omit NS from authority section if it was in answer
4780.	[bug]		When answering ANY queries, don't include the NS
			RRset in the authority section if it was already
			in the answer section. [RT #44543]

(cherry picked from commit b7b76d6b85)
(cherry picked from commit 13435af49a)
2017-10-23 19:38:29 -07:00
Mark Andrews
ab342443aa report if named.run or named.memstats not removed after successful test
(cherry picked from commit 5bead588b7)
2017-10-24 12:48:51 +11:00
Evan Hunt
18c1e4dc98 [v9_9] clean up a redundancy
4777.	[cleanup]	Removed a redundant call to configure_view_acl().
			[RT #46369]

(cherry picked from commit 89636d8f30)
(cherry picked from commit a06198688f)
(cherry picked from commit 33ab321a97)
2017-10-23 11:13:18 -07:00
Tinderbox User
f67ede6a22 regen v9_9 2017-10-22 01:37:40 +00:00
Evan Hunt
30e9e136e2 [v9_9] doc nit: Base64 is capitalized and not hyphenated
(cherry picked from commit 321b8429f5)
2017-10-21 13:30:22 -07:00
Evan Hunt
0e661d4079 [v9_9] add DNS_RPZ_MAX_ZONES to OPTIONS
(cherry picked from commit 172aa40e8f)
(cherry picked from commit fd1a7af399)
2017-10-21 13:29:39 -07:00
Evan Hunt
9c84f65183 [v9_9] test for Net::DNS::Nameserver in prereq.sh
(cherry picked from commit 475c51cce0)
2017-10-21 00:29:27 -07:00
Tinderbox User
4d2eba7dd4 regen v9_9 2017-10-21 01:44:47 +00:00
Mark Andrews
750efb9474 use correct tag
(cherry picked from commit 317330c25a)
2017-10-20 19:06:46 +11:00
Tinderbox User
c03546313c regen v9_9 2017-10-20 01:36:58 +00:00
Mark Andrews
1a26741d87 include "../mkd"; as we have already changed working directory
(cherry picked from commit b71747f765)
2017-10-20 11:50:06 +11:00
Tinderbox User
2f5154f3b1 update copyright notice / whitespace 2017-10-19 23:49:30 +00:00
Tinderbox User
145a5a173e newcopyrights 2017-10-19 23:31:13 +00:00
Mark Andrews
ee8b405480 s/made/may/ 2017-10-20 10:28:39 +11:00
Mark Andrews
33ad482f6c note removal of <isc/util.h> from other header files
(cherry picked from commit 9e5439a6d8)
2017-10-20 10:27:24 +11:00
Mark Andrews
c95fcb3dca deprecated.h is not part of BIND 9.9 (yet) 2017-10-20 10:07:16 +11:00
Evan Hunt
618b354e3a [v9_9] add missing headers [RT #46337] 2017-10-19 11:23:43 -07:00
Mark Andrews
54eb949c35 s/REQUIRE/ISC_REQUIRE/; include <isc/assertions.h> if ISC_REQUIRE is used; include <isc/likely.h> if ISC_{UN}LIKELY is used
(cherry picked from commit 0fab171196)
2017-10-19 17:00:13 +11:00
Evan Hunt
9ad9f7694d [v9_9] skip managed-keys reconfig tests in runtime if no crypto [RT #46327]
(cherry picked from commit b093b684a6)
(cherry picked from commit b5c1d2bc01)
2017-10-18 22:29:21 -07:00
Evan Hunt
dd6b511f26 [v9_9] remove reference to ht.h 2017-10-18 19:54:22 -07:00
Mark Andrews
40e08f66a8 4774. [bug] <isc/util.h> was incorrectly included in several
header files. [RT #46311]
2017-10-19 12:54:44 +11:00
Tinderbox User
e5d34a308a regen v9_9 2017-10-19 01:36:10 +00:00
Evan Hunt
eb66afdde0 [v9_9] copyrights 2017-10-18 17:34:15 -07:00
Evan Hunt
8b35d08f70 [v9_9] require writable managed keys directory
4769.	[bug]		Enforce the requirement that the managed keys
			directory (specified by "managed-keys-directory",
			and defaulting to the working directory if not
			specified) must be writable. [RT #46077]

(cherry picked from commit 56e30ebae6)
(cherry picked from commit b6b2b0b9b5)
2017-10-17 21:39:05 -07:00
Tinderbox User
873a270553 regen v9_9 2017-10-18 01:39:37 +00:00
Tinderbox User
b17ca7e7f1 update copyright notice / whitespace 2017-10-17 23:53:44 +00:00
Tinderbox User
dc78e3ca61 newcopyrights 2017-10-17 23:31:37 +00:00
Evan Hunt
0d0b16c1f5 [v9_9] README and relnote fixes
(cherry picked from commit 30419509dd)
(cherry picked from commit e609b6b32b)
(cherry picked from commit 04f334e4b0)
2017-10-17 13:53:21 -07:00
Michał Kępień
eb2c3bdfae [v9_9] Doxygen fixes and cleanups
4773.	[doc]		Fixed generating Doxygen documentation for functions
			annotated using certain macros.  Miscellaneous
			Doxygen-related cleanups. [RT #46276]

(cherry picked from commit 5e6d28e1b7)
2017-10-17 08:13:40 +02:00
Michał Kępień
3a38ada70d [v9_9] Regenerate presigned zone for the filter-aaaa system test [RT #46283]
Fix the filter-aaaa system test for builds without DNSSEC support.
2017-10-16 09:48:05 +02:00
Tinderbox User
148bd18c76 update copyright notice / whitespace 2017-10-13 23:48:17 +00:00
Tinderbox User
457e451b14 newcopyrights 2017-10-13 23:30:38 +00:00
Evan Hunt
a510be00ad [v9_9] fix filter-aaaa test [RT #46268]
(cherry picked from commit 666af25a92)
2017-10-13 11:12:29 -07:00
Tinderbox User
0f155d79a0 update copyright notice / whitespace 2017-10-11 23:48:25 +00:00
Tinderbox User
d7830df238 newcopyrights 2017-10-11 23:30:57 +00:00
Mark Andrews
6568dded83 reserve subscription flags
(cherry picked from commit a9a983781e)
2017-10-12 09:20:31 +11:00
Evan Hunt
c7a13bf188 [v9_9] ignore cache when sending 5011 refresh queries
4771.	[bug]		When sending RFC 5011 refresh queries, disregard
			cached DNSKEY rrsets. [RT #46251]

(cherry picked from commit b2597ce86b)
(cherry picked from commit b8d1e3cd5d)
2017-10-11 14:37:30 -07:00
Evan Hunt
ccad706f63 [v9_9] 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]

(cherry picked from commit 5de02a075b)
(cherry picked from commit 6216df5ccd)
(cherry picked from commit 07e25984b8)
2017-10-11 09:21:21 -07:00
Evan Hunt
58b81a5e63 [v9_9] Move KRB5_CONFIG=/dev/null to conf.sh.* so the named run in the tests gets the setting
(cherry picked from commit 74f46c45b0)
(cherry picked from commit d1aa5125a9)
2017-10-11 08:52:27 -07:00
Michał Kępień
89e10f4b41 [v9_9] Sync draft-durand-doa-over-dns snippet in lib/dns/tests/rdata_test.c with draft version -03 2017-10-09 10:53:15 +02:00
Mark Andrews
a3d6b515a0 4766. [cleanup] Addresss Coverity warnings. [RT #46150]
(cherry picked from commit 5df3f839b2)
2017-10-09 18:39:07 +11:00
Tinderbox User
a85db07426 regen v9_9 2017-10-09 01:32:04 +00:00
Mark Andrews
d4ad7867bb cleanup 2017-10-09 11:20:16 +11:00
Evan Hunt
edc519742e [v9_9] add DOA to ARM 2017-10-07 19:34:57 -07:00
Tinderbox User
9fe47a6104 newcopyrights 2017-10-07 23:31:14 +00:00
Mark Andrews
2920d65a7d don't force souce port
(cherry picked from commit 02a669a9a6)
2017-10-08 06:46:57 +11:00
Tinderbox User
c6462eeb3e regen v9_9 2017-10-07 01:36:36 +00:00
Evan Hunt
474caa0473 [v9_9] add missing names 2017-10-06 17:39:15 -07:00
Mark Andrews
3bee64f722 Normalize all the line endings 2017-10-07 11:25:48 +11:00
Tinderbox User
ab0f4f3a40 update copyright notice / whitespace 2017-10-06 23:48:57 +00:00
Tinderbox User
1e38cd0470 newcopyrights 2017-10-06 23:31:31 +00:00
Evan Hunt
5cdb31e8df [v9_9] further restrict update-policy local
4762.	[func]		"update-policy local" is now restricted to updates
                from local addresses. (Previously, other addresses
                were allowed so long as updates were signed by the
                local session key.) [RT #45492]
2017-10-06 15:42:54 -07:00
Michał Kępień
c32a80e1d6 [v9_9] Add support for DOA
4761.	[protocol]	Add support for DOA. [RT #45612]

(cherry picked from commit 4ee1fbe056)
2017-10-06 13:00:00 +02:00
Evan Hunt
db719cde0e [v9_9] fix topology doc
4758.	[doc]		Remove documentation of unimplemented "topology".
			[RT #46161]
2017-10-05 18:52:24 -07:00
Tinderbox User
ad549211bf regen v9_9 2017-10-06 01:34:09 +00:00
Tinderbox User
e862384f39 update copyright notice / whitespace 2017-10-05 23:48:31 +00:00
Tinderbox User
faa0676625 newcopyrights 2017-10-05 23:31:23 +00:00
Evan Hunt
dd01fa285b [v9_9] revise style guide information on bracing 2017-10-05 11:28:31 -07:00
Michał Kępień
5b39c51232 [v9_9] Prevent dig INSIST failures and hangs in some failure modes
4756.	[bug]		Interrupting dig could lead to an INSIST failure after
			certain errors were encountered while querying a host
			whose name resolved to more than one address.  Change
			4537 increased the odds of triggering this issue by
			causing dig to hang indefinitely when certain error
			paths were evaluated.  dig now also retries TCP queries
			(once) if the server gracefully closes the connection
			before sending a response. [RT #42832, #45159]

(cherry picked from commit 1ddb1cd440)
2017-10-05 09:49:50 +02:00
Mark Andrews
6085a44615 4754. [bug] dns_zone_setview needs a two stage commit to properly
handle errors. [RT #45841]

(cherry picked from commit 2732d4922c)
2017-10-05 16:55:11 +11:00
Mark Andrews
ab94222d2f cast to unsigned int
(cherry picked from commit 34efd9ad93)
2017-10-05 13:35:45 +11:00
Evan Hunt
65eae37154 [v9_9] fix tag 2017-10-04 18:44:54 -07:00
Tinderbox User
512ef3fc26 update copyright notice / whitespace 2017-10-04 23:48:22 +00:00
Evan Hunt
11e723be2a [v9_9] remove nslint, query-loc and zkt from contrib
4753.	[contrib]	Software obtainable from known upstream locations
			(i.e., zkt, nslint, query-loc) has been removed.
			Links to these and other packages can be found at
			https://www.isc.org/community/tools [RT #46182]
2017-10-04 16:41:47 -07:00
Tinderbox User
f93e7b4783 newcopyrights 2017-10-04 23:30:54 +00:00
Mark Andrews
444447d610 add L for wide
(cherry picked from commit 055d310e54)
2017-10-04 20:45:26 +11:00
Mark Andrews
5248a8cc32 stderr to /dev/null also
(cherry picked from commit 4615bc5408)
2017-10-04 19:27:11 +11:00
Mark Andrews
3afd1e5a58 test for 'printf'
(cherry picked from commit d1e823af15)
2017-10-04 19:20:15 +11:00
Mark Andrews
eeb53d081a silence compiler warning 2017-10-04 18:08:23 +11:00
Mark Andrews
d84dbc76e6 #undef inet_ntop
(cherry picked from commit 396125eefe)
2017-10-04 17:50:32 +11:00
Mark Andrews
35c77c3f28 sort 2017-10-04 17:22:54 +11:00
Mark Andrews
68630cce3a 4752. [test] Add unit test for isc_net_pton. [RT #46171]
(cherry picked from commit 5fcdb09126)
2017-10-04 14:43:51 +11:00
Evan Hunt
630eb6e8c6 [v9_9] missing declaration of INSIST 2017-10-03 20:03:38 -07:00
Evan Hunt
aba55e24d5 [v9_9] remove spurious control character 2017-10-03 19:42:13 -07:00
Tinderbox User
16a6c249b5 update copyright notice / whitespace 2017-10-03 23:48:38 +00:00
Tinderbox User
1ffe5fd595 newcopyrights 2017-10-03 23:30:40 +00:00
Evan Hunt
28158e5698 [v9_9] de-DLV
4749.	[func]		The ISC DLV service has been shut down, and all
			DLV records have been removed from dlv.isc.org.
			- Removed references to ISC DLV in documentation
			- Removed DLV key from bind.keys
			[RT #46155]
2017-10-03 00:57:54 -07:00
Mark Andrews
068bd10a3a 4748. [cleanup] Sprintf to snprintf coversions. [RT #46132]
(cherry picked from commit a009d03a1a)
2017-10-03 15:00:57 +11:00
Tinderbox User
b22d220605 regen v9_9 2017-10-01 01:35:02 +00:00
Tinderbox User
cd56d1eef3 update copyright notice / whitespace 2017-09-30 23:53:55 +00:00
Tinderbox User
244cce2f6e newcopyrights 2017-09-30 23:31:22 +00:00
Evan Hunt
4e07f11772 [v9_9] add configured prefixes to summary
4746.	[cleanup]	Add configured prefixes to configure summary
			output. [RT #46153]

(cherry picked from commit c0f8a8f30a)
(cherry picked from commit 6d86c99e22)
2017-09-30 10:08:05 -07:00
Evan Hunt
788beb3a45 [v9_9] color-coded test output
4745.	[test]		Add color-coded pass/fail messages to system
			tests when running on terminals that support them.
			[RT #45977]

(cherry picked from commit 3bb6150cae)
2017-09-30 10:03:26 -07:00
Tinderbox User
cc7dac87cf update copyright notice / whitespace 2017-09-27 23:49:17 +00:00
Tinderbox User
abb996a1fe newcopyrights 2017-09-27 23:30:28 +00:00
Mark Andrews
2b9e2952ed switch to using snprintf from sprintf
(cherry picked from commit d386eb54c6)
2017-09-28 07:16:33 +10:00
Mukund Sivaraman
5b1cc88385 Make isc_refcount_current() atomically read the counter value (#46074)
(cherry picked from commit abb8813a33)
(cherry picked from commit a8fa3e2d44)
(cherry picked from commit 6da7b3227c)
2017-09-27 15:11:39 +05:30
Mukund Sivaraman
d182652781 Use stdatomic.h in acache code (#46085)
Part of change 4728.

(cherry picked from commit d0d2ba9546)
(cherry picked from commit b85bb66388)
2017-09-27 15:01:32 +05:30
Mark Andrews
4828d6c34f tcp test got reversed
(cherry picked from commit b4c31c8795)
2017-09-27 15:20:33 +10:00
Mark Andrews
80dd4971d9 4739. [cleanup] Address clang static analysis warnings. [RT #45952]
(cherry picked from commit f9f3f20d2d)
2017-09-27 13:19:37 +10:00
Mark Andrews
c86cff0104 4738. [port] win32: strftime mishandles %Z. [RT #46039]
(cherry picked from commit 744061a03b)
2017-09-26 23:33:45 +10:00
Mark Andrews
4ada70d71a 4737. [cleanup] Address Coverity warnings. [RT #46012]
(cherry picked from commit 08151d7fce)
2017-09-26 23:25:08 +10:00
Michał Kępień
696c2a7571 [v9_9] Comment NSEC3-related code and fix a few minor issues
4736.	[cleanup]	(a) Added comments to NSEC3-related functions in
			lib/dns/zone.c.  (b) Refactored NSEC3 salt formatting
			code.  (c) Minor tweaks to lock and result handling.
			[RT #46053]

(cherry picked from commit acc3728c47)
2017-09-26 11:29:24 +02:00
Mark Andrews
d4faf256b2 fix HMAC_Update arguement 2017-09-25 10:46:28 +10:00
Mukund Sivaraman
1c8b9ab360 Use stdint.h only when stdatomic.h is in use (stdint.h isn't available everywhere)
(cherry picked from commit fb9712f639)
(cherry picked from commit dc0d95a23d)
(cherry picked from commit 7cf6516670)
2017-09-22 15:16:22 +05:30
Mark Andrews
4468644033 #include <isc/string.h> as it includes both <string.h> and <strings.h> if they both exist
(cherry picked from commit 6138c5a5e4)
2017-09-22 18:10:04 +10:00
Tinderbox User
e958fc1c3d newcopyrights 2017-09-21 23:31:53 +00:00
Mark Andrews
f2fe80afca we don't build irs in 9.9 2017-09-21 19:38:56 +10:00
Tinderbox User
a7741835cc regen v9_9 2017-09-21 07:51:57 +00:00
Mark Andrews
07c3a58bd4 #include <stdint.h> 2017-09-21 14:21:04 +10:00
Tinderbox User
01bad075b6 regen v9_9 2017-09-21 04:07:03 +00:00
Mark Andrews
d6c258064b atomic_compare_exchange_strong_explicit's second argument should not be atomic_* 2017-09-21 13:42:05 +10:00
Mark Andrews
799bb89429 explicitly list test programs 2017-09-21 13:07:12 +10:00
Tinderbox User
288dd11e7a update copyright notice / whitespace 2017-09-19 23:51:07 +00:00
Tinderbox User
4d067e1501 newcopyrights 2017-09-19 23:31:04 +00:00
Evan Hunt
67a70cde7e [v9_9] correct the license info 2017-09-19 13:00:31 -07:00
Mukund Sivaraman
a9600f7404 Fix changeset numbers
(cherry picked from commit 36c67a310a)
2017-09-19 19:53:29 +05:30
Mukund Sivaraman
d90adc2def Fix out of bounds access in DHCID totext() method (#46001)
(cherry picked from commit 98998f3ddd)
(cherry picked from commit 027a4a5b5d)
(cherry picked from commit 71a86a75d9)
2017-09-19 19:34:46 +05:30
Mukund Sivaraman
d347cf40c8 Don't use memset() to wipe memory (#45947)
(cherry picked from commit d5707676e4)
(cherry picked from commit b5252fcde5)
(cherry picked from commit aaf04460a0)

# Conflicts:
#	lib/dns/pkcs11dh_link.c
#	lib/dns/pkcs11dsa_link.c
#	lib/dns/pkcs11gost_link.c
#	lib/dns/pkcs11rsa_link.c
#	lib/isc/hmacmd5.c
#	lib/isc/hmacsha.c
#	lib/isc/md5.c
#	lib/isc/sha1.c
#	lib/isc/sha2.c
2017-09-19 18:59:48 +05:30
Mukund Sivaraman
33d39430d0 Use C11's stdatomic.h instead of isc_atomic where available
(cherry picked from commit 404c9b1c53)
(cherry picked from commit 9905606390)
(cherry picked from commit 5bae58a2e7)
2017-09-19 15:57:44 +05:30
Tinderbox User
de1ba63361 update copyright notice / whitespace 2017-09-18 23:58:51 +00:00
Tinderbox User
24bc091953 newcopyrights 2017-09-18 23:33:29 +00:00
Michał Kępień
c0ef11fb2e [v9_9] Prevent possible infinite signing loop after retransferring an inline-signed slave using NSEC3
4727.	[bug]		Retransferring an inline-signed slave using NSEC3
			around the time its NSEC3 salt was changed could result
			in an infinite signing loop. [RT #45080]

(cherry picked from commit 4ceebc8874)
2017-09-18 09:30:56 +02:00
Mark Andrews
ecab2b21f1 4725. [bug] Nsupdate: "recvsoa" was incorrectly reported for
failures in sending the update message.  The correct
                        location to be reported is "update_completed".
                        [RT #46014]

(cherry picked from commit 0bcb8b0b7c)
2017-09-18 14:30:43 +10:00
Mark Andrews
b66c89c0e0 don't use strlcat with non NUL terminated strings rt45981_stage3
(cherry picked from commit dc71aa898a)
2017-09-15 13:15:01 +10:00
Tinderbox User
928c3c53c6 update copyright notice / whitespace 2017-09-14 23:59:05 +00:00
Tinderbox User
14676888e9 newcopyrights 2017-09-14 23:31:45 +00:00
Evan Hunt
57807b8e0d [v9_9] revert dlzexternal changes for portability 2017-09-14 11:34:40 -07:00
Mark Andrews
80420ec94f silence warning
(cherry picked from commit c59bf663e8)
2017-09-14 19:02:55 +10:00
Mark Andrews
7eb73f6288 #include <isc/string.h> 2017-09-14 18:57:53 +10:00
Mark Andrews
b3faa2b293 (cherry picked from commit 5fb0c09a5e) 2017-09-14 18:55:51 +10:00
Mark Andrews
af9aed27c1 more str{n}{cat,cpy} corrections rt45981_stage2
(cherry picked from commit cb629cdeda)
2017-09-14 18:43:48 +10:00
Mukund Sivaraman
d139a4936d Link dlzexternal system test's driver against libisc
(cherry picked from commit bbe9f1dd95)
(cherry picked from commit e05b7dc69a)
(cherry picked from commit 69cbd89f0d)
2017-09-14 13:38:12 +05:30
Evan Hunt
c9487f5d2e [v9_9] cast char * 2017-09-13 22:04:18 -07:00
Evan Hunt
acaa5bec31 [v9_9] clean up bufsize errors
(cherry picked from commit 9b729a06b0)
2017-09-13 21:19:38 -07:00
Tinderbox User
077f3c4e27 update copyright notice / whitespace 2017-09-14 00:03:54 +00:00
Tinderbox User
610b0a47da newcopyrights 2017-09-13 23:34:44 +00:00
Mark Andrews
55e9dba255 fix filenamelen so it has the buffer length rather than buffer length - 1
(cherry picked from commit 21c12d0107)
2017-09-14 09:30:16 +10:00
Evan Hunt
e59da386dc [v9_9] fix incorrect comment 2017-09-13 13:54:38 -07:00
Mukund Sivaraman
20a3b9a914 add #include <isc/string.h>
(cherry picked from commit 4c9ba9ded8)
(cherry picked from commit 28a55095f7)
(cherry picked from commit bf5e318303)
2017-09-13 20:00:18 +05:30
Mukund Sivaraman
4c9e65a0dd Add missing <isc/print.h>
(cherry picked from commit 188fa6ea68)
(cherry picked from commit a13e9f894c)
(cherry picked from commit 83dfa75ac3)
2017-09-13 19:59:05 +05:30
Mukund Sivaraman
de42212c63 Tweak hash_test.c further, passing sizeof(str)
(cherry picked from commit 8997fc0a3f)
(cherry picked from commit fc7ed600ae)
(cherry picked from commit f3e90ace9d)
2017-09-13 19:35:45 +05:30
Mukund Sivaraman
247224ab2d Tweak
(cherry picked from commit a2873eabf6)
(cherry picked from commit 4baac8b9f3)
(cherry picked from commit 1be28340db)
2017-09-13 19:35:06 +05:30
Mukund Sivaraman
da42d8e733 Fix size of output string in hash tests
(cherry picked from commit bc5e0a6868)
(cherry picked from commit 3dc00443bb)
(cherry picked from commit 6e338884b5)
2017-09-13 19:35:04 +05:30
Francis Dupont
8e0ecaf328 Added isc/string.h to shutdown_test which got strlcpy
(cherry picked from commit 804ca1d926)
2017-09-13 23:02:00 +10:00
Evan Hunt
cef35fcefc [v9_9] add print.h 2017-09-13 00:25:24 -07:00
Evan Hunt
f07825440f [master] cleanup strcat/strcpy
4722.	[cleanup]	Clean up uses of strcpy() and strcat() in favor of
			strlcpy() and strlcat() for safety. [RT #45981]

(cherry picked from commit 114f95089c)
(cherry picked from commit 7cd594b842)
(cherry picked from commit e0ddfb109e)
2017-09-13 00:20:09 -07:00
Mark Andrews
646280bc74 give more time for the initial signing of bits in the inline signing test to complete
(cherry picked from commit e930487ce7)
2017-09-13 12:19:56 +10:00
Mark Andrews
02bab3ed25 fix first if test in setoption
(cherry picked from commit abda73147d)
2017-09-13 11:58:59 +10:00
Mark Andrews
7ebef930d7 4719. [bug] Address PVS static analyzer warnings. [RT #45946]
(cherry picked from commit 34130ee25a)
2017-09-13 09:55:13 +10:00
Tinderbox User
907bd36c10 update copyright notice / whitespace 2017-09-12 23:50:35 +00:00
Tinderbox User
78cf416569 newcopyrights 2017-09-12 23:33:28 +00:00
Evan Hunt
3d7439205c [v9_9] 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]

(cherry picked from commit 25b33bede4)
(cherry picked from commit a2a0100e0f)
2017-09-12 15:27:55 -07:00
Mark Andrews
171f1f06ab 4714. [port] openbsd/libressl: add support for building with
--enable-openssl-hash. [RT #45982]

(cherry picked from commit c75e9c7630)
2017-09-12 14:24:14 +10:00
Mark Andrews
e7095cb242 update 2017-09-12 12:52:18 +10:00
Evan Hunt
51b00c6c78 [v9_9] dig: retain domain when retrying with tcp
4712.	[bug]		"dig +domain" and "dig +search" didn't retain the
			search domain when retrying with TCP. [RT #45547]

(cherry picked from commit 8e014c45ae)
(cherry picked from commit 88e2cefcc2)
2017-09-11 10:34:10 -07:00
Evan Hunt
3e50ab8402 [v9_9] add missing rrtypes to genzones
4711.	[test]		Some RR types were missing from genzones.sh.
			[RT #45782]

(cherry picked from commit 3e66721b35)
(cherry picked from commit 29f0ced781)
2017-09-11 09:35:20 -07:00
Evan Hunt
7b34ffeeda [v9_9] removed outdated library reference 2017-09-09 11:50:55 -07:00
Tinderbox User
bc81291842 update copyright notice / whitespace 2017-09-08 23:50:57 +00:00
Tinderbox User
2b899df2df newcopyrights 2017-09-08 23:32:36 +00:00
Evan Hunt
e3c32fc3c1 [v9_9] change hash function for RRL
4709.	[cleanup]	Use dns_name_fullhash() to hash names for RRL.
			[RT #45435]

(cherry picked from commit f13385770e)
(cherry picked from commit b9fd54f8d4)
2017-09-08 15:47:26 -07:00
Tinderbox User
fae699ca45 update copyright notice / whitespace 2017-09-07 23:53:21 +00:00
Tinderbox User
c6df63d255 newcopyrights 2017-09-07 23:31:46 +00:00
Mark Andrews
79ec139d10 4705. [bug] Remove some name server statistics counters that
were accidentally back ported to the BIND 9.9 branch
                        in change 3938. [RT #45919]
2017-09-07 13:16:27 +10:00
Mark Andrews
c66f27d3ac 4703. [bug] BINDInstall.exe was missing some buffer length checks.
[RT #45898]

(cherry picked from commit 7e40d6274e)
2017-09-07 13:00:13 +10:00
Mark Andrews
a7364b097b sort order wrong 2017-09-06 18:21:54 +10:00
Mark Andrews
be531d9469 sync option order with master 2017-09-06 18:06:04 +10:00
Mark Andrews
65d92b5cfb add PYTHON_INSTALL_DIR 2017-09-06 13:24:24 +10:00
Tinderbox User
ecbf33009b regen v9_9 2017-09-05 01:41:33 +00:00
Tinderbox User
943ef26dac update copyright notice / whitespace 2017-09-04 23:50:06 +00:00
Tinderbox User
888d670bce newcopyrights 2017-09-04 23:31:48 +00:00
Michał Kępień
e3c7adc5e6 [v9_9] Add --with-python-install-dir configure option
4698.	[port]		Add --with-python-install-dir configure option to allow
			specifying a nonstandard installation directory for
			Python modules. [RT #45407]

(cherry picked from commit 25aeff76ad)
2017-09-04 08:45:46 +02:00
Mark Andrews
1fa2ebe609 4696. [port] Enable filter-aaaa support by default on Windows
builds. [RT #45883]

(cherry picked from commit b4eb8b9656)
2017-08-31 13:39:42 +10:00
Mark Andrews
e63daae5f9 sort view_clauses 2017-08-31 08:33:50 +10:00
Mark Andrews
fa4683b934 4692. [bug] Fix build failures with libressl introduced in 4676.
[RT #45879]

(cherry picked from commit c26370fc69)
2017-08-30 18:23:28 +10:00
Tinderbox User
a60b1b470b regen v9_9 2017-08-30 01:42:07 +00:00
Tinderbox User
0bee87c000 update copyright notice / whitespace 2017-08-29 23:52:07 +00:00
Tinderbox User
208935a547 newcopyrights 2017-08-29 23:31:14 +00:00
Michał Kępień
2e39f122dd [v9_9] Mark -4/-6 command line options as mutually exclusive
4690.	[doc]		Command line options -4/-6 for various tools are
			mutually exclusive. [RT #45632]

(cherry picked from commit 16650c6fa2)
2017-08-29 10:39:12 +02:00
Mark Andrews
8a5210cafe fix changes number
(cherry picked from commit 503223b800)
2017-08-26 13:27:11 +10:00
Evan Hunt
d2516c6507 [v9_9] turn on minimal responses for CDS/CDNSKEY
4678.	[cleanup]	Turn on minimal responses for CDNSKEY and CDS in
			addition to DNSKEY and DS. Thanks to Tony Finch.
			[RT #45690]

(cherry picked from commit 391a3a2f20)
2017-08-25 13:32:39 -07:00
Mark Andrews
fed404fe51 9.9 doesn't suppport +ednsopt 2017-08-25 12:51:04 +10:00
Tinderbox User
534627ef07 regen v9_9 2017-08-25 01:40:19 +00:00
Tinderbox User
444cddf00b update copyright notice / whitespace 2017-08-24 23:54:52 +00:00
Tinderbox User
f118c1a49b newcopyrights 2017-08-24 23:31:07 +00:00
Mark Andrews
6f799a2e5a 4688. [protocol] Check and display EDNS KEY TAG options (RFC 8145) in
messages. [RT #44804]

(cherry picked from commit 07741d43c8)
2017-08-25 08:53:05 +10:00
Tinderbox User
959c633493 regen v9_9 2017-08-22 01:41:01 +00:00
Tinderbox User
4996870514 update copyright notice / whitespace 2017-08-21 23:58:24 +00:00
Tinderbox User
598aa4e93f newcopyrights 2017-08-21 23:31:54 +00:00
Michał Kępień
4cca0a8ebb [v9_9] Prevent dnssec-settime from printing a bogus warning
4686.	[bug]		dnssec-settime -p could print a bogus warning about
			key deletion scheduled before its inactivation when a
			key had an inactivation date set but no deletion date
			set. [RT #45807]

(cherry picked from commit 330365566d)
2017-08-21 10:22:18 +02:00
Michał Kępień
1b66e67705 [v9_9] Fix calculation of dates for a successor key
4685.	[bug]		dnssec-settime incorrectly calculated publication and
			activation dates for a successor key. [RT #45806]

(cherry picked from commit 457dc09806)
2017-08-21 10:02:01 +02:00
Tinderbox User
9f8aa9f785 regen v9_9 2017-08-18 01:38:57 +00:00
Tinderbox User
f9f03d98b0 update copyright notice / whitespace 2017-08-17 23:52:36 +00:00
Tinderbox User
32b4dc927d newcopyrights 2017-08-17 23:32:39 +00:00
Michał Kępień
818da88182 [v9_9] Prevent nsupdate from immediately exiting on invalid user input in interactive mode
4683.	[bug]		Prevent nsupdate from immediately exiting on invalid
			user input in interactive mode. [RT #28194]

(cherry picked from commit e02fa56849)
2017-08-17 08:37:46 +02:00
Mark Andrews
eb7bdae9a0 4682. [bug] Don't report errors on records below a DNAME.
[RT #44880]

(cherry picked from commit 615b961e02)
2017-08-17 15:52:07 +10:00
Tinderbox User
d7b57c0506 update copyright notice / whitespace 2017-08-15 23:54:42 +00:00
Tinderbox User
8326f180f3 newcopyrights 2017-08-15 23:30:58 +00:00
Mark Andrews
78639b2ddf 'uname -o' is not portable, suppress error message; remove spurious cat tmp.out; provide forensics for failure analysis
(cherry picked from commit e85a2c5624)
2017-08-15 18:09:07 +10:00
Tinderbox User
4d89263d60 update copyright notice / whitespace 2017-08-14 23:53:17 +00:00
Tinderbox User
c5754548f3 newcopyrights 2017-08-14 23:31:18 +00:00
Michał Kępień
595779183a [v9_9] Fix master address failover when GSS-API is used
4680.	[bug]		Fix failing over to another master server address when
			nsupdate is used with GSS-API. [RT #45380]

(cherry picked from commit b55ec74eaa)
2017-08-14 15:01:07 +02:00
Michał Kępień
3e5191731e [v9_9] Make dnssec-verify suggest using -o when appropriate
4679.	[cleanup]	Suggest using -o when dnssec-verify finds a SOA record
			not at top of zone and -o is not used. [RT #45519]

(cherry picked from commit 877c264edc)
2017-08-14 14:03:30 +02:00
Mark Andrews
1f56b5c795 sort options
(cherry picked from commit 00f067539a)
2017-08-14 21:42:38 +10:00
Mark Andrews
1b2c8e7583 alphabetize options_clauses 2017-08-14 07:36:46 +00:00
Mark Andrews
581d481613 use isc_thread_self instead of pthread_self
(cherry picked from commit 5e9d9aa9d0)
2017-08-14 13:54:47 +10:00
Tinderbox User
f21e2d6c78 update copyright notice / whitespace 2017-08-11 23:52:00 +00:00
Tinderbox User
a78684345d newcopyrights 2017-08-11 23:31:50 +00:00
Evan Hunt
e785ee2e18 [v9_9] fix CHANGES note 2017-08-10 22:53:42 -07:00
Evan Hunt
18ad62b920 [v9_9] split up main and add callback function pointers to support iOS
4677.	[port]		Split up the main function in dig to better support
			the iOS app version. [RT #45508]

(cherry picked from commit 6640e00924)
2017-08-10 22:50:19 -07:00
Tinderbox User
01703a53fc regen v9_9 2017-08-10 01:43:02 +00:00
Mark Andrews
8d49cc93db 4676. [cleanup] Allow BIND to be built using OpenSSL 1.0.X with
deprecated functions removed. [RT #45706]

(cherry picked from commit cbc80a42d3)
2017-08-10 10:17:13 +10:00
Tinderbox User
ec9becf633 update copyright notice / whitespace 2017-08-09 23:54:45 +00:00
Tinderbox User
5aa00b2dc6 newcopyrights 2017-08-09 23:30:55 +00:00
Mark Andrews
f3ed36d3a1 4675. [cleanup] Don't use C++ keyword class. [RT #45726] 2017-08-10 08:51:22 +10:00
Evan Hunt
3e2fd1b2e7 [v9_9] grammar error 2017-08-09 15:06:58 -07:00
Evan Hunt
c06d35bb34 [v9_9] silence gcc 7 warnings
4673.	[port]		Silence GCC 7 warnings. [RT #45592]

(cherry picked from commit cdacec1dcb)
(cherry picked from commit 7dbeb5e7f0)
(cherry picked from commit 733404ab8c)
2017-08-09 00:38:10 -07:00
Mark Andrews
cf25cdac38 add comment
(cherry picked from commit 93049edb81)
(cherry picked from commit ef899b41f4)
2017-08-09 10:49:11 +05:30
Evan Hunt
8d9c7ef2e2 style
(cherry picked from commit 72f91848ef)
(cherry picked from commit 164d30e3a1)
2017-08-09 10:49:10 +05:30
Tinderbox User
16fd34ab85 update copyright notice / whitespace 2017-08-09 01:37:36 +00:00
Tinderbox User
074628c21a newcopyrights 2017-08-09 01:01:14 +00:00
Mukund Sivaraman
b7df525e93 Fix tsig_test.c unittest (OK'd by Mark on Jabber)
(cherry picked from commit f2b6eef899)
(cherry picked from commit 8ecd1dc557)
(cherry picked from commit dc94345bbd)
2017-08-08 21:56:57 +05:30
Mukund Sivaraman
6b230c0dd8 Fix bug where named as resolver would not try other fctx addresses upon fetch timeout (#45321)
(cherry picked from commit 88178e13e6)
2017-08-08 21:19:00 +05:30
Mukund Sivaraman
03acb6368a Fix a race in resume_dslookup() (#45168)
(cherry picked from commit c88efb83b3)
(cherry picked from commit 6e10f87913)
(cherry picked from commit 6859f1d265)
2017-08-08 13:17:22 +05:30
Evan Hunt
b435e88337 [v9_9] ensure verified_sig
4670.	[cleanup]	Ensure that a request MAC is never sent back
			in an XFR response unless the signature was
                        verified. [RT #45494]

(cherry picked from commit 0ad72b96d2)
(cherry picked from commit 37f6466aa3)
2017-08-07 18:58:50 -07:00
Evan Hunt
bce15d72e2 [v9_9] add missing eddsa files, fix dst_parse.c to handle eddsa correctly 2017-08-07 16:45:46 -07:00
Tinderbox User
d247177114 regen v9_9 2017-08-04 01:35:21 +00:00
Curtis Blackburn
d7b7531c02 fix pthread_np.h detection
[rt45680]
2017-08-03 18:10:52 -07:00
Tinderbox User
b0fc3288ec update copyright notice / whitespace 2017-08-03 00:01:44 +00:00
Tinderbox User
7ab2a0c94f newcopyrights 2017-08-02 23:53:42 +00:00
Mark Andrews
22e68fe50f fix merge error 2017-08-03 09:41:17 +10:00
Mark Andrews
b5b0fbc44c 4668. [bug] Use localtime_r and gmtime_r for thread safety.
[RT #45664]

(cherry picked from commit 2019cf29e2)
2017-08-03 08:47:15 +10:00
Mark Andrews
1a42ac0001 remove bin/tests/rdata_test.c 2017-08-02 12:43:14 +10:00
Tinderbox User
43e89f0de4 regen v9_9 2017-08-02 01:37:23 +00:00
Tinderbox User
f9d3d16a27 update copyright notice / whitespace 2017-08-01 23:55:29 +00:00
Tinderbox User
e9a29d2c0a newcopyrights 2017-08-01 23:32:41 +00:00
Michał Kępień
60b55fe41c [v9_9] Refactor RDATA unit tests
4667.	[cleanup]	Refactor RDATA unit tests. [RT #45610]

(cherry picked from commit 41620b94c4)
2017-08-01 13:08:33 +02:00
Evan Hunt
5e64f32ce7 [v9_9] revise CHANGES note and add release note 2017-07-31 23:50:11 -07:00
Mark Andrews
c0fa0fe477 handle .key and .private files
(cherry picked from commit 3c4dffefe8)
2017-08-01 12:11:44 +10:00
Tinderbox User
4fcca5caf4 regen v9_9 2017-08-01 01:36:19 +00:00
Tinderbox User
3204ebaed1 sync 2017-08-01 01:31:09 +00:00
Tinderbox User
f96e57a2c4 update copyright notice / whitespace 2017-07-31 23:49:05 +00:00
Tinderbox User
31bdb1dea7 newcopyrights 2017-07-31 23:32:20 +00:00
Francis Dupont
dea37aee81 Added Ed25519 support (#44696) 2017-07-31 17:02:24 +02:00
Tinderbox User
f15c57b877 regen v9_9 2017-07-29 01:38:45 +00:00
Tinderbox User
fd14aa6b8a update copyright notice / whitespace 2017-07-28 23:49:49 +00:00
Tinderbox User
304458b7f0 newcopyrights 2017-07-28 23:32:00 +00:00
Evan Hunt
f5f320dd91 [v9_9] remove unnecessary acronym expansions 2017-07-28 12:26:42 -07:00
Michał Kępień
d3d5a9780d [v9_9] Clarify error message printed by dnssec-dsfromkey
4663.	[cleanup]	Clarify error message printed by dnssec-dsfromkey.
			[RT #21731]

(cherry picked from commit c150f68609)
2017-07-28 10:30:25 +02:00
Evan Hunt
681e286ada [v9_9] Maintain ZEROTTL cache entries at the tail of the LRU lists
4662.	[performance]	Improve cache memory cleanup of zero TTL records
			by putting them at the tail of LRU header lists.
			[RT #45274]

(cherry picked from commit e924155211)
2017-07-28 00:14:08 -07:00
Evan Hunt
0991321029 [v9_9] race condition when reloading while resigning
4661.	[bug]		A race condition could occur if a zone was reloaded
			while resigning, triggering a crash in
			rbtdb.c:closeversion(). [RT #45276]

(cherry picked from commit 036305f00d)
2017-07-28 00:03:08 -07:00
Mark Andrews
9d51d7a967 4660. [bug] Remove spurious "peer" from Windows socket log
messages. [RT #45617]

(cherry picked from commit 5140501a0b)
2017-07-28 16:07:51 +10:00
Mark Andrews
6864306668 add semicolon 2017-07-28 15:58:52 +10:00
Mark Andrews
506ca12867 4658. [bug] Clean up build directory created by "setup.py install"
immediately.  [RT #45628]

(cherry picked from commit e54f256bb4)
2017-07-28 15:57:47 +10:00
Tinderbox User
f4c4c3aa15 update copyright notice / whitespace 2017-07-28 00:07:55 +00:00
Tinderbox User
4956a0cfaa newcopyrights 2017-07-27 23:41:24 +00:00
Evan Hunt
6b6cd5b4d6 [v9_9] fix typo in BADCDS
(cherry picked from commit 166d1bf5f5)
2017-07-27 15:43:10 -07:00
Mark Andrews
cffc5dc5d1 fix RT number
(cherry picked from commit cdc5e0cea0)
2017-07-26 16:40:49 +10:00
Mark Andrews
e5341d238f 9.9.11 2017-07-24 17:27:55 +10:00
Tinderbox User
b5f2eaec62 update copyright notice / whitespace 2017-07-21 23:48:17 +00:00
Tinderbox User
da330f1fa1 newcopyrights 2017-07-21 23:31:09 +00:00
Mark Andrews
169bf685a1 4654. [cleanup] Don't use C++ keywords delete, new and namespace.
[RT #45538]

(cherry picked from commit 4bf32aa587)
2017-07-21 12:50:13 +10:00
Tinderbox User
c722839d70 update copyright notice / whitespace 2017-07-20 23:47:02 +00:00
Tinderbox User
2a2eb95b2c newcopyrights 2017-07-20 23:30:33 +00:00
Mark Andrews
0c6141d41a 9.9.11rc2 2017-07-20 13:10:48 +10:00
Mark Andrews
f22330dc5c 4653. [bug] Reorder includes to move @DST_OPENSSL_INC@ and
@ISC_OPENSSL_INC@ after shipped include directories.
                        [RT #45581]

(cherry picked from commit 124712666e)
2017-07-20 12:09:43 +10:00
Tinderbox User
adfb3f05a8 update copyright notice / whitespace 2017-07-19 23:46:53 +00:00
Mark Andrews
8f0b7771d3 4653. [bug] Reorder includes in bin/nsupdate/Makefile.in.
[RT #45581]

(cherry picked from commit a5a4cf96c6)
2017-07-20 09:41:55 +10:00
Tinderbox User
8d2d7a8336 newcopyrights 2017-07-19 23:30:51 +00:00
Mark Andrews
a41f6ec208 correct for missing placeholder 2017-07-19 16:14:47 +10:00
Mark Andrews
927f84f485 use 'test "constant" <condition> "$variable"' [RT #45486]
(cherry picked from commit aed501fb88)
2017-07-19 16:10:38 +10:00
Mark Andrews
4442503b86 4651. [bug] Nsupdate could attempt to use a zeroed address on
server timeout. [RT #45417]

(cherry picked from commit dac36869f3)
2017-07-19 15:42:04 +10:00
Mark Andrews
afcc29ac05 4651. [bug] Nsupdate could attempt to use a zeroed address on
server timeout. [RT #45417]

(cherry picked from commit 38edf586f9)
2017-07-19 15:37:03 +10:00
Mark Andrews
49a977c6aa 4650. [test] Silence coverity warnings in tsig_test.c. [RT #45528]
(cherry picked from commit c0ac259940)
2017-07-19 14:37:10 +10:00
Tinderbox User
03e4fecdc9 regenerate 2017-07-16 22:28:07 +00:00
Tinderbox User
025e4343f5 regen v9_9 2017-07-16 21:39:21 +00:00
Evan Hunt
44bbb60075 [v9_9] update api ranges 2017-07-16 13:57:35 -07:00
Evan Hunt
9d9f75290f [v9_9] prep 9.9.11 2017-07-16 13:45:36 -07:00
Tinderbox User
e7a1f126d7 regen v9_9 2017-07-16 01:30:21 +00:00
Evan Hunt
344dd358d1 [v9_9] update relnotes to mention termination of windows XP support 2017-07-15 13:58:08 -07:00
Tinderbox User
369df8483a regen v9_9 2017-07-15 01:36:59 +00:00
Evan Hunt
6aea0a0133 [v9_9] add a release note for TSIG regression 2017-07-14 14:53:29 -07:00
Tinderbox User
4d1466b46b regen v9_9 2017-07-11 03:35:52 +00:00
Mark Andrews
a51a9c663a note change in AD setting on some truncated answers
(cherry picked from commit 56d8312a48)
2017-07-11 13:29:43 +10:00
Mark Andrews
b9e22a4a2b add note about .local
(cherry picked from commit 9987992232)
(cherry picked from commit 66afb7c86a)
2017-07-11 12:45:49 +10:00
Tinderbox User
0b3fb0379d update copyright notice / whitespace 2017-07-11 01:47:26 +00:00
Tinderbox User
7130e283a6 newcopyrights 2017-07-11 01:45:55 +00:00
Mark Andrews
6cbddd0137 update for 9.9.11rc1 2017-07-11 11:43:47 +10:00
Mark Andrews
7015ac4491 4435. [tuning] Only set IPV6_USE_MIN_MTU for UDP when the message
will not fit into a single IPv4 encapsulated IPv6
                        UDP packet when transmitted over a Ethernet link.
                        [RT #42871]

(cherry picked from commit 31ffec1541)
2017-07-11 11:42:43 +10:00
Tinderbox User
fa602b4194 regen v9_9 2017-07-10 07:23:16 +00:00
Tinderbox User
a0d79dadb1 regen v9_9 2017-07-10 06:39:25 +00:00
Mark Andrews
aac9afb0ed update for 9.9.11rc1 2017-07-10 15:24:48 +10:00
Tinderbox User
2c94690059 regen v9_9 2017-07-08 01:51:51 +00:00
Tinderbox User
59de594242 update copyright notice / whitespace 2017-07-07 23:47:50 +00:00
Tinderbox User
a0bfd95cbe newcopyrights 2017-07-07 23:30:48 +00:00
Evan Hunt
0a272fbf65 [v9_9] remove spurious "None" from relnotes 2017-07-07 13:19:38 -07:00
Mark Andrews
142d902f08 add #include <isc/print.h>
(cherry picked from commit 00a235c8e6)
2017-07-08 00:48:37 +10:00
Mark Andrews
2fc1b8102d 4647. [bug] Change 4643 broke verification of TSIG signed TCP
message sequences where not all the messages contain
                        TSIG records.  These may be used in AXFR and IXFR
                        responses.  [RT #45509]

(cherry picked from commit 58f0fb325b)
2017-07-07 23:32:01 +10:00
Mukund Sivaraman
869050dd36 Fix typo in configure output
(cherry picked from commit 5f88472fd1)
(cherry picked from commit 5eceaccb00)
(cherry picked from commit a876a730a1)
2017-07-07 17:34:26 +05:30
Tinderbox User
bbcbea7e72 update copyright notice / whitespace 2017-07-05 23:47:03 +00:00
Tinderbox User
6d7a895c35 newcopyrights 2017-07-05 23:30:19 +00:00
Mark Andrews
7ddd8b18e5 4646. [bug] Install lib/export libraries with ${INSTALL_LIBRARY}.
[RT #45497]
2017-07-05 12:13:32 +10:00
Tinderbox User
f09df6e593 update copyright notice / whitespace 2017-07-04 23:47:05 +00:00
Tinderbox User
20f2e0f8d3 newcopyrights 2017-07-04 23:30:22 +00:00
Ray Bellis
af1526af16 fixed new warning with previous iOS patch
(cherry picked from commit 70676a01eb)
2017-07-04 12:14:00 +01:00
Ray Bellis
2c8417447d fix warnings from iOS build of dig
(cherry picked from commit 03a4e4381e)
2017-07-04 11:58:29 +01:00
Evan Hunt
013994d939 [v9_9] remove unneeded ifdefs 2017-06-29 15:56:42 -07:00
Tinderbox User
3765187b5f regen v9_9 2017-06-29 00:18:14 +00:00
Evan Hunt
ad3d2229e4 [v9_9] complete change #4643 2017-06-28 09:12:18 -07:00
Tinderbox User
70780d51ce regen v9_9 2017-06-28 01:38:10 +00:00
Tinderbox User
d009ac5ae2 update copyright notice / whitespace 2017-06-27 23:47:52 +00:00
Tinderbox User
8330e2ecbb newcopyrights 2017-06-27 23:30:35 +00:00
Evan Hunt
adf886ca5b [v9_9] fix API ranges (170-179 was used for two branches) 2017-06-27 12:20:41 -07:00
Evan Hunt
a3f30d1aac [v9_9] address TSIG bypass/forgery vulnerabilities
4643.	[security]	An error in TSIG handling could permit unauthorized
			zone transfers or zone updates. (CVE-2017-3142)
			(CVE-2017-3143) [RT #45383]

(cherry picked from commit 581c1526ab)
(cherry picked from commit a03f4b1ea4)
2017-06-27 11:41:31 -07:00
Evan Hunt
ee44eb6448 [v9_9] enhanced rfc 5011 logging
4642.	[cleanup]	Add more logging of RFC 5011 events affecting the
			status of managed keys: newly observed keys,
			deletion of revoked keys, etc. [RT #45354]

(cherry picked from commit 0d90835d2a)
(cherry picked from commit a71114e8bd)
2017-06-27 10:51:20 -07:00
Tinderbox User
2771704850 regen v9_9 2017-06-26 03:04:09 +00:00
Mark Andrews
5870093bf8 copyrights 2017-06-26 12:36:40 +10:00
Mark Andrews
d96a0f1e9b update api for 9.9.11b1 2017-06-26 12:33:52 +10:00
Mark Andrews
a2ffb897d1 'name' should be on isc_thread_setname argument not isc_thread_create
(cherry picked from commit 15471a63a2)
2017-06-26 12:30:29 +10:00
Mark Andrews
e2f4b81af2 add 9.9.11b1 release marker 2017-06-26 12:25:59 +10:00
Mark Andrews
eff7c4c76d copyrights 2017-06-26 12:23:26 +10:00
Mark Andrews
9d3acdac8b 4641. [cleanup] Parallel builds (make -j) could fail with --with-atf /
--enable-developer. [RT #45373]

(cherry picked from commit 1be7580be7)
2017-06-26 10:03:03 +10:00
Mark Andrews
282980e448 4640. [bug] If query_findversion failed in query_getdb due to
memory failure the error status was incorrectly
                        discarded. [RT #45331]

(cherry picked from commit b551ee14bd)
(cherry picked from commit 18bb24bc37)
2017-06-23 17:19:15 +10:00
Tinderbox User
3bd0f5fc20 update copyright notice / whitespace 2017-06-13 23:47:54 +00:00
Tinderbox User
e62784bf74 newcopyrights 2017-06-13 23:30:51 +00:00
Mark Andrews
0b9020897d 4636. [bug] Normalize rpz policy zone names when checking for
existence. [RT #45358]

(cherry picked from commit e85e95c19e)
2017-06-13 13:15:06 +10:00
Tinderbox User
ce972b1a0c newcopyrights 2017-06-11 23:30:30 +00:00
Mark Andrews
15a79a8d4e 4634. [contrib] check5011.pl needs to handle optional space before
semi-colon in +multi-line output. [RT #45352]

(cherry picked from commit ed2659c974)
2017-06-11 22:05:29 +10:00
Tinderbox User
74ae478d95 update copyright notice / whitespace 2017-06-02 23:46:45 +00:00
Tinderbox User
40843c1f56 newcopyrights 2017-06-02 23:30:25 +00:00
Mark Andrews
8920aee710 4633. [maint] Updated AAAA (2001:500:200::b) for B.ROOT-SERVERS.NET.
(cherry picked from commit 9c179a5607)
2017-06-02 11:49:12 +10:00
Mark Andrews
800a88738d fix changes numbers
(cherry picked from commit 5e1cedb130)
(cherry picked from commit 5e9a9a823e)
2017-05-31 11:51:31 +10:00
Tinderbox User
524ca73aa1 regen v9_9 2017-05-31 01:33:20 +00:00
Tinderbox User
77dd47b406 update copyright notice / whitespace 2017-05-30 23:47:42 +00:00
Tinderbox User
74c0fab200 newcopyrights 2017-05-30 23:30:24 +00:00
Evan Hunt
ef0f8427a2 [v9_9] quote service registry paths
4532.	[security]	The BIND installer on Windows used an unquoted
                        service path, which can enable privilege escalation.
			(CVE-2017-3141) [RT #45229]

(cherry picked from commit 967a3b9419)
(cherry picked from commit c28e44f3f8)
2017-05-30 13:39:28 -07:00
Evan Hunt
10f80ef83a [v9_9] fix rpz formerr loop
4531.	[security]	Some RPZ configurations could go into an infinite
			query loop when encountering responses with TTL=0.
			(CVE-2017-3140) [RT #45181]

(cherry picked from commit 3440cf9c60)
(cherry picked from commit a57b289ed0)
2017-05-30 12:43:57 -07:00
Mark Andrews
fbfaa3e731 4629. [bug] dns_client_startupdate could not be called with a
running client. [RT #45277]

(cherry picked from commit e51d62ecae)
2017-05-30 10:07:15 +10:00
Tinderbox User
c426f41a3a update copyright notice / whitespace 2017-05-28 23:48:04 +00:00
Tinderbox User
8aefc9c582 newcopyrights 2017-05-28 23:30:36 +00:00
Evan Hunt
7334fbc55c [v9_9] Add DLZ db version to activeversions
4628.	[bug]		Fixed a potential reference leak in query_getdb().
			[RT #45247]

(cherry picked from commit 594eadcc34)
2017-05-28 14:34:14 -07:00
Evan Hunt
c212136796 [v9_9] Use 127.0.0.1 as interface for rndc in logfileconfig test 2017-05-28 14:23:45 -07:00
Mark Andrews
d3fcd71286 test crypto support
(cherry picked from commit 0a78894304)
2017-05-26 16:04:35 +10:00
Tinderbox User
2dbcf1439f update copyright notice / whitespace 2017-05-24 23:47:19 +00:00
Tinderbox User
2618f03bed newcopyrights 2017-05-24 23:30:32 +00:00
Mark Andrews
aedef6d0db make chain system test work with python 3
(cherry picked from commit b9c5b37e0c)
2017-05-24 21:45:36 +10:00
Mark Andrews
27c4fa86c6 use 'python -u' to run python scripts
(cherry picked from commit a5dc0d5066)
2017-05-24 15:16:54 +10:00
Evan Hunt
0b3a455cfd [v9_9] copyrights 2017-05-23 16:53:28 -07:00
Evan Hunt
3f25111cd4 [v9_9] add chain ordering tests
4626.	[test]		Added more tests for handling of different record
			ordering in CNAME and DNAME responses. [QA #430]
2017-05-22 17:19:57 -07:00
Tinderbox User
41dd796aff update copyright notice / whitespace 2017-05-21 23:47:32 +00:00
Tinderbox User
5b72ce8d50 newcopyrights 2017-05-21 23:30:29 +00:00
Evan Hunt
7cc666abf1 [v9_9] corrected a possible crash in isc_test_end()
(cherry picked from commit 9e44639ae0)
2017-05-21 15:44:39 -07:00
Tinderbox User
5b695651e8 regen v9_9 2017-05-19 01:38:05 +00:00
Tinderbox User
8b6ad36c54 update copyright notice / whitespace 2017-05-18 23:47:36 +00:00
Tinderbox User
8f5bec1a73 newcopyrights 2017-05-18 23:30:21 +00:00
Evan Hunt
6ef33666bf [v9_9] remove outdated reference to libbind
(cherry picked from commit ef9ab10ce0)
2017-05-18 15:35:40 -07:00
Tinderbox User
97c4ecec1b update copyright notice / whitespace 2017-05-11 23:47:22 +00:00
Tinderbox User
cb8751c323 newcopyrights 2017-05-11 23:30:31 +00:00
Mark Andrews
bd84d0a47a 4624. [bug] Check isc_mem_strdup results in dns_view_setnewzones.
[RT #45210]

(cherry picked from commit 5049d09bca)
2017-05-11 20:38:22 +10:00
Tinderbox User
6894f45100 regen v9_9 2017-05-11 01:37:50 +00:00
Mark Andrews
c3a2924e00 add warning about semicolon no longer being escaped
(cherry picked from commit d4d73bca79)
2017-05-11 11:03:18 +10:00
Mark Andrews
b737849335 4622. [bug] Remove unnecessary escaping of semicolon in CAA and
URI records. [RT #45216]

(cherry picked from commit 1611ceb8b2)
2017-05-11 10:58:29 +10:00
Tinderbox User
dbd030a74a update copyright notice / whitespace 2017-05-10 23:47:30 +00:00
Tinderbox User
5149eb1e0b newcopyrights 2017-05-10 23:30:28 +00:00
Mark Andrews
bc5403f4b0 4621. [port] Force alignment of oid arrays to silence loader
warnings. [RT #45131]

(cherry picked from commit 2fb1a0bdef)
2017-05-11 09:25:13 +10:00
Mark Andrews
c888ce0fa1 4620. [port] Handle EPFNOSUPPORT being returned when probing
to see if a socket type is supported. [RT #45214]

(cherry picked from commit d352a9db95)
(cherry picked from commit e1be9253cb)
2017-05-11 07:59:29 +10:00
Mark Andrews
e5f9d2b0f6 be consistent with master 2017-05-09 11:31:59 +10:00
Mark Andrews
e96268f453 cleanup 2017-05-09 11:15:31 +10:00
Tinderbox User
9654d3a4ab update copyright notice / whitespace 2017-05-08 23:47:19 +00:00
Tinderbox User
45f94f9095 newcopyrights 2017-05-08 23:30:25 +00:00
Mark Andrews
332193940d 4617. [test] Update rndc system test to be more delay tolerant.
[RT #45177]

(cherry picked from commit 31f4fb98e2)
2017-05-09 04:47:18 +10:00
Tinderbox User
8ebfb6cc9a update copyright notice / whitespace 2017-05-02 23:48:00 +00:00
Tinderbox User
bd73011191 newcopyrights 2017-05-02 23:30:31 +00:00
Mark Andrews
d7d9376e61 4615. [bug] AD could be set on truncated answer with no records
present in the answer and authority sections.
                        [RT #45140]

(cherry picked from commit 33e94f501f)
2017-05-03 08:09:05 +10:00
Mark Andrews
673dd20a78 remove unused assignments [RT #45147]
(cherry picked from commit 78551a3f2c)
2017-05-03 07:46:34 +10:00
Evan Hunt
7e48ed2240 [v9_9] error in sockaddr unit test
4614.	[test]		Fixed an error in the sockaddr unit test. [RT #45146]

(cherry picked from commit d73c32c17f)
(cherry picked from commit 512765ba1e)
2017-05-02 13:41:31 -07:00
Tinderbox User
116c184440 update copyright notice / whitespace 2017-05-01 23:47:23 +00:00
Tinderbox User
345be9e938 newcopyrights 2017-05-01 23:30:54 +00:00
Mark Andrews
b2970c4a93 4612. [bug] Silence 'may be use uninitalised' warning and simplify
the code in lwres/getaddinfo:process_answer.
                        [RT #45158]

(cherry picked from commit b09eb48f8a)
(cherry picked from commit 358aa43c8c)
2017-05-02 09:25:08 +10:00
Evan Hunt
ab642c3bf0 [v9_9] add util.h
(cherry picked from commit 532a001001)
2017-05-01 13:29:05 -07:00
Mark Andrews
a41a44bfb7 complete comment marker change
(cherry picked from commit c8abbc4312)
2017-04-30 20:55:49 +10:00
Tinderbox User
7cb8f844a9 update copyright notice / whitespace 2017-04-28 23:47:10 +00:00
Tinderbox User
d251ba561e newcopyrights 2017-04-28 23:30:27 +00:00
Evan Hunt
02cb20760b [v9_9] change markdown comment style for pandoc 2017-04-27 23:44:39 -07:00
Mark Andrews
4034a1176e silence 'may be used uninitialized' warning. [RT #45139]
(cherry picked from commit d1554926d0)
2017-04-28 11:02:25 +10:00
Tinderbox User
db6190e6ca regen v9_9 2017-04-26 23:46:04 +00:00
Evan Hunt
397271035d [v9_9] fix building of markdown output on docs 2017-04-26 16:20:34 -07:00
Tinderbox User
27ce6c57d3 regen v9_9 2017-04-25 01:22:11 +00:00
Tinderbox User
a658d80dc7 update copyright notice / whitespace 2017-04-24 23:47:23 +00:00
Tinderbox User
30450b8f5d newcopyrights 2017-04-24 23:30:31 +00:00
Evan Hunt
96762fdd4c [v9_9] allow parallel make
4609.	[cleanup]	Rearrange makefiles to enable parallel execution
			(i.e. "make -j"). [RT #45078]
2017-04-23 23:04:56 -07:00
Mark Andrews
36a2cde01f 4608. [func] DiG now warns about .local queries which are reserved
for Multicast DNS. [RT #44783]

(cherry picked from commit 7ef453bf43)
2017-04-24 12:07:52 +10:00
Tinderbox User
15731cd16c regen v9_9 2017-04-24 01:23:00 +00:00
Evan Hunt
5c08c59442 [v9_9] update copyrights that had been missed recently 2017-04-23 17:14:54 -07:00
Evan Hunt
4d7cd16627 [v9_9] recent_changes script could terminate too early
(cherry picked from commit 58502352f2)
2017-04-23 17:06:57 -07:00
Tinderbox User
65d4abb881 update copyright notice / whitespace 2017-04-23 23:47:17 +00:00
Mark Andrews
38abff9790 update 2017-04-24 09:44:28 +10:00
Tinderbox User
1966cf8c5e regen v9_9 2017-04-23 01:21:17 +00:00
Mukund Sivaraman
9af94db1da Add missing types for non-threaded build
(cherry picked from commit b1568eeedc)
(cherry picked from commit 5fb7dd046e)
(cherry picked from commit cb0c1c0b04)
2017-04-22 20:03:40 +05:30
Evan Hunt
7f0127c111 [v9_9] openssl backward compatibility fix
4604.	[bug]		Don't use ERR_load_crypto_strings() when building
			with OpenSSL 1.1.0. [RT #45117]

(cherry picked from commit 4c31eda5e1)
2017-04-21 18:56:37 -07:00
Evan Hunt
0f9808291c [v9_9] fix portability issue
(cherry picked from commit 8ee6a6afd8)
2017-04-21 18:16:30 -07:00
Tinderbox User
d77ee7c663 update copyright notice / whitespace 2017-04-21 23:47:35 +00:00
Evan Hunt
ae7d8f92d7 [v9_9] auto-generate named.conf.docbook
4603.	[doc]		Automatically generate named.conf(5) man page
			from doc/misc/options. Thanks to Tony Finch.
			[RT #43525]
2017-04-21 16:40:43 -07:00
Evan Hunt
9ad188ccaf [v9_9] give threads unique names to assist debugging
4602.	[func]		Threads are now set to human-readable
			names to assist debugging, when supported by
			the OS. [RT #43234]

(cherry picked from commit d26ae7fc08)
(cherry picked from commit 8b9c4592ed)
2017-04-21 14:00:54 -07:00
Evan Hunt
dc0a308b9a [v9_9] clear out relnotes 2017-04-21 13:39:29 -07:00
Evan Hunt
8e741d756e [v9_9] typo in rndc doc
(cherry picked from commit b9e736f4f6)
(cherry picked from commit 794e994b5b)
2017-04-21 13:19:57 -07:00
Mukund Sivaraman
4cf12b3916 Reject incorrect RSA key lengths during key generation and and sign/verify context creation (#45043)
(cherry picked from commit 239e9dc81c)
(cherry picked from commit 264e17e739)
(cherry picked from commit 2540059b7b)
2017-04-21 19:09:05 +05:30
Mukund Sivaraman
4973497287 Fix inconsistencies in inline signing time comparisons (#42112)
(cherry picked from commit 4176d278e2)
(cherry picked from commit eeb16584fb)
(cherry picked from commit fb5c4bc94c)
2017-04-21 16:49:03 +05:30
Mukund Sivaraman
3664176a73 Ignore SHA-1 DS digest type when SHA-384 DS digest type is present (#45017)
(cherry picked from commit 5d01eab088)
(cherry picked from commit 9540b42695)
(cherry picked from commit 4ab28446c1)
2017-04-21 16:24:23 +05:30
Mukund Sivaraman
e315a20bd4 Validate glue before adding it to the additional section (#45062)
(cherry picked from commit b0dbcba2d2)
(cherry picked from commit fec9247b8f)
(cherry picked from commit b958488b2e)
2017-04-21 16:03:28 +05:30
Evan Hunt
a63fabb7e0 [v9_9] fix merge error 2017-04-20 20:58:40 -07:00
Evan Hunt
4bb6e3f63e [v9_9] remove references to compile options that aren't in 9.9 2017-04-20 20:15:51 -07:00
Evan Hunt
6f90648dbd [v9_9] update README, remove FAQ
4593.	[doc]		Update README using markdown, remove outdated FAQ
			file in favor of the knowledge base.
2017-04-20 19:50:55 -07:00
Tinderbox User
c6df7a35cd regen v9_9 2017-04-21 01:20:35 +00:00
Evan Hunt
0fcdf50da3 [v9_9] fix change number 2017-04-20 17:43:39 -07:00
Evan Hunt
62fd7f8062 [v9_9] fix dispatch.c shutdown race
4952.	[bug]		A race condition on shutdown could trigger an
			assertion failure in dispatch.c. [RT #43822]

(cherry picked from commit 019132b70c)
2017-04-20 17:42:09 -07:00
Evan Hunt
09408d0381 [v9_9] python 3 compatibility
4591.	[port]		Addressed some python 3 compatibility issues.
			Thanks to Ville Skytta. [RT #44955] [RT #44956]

(cherry picked from commit 6d19d975c6)
(cherry picked from commit 17c7582ad8)
2017-04-20 17:31:53 -07:00
Tinderbox User
922d514bef update copyright notice / whitespace 2017-04-20 23:47:37 +00:00
Tinderbox User
52ad0d86bb newcopyrights 2017-04-20 23:30:55 +00:00
Evan Hunt
ab30439a36 [v9_9] correct a mistake in nsupdate help
(cherry picked from commit bdbdc69a75)
2017-04-20 16:18:13 -07:00
Evan Hunt
267520449b [v9_9] some output was not silenced with configure -q
4589.	[cleanup]	"configure -q" is now silent. [RT #44829]

(cherry picked from commit 897049d129)
(cherry picked from commit 4db2cb92da)
2017-04-20 15:51:40 -07:00
Tinderbox User
cf0cd17b7f regenerate 2017-04-20 18:32:49 +00:00
Tinderbox User
75c0725265 regen v9_9 2017-04-20 18:32:46 +00:00
Evan Hunt
78354abccc [v9_9] update EOL date 2017-04-20 11:26:10 -07:00
Evan Hunt
2a4e8c753e [v9_9] nsupdate: send tkey queries to the right server
4588.	[bug]		nsupdate could send queries for TKEY to the wrong
			server when using GSSAPI. Thanks to Tomas Hozza.
			[RT #39893]

(cherry picked from commit 66b71679b7)
2017-04-20 09:30:19 -07:00
Mark Andrews
3d61a6c12d 4587. [bug] named-checkzone failed to handle occulted data below
DNAMEs correctly. [RT #44877]

(cherry picked from commit 600b027731)
2017-04-20 13:30:57 +10:00
Mark Andrews
11a028ceb4 4585. [port] win32: Set CompileAS value. [RT #42474]
(cherry picked from commit 3742338a7b)
2017-04-20 13:01:35 +10:00
Tinderbox User
93830fbbf8 update copyright notice / whitespace 2017-04-17 23:47:45 +00:00
Tinderbox User
dc6229bc94 newcopyrights 2017-04-17 23:30:29 +00:00
Evan Hunt
b70ae741bf [v9_9] fix out of tree build error
(cherry picked from commit 28cff4f924)
2017-04-17 14:32:13 -07:00
Tinderbox User
1a7c6f9dc8 regenerate 2017-04-14 03:50:56 +00:00
Tinderbox User
9bd65261f6 regen v9_9 2017-04-14 03:50:52 +00:00
Evan Hunt
1398f719a6 [v9_9] prep 9.9.10 2017-04-13 20:44:50 -07:00
Tinderbox User
a27daee583 regen v9_9 2017-04-12 21:35:56 +00:00
Evan Hunt
835485d6a7 [v9_9] formatting
(cherry picked from commit 52e398c0af)
2017-04-12 14:06:18 -07:00
Tinderbox User
42bd0776fd regen v9_9 2017-04-12 01:20:23 +00:00
Tinderbox User
88036745f4 update copyright notice / whitespace 2017-04-11 23:47:24 +00:00
Tinderbox User
efd33e0dec newcopyrights 2017-04-11 23:30:29 +00:00
Evan Hunt
e6732ebd6f [v9_9] fix argument ordering in synopsis 2017-04-11 12:25:15 -07:00
Tinderbox User
abaf4a6a5c regenerate 2017-03-29 22:14:10 +00:00
Tinderbox User
1e6bd6b53a regen v9_9 2017-03-29 22:14:08 +00:00
Mark Andrews
91adc7a4da add CVE-2017-3138
(cherry picked from commit fe1ad70e51)
2017-03-30 02:57:16 +11:00
Tinderbox User
07967caf75 update copyright notice / whitespace 2017-03-24 23:47:23 +00:00
Tinderbox User
bb0783f9e8 newcopyrights 2017-03-24 23:30:31 +00:00
Mark Andrews
8c2d209f09 4582. [security] 'rndc ""' could trigger a assertion failure in named.
(CVE-2017-3138) [RT #44924]

(cherry picked from commit 8e8dfc5941)
2017-03-25 02:08:26 +11:00
Tinderbox User
fbe9182ffd regen v9_9 2017-03-15 01:24:19 +00:00
Mark Andrews
c43edd377b 4580. [bug] 4578 introduced a regression when handling CNAME to
referral below the current domain. [RT #44850]

(cherry picked from commit 638c7c635d)
2017-03-14 15:17:32 +11:00
Francis Dupont
17776a169c Visual Studio 2017 was published 2017-03-10 08:21:51 +01:00
Tinderbox User
ba9be2be7e regen v9_9 2017-03-01 02:26:17 +00:00
Tinderbox User
e66d21bcc5 update copyright notice / whitespace 2017-03-01 01:57:15 +00:00
Tinderbox User
c5b9c62f97 newcopyrights 2017-03-01 01:51:43 +00:00
Tinderbox User
7eea1026e7 regen v9_9 2017-03-01 01:19:35 +00:00
Mark Andrews
b99d097cc4 Reimplement:
4578.   [security]      Some chaining (CNAME or DNAME) responses to upstream
                        queries could trigger assertion failures.
                        (CVE-2017-3137) [RT #44734]

(cherry picked from commit f240f4a5de)
2017-03-01 12:07:56 +11:00
Tinderbox User
b83e4452ee update copyright notice / whitespace 2017-02-28 23:47:20 +00:00
Tinderbox User
1ca3f89dbd newcopyrights 2017-02-28 23:30:26 +00:00
Mark Andrews
72d96237ef fix nsupdate reference
(cherry picked from commit 02fa49a4d8)
2017-03-01 08:34:52 +11:00
Mark Andrews
da4d56894c fix version number 2017-02-27 16:18:20 +11:00
Tinderbox User
9f77d925fa regenerate 2017-02-24 02:40:48 +00:00
Tinderbox User
fe5d457dd8 regen v9_9 2017-02-24 01:19:56 +00:00
Evan Hunt
fcf1874867 [v9_9] remove unnecessary INSIST and prep 9.11.1rc2
4578.	[security]	Some chaining (CNAME or DNAME) responses to upstream
			queries could trigger assertion failures.
			(CVE-2017-3137) [RT #44734]

(cherry picked from commit a1365a0042)
(cherry picked from commit 559cbe04e7)
2017-02-23 15:26:55 -08:00
Mark Andrews
039a1489c8 explicitly cast to (unsigned int) 2017-02-20 17:05:53 +11:00
Mark Andrews
31099ddd3c explictly cast to isc_stdtime_t
(cherry picked from commit 9998a15284)
2017-02-20 16:57:41 +11:00
Tinderbox User
b2526c1003 regen v9_9 2017-02-16 01:47:16 +00:00
Mark Andrews
14d680e3bc 9.9.10; copyrights 2017-02-16 12:41:30 +11:00
Mark Andrews
4ebbb52b1b record ranges; account for -P's 2017-02-16 12:10:14 +11:00
Mark Andrews
52e42f648b add CVE-2017-3136 note
(cherry picked from commit d77eadc261)
2017-02-15 12:45:20 +11:00
Mark Andrews
93fe666d15 update description 2017-02-15 12:37:52 +11:00
Mark Andrews
35ca802c7b 4575. [security] Dns64 with break-dnssec yes; can result in a
assertion failure. (CVE-2017-3136) [RT #44653]

(cherry picked from commit 3bce12e4b6)
2017-02-15 12:24:33 +11:00
Tinderbox User
776ae3c697 regen v9_9 2017-02-08 01:19:36 +00:00
Evan Hunt
02f0aa2ed3 [v9_9] doc style 2017-02-07 08:19:39 -08:00
Tinderbox User
d3a3f28ce8 regen v9_9 2017-02-07 01:17:31 +00:00
Evan Hunt
0220addcca [v9_9] removed extra note about bind.keys update 2017-02-06 14:19:39 -08:00
Mark Andrews
c7fb2ad160 4571. [bug] Out-of-tree builds of backtrace_test failed.
(cherry picked from commit 3e48466e0a)
2017-02-06 13:47:42 +11:00
Tinderbox User
38e779ccaa newcopyrights 2017-02-05 23:30:25 +00:00
Tinderbox User
dea5b9d33d regenerate 2017-02-05 07:00:55 +00:00
Tinderbox User
6fdbc667fb regen v9_9 2017-02-05 06:55:18 +00:00
Evan Hunt
b4a0711e17 [v9_9] prep 9.9.10rc1 2017-02-04 22:36:23 -08:00
Evan Hunt
3b1b532d66 [v9_9] release note about new root key 2017-02-04 22:16:06 -08:00
Tinderbox User
c25649ae56 newcopyrights 2017-02-04 23:30:27 +00:00
Evan Hunt
d8edf39f95 [v9_9] fall back to builtin keys if bind.keys is empty
4570.	[cleanup]	named did not correctly fall back to the built-in
			initializing keys if the bind.keys file was present
			but empty. [RT #44531]
2017-02-04 00:42:31 -08:00
Evan Hunt
f3713038d5 [v9_9] revised comment 2017-02-04 00:24:25 -08:00
Tinderbox User
64258a6b83 regen v9_9 2017-02-04 01:22:01 +00:00
Evan Hunt
feec25e65a [v9_9] add "configure --with-bind" option to dnsperf
4568.	[contrib]	Added a --with-bind option to the dnsperf configure
			script to specify BIND prefix path.

(cherry picked from commit adcdff94d9)
2017-02-03 16:29:24 -08:00
Tinderbox User
84150b929e update copyright notice / whitespace 2017-02-03 23:47:22 +00:00
Tinderbox User
e3e1d782b9 newcopyrights 2017-02-03 23:30:22 +00:00
Evan Hunt
1b3a9c2755 [v9_9] silence "unused value" warning
(cherry picked from commit f4d20b15a2)
2017-02-03 11:27:19 -08:00
Mark Andrews
182d657891 remove outdated cvs $Id strings 2017-02-03 18:44:36 +11:00
Mark Andrews
3cf44b82b4 4567. [port] Call getprotobyname and getservbyname prior to calling
chroot so that shared libraries get loaded. [RT #44537]

(cherry picked from commit c550e75ade)
2017-02-03 14:23:45 +11:00
Tinderbox User
3afe116624 regen v9_9 2017-02-03 01:19:22 +00:00
Tinderbox User
2444ab6b88 update copyright notice / whitespace 2017-02-02 23:48:58 +00:00
Tinderbox User
759956293c newcopyrights 2017-02-02 23:30:44 +00:00
Evan Hunt
5d9663f99a [v9_9] Remove obsolete Id lines that showed old date on generated bind.keys.h 2017-02-02 11:16:41 -08:00
Mark Andrews
07f8c99017 new root KSK 2017-02-02 18:30:20 +11:00
Mark Andrews
5ef10219a1 9.9.10rc1 2017-02-02 18:16:52 +11:00
Mark Andrews
9543825c15 4564. [maint] Update the built in managed keys to include the
upcoming root KSK. [RT #44579]

(cherry picked from commit 00a83c64d7)
2017-02-02 17:38:21 +11:00
Evan Hunt
3e43702524 [v9_9] Squashed commit of the following:
4561.	[port]		Silence a warning in strict C99 compilers. [RT #44414]

(cherry picked from commit 6cb5e36ca3)
2017-02-01 17:31:37 -08:00
Tinderbox User
485b9c96c2 update copyright notice / whitespace 2017-01-31 23:48:07 +00:00
Tinderbox User
462b23e519 newcopyrights 2017-01-31 23:30:50 +00:00
Tinderbox User
861b9203ed regen v9_9 2017-01-31 01:21:13 +00:00
Evan Hunt
ad1ebb5b28 [v9_9] address portability issues
(cherry picked from commit a2bd99a959)
2017-01-30 16:52:42 -08:00
Mark Andrews
8da7fa7b52 add a REQUIRE to catch the NULL pointer dereference that triggered CVE-2017-3135
(cherry picked from commit 1d8995d226)
2017-01-31 11:21:25 +11:00
Tinderbox User
fb8d8cfc2c update copyright notice / whitespace 2017-01-30 23:48:49 +00:00
Evan Hunt
a6bae6d52c [v9_9] change 4558 was incomplete
(cherry picked from commit cd668ea57f)
2017-01-30 14:11:30 -08:00
Tinderbox User
61a5559acd regen v9_9 2017-01-25 01:19:18 +00:00
Tinderbox User
9e04eb78f1 update copyright notice / whitespace 2017-01-24 23:47:30 +00:00
Tinderbox User
0231497642 newcopyrights 2017-01-24 23:30:23 +00:00
Evan Hunt
54407a338b [v9_9] CHANGES typo 2017-01-24 13:10:32 -08:00
Mark Andrews
f0736f9780 fix changes note 2017-01-24 17:53:10 +11:00
Mark Andrews
b15e927949 4560. [bug] mdig: add -m option to enable memory debugging rather
than have in on all the time. [RT #44509]

4559.   [bug]           Openssl_link.c didn't compile if ISC_MEM_TRACKLINES
                        was turned off.  [RT #44509]

(cherry picked from commit 25da687db7)
(cherry picked from commit f7903e4bcc)
2017-01-24 17:50:24 +11:00
Mark Andrews
0ce2803ae7 4558. [bug] Synthesised CNAME before matching DNAME was still
being cached when it should have been.  [RT #44318]

(cherry picked from commit 9f4bf43b79)
2017-01-24 17:41:27 +11:00
Evan Hunt
4474e3aca7 [v9_9] expand relnote
(cherry picked from commit afa0ff0cbb)
2017-01-23 20:05:13 -08:00
Mark Andrews
48744b9b32 fix changes number 2017-01-24 12:39:31 +11:00
Tinderbox User
152947d4f7 regen v9_9 2017-01-24 01:19:27 +00:00
Mark Andrews
eaa394fcfa address rpz version issue 2017-01-24 11:21:55 +11:00
Mark Andrews
4b843e0cc8 4556. [security] Combining dns64 and rpz can result in dereferencing
a NULL pointer (read).  (CVE-2017-3135) [RT#44434]

(cherry picked from commit 5abe80ef13)
2017-01-24 09:56:20 +11:00
Tinderbox User
3d51a06d9d update copyright notice / whitespace 2017-01-19 23:47:43 +00:00
Tinderbox User
7bf85eadb9 newcopyrights 2017-01-19 23:30:24 +00:00
Mark Andrews
3f4d134e72 use TCP macro
(cherry picked from commit 2fa1676380)
2017-01-19 13:14:11 +11:00
Tinderbox User
38e1c56c6d update copyright notice / whitespace 2017-01-14 23:47:28 +00:00
Tinderbox User
f905606ccb newcopyrights 2017-01-14 23:30:29 +00:00
Mark Andrews
830f1c2f03 4554. [bug] Remove double unlock in dns_dispatchmgr_setudp.
[RT #44336]

(cherry picked from commit 5dfa5221d5)
2017-01-14 13:14:41 +11:00
Tinderbox User
eed41a2afc update copyright notice / whitespace 2017-01-13 23:47:32 +00:00
Tinderbox User
db66c73fab newcopyrights 2017-01-13 23:30:23 +00:00
Mark Andrews
f837844b4f make e's declaration unconditional. [RT #44324]
(cherry picked from commit b8eee0f48d)
2017-01-13 16:10:50 +11:00
Mark Andrews
0e948976b3 remove false negatives (add eol to grep patterns; add missing ret=0)
(cherry picked from commit bcfaac260a)
2017-01-13 16:00:38 +11:00
Tinderbox User
e8946b7517 regen v9_9 2017-01-13 01:19:37 +00:00
Tinderbox User
0ed649b6e5 update copyright notice / whitespace 2017-01-12 23:48:25 +00:00
Tinderbox User
0debc41d09 newcopyrights 2017-01-12 23:31:15 +00:00
Mark Andrews
2c5f4a8392 address shadow warning
(cherry picked from commit c2687b0594)
2017-01-13 09:15:17 +11:00
Evan Hunt
b4ff704eaf [v9_9] more specific date for DLV shutdown warning 2017-01-12 09:12:47 -08:00
Mark Andrews
ab9537f521 4553. [bug] Named could deadlock there were multiple changes to
NSEC/NSEC3 parameters for a zone being processed at
                        the same time. [RT #42770]

(cherry picked from commit d2e1b47d4f)
2017-01-12 14:26:17 +11:00
Mark Andrews
72a50181d2 4552. [bug] Named could trigger a assertion when sending notify
messages. [RT #44019]

(cherry picked from commit 42924b40af)
2017-01-12 14:20:18 +11:00
Mark Andrews
ff963a5d93 4552. [bug] Named could trigger a assertion when sending notify
messages. [RT #44019]

(cherry picked from commit 7b9e28f1a5)
2017-01-12 14:14:05 +11:00
Mark Andrews
da671124ad --enable-developer now compiles bin/tests's XTARGETS [RT #44205]
(cherry picked from commit 434477aa02)
2017-01-12 14:08:30 +11:00
Mark Andrews
d8c69ae14f remove false positives due to bad grep [RT #44178]
(cherry picked from commit 0c43d50368)
2017-01-12 13:59:39 +11:00
Mark Andrews
468345fe9b win2utils/Configure report modify file list [RT #43994]
(cherry picked from commit 260ca42f96)
2017-01-12 13:48:13 +11:00
Mark Andrews
da3532f41b 4551. [test] Add system tests for integrity checks of MX and
SRV records. [RT #43953]

(cherry picked from commit 750619b7a8)
2017-01-12 13:38:44 +11:00
Tinderbox User
fd687693fd update copyright notice / whitespace 2017-01-11 23:47:22 +00:00
Tinderbox User
6eb9a836ec newcopyrights 2017-01-11 23:30:18 +00:00
Evan Hunt
7d73d9aafb [v9_9] expand the flags field in dns_master_style
4550.	[cleanup]	Increased the number of available master file
			output style flags from 32 to 64. [RT #44043]
2017-01-11 12:05:54 -08:00
Tinderbox User
78c461f002 newcopyrights 2017-01-06 23:30:13 +00:00
Tinderbox User
72f2700147 regen v9_9 2017-01-06 01:19:58 +00:00
Tinderbox User
d68277c4ea update copyright notice / whitespace 2017-01-05 23:47:02 +00:00
Tinderbox User
d15325a1a9 newcopyrights 2017-01-05 23:30:24 +00:00
Tinderbox User
404fbbb4ff regen v9_9 2017-01-05 01:20:11 +00:00
Tinderbox User
6acf3c319e sync 2017-01-05 01:17:06 +00:00
Evan Hunt
43281eeb83 [v9_9] remove refrerences to keymgr 2016-12-29 11:29:13 -08:00
Tinderbox User
544318aabb newcopyrights 2016-12-29 12:19:34 +00:00
Mark Andrews
b5c3b88f39 remove dnssec-keymgr.html 2016-12-29 19:53:24 +11:00
Mark Andrews
f08cf0ad5a fix ProjectGuid 2016-12-29 19:29:00 +11:00
Mark Andrews
4f5440e435 dnssec-keymgr is not part of 9.9 2016-12-29 18:44:09 +11:00
Tinderbox User
218617c963 regenerate 2016-12-29 05:24:18 +00:00
Tinderbox User
4778e0bff1 regen v9_9 2016-12-29 05:14:34 +00:00
Evan Hunt
035e660ca5 [v9_9] README 2016-12-28 20:42:36 -08:00
Evan Hunt
4e8f6de3dd [v9_9] release notes 2016-12-28 20:10:52 -08:00
Mark Andrews
0faee78f98 9.9.10b1 2016-12-29 13:36:32 +11:00
Evan Hunt
3204e83716 [v9_9] silence warning
(cherry picked from commit b3aebb5890)
2016-12-28 17:54:52 -08:00
Tinderbox User
5fd22bd6c1 regen v9_9 2016-12-29 01:21:40 +00:00
Mark Andrews
0d1a60ec03 spelling 2016-12-29 12:11:21 +11:00
Mark Andrews
a14b7f0187 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]

(cherry picked from commit 6adf421e7e)
2016-12-29 11:53:58 +11:00
Mark Andrews
d372472f60 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]

(cherry picked from commit 2c1c4b99a1)
2016-12-29 11:35:54 +11:00
Tinderbox User
c38b1c7115 update copyright notice / whitespace 2016-12-28 23:58:02 +00:00
Mark Andrews
69cb8ebf15 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:46:44 +11:00
Tinderbox User
9694bf30f5 newcopyrights 2016-12-28 23:32:08 +00:00
Evan Hunt
81a5785611 [v9_9] release notes 2016-12-28 13:54:44 -08:00
Evan Hunt
8a9a26e6a6 [v9_9] spelling 2016-12-28 11:52:52 -08:00
Mark Andrews
c161d54a65 4543. [bug] dns_client_startupdate now delays sending the update
request until isc_app_ctxrun has been called.
                        [RT #43976]

(cherry picked from commit 6f94747270)
2016-12-28 15:56:30 +11:00
Mark Andrews
354f7b05ef 4541. [bug] rndc addzone should properly reject non master/slave
zones. [RT #43665]

(cherry picked from commit e20db12918)
2016-12-28 11:08:26 +11:00
Tinderbox User
5b8a62f4cd regen v9_9 2016-12-27 01:23:10 +00:00
Evan Hunt
fba8395a4f [v9_9] document that RPZ is unmaintained in 9.9 2016-12-26 16:33:48 -08:00
Tinderbox User
7429284419 update copyright notice / whitespace 2016-12-26 23:51:09 +00:00
Tinderbox User
69b8b378af newcopyrights 2016-12-26 23:31:54 +00:00
Mark Andrews
387a64a898 remove references to catalog-zones 2016-12-27 09:42:45 +11:00
Mark Andrews
c8174a6268 4539. [bug] Referencing a nonexistant zone with rpz could lead
to a assertion failure when configuring. [RT #43787]

(cherry picked from commit 762c4fc5a8)
2016-12-27 09:41:14 +11:00
Mark Andrews
2af18c1396 4538. [bug] Call dns_client_startresolve from client->task.
[RT #43896]

(cherry picked from commit aceabacdb8)
2016-12-27 07:15:23 +11:00
Mark Andrews
7fe83fb929 if gen fails remove the target [RT #43949] 2016-12-23 09:23:13 +11:00
Mark Andrews
0e43b24249 if gen fails remove the file [RT #43949]
(cherry picked from commit e17d2f98be)
2016-12-23 09:21:26 +11:00
Mark Andrews
be7aa3f5a9 freeaddrinfo is called too early.
(cherry picked from commit c1870d0e44)
2016-12-15 09:40:03 +11:00
Mark Andrews
8806de3986 4537. [bug] Handle timouts better in dig/host/nslookup. [RT #43576]
(cherry picked from commit 6089c8df71)
2016-12-14 15:45:43 +11:00
Tinderbox User
8e87a1592d update copyright notice / whitespace 2016-12-13 23:51:10 +00:00
Mark Andrews
3fe3359031 4535. [bug] Address race condition in setting / testing of
DNS_REQUEST_F_SENDING. [RT #43889]

(cherry picked from commit 37a8db0ba4)
2016-12-14 10:34:43 +11:00
Tinderbox User
0bd4d32e3d newcopyrights 2016-12-13 23:31:54 +00:00
Mark Andrews
bcdf316ca5 4534. [bug] Only set RD, RA and CD in QUERY responses. [RT #43879]
(cherry picked from commit def6b33bad)
2016-12-13 16:38:50 +11:00
Mark Andrews
25725d525d spelling 2016-12-13 16:19:41 +11:00
Mark Andrews
0aa9619f9e 4533. [bug] dns_client_update should terminate on prerequiste
failures (NXDOMAIN, YXDOMAIN, NXRRSET, YXRRSET)
                        and also on BADZONE.  [RT #43865]

(cherry picked from commit 8ca45ba01a)
2016-12-13 16:12:45 +11:00
Mark Andrews
0e44069212 number all resolver tests
(cherry picked from commit 4914e3ddc6)
2016-12-13 15:14:26 +11:00
Tinderbox User
06526b634c newcopyrights 2016-12-12 23:31:21 +00:00
Evan Hunt
df1d48d1ee [v9_9] tweak logfileconfig test so it can pass on slower machines
(cherry picked from commit 76a26842a9)
2016-12-12 12:13:41 -08:00
Mark Andrews
05f16bb533 4532. [contrib] Make gen-data-queryperf.py python 3 compatible.
[RT #43836]

(cherry picked from commit 043ae106d2)
2016-12-12 17:47:54 +11:00
Tinderbox User
580760b8d5 update copyright notice / whitespace 2016-12-09 23:49:23 +00:00
Tinderbox User
bcf06a67a2 newcopyrights 2016-12-09 23:31:13 +00:00
Mark Andrews
2c74ad28ef 4530. [bug] Change 4489 broke the handling of CNAME -> DNAME
in responses resulting in SERVFAIL being returned.
                        [RT #43779]

(cherry picked from commit 60cb462c56)
2016-12-09 12:51:40 +11:00
Tinderbox User
881739ee87 regen v9_9 2016-12-09 01:20:54 +00:00
Tinderbox User
252c8f6395 update copyright notice / whitespace 2016-12-08 23:50:36 +00:00
Tinderbox User
b9e42afe9c newcopyrights 2016-12-08 23:31:13 +00:00
Mark Andrews
87dbe24a4f 4528. [bug] Only set the flag bits for the i/o we are waiting
for on EPOLLERR or EPOLLHUP. [RT #43617]

(cherry picked from commit c1619b8420)
2016-12-08 17:00:55 +11:00
Mark Andrews
45cd9d8bcd remove diff 2016-12-08 11:02:19 +11:00
Tinderbox User
298442a447 regen v9_9 2016-12-07 01:21:30 +00:00
Mark Andrews
3cf6fa831e 4527. [doc] Support DocBook XSL Stylesheets v1.79.1. [RT #43831]
(cherry picked from commit 1b8ce3b330)
2016-12-07 11:00:40 +11:00
Tinderbox User
1912945682 update copyright notice / whitespace 2016-12-05 23:51:33 +00:00
Tinderbox User
55c9607297 newcopyrights 2016-12-05 23:32:01 +00:00
Tinderbox User
5d5948e985 regenerate 2016-12-05 19:20:13 +00:00
Tinderbox User
c43ee4b39e regen v9_9 2016-12-05 18:38:16 +00:00
Evan Hunt
1ce8089b2c [v9_9] fixed ARM grammars
4526.	[doc]		Corrected errors and improved formatting of
			grammar defintiions in the ARM. [RT #43739]
2016-12-05 10:01:22 -08:00
Mark Andrews
f50199c329 look $UNLIMITEDFILE.4 as $UNLIMITEDFILE.5 may not exist yet 2016-12-05 18:19:41 +11:00
Mark Andrews
937a5311ff remove ns1/query_log 2016-12-05 17:31:38 +11:00
Evan Hunt
27dc8c9287 [v9_9] fix managed-keys doc
4525.	[doc]		Fixed outdated documentation on managed-keys.
			[RT #43810]

(cherry picked from commit e1ba21bd58)
(cherry picked from commit 9e42fd3420)
2016-12-04 20:25:30 -08:00
Mark Andrews
8b094c484c 4524. [bug] The net zero test was broken causing IPv4 servers
with addresses ending in .0 to be rejected. [RT #43776]

(cherry picked from commit df372d967e)
2016-12-05 10:50:36 +11:00
Mark Andrews
f11be93ae4 added -T keepstderr to keep stderr open when daemonizing [RT #43736]
(cherry picked from commit c9ee977f31)
2016-12-05 10:40:09 +11:00
Mukund Sivaraman
67b62f0062 Add doc function for cfg_type_querysource4 and cfg_type_querysource6 (#43768)
(cherry picked from commit 5c843b384d)
(cherry picked from commit 6ae22c4119)
(cherry picked from commit 150ff959d1)
2016-12-02 11:30:13 +05:30
Tinderbox User
85f8b3d7d8 regen v9_9 2016-12-01 01:21:55 +00:00
Tinderbox User
e91d41eba4 update copyright notice / whitespace 2016-11-30 23:53:47 +00:00
Mark Andrews
ae18cbb06c update 2016-12-01 10:40:28 +11:00
Evan Hunt
510e50591a [v9_9] fix merge error 2016-11-29 17:51:46 -08:00
Tinderbox User
72128b2a6d regen v9_9 2016-11-30 01:23:35 +00:00
Mark Andrews
c7948d9050 4522. [bug] Handle big gaps in log file version numbers better.
[RT #38688]

(cherry picked from commit cab871f1bc)
2016-11-30 11:29:34 +11:00
Evan Hunt
f47c8aa6f7 [v9_9] log as error if entropy unavailable
4521.	[cleanup]	Log it as an error if an entropy source is not
			found and there is no fallback available. [RT #43659]

(cherry picked from commit 6bdb70057d)
2016-11-29 11:38:42 -08:00
Mark Andrews
ef3856d2b2 4520. [cleanup] Alphabetise more of the grammar when printing it
out. Fix unbalanced indenting. [RT #43755]

(cherry picked from commit 4352551d23)
2016-11-29 15:50:27 +11:00
Mark Andrews
c04ad8ac8a 4519. [port] win32: handle ERROR_MORE_DATA. [RT #43534]
(cherry picked from commit a611e44f9a)
2016-11-29 11:31:06 +11:00
Tinderbox User
0cd3898b35 regen v9_9 2016-11-25 21:15:14 +00:00
Mark Andrews
94ae9bb8e2 automate insertion of copyright year list into Bv9ARM-book.xml
(cherry picked from commit cd1465de0e)
2016-11-26 07:53:36 +11:00
Francis Dupont
4a0b701129 Added VS 2017 RC 2016-11-24 17:46:02 +01:00
Tinderbox User
794b9fbd1a update copyright notice / whitespace 2016-11-19 23:51:53 +00:00
Mark Andrews
2bf6f5f865 regen 2016-11-19 20:13:17 +11:00
Curtis Blackburn
bc3145ccd8 4515. [port] FreeBSD: Find readline headers when they are in
edit/readline/ instead of readline/. [RT #43658]
2016-11-18 11:39:11 -08:00
Tinderbox User
d2ff14de43 regen v9_9 2016-11-17 01:23:40 +00:00
Tinderbox User
cecc117aca sync 2016-11-17 01:20:13 +00:00
Mark Andrews
1b4fe21a54 check the value of s
(cherry picked from commit 28f344c18a)
2016-11-15 16:52:45 +11:00
Mukund Sivaraman
fec9998849 Update CHANGES entry to match KB article
(cherry picked from commit ea3c3afadc)
(cherry picked from commit bc03086838)
2016-11-14 14:24:34 +09:00
Mark Andrews
0ed39f1c58 adjust test based on systems default ipv6only state 2016-11-11 09:10:40 +11:00
Mark Andrews
47e68339d2 4513. [cleanup] Minimum Python versions are now 2.7 and 3.2.
[RT #43566]

(cherry picked from commit 472e99cfa6)
2016-11-10 09:59:14 +11:00
Mark Andrews
dbd472d81a don't call dst_lib_destroy in t2_vfy
(cherry picked from commit 1106845b4e)
2016-11-09 17:04:45 +11:00
Mark Andrews
2b97639b9b use isc_mem_create2 2016-11-09 16:24:48 +11:00
Mark Andrews
01b507f4b4 missing semicolon 2016-11-09 15:49:33 +11:00
Tinderbox User
ff69a0423e update copyright notice / whitespace 2016-11-08 23:57:34 +00:00
Tinderbox User
0b9ab415a2 newcopyrights 2016-11-08 23:32:57 +00:00
Mark Andrews
193c1e2618 back port alway use a private memory pool with openssl 2016-11-09 10:22:35 +11:00
Mark Andrews
8176815e04 back port alway use a private memory pool with openssl 2016-11-09 10:17:28 +11:00
Mark Andrews
964e19cea8 4497. [port] Add support for OpenSSL 1.1.0. [RT #41284] 2016-11-09 09:59:32 +11:00
Mark Andrews
344911083f remove spurious newline [RT #43585]
(cherry picked from commit fed2f7e4c1)
2016-11-09 08:27:37 +11:00
Evan Hunt
1671fc195c [v9_9] typo in comment 2016-11-08 09:06:40 -08:00
Francis Dupont
e493ed7c45 Fixed filter-aaaa prereq.sh and feature-test.c 2016-11-04 15:00:25 +01:00
Tinderbox User
fc6f778fd8 update copyright notice / whitespace 2016-11-03 23:51:28 +00:00
Tinderbox User
721bb3ccc7 newcopyrights 2016-11-03 23:32:17 +00:00
Evan Hunt
4ba653c366 [v9_9] make rrl system test more robust
4508.	[test]		Make the rrl system test more reliable on slower
			machines by using mdig instead of dig. [RT #43280]

(cherry picked from commiti 1ecdb4d59e)
2016-11-02 20:53:59 -07:00
Mark Andrews
fcf72a5474 cleanup 2016-11-03 13:55:56 +11:00
Evan Hunt
76961a4dd8 [v9_9] corrected typo in nsupdate test (DIG-->$DIG) 2016-11-02 19:35:05 -07:00
Tinderbox User
d08d5a5949 regen v9_9 2016-11-03 01:24:35 +00:00
Tinderbox User
a06917d08f update copyright notice / whitespace 2016-11-02 23:51:39 +00:00
Mark Andrews
bd3a5fe9c1 add dns_db_getsize, dns_rdataslab_count, dns_zone_getmaxrecords, dns_zone_setmaxrecords
(cherry picked from commit aee76db9e3)
2016-11-03 10:48:33 +11:00
Mark Andrews
51fe40fd59 4504. [security] Allow the maximum number of records in a zone to
be specified.  This provides a control for issues
                        raised in CVE-2016-6170. [RT #42143]

(cherry picked from commit 5f8412a4cb)
2016-11-03 10:46:37 +11:00
Tinderbox User
34ffe07660 newcopyrights 2016-11-02 23:33:13 +00:00
Evan Hunt
5106233113 [v9_9] typo 2016-11-02 09:43:22 -07:00
Francis Dupont
d5d31e2b8d Name -> Named 2016-11-02 09:28:44 +01:00
Francis Dupont
187c8c80cc Fixed IP_PMTUDISC_OMIT typos 2016-11-02 09:22:58 +01:00
Mark Andrews
a4156963f0 4507. [bug] Name could incorrectly log 'allows updates by IP
address, which is insecure' [RT #43432]

(cherry picked from commit 2b2b85c897)
2016-11-02 18:22:04 +11:00
Mark Andrews
2a6337f7bf 4505. [port] Use IP_PMTUDISC_OMIT if available. [RT #35494]
(cherry picked from commit a61f252391)
2016-11-02 17:41:59 +11:00
Evan Hunt
bd97809fdf [v9_9] restore dropped #else block 2016-11-01 22:34:59 -07:00
Evan Hunt
ce1db2d9ce [v9_9] typo 2016-11-01 20:31:21 -07:00
Evan Hunt
60814deed8 [v9_9] make uninstall
4503.	[cleanup]	"make uninstall" now removes file installed by
			BIND. (This currently excludes Python files
			due to lack of support in setup.py.) [RT #42912]

(cherry picked from commit 6087f87afb)
(cherry picked from commit 398f8c32f3)
2016-11-01 20:22:35 -07:00
Mark Andrews
43af4ab515 4502. [func] Report multiple and experimental options when printing
grammar. [RT #43134]

(cherry picked from commit 89286906dc)
2016-11-02 13:37:23 +11:00
Tinderbox User
63066ab332 regen v9_9 2016-11-02 01:22:59 +00:00
Tinderbox User
f90ff76872 update copyright notice / whitespace 2016-11-01 23:51:11 +00:00
Tinderbox User
0313294c09 newcopyrights 2016-11-01 23:37:39 +00:00
Mark Andrews
ee77245897 4501. [bug] Fix 'dig -4 -6'/'dig -6 -4' error handling. [RT #43259] 2016-11-02 09:16:48 +11:00
Mark Andrews
efb91beba1 4500. [bug] Support modifier I64 in isc__print_printf. [RT #43526]
(cherry picked from commit e200da5044)
2016-11-02 08:46:52 +11:00
Evan Hunt
f1c484217a [v9_9] use arc4random_stir() when available
4499.	[port]		MacOSX: silence deprecated function warning
			by using arc4random_stir() when available
			instead of arc4random_addrandom(). [RT #43503]

(cherry picked from commit 3fb62a5a4e)
2016-11-01 14:01:05 -07:00
Evan Hunt
a9b5a3fbf9 [v9_9] clean up reporting of R:FAIL so it can't spuriously appear mid-test
(cherry picked from commit 7960fc596b)
2016-11-01 13:47:33 -07:00
Evan Hunt
1b8d070f9a [v9_9] simplify prereq checks by using feature-test.c
4498.	[test]		Simplify prerequisite checks in system tests.
			[RT #43516]

(cherry picked from commit 5480a74b70)
(cherry picked from commit 45fd95544c)
(cherry picked from commit 6e09e18400)
2016-11-01 13:10:07 -07:00
Evan Hunt
61a01f4860 [v9_9] 4496. [func] dig: add +idnout to control whether labels are
display in punycode or not.  Requires idn support
                        to be enabled at compile time. [RT #43398]

(cherry picked from commit 42470b0b87)
(cherry picked from commit 6552f33198)
(cherry picked from commit 7aec46a5ef)
2016-10-31 23:01:38 -07:00
Mark Andrews
a3a3eb95d7 update spelling in comment
(cherry picked from commit ace79092b3)
2016-11-01 10:52:07 +11:00
Mark Andrews
fa2ed4b627 update copyrights 2016-10-28 11:30:47 +11:00
Francis Dupont
6bafcb6553 Merged rt43345 libisccfg spuriously depended on libisccc 2016-10-27 14:14:50 +02:00
Mark Andrews
fa3609a32a 4494. [bug] Look for <editline/readline.h>. [RT #43429]
(cherry picked from commit 6fbb2b51d8)
2016-10-27 15:50:31 +11:00
Mark Andrews
9de8fa2535 4492. [bug] irs_resconf_load failed to initialise sortlistnxt
causing bad writes if resolv.conf contained a
                        sortlist directive. [RT #43459]

(cherry picked from commit 55b78fff62)
2016-10-27 13:20:39 +11:00
Tinderbox User
ffd842a66d update copyright notice / whitespace 2016-10-26 23:49:24 +00:00
Tinderbox User
7fb18f0d20 newcopyrights 2016-10-26 23:30:33 +00:00
Mark Andrews
2a9d8ad8a5 s/,/;/
(cherry picked from commit 856c77cc40)
2016-10-26 22:39:09 +11:00
Mark Andrews
97f909b7f4 4490. [maint] Added AAAA (2001:500:12::d0d) for G.ROOT-SERVERS.NET.
(cherry picked from commit 3b7cb2c5b1)
2016-10-21 22:44:55 +11:00
Mark Andrews
bbb7c613b3 4489. [security] It was possible to trigger assertions when processing
a response. (CVE-2016-8864) [RT #43465]

(cherry picked from commit bd6f27f5c3)
2016-10-21 14:56:32 +11:00
Tinderbox User
c31bd3e56c update copyright notice / whitespace 2016-10-20 23:50:25 +00:00
Tinderbox User
926fc21611 newcopyrights 2016-10-20 23:32:18 +00:00
Mark Andrews
ec1d0e6173 4488. [port] Darwin: use -framework for Kerberos. [RT #43418]
(cherry picked from commit 8d6fefac31)
2016-10-20 10:52:35 +11:00
Tinderbox User
b5877de271 regen v9_9 2016-10-16 01:18:39 +00:00
Tinderbox User
6170b0861f update copyright notice / whitespace 2016-10-15 23:49:32 +00:00
Tinderbox User
ae6f723a5f newcopyrights 2016-10-15 23:31:00 +00:00
Mark Andrews
971bd88807 add managed keys to view section
(cherry picked from commit 7551ec1ebe)
2016-10-16 08:16:22 +11:00
Mark Andrews
9f8625cbe4 fix changes numbers
(cherry picked from commit b1b595617b)
2016-10-12 12:35:12 +11:00
Mark Andrews
41bdf1cc10 further readline changes [RT #43139]
(cherry picked from commit 09f914d2d4)
2016-10-12 11:58:39 +11:00
Tinderbox User
e3a5eb9332 update copyright notice / whitespace 2016-10-11 23:49:14 +00:00
Tinderbox User
df0cb98bbe newcopyrights 2016-10-11 23:30:51 +00:00
Mark Andrews
f22bd288a0 don't clobber readline
(cherry picked from commit ccf0bea98a)
2016-10-11 17:32:18 +11:00
Mark Andrews
328dbc4cf4 fix typo
(cherry picked from commit 6bb84df34d)
2016-10-11 17:06:12 +11:00
Mark Andrews
3793d848bd don't require lctx to be non NULL 2016-10-11 17:02:12 +11:00
Mark Andrews
682639aa92 4485. [bug] Look in $prefix/lib/pythonX.Y/site-packages for
the python modules we install. [RT #43330]

(cherry picked from commit 01862dfaa5)
2016-10-11 15:22:56 +11:00
Mark Andrews
8588641801 4484. [bug] Failure to find readline when requested should be
fatal to configure. [RT #43328]

(cherry picked from commit 6caac8d9a9)
2016-10-11 15:16:32 +11:00
Mark Andrews
883e29ab4f 4483. [func] Check prefixes in acls to make sure the address and
prefix lengths are consistent.  Warn only in
                        BIND 9.11 and earlier. [RT #43367]
2016-10-11 15:04:34 +11:00
Mark Andrews
311060a573 4482. [bug] Address use before require check and remove extraneous
dns_message_gettsigkey call in dns_tsig_sign.
                        [RT #43374]

(cherry picked from commit 61463ab7a4)
2016-10-11 14:42:04 +11:00
Evan Hunt
2f6d8c714c [v9_9] add missing REQUIREs in cfg parser
(cherry picked from commit d58d861cbc)
2016-10-10 17:16:42 -07:00
Mark Andrews
b177dbf3e7 sleep 2 to let in progress lookups complete
(cherry picked from commit d3f29e7a4f)
2016-10-10 14:36:15 +11:00
Tinderbox User
0cf8d3a0b3 regen v9_9 2016-10-06 01:16:05 +00:00
Tinderbox User
0e5efd5369 update copyright notice / whitespace 2016-10-05 23:47:17 +00:00
Tinderbox User
81b9104ae9 newcopyrights 2016-10-05 23:30:22 +00:00
Witold Krecicki
a3aa9c4b05 4476. [test] Fix reclimit test on slower machines. [RT #43283] 2016-10-05 13:19:21 +02:00
Mark Andrews
5b390ffdce 4475. [doc] Update named-checkconf documentation. [RT #43153]
(cherry picked from commit 67cdd2d3a4)
2016-10-05 14:28:03 +11:00
Mark Andrews
90fe0b9474 4474. [bug] win32: call WSAStartup in fromtext_in_wks so that
getprotobyname and getservbyname work.  [RT #43197]

(cherry picked from commit 82a50a619a)
2016-10-05 12:30:10 +11:00
Mark Andrews
7416c4c181 4473. [bug] Only call fsync / _commit on regular files. [RT #43196]
(cherry picked from commit fe4d0fbc7c)
2016-10-05 12:20:59 +11:00
Tinderbox User
481a84d8ab update copyright notice / whitespace 2016-10-04 23:48:50 +00:00
Mark Andrews
3a125854c9 4472. [bug] Named could fail to find the correct NSEC3 records when
a zone was update between looking for the answer and
                        looking for the NSEC3 records proving non-existance
                        of the answer. [RT #43247]
2016-10-05 10:41:05 +11:00
Tinderbox User
b4cedc27be newcopyrights 2016-10-04 23:30:51 +00:00
Witold Krecicki
61a9e9108b [master] Fix a minor bug in isc_netaddr_masktoprefixlen
(cherry picked from commit f78603b534)
2016-10-05 09:07:30 +11:00
Mukund Sivaraman
78af9ed48a Typo
(cherry picked from commit b7d07b861b)
(cherry picked from commit 6f2752da7a)
(cherry picked from commit 62b4b99d0e)
2016-10-01 11:36:52 +05:30
Mark Andrews
5ed415cc8e use repo.isc.org rt43254
(cherry picked from commit ea23a4868c)
2016-09-26 15:25:50 +10:00
Tinderbox User
9bc05fc419 update copyright notice / whitespace 2016-09-21 23:51:39 +00:00
Evan Hunt
099cd0454b [v9_9] revert accidental query logging format change
4471.   [cleanup]       Revert a query logging change inadvertently
                        backported from 9.11. [RT #43238]

(cherry picked from commit 00d496d9e20b2c8c1d4a5ce752a1f8efb3009ca0)
(cherry picked from commit b9dc79840e)
2016-09-21 11:27:30 -07:00
Tinderbox User
8fbe0193ef regen v9_9 2016-09-09 02:28:17 +00:00
Mark Andrews
fa1f25ce83 add CVE-2016-2776 2016-09-09 11:53:18 +10:00
Mark Andrews
e1570b4fc0 add CVE-2016-2776 2016-09-09 11:41:41 +10:00
Mark Andrews
b487c305aa add CVE-2016-2776
(cherry picked from commit 9872e3fbd9)
2016-09-09 11:37:11 +10:00
Mark Andrews
51bcc28543 4467. [security] It was possible to trigger a assertion when rendering
a message. [RT #43139]

(cherry picked from commit 2bd0922cf9)
2016-09-09 11:32:22 +10:00
Tinderbox User
ab083050a6 update copyright notice / whitespace 2016-09-08 23:46:41 +00:00
Tinderbox User
cb0ab4ef73 newcopyrights 2016-09-08 23:30:14 +00:00
Mark Andrews
120de36b05 4466. [bug] Interface scanning didn't work on a Windows system
without a non local IPv6 addresses. [RT #43130]

(cherry picked from commit 61ca100b80)
2016-09-08 14:26:56 +10:00
Mark Andrews
24695806b8 4464. [bug] Fix windows python support. [RT #43173]
(cherry picked from commit 85468d4c81)
2016-09-08 14:02:24 +10:00
Francis Dupont
d5cd6390de Fixed obvious typo in t_atomic 2016-09-08 02:00:12 +02:00
Tinderbox User
7e8f6348fc update copyright notice / whitespace 2016-09-07 23:46:39 +00:00
Tinderbox User
ebeaadb48d newcopyrights 2016-09-07 23:30:20 +00:00
Mark Andrews
867ddf62f4 4461. [bug] win32: not all external data was properly marked
as external data for windows dll. [RT #43161]
2016-09-07 14:53:02 +10:00
Mark Andrews
c2c51d71fa silence unused variable 'pollstate' warning [RT #43109]
(cherry picked from commit 9d11e46714)
2016-08-30 14:26:34 +10:00
Mark Andrews
2a82be6f3d spelling 2016-08-30 09:57:00 +10:00
Mark Andrews
6eba8c2453 whitespace 2016-08-30 09:43:50 +10:00
Evan Hunt
5b6ef50033 Plug a geoip leak and some cleanup [RT #43106]
(cherry picked from commit a26a62cef2)
(cherry picked from commit af326c2e3f)
(cherry picked from commit a3cee5460d)
2016-08-30 00:41:28 +05:30
Mukund Sivaraman
05f676f3e6 Update assertions to be more correct, and also remove use of a reserved word (#43090)
Note: this doesn't actually fix #43090.
(cherry picked from commit becac651e8)
(cherry picked from commit ce78690029)
(cherry picked from commit 0edca7b6cd)
2016-08-29 18:58:09 +05:30
Mark Andrews
7468edf680 make depend needs to decend into lib/*/test [rt #43105]
(cherry picked from commit 5336feefb0)
2016-08-29 10:20:34 +10:00
Mark Andrews
d04daf6177 4457. [maint] Added AAAA (2001:500:a8::e) for E.ROOT-SERVERS.NET.
(cherry picked from commit c55b572ccf)
2016-08-29 10:17:07 +10:00
Tinderbox User
97be6440b7 update copyright notice / whitespace 2016-08-26 23:46:55 +00:00
Tinderbox User
804a5544e4 newcopyrights 2016-08-26 23:30:17 +00:00
Mark Andrews
38986ceb4d 4456. [doc] Add DOCTYPE and lang attribute to <html> tags.
[RT #42587]

(cherry picked from commit 63fe88e8d8)
2016-08-26 15:52:09 +10:00
Tinderbox User
9da1040540 update copyright notice / whitespace 2016-08-18 23:46:51 +00:00
Tinderbox User
6dd93e933a newcopyrights 2016-08-18 23:30:26 +00:00
Mark Andrews
12f7b04f08 install isc/errno.h
(cherry picked from commit dec17fb662)
2016-08-18 22:16:20 +10:00
Mark Andrews
a72ccc709d 4448. [bug] win32: ::1 was not being found when iterating
interfaces. [RT #42993]

(cherry picked from commit 6e4788dd12)
2016-08-18 22:01:29 +10:00
Tinderbox User
65588217fc update copyright notice / whitespace 2016-08-17 23:46:55 +00:00
Tinderbox User
edfe038690 newcopyrights 2016-08-17 23:30:47 +00:00
Evan Hunt
57cc5d16ef [v9_9] fix merge error 2016-08-17 12:34:36 -07:00
Evan Hunt
65e144e0de [v9_9] isc_errno_toresult()
4445.	[cleanup]	isc_errno_toresult() can now be used to call the
			formerly private function isc__errno2result().
			[RT #43050]

(cherry picked from commit ddef16e1d9)
2016-08-17 11:37:51 -07:00
Mark Andrews
69d239f1c9 4443. [func] Set TCP_MAXSEG in addition to IPV6_USE_MIN_MTU on
TCP sockets. [RT #42864]

(cherry picked from commit 7872d4d1c0)
2016-08-16 07:45:56 +10:00
Mark Andrews
c9fcc2ef9b 4441. [cleanup] Alphabetize host's help output. [RT #43031]
(cherry picked from commit 8a98ea9e94)
2016-08-15 11:24:14 +10:00
Tinderbox User
b2d178a72a update copyright notice / whitespace 2016-08-11 23:46:43 +00:00
Tinderbox User
bceb3d05bd newcopyrights 2016-08-11 23:30:32 +00:00
Evan Hunt
12d76b1b8f [v9_9] error on bad parameter to 'rndc dumpdb'
4433.	[cleanup]	Report an error when passing an invalid option or
			view name to "rndc dumpdb". [RT #42958]

(cherry picked from commit c38d989fdd)
(cherry picked from commit 17de0f290c)
2016-08-11 16:12:23 -07:00
Tinderbox User
2900a9c387 update copyright notice / whitespace 2016-08-10 23:46:31 +00:00
Tinderbox User
38a1b06f77 newcopyrights 2016-08-10 23:30:19 +00:00
Evan Hunt
5dec26625f [v9_9] correct [testing] tags to [test] 2016-08-10 09:28:53 -07:00
Mark Andrews
97058daadd 4432. [testing] Hide rndc output on expected failures in logfileconfig
system test. [RT #27996]

(cherry picked from commit 12895c8d6f)
2016-08-10 13:11:38 +10:00
Mark Andrews
74e3efd1d8 remove openssl-1.0.2f-patch and openssl-1.0.1q-patch 2016-08-09 10:29:21 +10:00
Tinderbox User
720210eb56 update copyright notice / whitespace 2016-08-09 00:26:28 +00:00
Mark Andrews
2b0ed2b030 update 2016-08-09 10:21:26 +10:00
Mark Andrews
39344a5739 4431. [bug] named-checkconf now checks the rate-limit clause.
[RT #42970]

(cherry picked from commit 632e67baa6)
2016-08-09 00:00:20 +10:00
Mark Andrews
9a05362952 4430. [bug] Lwresd died if a search list was not defined.
Found by 0x710DDDD At Alibaba Security. [RT #42895]

(cherry picked from commit 3146be6fd6)
2016-08-08 10:34:48 +10:00
Mark Andrews
6eed9cc033 remove spurious break 2016-08-01 12:26:43 +10:00
Tinderbox User
f0899e82c8 update copyright notice / whitespace 2016-07-25 23:49:53 +00:00
Tinderbox User
12d4dce932 newcopyrights 2016-07-25 23:31:23 +00:00
Mark Andrews
c49d97b741 4425. [bug] arpaname and dnstap-read were not being installed
into ${prefix}/bin.  Tidy up installation issues
                        with CHANGE 4421. [RT #42910]

(cherry picked from commit 711aff9fa7)
(cherry picked from commit c572930400)
2016-07-26 07:08:47 +10:00
Tinderbox User
f1295e65ed update copyright notice / whitespace 2016-07-22 23:49:47 +00:00
Tinderbox User
077917337a newcopyrights 2016-07-22 23:31:25 +00:00
Evan Hunt
211517ce9a [v9_9] add aaaa for b.root-servers.net
4423.	[maint]		Added missing IPv6 address 2001:500:84::b for
			B.ROOT-SERVERS.NET. [RT #42898]

Patch submitted by Xoze Vazquez Perez (xose.vazquez@gmail.com).
2016-07-21 20:02:58 -07:00
Tinderbox User
c8ef943d93 regen v9_9 2016-07-22 01:19:15 +00:00
Tinderbox User
a79bb92894 update copyright notice / whitespace 2016-07-21 23:48:16 +00:00
Tinderbox User
3211a13365 newcopyrights 2016-07-21 23:32:10 +00:00
Evan Hunt
d8eaff0417 [v9_9] silence clang warnings
4422.	[port]		Silence clang warnings in dig.c and dighost.c.
			[RT #42451]
2016-07-21 15:57:55 -07:00
Witold Krecicki
846c2d8235 4418. [bug] Fix a compiler warning in GSSAPI code. [RT #42879] 2016-07-21 12:19:55 +02:00
Tinderbox User
ca8077627b update copyright notice / whitespace 2016-07-19 23:48:19 +00:00
Tinderbox User
add56aed29 newcopyrights 2016-07-19 23:30:58 +00:00
Evan Hunt
c7954358a4 [v9_9] fix isc_atomic_xadd() on MIPS
4414.	[bug]		Corrected a bug in the MIPS implementation of
			isc_atomic_xadd(). [RT #41965]

Submitted by Lamont Jones (lamont@debian.org). Closes Debian issue #406409.
2016-07-19 11:12:19 -07:00
Tinderbox User
e52e476295 update copyright notice / whitespace 2016-07-14 23:54:00 +00:00
Tinderbox User
ca03d30f36 newcopyrights 2016-07-14 23:30:52 +00:00
Mark Andrews
456d497196 4413. [bug] GSSAPI negotiation could fail if GSS_S_CONTINUE_NEEDED
was returned. [RT #42733]

(cherry picked from commit 63e58ad048)
2016-07-14 15:08:36 +10:00
Mark Andrews
e7d1e4daad Visual Studio 2005 doesn't like named elements, construct addr using isc_netaddr_fromin6 2016-07-14 11:32:46 +10:00
Tinderbox User
5cc4be4275 regen v9_9 2016-07-14 01:20:31 +00:00
Mark Andrews
f4052d6e8f Windows doesn't like LLU use ULL instead
(cherry picked from commit 6b5d6472cdbdb57ee7d8247d85f07c42fb347663)
2016-07-14 11:14:09 +10:00
Tinderbox User
6fe5304a51 update copyright notice / whitespace 2016-07-13 23:47:37 +00:00
Mark Andrews
00e7b6dcca grammar
(cherry picked from commit 8f7881684b)
2016-07-14 09:43:04 +10:00
Tinderbox User
ba25dd47e1 newcopyrights 2016-07-13 23:30:26 +00:00
Mark Andrews
03021b1d0c bug -> security 2016-07-14 09:21:07 +10:00
Mukund Sivaraman
995cda9432 Some general cleanup (#42827)
(cherry picked from commit e65cd99461)
(cherry picked from commit 47ed813864)
(cherry picked from commit e7a3b8948f)
2016-07-13 15:00:36 +05:30
Mukund Sivaraman
01ccf0d480 Make fixes for GCC 6 (#42721)
(cherry picked from commit 4116177ac4)
(cherry picked from commit 2d5581de6e)
(cherry picked from commit 48ed0dec09)
2016-07-13 14:04:23 +05:30
Tinderbox User
bc45b98932 regen v9_9 2016-07-13 04:55:39 +00:00
Mark Andrews
e0f5ce3bad add [RT #42694] 2016-07-13 11:36:13 +10:00
Mark Andrews
eca42d74ef whitespace 2016-07-13 11:25:32 +10:00
Mark Andrews
d147d56227 add more DNS64 default exclude acl tests 2016-07-13 10:57:54 +10:00
Mark Andrews
aee0e51757 spelling/grammar
(cherry picked from commit 1256b0c344)
2016-07-13 10:27:25 +10:00
Tinderbox User
c79880a861 regen v9_9 2016-07-12 01:17:51 +00:00
Tinderbox User
3bb1ed07fa update copyright notice / whitespace 2016-07-11 23:49:12 +00:00
Tinderbox User
4cf3ee6639 newcopyrights 2016-07-11 23:31:24 +00:00
Mark Andrews
d05f0b2479 add CVE-2016-2775 2016-07-12 01:19:20 +10:00
Mark Andrews
9b93305605 dns_iptable_addprefix2 -> dns_iptable_addprefix 2016-07-11 16:05:50 +10:00
Mark Andrews
e92db5f0a0 4409. [bug] DNS64 should exlude mapped addresses by default when
a exclude acl is not defined. [RT #42810]
2016-07-11 14:18:21 +10:00
Tinderbox User
a9924aeb9a regen v9_9 2016-07-08 01:17:05 +00:00
Tinderbox User
6d4bd1a8ef update copyright notice / whitespace 2016-07-07 23:48:57 +00:00
Tinderbox User
96e0213d6e newcopyrights 2016-07-07 04:18:29 +00:00
Mark Andrews
8491339284 add note for rt42694
(cherry picked from commit aacf0753e9)
2016-07-07 13:55:57 +10:00
Mark Andrews
062b04898b 4406. [bug] getrrsetbyname with a non absolute name could
trigger a infinite recursion bug in lwresd
                        and named with lwres configured if when combined
                        with a search list entry the resulting name is
                        too long. [RT #42694]

(cherry picked from commit 38cc2d14e2)
2016-07-07 12:54:02 +10:00
Tinderbox User
434ff87fcb update copyright notice / whitespace 2016-07-06 23:49:15 +00:00
Tinderbox User
295e247057 newcopyrights 2016-07-06 23:33:04 +00:00
Mark Andrews
d9cc1ed8ea 4405. [bug] Change 4342 introduced a regression where you could
not remove a delegation in a NSEC3 signed zone using
                        OPTOUT via nsupdate. [RT #42702]

(cherry picked from commit d811a7d9ef)
2016-07-06 10:26:02 +10:00
Mark Andrews
8c4b590d3c 4404. [misc] Allow krb5-config to be used when configuring gssapi.
[RT #42580]
2016-07-04 15:56:27 +10:00
Tinderbox User
0d801f20ce update copyright notice / whitespace 2016-06-29 23:46:06 +00:00
Tinderbox User
f83f66a53c newcopyrights 2016-06-29 23:30:25 +00:00
Mark Andrews
aaabbc1362 ignore configure generated files 2016-06-29 23:34:15 +10:00
Mark Andrews
5b292a8320 ignore configure generated files 2016-06-29 23:33:32 +10:00
Mark Andrews
5ccb7b6341 4403. [bug] Rename variables and arguments that shadow: basename,
clone and gai_error.

(cherry picked from commit ecfa005085)
(cherry picked from commit c8f34dbca6)
2016-06-29 11:28:50 +10:00
Tinderbox User
80f40cce0e regen v9_9 2016-06-27 05:35:54 +00:00
Tinderbox User
6c3848c86b update copyright notice / whitespace 2016-06-24 23:45:45 +00:00
Tinderbox User
cbc4b46e68 newcopyrights 2016-06-24 23:30:09 +00:00
Mark Andrews
899d7319a5 4397. [bug] Update Windows python support. [RT #42538]
(cherry picked from commit 9f5443280f)
2016-06-24 16:13:50 +10:00
Mark Andrews
6e622fee16 distclean cleanup 2016-06-24 13:38:05 +10:00
Mark Andrews
1d235ab5a4 4395 [bug] Improve out-of-tree installation of python modules.
[RT #42586]

(cherry picked from commit 4840ef4581)
2016-06-24 12:54:59 +10:00
Jeremy C. Reed
278667503c Use test random file for tsig test using keygen
This is for #42565: tsig test hangs and KEYGEN and randomdev

It was okayed there and is a trivial fix. No changes log needed.
2016-06-23 18:53:45 -04:00
Tinderbox User
282335ccbc update copyright notice / whitespace 2016-06-22 23:45:59 +00:00
Tinderbox User
e6e3c2b7f9 newcopyrights 2016-06-22 23:30:37 +00:00
Mark Andrews
aa63052317 4387. [bug] Change 4336 was not complete leading to SERVFAIL
being return as NS records expired. [RT #42683]

(cherry picked from commit b56bd9b59f)
2016-06-22 15:43:05 +10:00
Mark Andrews
27740e8f15 seed is not always used rt42703
(cherry picked from commit a3a12fa575)
2016-06-22 11:13:18 +10:00
Tinderbox User
6345414fa0 regen v9_9 2016-06-22 01:12:24 +00:00
Mark Andrews
fe31cc8fab request-ixfr is a slave option rather than a master option
(cherry picked from commit 13dcf86725)
2016-06-22 08:12:39 +10:00
Mark Andrews
c697729930 report subtest number 2016-06-18 00:44:37 +10:00
Mark Andrews
c3ff4e9f8f 4384. [bug] Change 4256 accidentally disabled logging of the
rndc command. [RT #42654]

(cherry picked from commit 948fe5822b)
2016-06-18 00:32:42 +10:00
Mark Andrews
6d79461e07 report subtest number
(cherry picked from commit 3f0de196f7)
2016-06-17 10:51:19 +10:00
Tinderbox User
afb9f6c482 update copyright notice / whitespace 2016-06-16 23:46:03 +00:00
Tinderbox User
f03091c745 newcopyrights 2016-06-16 23:30:14 +00:00
Mark Andrews
8ae151e5db backport dns_name_t *name -> const dns_name_t *name
(cherry picked from commit ded95d497df16579852356fc5434671d24c7f00d)
2016-06-16 21:40:22 +10:00
Tinderbox User
08d747e2d5 update copyright notice / whitespace 2016-06-14 23:46:13 +00:00
Tinderbox User
d015f93d67 newcopyrights 2016-06-14 23:30:12 +00:00
Mark Andrews
b283aa31fc do not overflow exit status. [RT #42643]
(cherry picked from commit 3635d8f910)
2016-06-14 14:51:25 +10:00
Tinderbox User
ee76654094 regen v9_9 2016-06-14 01:12:31 +00:00
Tinderbox User
7c94357f5a newcopyrights 2016-06-13 23:30:24 +00:00
Francis Dupont
76ed14c700 Updated OpenSSL patches for 1.0.[12] (active/supported) 2016-06-13 18:08:12 +02:00
Francis Dupont
3bf5b841b3 AEP keyper PKCS#11 provider is available in 64 bits 2016-06-13 15:51:36 +02:00
Tinderbox User
c43713a34c update copyright notice / whitespace 2016-06-10 23:45:51 +00:00
Tinderbox User
102c91575c newcopyrights 2016-06-10 23:30:08 +00:00
Evan Hunt
733cd6524d [v9_9] cleanup 2016-06-09 22:50:56 -07:00
Mark Andrews
0ba8ac54c7 also cleanup node 2016-06-03 18:35:07 +10:00
Mark Andrews
e4ae68f50c detach before restore 2016-06-03 18:34:59 +10:00
Mark Andrews
944b398582 reset zversion on restart
(cherry picked from commit b4750b5991)
2016-06-03 14:33:52 +10:00
Tinderbox User
ee0f380702 update copyright notice / whitespace 2016-06-02 23:46:03 +00:00
Tinderbox User
f66b4bb189 newcopyrights 2016-06-02 23:30:08 +00:00
Evan Hunt
d082c2c3b0 [v9_9] 9.9 doesn't have native-pks11 2016-06-02 10:28:45 -07:00
Tinderbox User
2a49636dbf regen v9_9 2016-06-02 01:12:29 +00:00
Mark Andrews
97c0c6837c simplify poorly written conditional
(cherry picked from commit d055178624)
2016-06-02 10:19:57 +10:00
Tinderbox User
6c72d17b92 update copyright notice / whitespace 2016-06-01 23:46:16 +00:00
Tinderbox User
6a106d9624 newcopyrights 2016-06-01 23:30:11 +00:00
Francis Dupont
cc094e5885 Merged rt42563 (host.c fix) 2016-06-01 14:54:18 +02:00
Francis Dupont
c5f24b125f Merged rt42505 (misc DNSSEC bugs) 2016-06-01 09:33:50 +02:00
Tinderbox User
670c6bba05 newcopyrights 2016-05-31 23:30:11 +00:00
Mark Andrews
bf63e12b83 add isc_sha224_data, isc_sha224_end, v isc_sha384_end, isc_sha512_data and isc_sha512_end
(cherry picked from commit 3d1b4bf278)
2016-05-31 14:31:59 +10:00
Tinderbox User
cc753e22f6 sync 2016-05-31 01:08:50 +00:00
Tinderbox User
7167442d14 update copyright notice / whitespace 2016-05-27 23:46:03 +00:00
Tinderbox User
531777d427 newcopyrights 2016-05-27 23:30:28 +00:00
Mark Andrews
cb735b3f90 fix merge error 2016-05-27 18:39:33 +10:00
Mark Andrews
cf195d6467 4379. [bug] An INSIST could be triggered if a zone contains
RRSIG records with expiry fields that loop
                        using serial number arithmetic. [RT #40571]

(cherry picked from commit 9268297baa)
2016-05-27 15:26:48 +10:00
Evan Hunt
495569c9b6 [v9_9] use $DIG not dig 2016-05-26 18:39:31 -07:00
Mark Andrews
94adaadea7 4378. [contrib] #include <isc/string.h> for strlcat in zone2ldap.c.
[RT #42525]

(cherry picked from commit d7ab0204e2)
2016-05-27 11:21:05 +10:00
Tinderbox User
0053eb0d93 regen v9_9 2016-05-27 01:12:43 +00:00
Mark Andrews
dfdf6773a6 REDIRECT macro is 9.11.0+ 2016-05-27 10:06:42 +10:00
Mark Andrews
c3fbf330bc 4377. [bug] Don't reuse zero TTL responses beyond the current
client set (excludes ANY/SIG/RRSIG queries).
                        [RT #42142]

(cherry picked from commit aabcb1fde0)
2016-05-27 10:05:52 +10:00
Tinderbox User
addd839e4a update copyright notice / whitespace 2016-05-26 23:46:02 +00:00
Tinderbox User
fb68db1430 newcopyrights 2016-05-26 23:30:11 +00:00
Mark Andrews
5d2ab9b4b4 document python requirements 2016-05-26 15:41:24 +10:00
Mark Andrews
513b35b9a7 minor host man page cleanups from Tony Finch [RT #42476]
(cherry picked from commit 28784b996b)
2016-05-26 13:58:59 +10:00
Mark Andrews
900a63cb04 4374. [bug] Use SAVE/RESTORE macros in query.c to reduce the
probability of reference counting errors as seen
                        in 4365. [RT #42405]

(cherry picked from commit ac11084829)
2016-05-26 13:37:43 +10:00
Mark Andrews
59300548a7 4373. [bug] Address undefined behaviour in getaddrinfo. [RT #42479]
(cherry picked from commit ede52ba98d)
2016-05-26 12:06:09 +10:00
Mark Andrews
b413f4e54d 4372. [bug] Address undefined behaviour in libt_api. [RT #42480]
(cherry picked from commit a0f5a5e3c5)
2016-05-26 11:58:20 +10:00
Evan Hunt
08da9c0bc0 [v9_9] spelling 2016-05-25 18:45:49 -07:00
Evan Hunt
767c85f45a [v9_9] extend release notes 2016-05-25 18:43:56 -07:00
Mark Andrews
b8735615e1 4369. [bug] Fix 'make' and 'make install' out-of-tree python
support. [RT #42484]

(cherry picked from commit d3600bb89d)
2016-05-24 10:06:47 +10:00
Mark Andrews
f2a4962927 spelling 2016-05-22 07:57:09 +10:00
Mark Andrews
6deae303e1 update 4363 description 2016-05-20 11:52:38 +10:00
Mark Andrews
590a4026f0 simplify
(cherry picked from commit 26f652d387)
2016-05-18 10:40:55 +10:00
Mark Andrews
fae464f93f silence compiler warning
(cherry picked from commit 75167fb746)
2016-05-17 17:50:38 +10:00
Mark Andrews
2bf3a4d271 4366. [bug] Address race condition when updating rbtnode bit
fields. [RT #42379]

(cherry picked from commit e2047969de)
2016-05-17 13:16:41 +10:00
Tinderbox User
b74a1d6824 sync 2016-05-14 01:11:11 +00:00
Tinderbox User
3aec06cf73 sync 2016-05-12 01:09:27 +00:00
Tinderbox User
5b061c731b update copyright notice / whitespace 2016-05-11 23:46:05 +00:00
Tinderbox User
5d90fef683 newcopyrights 2016-05-11 23:30:25 +00:00
Mark Andrews
beaf0761bd add timestamp target 2016-05-12 09:20:20 +10:00
Tinderbox User
5e38ec60b8 regen v9_9 2016-05-10 01:13:35 +00:00
Mark Andrews
d0d4323c4d remove repeated like
(cherry picked from commit 2fef945936)
2016-05-10 07:23:28 +10:00
Mark Andrews
af0af7e3fd 4363. [port] Turn off triggering UAC when running BINDInstall
temporarily.

(cherry picked from commit 8090ceb932)
2016-05-09 19:08:29 +10:00
Tinderbox User
c88775524d update copyright notice / whitespace 2016-05-05 23:47:00 +00:00
Tinderbox User
7a20687edd newcopyrights 2016-05-05 23:31:26 +00:00
Evan Hunt
a1f4c3c55c [v9_9] nanosecond-accurate file modification times
4361.	[cleanup]	Where supported, file modification times returned
			by isc_file_getmodtime() are now accurate to the
			nanosecond. [RT #41968]
2016-05-05 12:22:55 -07:00
Mark Andrews
091afd6fdc 4360. [bug] Silence spurious 'bad key type' message when there is
a existing TSIG key. [RT #42195]

(cherry picked from commit 5ac427050f)
(cherry picked from commit 525dc475ee)
2016-05-05 22:44:58 +10:00
Mark Andrews
a6238a920b 4359. [bug] Inherited 'also-notify' lists were not being checked
by named-checkconf. [RT #42174]

(cherry picked from commit 594d15df25)
2016-05-05 22:01:57 +10:00
Mark Andrews
ab16ccd7fc add reported by
(cherry picked from commit b0ffe32862)
2016-05-05 14:30:57 +10:00
Mark Andrews
6d2a695001 4354. [bug] Check that the received HMAC length matches the
expected length prior to check the contents on the
                        control channel.  This prevents a OOB read error.
                        [RT #42215]

(cherry picked from commit 402c63495c)
2016-05-05 14:29:56 +10:00
Tinderbox User
ba0fbceb68 regen v9_9 2016-05-05 01:13:07 +00:00
Tinderbox User
fa144c4b7b update copyright notice / whitespace 2016-05-04 23:46:42 +00:00
Tinderbox User
f9de62aa49 newcopyrights 2016-05-04 23:30:34 +00:00
Evan Hunt
4ed8ffeab7 [v9_9] update pkcs11 headers
4353.	[cleanup]	Update PKCS#11 header files. [RT #42175]
2016-05-04 16:27:26 -07:00
Evan Hunt
d5ebc757a6 [v9_9] log message when using ISC DLV
4352.	[cleanup]	The ISC DNSSEC Lookaside Validation (DLV) service
			is scheduled to be disabled in 2017.  A warning is
			now logged when named is configured to use it,
			either explicitly or via "dnssec-lookaside auto;"
			[RT #42207]
2016-05-04 14:40:17 -07:00
Tinderbox User
c156623446 update copyright notice / whitespace 2016-04-30 23:48:10 +00:00
Tinderbox User
c6c20d1df2 newcopyrights 2016-04-30 23:30:48 +00:00
Evan Hunt
df9c8f4d37 [v9_9] Merge branch 'v9_9' of ssh://repo.isc.org/proj/git/prod/bind9 into v9_9 2016-04-30 15:57:38 -07:00
Mark Andrews
7f6e39558b break from loop if we have found a good python 2016-05-01 08:20:24 +10:00
Mark Andrews
669116e9a6 support truncated hashes longer that 7
(cherry picked from commit 5b291f619e312689e25de8fd5662b0b9d4a62679)
2016-05-01 07:48:23 +10:00
Evan Hunt
14c8f1aa1a [v9_9] fix merge error in coverage test 2016-04-29 19:08:42 -07:00
Tinderbox User
9058258609 regen v9_9 2016-04-30 01:15:12 +00:00
Tinderbox User
01e6868978 update copyright notice / whitespace 2016-04-29 23:46:47 +00:00
Tinderbox User
0a1bfe7bf3 newcopyrights 2016-04-29 23:30:39 +00:00
Evan Hunt
fb746f443f [v9_9] more python2/3 compatibility fixes; use setup.py to install 2016-04-29 14:45:07 -07:00
Evan Hunt
b1b0f5b7c6 [v9_9] address some python2/3 incompatibilities 2016-04-29 10:39:14 -07:00
Evan Hunt
1334b546ab [v9_9] remove gnu make dependency 2016-04-29 09:37:06 -07:00
Evan Hunt
bc592f68c8 [v9_9] copyrights 2016-04-28 22:36:52 -07:00
Evan Hunt
6a357b081d [v9_9] fix update_copyrights to deal with python modules correctly
(also removed an unnecessary part of python isc module, not used in 9.9)
2016-04-28 22:36:21 -07:00
Evan Hunt
ddc71a7c38 [v9_9] refactor python tools
4348.	[cleanup]	Refactor dnssec-coverage and dnssec-checkds
                        functionality into an "isc" python module. [RT #39211]
2016-04-28 19:46:07 -07:00
Mark Andrews
8e0abe93b8 4351. [bug] 'dig +noignore' didn't work. [RT #42273] 2016-04-29 12:42:39 +10:00
Mark Andrews
2d050f8e23 alphabetize host options
(cherry picked from commit cf69e3d8b2)
(cherry picked from commit df547d999a)
2016-04-29 11:35:31 +10:00
Tinderbox User
b7843f9794 regenerate 2016-04-20 20:11:30 +00:00
Tinderbox User
dacae8ec14 regen v9_9 2016-04-20 18:39:43 +00:00
Evan Hunt
84c835b1f8 [v9_9] prep 9.9.9 2016-04-20 10:28:09 -07:00
Mark Andrews
7f9a31319d fix changes
(cherry picked from commit 16591ba9ae)
2016-04-16 12:04:45 +10:00
Mark Andrews
dc7668b449 delv is not part of BIND 9.9 2016-04-15 16:42:19 +10:00
Tinderbox User
6047fd2256 update copyright notice / whitespace 2016-04-15 04:53:25 +00:00
Tinderbox User
254265b257 newcopyrights 2016-04-15 04:52:38 +00:00
Evan Hunt
6b4d6a9979 [v9_9] fix build error on x86_64 solaris 2016-04-14 19:23:47 -07:00
Evan Hunt
36adfbee06 [v9_9] copyrights 2016-04-14 19:12:35 -07:00
Evan Hunt
cd249675a1 [v9_9] fixed revoked key regression
4436.	[bug]		Fixed a regression introduced in change #4337 which
			caused signed domains with revoked KSKs to fail
			validation. [RT #42147]
2016-04-14 18:54:09 -07:00
Evan Hunt
669969d715 [v9_9] fix build error due to incorrect readline probing 2016-04-14 13:46:53 -07:00
Tinderbox User
cf05c7e3be regenerate 2016-04-14 00:06:32 +00:00
Tinderbox User
044671fc77 regen v9_9 2016-04-13 23:23:07 +00:00
Evan Hunt
9741e60b38 [v9_9] prep 9.9.9rc1 2016-04-13 16:12:12 -07:00
Tinderbox User
fafaa2c58e update copyright notice / whitespace 2016-04-12 23:45:50 +00:00
Tinderbox User
54c3aa0eac newcopyrights 2016-04-12 23:30:13 +00:00
Mark Andrews
293d3bff4b 4345. [contrib] perftcpdns mishandled the return values from
clock_nanosleep. [RT #42131]

(cherry picked from commit 8fcf2413e9)
2016-04-12 10:54:53 +10:00
Tinderbox User
221047cf64 update copyright notice / whitespace 2016-04-05 23:45:52 +00:00
Tinderbox User
a4b9c96497 newcopyrights 2016-04-05 23:30:12 +00:00
Mark Andrews
d0abe92a0e 4344. [port] Address openssl version differences. [RT #42059] 2016-04-06 04:34:47 +10:00
Tinderbox User
f190e304d4 regen v9_9 2016-03-31 01:12:57 +00:00
Tinderbox User
046e66c891 update copyright notice / whitespace 2016-03-30 23:45:53 +00:00
Jeremy C. Reed
a2f067c7b5 [v9_9] some release notes updates
mention that the document summarizes "significant" changes
since obviously it misses a lot.
Also refer to the CHANGES file.

Added a few bugs. Wording some discussed via email, phone call, and jabber.
2016-03-30 13:36:55 -04:00
Mark Andrews
6477bc6064 attempt to create a node at the flushtree name
(cherry picked from commit dd185fb371)
2016-03-27 08:26:11 +11:00
Tinderbox User
9192bcc379 update copyright notice / whitespace 2016-03-25 23:45:51 +00:00
Tinderbox User
edb176b978 newcopyrights 2016-03-25 23:30:12 +00:00
Mark Andrews
aacd2503bd fix typo in isc-hmac-fixup.exe 2016-03-26 09:09:59 +11:00
Tinderbox User
d6d860e96e regenerate 2016-03-25 05:30:42 +00:00
Tinderbox User
c79bf020a5 regen v9_9 2016-03-25 01:12:55 +00:00
Evan Hunt
7d5c94236b [v9_9] more release note corrections 2016-03-24 16:40:54 -07:00
Evan Hunt
7e76a21929 [v9_9] fixes for release notes 2016-03-24 14:43:05 -07:00
Evan Hunt
529734f9fc [v9_9] prep 9.9.9b2 2016-03-24 12:42:54 -07:00
Evan Hunt
0a6e7e9c62 [v9_9] windows: copy missing HTML man pages into zips 2016-03-24 12:27:24 -07:00
Mark Andrews
3e69d34a61 use full tag with git archive
(cherry picked from commit 32a09f01d61ce2fb963370b51e328a7b54c3ad27)
2016-03-24 17:03:50 +11:00
Mark Andrews
fe35097681 use shorthash to avoid race when using a branch name 2016-03-24 12:58:18 +11:00
Mark Andrews
7f39975df1 fix changes number
(cherry picked from commit b1888f0e2e)
2016-03-24 12:23:53 +11:00
Mark Andrews
6aec5717c7 4341. [bug] 'rndc flushtree' could fail to clean the tree if there
wasn't a node at the specified name. [RT #41846]

(cherry picked from commit 6214c3c93a)
2016-03-24 11:38:17 +11:00
Tinderbox User
42b854e5dd update copyright notice / whitespace 2016-03-23 23:46:03 +00:00
Tinderbox User
fd92fb6eb2 newcopyrights 2016-03-23 23:30:11 +00:00
Evan Hunt
955c101ff5 [v9_9] disallow out-of-range descriptors in isc_socket_fdwatchcreate() 2016-03-22 18:12:07 -07:00
Evan Hunt
bb68c78aac [v9_9] fix uiAccess for win64 build 2016-03-22 17:30:25 -07:00
Mark Andrews
a84d2e5e04 4338. [bug] Reimplement change 4324 as it wasn't properly doing
all the required book keeping. [RT #41941]

(cherry picked from commit 558278974e)
2016-03-23 11:06:52 +11:00
Tinderbox User
5cc724937d update copyright notice / whitespace 2016-03-22 23:45:44 +00:00
Tinderbox User
96708520e8 newcopyrights 2016-03-22 23:30:10 +00:00
Evan Hunt
0c3dc6f60f [v9_9] fix mkeys TTL 0 issue
4337.	[bug]		The previous change exposed a latent flaw in
			key refresh queries for managed-keys when
			a cached DNSKEY had TTL 0. [RT #41986]
2016-03-22 12:13:39 -07:00
Tinderbox User
1ae5ce7da8 update copyright notice / whitespace 2016-03-21 23:46:02 +00:00
Tinderbox User
33a8563ffe newcopyrights 2016-03-21 23:30:14 +00:00
Mark Andrews
0f8b11d8cd 4336. [bug] Don't emit records with zero ttl unless the records
were learnt with a zero ttl. [RT #41687]

(cherry picked from commit 0993cd5f22)
2016-03-21 14:34:30 +11:00
Mark Andrews
9076dd0d9b 4335. [bug] zone->view could be detached too early. [RT #41942]
(cherry picked from commit b8dcc13bc5)
2016-03-21 13:03:36 +11:00
Tinderbox User
a24b0e359c update copyright notice / whitespace 2016-03-17 23:45:55 +00:00
Tinderbox User
85caed40f0 newcopyrights 2016-03-17 23:30:09 +00:00
Mark Andrews
3ed767fc4b don't run 'make clean' if --no-create is specified
(cherry picked from commit 6e3839e1bb)
2016-03-18 08:30:28 +11:00
Jeremy C. Reed
a05b47e30f add comments about why the configuration is bad
I didn't get review. This is trivial.
2016-03-17 07:04:50 -04:00
Jeremy C. Reed
7ba56adcd3 change [=PATH] to [=ARG] for two dlz configure switches help text
this is for #41940
--with-dlz-filesystem and --with-dlz-stub don't use a path
so update the --help text for them

too trivial to add a CHANGES entry
2016-03-17 07:03:28 -04:00
Tinderbox User
082030a92b regen v9_9 2016-03-12 01:15:28 +00:00
Tinderbox User
0208e57e6b update copyright notice / whitespace 2016-03-11 23:46:03 +00:00
Tinderbox User
fe2bb2ed28 newcopyrights 2016-03-11 23:30:13 +00:00
Jeremy C. Reed
06212d490b use -r $RANDFILE for test using keygen
stops hang
this is for ticket #41898
2016-03-11 09:29:27 -05:00
Mark Andrews
1f24b9c1f4 4333. [maint] L.ROOT-SERVERS.NET is now 199.7.83.42 and
2001:500:9f::42.

(cherry picked from commit 1add4a7939)
2016-03-11 20:42:09 +11:00
Mark Andrews
ef0a86dfad note rrsig regeneration
(cherry picked from commit 98c5690bd9)
2016-03-11 12:28:11 +11:00
Mark Andrews
af59b16e3d 4331. [func] When loading managed signed zones detect if the
RRSIG's inception time is in the future and regenerate
                        the RRSIG immediately. [RT #41808]

(cherry picked from commit 7c52595464)
2016-03-11 12:26:16 +11:00
Tinderbox User
aad46e76a7 update copyright notice / whitespace 2016-03-10 23:45:46 +00:00
Tinderbox User
080c252c5f newcopyrights 2016-03-10 23:30:13 +00:00
Mark Andrews
927e9d8bbc 4330. [protocol] Identify the PAD option as "PAD" when printing out
a message.

(cherry picked from commit 33a4294f44)
2016-03-10 16:54:51 +11:00
Mark Andrews
335626b5dc silence compiler false positive
(cherry picked from commit 31a1cbf101)
2016-03-10 08:43:55 +11:00
Mark Andrews
258afdcffd silence compiler warning
(cherry picked from commit 37a931d774)
2016-03-09 14:43:58 +11:00
Mark Andrews
9833cd85a8 silence compiler warning
(cherry picked from commit 0e5c8a65a2)
2016-03-09 12:38:10 +11:00
Tinderbox User
c1d4f2b629 update copyright notice / whitespace 2016-03-09 00:56:39 +00:00
Tinderbox User
376ce060d1 newcopyrights 2016-03-09 00:56:01 +00:00
Tinderbox User
59a7eeeb9d regen v9_9 2016-03-09 00:45:55 +00:00
Mark Andrews
803a020814 use xmlint to process include
(cherry picked from commit 71e9df17b671f7ef5742967b25a1ab36ec3dd91b)
2016-03-09 11:34:55 +11:00
Tinderbox User
f1b6862922 newcopyrights 2016-03-08 23:03:35 +00:00
Tinderbox User
3e0800f3f7 9.9.9b1 2016-03-08 22:58:04 +00:00
Tinderbox User
6b5cdc391a regen v9_9 2016-03-08 22:42:49 +00:00
Mark Andrews
217178eb2b update 4327's description
(cherry picked from commit ade0aa3cb0)
2016-03-09 09:25:30 +11:00
Jeremy C. Reed
4943482c81 minor updates and a typo fix
mention SMIMEA, new contrib, and named -V
2016-03-08 08:52:45 -05:00
Jeremy C. Reed
34c9083464 fix two spelling typos 2016-03-08 08:49:37 -05:00
Tinderbox User
f3c7b35464 newcopyrights 2016-03-08 06:32:32 +00:00
Tinderbox User
594bdc79df regen v9_9 2016-03-08 06:22:46 +00:00
Mark Andrews
757e02d75c update copyrights 2016-03-08 16:19:15 +11:00
Mark Andrews
c85aaaaf17 9.9.9b1 2016-03-08 16:14:23 +11:00
Mark Andrews
13540e8c7b sync with 9.9.8-P4 2016-03-08 12:15:45 +11:00
Mark Andrews
cb73ec2f66 add dns_name_isrfc1918 and dns_name_isula 2016-03-08 12:01:40 +11:00
Tinderbox User
e1f19f3b4b update copyright notice / whitespace 2016-03-07 23:46:05 +00:00
Mark Andrews
0649f3a0c0 4329. [func] Warn about a common misconfiguration when forwarding
RFC 1918 zones. [RT #41441]
2016-03-08 10:12:02 +11:00
Mukund Sivaraman
4bb2aa3e15 Repack dns_rbtnode struct to gain some space (reduce packing holes) (#41854)
(cherry picked from commit 8dbf9ceb8c)
(cherry picked from commit 2a461f1348)
2016-03-07 16:18:02 +05:30
Evan Hunt
d78d3e3814 [v9_9] silence coverity warning 2016-03-05 19:50:57 -08:00
Tinderbox User
6119bb7066 regen v9_9 2016-03-06 01:10:55 +00:00
Mark Andrews
7728dadf12 add AVC
(cherry picked from commit e011df2927)
2016-03-05 17:57:55 +11:00
Tinderbox User
14f69ff3f3 regen v9_9 2016-03-05 01:24:27 +00:00
Tinderbox User
dc16fb4615 update copyright notice / whitespace 2016-03-04 23:46:07 +00:00
Tinderbox User
15ac1165cc newcopyrights 2016-03-04 23:30:22 +00:00
Mukund Sivaraman
f0e2a58862 Revert DEFAULT_NODE_LOCK_COUNT back to 7 (#40997)
(cherry picked from commit 09b9ffc029)
2016-03-04 16:31:07 +05:30
Mukund Sivaraman
da1c336ddf Include missing isc/print.h
(cherry picked from commit 1cbbc0bde6)
2016-03-04 14:57:29 +05:30
Mukund Sivaraman
8000419f5a Check if threads support is available
(cherry picked from commit 2457a4b245)
(cherry picked from commit 491a5a2a3c)
2016-03-04 14:08:05 +05:30
Mukund Sivaraman
09e84a2072 Use libisc thread functions
(cherry picked from commit 051197362b)
(cherry picked from commit cb93542612)
2016-03-04 14:01:21 +05:30
Mukund Sivaraman
fc875fb1ab Add dns_name_fromwire() benchmark
(cherry picked from commit 59328c7674)
(cherry picked from commit d820e8ff8a)
2016-03-04 13:50:17 +05:30
Mukund Sivaraman
6439dc94d5 Log query and depth counters during fetches when querytrace is enabled (#41787)
(cherry picked from commit 275265ab27)
(cherry picked from commit 666fa20ef3)
2016-03-04 13:30:12 +05:30
Evan Hunt
038cb7aa01 [rt41656] line length
(cherry picked from commit 6957e9451cc7bf89d44716dfe4266281867e00e5)
(cherry picked from commit d4ed29b019)
(cherry picked from commit 1c57a595b1)
2016-03-04 13:02:31 +05:30
Mukund Sivaraman
65f562e5e4 Code cleanups (#41656)
(cherry picked from commit 9da98335c1)
(cherry picked from commit b15dde2889)
2016-03-04 13:00:43 +05:30
Mark Andrews
cb3e40e655 add AVC 2016-03-04 18:17:39 +11:00
Mark Andrews
f38f7eb97f 4326. [protocol] Add support for AVC. [RT #41819
(cherry picked from commit 8398f00156)
2016-03-04 18:15:47 +11:00
Evan Hunt
b5957e6c2d [v9_9] recursively clean empty interior nodes when deleting database records
4324.	[bug]		When deleting records from a zone database, interior
			nodes could be left empty but not deleted, damaging
			search performance afterward. [RT #40997]

(cherry picked from commit 44c86318ed)
(cherry picked from commit db06cd726c)
2016-03-03 21:19:59 -08:00
Tinderbox User
3d6be0705b update copyright notice / whitespace 2016-03-02 23:45:56 +00:00
Tinderbox User
d0d9b8620d newcopyrights 2016-03-02 23:30:09 +00:00
Mark Andrews
a4729f884a fix changes number 2016-03-02 12:27:49 +11:00
Mark Andrews
7e83911c77 4223. [bug] Improve HTTP header processing on statschannel.
[RT #41674]

(cherry picked from commit ce7216c40a)
(cherry picked from commit 62e7d7533a)
2016-03-02 11:11:11 +11:00
Tinderbox User
bd177afa9f regen v9_9 2016-03-01 01:10:05 +00:00
Mark Andrews
885b3a09f2 re-order security list into reverse order 2016-02-29 12:47:03 +11:00
Mark Andrews
35ef2fe236 spelling
(cherry picked from commit 40401165e4)
2016-02-29 12:23:13 +11:00
Mark Andrews
a7646fe8cf silence may be used when unset false positive
(cherry picked from commit c7aae79b62)
2016-02-29 11:25:16 +11:00
Mark Andrews
ce3cd91cae Part 2 of:
4319.   [security]      Fix resolver assertion failure due to improper
                        DNAME handling when parsing fetch reply messages.
                        (CVE-2016-1286) [RT #41753]

(cherry picked from commit 2de89ee9de)
2016-02-29 07:17:41 +11:00
Mark Andrews
44982ad2fb add CVE-2016-1286 2016-02-24 13:13:27 +11:00
Tinderbox User
03dee95971 update copyright notice / whitespace 2016-02-23 23:46:37 +00:00
Tinderbox User
173911c978 newcopyrights 2016-02-23 23:30:49 +00:00
Mukund Sivaraman
f073ab5de0 Test bin/tests/system/checkconf/good-*.conf
(cherry picked from commit 77fe016206)
2016-02-23 13:01:19 +05:30
Mukund Sivaraman
16aab138b3 Fix allocation for "none" ACL that caused assertion failure (#41745)
(cherry picked from commit 293a9e9978)
(cherry picked from commit c685f0d741)
2016-02-23 13:01:16 +05:30
Mark Andrews
61f2429b71 update usage
(cherry picked from commit a125381c60)
2016-02-23 16:58:31 +11:00
Tinderbox User
9a749e4775 regen v9_9 2016-02-23 01:10:26 +00:00
Mukund Sivaraman
76c3c9fe9f Fix resolver assertion failure due to improper DNAME handling (CVE-2016-1286) (#41753)
(cherry picked from commit 5995fec51c)
(cherry picked from commit 456e1eadd2)
2016-02-22 12:25:46 +05:30
Tinderbox User
d3d817e611 regen v9_9 2016-02-19 01:09:51 +00:00
Tinderbox User
878528bdcb update copyright notice / whitespace 2016-02-18 23:46:23 +00:00
Tinderbox User
7f9a55c54f newcopyrights 2016-02-18 23:30:27 +00:00
Evan Hunt
a078c9eeae [v9_9] fix backport error 2016-02-17 19:13:22 -08:00
Mark Andrews
31e4657cf2 4318. [security] Malformed control messages can trigger assertions
in named and rndc. (CVE-2016-1285) [RT #41666]

(cherry picked from commit a2b15b3305)
2016-02-18 12:18:00 +11:00
Tinderbox User
ee55571b61 newcopyrights 2016-02-12 23:30:19 +00:00
Mark Andrews
8a550860b8 4317. [bug] Age all unused servers on fetch timeout. [RT #41597]
(cherry picked from commit d372f426ca)
2016-02-12 12:35:19 +11:00
Tinderbox User
653c466529 regen v9_9 2016-02-12 01:10:00 +00:00
Mark Andrews
2aef94156e add sanity check that $base is '.docbook' 2016-02-12 11:13:39 +11:00
Mark Andrews
e1a21681df automatically set year to 'DOCBOOK' if '.docbook' exists for MAN and HTML 2016-02-12 11:13:35 +11:00
Mark Andrews
023656fa50 inherit years from docbook 2016-02-12 10:50:39 +11:00
Mark Andrews
cbf91c5377 copyrights / whitespace 2016-02-11 10:47:24 +11:00
Mukund Sivaraman
6ba259b626 Remove nodechain from dns_rbt_addnode() (#41246)
(cherry picked from commit 9267cc8e83)
(cherry picked from commit 6f3e21cd9b)
2016-02-08 15:42:10 +05:30
Mukund Sivaraman
80eff380a8 Add tests for hash function, and comment dns_rbt_addnode() (#41179)
No CHANGES entry necessary.

(cherry picked from commit 614ce1b65f)
(cherry picked from commit 400dd1020c)
2016-02-08 15:03:40 +05:30
Mukund Sivaraman
cab5a2b180 Check that configured view class isn't a meta class (#41572)
(cherry picked from commit 0c29904b27)
(cherry picked from commit 0b46608d6e)
2016-02-08 14:04:40 +05:30
Mark Andrews
88624c9c32 specify what to copy 2016-02-05 13:53:39 +11:00
Mark Andrews
87c8fae1dc add missing line break
(cherry picked from commit 68ecf1c9a5)
2016-02-04 11:52:24 +11:00
Tinderbox User
3173074531 newcopyrights 2016-02-03 23:32:01 +00:00
Evan Hunt
73a990b284 [v9_9] add dnsperf to contrib
4314.	[contrib]	Added 'dnsperf-2.1.0.0-1', a set of performance
			testing tools provided by Nominum, Inc.
2016-02-03 15:29:32 -08:00
Mark Andrews
04e34494ea 4313. [bug] Handle ns_client_replace failures in test mode.
[RT #41190]

(cherry picked from commit d88ba93712)
2016-02-03 15:04:06 +11:00
Mark Andrews
6442633cc2 4312. [bug] dig's unknown dns and edns flags (MBZ value) logging
was not consistent. [RT #41600]

(cherry picked from commit 8d00c5ab2c)
2016-02-02 14:22:46 +11:00
Mark Andrews
c4cf9df942 handle permission denied
(cherry picked from commit 4c375c6fa8)
2016-02-02 12:38:55 +11:00
Mark Andrews
eaed2bda9c capture rndc output
(cherry picked from commit 2d58f4aee2)
2016-02-02 12:26:49 +11:00
Tinderbox User
757b2400b8 update copyright notice / whitespace 2016-02-01 23:46:15 +00:00
Tinderbox User
a8814986f5 newcopyrights 2016-02-01 23:30:12 +00:00
Evan Hunt
b63bcfa9f5 [v9_9] add [performance] 2016-02-01 09:52:57 -08:00
Evan Hunt
d861c0943c [v9_9] disallow delzone on policiy zones
4311.	[bug]		Prevent "rndc delzone" from being used on
			response-policy zones. [RT #41593]
2016-02-01 09:47:31 -08:00
Mukund Sivaraman
48915fab93 Use __built_expect() where available (#41411)
(cherry picked from commit d1dbf6b20f)
(cherry picked from commit 6e2e0f72b1)
2016-02-01 09:13:28 +05:30
Tinderbox User
02367cb149 update copyright notice / whitespace 2016-01-30 23:46:09 +00:00
Tinderbox User
7c6e60a912 newcopyrights 2016-01-30 23:30:14 +00:00
Evan Hunt
1265a35391 [v9_9] add uname data to named -V
4308.	[func]		Added operating system details to "named -V"
			output. [RT #41452]
2016-01-30 11:08:14 -08:00
Tinderbox User
15953bbb99 regen v9_9 2016-01-30 01:09:55 +00:00
Tinderbox User
41e19479a4 newcopyrights 2016-01-29 23:30:09 +00:00
Evan Hunt
b23d9e68e9 [v9_9] remove reporter's name per his request 2016-01-29 10:36:17 -08:00
Tinderbox User
a0c12a8dd2 regen v9_9 2016-01-29 01:10:02 +00:00
Tinderbox User
00f6aff939 update copyright notice / whitespace 2016-01-28 23:46:23 +00:00
Tinderbox User
7f8b4b8c70 newcopyrights 2016-01-28 23:30:27 +00:00
Evan Hunt
332b3d9fd1 [v9_9] openssl 1.0.2f patch
4306.	[maint]		Added a PKCS#11 openssl patch supporting
			version 1.0.2f [RT #38312]
2016-01-28 13:28:40 -08:00
Mark Andrews
3eda1730b7 4305. [bug] dnssec-signzone was not removing unnecessary rrsigs
from the zone's apex. [RT #41483]

(cherry picked from commit 832ab79d1f)
2016-01-28 15:43:00 +11:00
Mark Andrews
a066b4c550 4304. [port] xfer system test failed as 'tail -n +value' is not
portable. [RT #41315]

(cherry picked from commit 9d85a77382)
2016-01-28 15:39:05 +11:00
Evan Hunt
ee738a1793 [v9_9] correct also-notify grammar 2016-01-27 19:13:57 -08:00
Tinderbox User
7d4914549b regen v9_9 2016-01-28 01:09:44 +00:00
Evan Hunt
d4452d1926 [v9_9] removed /Gy- from VS project files
4302.	[port]		win32: fixed a build error in VS 2015. [RT #41426]
2016-01-27 15:33:02 -08:00
Evan Hunt
e1997cc26e [v9_9] update EOL date 2016-01-27 12:08:08 -08:00
Tinderbox User
181b6c3f19 update copyright notice / whitespace 2016-01-25 23:46:11 +00:00
Tinderbox User
e1aad13df0 newcopyrights 2016-01-25 23:30:11 +00:00
Mark Andrews
1ffe5cf19e use 0 not ISC_FALSE for dns_name_fromtext 2016-01-25 16:57:43 +11:00
Tinderbox User
4705cfe0a9 update copyright notice / whitespace 2016-01-22 23:46:10 +00:00
Tinderbox User
19d91cb3e8 newcopyrights 2016-01-22 23:30:08 +00:00
Evan Hunt
70280057b4 [v9_9] expanded query trace logging
4300.	[cleanup]	Added new querytrace logging. [RT #41155]
2016-01-22 14:33:50 -08:00
Tinderbox User
7b7d845166 update copyright notice / whitespace 2016-01-21 23:46:08 +00:00
Tinderbox User
b206943393 newcopyrights 2016-01-21 23:30:09 +00:00
Mark Andrews
4bec1debc6 4299. [bug] Check that exactly totallen bytes are read when
reading a RRset from raw files in both single read
                        and incremental modes. [RT #41402]

(cherry picked from commit 1d383fd4b2)
2016-01-21 15:34:31 +11:00
Evan Hunt
edb9e54018 [v9_9] rpz zone errors fail more robustly
4297.	[bug]		RPZ zones with errors could cause a crash when a
			pointer was cleaned up twice. [RT #41518]
2016-01-20 17:41:37 -08:00
Evan Hunt
4b8c357439 [v9_9] hold 2016-01-20 17:32:39 -08:00
Evan Hunt
b6d7675298 [v9_9] fix unchecked result
4295.	[bug]		An unchecked result in dns_message_pseudosectiontotext()
			could allow incorrect text formatting of EDNS EXPIRE
			options. [RT #41437]
2016-01-20 17:19:57 -08:00
Tinderbox User
f74f5b2ed7 update copyright notice / whitespace 2016-01-20 23:46:07 +00:00
Tinderbox User
24bd9be5b1 newcopyrights 2016-01-20 23:30:09 +00:00
Evan Hunt
c89127acbb [v9_9] fixed rndc stop -p
4294.	[bug]		Fixed a regression in which "rndc stop -p" failed
			to print the PID. [RT #41513]
2016-01-20 09:57:01 -08:00
Mark Andrews
dcc3dd16f6 4293. [bug] Address memory leak on priming query creation failure.
[RT #41512]

(cherry picked from commit 73fbd4c9d3)
2016-01-20 16:39:37 +11:00
Tinderbox User
17833da3fd update copyright notice / whitespace 2016-01-18 23:46:02 +00:00
Tinderbox User
f347acf408 newcopyrights 2016-01-18 23:30:06 +00:00
Mark Andrews
a03adeb86d 4292. [bug] Build lib/export/dns/gen with native compiler.
[RT #41502]
2016-01-19 08:33:11 +11:00
Tinderbox User
45449617be update copyright notice / whitespace 2016-01-14 23:46:05 +00:00
Tinderbox User
87f6f7598c newcopyrights 2016-01-14 23:30:12 +00:00
Evan Hunt
6deb83615c [v9_9] added sockaddr.h
4291.	[cleanup]	Added a required include to dns/forward.h. [RT #41474]

(cherry picked from commit b4ccec331d)
(cherry picked from commit 25da0107d1)
2016-01-14 10:27:41 -08:00
Tinderbox User
b5a7c1c32b newcopyrights 2016-01-13 23:30:12 +00:00
Francis Dupont
b028720c51 Fixed small bugs in WIN32 legacy 2016-01-13 15:26:13 +01:00
Francis Dupont
fd10a2afb5 Fixed incorrect paths in WIN32 legacy 2016-01-13 14:55:42 +01:00
Tinderbox User
1fa401a65c regen v9_9 2016-01-06 01:10:10 +00:00
Tinderbox User
8df239e201 update copyright notice / whitespace 2016-01-05 23:46:15 +00:00
Tinderbox User
b3bb6a07e1 newcopyrights 2016-01-05 23:30:07 +00:00
Francis Dupont
18ff66186c Fixed unknown WIN32 switches 2016-01-05 19:22:01 +01:00
Francis Dupont
2fe1325e3a Silent WIN64 warnings (alrady fixed in master) 2016-01-05 18:59:14 +01:00
Francis Dupont
e1b5692773 Fixed WIN32 BIND9_CONFIG 2016-01-05 18:09:55 +01:00
Evan Hunt
75214d0c59 [v9_9] fix use after free on xfr timeout
4289.	[bug]		The server could crash due to memory being used
			after it was freed if a zone transfer timed out.
			[RT #41297]
2016-01-04 22:06:35 -08:00
Tinderbox User
9f30a9119c regen v9_9 2016-01-05 01:09:53 +00:00
Evan Hunt
97efa261cb [v9_9] Merge branch 'v9_9' of ssh://repo/proj/git/prod/bind9 into v9_9 2016-01-04 16:10:15 -08:00
Evan Hunt
f6ab9b3a28 [v9_9] 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 16:06:27 -08:00
Evan Hunt
7128c44787 [v9_9] clean up relnotes to include only things added since 9.9.8 2016-01-04 16:05:44 -08:00
Tinderbox User
c40fa54eab update copyright notice / whitespace 2016-01-04 23:46:16 +00:00
Evan Hunt
9afd579edd [v9_9] document return values from nslookup 2016-01-04 15:38:29 -08:00
Tinderbox User
1c9c199b0f newcopyrights 2016-01-04 23:30:07 +00:00
Evan Hunt
c5109e5850 [v9_9] silence noisy logging
4287.	[bug]		Silence an overly noisy log message when message
			parsing fails. [RT #41374]
2016-01-04 13:07:25 -08:00
Francis Dupont
0b70cee9de Updated copyrights 2016-01-04 19:41:17 +01:00
Francis Dupont
ff6129a61c Updated WIN32 files (rt40877) bis 2016-01-04 19:37:30 +01:00
Francis Dupont
deb9d1b1e7 Updated WIN32 files (rt40877) 2016-01-04 18:44:27 +01:00
Evan Hunt
717129f35a [v9_9] clean up notes 2016-01-03 21:23:52 -08:00
Tinderbox User
867a0ff40e newcopyrights 2016-01-02 23:30:07 +00:00
Tinderbox User
4b4e69c745 update copyright notice / whitespace 2016-01-01 23:46:02 +00:00
Tinderbox User
59d9e7e359 newcopyrights 2016-01-01 23:30:10 +00:00
Tinderbox User
427ff415a3 regen v9_9 2016-01-01 01:09:57 +00:00
Mark Andrews
435ab2044a 4285. [security] Specific APL data could trigger a INSIST.
(CVE-2015-8704) [RT #41396]

(cherry picked from commit 1b3d211802)
2015-12-31 13:47:08 +11:00
Mark Andrews
4a870e0954 fix changes #
(cherry picked from commit 4fa9eaf073)
2015-12-24 12:23:20 +11:00
Mark Andrews
08994ed201 4383. [bug] OPENSSL_config is no longer re-callable. [RT #41348]
(cherry picked from commit bed6e9d614)
2015-12-24 10:33:34 +11:00
Francis Dupont
a3866fa7be updated copyrights 2015-12-23 22:57:13 +01:00
Francis Dupont
f1a767002f Cleaned up OpenSSL patches 2015-12-23 21:15:53 +01:00
Francis Dupont
bbcb0014f8 Updated OpenSSL 1.0.1 patch 2015-12-23 19:34:46 +01:00
Francis Dupont
6456fd361e Updated OpenSSL 1.0.0 patch 2015-12-23 18:50:32 +01:00
Francis Dupont
e8fb4db3ca Updated OpenSSL 0.9.8 patch 2015-12-23 17:56:54 +01:00
Mark Andrews
5ddff6e532 fixes for tests with --disable-ipv6 2015-12-17 16:31:09 +11:00
Evan Hunt
4c6035f933 [master] reclimit test was broken with v6
(cherry picked from commit 0321aa184e)

Conflicts:
	bin/tests/system/reclimit/tests.sh
2015-12-17 16:26:58 +11:00
Mark Andrews
62d64f9868 spelling
(cherry picked from commit 757e405d3c)

Conflicts:
	CHANGES
2015-12-17 16:00:59 +11:00
Tinderbox User
ecbbfd3a88 update copyright notice / whitespace 2015-12-16 23:46:16 +00:00
Tinderbox User
21c59d9373 newcopyrights 2015-12-16 23:30:24 +00:00
Mark Andrews
71eafb2cb8 perform a more complete cleanup after running system tests [rt41255]
(cherry picked from commit ecfedec0e0)

Conflicts:
	bin/tests/system/acl/clean.sh
	bin/tests/system/addzone/clean.sh
	bin/tests/system/allow_query/clean.sh
	bin/tests/system/autosign/clean.sh
	bin/tests/system/case/clean.sh
	bin/tests/system/checknames/clean.sh
	bin/tests/system/dlzexternal/clean.sh
	bin/tests/system/dscp/clean.sh
	bin/tests/system/ednscompliance/clean.sh
	bin/tests/system/emptyzones/clean.sh
	bin/tests/system/formerr/clean.sh
	bin/tests/system/forward/clean.sh
	bin/tests/system/glue/clean.sh
	bin/tests/system/limits/clean.sh
	bin/tests/system/lwresd/clean.sh
	bin/tests/system/masterfile/clean.sh
	bin/tests/system/names/clean.sh
	bin/tests/system/nslookup/clean.sh
	bin/tests/system/nsupdate/clean.sh
	bin/tests/system/sfcache/clean.sh
	bin/tests/system/sit/clean.sh
	bin/tests/system/sortlist/clean.sh
	bin/tests/system/stub/clean.sh
	bin/tests/system/xferquota/clean.sh

(cherry picked from commit f9c9fce5c7)

Conflicts:
	bin/tests/system/digdelv/tests.sh
	bin/tests/system/dlzexternal/clean.sh
	bin/tests/system/formerr/clean.sh
	bin/tests/system/resolver/clean.sh
	bin/tests/system/rndc/clean.sh
	bin/tests/system/rrl/prereq.sh
	bin/tests/system/sit/clean.sh
	bin/tests/system/tkey/clean.sh
	bin/tests/system/zonechecks/clean.sh
	lib/export/isc/nothreads/include/Makefile.in
2015-12-16 17:04:30 +11:00
Tinderbox User
565e69abd6 regen v9_9 2015-12-16 01:09:48 +00:00
Tinderbox User
e315ea819c update copyright notice / whitespace 2015-12-15 23:46:11 +00:00
Tinderbox User
853d976be1 newcopyrights 2015-12-15 23:30:14 +00:00
Mukund Sivaraman
15faf2a1fd Update notes.xml for #40996
(cherry picked from commit 6960e7fd12)
(cherry picked from commit f2d05dbb6f)
2015-12-15 18:07:37 +05:30
Mukund Sivaraman
50201b1e62 Use optimal message sizes to improve compression in AXFRs (#40996)
(cherry picked from commit ecc06cbc32)

Backported from master to not include the config option.

(cherry picked from commit 1780ade486)
2015-12-15 16:01:51 +05:30
Mark Andrews
b1fd8ee3ad 4281. [bug] Teach dns_message_totext about BADCOOKIE. [RT #41257]
(cherry picked from commit f647c0df9f)

Conflicts:
	CHANGES
	bin/named/query.c
	bin/tests/system/sit/tests.sh
	lib/dns/message.c

(cherry picked from commit d090709551)

Conflicts:
	CHANGES
2015-12-15 20:10:37 +11:00
Evan Hunt
7b022a9a2a [v9_9] use perl for query burst 2015-12-14 21:28:38 -08:00
Tinderbox User
d9acbe311a update copyright notice / whitespace 2015-12-11 23:47:08 +00:00
Tinderbox User
2646aebc8c newcopyrights 2015-12-11 23:30:16 +00:00
Evan Hunt
64fa79be37 [master] comments
(cherry picked from commit f21d2ee372)
(cherry picked from commit f5f9dc0d83)
2015-12-11 11:03:08 +05:30
Mukund Sivaraman
a28d8e8bf5 Improve performance of RBT (#41165)
(cherry picked from commit 5d79b60fc5)
(cherry picked from commit 318158d66a)
2015-12-11 10:29:36 +05:30
Mark Andrews
51aed18274 add digdelv 2015-12-11 14:52:12 +11:00
Mark Andrews
c30ac363b1 whitespace
(cherry picked from commit 564968bc0a)
2015-12-11 14:30:07 +11:00
Mark Andrews
9f18d8f777 make the lib/dns newrr target visible at the top level
(cherry picked from commit be123554f0)
2015-12-08 16:40:14 +11:00
Tinderbox User
db76389030 regen v9_9 2015-12-08 01:09:43 +00:00
Tinderbox User
0089590e4c newcopyrights 2015-12-07 23:30:21 +00:00
Mark Andrews
e533381eec 4276. [protocol] Add support for SMIMEA. [RT #40513]
(cherry picked from commit 322e6b5be7)
2015-12-08 08:18:25 +11:00
Mukund Sivaraman
5961808892 Speed up typemap_fromtext() (#41196)
(cherry picked from commit 5b13a593fe)
(cherry picked from commit d048a2c7f4)
2015-12-07 12:38:24 +05:30
Mark Andrews
507ffb566b bracket mismatch; window openssl version check 2015-12-06 23:10:31 +11:00
Evan Hunt
7504e5a982 [v9_9] fix dig +norrcomments
4272.	[bug]		dig: the +norrcomments option didn't work with +multi.
			[RT #41234]
2015-12-04 16:20:29 -08:00
Evan Hunt
036b9decf5 [v9_9] isc__taskmgr_pause() could deadlock
4271.	[test]		Unit tests could deadlock in isc__taskmgr_pause().
			[RT #41235]
2015-12-03 20:48:53 -08:00
Tinderbox User
da0669809b regen v9_9 2015-12-04 01:09:47 +00:00
Tinderbox User
8b2549eca8 update copyright notice / whitespace 2015-12-03 23:46:14 +00:00
Mark Andrews
47ef11c1b2 4270. [security] Update allowed OpenSSL versions as named is
potentially vulnerable to CVE-2015-3193.

(cherry picked from commit 10d7ab44cc)
2015-12-04 10:36:42 +11:00
Mark Andrews
22e8c09a00 update description
(cherry picked from commit 7bde79b32a)
2015-12-03 15:43:21 +11:00
Mark Andrews
f3896ba963 Add CVE-2015-8461
(cherry picked from commit ff2f98076c)
2015-12-03 15:33:06 +11:00
Mark Andrews
abc40b6330 update copyrights 2015-12-03 14:19:19 +11:00
Mark Andrews
585f8e4a74 change 4253 to security and add CVE
(cherry picked from commit 92cc6acdff)
2015-12-03 09:51:40 +11:00
Evan Hunt
487b2795a2 [v9_9] mention --enable-full-report in config summary output 2015-12-02 14:03:24 -08:00
Evan Hunt
626e00274f [v9_9] grammar 2015-12-02 00:07:32 -08:00
Mark Andrews
54d655f513 4266. [bug] The sdlz driver failed pass some errors back to the
caller. [RT #41142]
2015-12-02 13:17:19 +11:00
Mark Andrews
04a5a82333 4267. [test] Check sdlz error handling. [RT #41142]
(cherry picked from commit 26177be294)
2015-12-02 13:08:30 +11:00
Tinderbox User
651eecd42d update copyright notice / whitespace 2015-11-30 23:46:12 +00:00
Tinderbox User
51e89862c2 newcopyrights 2015-11-30 23:30:13 +00:00
Mukund Sivaraman
9b5f2aaade Mark performance CHANGES as such
(cherry picked from commit 35928b7e1a)
(cherry picked from commit 06df62fd7b)
2015-11-30 14:02:31 +05:30
Mark Andrews
372bc0c02e 4265. [bug] Address unchecked isc_mem_get calls. [RT #41187]
(cherry picked from commit 8e73941f33)
2015-11-30 10:30:11 +11:00
Tinderbox User
8b9eae483f update copyright notice / whitespace 2015-11-24 23:46:12 +00:00
Tinderbox User
22673f836c newcopyrights 2015-11-24 23:30:12 +00:00
Evan Hunt
771f458d49 [v9_9] update developer guide, expanding on comments and unit tests 2015-11-24 14:43:47 -08:00
Francis Dupont
5a4c81a16d Applied VS 2015 64 bit warning fixes (#40373) 2015-11-23 18:21:57 +01:00
Mark Andrews
f49d1544ab use isc_buffer_constinit
(cherry picked from commit 447591a49c)
2015-11-23 07:27:51 +11:00
Mark Andrews
ab4bfc7cd8 fix path for CHANGES.SE
(cherry picked from commit e948cf361c75ff0a64bb3365271efbbdaec740f3)
2015-11-21 12:23:09 +11:00
Tinderbox User
115deb9917 regen v9_9 2015-11-21 01:09:40 +00:00
Tinderbox User
28f860c226 update copyright notice / whitespace 2015-11-20 23:46:13 +00:00
Tinderbox User
1a0ee5dea1 newcopyrights 2015-11-20 23:30:13 +00:00
Mark Andrews
31085192d6 4264. [bug] Check const of strchr/strrchr assignments match
argument's const status. [RT #41150]

(cherry picked from commit 5b1c7ef35b)
2015-11-20 18:41:10 +11:00
Mark Andrews
a7f8c044ee spelling
(cherry picked from commit cbc660172d)
2015-11-20 14:55:54 +11:00
李昶
da024f69cc Cleanup in journal_open() correctly (#41129)
(cherry picked from commit 65f6e2f909)
(cherry picked from commit 264d7653dd)
2015-11-19 11:22:48 +05:30
Mukund Sivaraman
4452ce8b4f Fix bug in epoll_ctl() usage causing blocked connections (#41067)
(cherry picked from commit 7bc21557f3)
(cherry picked from commit dd2b5cf45b)
2015-11-19 11:09:22 +05:30
Tinderbox User
603bef1c44 regen v9_9 2015-11-18 01:09:42 +00:00
Mark Andrews
8735803562 note the address changes for H.ROOT-SERVERS.NET
(cherry picked from commit b57276f89e)
2015-11-18 11:09:24 +11:00
Tinderbox User
836da3bda8 update copyright notice / whitespace 2015-11-17 23:46:19 +00:00
Jeremy C. Reed
765e43f5b1 add simpara to some note tags
So generated "Note" header isn't on same line as content.

Also removed one place that said "Note" (so doesn't say
"Note Note").
2015-11-17 10:56:18 -05:00
Jeremy C. Reed
0a80e73ca3 remove errant word
a word is repeated in a sentence and didn't make sense as-is
so removed it
2015-11-17 10:50:36 -05:00
Jeremy C. Reed
36f0a36c78 get rid of the "See also fetch-glue" since is obsolete
This doesn't remove the description but don't have other
options refer to obsolete option.

No CHANGES entry since very minor.
2015-11-17 10:50:27 -05:00
Mark Andrews
eab11c6f0e add CVE-2015-8000 2015-11-17 15:30:12 +11:00
Evan Hunt
000165a414 [v9_9] typo 2015-11-16 18:21:59 -08:00
Mark Andrews
66915d0257 4261. [maint] H.ROOT-SERVERS.NET is 198.97.190.53 and 2001:500:1::53.
[RT #40556]

(cherry picked from commit 268c4e79c4)
2015-11-17 13:19:36 +11:00
Mark Andrews
f1a3a2dda7 api as of 9.9.8-P1 2015-11-17 12:49:00 +11:00
Tinderbox User
cf1ac058ae regen v9_9 2015-11-17 01:11:23 +00:00
Tinderbox User
6b8b2e5752 update copyright notice / whitespace 2015-11-16 23:46:12 +00:00
Tinderbox User
ef130908dd newcopyrights 2015-11-16 23:30:13 +00:00
Mark Andrews
5857144184 use *newrdatas rather than *oldrdatas in sizeof for consistency [RT #41131]
(cherry picked from commit a248b59381)
2015-11-17 06:29:49 +11:00
Mark Andrews
3cf5c97ae9 add dns_message_setclass
(cherry picked from commit 0d44dd6131)
2015-11-16 14:27:32 +11:00
Mark Andrews
9631d0769e 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]

(cherry picked from commit c8821d124c)
2015-11-16 13:28:28 +11:00
Tinderbox User
b73a3c4491 update copyright notice / whitespace 2015-11-11 23:46:12 +00:00
Tinderbox User
6046556d60 newcopyrights 2015-11-11 23:30:14 +00:00
Mark Andrews
6c90a60a12 check ptr is not NULL
(cherry picked from commit 946e2cd351)
2015-11-11 22:34:40 +11:00
Mukund Sivaraman
b745d37107 Limit rndc query message sizes to 32 KiB (#41073)
(cherry picked from commit 9b17fd447c)
(cherry picked from commit 380eee242d)
2015-11-11 10:01:39 +05:30
Mark Andrews
1e43861d6c don't run {doc,man}clean for releaseinfo.xml and friend
(cherry picked from commit 1d83f85752)
2015-11-10 14:40:12 +11:00
Tinderbox User
4acf5216d7 update copyright notice / whitespace 2015-11-09 23:46:11 +00:00
Tinderbox User
23ccd6262b newcopyrights 2015-11-09 23:30:22 +00:00
Evan Hunt
7d984067ee [v9_9] fix python script versions
4257.	[cleanup]	Python scripts reported incorrect version. [RT #41080]
2015-11-08 21:41:04 -08:00
Tinderbox User
000afdc0fd update copyright notice / whitespace 2015-11-06 23:46:12 +00:00
Tinderbox User
09eb1bf5d8 newcopyrights 2015-11-06 23:30:13 +00:00
Evan Hunt
47a8327820 [v9_9] allow spaces in rndc arguments
4256.	[bug]		Allow rndc command arguments to be quoted so as
			to allow spaces. [RT #36665]

(cherry picked from commit b513918481)
(cherry picked from commit d1ce32ad70)
2015-11-05 21:42:27 -08:00
Mark Andrews
7124919ff3 4254. [bug] Address missing lock when getting zone's serial.
[RT #41072]

(cherry picked from commit 29868ebbe3)
2015-11-05 17:44:34 +11:00
Mark Andrews
65927e0eca 4253. [bug] Address fetch context reference count handling error
on socket error.  [RT#40945]

(cherry picked from commit 2f450fcd29)
2015-11-05 17:28:20 +11:00
Tinderbox User
1ece14f6e6 update copyright notice / whitespace 2015-10-29 23:46:33 +00:00
Tinderbox User
5e92868bd4 newcopyrights 2015-10-29 23:30:09 +00:00
Evan Hunt
74250ec617 [v9_9] typo 2015-10-29 15:54:56 -07:00
Mark Andrews
fcf31042f8 0xf5f5f5f5f5f5f5f5 is a LLU
(cherry picked from commit 7c38fa994b)
2015-10-30 08:13:53 +11:00
Mark Andrews
b087c53842 #ifdef ISC_PLATFORM_HAVEATOMICSTORE
(cherry picked from commit f75f9e1b62)
2015-10-30 07:07:05 +11:00
Evan Hunt
da7e65a6aa [v9_9] isc_atomic_storeq()/stats improvements
4248.	[func]		Add an isc_atomic_storeq() function, use it in
			stats counters to improve performance.
			[RT #39972] [RT #39979]
2015-10-28 22:22:04 -07:00
Mark Andrews
95d37b0a03 return dns_dbtable_add result on error [RT #40653]
(cherry picked from commit 1ff2118d6c)
2015-10-29 15:48:24 +11:00
Evan Hunt
8a28710e0c [v9_9] update README-SGML 2015-10-28 21:36:58 -07:00
Tinderbox User
a2b3a83f82 regen v9_9 2015-10-29 03:01:47 +00:00
Mark Andrews
73cf46fdad 4244. [bug] The parser was not reporting that use-ixfr is obsolete.
[RT #41010]
2015-10-29 12:53:56 +11:00
Tinderbox User
8cbf7ab243 regen v9_9 2015-10-22 05:58:58 +00:00
Mark Andrews
d1bf3f9e8f cleanup trailing whitespace 2015-10-22 16:26:06 +11:00
Mark Andrews
abe4242926 cleanup trailing white space in SGML like files 2015-10-22 16:11:37 +11:00
Tinderbox User
049a3d7388 regen v9_9 2015-10-20 01:11:13 +00:00
Tinderbox User
ef1750b4a3 update copyright notice / whitespace 2015-10-19 23:46:09 +00:00
Evan Hunt
eb82119fb3 [v9_9] update TSIG, TKEY, SIG(0) documentation
4241.	[doc]		Improved the TSIG, TKEY, and SIG(0) sections in
			the ARM. [RT #40955]
2015-10-19 08:57:02 -07:00
Mark Andrews
c43eabc241 fix changes
(cherry picked from commit 9d8169cbf8)
2015-10-19 12:28:11 +11:00
Mark Andrews
db5b6b7150 4340. [port] Fix LibreSSL compatibility. [RT #40977]
(cherry picked from commit f824c65d1f)
2015-10-19 10:46:43 +11:00
Tinderbox User
514488e7cf update copyright notice / whitespace 2015-10-15 23:46:07 +00:00
Tinderbox User
20bc08a7ec newcopyrights 2015-10-15 23:30:09 +00:00
Mark Andrews
b2cb638754 4238. [bug] Don't send to servers on net zero (0.0.0.0/8).
[RT #40947]

(cherry picked from commit 6588a2b404)
2015-10-16 08:07:58 +11:00
Tinderbox User
2922eb5078 regen v9_9 2015-10-15 01:15:48 +00:00
Evan Hunt
d92c22d393 [v9_9] remove unneeded xsl code, fix a link in ARM 2015-10-14 14:58:12 -07:00
Tinderbox User
69d2776907 regen v9_9 2015-10-13 01:10:59 +00:00
Evan Hunt
1d934788ab [v9_9] add link anchors to <section> tags 2015-10-12 13:02:03 -07:00
Tinderbox User
50f00fc386 regen v9_9 2015-10-07 04:17:56 +00:00
Mark Andrews
4995787320 use /usr/local/share/xsl/docbook-ns on freebsd 2015-10-07 15:05:21 +11:00
Mark Andrews
d46705d524 restore copyright notice 2015-10-07 12:55:14 +11:00
Tinderbox User
916eba060b regen v9_9 2015-10-07 01:14:42 +00:00
Tinderbox User
b88cd03904 update copyright notice / whitespace 2015-10-06 23:46:15 +00:00
Mark Andrews
824bb205cc update 2015-10-07 10:39:56 +11:00
Mark Andrews
0da5824b1b teach merge_copyrights about .sty, .pdf, and .eps
(cherry picked from commit f7a6d4f915)
2015-10-07 10:37:40 +11:00
Mark Andrews
f67969466f look for opening [
(cherry picked from commit d9156bba3e)
2015-10-06 19:40:33 +11:00
Mark Andrews
f014ce8ea4 handle <!ENTITY within <!DOCTYPE
(cherry picked from commit 3db767c98f)
2015-10-06 19:16:33 +11:00
Evan Hunt
22ebfe3741 [v9_9] fix copyright warnings 2015-10-05 23:15:16 -07:00
Evan Hunt
abe52fa827 [v9_9] put back headings 2015-10-05 22:53:44 -07:00
Tinderbox User
673a236ab1 regen v9_9 2015-10-06 05:51:07 +00:00
Tinderbox User
bbed6bdd52 regen v9_9 2015-10-06 05:34:39 +00:00
Evan Hunt
d6e0d893be [v9_9] upgrade doc toolchain
4237.	[doc]		Upgraded documentation toolchain to use DocBook 5
			and dblatex. [RT #40766]
2015-10-05 22:01:25 -07:00
Mukund Sivaraman
d295a92663 Add note about Windows (#40761)
(cherry picked from commit 31cca00bba)
(cherry picked from commit 0774c4c6f6)
2015-10-06 05:58:09 +05:30
Mukund Sivaraman
328ec79fe9 Update named manual page (#40761)
(cherry picked from commit 1a989c4322)
(cherry picked from commit 56a1cede21)
2015-10-06 05:52:43 +05:30
Mukund Sivaraman
d7f3a35b30 Fix notes and CHANGES for #40761
(cherry picked from commit 56ebb560a1)
(cherry picked from commit 450f4f0ef8)
2015-10-06 05:46:24 +05:30
Tinderbox User
1550e536f5 regen v9_9 2015-10-04 01:22:44 +00:00
Mukund Sivaraman
2f1b6c0ed7 Update the default value for number of UDP listeners (#40761)
(cherry picked from commit 930719e876)
(cherry picked from commit 4039647930)
2015-10-03 07:16:45 +05:30
Tinderbox User
35f57c5986 update copyright notice / whitespace 2015-10-01 23:46:28 +00:00
Tinderbox User
938c8017e1 newcopyrights 2015-10-01 23:30:10 +00:00
Mark Andrews
9bcd5b76a1 emit "E:TESTNAME:DATE" when we can't start a server
(cherry picked from commit 3ed714b961)
2015-10-01 16:50:50 +10:00
Mark Andrews
c4f318b6d9 fix CHANGES numbers
(cherry picked from commit 18749940ae)
2015-10-01 11:29:11 +10:00
Tinderbox User
add73e606f regen v9_9 2015-10-01 01:15:40 +00:00
Tinderbox User
9c50a149e8 update copyright notice / whitespace 2015-09-30 23:46:34 +00:00
Tinderbox User
59fb97f5df newcopyrights 2015-09-30 23:30:15 +00:00
Mark Andrews
eb5a75a73e spelling
(cherry picked from commit c7e5ba1d17)
2015-09-30 16:10:19 +10:00
Mark Andrews
5c6e1683d1 4232. [test] Add tests for CDS and CDNSKEY with delegation-only.
[RT #40597]

(cherry picked from commit 65d59a4307)
2015-09-30 16:01:12 +10:00
Mark Andrews
b75f4f4220 4231. [contrib] Address unchecked memory allocation calls in
query-loc and zone2ldap. [RT #40789]

(cherry picked from commit ffdd3bc812)
2015-09-30 15:48:51 +10:00
Mark Andrews
c3bba75c40 4229. [bug] A variable could be used uninitalised in
dns_update_signaturesinc. [RT #40784]

(cherry picked from commit 24231afa05)
2015-09-30 15:29:48 +10:00
Mark Andrews
4f5cd75d23 4228. [bug] Address race condition in dns_client_destroyrestrans.
[RT #40605]

(cherry picked from commit 8a0b6b3901)
2015-09-30 14:59:22 +10:00
Mark Andrews
3b8f8695af 4227. [bug] Silence static analysis warnings. [RT #40828
(cherry picked from commit 2a12984ce6)
2015-09-30 14:35:42 +10:00
Evan Hunt
20daed5087 [v9_9] document the spill category 2015-09-29 21:22:06 -07:00
Tinderbox User
325a2e2c32 regen v9_9 2015-09-30 03:56:38 +00:00
Mark Andrews
bc7dce5ceb split out logging-categories [RT #40844]
(cherry picked from commit 6c4f9b5cf6)
2015-09-30 13:27:51 +10:00
Mark Andrews
f86ee83432 address linking issues
(cherry picked from commit 1a0e5b0504)
2015-09-30 12:41:45 +10:00
Tinderbox User
f9325b5da3 update copyright notice / whitespace 2015-09-29 23:46:27 +00:00
Tinderbox User
dd179addd3 newcopyrights 2015-09-29 23:30:39 +00:00
Evan Hunt
1045e8f764 [v9_9] fix theoretical shutdown race
4226.	[bug]		Address a theoretical shutdown race in
			zone.c:notify_send_queue(). [RT #38958]
2015-09-29 15:27:40 -07:00
Mar Andrews
9c5282dd07 4225. [port] freebsd/openbsd: Use '${CC} -shared' for building
shared libraries. [RT #39557]

(cherry picked from commit 87e7d08a8b)
2015-09-30 01:58:42 +10:00
Mark Andrews
17747a8059 make macro name match category name
(cherry picked from commit 4d085258cc)
2015-09-29 15:05:53 +10:00
Tinderbox User
e05dcd57f5 newcopyrights 2015-09-28 23:30:16 +00:00
Mark Andrews
b21f98c192 Introduce end-of-line normalization 2015-09-29 08:27:48 +10:00
Mark Andrews
bac25ffe08 4221. [bug] Resource leak on DNS_R_NXDOMAIN in fctx_create.
[RT #40583]

(cherry picked from commit 8d80b4939d)
2015-09-25 09:19:43 +10:00
Tinderbox User
a28556f2ec newcopyrights 2015-09-23 23:30:12 +00:00
Mark Andrews
608b52e9f7 add S: T: and E: log lines
(cherry picked from commit 1cb514f56a)
2015-09-24 07:44:04 +10:00
Tinderbox User
17d2830ace regen v9_9 2015-09-23 01:13:39 +00:00
Tinderbox User
ad89136024 update copyright notice / whitespace 2015-09-22 23:46:07 +00:00
Tinderbox User
1ea4442cd4 newcopyrights 2015-09-22 23:30:17 +00:00
Evan Hunt
e30b7c5165 [v9_9] need id tag on refentry 2015-09-21 21:36:42 -07:00
Tinderbox User
8c2e88fffa regen v9_9 2015-09-22 01:14:48 +00:00
Tinderbox User
ddd0dd179c update copyright notice / whitespace 2015-09-21 23:46:09 +00:00
Tinderbox User
f86674f2b9 newcopyrights 2015-09-21 23:30:19 +00:00
Evan Hunt
a6b8f77c75 [v9_9] comment no longer needed 2015-09-21 13:18:03 -07:00
Evan Hunt
9cc50c0e15 [v9_9] named.conf and lwresd man pages missing from ARM 2015-09-21 13:15:34 -07:00
Jeremy C. Reed
283aa1864b fix typo 2015-09-21 11:14:18 -04:00
Jeremy C. Reed
f1fc17033e Improve docs for zone-statistics
This is for ticket #36955.
Improve grammar for zone-statistics to list new arguments.
Refer to the docs in the options section.
Clarify about stats may not show view name.
2015-09-21 11:09:57 -04:00
Mark Andrews
1460b2afe3 4219. [bug] Set event->result to ISC_R_WOULDBLOCK on EWOULDBLOCK,
EGAIN when these soft error are not retried for
                        isc_socket_send*().

(cherry picked from commit a21c415687)
2015-09-21 18:05:39 +10:00
Tinderbox User
0548dbd69b regen v9_9 2015-09-19 01:21:11 +00:00
Tinderbox User
2a074779d4 update copyright notice / whitespace 2015-09-18 23:46:09 +00:00
Tinderbox User
05f8c8c454 newcopyrights 2015-09-18 23:30:21 +00:00
Evan Hunt
b1ec9cd9a2 [v9_9] fix wire_test so it can read files with comment lines 2015-09-18 11:40:33 -07:00
Mark Andrews
80f453032b 4217. [protocol] Add support for CSYNC. [RT #40532]
(cherry picked from commit f6e45a5c54)
2015-09-18 23:54:33 +10:00
Mark Andrews
0ae238037c 4216. [cleanup] Silence static analysis warnings. [RT #40649]
(cherry picked from commit 705d56b47a)
2015-09-18 23:36:48 +10:00
Mark Andrews
dcaa892d40 document optional class
(cherry picked from commit 2592ee16b5)
2015-09-18 13:26:03 +10:00
Mark Andrews
18abce5e9c document that the syslog facility is optional
(cherry picked from commit 03fac9f931)
2015-09-18 13:15:40 +10:00
Tinderbox User
c2845e1c28 regen v9_9 2015-09-18 01:16:23 +00:00
Mark Andrews
f632ee7815 4215. [bug] nsupdate: skip to next request on GSSTKEY create
failure. [RT #40685]

(cherry picked from commit ff55c577ba)
2015-09-18 09:54:06 +10:00
Tinderbox User
1ececb23f4 update copyright notice / whitespace 2015-09-17 23:46:13 +00:00
Tinderbox User
22d2d2b052 newcopyrights 2015-09-17 23:30:21 +00:00
Mark Andrews
478070a3f2 4214. [protocol] Add support for TALINK. [RT #40544]
(cherry picked from commit e0a30050c8)
2015-09-18 07:46:29 +10:00
Evan Hunt
c6d2559e8a [v9_9] some options were in the wrong section of the ARM 2015-09-17 09:39:05 -07:00
Mark Andrews
4cbbeae1aa 4213. [bug] Don't reuse a cache across multiple classes.
[RT #40205]

(cherry picked from commit dd1bcab25c)
2015-09-17 14:53:45 +10:00
Mark Andrews
fd82172e14 address race condition in ecdsa system test leading to differing authority sections. [RT #40283]; no CHANGES entry.
(cherry picked from commit 1d5ebfc05f)
2015-09-17 14:24:19 +10:00
Mark Andrews
b50e4fe492 4210. [cleanup] Silence use after free false positive. [RT #40743]
(cherry picked from commit f43e5c8ed2)
2015-09-17 14:07:06 +10:00
Tinderbox User
2f82eb9011 regen v9_9 2015-09-17 01:17:29 +00:00
Mark Andrews
466e043c41 fix company name
(cherry picked from commit eb4de5324b)
2015-09-17 10:18:40 +10:00
Mark Andrews
c36c68c796 update util/copyrights 2015-09-17 09:41:58 +10:00
Mark Andrews
31d8f73ff9 4208. [bug] Address null pointer dereferences on out of memory.
[RT #40764]

(cherry picked from commit fe51e068f0)
2015-09-17 08:52:28 +10:00
Jeremy C. Reed
4e83c1c986 document zone "type" in the ARM
This is for ticket #39577
It only added two sentences so didn't update changelog.

This is derived from commit 7d2c4d1c9f
but v9_9 doesn't have in-view so don't mention that.
2015-09-16 10:59:10 -04:00
Mark Andrews
246cad50c6 4207. [bug] Handle class mismatches with raw zone files.
[RT #40746]

(cherry picked from commit 0f2ecf4b5c)
2015-09-16 10:44:32 +10:00
Evan Hunt
c045de62c2 [v9_9] add debian/ubuntu path for docbook-xsl to configure 2015-09-14 20:20:21 -07:00
Tinderbox User
c45ebf6131 update copyright notice / whitespace 2015-09-14 23:46:06 +00:00
Tinderbox User
affd5e4821 newcopyrights 2015-09-14 23:30:13 +00:00
Evan Hunt
a1021b8945 [v9_9] spurious spaces in named-checkconf -p
4205.	[bug]		'named-checkconf -p' could include unwanted spaces
			when printing tuples with unset optional fields.
			[RT #40731]
2015-09-14 08:53:25 -07:00
Tinderbox User
d5e0a33dd7 newcopyrights 2015-09-12 23:30:09 +00:00
Tinderbox User
7562b1091c regen v9_9 2015-09-12 01:21:01 +00:00
Tinderbox User
24f3539e13 update copyright notice / whitespace 2015-09-11 23:46:29 +00:00
Tinderbox User
bb242b553b newcopyrights 2015-09-11 23:30:20 +00:00
Mark Andrews
0ee0aafa30 4204. [bug] 'dig +trace' failed to lookup the correct type if
the initial root ns query was retried. [RT #40296]
`

(cherry picked from commit 295a711b72)
2015-09-12 09:08:18 +10:00
Jeremy C. Reed
411259a6f2 add docbook tag for dns64 suffix value
add missing docbook formatting.
Note the element is standard, but that can be fixed in bulk later.
2015-09-11 14:37:25 -04:00
Mark Andrews
3f08efe54a 4199. [protocol] Add support for NINFO, RKEY, SINK, TA.
[RT #40545] [RT #40547] [RT #40561] [RT #40563]

(cherry picked from commit f7ec0518c3270bd72887b23a209b83437e7a1473)
2015-09-11 17:32:43 +10:00
Evan Hunt
f4e2fb819d [v9_9] incorrect result code in isccc
4202.	[bug]		isccc_cc_fromwire() could return an incorrect
			result. [RT #40614]
2015-09-11 00:05:44 -07:00
Mark Andrews
33eddc9bc0 4201. [func] The default preferred-glue is now the address record
type of the transport the query was received
                        over.  [RT #40468]

(cherry picked from commit a0ef8211d3)
2015-09-11 13:28:31 +10:00
Mark Andrews
21094e3172 add dnssec-importkey.docbook 2015-09-11 13:09:12 +10:00
Mark Andrews
745319ff00 remove bind 9.10 files 2015-09-11 12:56:36 +10:00
Mark Andrews
0cfc7d124d 4200. [cleanup] win32: update BINDinstall to be BIND release
independent. [RT #38915]

(cherry picked from commit 3fa134363f)
2015-09-11 12:45:32 +10:00
Mark Andrews
ace52db014 add NINFO and RKEY
(cherry picked from commit 329073f6b8)
2015-09-11 11:41:31 +10:00
Tinderbox User
f000432d22 regen v9_9 2015-09-11 01:14:54 +00:00
Tinderbox User
86634ce4c2 update copyright notice / whitespace 2015-09-10 23:47:14 +00:00
Tinderbox User
34417c8569 newcopyrights 2015-09-10 23:30:39 +00:00
Jeremy C. Reed
91e9bc341e add missing space
noticed in manual review of the PDF
minor so wasn't reviewed

and fixed conflicts after cherry-pick
2015-09-10 10:38:02 -04:00
Mark Andrews
5b15652954 4199. [protocol] Add support for NINFO, RKEY, TA.
[RT #40545] [RT #40547] [RT #40563]

(cherry picked from commit 3dd63ba00f)
2015-09-10 18:12:32 +10:00
Mark Andrews
c6501326e7 4199. [protocol] Add support for NINFO, RKEY. [RT #40547] [RT #40563]
(cherry picked from commit 63874956de)
2015-09-10 17:08:48 +10:00
Mark Andrews
d4e6bcf663 4199. [protocol] Add support for RKEY. [RT #40563]
(cherry picked from commit 8b29fc0b7a)
2015-09-10 16:33:00 +10:00
Tinderbox User
3661041123 regen v9_9 2015-09-10 01:17:55 +00:00
Mark Andrews
52c7a8f10e update 2015-09-10 10:41:06 +10:00
Evan Hunt
2c5304a185 [v9_9] clean up dead code 2015-09-09 08:38:37 -07:00
Mark Andrews
7a20b1cfc4 address race condition rt40242
(cherry picked from commit 5be3128599)
2015-09-09 18:12:28 +10:00
Mark Andrews
1b92050394 4198. [doc] Add fetch-quota-params, fetches-per-server, and
fetches-per-zone to doc/misc/options. [RT #40601]

(cherry picked from commit 513f6f6ff5)
2015-09-09 18:05:43 +10:00
Mark Andrews
d5265dc115 4196. [doc] Improve how "enum + other" types are documented.
[RT #40608]

(cherry picked from commit 4ca7391e64)
2015-09-09 17:34:17 +10:00
Mark Andrews
428fd64aea 4194. [bug] named-checkconf -p failed to properly print a port
range.  [RT #40634]

(cherry picked from commit fbd9aaa58c)
2015-09-09 16:50:31 +10:00
1837 changed files with 148555 additions and 104048 deletions

2
.gitattributes vendored
View File

@@ -1 +1,3 @@
*.sln.in eol=crlf
*.vcxproj.in eol=crlf
*.vcxproj.filters.in eol=crlf

1284
CHANGES

File diff suppressed because it is too large Load Diff

186
CONTRIBUTING Normal file
View File

@@ -0,0 +1,186 @@
BIND Source Access and Contributor Guidelines
Feb 22, 2018
Contents
1. Access to source code
2. Reporting bugs
3. Contributing code
Introduction
Thank you for using BIND!
BIND is open source software that implements the Domain Name System (DNS)
protocols for the Internet. It is a reference implementation of those
protocols, but it is also production-grade software, suitable for use in
high-volume and high-reliability applications. It is by far the most
widely used DNS software, providing a robust and stable platform on top of
which organizations can build distributed computing systems with the
knowledge that those systems are fully compliant with published DNS
standards.
BIND is and will always remain free and openly available. It can be used
and modified in any way by anyone.
BIND is maintained by the Internet Systems Consortium, a public-benefit
501(c)(3) nonprofit, using a "managed open source" approach: anyone can
see the source, but only ISC employees have commit access. Until recently,
the source could only be seen once ISC had published a release: read
access to the source repository was restricted just as commit access was.
That's now changing, with the opening of a public git mirror to the BIND
source tree (see below).
Access to source code
Public BIND releases are always available from the ISC FTP site.
A public-access GIT repository is also available at https://gitlab.isc.org
. This repository is a mirror, updated several times per day, of the
source repository maintained by ISC. It contains all the public release
branches; upcoming releases can be viewed in their current state at any
time. It does not contain development branches or unreviewed work in
progress. Commits which address security vulnerablilities are withheld
until after public disclosure.
You can browse the source online via https://gitlab.isc.org/isc-projects/
bind9
To clone the repository, use:
$ git clone https://gitlab.isc.org/isc-projects/bind9.git
Release branch names are of the form v9_X, where X represents the second
number in the BIND 9 version number. So, to check out the BIND 9.12
branch, use:
$ git checkout v9_12
Whenever a branch is ready for publication, a tag will be placed of the
form v9_X_Y. The 9.12.0 release, for instance, is tagged as v9_12_0.
The branch in which the next major release is being developed is called
master.
Reporting bugs
Reports of flaws in the BIND package, including software bugs, errors in
the documentation, missing files in the tarball, suggested changes or
requests for new features, etc, can be filed using https://gitlab.isc.org/
isc-projects/bind9/issues.
Due to a large ticket backlog, we are sometimes slow to respond,
especially if a bug is cosmetic or if a feature request is vague or low in
priority, but we will try at least to acknowledge legitimate bug reports
within a week.
ISC's ticketing system is publicly readable; however, you must have an
account to file a new issue. You can either register locally or use
credentials from an existing account at GitHub, GitLab, Google, Twitter,
or Facebook.
Reporting possible security issues
If you think you may be seeing a potential security vulnerability in BIND
(for example, a crash with REQUIRE, INSIST, or ASSERT failure), please
report it immediately by emailing to security-officer@isc.org. Plain-text
e-mail is not a secure choice for communications concerning undisclosed
security issues so please encrypt your communications to us if possible,
using the ISC Security Officer public key.
Do not discuss undisclosed security vulnerabilites on any public mailing
list. ISC has a long history of handling reported vulnerabilities promptly
and effectively and we respect and acknowledge responsible reporters.
ISC's Security Vulnerability Disclosure Policy is documented at https://
kb.isc.org/article/AA-00861/0.
If you have a crash, you may want to consult ?What to do if your BIND or
DHCP server has crashed.?
Contributing code
BIND is licensed under the Mozilla Public License 2.0. Earier versions
(BIND 9.10 and earlier) were licensed under the ISC License
ISC does not require an explicit copyright assignment for patch
contributions. However, by submitting a patch to ISC, you implicitly
certify that you are the author of the code, that you intend to reliquish
exclusive copyright, and that you grant permission to publish your work
under the open source license used for the BIND version(s) to which your
patch will be applied.
BIND code
Patches for BIND may be submitted directly via merge requests in ISC's
Gitlab source repository for BIND.
Patches can also be submitted as diffs against a specific version of BIND
-- preferably the current top of the master branch. Diffs may be generated
using either git format-patch or git diff.
Those wanting to write code for BIND may be interested in the developer
information page, which includes information about BIND design and coding
practices, including discussion of internal APIs and overall system
architecture. (This is a work in progress, and still quite preliminary.)
Every patch submitted will be reviewed by ISC engineers following our code
review process before it is merged.
It may take considerable time to review patch submissions, especially if
they don't meet ISC style and quality guidelines. If a patch is a good
idea, we can and will do additional work to bring it up to par, but if
we're busy with other work, it may take us a long time to get to it.
To ensure your patch is acted on as promptly as possible, please:
* Try to adhere to the BIND 9 coding style.
* Run make check to ensure your change hasn't caused any functional
regressions.
* Document your work, both in the patch itself and in the accompanying
email.
* In patches that make non-trivial functional changes, include system
tests if possible; when introducing or substantially altering a
library API, include unit tests. See Testing for more information.
Changes to configure
If you need to make changes to configure, you should not edit it directly;
instead, edit configure.in, then run autoconf. Similarly, instead of
editing config.h.in directly, edit configure.in and run autoheader.
When submitting a patch as a diff, it's fine to omit the configure diffs
to save space. Just send the configure.in diffs and we'll generate the new
configure during the review process.
Documentation
All functional changes should be documented. There are three types of
documentation in the BIND source tree:
* Man pages are kept alongside the source code for the commands they
document, in files ending in .docbook; for example, the named man page
is bin/named/named.docbook.
* The BIND 9 Administrator Reference Manual is mostly in doc/arm/
Bv9ARM-book.xml, plus a few other XML files that are included in it.
* API documentation is in the header file describing the API, in
Doxygen-formatted comments.
It is not necessary to edit any documentation files other than these; all
PDF, HTML, and nroff-format man page files will be updated automatically
from the docbook and XML files after merging.
Patches to improve existing documentation are also very welcome!
Tests
BIND is a large and complex project. We rely heavily on continuous
automated testing and cannot merge new code without adequate test
coverage. Please see the 'Testing' section of doc/dev/dev.md for more
information.
Thanks
Thank you for your interest in contributing to the ongoing development of
BIND.

201
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,201 @@
<!--
- Copyright (C) Internet Systems Consortium, Inc. ("ISC")
-
- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- See the COPYRIGHT file distributed with this work for additional
- information regarding copyright ownership.
-->
## BIND Source Access and Contributor Guidelines
*Feb 22, 2018*
### Contents
1. [Access to source code](#access)
1. [Reporting bugs](#bugs)
1. [Contributing code](#contrib)
### Introduction
Thank you for using BIND!
BIND is open source software that implements the Domain Name System (DNS)
protocols for the Internet. It is a reference implementation of those
protocols, but it is also production-grade software, suitable for use in
high-volume and high-reliability applications. It is by far the most
widely used DNS software, providing a robust and stable platform on top of
which organizations can build distributed computing systems with the
knowledge that those systems are fully compliant with published DNS
standards.
BIND is and will always remain free and openly available. It can be
used and modified in any way by anyone.
BIND is maintained by the [Internet Systems Consortium](https://www.isc.org),
a public-benefit 501(c)(3) nonprofit, using a "managed open source" approach:
anyone can see the source, but only ISC employees have commit access.
Until recently, the source could only be seen once ISC had published
a release: read access to the source repository was restricted just
as commit access was. That's now changing, with the opening of a
public git mirror to the BIND source tree (see below).
### <a name="access"></a>Access to source code
Public BIND releases are always available from the
[ISC FTP site](ftp://ftp.isc.org/isc/bind9).
A public-access GIT repository is also available at
[https://gitlab.isc.org](https://gitlab.isc.org).
This repository is a mirror, updated several times per day, of the
source repository maintained by ISC. It contains all the public release
branches; upcoming releases can be viewed in their current state at any
time. It does *not* contain development branches or unreviewed work in
progress. Commits which address security vulnerablilities are withheld
until after public disclosure.
You can browse the source online via
[https://gitlab.isc.org/isc-projects/bind9](https://gitlab.isc.org/isc-projects/bind9)
To clone the repository, use:
> $ git clone https://gitlab.isc.org/isc-projects/bind9.git
Release branch names are of the form `v9_X`, where X represents the second
number in the BIND 9 version number. So, to check out the BIND 9.12
branch, use:
> $ git checkout v9_12
Whenever a branch is ready for publication, a tag will be placed of the
form `v9_X_Y`. The 9.12.0 release, for instance, is tagged as `v9_12_0`.
The branch in which the next major release is being developed is called
`master`.
### <a name="bugs"></a>Reporting bugs
Reports of flaws in the BIND package, including software bugs, errors
in the documentation, missing files in the tarball, suggested changes
or requests for new features, etc, can be filed using
[https://gitlab.isc.org/isc-projects/bind9/issues](https://gitlab.isc.org/isc-projects/bind9/issues).
Due to a large ticket backlog, we are sometimes slow to respond,
especially if a bug is cosmetic or if a feature request is vague or
low in priority, but we will try at least to acknowledge legitimate
bug reports within a week.
ISC's ticketing system is publicly readable; however, you must have
an account to file a new issue. You can either register locally or
use credentials from an existing account at GitHub, GitLab, Google,
Twitter, or Facebook.
### Reporting possible security issues
If you think you may be seeing a potential security vulnerability in BIND
(for example, a crash with REQUIRE, INSIST, or ASSERT failure), please
report it immediately by emailing to security-officer@isc.org. Plain-text
e-mail is not a secure choice for communications concerning undisclosed
security issues so please encrypt your communications to us if possible,
using the [ISC Security Officer public key](https://www.isc.org/downloads/software-support-policy/openpgp-key/).
Do not discuss undisclosed security vulnerabilites on any public mailing list.
ISC has a long history of handling reported vulnerabilities promptly and
effectively and we respect and acknowledge responsible reporters.
ISC's Security Vulnerability Disclosure Policy is documented at [https://kb.isc.org/article/AA-00861/0](https://kb.isc.org/article/AA-00861/0).
If you have a crash, you may want to consult
[What to do if your BIND or DHCP server has crashed.](https://kb.isc.org/article/AA-00340/89/What-to-do-if-your-BIND-or-DHCP-server-has-crashed.html)
### <a name="bugs"></a>Contributing code
BIND is licensed under the
[Mozilla Public License 2.0](http://www.isc.org/downloads/software-support-policy/isc-license/).
Earier versions (BIND 9.10 and earlier) were licensed under the [ISC License](http://www.isc.org/downloads/software-support-policy/isc-license/)
ISC does not require an explicit copyright assignment for patch
contributions. However, by submitting a patch to ISC, you implicitly
certify that you are the author of the code, that you intend to reliquish
exclusive copyright, and that you grant permission to publish your work
under the open source license used for the BIND version(s) to which your
patch will be applied.
#### <a name="bind"></a>BIND code
Patches for BIND may be submitted directly via merge requests in
[ISC's Gitlab](https://gitlab.isc.org/isc-projects/bind9/) source
repository for BIND.
Patches can also be submitted as diffs against a specific version of
BIND -- preferably the current top of the `master` branch. Diffs may
be generated using either `git format-patch` or `git diff`.
Those wanting to write code for BIND may be interested in the
[developer information](doc/dev/dev.md) page, which includes information
about BIND design and coding practices, including discussion of internal
APIs and overall system architecture. (This is a work in progress, and
still quite preliminary.)
Every patch submitted will be reviewed by ISC engineers following our
[code review process](doc/dev/dev.md#reviews) before it is merged.
It may take considerable time to review patch submissions, especially if
they don't meet ISC style and quality guidelines. If a patch is a good
idea, we can and will do additional work to bring it up to par, but if
we're busy with other work, it may take us a long time to get to it.
To ensure your patch is acted on as promptly as possible, please:
* Try to adhere to the [BIND 9 coding style](doc/dev/style.md).
* Run `make` `check` to ensure your change hasn't caused any
functional regressions.
* Document your work, both in the patch itself and in the
accompanying email.
* In patches that make non-trivial functional changes, include system
tests if possible; when introducing or substantially altering a
library API, include unit tests. See [Testing](doc/dev/dev.md#testing)
for more information.
##### Changes to `configure`
If you need to make changes to `configure`, you should not edit it
directly; instead, edit `configure.in`, then run `autoconf`. Similarly,
instead of editing `config.h.in` directly, edit `configure.in` and run
`autoheader`.
When submitting a patch as a diff, it's fine to omit the `configure`
diffs to save space. Just send the `configure.in` diffs and we'll
generate the new `configure` during the review process.
##### Documentation
All functional changes should be documented. There are three types
of documentation in the BIND source tree:
* Man pages are kept alongside the source code for the commands
they document, in files ending in `.docbook`; for example, the
`named` man page is `bin/named/named.docbook`.
* The *BIND 9 Administrator Reference Manual* is mostly in
`doc/arm/Bv9ARM-book.xml`, plus a few other XML files that are included
in it.
* API documentation is in the header file describing the API, in
Doxygen-formatted comments.
It is not necessary to edit any documentation files other than these;
all PDF, HTML, and `nroff`-format man page files will be updated
automatically from the `docbook` and `XML` files after merging.
Patches to improve existing documentation are also very welcome!
##### Tests
BIND is a large and complex project. We rely heavily on continuous
automated testing and cannot merge new code without adequate test coverage.
Please see [the 'Testing' section of doc/dev/dev.md](doc/dev/dev.md#testing)
for more information.
#### Thanks
Thank you for your interest in contributing to the ongoing development
of BIND.

View File

@@ -1,4 +1,4 @@
Copyright (C) 2004-2015 Internet Systems Consortium, Inc. ("ISC")
Copyright (C) 2004-2018 Internet Systems Consortium, Inc. ("ISC")
Copyright (C) 1996-2003 Internet Software Consortium.
Permission to use, copy, modify, and/or distribute this software for any

894
FAQ
View File

@@ -1,894 +0,0 @@
Frequently Asked Questions about BIND 9
Copyright © 2004-2010, 2013, 2014 Internet Systems Consortium, Inc.
("ISC")
Copyright © 2000-2003 Internet Software Consortium.
-----------------------------------------------------------------------
1. Compilation and Installation Questions
Q: I'm trying to compile BIND 9, and "make" is failing due to files not
being found. Why?
A: Using a parallel or distributed "make" to build BIND 9 is not
supported, and doesn't work. If you are using one of these, use normal
make or gmake instead.
Q: Isn't "make install" supposed to generate a default named.conf?
A: Short Answer: No.
Long Answer: There really isn't a default configuration which fits any
site perfectly. There are lots of decisions that need to be made and
there is no consensus on what the defaults should be. For example
FreeBSD uses /etc/namedb as the location where the configuration files
for named are stored. Others use /var/named.
What addresses to listen on? For a laptop on the move a lot you may
only want to listen on the loop back interfaces.
To whom do you offer recursive service? Is there a firewall to
consider? If so, is it stateless or stateful? Are you directly on the
Internet? Are you on a private network? Are you on a NAT'd network? The
answers to all these questions change how you configure even a caching
name server.
2. Configuration and Setup Questions
Q: Why does named log the warning message "no TTL specified - using SOA
MINTTL instead"?
A: Your zone file is illegal according to RFC1035. It must either have a
line like:
$TTL 86400
at the beginning, or the first record in it must have a TTL field, like
the "84600" in this example:
example.com. 86400 IN SOA ns hostmaster ( 1 3600 1800 1814400 3600 )
Q: Why do I get errors like "dns_zone_load: zone foo/IN: loading master
file bar: ran out of space"?
A: This is often caused by TXT records with missing close quotes. Check
that all TXT records containing quoted strings have both open and close
quotes.
Q: How do I restrict people from looking up the server version?
A: Put a "version" option containing something other than the real version
in the "options" section of named.conf. Note doing this will not
prevent attacks and may impede people trying to diagnose problems with
your server. Also it is possible to "fingerprint" nameservers to
determine their version.
Q: How do I restrict only remote users from looking up the server version?
A: The following view statement will intercept lookups as the internal
view that holds the version information will be matched last. The
caveats of the previous answer still apply, of course.
view "chaos" chaos {
match-clients { <those to be refused>; };
allow-query { none; };
zone "." {
type hint;
file "/dev/null"; // or any empty file
};
};
Q: What do "no source of entropy found" or "could not open entropy source
foo" mean?
A: The server requires a source of entropy to perform certain operations,
mostly DNSSEC related. These messages indicate that you have no source
of entropy. On systems with /dev/random or an equivalent, it is used by
default. A source of entropy can also be defined using the
random-device option in named.conf.
Q: I'm trying to use TSIG to authenticate dynamic updates or zone
transfers. I'm sure I have the keys set up correctly, but the server is
rejecting the TSIG. Why?
A: This may be a clock skew problem. Check that the the clocks on the
client and server are properly synchronised (e.g., using ntp).
Q: I see a log message like the following. Why?
couldn't open pid file '/var/run/named.pid': Permission denied
A: You are most likely running named as a non-root user, and that user
does not have permission to write in /var/run. The common ways of
fixing this are to create a /var/run/named directory owned by the named
user and set pid-file to "/var/run/named/named.pid", or set pid-file to
"named.pid", which will put the file in the directory specified by the
directory option (which, in this case, must be writable by the user
named is running as).
Q: I can query the nameserver from the nameserver but not from other
machines. Why?
A: This is usually the result of the firewall configuration stopping the
queries and / or the replies.
Q: How can I make a server a slave for both an internal and an external
view at the same time? When I tried, both views on the slave were
transferred from the same view on the master.
A: You will need to give the master and slave multiple IP addresses and
use those to make sure you reach the correct view on the other machine.
Master: 10.0.1.1 (internal), 10.0.1.2 (external, IP alias)
internal:
match-clients { !10.0.1.2; !10.0.1.4; 10.0.1/24; };
notify-source 10.0.1.1;
transfer-source 10.0.1.1;
query-source address 10.0.1.1;
external:
match-clients { any; };
recursion no; // don't offer recursion to the world
notify-source 10.0.1.2;
transfer-source 10.0.1.2;
query-source address 10.0.1.2;
Slave: 10.0.1.3 (internal), 10.0.1.4 (external, IP alias)
internal:
match-clients { !10.0.1.2; !10.0.1.4; 10.0.1/24; };
notify-source 10.0.1.3;
transfer-source 10.0.1.3;
query-source address 10.0.1.3;
external:
match-clients { any; };
recursion no; // don't offer recursion to the world
notify-source 10.0.1.4;
transfer-source 10.0.1.4;
query-source address 10.0.1.4;
You put the external address on the alias so that all the other dns
clients on these boxes see the internal view by default.
A: BIND 9.3 and later: Use TSIG to select the appropriate view.
Master 10.0.1.1:
key "external" {
algorithm hmac-sha256;
secret "xxxxxxxxxxxxxxxxxxxxxxxx";
};
view "internal" {
match-clients { !key external; // reject message ment for the
// external view.
10.0.1/24; }; // accept from these addresses.
...
};
view "external" {
match-clients { key external; any; };
server 10.0.1.2 { keys external; }; // tag messages from the
// external view to the
// other servers for the
// view.
recursion no;
...
};
Slave 10.0.1.2:
key "external" {
algorithm hmac-sha256;
secret "xxxxxxxxxxxxxxxxxxxxxxxx";
};
view "internal" {
match-clients { !key external; 10.0.1/24; };
...
};
view "external" {
match-clients { key external; any; };
server 10.0.1.1 { keys external; };
recursion no;
...
};
Q: I get error messages like "multiple RRs of singleton type" and "CNAME
and other data" when transferring a zone. What does this mean?
A: These indicate a malformed master zone. You can identify the exact
records involved by transferring the zone using dig then running
named-checkzone on it.
dig axfr example.com @master-server > tmp
named-checkzone example.com tmp
A CNAME record cannot exist with the same name as another record except
for the DNSSEC records which prove its existence (NSEC).
RFC 1034, Section 3.6.2: "If a CNAME RR is present at a node, no other
data should be present; this ensures that the data for a canonical name
and its aliases cannot be different. This rule also insures that a
cached CNAME can be used without checking with an authoritative server
for other RR types."
Q: I get error messages like "named.conf:99: unexpected end of input"
where 99 is the last line of named.conf.
A: There are unbalanced quotes in named.conf.
A: Some text editors (notepad and wordpad) fail to put a line title
indication (e.g. CR/LF) on the last line of a text file. This can be
fixed by "adding" a blank line to the end of the file. Named expects to
see EOF immediately after EOL and treats text files where this is not
met as truncated.
Q: How do I share a dynamic zone between multiple views?
A: You choose one view to be master and the second a slave and transfer
the zone between views.
Master 10.0.1.1:
key "external" {
algorithm hmac-sha256;
secret "xxxxxxxxxxxxxxxxxxxxxxxx";
};
key "mykey" {
algorithm hmac-sha256;
secret "yyyyyyyyyyyyyyyyyyyyyyyy";
};
view "internal" {
match-clients { !key external; 10.0.1/24; };
server 10.0.1.1 {
/* Deliver notify messages to external view. */
keys { external; };
};
zone "example.com" {
type master;
file "internal/example.db";
allow-update { key mykey; };
also-notify { 10.0.1.1; };
};
};
view "external" {
match-clients { key external; any; };
zone "example.com" {
type slave;
file "external/example.db";
masters { 10.0.1.1; };
transfer-source 10.0.1.1;
// allow-update-forwarding { any; };
// allow-notify { ... };
};
};
Q: I get a error message like "zone wireless.ietf56.ietf.org/IN: loading
master file primaries/wireless.ietf56.ietf.org: no owner".
A: This error is produced when a line in the master file contains leading
white space (tab/space) but there is no current record owner name to
inherit the name from. Usually this is the result of putting white
space before a comment, forgetting the "@" for the SOA record, or
indenting the master file.
Q: Why are my logs in GMT (UTC).
A: You are running chrooted (-t) and have not supplied local timezone
information in the chroot area.
FreeBSD: /etc/localtime
Solaris: /etc/TIMEZONE and /usr/share/lib/zoneinfo
OSF: /etc/zoneinfo/localtime
See also tzset(3) and zic(8).
Q: I get "rndc: connect failed: connection refused" when I try to run
rndc.
A: This is usually a configuration error.
First ensure that named is running and no errors are being reported at
startup (/var/log/messages or equivalent). Running "named -g <usual
arguments>" from a title can help at this point.
Secondly ensure that named is configured to use rndc either by
"rndc-confgen -a", rndc-confgen or manually. The Administrators
Reference manual has details on how to do this.
Old versions of rndc-confgen used localhost rather than 127.0.0.1 in /
etc/rndc.conf for the default server. Update /etc/rndc.conf if
necessary so that the default server listed in /etc/rndc.conf matches
the addresses used in named.conf. "localhost" has two address
(127.0.0.1 and ::1).
If you use "rndc-confgen -a" and named is running with -t or -u ensure
that /etc/rndc.conf has the correct ownership and that a copy is in the
chroot area. You can do this by re-running "rndc-confgen -a" with
appropriate -t and -u arguments.
Q: I get "transfer of 'example.net/IN' from 192.168.4.12#53: failed while
receiving responses: permission denied" error messages.
A: These indicate a filesystem permission error preventing named creating
/ renaming the temporary file. These will usually also have other
associated error messages like
"dumping master file: sl/tmp-XXXX5il3sQ: open: permission denied"
Named needs write permission on the directory containing the file.
Named writes the new cache file to a temporary file then renames it to
the name specified in named.conf to ensure that the contents are always
complete. This is to prevent named loading a partial zone in the event
of power failure or similar interrupting the write of the master file.
Note file names are relative to the directory specified in options and
any chroot directory ([<chroot dir>/][<options dir>]).
If named is invoked as "named -t /chroot/DNS" with the following
named.conf then "/chroot/DNS/var/named/sl" needs to be writable by the
user named is running as.
options {
directory "/var/named";
};
zone "example.net" {
type slave;
file "sl/example.net";
masters { 192.168.4.12; };
};
Q: I want to forward all DNS queries from my caching nameserver to another
server. But there are some domains which have to be served locally, via
rbldnsd.
How do I achieve this ?
A: options {
forward only;
forwarders { <ip.of.primary.nameserver>; };
};
zone "sbl-xbl.spamhaus.org" {
type forward; forward only;
forwarders { <ip.of.rbldns.server> port 530; };
};
zone "list.dsbl.org" {
type forward; forward only;
forwarders { <ip.of.rbldns.server> port 530; };
};
Q: Can you help me understand how BIND 9 uses memory to store DNS zones?
Some times it seems to take several times the amount of memory it needs
to store the zone.
A: When reloading a zone named my have multiple copies of the zone in
memory at one time. The zone it is serving and the one it is loading.
If reloads are ultra fast it can have more still.
e.g. Ones that are transferring out, the one that it is serving and the
one that is loading.
BIND 8 destroyed the zone before loading and also killed off outgoing
transfers of the zone.
The new strategy allows slaves to get copies of the new zone regardless
of how often the master is loaded compared to the transfer time. The
slave might skip some intermediate versions but the transfers will
complete and it will keep reasonably in sync with the master.
The new strategy also allows the master to recover from syntax and
other errors in the master file as it still has an in-core copy of the
old contents.
Q: I want to use IPv6 locally but I don't have a external IPv6 connection.
External lookups are slow.
A: You can use server clauses to stop named making external lookups over
IPv6.
server fd81:ec6c:bd62::/48 { bogus no; }; // site ULA prefix
server ::/0 { bogus yes; };
3. Operations Questions
Q: How to change the nameservers for a zone?
A: Step 1: Ensure all nameservers, new and old, are serving the same zone
content.
Step 2: Work out the maximum TTL of the NS RRset in the parent and
child zones. This is the time it will take caches to be clear of a
particular version of the NS RRset. If you are just removing
nameservers you can skip to Step 6.
Step 3: Add new nameservers to the NS RRset for the zone and wait until
all the servers for the zone are answering with this new NS RRset.
Step 4: Inform the parent zone of the new NS RRset then wait for all
the parent servers to be answering with the new NS RRset.
Step 5: Wait for cache to be clear of the old NS RRset. See Step 2 for
how long. If you are just adding nameservers you are done.
Step 6: Remove any old nameservers from the zones NS RRset and wait for
all the servers for the zone to be serving the new NS RRset.
Step 7: Inform the parent zone of the new NS RRset then wait for all
the parent servers to be answering with the new NS RRset.
Step 8: Wait for cache to be clear of the old NS RRset. See Step 2 for
how long.
Step 9: Turn off the old nameservers or remove the zone entry from the
configuration of the old nameservers.
Step 10: Increment the serial number and wait for the change to be
visible in all nameservers for the zone. This ensures that zone
transfers are still working after the old servers are decommissioned.
Note: the above procedure is designed to be transparent to dns clients.
Decommissioning the old servers too early will result in some clients
not being able to look up answers in the zone.
Note: while it is possible to run the addition and removal stages
together it is not recommended.
4. General Questions
Q: I keep getting log messages like the following. Why?
Dec 4 23:47:59 client 10.0.0.1#1355: updating zone 'example.com/IN':
update failed: 'RRset exists (value dependent)' prerequisite not
satisfied (NXRRSET)
A: DNS updates allow the update request to test to see if certain
conditions are met prior to proceeding with the update. The message
above is saying that conditions were not met and the update is not
proceeding. See doc/rfc/rfc2136.txt for more details on prerequisites.
Q: I keep getting log messages like the following. Why?
Jun 21 12:00:00.000 client 10.0.0.1#1234: update denied
A: Someone is trying to update your DNS data using the RFC2136 Dynamic
Update protocol. Windows 2000 machines have a habit of sending dynamic
update requests to DNS servers without being specifically configured to
do so. If the update requests are coming from a Windows 2000 machine,
see <http://support.microsoft.com/support/kb/articles/q246/8/04.asp>
for information about how to turn them off.
Q: When I do a "dig . ns", many of the A records for the root servers are
missing. Why?
A: This is normal and harmless. It is a somewhat confusing side effect of
the way BIND 9 does RFC2181 trust ranking and of the efforts BIND 9
makes to avoid promoting glue into answers.
When BIND 9 first starts up and primes its cache, it receives the root
server addresses as additional data in an authoritative response from a
root server, and these records are eligible for inclusion as additional
data in responses. Subsequently it receives a subset of the root server
addresses as additional data in a non-authoritative (referral) response
from a root server. This causes the addresses to now be considered
non-authoritative (glue) data, which is not eligible for inclusion in
responses.
The server does have a complete set of root server addresses cached at
all times, it just may not include all of them as additional data,
depending on whether they were last received as answers or as glue. You
can always look up the addresses with explicit queries like "dig
a.root-servers.net A".
Q: Why don't my zones reload when I do an "rndc reload" or SIGHUP?
A: A zone can be updated either by editing zone files and reloading the
server or by dynamic update, but not both. If you have enabled dynamic
update for a zone using the "allow-update" option, you are not supposed
to edit the zone file by hand, and the server will not attempt to
reload it.
Q: Why is named listening on UDP port other than 53?
A: Named uses a system selected port to make queries of other nameservers.
This behaviour can be overridden by using query-source to lock down the
port and/or address. See also notify-source and transfer-source.
Q: I get warning messages like "zone example.com/IN: refresh: failure
trying master 1.2.3.4#53: timed out".
A: Check that you can make UDP queries from the slave to the master
dig +norec example.com soa @1.2.3.4
You could be generating queries faster than the slave can cope with.
Lower the serial query rate.
serial-query-rate 5; // default 20
Q: I don't get RRSIG's returned when I use "dig +dnssec".
A: You need to ensure DNSSEC is enabled (dnssec-enable yes;).
Q: Can a NS record refer to a CNAME.
A: No. The rules for glue (copies of the *address* records in the parent
zones) and additional section processing do not allow it to work.
You would have to add both the CNAME and address records (A/AAAA) as
glue to the parent zone and have CNAMEs be followed when doing
additional section processing to make it work. No nameserver
implementation supports either of these requirements.
Q: What does "RFC 1918 response from Internet for 0.0.0.10.IN-ADDR.ARPA"
mean?
A: If the IN-ADDR.ARPA name covered refers to a internal address space you
are using then you have failed to follow RFC 1918 usage rules and are
leaking queries to the Internet. You should establish your own zones
for these addresses to prevent you querying the Internet's name servers
for these addresses. Please see <http://as112.net/> for details of the
problems you are causing and the counter measures that have had to be
deployed.
If you are not using these private addresses then a client has queried
for them. You can just ignore the messages, get the offending client to
stop sending you these messages as they are most probably leaking them
or setup your own zones empty zones to serve answers to these queries.
zone "10.IN-ADDR.ARPA" {
type master;
file "empty";
};
zone "16.172.IN-ADDR.ARPA" {
type master;
file "empty";
};
...
zone "31.172.IN-ADDR.ARPA" {
type master;
file "empty";
};
zone "168.192.IN-ADDR.ARPA" {
type master;
file "empty";
};
empty:
@ 10800 IN SOA <name-of-server>. <contact-email>. (
1 3600 1200 604800 10800 )
@ 10800 IN NS <name-of-server>.
Note
Future versions of named are likely to do this automatically.
Q: Will named be affected by the 2007 changes to daylight savings rules in
the US.
A: No, so long as the machines internal clock (as reported by "date -u")
remains at UTC. The only visible change if you fail to upgrade your OS,
if you are in a affected area, will be that log messages will be a hour
out during the period where the old rules do not match the new rules.
For most OS's this change just means that you need to update the
conversion rules from UTC to local time. Normally this involves
updating a file in /etc (which sets the default timezone for the
machine) and possibly a directory which has all the conversion rules
for the world (e.g. /usr/share/zoneinfo). When updating the OS do not
forget to update any chroot areas as well. See your OS's documentation
for more details.
The local timezone conversion rules can also be done on a individual
basis by setting the TZ environment variable appropriately. See your
OS's documentation for more details.
Q: Is there a bugzilla (or other tool) database that mere mortals can have
(read-only) access to for bind?
A: No. The BIND 9 bug database is kept closed for a number of reasons.
These include, but are not limited to, that the database contains
proprietory information from people reporting bugs. The database has in
the past and may in future contain unfixed bugs which are capable of
bringing down most of the Internet's DNS infrastructure.
The release pages for each version contain up to date lists of bugs
that have been fixed post release. That is as close as we can get to
providing a bug database.
Q: Why do queries for NSEC3 records fail to return the NSEC3 record?
A: NSEC3 records are strictly meta data and can only be returned in the
authority section. This is done so that signing the zone using NSEC3
records does not bring names into existence that do not exist in the
unsigned version of the zone.
5. Operating-System Specific Questions
5.1. HPUX
Q: I get the following error trying to configure BIND:
checking if unistd.h or sys/types.h defines fd_set... no
configure: error: need either working unistd.h or sys/select.h
A: You have attempted to configure BIND with the bundled C compiler. This
compiler does not meet the minimum compiler requirements to for
building BIND. You need to install a ANSI C compiler and / or teach
configure how to find the ANSI C compiler. The later can be done by
adjusting the PATH environment variable and / or specifying the
compiler via CC.
./configure CC=<compiler> ...
5.2. Linux
Q: Why do I get the following errors:
general: errno2result.c:109: unexpected error:
general: unable to convert errno to isc_result: 14: Bad address
client: UDP client handler shutting down due to fatal receive error: unexpected error
A: This is the result of a Linux kernel bug.
See: <http://marc.theaimsgroup.com/?l=linux-netdev&m=113081708031466&w=
2>
Q: Why does named lock up when it attempts to connect over IPSEC tunnels?
A: This is due to a kernel bug where the fact that a socket is marked
non-blocking is ignored. It is reported that setting xfrm_larval_drop
to 1 helps but this may have negative side effects. See: <https://
bugzilla.redhat.com/show_bug.cgi?id=427629> and <http://lkml.org/lkml/
2007/12/4/260>.
xfrm_larval_drop can be set to 1 by the following procedure:
echo "1" > proc/sys/net/core/xfrm_larval_drop
Q: Why do I see 5 (or more) copies of named on Linux?
A: Linux threads each show up as a process under ps. The approximate
number of threads running is n+4, where n is the number of CPUs. Note
that the amount of memory used is not cumulative; if each process is
using 10M of memory, only a total of 10M is used.
Newer versions of Linux's ps command hide the individual threads and
require -L to display them.
Q: Why does BIND 9 log "permission denied" errors accessing its
configuration files or zones on my Linux system even though it is
running as root?
A: On Linux, BIND 9 drops most of its root privileges on startup. This
including the privilege to open files owned by other users. Therefore,
if the server is running as root, the configuration files and zone
files should also be owned by root.
Q: I get the error message "named: capset failed: Operation not permitted"
when starting named.
A: The capability module, part of "Linux Security Modules/LSM", has not
been loaded into the kernel. See insmod(8), modprobe(8).
The relevant modules can be loaded by running:
modprobe commoncap
modprobe capability
Q: I'm running BIND on Red Hat Enterprise Linux or Fedora Core -
Why can't named update slave zone database files?
Why can't named create DDNS journal files or update the master zones
from journals?
Why can't named create custom log files?
A: Red Hat Security Enhanced Linux (SELinux) policy security protections :
Red Hat have adopted the National Security Agency's SELinux security
policy (see <http://www.nsa.gov/selinux>) and recommendations for BIND
security , which are more secure than running named in a chroot and
make use of the bind-chroot environment unnecessary .
By default, named is not allowed by the SELinux policy to write, create
or delete any files EXCEPT in these directories:
$ROOTDIR/var/named/slaves
$ROOTDIR/var/named/data
$ROOTDIR/var/tmp
where $ROOTDIR may be set in /etc/sysconfig/named if bind-chroot is
installed.
The SELinux policy particularly does NOT allow named to modify the
$ROOTDIR/var/named directory, the default location for master zone
database files.
SELinux policy overrules file access permissions - so even if all the
files under /var/named have ownership named:named and mode rw-rw-r--,
named will still not be able to write or create files except in the
directories above, with SELinux in Enforcing mode.
So, to allow named to update slave or DDNS zone files, it is best to
locate them in $ROOTDIR/var/named/slaves, with named.conf zone
statements such as:
zone "slave.zone." IN {
type slave;
file "slaves/slave.zone.db";
...
};
zone "ddns.zone." IN {
type master;
allow-updates {...};
file "slaves/ddns.zone.db";
};
To allow named to create its cache dump and statistics files, for
example, you could use named.conf options statements such as:
options {
...
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
...
};
You can also tell SELinux to allow named to update any zone database
files, by setting the SELinux tunable boolean parameter
'named_write_master_zones=1', using the system-config-securitylevel
GUI, using the 'setsebool' command, or in /etc/selinux/targeted/
booleans.
You can disable SELinux protection for named entirely by setting the
'named_disable_trans=1' SELinux tunable boolean parameter.
The SELinux named policy defines these SELinux contexts for named:
named_zone_t : for zone database files - $ROOTDIR/var/named/*
named_conf_t : for named configuration files - $ROOTDIR/etc/{named,rndc}.*
named_cache_t: for files modifiable by named - $ROOTDIR/var/{tmp,named/{slaves,data}}
If you want to retain use of the SELinux policy for named, and put
named files in different locations, you can do so by changing the
context of the custom file locations .
To create a custom configuration file location, e.g. '/root/
named.conf', to use with the 'named -c' option, do:
# chcon system_u:object_r:named_conf_t /root/named.conf
To create a custom modifiable named data location, e.g. '/var/log/
named' for a log file, do:
# chcon system_u:object_r:named_cache_t /var/log/named
To create a custom zone file location, e.g. /root/zones/, do:
# chcon system_u:object_r:named_zone_t /root/zones/{.,*}
See these man-pages for more information : selinux(8), named_selinux
(8), chcon(1), setsebool(8)
Q: I'm running BIND on Ubuntu -
Why can't named update slave zone database files?
Why can't named create DDNS journal files or update the master zones
from journals?
Why can't named create custom log files?
A: Ubuntu uses AppArmor <http://en.wikipedia.org/wiki/AppArmor> in
addition to normal file system permissions to protect the system.
Adjust the paths to use those specified in /etc/apparmor.d/
usr.sbin.named or adjust /etc/apparmor.d/usr.sbin.named to allow named
to write at the location specified in named.conf.
Q: Listening on individual IPv6 interfaces does not work.
A: This is usually due to "/proc/net/if_inet6" not being available in the
chroot file system. Mount another instance of "proc" in the chroot file
system.
This can be be made permanent by adding a second instance to /etc/
fstab.
proc /proc proc defaults 0 0
proc /var/named/proc proc defaults 0 0
5.3. Windows
Q: Zone transfers from my BIND 9 master to my Windows 2000 slave fail.
Why?
A: This may be caused by a bug in the Windows 2000 DNS server where DNS
messages larger than 16K are not handled properly. This can be worked
around by setting the option "transfer-format one-answer;". Also check
whether your zone contains domain names with embedded spaces or other
special characters, like "John\032Doe\213s\032Computer", since such
names have been known to cause Windows 2000 slaves to incorrectly
reject the zone.
Q: I get "Error 1067" when starting named under Windows.
A: This is the service manager saying that named exited. You need to
examine the Application log in the EventViewer to find out why.
Common causes are that you failed to create "named.conf" (usually "C:\
windows\dns\etc\named.conf") or failed to specify the directory in
named.conf.
options {
Directory "C:\windows\dns\etc";
};
5.4. FreeBSD
Q: I have FreeBSD 4.x and "rndc-confgen -a" just sits there.
A: /dev/random is not configured. Use rndcontrol(8) to tell the kernel to
use certain interrupts as a source of random events. You can make this
permanent by setting rand_irqs in /etc/rc.conf.
rand_irqs="3 14 15"
See also <http://people.freebsd.org/~dougb/randomness.html>.
5.5. Solaris
Q: How do I integrate BIND 9 and Solaris SMF
A: Sun has a blog entry describing how to do this.
<http://blogs.sun.com/roller/page/anay/Weblog?catname=%2FSolaris>
5.6. Apple Mac OS X
Q: How do I run BIND 9 on Apple Mac OS X?
A: If you run Tiger(Mac OS 10.4) or later then this is all you need to do:
% sudo rndc-confgen > /etc/rndc.conf
Copy the key statement from /etc/rndc.conf into /etc/rndc.key, e.g.:
key "rndc-key" {
algorithm hmac-sha256;
secret "uvceheVuqf17ZwIcTydddw==";
};
Then start the relevant service:
% sudo service org.isc.named start
This is persistent upon a reboot, so you will have to do it only once.
A: Alternatively you can just generate /etc/rndc.key by running:
% sudo rndc-confgen -a
Then start the relevant service:
% sudo service org.isc.named start
Named will look for /etc/rndc.key when it starts if it doesn't have a
controls section or the existing controls are missing keys sub-clauses.
This is persistent upon a reboot, so you will have to do it only once.

174
FAQ.xml
View File

@@ -1,8 +1,5 @@
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" []>
<!--
- Copyright (C) 2004-2010, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2003 Internet Software Consortium.
- Copyright (C) 2017 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -17,35 +14,19 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: FAQ.xml,v 1.54 2010/01/19 23:48:55 tbox Exp $ -->
<!-- Converted by db4-upgrade version 1.0 -->
<article xmlns="http://docbook.org/ns/docbook" version="5.0" class="faq">
<article class="faq">
<title>Frequently Asked Questions about BIND 9</title>
<articleinfo>
<copyright>
<year>2004</year>
<year>2005</year>
<year>2006</year>
<year>2007</year>
<year>2008</year>
<year>2009</year>
<year>2010</year>
<year>2013</year>
<year>2014</year>
<year>2017</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
<copyright>
<year>2000</year>
<year>2001</year>
<year>2002</year>
<year>2003</year>
<holder>Internet Software Consortium.</holder>
</copyright>
</articleinfo>
<qandaset defaultlabel='qanda'>
<qandadiv><title>Compilation and Installation Questions</title>
<qandaset defaultlabel="qanda">
<qandadiv><title>Compilation and Installation Questions</title>
<qandaentry>
<question>
<para>
@@ -61,7 +42,7 @@
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -70,7 +51,7 @@
</question>
<answer>
<para>
Short Answer: No.
Short Answer: No.
</para>
<para>
Long Answer: There really isn't a default configuration which fits
@@ -93,9 +74,9 @@
</para>
</answer>
</qandaentry>
</qandadiv> <!-- Compilation and Installation Questions -->
<qandadiv><title>Configuration and Setup Questions</title>
<qandaentry>
@@ -125,7 +106,7 @@ example.com. 86400 IN SOA ns hostmaster ( 1 3600 1800 1814400 3600 )</programlis
</informalexample>
</answer>
</qandaentry>
<qandaentry>
<!-- configuration -->
<question>
@@ -223,7 +204,7 @@ view "chaos" chaos {
<answer>
<para>
This may be a clock skew problem. Check that the the clocks
on the client and server are properly synchronised (e.g.,
on the client and server are properly synchronized (e.g.,
using ntp).
</para>
</answer>
@@ -251,7 +232,7 @@ view "chaos" chaos {
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -266,7 +247,7 @@ view "chaos" chaos {
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -359,7 +340,7 @@ Slave 10.0.1.2:
</informalexample>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -392,7 +373,7 @@ named-checkzone example.com tmp</programlisting>
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -416,7 +397,7 @@ named-checkzone example.com tmp</programlisting>
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -501,7 +482,7 @@ Master 10.0.1.1:
You are running chrooted (-t) and have not supplied local timezone
information in the chroot area.
</para>
<simplelist>
<simplelist type="vert">
<member>FreeBSD: /etc/localtime</member>
<member>Solaris: /etc/TIMEZONE and /usr/share/lib/zoneinfo</member>
<member>OSF: /etc/zoneinfo/localtime</member>
@@ -511,7 +492,7 @@ Master 10.0.1.1:
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -551,7 +532,7 @@ Master 10.0.1.1:
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -603,7 +584,7 @@ zone "example.net" {
</informalexample>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -694,9 +675,9 @@ server ::/0 { bogus yes; };
</programlisting>
</answer>
</qandaentry>
</qandadiv> <!-- Configuration and Setup Questions -->
<qandadiv><title>Operations Questions</title>
<qandaentry>
@@ -768,7 +749,7 @@ server ::/0 { bogus yes; };
</qandadiv> <!-- Operations Questions -->
<qandadiv><title>General Questions</title>
<qandaentry>
<question>
<para>
@@ -807,14 +788,13 @@ server ::/0 { bogus yes; };
of sending dynamic update requests to DNS servers without
being specifically configured to do so. If the update
requests are coming from a Windows 2000 machine, see
<ulink
url="http://support.microsoft.com/support/kb/articles/q246/8/04.asp">
&lt;http://support.microsoft.com/support/kb/articles/q246/8/04.asp&gt;</ulink>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://support.microsoft.com/support/kb/articles/q246/8/04.asp">
&lt;http://support.microsoft.com/support/kb/articles/q246/8/04.asp&gt;</link>
for information about how to turn them off.
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -849,7 +829,7 @@ server ::/0 { bogus yes; };
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -867,7 +847,7 @@ server ::/0 { bogus yes; };
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -883,7 +863,7 @@ server ::/0 { bogus yes; };
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -910,7 +890,7 @@ serial-query-rate 5; // default 20</programlisting>
</answer>
</qandaentry>
<qandaentry>
<qandaentry>
<question>
<para>
I don't get RRSIG's returned when I use "dig +dnssec".
@@ -922,7 +902,7 @@ serial-query-rate 5; // default 20</programlisting>
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -959,7 +939,7 @@ serial-query-rate 5; // default 20</programlisting>
usage rules and are leaking queries to the Internet. You
should establish your own zones for these addresses to prevent
you querying the Internet's name servers for these addresses.
Please see <ulink url="http://as112.net/">&lt;http://as112.net/&gt;</ulink>
Please see <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://as112.net/">&lt;http://as112.net/&gt;</link>
for details of the problems you are causing and the counter
measures that have had to be deployed.
</para>
@@ -1006,7 +986,7 @@ empty:
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -1083,9 +1063,9 @@ empty:
</qandaentry>
</qandadiv> <!-- General Questions -->
<qandadiv><title>Operating-System Specific Questions</title>
<qandadiv><title>HPUX</title>
<qandaentry>
@@ -1113,9 +1093,9 @@ configure: error: need either working unistd.h or sys/select.h</programlisting>
</qandadiv> <!-- HPUX -->
<qandadiv><title>Linux</title>
<qandaentry>
<question>
<question>
<para>
Why do I get the following errors:
<programlisting>general: errno2result.c:109: unexpected error:
@@ -1129,7 +1109,7 @@ client: UDP client handler shutting down due to fatal receive error: unexpected
</para>
<para>
See:
<ulink url="http://marc.theaimsgroup.com/?l=linux-netdev&amp;m=113081708031466&amp;w=2">&lt;http://marc.theaimsgroup.com/?l=linux-netdev&amp;m=113081708031466&amp;w=2&gt;</ulink>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://marc.theaimsgroup.com/?l=linux-netdev&amp;m=113081708031466&amp;w=2">&lt;http://marc.theaimsgroup.com/?l=linux-netdev&amp;m=113081708031466&amp;w=2&gt;</link>
</para>
</answer>
</qandaentry>
@@ -1146,9 +1126,9 @@ client: UDP client handler shutting down due to fatal receive error: unexpected
non-blocking is ignored. It is reported that setting
xfrm_larval_drop to 1 helps but this may have negative side effects.
See:
<ulink url="https://bugzilla.redhat.com/show_bug.cgi?id=427629">&lt;https://bugzilla.redhat.com/show_bug.cgi?id=427629&gt;</ulink>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://bugzilla.redhat.com/show_bug.cgi?id=427629">&lt;https://bugzilla.redhat.com/show_bug.cgi?id=427629&gt;</link>
and
<ulink url="http://lkml.org/lkml/2007/12/4/260">&lt;http://lkml.org/lkml/2007/12/4/260&gt;</ulink>.
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://lkml.org/lkml/2007/12/4/260">&lt;http://lkml.org/lkml/2007/12/4/260&gt;</link>.
</para>
<para>
xfrm_larval_drop can be set to 1 by the following procedure:
@@ -1178,7 +1158,7 @@ echo "1" &gt; proc/sys/net/core/xfrm_larval_drop</programlisting>
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -1197,7 +1177,7 @@ echo "1" &gt; proc/sys/net/core/xfrm_larval_drop</programlisting>
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -1218,7 +1198,7 @@ modprobe capability</programlisting>
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -1244,8 +1224,7 @@ modprobe capability</programlisting>
<para>
Red Hat have adopted the National Security Agency's
SELinux security policy (see <ulink
url="http://www.nsa.gov/selinux">&lt;http://www.nsa.gov/selinux&gt;</ulink>)
SELinux security policy (see <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.nsa.gov/selinux">&lt;http://www.nsa.gov/selinux&gt;</link>)
and recommendations for BIND security , which are more
secure than running named in a chroot and make use of
the bind-chroot environment unnecessary .
@@ -1279,7 +1258,7 @@ $ROOTDIR/var/tmp
able to write or create files except in the directories
above, with SELinux in Enforcing mode.
</para>
<para>
So, to allow named to update slave or DDNS zone files,
it is best to locate them in $ROOTDIR/var/named/slaves,
@@ -1290,7 +1269,7 @@ zone "slave.zone." IN {
type slave;
file "slaves/slave.zone.db";
...
};
};
zone "ddns.zone." IN {
type master;
allow-updates {...};
@@ -1323,13 +1302,13 @@ options {
system-config-securitylevel GUI, using the 'setsebool'
command, or in /etc/selinux/targeted/booleans.
</para>
<para>
You can disable SELinux protection for named entirely by
setting the 'named_disable_trans=1' SELinux tunable boolean
parameter.
</para>
<para>
The SELinux named policy defines these SELinux contexts for named:
<informalexample>
@@ -1340,7 +1319,7 @@ named_cache_t: for files modifiable by named - $ROOTDIR/var/{tmp,named/{slaves,d
</programlisting>
</informalexample>
</para>
<para>
If you want to retain use of the SELinux policy for named,
and put named files in different locations, you can do
@@ -1358,7 +1337,7 @@ named_cache_t: for files modifiable by named - $ROOTDIR/var/{tmp,named/{slaves,d
</programlisting>
</informalexample>
</para>
<para>
To create a custom modifiable named data location, e.g.
'/var/log/named' for a log file, do:
@@ -1368,7 +1347,7 @@ named_cache_t: for files modifiable by named - $ROOTDIR/var/{tmp,named/{slaves,d
</programlisting>
</informalexample>
</para>
<para>
To create a custom zone file location, e.g. /root/zones/, do:
<informalexample>
@@ -1377,7 +1356,7 @@ named_cache_t: for files modifiable by named - $ROOTDIR/var/{tmp,named/{slaves,d
</programlisting>
</informalexample>
</para>
<para>
See these man-pages for more information : selinux(8),
named_selinux(8), chcon(1), setsebool(8)
@@ -1403,8 +1382,8 @@ named_cache_t: for files modifiable by named - $ROOTDIR/var/{tmp,named/{slaves,d
</question>
<answer>
<para>
Ubuntu uses AppArmor <ulink url="http://en.wikipedia.org/wiki/AppArmor">
&lt;http://en.wikipedia.org/wiki/AppArmor&gt;</ulink> in
Ubuntu uses AppArmor <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://en.wikipedia.org/wiki/AppArmor">
&lt;http://en.wikipedia.org/wiki/AppArmor&gt;</link> in
addition to normal file system permissions to protect the system.
</para>
<para>
@@ -1438,11 +1417,11 @@ proc /var/named/proc proc defaults 0 0</programlisting>
</para>
</answer>
</qandaentry>
</qandadiv> <!-- Linux -->
<qandadiv><title>Windows</title>
<qandaentry>
<question>
<para>
@@ -1463,7 +1442,7 @@ proc /var/named/proc proc defaults 0 0</programlisting>
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
@@ -1489,11 +1468,11 @@ options {
</informalexample>
</answer>
</qandaentry>
</qandadiv> <!-- Windows -->
<qandadiv><title>FreeBSD</title>
<qandaentry>
<question>
<para>
@@ -1513,16 +1492,16 @@ rand_irqs="3 14 15"</programlisting>
</informalexample>
<para>
See also
<ulink url="http://people.freebsd.org/~dougb/randomness.html">
&lt;http://people.freebsd.org/~dougb/randomness.html&gt;</ulink>.
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://people.freebsd.org/~dougb/randomness.html">
&lt;http://people.freebsd.org/~dougb/randomness.html&gt;</link>.
</para>
</answer>
</qandaentry>
</qandadiv> <!-- FreeBSD -->
<qandadiv><title>Solaris</title>
<qandaentry>
<question>
<para>
@@ -1534,15 +1513,14 @@ rand_irqs="3 14 15"</programlisting>
Sun has a blog entry describing how to do this.
</para>
<para>
<ulink
url="http://blogs.sun.com/roller/page/anay/Weblog?catname=%2FSolaris">
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://blogs.sun.com/roller/page/anay/Weblog?catname=%2FSolaris">
&lt;http://blogs.sun.com/roller/page/anay/Weblog?catname=%2FSolaris&gt;
</ulink>
</link>
</para>
</answer>
</qandaentry>
</qandadiv>
</qandadiv> <!-- Solaris -->
<qandadiv><title>Apple Mac OS X</title>
@@ -1558,7 +1536,7 @@ rand_irqs="3 14 15"</programlisting>
</para>
<informalexample>
<programlisting>
% sudo rndc-confgen > /etc/rndc.conf</programlisting>
% sudo rndc-confgen &gt; /etc/rndc.conf</programlisting>
</informalexample>
<para>
Copy the key statement from /etc/rndc.conf into /etc/rndc.key, e.g.:
@@ -1606,8 +1584,8 @@ key "rndc-key" {
</answer>
</qandaentry>
</qandadiv>
</qandadiv> <!-- Apple Mac OS X -->
</qandadiv> <!-- Operating-System Specific Questions -->
</qandaset>

551
HISTORY
View File

@@ -1,365 +1,234 @@
Summary of functional enhancements from prior major releases of BIND 9:
Functional enhancements from prior major releases of BIND 9
BIND 9.8.0
BIND 9.8.0 includes a number of changes from BIND 9.7 and earlier
releases. New features include:
BIND 9.8.0 includes a number of changes from BIND 9.7 and earlier
releases. New features include:
- Built-in trust anchor for the root zone, which can be
switched on via "dnssec-validation auto;"
- Support for DNS64.
- Support for response policy zones (RPZ).
- Support for writable DLZ zones.
- Improved ease of configuration of GSS/TSIG for
interoperability with Active Directory
- Support for GOST signing algorithm for DNSSEC.
- Removed RTT Banding from server selection algorithm.
- New "static-stub" zone type.
- Allow configuration of resolver timeouts via
"resolver-query-timeout" option.
- The DLZ "dlopen" driver is now built by default.
- Added a new include file with function typedefs
for the DLZ "dlopen" driver.
- Made "--with-gssapi" default.
- More verbose error reporting from DLZ LDAP.
* Built-in trust anchor for the root zone, which can be switched on via
"dnssec-validation auto;"
* Support for DNS64.
* Support for response policy zones (RPZ).
* Support for writable DLZ zones.
* Improved ease of configuration of GSS/TSIG for interoperability with
Active Directory
* Support for GOST signing algorithm for DNSSEC.
* Removed RTT Banding from server selection algorithm.
* New "static-stub" zone type.
* Allow configuration of resolver timeouts via "resolver-query-timeout"
option.
* The DLZ "dlopen" driver is now built by default.
* Added a new include file with function typedefs for the DLZ "dlopen"
driver.
* Made "--with-gssapi" default.
* More verbose error reporting from DLZ LDAP.
BIND 9.7.0
BIND 9.7.0 includes a number of changes from BIND 9.6 and earlier
releases. Most are intended to simplify DNSSEC configuration.
BIND 9.7.0 includes a number of changes from BIND 9.6 and earlier
releases. Most are intended to simplify DNSSEC configuration. New features
include:
New features include:
- Fully automatic signing of zones by "named".
- Simplified configuration of DNSSEC Lookaside Validation (DLV).
- Simplified configuration of Dynamic DNS, using the "ddns-confgen"
command line tool or the "local" update-policy option. (As a side
effect, this also makes it easier to configure automatic zone
re-signing.)
- New named option "attach-cache" that allows multiple views to
share a single cache.
- DNS rebinding attack prevention.
- New default values for dnssec-keygen parameters.
- Support for RFC 5011 automated trust anchor maintenance
- Smart signing: simplified tools for zone signing and key
maintenance.
- The "statistics-channels" option is now available on Windows.
- A new DNSSEC-aware libdns API for use by non-BIND9 applications
- On some platforms, named and other binaries can now print out
a stack backtrace on assertion failure, to aid in debugging.
- A "tools only" installation mode on Windows, which only installs
dig, host, nslookup and nsupdate.
- Improved PKCS#11 support, including Keyper support and explicit
OpenSSL engine selection.
* Fully automatic signing of zones by "named".
* Simplified configuration of DNSSEC Lookaside Validation (DLV).
* Simplified configuration of Dynamic DNS, using the "ddns-confgen"
command line tool or the "local" update-policy option. (As a side
effect, this also makes it easier to configure automatic zone
re-signing.)
* New named option "attach-cache" that allows multiple views to share a
single cache.
* DNS rebinding attack prevention.
* New default values for dnssec-keygen parameters.
* Support for RFC 5011 automated trust anchor maintenance
* Smart signing: simplified tools for zone signing and key maintenance.
* The "statistics-channels" option is now available on Windows.
* A new DNSSEC-aware libdns API for use by non-BIND9 applications
* On some platforms, named and other binaries can now print out a stack
backtrace on assertion failure, to aid in debugging.
* A "tools only" installation mode on Windows, which only installs dig,
host, nslookup and nsupdate.
* Improved PKCS#11 support, including Keyper support and explicit
OpenSSL engine selection.
BIND 9.6.0
Full NSEC3 support
Automatic zone re-signing
New update-policy methods tcp-self and 6to4-self
The BIND 8 resolver library, libbind, has been removed from the
BIND 9 distribution and is now available as a separate download.
Change the default pid file location from /var/run to
/var/run/{named,lwresd} for improved chroot/setuid support.
* Full NSEC3 support
* Automatic zone re-signing
* New update-policy methods tcp-self and 6to4-self
* The BIND 8 resolver library, libbind, has been removed from the BIND 9
distribution and is now available as a separate download.
* Change the default pid file location from /var/run to /var/run/
{named,lwresd} for improved chroot/setuid support.
BIND 9.5.0
GSS-TSIG support (RFC 3645).
DHCID support.
Experimental http server and statistics support for named via xml.
More detailed statistics counters including those supported in BIND 8.
Faster ACL processing.
Use Doxygen to generate internal documentation.
Efficient LRU cache-cleaning mechanism.
NSID support.
* GSS-TSIG support (RFC 3645).
* DHCID support.
* Experimental http server and statistics support for named via xml.
* More detailed statistics counters including those supported in BIND 8.
* Faster ACL processing.
* Use Doxygen to generate internal documentation.
* Efficient LRU cache-cleaning mechanism.
* NSID support.
BIND 9.4.0
Implemented "additional section caching (or acache)", an
internal cache framework for additional section content to
improve response performance. Several configuration options
were provided to control the behavior.
New notify type 'master-only'. Enable notify for master
zones only.
Accept 'notify-source' style syntax for query-source.
rndc now allows addresses to be set in the server clauses.
New option "allow-query-cache". This lets "allow-query"
be used to specify the default zone access level rather
than having to have every zone override the global value.
"allow-query-cache" can be set at both the options and view
levels. If "allow-query-cache" is not set then "allow-recursion"
is used if set, otherwise "allow-query" is used if set
unless "recursion no;" is set in which case "none;" is used,
otherwise the default (localhost; localnets;) is used.
rndc: the source address can now be specified.
ixfr-from-differences now takes master and slave in addition
to yes and no at the options and view levels.
Allow the journal's name to be changed via named.conf.
'rndc notify zone [class [view]]' resend the NOTIFY messages
for the specified zone.
'dig +trace' now randomly selects the next servers to try.
Report if there is a bad delegation.
Improve check-names error messages.
Make public the function to read a key file, dst_key_read_public().
dig now returns the byte count for axfr/ixfr.
allow-update is now settable at the options / view level.
named-checkconf now checks the logging configuration.
host now can turn on memory debugging flags with '-m'.
Don't send notify messages to self.
Perform sanity checks on NS records which refer to 'in zone' names.
New zone option "notify-delay". Specify a minimum delay
between sets of NOTIFY messages.
Extend adjusting TTL warning messages.
Named and named-checkzone can now both check for non-terminal
wildcard records.
"rndc freeze/thaw" now freezes/thaws all zones.
named-checkconf now check acls to verify that they only
refer to existing acls.
The server syntax has been extended to support a range of
servers.
Report differences between hints and real NS rrset and
associated address records.
Preserve the case of domain names in rdata during zone
transfers.
Restructured the data locking framework using architecture
dependent atomic operations (when available), improving
response performance on multi-processor machines significantly.
x86, x86_64, alpha, powerpc, and mips are currently supported.
UNIX domain controls are now supported.
Add support for additional zone file formats for improving
loading performance. The masterfile-format option in
named.conf can be used to specify a non-default format. A
separate command named-compilezone was provided to generate
zone files in the new format. Additionally, the -I and -O
options for dnssec-signzone specify the input and output
formats.
dnssec-signzone can now randomize signature end times
(dnssec-signzone -j jitter).
Add support for CH A record.
Add additional zone data constancy checks. named-checkzone
has extended checking of NS, MX and SRV record and the hosts
they reference. named has extended post zone load checks.
New zone options: check-mx and integrity-check.
edns-udp-size can now be overridden on a per server basis.
dig can now specify the EDNS version when making a query.
Added framework for handling multiple EDNS versions.
Additional memory debugging support to track size and mctx
arguments.
Detect duplicates of UDP queries we are recursing on and
drop them. New stats category "duplicates".
"USE INTERNAL MALLOC" is now runtime selectable.
The lame cache is now done on a <qname,qclass,qtype> basis
as some servers only appear to be lame for certain query
types.
Limit the number of recursive clients that can be waiting
for a single query (<qname,qtype,qclass>) to resolve. New
options clients-per-query and max-clients-per-query.
dig: report the number of extra bytes still left in the
packet after processing all the records.
Support for IPSECKEY rdata type.
Raise the UDP recieve buffer size to 32k if it is less than 32k.
x86 and x86_64 now have seperate atomic locking implementations.
named-checkconf now validates update-policy entries.
Attempt to make the amount of work performed in a iteration
self tuning. The covers nodes clean from the cache per
iteration, nodes written to disk when rewriting a master
file and nodes destroyed per iteration when destroying a
zone or a cache.
ISC string copy API.
Automatic empty zone creation for D.F.IP6.ARPA and friends.
Note: RFC 1918 zones are not yet covered by this but are
likely to be in a future release.
New options: empty-server, empty-contact, empty-zones-enable
and disable-empty-zone.
dig now has a '-q queryname' and '+showsearch' options.
host/nslookup now continue (default)/fail on SERVFAIL.
dig now warns if 'RA' is not set in the answer when 'RD'
was set in the query. host/nslookup skip servers that fail
to set 'RA' when 'RD' is set unless a server is explicitly
set.
Integrate contibuted DLZ code into named.
Integrate contibuted IDN code from JPNIC.
libbind: corresponds to that from BIND 8.4.7.
* Implemented "additional section caching (or acache)", an internal
cache framework for additional section content to improve response
performance. Several configuration options were provided to control
the behavior.
* New notify type 'master-only'. Enable notify for master zones only.
* Accept 'notify-source' style syntax for query-source.
* rndc now allows addresses to be set in the server clauses.
* New option "allow-query-cache". This lets "allow-query" be used to
specify the default zone access level rather than having to have every
zone override the global value. "allow-query-cache" can be set at both
the options and view levels. If "allow-query-cache" is not set then
"allow-recursion" is used if set, otherwise "allow-query" is used if
set unless "recursion no;" is set in which case "none;" is used,
otherwise the default (localhost; localnets;) is used.
* rndc: the source address can now be specified.
* ixfr-from-differences now takes master and slave in addition to yes
and no at the options and view levels.
* Allow the journal's name to be changed via named.conf.
* 'rndc notify zone [class [view]]' resend the NOTIFY messages for the
specified zone.
* 'dig +trace' now randomly selects the next servers to try. Report if
there is a bad delegation.
* Improve check-names error messages.
* Make public the function to read a key file, dst_key_read_public().
* dig now returns the byte count for axfr/ixfr.
* allow-update is now settable at the options / view level.
* named-checkconf now checks the logging configuration.
* host now can turn on memory debugging flags with '-m'.
* Don't send notify messages to self.
* Perform sanity checks on NS records which refer to 'in zone' names.
* New zone option "notify-delay". Specify a minimum delay between sets
of NOTIFY messages.
* Extend adjusting TTL warning messages.
* Named and named-checkzone can now both check for non-terminal wildcard
records.
* "rndc freeze/thaw" now freezes/thaws all zones.
* named-checkconf now check acls to verify that they only refer to
existing acls.
* The server syntax has been extended to support a range of servers.
* Report differences between hints and real NS rrset and associated
address records.
* Preserve the case of domain names in rdata during zone transfers.
* Restructured the data locking framework using architecture dependent
atomic operations (when available), improving response performance on
multi-processor machines significantly. x86, x86_64, alpha, powerpc,
and mips are currently supported.
* UNIX domain controls are now supported.
* Add support for additional zone file formats for improving loading
performance. The masterfile-format option in named.conf can be used to
specify a non-default format. A separate command named-compilezone was
provided to generate zone files in the new format. Additionally, the
-I and -O options for dnssec-signzone specify the input and output
formats.
* dnssec-signzone can now randomize signature end times (dnssec-signzone
-j jitter).
* Add support for CH A record.
* Add additional zone data constancy checks. named-checkzone has
extended checking of NS, MX and SRV record and the hosts they
reference. named has extended post zone load checks. New zone options:
check-mx and integrity-check.
* edns-udp-size can now be overridden on a per server basis.
* dig can now specify the EDNS version when making a query.
* Added framework for handling multiple EDNS versions.
* Additional memory debugging support to track size and mctx arguments.
* Detect duplicates of UDP queries we are recursing on and drop them.
New stats category "duplicates".
* "USE INTERNAL MALLOC" is now runtime selectable.
* The lame cache is now done on a basis as some servers only appear to
be lame for certain query types.
* Limit the number of recursive clients that can be waiting for a single
query () to resolve. New options clients-per-query and
max-clients-per-query.
* dig: report the number of extra bytes still left in the packet after
processing all the records.
* Support for IPSECKEY rdata type.
* Raise the UDP recieve buffer size to 32k if it is less than 32k.
* x86 and x86_64 now have seperate atomic locking implementations.
* named-checkconf now validates update-policy entries.
* Attempt to make the amount of work performed in a iteration self
tuning. The covers nodes clean from the cache per iteration, nodes
written to disk when rewriting a master file and nodes destroyed per
iteration when destroying a zone or a cache.
* ISC string copy API.
* Automatic empty zone creation for D.F.IP6.ARPA and friends. Note: RFC
1918 zones are not yet covered by this but are likely to be in a
future release.
* New options: empty-server, empty-contact, empty-zones-enable and
disable-empty-zone.
* dig now has a '-q queryname' and '+showsearch' options.
* host/nslookup now continue (default)/fail on SERVFAIL.
* dig now warns if 'RA' is not set in the answer when 'RD' was set in
the query. host/nslookup skip servers that fail to set 'RA' when 'RD'
is set unless a server is explicitly set.
* Integrate contibuted DLZ code into named.
* Integrate contibuted IDN code from JPNIC.
* libbind: corresponds to that from BIND 8.4.7.
BIND 9.3.0
DNSSEC is now DS based (RFC 3658).
See also RFC 3845, doc/draft/draft-ietf-dnsext-dnssec-*.
DNSSEC lookaside validation.
check-names is now implemented.
rrset-order in more complete.
IPv4/IPv6 transition support, dual-stack-servers.
IXFR deltas can now be generated when loading master files,
ixfr-from-differences.
It is now possible to specify the size of a journal, max-journal-size.
It is now possible to define a named set of master servers to be
used in masters clause, masters.
The advertised EDNS UDP size can now be set, edns-udp-size.
allow-v6-synthesis has been obsoleted.
NOTE:
* Zones containing MD and MF will now be rejected.
* dig, nslookup name. now report "Not Implemented" as
NOTIMP rather than NOTIMPL. This will have impact on scripts
that are looking for NOTIMPL.
libbind: corresponds to that from BIND 8.4.5.
* DNSSEC is now DS based (RFC 3658).
* DNSSEC lookaside validation.
* check-names is now implemented.
* rrset-order is more complete.
* IPv4/IPv6 transition support, dual-stack-servers.
* IXFR deltas can now be generated when loading master files,
ixfr-from-differences.
* It is now possible to specify the size of a journal, max-journal-size.
* It is now possible to define a named set of master servers to be used
in masters clause, masters.
* The advertised EDNS UDP size can now be set, edns-udp-size.
* allow-v6-synthesis has been obsoleted.
* Zones containing MD and MF will now be rejected.
* dig, nslookup name. now report "Not Implemented" as NOTIMP rather than
NOTIMPL. This will have impact on scripts that are looking for
NOTIMPL.
* libbind: corresponds to that from BIND 8.4.5.
BIND 9.2.0
The size of the cache can now be limited using the
"max-cache-size" option.
* The size of the cache can now be limited using the "max-cache-size"
option.
* The server can now automatically convert RFC1886-style recursive
lookup requests into RFC2874-style lookups, when enabled using the new
option "allow-v6-synthesis". This allows stub resolvers that support
AAAA records but not A6 record chains or binary labels to perform
lookups in domains that make use of these IPv6 DNS features.
* Performance has been improved.
* The man pages now use the more portable "man" macros rather than the
"mandoc" macros, and are installed by "make install".
* The named.conf parser has been completely rewritten. It now supports
"include" directives in more places such as inside "view" statements,
and it no longer has any reserved words.
* The "rndc status" command is now implemented.
* rndc can now be configured automatically.
* A BIND 8 compatible stub resolver library is now included in lib/bind.
* OpenSSL has been removed from the distribution. This means that to use
DNSSEC, OpenSSL must be installed and the --with-openssl option must
be supplied to configure. This does not apply to the use of TSIG,
which does not require OpenSSL.
* The source distribution now builds on Windows. See win32utils/
readme1.txt and win32utils/win32-build.txt for details.
* This distribution also includes a new lightweight stub resolver
library and associated resolver daemon that fully support forward and
reverse lookups of both IPv4 and IPv6 addresses. This library is
considered experimental and is not a complete replacement for the BIND
8 resolver library. Applications that use the BIND 8 res_* functions
to perform DNS lookups or dynamic updates still need to be linked
against the BIND 8 libraries. For DNS lookups, they can also use the
new "getrrsetbyname()" API.
* BIND 9.2 is capable of acting as an authoritative server for DNSSEC
secured zones. This functionality is believed to be stable and
complete except for lacking support for verifications involving
wildcard records in secure zones.
* When acting as a caching server, BIND 9.2 can be configured to perform
DNSSEC secure resolution on behalf of its clients. This part of the
DNSSEC implementation is still considered experimental. For detailed
information about the state of the DNSSEC implementation, see the file
doc/misc/dnssec.
The server can now automatically convert RFC1886-style recursive
lookup requests into RFC2874-style lookups, when enabled using the
new option "allow-v6-synthesis". This allows stub resolvers that
support AAAA records but not A6 record chains or binary labels to
perform lookups in domains that make use of these IPv6 DNS
features.
Performance has been improved.
The man pages now use the more portable "man" macros rather than
the "mandoc" macros, and are installed by "make install".
The named.conf parser has been completely rewritten. It now
supports "include" directives in more places such as inside "view"
statements, and it no longer has any reserved words.
The "rndc status" command is now implemented.
rndc can now be configured automatically.
A BIND 8 compatible stub resolver library is now included in
lib/bind.
OpenSSL has been removed from the distribution. This means that to
use DNSSEC, OpenSSL must be installed and the --with-openssl option
must be supplied to configure. This does not apply to the use of
TSIG, which does not require OpenSSL.
The source distribution now builds on Windows. See
win32utils/readme1.txt and win32utils/win32-build.txt for details.
This distribution also includes a new lightweight stub
resolver library and associated resolver daemon that fully
support forward and reverse lookups of both IPv4 and IPv6
addresses. This library is considered experimental and
is not a complete replacement for the BIND 8 resolver library.
Applications that use the BIND 8 res_* functions to perform
DNS lookups or dynamic updates still need to be linked against
the BIND 8 libraries. For DNS lookups, they can also use the
new "getrrsetbyname()" API.
BIND 9.2 is capable of acting as an authoritative server
for DNSSEC secured zones. This functionality is believed to
be stable and complete except for lacking support for
verifications involving wildcard records in secure zones.
When acting as a caching server, BIND 9.2 can be configured
to perform DNSSEC secure resolution on behalf of its clients.
This part of the DNSSEC implementation is still considered
experimental. For detailed information about the state of the
DNSSEC implementation, see the file doc/misc/dnssec.
There are a few known bugs:
On some systems, IPv6 and IPv4 sockets interact in
unexpected ways. For details, see doc/misc/ipv6.
To reduce the impact of these problems, the server
no longer listens for requests on IPv6 addresses
by default. If you need to accept DNS queries over
IPv6, you must specify "listen-on-v6 { any; };"
in the named.conf options statement.
FreeBSD prior to 4.2 (and 4.2 if running as non-root)
and OpenBSD prior to 2.8 log messages like
"fcntl(8, F_SETFL, 4): Inappropriate ioctl for device".
This is due to a bug in "/dev/random" and impacts the
server's DNSSEC support.
OS X 10.1.4 (Darwin 5.4), OS X 10.1.5 (Darwin 5.5) and
OS X 10.2 (Darwin 6.0) reports errors like
"fcntl(3, F_SETFL, 4): Operation not supported by device".
This is due to a bug in "/dev/random" and impacts the
server's DNSSEC support.
--with-libtool does not work on AIX.
A bug in some versions of the Microsoft DNS server can cause zone
transfers from a BIND 9 server to a W2K server to fail. For details,
see the "Zone Transfers" section in doc/misc/migration.

246
HISTORY.md Normal file
View File

@@ -0,0 +1,246 @@
<!--
- Copyright (C) 2017 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
### Functional enhancements from prior major releases of BIND 9
#### BIND 9.8.0
BIND 9.8.0 includes a number of changes from BIND 9.7 and earlier
releases. New features include:
- Built-in trust anchor for the root zone, which can be
switched on via "dnssec-validation auto;"
- Support for DNS64.
- Support for response policy zones (RPZ).
- Support for writable DLZ zones.
- Improved ease of configuration of GSS/TSIG for
interoperability with Active Directory
- Support for GOST signing algorithm for DNSSEC.
- Removed RTT Banding from server selection algorithm.
- New "static-stub" zone type.
- Allow configuration of resolver timeouts via
"resolver-query-timeout" option.
- The DLZ "dlopen" driver is now built by default.
- Added a new include file with function typedefs
for the DLZ "dlopen" driver.
- Made "--with-gssapi" default.
- More verbose error reporting from DLZ LDAP.
#### BIND 9.7.0
BIND 9.7.0 includes a number of changes from BIND 9.6 and earlier
releases. Most are intended to simplify DNSSEC configuration.
New features include:
- Fully automatic signing of zones by "named".
- Simplified configuration of DNSSEC Lookaside Validation (DLV).
- Simplified configuration of Dynamic DNS, using the "ddns-confgen"
command line tool or the "local" update-policy option. (As a side
effect, this also makes it easier to configure automatic zone
re-signing.)
- New named option "attach-cache" that allows multiple views to
share a single cache.
- DNS rebinding attack prevention.
- New default values for dnssec-keygen parameters.
- Support for RFC 5011 automated trust anchor maintenance
- Smart signing: simplified tools for zone signing and key
maintenance.
- The "statistics-channels" option is now available on Windows.
- A new DNSSEC-aware libdns API for use by non-BIND9 applications
- On some platforms, named and other binaries can now print out
a stack backtrace on assertion failure, to aid in debugging.
- A "tools only" installation mode on Windows, which only installs
dig, host, nslookup and nsupdate.
- Improved PKCS#11 support, including Keyper support and explicit
OpenSSL engine selection.
#### BIND 9.6.0
- Full NSEC3 support
- Automatic zone re-signing
- New update-policy methods tcp-self and 6to4-self
- The BIND 8 resolver library, libbind, has been removed from the BIND 9
distribution and is now available as a separate download.
- Change the default pid file location from /var/run to
/var/run/{named,lwresd} for improved chroot/setuid support.
#### BIND 9.5.0
- GSS-TSIG support (RFC 3645).
- DHCID support.
- Experimental http server and statistics support for named via xml.
- More detailed statistics counters including those supported in BIND 8.
- Faster ACL processing.
- Use Doxygen to generate internal documentation.
- Efficient LRU cache-cleaning mechanism.
- NSID support.
BIND 9.4.0
- Implemented "additional section caching (or acache)", an internal cache
framework for additional section content to improve response performance.
Several configuration options were provided to control the behavior.
- New notify type 'master-only'. Enable notify for master zones only.
- Accept 'notify-source' style syntax for query-source.
- rndc now allows addresses to be set in the server clauses.
- New option "allow-query-cache". This lets "allow-query" be used to
specify the default zone access level rather than having to have every
zone override the global value. "allow-query-cache" can be set at both
the options and view levels. If "allow-query-cache" is not set then
"allow-recursion" is used if set, otherwise "allow-query" is used if set
unless "recursion no;" is set in which case "none;" is used, otherwise
the default (localhost; localnets;) is used.
- rndc: the source address can now be specified.
- ixfr-from-differences now takes master and slave in addition to yes and
no at the options and view levels.
- Allow the journal's name to be changed via named.conf.
- 'rndc notify zone [class [view]]' resend the NOTIFY messages for the
specified zone.
- 'dig +trace' now randomly selects the next servers to try. Report if
there is a bad delegation.
- Improve check-names error messages.
- Make public the function to read a key file, dst_key_read_public().
- dig now returns the byte count for axfr/ixfr.
- allow-update is now settable at the options / view level.
- named-checkconf now checks the logging configuration.
- host now can turn on memory debugging flags with '-m'.
- Don't send notify messages to self.
- Perform sanity checks on NS records which refer to 'in zone' names.
- New zone option "notify-delay". Specify a minimum delay between sets of
NOTIFY messages.
- Extend adjusting TTL warning messages.
- Named and named-checkzone can now both check for non-terminal wildcard
records.
- "rndc freeze/thaw" now freezes/thaws all zones.
- named-checkconf now check acls to verify that they only refer to existing
acls.
- The server syntax has been extended to support a range of servers.
- Report differences between hints and real NS rrset and associated address
records.
- Preserve the case of domain names in rdata during zone transfers.
- Restructured the data locking framework using architecture dependent
atomic operations (when available), improving response performance on
multi-processor machines significantly. x86, x86_64, alpha, powerpc, and
mips are currently supported.
- UNIX domain controls are now supported.
- Add support for additional zone file formats for improving loading
performance. The masterfile-format option in named.conf can be used to
specify a non-default format. A separate command named-compilezone was
provided to generate zone files in the new format. Additionally, the -I
and -O options for dnssec-signzone specify the input and output formats.
- dnssec-signzone can now randomize signature end times (dnssec-signzone -j
jitter).
- Add support for CH A record.
- Add additional zone data constancy checks. named-checkzone has extended
checking of NS, MX and SRV record and the hosts they reference. named
has extended post zone load checks. New zone options: check-mx and
integrity-check.
- edns-udp-size can now be overridden on a per server basis.
- dig can now specify the EDNS version when making a query.
- Added framework for handling multiple EDNS versions.
- Additional memory debugging support to track size and mctx arguments.
- Detect duplicates of UDP queries we are recursing on and drop them. New
stats category "duplicates".
- "USE INTERNAL MALLOC" is now runtime selectable.
- The lame cache is now done on a <qname,qclass,qtype> basis as some
servers only appear to be lame for certain query types.
- Limit the number of recursive clients that can be waiting for a single
query (<qname,qtype,qclass>) to resolve. New options clients-per-query
and max-clients-per-query.
- dig: report the number of extra bytes still left in the packet after
processing all the records.
- Support for IPSECKEY rdata type.
- Raise the UDP recieve buffer size to 32k if it is less than 32k.
- x86 and x86_64 now have seperate atomic locking implementations.
- named-checkconf now validates update-policy entries.
- Attempt to make the amount of work performed in a iteration self tuning.
The covers nodes clean from the cache per iteration, nodes written to
disk when rewriting a master file and nodes destroyed per iteration when
destroying a zone or a cache.
- ISC string copy API.
- Automatic empty zone creation for D.F.IP6.ARPA and friends. Note: RFC
1918 zones are not yet covered by this but are likely to be in a future
release.
- New options: empty-server, empty-contact, empty-zones-enable and
disable-empty-zone.
- dig now has a '-q queryname' and '+showsearch' options.
- host/nslookup now continue (default)/fail on SERVFAIL.
- dig now warns if 'RA' is not set in the answer when 'RD' was set in the
query. host/nslookup skip servers that fail to set 'RA' when 'RD' is set
unless a server is explicitly set.
- Integrate contibuted DLZ code into named.
- Integrate contibuted IDN code from JPNIC.
- libbind: corresponds to that from BIND 8.4.7.
#### BIND 9.3.0
- DNSSEC is now DS based (RFC 3658).
- DNSSEC lookaside validation.
- check-names is now implemented.
- rrset-order is more complete.
- IPv4/IPv6 transition support, dual-stack-servers.
- IXFR deltas can now be generated when loading master files,
ixfr-from-differences.
- It is now possible to specify the size of a journal, max-journal-size.
- It is now possible to define a named set of master servers to be used in
masters clause, masters.
- The advertised EDNS UDP size can now be set, edns-udp-size.
- allow-v6-synthesis has been obsoleted.
- Zones containing MD and MF will now be rejected.
- dig, nslookup name. now report "Not Implemented" as NOTIMP rather than
NOTIMPL. This will have impact on scripts that are looking for NOTIMPL.
- libbind: corresponds to that from BIND 8.4.5.
#### BIND 9.2.0
- The size of the cache can now be limited using the "max-cache-size"
option.
- The server can now automatically convert RFC1886-style recursive lookup
requests into RFC2874-style lookups, when enabled using the new option
"allow-v6-synthesis". This allows stub resolvers that support AAAA
records but not A6 record chains or binary labels to perform lookups in
domains that make use of these IPv6 DNS features.
- Performance has been improved.
- The man pages now use the more portable "man" macros rather than the
"mandoc" macros, and are installed by "make install".
- The named.conf parser has been completely rewritten. It now supports
"include" directives in more places such as inside "view" statements, and
it no longer has any reserved words.
- The "rndc status" command is now implemented.
- rndc can now be configured automatically.
- A BIND 8 compatible stub resolver library is now included in lib/bind.
- OpenSSL has been removed from the distribution. This means that to use
DNSSEC, OpenSSL must be installed and the --with-openssl option must be
supplied to configure. This does not apply to the use of TSIG, which
does not require OpenSSL.
- The source distribution now builds on Windows. See
win32utils/readme1.txt and win32utils/win32-build.txt for details.
- This distribution also includes a new lightweight stub resolver library
and associated resolver daemon that fully support forward and reverse
lookups of both IPv4 and IPv6 addresses. This library is considered
experimental and is not a complete replacement for the BIND 8 resolver
library. Applications that use the BIND 8 `res_*` functions to perform
DNS lookups or dynamic updates still need to be linked against the BIND 8
libraries. For DNS lookups, they can also use the new "getrrsetbyname()"
API.
- BIND 9.2 is capable of acting as an authoritative server for DNSSEC
secured zones. This functionality is believed to be stable and complete
except for lacking support for verifications involving wildcard records
in secure zones.
- When acting as a caching server, BIND 9.2 can be configured to perform
DNSSEC secure resolution on behalf of its clients. This part of the
DNSSEC implementation is still considered experimental. For detailed
information about the state of the DNSSEC implementation, see the file
doc/misc/dnssec.

4
Kyuafile Normal file
View File

@@ -0,0 +1,4 @@
syntax(2)
test_suite('bind9')
include('lib/Kyuafile')

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2004-2009, 2011-2014 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 2004-2009, 2011-2017 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 1998-2002 Internet Software Consortium.
#
# Permission to use, copy, modify, and/or distribute this software for any
@@ -13,13 +13,11 @@
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# $Id: Makefile.in,v 1.62 2011/09/06 04:06:37 marka Exp $
srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
@BIND9_VERSION@
VERSION=@BIND9_VERSION@
SUBDIRS = make unit lib bin doc @LIBEXPORT@
TARGETS =
@@ -28,10 +26,13 @@ MANPAGES = isc-config.sh.1
HTMLPAGES = isc-config.sh.html
MANOBJS = ${MANPAGES} ${HTMLPAGES}
MANOBJS = README HISTORY OPTIONS ${MANPAGES} ${HTMLPAGES}
@BIND9_MAKE_RULES@
newrr:
cd lib/dns; ${MAKE} newrr
distclean::
rm -f config.cache config.h config.log config.status TAGS
rm -f libtool isc-config.sh configure.lineno
@@ -61,6 +62,13 @@ install:: isc-config.sh installdirs
@LN@ ${DESTDIR}${mandir}/man1/isc-config.sh.1 ${DESTDIR}${mandir}/man1/bind9-config.1
${INSTALL_DATA} ${top_srcdir}/bind.keys ${DESTDIR}${sysconfdir}
uninstall::
rm -f ${DESTDIR}${sysconfdir}/bind.keys
rm -f ${DESTDIR}${mandir}/man1/bind9-config.1
rm -f ${DESTDIR}${mandir}/man1/isc-config.sh.1
rm -f ${DESTDIR}${bindir}/bind9-config
rm -f ${DESTDIR}${bindir}/isc-config.sh
tags:
rm -f TAGS
find lib bin -name "*.[ch]" -print | @ETAGS@ -
@@ -85,13 +93,27 @@ test-force:
(test -f unit/unittest.sh && $(SHELL) unit/unittest.sh) || status=1; \
exit $$status
FAQ: FAQ.xml
${XSLTPROC} doc/xsl/isc-docbook-text.xsl FAQ.xml | \
LC_ALL=C ${W3M} -T text/html -dump -cols 72 >$@.tmp
mv $@.tmp $@
README: README.md
${PANDOC} --email-obfuscation=none -s -t html README.md | \
${W3M} -dump -cols 75 -O ascii -T text/html | \
sed -e '$${/^$$/d;}' > $@
HISTORY: HISTORY.md
${PANDOC} --email-obfuscation=none -s -t html HISTORY.md | \
${W3M} -dump -cols 75 -O ascii -T text/html | \
sed -e '$${/^$$/d;}' > $@
OPTIONS: OPTIONS.md
${PANDOC} --email-obfuscation=none -s -t html OPTIONS.md | \
${W3M} -dump -cols 75 -O ascii -T text/html | \
sed -e '$${/^$$/d;}' > $@
CONTRIBUTING: CONTRIBUTING.md
${PANDOC} --email-obfuscation=none -s -t html CONTRIBUTING.md | \
${W3M} -dump -cols 75 -O ascii -T text/html | \
sed -e '$${/^$$/d;}' > $@
unit::
sh ${top_srcdir}/unit/unittest.sh
clean::
rm -f FAQ.tmp

30
OPTIONS Normal file
View File

@@ -0,0 +1,30 @@
Setting the STD_CDEFINES environment variable before running configure can
be used to enable certain compile-time options that are not explicitly
defined in configure.
Some of these settings are:
Setting Description
Don't ovewrite memory when allocating or freeing
-DISC_MEM_FILL=0 it; this improves performance but makes
debugging more difficult.
Don't track memory allocations by file and line
-DISC_MEM_TRACKLINES=0 number; this improves performance but makes
debugging more difficult.
-DISC_FACILITY=LOG_LOCAL0 Change the default syslog facility for named
-DNS_CLIENT_DROPPORT=0 Disable dropping queries from particular
well-known ports:
-DCHECK_SIBLING=0 Don't check sibling glue in named-checkzone
-DCHECK_LOCAL=0 Don't check out-of-zone addresses in
named-checkzone
-DNS_RUN_PID_DIR=0 Create default PID files in ${localstatedir}/run
rather than ${localstatedir}/run/{named,lwresd}/
Enable DNSSEC signature chasing support in dig.
-DDIG_SIGCHASE=1 (Note: This feature is deprecated. Use delv
instead.)
Increase the maximum number of configurable
-DNS_RPZ_MAX_ZONES=64 response policy zones from 32 to 64; this is the
highest possible setting
-DISC_HEAP_CHECK Test heap consistency after every heap
operation; used when debugging

33
OPTIONS.md Normal file
View File

@@ -0,0 +1,33 @@
<!--
- Copyright (C) 2017 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
Setting the `STD_CDEFINES` environment variable before running `configure`
can be used to enable certain compile-time options that are not explicitly
defined in `configure`.
Some of these settings are:
|Setting |Description |
|-----------------------------------|----------------------------------------|
|`-DISC_MEM_FILL=0`|Don't ovewrite memory when allocating or freeing it; this improves performance but makes debugging more difficult.|
|`-DISC_MEM_TRACKLINES=0`|Don't track memory allocations by file and line number; this improves performance but makes debugging more difficult.|
|<nobr>`-DISC_FACILITY=LOG_LOCAL0`</nobr>|Change the default syslog facility for `named`|
|`-DNS_CLIENT_DROPPORT=0`|Disable dropping queries from particular well-known ports:|
|`-DCHECK_SIBLING=0`|Don't check sibling glue in `named-checkzone`|
|`-DCHECK_LOCAL=0`|Don't check out-of-zone addresses in `named-checkzone`|
|`-DNS_RUN_PID_DIR=0`|Create default PID files in `${localstatedir}/run` rather than `${localstatedir}/run/{named,lwresd}/`|
|`-DDIG_SIGCHASE=1`|Enable DNSSEC signature chasing support in `dig`. (Note: This feature is deprecated. Use `delv` instead.)|
|`-DNS_RPZ_MAX_ZONES=64`|Increase the maximum number of configurable response policy zones from 32 to 64; this is the highest possible setting|
|`-DISC_HEAP_CHECK`|Test heap consistency after every heap operation; used when debugging|

753
README
View File

@@ -1,459 +1,460 @@
BIND 9
BIND version 9 is a major rewrite of nearly all aspects of the
underlying BIND architecture. Some of the important features of
BIND 9 are:
Contents
- DNS Security
DNSSEC (signed zones)
TSIG (signed DNS requests)
1. Introduction
2. Reporting bugs and getting help
3. Contributing to BIND
4. BIND 9.9 features
5. Building BIND
6. macOS
7. Compile-time options
8. Automated testing
9. Documentation
10. Change log
11. Acknowledgments
- IP version 6
Answers DNS queries on IPv6 sockets
IPv6 resource records (AAAA)
Experimental IPv6 Resolver Library
Introduction
- DNS Protocol Enhancements
IXFR, DDNS, Notify, EDNS0
Improved standards conformance
BIND (Berkeley Internet Name Domain) is a complete, highly portable
implementation of the DNS (Domain Name System) protocol.
- Views
One server process can provide multiple "views" of
the DNS namespace, e.g. an "inside" view to certain
clients, and an "outside" view to others.
The BIND name server, named, is able to serve as an authoritative name
server, recursive resolver, DNS forwarder, or all three simultaneously. It
implements views for split-horizon DNS, automatic DNSSEC zone signing and
key management, catalog zones to facilitate provisioning of zone data
throughout a name server constellation, response policy zones (RPZ) to
protect clients from malicious data, response rate limiting (RRL) and
recursive query limits to reduce distributed denial of service attacks,
and many other advanced DNS features. BIND also includes a suite of
administrative tools, including the dig and delv DNS lookup tools,
nsupdate for dynamic DNS zone updates, rndc for remote name server
administration, and more.
- Multiprocessor Support
BIND 9 is a complete re-write of the BIND architecture that was used in
versions 4 and 8. Internet Systems Consortium (https://www.isc.org), a 501
(c)(3) public benefit corporation dedicated to providing software and
services in support of the Internet infrastructure, developed BIND 9 and
is responsible for its ongoing maintenance and improvement. BIND is open
source software licenced under the terms of the ISC License for all
versions up to and including BIND 9.10, and the Mozilla Public License
version 2.0 for all subsequent verisons.
- Improved Portability Architecture
For a summary of features introduced in past major releases of BIND, see
the file HISTORY.
For a detailed list of changes made throughout the history of BIND 9, see
the file CHANGES. See below for details on the CHANGES file format.
BIND version 9 development has been underwritten by the following
organizations:
For up-to-date release notes and errata, see http://www.isc.org/software/
bind9/releasenotes
Sun Microsystems, Inc.
Hewlett Packard
Compaq Computer Corporation
IBM
Process Software Corporation
Silicon Graphics, Inc.
Network Associates, Inc.
U.S. Defense Information Systems Agency
USENIX Association
Stichting NLnet - NLnet Foundation
Nominum, Inc.
Reporting bugs and getting help
For a summary of functional enhancements in previous
releases, see the HISTORY file.
To report non-security-sensitive bugs or request new features, you may
open an Issue in the BIND 9 project on the ISC GitLab server at https://
gitlab.isc.org/isc-projects/bind9.
For a detailed list of user-visible changes from
previous releases, see the CHANGES file.
Please note that, unless you explicitly mark the newly created Issue as
"confidential", it will be publicly readable. Please do not include any
information in bug reports that you consider to be confidential unless the
issue has been marked as such. In particular, if submitting the contents
of your configuration file in a non-confidential Issue, it is advisable to
obscure key secrets: this can be done automatically by using
named-checkconf -px.
For up-to-date release notes and errata, see
http://www.isc.org/software/bind9/releasenotes
If the bug you are reporting is a potential security issue, such as an
assertion failure or other crash in named, please do NOT use GitLab to
report it. Instead, please send mail to security-officer@isc.org.
BIND 9.9.8
Professional support and training for BIND are available from ISC at
https://www.isc.org/support.
BIND 9.9.8 is a maintenance release and addresses bugs
found in BIND 9.9.7 and earlier, as well as the security
flaws described in CVE-2015-4620, CVE-2015-5477,
CVE-2015-5722, and CVE-2015-5986.
To join the BIND Users mailing list, or view the archives, visit https://
lists.isc.org/mailman/listinfo/bind-users.
It also makes the following new features available via a
compile-time option:
If you're planning on making changes to the BIND 9 source code, you may
also want to join the BIND Workers mailing list, at https://lists.isc.org/
mailman/listinfo/bind-workers.
- New "fetchlimit" quotas are now available for the use of
recursive resolvers that are are under high query load for
domains whose authoritative servers are nonresponsive or are
experiencing a denial of service attack.
Contributing to BIND
+ "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.
ISC maintains a public git repository for BIND; details can be found at
http://www.isc.org/git/, and also on Github at https://github.com/
isc-projects.
NOTE: These options are NOT built in by default; use
"configure --enable-fetchlimit" to enable them.
Information for BIND contributors can be found in the following files: -
General information: doc/dev/contrib.md - BIND 9 code style: doc/dev/
style.md - BIND architecture and developer guide: doc/dev/dev.md
BIND 9.9.7
Patches for BIND may be submitted as Merge Requests in the ISC GitLab
server at at https://gitlab.isc.org/isc-projects/bind9/merge_requests.
BIND 9.9.7 is a maintenance release and addresses bugs
found in BIND 9.9.6 and earlier, as well as the security
flaws described in CVE-2014-8500 and CVE-2015-1349.
By default, external contributors don't have ability to fork BIND in the
GitLab server, but if you wish to contribute code to BIND, you may request
permission to do so. Thereafter, you can create git branches and directly
submit requests that they be reviewed and merged.
BIND 9.9.6
If you prefer, you may also submit code by opening a GitLab Issue and
including your patch as an attachment, preferably generated by git
format-patch.
BIND 9.9.6 is a maintenance release, and also includes
the following new functionality.
BIND 9.9 features
- The former behavior with respect to capitalization of names
(prior to BIND 9.9.5) can be restored for specific clients via
the new "no-case-compress" ACL.
BIND 9.9.0 includes a number of changes from BIND 9.8 and earlier
releases. New features include:
BIND 9.9.5
* Inline signing, allowing automatic DNSSEC signing of master zones
without modification of the zonefile, or "bump in the wire" signing in
slaves.
* NXDOMAIN redirection.
* New rndc flushtree command clears all data under a given name from the
DNS cache.
* New rndc sync command dumps pending changes in a dynamic zone to disk
without a freeze/thaw cycle.
* New rndc signing command displays or clears signing status records in
auto-dnssec zones.
* NSEC3 parameters for auto-dnssec zones can now be set prior to
signing, eliminating the need to initially sign with NSEC.
* Startup time improvements on large authoritative servers.
* Slave zones are now saved in raw format by default.
* Several improvements to response policy zones (RPZ).
* Improved hardware scalability by using multiple threads to listen for
queries and using finer-grained client locking
* The also-notify option now takes the same syntax as masters, so it can
used named masterlists and TSIG keys.
* dnssec-signzone -D writes an output file containing only DNSSEC data,
which can be included by the primary zone file.
* dnssec-signzone -R forces removal of signatures that are not expired
but were created by a key which no longer exists.
* dnssec-signzone -X allows a separate expiration date to be specified
for DNSKEY signatures from other signatures.
* New -L option to dnssec-keygen, dnssec-settime, and
dnssec-keyfromlabel sets the default TTL for the key.
* dnssec-dsfromkey now supports reading from standard input, to make it
easier to convert DNSKEY to DS.
* RFC 1918 reverse zones have been added to the empty-zones table per
RFC
BIND 9.9.5 is a maintenance release, and patches the security
flaws described in CVE-2013-6320 and CVE-2014-0591. It also
includes the following functional enhancements:
6303.
- "named" now preserves the capitalization of names when
responding to queries.
- new "dnssec-importkey" command allows the use of offline
DNSSEC keys with automatic DNSKEY management.
- When re-signing a zone, the new "dnssec-signzone -Q" option
drops signatures from keys that are still published but are
no longer active.
- "named-checkconf -px" will print the contents of configuration
files with the shared secrets obscured, making it easier to
share configuration (e.g. when submitting a bug report)
without revealing private information.
BIND 9.9.4
BIND 9.9.4 is a maintenance release, and patches the security
flaws described in CVE-2013-3919 and CVE-2013-4854. It also
introduces DNS Response Rate Limiting (DNS RRL) as a
compile-time option. To use this feature, configure with
the "--enable-rrl" option.
BIND 9.9.3
BIND 9.9.3 is a maintenance release and patches the security
flaws described in CVE-2012-5688, CVE-2012-5689 and CVE-2013-2266.
BIND 9.9.2
BIND 9.9.2 is a maintenance release and patches the security
flaw described in CVE-2012-4244.
* Dynamic updates can now optionally set the zone's SOA serial number to
the current UNIX time.
* DLZ modules can now retrieve the source IP address of the querying
client.
* request-ixfr option can now be set at the per-zone level.
* dig +rrcomments turns on comments about DNSKEY records, indicating
their key ID, algorithm and function
* Simplified nsupdate syntax and added readline support
BIND 9.9.1
BIND 9.9.1 is a maintenance release.
BIND 9.9.1 is a maintenance release.
BIND 9.9.0
BIND 9.9.2
BIND 9.9.0 includes a number of changes from BIND 9.8 and earlier
releases. New features include:
BIND 9.9.2 is a maintenance release, and addresses the security flaw
described in CVE-2012-4244.
- Inline signing, allowing automatic DNSSEC signing of
master zones without modification of the zonefile, or
"bump in the wire" signing in slaves.
- NXDOMAIN redirection.
- New 'rndc flushtree' command clears all data under a given
name from the DNS cache.
- New 'rndc sync' command dumps pending changes in a dynamic
zone to disk without a freeze/thaw cycle.
- New 'rndc signing' command displays or clears signing status
records in 'auto-dnssec' zones.
- NSEC3 parameters for 'auto-dnssec' zones can now be set prior
to signing, eliminating the need to initially sign with NSEC.
- Startup time improvements on large authoritative servers.
- Slave zones are now saved in raw format by default.
- Several improvements to response policy zones (RPZ).
- Improved hardware scalability by using multiple threads
to listen for queries and using finer-grained client locking
- The 'also-notify' option now takes the same syntax as
'masters', so it can used named masterlists and TSIG keys.
- 'dnssec-signzone -D' writes an output file containing only DNSSEC
data, which can be included by the primary zone file.
- 'dnssec-signzone -R' forces removal of signatures that are
not expired but were created by a key which no longer exists.
- 'dnssec-signzone -X' allows a separate expiration date to
be specified for DNSKEY signatures from other signatures.
- New '-L' option to dnssec-keygen, dnssec-settime, and
dnssec-keyfromlabel sets the default TTL for the key.
- dnssec-dsfromkey now supports reading from standard input,
to make it easier to convert DNSKEY to DS.
- RFC 1918 reverse zones have been added to the empty-zones
table per RFC 6303.
- Dynamic updates can now optionally set the zone's SOA serial
number to the current UNIX time.
- DLZ modules can now retrieve the source IP address of
the querying client.
- 'request-ixfr' option can now be set at the per-zone level.
- 'dig +rrcomments' turns on comments about DNSKEY records,
indicating their key ID, algorithm and function
- Simplified nsupdate syntax and added readline support
BIND 9.9.3
Building
BIND 9.9.3 is a maintenance release and addresses the security flaws
described in CVE-2012-5688, CVE-2012-5689 and CVE-2013-2266.
BIND 9 currently requires a UNIX system with an ANSI C compiler,
basic POSIX support, and a 64 bit integer type.
BIND 9.9.4
We've had successful builds and tests on the following systems:
BIND 9.9.4 is a maintenance release, and addresses the security flaws
described in CVE-2013-3919 and CVE-2013-4854. It also introduces DNS
Response Rate Limiting (DNS RRL) as a compile-time option. To use this
feature, configure with the --enable-rrl option.
COMPAQ Tru64 UNIX 5.1B
Fedora Core 6
FreeBSD 4.10, 5.2.1, 6.2
HP-UX 11.11
Mac OS X 10.5
NetBSD 3.x, 4.0-beta, 5.0-beta
OpenBSD 3.3 and up
Solaris 8, 9, 9 (x86), 10
Ubuntu 7.04, 7.10
Windows XP/2003/2008
BIND 9.9.5
NOTE: As of BIND 9.5.1, 9.4.3, and 9.3.6, older versions of
Windows, including Windows NT and Windows 2000, are no longer
supported.
BIND 9.9.5 is a maintenance release, and addresses the security flaws
described in CVE-2013-6320 and CVE-2014-0591. It also includes the
following functional enhancements:
We have recent reports from the user community that a supported
version of BIND will build and run on the following systems:
* named now preserves the capitalization of names when responding to
queries.
* new dnssec-importkey command allows the use of offline DNSSEC keys
with automatic DNSKEY management.
* When re-signing a zone, the new dnssec-signzone -Q option drops
signatures from keys that are still published but are no longer
active.
* named-checkconf -px will print the contents of configuration files
with the shared secrets obscured, making it easier to share
configuration (e.g. when submitting a bug report) without revealing
private information.
AIX 4.3, 5L
CentOS 4, 4.5, 5
Darwin 9.0.0d1/ARM
Debian 4, 5, 6
Fedora Core 5, 7, 8
FreeBSD 6, 7, 8
HP-UX 11.23 PA
MacOS X 10.5, 10.6, 10.7
Red Hat Enterprise Linux 4, 5, 6
SCO OpenServer 5.0.6
Slackware 9, 10
SuSE 9, 10
BIND 9.9.6
To build, just
BIND 9.9.6 is a maintenance release, and also includes the following new
functionality.
./configure
make
* The former behavior with respect to capitalization of names (prior to
BIND 9.9.5) can be restored for specific clients via the new
no-case-compress ACL.
Do not use a parallel "make".
BIND 9.9.7
Several environment variables that can be set before running
configure will affect compilation:
BIND 9.9.7 is a maintenance release, and addresses the security flaws
described in CVE-2014-8500 and CVE-2015-1349.
CC
The C compiler to use. configure tries to figure
out the right one for supported systems.
BIND 9.9.8
CFLAGS
C compiler flags. Defaults to include -g and/or -O2
as supported by the compiler. Please include '-g'
if you need to set CFLAGS.
BIND 9.9.8 is a maintenance release, and addresses the security flaws
described in CVE-2015-4620, CVE-2015-5477, CVE-2015-5722, and
CVE-2015-5986.
STD_CINCLUDES
System header file directories. Can be used to specify
where add-on thread or IPv6 support is, for example.
Defaults to empty string.
It also makes the following new features available via a compile-time
option:
STD_CDEFINES
Any additional preprocessor symbols you want defined.
Defaults to empty string.
* New "fetchlimit" quotas are now available for the use of recursive
resolvers that are are under high query load for domains 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. NOTE: These options are NOT built in by default; use
configure --enable-fetchlimit to enable them.
Possible settings:
Change the default syslog facility of named/lwresd.
-DISC_FACILITY=LOG_LOCAL0
Enable DNSSEC signature chasing support in dig.
-DDIG_SIGCHASE=1 (sets -DDIG_SIGCHASE_TD=1 and
-DDIG_SIGCHASE_BU=1)
Disable dropping queries from particular well known ports.
-DNS_CLIENT_DROPPORT=0
Sibling glue checking in named-checkzone is enabled by default.
To disable the default check set. -DCHECK_SIBLING=0
named-checkzone checks out-of-zone addresses by default.
To disable this default set. -DCHECK_LOCAL=0
To create the default pid files in ${localstatedir}/run rather
than ${localstatedir}/run/{named,lwresd}/ set.
-DNS_RUN_PID_DIR=0
Enable workaround for Solaris kernel bug about /dev/poll
-DISC_SOCKET_USE_POLLWATCH=1
The watch timeout is also configurable, e.g.,
-DISC_SOCKET_POLLWATCH_TIMEOUT=20
BIND 9.9.9
LDFLAGS
Linker flags. Defaults to empty string.
BIND 9.9.9 is a maintenance release and addresses bugs found in BIND 9.9.8
and earlier, as well as the security flaws described in CVE-2015-8000,
CVE-2015-8461, CVE-2015-8704, CVE-2016-1285, CVE-2016-1286, CVE-2016-2775
and CVE-2016-2776.
The following need to be set when cross compiling.
BIND 9.9.10
BUILD_CC
The native C compiler.
BUILD_CFLAGS (optional)
BUILD_CPPFLAGS (optional)
Possible Settings:
-DNEED_OPTARG=1 (optarg is not declared in <unistd.h>)
BUILD_LDFLAGS (optional)
BUILD_LIBS (optional)
BIND 9.9.10 is a maintenance release and addresses the security flaws
disclosed in CVE-2016-2775, CVE-2016-2776, CVE-2016-6170, CVE-2016-8864,
CVE-2016-9131, CVE-2016-9147, CVE-2016-9444, CVE-2017-3135, CVE-2017-3136,
CVE-2017-3137, and CVE-2017-3138.
To build shared libraries, specify "--with-libtool" on the
configure command line.
BIND 9.9.11
For the server to support DNSSEC, you need to build it
with crypto support. You must have OpenSSL 0.9.5a
or newer installed and specify "--with-openssl" on the
configure command line. If OpenSSL is installed under
a nonstandard prefix, you can tell configure where to
look for it using "--with-openssl=/prefix".
BIND 9.9.11 is a maintenance release, and addresses the security flaws
disclosed in CVE-2017-3140, CVE-2017-3141, CVE-2017-3142 and
CVE-2017-3143.
On some platforms it is necessary to explictly request large
file support to handle files bigger than 2GB. This can be
done by "--enable-largefile" on the configure command line.
BIND 9.9.12
On some platforms, BIND 9 can be built with multithreading
support, allowing it to take advantage of multiple CPUs.
You can specify whether to build a multithreaded BIND 9
by specifying "--enable-threads" or "--disable-threads"
on the configure command line. The default is operating
system dependent.
BIND 9.9.12 is a maintenance release, and addresses the security flaw
disclosed in CVE-2017-3145.
Support for the "fixed" rrset-order option can be enabled
or disabled by specifying "--enable-fixed-rrset" or
"--disable-fixed-rrset" on the configure command line.
The default is "disabled", to reduce memory footprint.
Building BIND
If your operating system has integrated support for IPv6, it
will be used automatically. If you have installed KAME IPv6
separately, use "--with-kame[=PATH]" to specify its location.
BIND requires a UNIX or Linux system with an ANSI C compiler, basic POSIX
support, and a 64-bit integer type. Successful builds have been observed
on many versions of Linux and UNIX, including RedHat, Fedora, Debian,
Ubuntu, SuSE, Slackware, FreeBSD, NetBSD, OpenBSD, Mac OS X, Solaris,
HP-UX, AIX, SCO OpenServer, and OpenWRT.
"make install" will install "named" and the various BIND 9 libraries.
By default, installation is into /usr/local, but this can be changed
with the "--prefix" option when running "configure".
BIND is also available for Windows XP, 2003, 2008, and higher. See
win32utils/readme1st.txt for details on building for Windows systems.
You may specify the option "--sysconfdir" to set the directory
where configuration files like "named.conf" go by default,
and "--localstatedir" to set the default parent directory
of "run/named.pid". For backwards compatibility with BIND 8,
--sysconfdir defaults to "/etc" and --localstatedir defaults to
"/var" if no --prefix option is given. If there is a --prefix
option, sysconfdir defaults to "$prefix/etc" and localstatedir
defaults to "$prefix/var".
To build on a UNIX or Linux system, use:
To see additional configure options, run "configure --help".
Note that the help message does not reflect the BIND 8
compatibility defaults for sysconfdir and localstatedir.
$ ./configure
$ make
If you're planning on making changes to the BIND 9 source, you
should also "make depend". If you're using Emacs, you might find
"make tags" helpful.
If you're planning on making changes to the BIND 9 source, you should run
make depend. If you're using Emacs, you might find make tags helpful.
If you need to re-run configure please run "make distclean" first.
This will ensure that all the option changes take.
Several environment variables that can be set before running configure
will affect compilation:
Building with gcc is not supported, unless gcc is the vendor's usual
compiler (e.g. the various BSD systems, Linux).
Known compiler issues:
* gcc-3.2.1 and gcc-3.1.1 is known to cause problems with solaris-x86.
* gcc prior to gcc-3.2.3 ultrasparc generates incorrect code at -02.
* gcc-3.3.5 powerpc generates incorrect code at -02.
* Irix, MipsPRO 7.4.1m is known to cause problems.
Variable Description
CC The C compiler to use. configure tries to figure out the
right one for supported systems.
C compiler flags. Defaults to include -g and/or -O2 as
CFLAGS supported by the compiler. Please include '-g' if you need
to set CFLAGS.
System header file directories. Can be used to specify
STD_CINCLUDES where add-on thread or IPv6 support is, for example.
Defaults to empty string.
Any additional preprocessor symbols you want defined.
STD_CDEFINES Defaults to empty string. For a list of possible settings,
see the file OPTIONS.
LDFLAGS Linker flags. Defaults to empty string.
BUILD_CC Needed when cross-compiling: the native C compiler to use
when building for the target system.
BUILD_CFLAGS Optional, used for cross-compiling
BUILD_CPPFLAGS
BUILD_LDFLAGS
BUILD_LIBS
A limited test suite can be run with "make test". Many of
the tests require you to configure a set of virtual IP addresses
on your system, and some require Perl; see bin/tests/system/README
for details.
macOS
SunOS 4 requires "printf" to be installed to make the shared
libraries. sh-utils-1.16 provides a "printf" which compiles
on SunOS 4.
Building on macOS assumes that the "Command Tools for Xcode" is installed.
This can be downloaded from https://developer.apple.com/download/more/ or
if you have Xcode already installed you can run "xcode-select --install".
This will add /usr/include to the system and install the compiler and
other tools so that they can be easily found.
Known limitations
Compile-time options
Linux requires kernel build 2.6.39 or later to get the
performance benefits from using multiple sockets.
To see a full list of configuration options, run configure --help.
On most platforms, BIND 9 is built with multithreading support, allowing
it to take advantage of multiple CPUs. You can configure this by
specifying --enable-threads or --disable-threads on the configure command
line. The default is to enable threads, except on some older operating
systems on which threads are known to have had problems in the past.
(Note: Prior to BIND 9.10, the default was to disable threads on Linux
systems; this has now been reversed. On Linux systems, the threaded build
is known to change BIND's behavior with respect to file permissions; it
may be necessary to specify a user with the -u option when running named.)
To build shared libraries, specify --with-libtool on the configure command
line.
Certain compiled-in constants and default settings can be increased to
values better suited to large servers with abundant memory resources (e.g,
64-bit servers with 12G or more of memory) by specifying --with-tuning=
large on the configure command line. This can improve performance on big
servers, but will consume more memory and may degrade performance on
smaller systems.
For the server to support DNSSEC, you need to build it with crypto
support. To use OpenSSL, you should have OpenSSL 1.0.2e or newer
installed. If the OpenSSL library is installed in a nonstandard location,
specify the prefix using "--with-openssl=<PREFIX>" on the configure
command line. To use a PKCS#11 hardware service module for cryptographic
operations, specify the path to the PKCS#11 provider library using
"--with-pkcs11=<PREFIX>", and configure BIND with
"--enable-native-pkcs11".
To support the HTTP statistics channel, the server must be linked with
libxml2 http://xmlsoft.org If this is installed at a nonstandard location,
specify the prefix using --with-libxml2=/prefix.
Portions of BIND that are written in Python, including dnssec-coverage,
dnssec-checkds, and some of the system tests, require the 'argparse'
module to be available. 'argparse' is a standard module as of Python 2.7
and Python 3.2.
On some platforms it is necessary to explicitly request large file support
to handle files bigger than 2GB. This can be done by using
--enable-largefile on the configure command line.
Support for the "fixed" rrset-order option can be enabled or disabled by
specifying --enable-fixed-rrset or --disable-fixed-rrset on the configure
command line. By default, fixed rrset-order is disabled to reduce memory
footprint.
If your operating system has integrated support for IPv6, it will be used
automatically. If you have installed KAME IPv6 separately, use --with-kame
[=PATH] to specify its location.
make install will install named and the various BIND 9 libraries. By
default, installation is into /usr/local, but this can be changed with the
--prefix option when running configure.
You may specify the option --sysconfdir to set the directory where
configuration files like named.conf go by default, and --localstatedir to
set the default parent directory of run/named.pid. For backwards
compatibility with BIND 8, --sysconfdir defaults to /etc and
--localstatedir defaults to /var if no --prefix option is given. If there
is a --prefix option, sysconfdir defaults to $prefix/etc and localstatedir
defaults to $prefix/var.
Automated testing
A system test suite can be run with make test. The system tests require
you to configure a set of virtual IP addresses on your system (this allows
multiple servers to run locally and communicate with one another). These
IP addresses can be configured by running the command bin/tests/system/
ifconfig.sh up as root.
Some tests require Perl and the Net::DNS and/or IO::Socket::INET6 modules,
and will be skipped if these are not available. Some tests require Python
and the 'dnspython' module and will be skipped if these are not available.
See bin/tests/system/README for further details.
Unit tests are implemented using Automated Testing Framework (ATF). To run
them, use configure --with-atf, then run make test or make unit.
Documentation
The BIND 9 Administrator Reference Manual is included with the
source distribution in DocBook XML and HTML format, in the
doc/arm directory.
The BIND 9 Administrator Reference Manual is included with the source
distribution, in DocBook XML, HTML and PDF format, in the doc/arm
directory.
Some of the programs in the BIND 9 distribution have man pages
in their directories. In particular, the command line
options of "named" are documented in /bin/named/named.8.
There is now also a set of man pages for the lwres library.
Some of the programs in the BIND 9 distribution have man pages in their
directories. In particular, the command line options of named are
documented in bin/named/named.8.
If you are upgrading from BIND 8, please read the migration
notes in doc/misc/migration. If you are upgrading from
BIND 4, read doc/misc/migration-4to9.
Frequently (and not-so-frequently) asked questions and their answers can
be found in the ISC Knowledge Base at https://kb.isc.org.
Frequently asked questions and their answers can be found in
FAQ.
Additional information on various subjects can be found in other README
files throughout the source tree.
Additional information on various subjects can be found
in the other README files.
Change log
A detailed list of all changes that have been made throughout the
development BIND 9 is included in the file CHANGES, with the most recent
changes listed first. Change notes include tags indicating the category of
the change that was made; these categories are:
Change Log
Category Description
[func] New feature
[bug] General bug fix
[security] Fix for a significant security flaw
[experimental] Used for new features when the syntax or other aspects of
the design are still in flux and may change
[port] Portability enhancement
[maint] Updates to built-in data such as root server addresses and
keys
[tuning] Changes to built-in configuration defaults and constants to
improve performance
[performance] Other changes to improve server performance
[protocol] Updates to the DNS protocol such as new RR types
[test] Changes to the automatic tests, not affecting server
functionality
[cleanup] Minor corrections and refactoring
[doc] Documentation
[contrib] Changes to the contributed tools and libraries in the
'contrib' subdirectory
Used in the master development branch to reserve change
[placeholder] numbers for use in other branches, e.g. when fixing a bug
that only exists in older releases
A detailed list of all changes to BIND 9 is included in the
file CHANGES, with the most recent changes listed first.
Change notes include tags indicating the category of the
change that was made; these categories are:
In general, [func] and [experimental] tags will only appear in new-feature
releases (i.e., those with version numbers ending in zero). Some new
functionality may be backported to older releases on a case-by-case basis.
All other change types may be applied to all currently-supported releases.
[func] New feature
Acknowledgments
[bug] General bug fix
[security] Fix for a significant security flaw
[experimental] Used for new features when the syntax
or other aspects of the design are still
in flux and may change
[port] Portability enhancement
[maint] Updates to built-in data such as root
server addresses and keys
[tuning] Changes to built-in configuration defaults
and constants to improve performanceo
[protocol] Updates to the DNS protocol such as new
RR types
[test] Changes to the automatic tests, not
affecting server functionality
[cleanup] Minor corrections and refactoring
[doc] Documentation
[contrib] Changes to the contributed tools and
libraries in the 'contrib' subdirectory
[placeholder] Used in the master development branch to
reserve change numbers for use in other
branches, e.g. when fixing a bug that only
exists in older releases
In general, [func] and [experimental] tags will only appear
in new-feature releases (i.e., those with version numbers
ending in zero). Some new functionality may be backported to
older releases on a case-by-case basis. All other change
types may be applied to all currently-supported releases.
Bug Reports and Mailing Lists
Bug reports should be sent to:
bind9-bugs@isc.org
Feature requests can be sent to:
bind-suggest@isc.org
To join or view the archives of the BIND Users mailing list,
visit:
https://lists.isc.org/mailman/listinfo/bind-users
If you're planning on making changes to the BIND 9 source
code, you may also want to join the BIND Workers mailing
list:
https://lists.isc.org/mailman/listinfo/bind-workers
Information on read-only Git access, coding style and developer
guidelines can be found at:
http://www.isc.org/git/
* The original development of BIND 9 was underwritten by the following
organizations:
Sun Microsystems, Inc.
Hewlett Packard
Compaq Computer Corporation
IBM
Process Software Corporation
Silicon Graphics, Inc.
Network Associates, Inc.
U.S. Defense Information Systems Agency
USENIX Association
Stichting NLnet - NLnet Foundation
Nominum, Inc.
* This product includes software developed by the OpenSSL Project for
use in the OpenSSL Toolkit. http://www.OpenSSL.org/
* This product includes cryptographic software written by Eric Young
(eay@cryptsoft.com)
* This product includes software written by Tim Hudson
(tjh@cryptsoft.com)

468
README.md Normal file
View File

@@ -0,0 +1,468 @@
<!--
- Copyright (C) 2017, 2018 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
# BIND 9
### Contents
1. [Introduction](#intro)
1. [Reporting bugs and getting help](#help)
1. [Contributing to BIND](#contrib)
1. [BIND 9.9 features](#features)
1. [Building BIND](#build)
1. [macOS](#macos)
1. [Compile-time options](#opts)
1. [Automated testing](#testing)
1. [Documentation](#doc)
1. [Change log](#changes)
1. [Acknowledgments](#ack)
### <a name="intro"/> Introduction
BIND (Berkeley Internet Name Domain) is a complete, highly portable
implementation of the DNS (Domain Name System) protocol.
The BIND name server, `named`, is able to serve as an authoritative name
server, recursive resolver, DNS forwarder, or all three simultaneously. It
implements views for split-horizon DNS, automatic DNSSEC zone signing and
key management, catalog zones to facilitate provisioning of zone data
throughout a name server constellation, response policy zones (RPZ) to
protect clients from malicious data, response rate limiting (RRL) and
recursive query limits to reduce distributed denial of service attacks,
and many other advanced DNS features. BIND also includes a suite of
administrative tools, including the `dig` and `delv` DNS lookup tools,
`nsupdate` for dynamic DNS zone updates, `rndc` for remote name server
administration, and more.
BIND 9 is a complete re-write of the BIND architecture that was used in
versions 4 and 8. Internet Systems Consortium
([https://www.isc.org](https://www.isc.org)), a 501(c)(3) public benefit
corporation dedicated to providing software and services in support of the
Internet infrastructure, developed BIND 9 and is responsible for its
ongoing maintenance and improvement. BIND is open source software
licenced under the terms of the ISC License for all versions up to and
including BIND 9.10, and the Mozilla Public License version 2.0 for all
subsequent verisons.
For a summary of features introduced in past major releases of BIND,
see the file [HISTORY](HISTORY.md).
For a detailed list of changes made throughout the history of BIND 9, see
the file [CHANGES](CHANGES). See [below](#changes) for details on the
CHANGES file format.
For up-to-date release notes and errata, see
[http://www.isc.org/software/bind9/releasenotes](http://www.isc.org/software/bind9/releasenotes)
### <a name="help"/> Reporting bugs and getting help
To report non-security-sensitive bugs or request new features, you may
open an Issue in the BIND 9 project on the
[ISC GitLab server](https://gitlab.isc.org) at
[https://gitlab.isc.org/isc-projects/bind9](https://gitlab.isc.org/isc-projects/bind9).
Please note that, unless you explicitly mark the newly created Issue as
"confidential", it will be publicly readable. Please do not include any
information in bug reports that you consider to be confidential unless
the issue has been marked as such. In particular, if submitting the
contents of your configuration file in a non-confidential Issue, it is
advisable to obscure key secrets: this can be done automatically by
using `named-checkconf -px`.
If the bug you are reporting is a potential security issue, such as an
assertion failure or other crash in `named`, please do *NOT* use GitLab to
report it. Instead, please send mail to
[security-officer@isc.org](mailto:security-officer@isc.org).
Professional support and training for BIND are available from
ISC at [https://www.isc.org/support](https://www.isc.org/support).
To join the __BIND Users__ mailing list, or view the archives, visit
[https://lists.isc.org/mailman/listinfo/bind-users](https://lists.isc.org/mailman/listinfo/bind-users).
If you're planning on making changes to the BIND 9 source code, you
may also want to join the __BIND Workers__ mailing list, at
[https://lists.isc.org/mailman/listinfo/bind-workers](https://lists.isc.org/mailman/listinfo/bind-workers).
### <a name="contrib"/> Contributing to BIND
ISC maintains a public git repository for BIND; details can be found
at [http://www.isc.org/git/](http://www.isc.org/git/), and also on Github
at [https://github.com/isc-projects](https://github.com/isc-projects).
Information for BIND contributors can be found in the following files:
- General information: [doc/dev/contrib.md](doc/dev/contrib.md)
- BIND 9 code style: [doc/dev/style.md](doc/dev/style.md)
- BIND architecture and developer guide: [doc/dev/dev.md](doc/dev/dev.md)
Patches for BIND may be submitted as
[Merge Requests](https://gitlab.isc.org/isc-projects/bind9/merge_requests)
in the [ISC GitLab server](https://gitlab.isc.org) at
at [https://gitlab.isc.org/isc-projects/bind9/merge_requests](https://gitlab.isc.org/isc-projects/bind9/merge_requests).
By default, external contributors don't have ability to fork BIND in the
GitLab server, but if you wish to contribute code to BIND, you may request
permission to do so. Thereafter, you can create git branches and directly
submit requests that they be reviewed and merged.
If you prefer, you may also submit code by opening a
[GitLab Issue](https://gitlab.isc.org/isc-projects/bind9/issues) and
including your patch as an attachment, preferably generated by
`git format-patch`.
### <a name="features"/> BIND 9.9 features
BIND 9.9.0 includes a number of changes from BIND 9.8 and earlier
releases. New features include:
* Inline signing, allowing automatic DNSSEC signing of master zones without
modification of the zonefile, or "bump in the wire" signing in slaves.
* NXDOMAIN redirection.
* New `rndc flushtree` command clears all data under a given name from the
DNS cache.
* New `rndc sync` command dumps pending changes in a dynamic zone to disk
without a freeze/thaw cycle.
* New `rndc signing` command displays or clears signing status records in
`auto-dnssec` zones.
* NSEC3 parameters for `auto-dnssec` zones can now be set prior to signing,
eliminating the need to initially sign with NSEC.
* Startup time improvements on large authoritative servers.
* Slave zones are now saved in raw format by default.
* Several improvements to response policy zones (RPZ).
* Improved hardware scalability by using multiple threads to listen for
queries and using finer-grained client locking
* The `also-notify` option now takes the same syntax as `masters`, so it
can used named masterlists and TSIG keys.
* `dnssec-signzone -D` writes an output file containing only DNSSEC data,
which can be included by the primary zone file.
* `dnssec-signzone -R` forces removal of signatures that are not expired
but were created by a key which no longer exists.
* `dnssec-signzone -X` allows a separate expiration date to be specified
for DNSKEY signatures from other signatures.
* New `-L` option to `dnssec-keygen`, `dnssec-settime`, and
`dnssec-keyfromlabel` sets the default TTL for the key.
* `dnssec-dsfromkey` now supports reading from standard input, to make it
easier to convert DNSKEY to DS.
* RFC 1918 reverse zones have been added to the empty-zones table per RFC
6303.
* Dynamic updates can now optionally set the zone's SOA serial number to
the current UNIX time.
* DLZ modules can now retrieve the source IP address of the querying
client.
* `request-ixfr` option can now be set at the per-zone level.
* `dig +rrcomments` turns on comments about DNSKEY records, indicating
their key ID, algorithm and function
* Simplified nsupdate syntax and added readline support
#### BIND 9.9.1
BIND 9.9.1 is a maintenance release.
#### BIND 9.9.2
BIND 9.9.2 is a maintenance release, and addresses the security flaw
described in CVE-2012-4244.
#### BIND 9.9.3
BIND 9.9.3 is a maintenance release and addresses the security
flaws described in CVE-2012-5688, CVE-2012-5689 and CVE-2013-2266.
#### BIND 9.9.4
BIND 9.9.4 is a maintenance release, and addresses the security
flaws described in CVE-2013-3919 and CVE-2013-4854. It also
introduces DNS Response Rate Limiting (DNS RRL) as a
compile-time option. To use this feature, configure with
the `--enable-rrl` option.
#### BIND 9.9.5
BIND 9.9.5 is a maintenance release, and addresses the security
flaws described in CVE-2013-6320 and CVE-2014-0591. It also
includes the following functional enhancements:
* `named` now preserves the capitalization of names when responding to
queries.
* new `dnssec-importkey` command allows the use of offline DNSSEC keys with
automatic DNSKEY management.
* When re-signing a zone, the new `dnssec-signzone -Q` option drops
signatures from keys that are still published but are no longer active.
* `named-checkconf -px` will print the contents of configuration files with
the shared secrets obscured, making it easier to share configuration
(e.g. when submitting a bug report) without revealing private
information.
#### BIND 9.9.6
BIND 9.9.6 is a maintenance release, and also includes the following new
functionality.
- The former behavior with respect to capitalization of names (prior to
BIND 9.9.5) can be restored for specific clients via the new
`no-case-compress` ACL.
#### BIND 9.9.7
BIND 9.9.7 is a maintenance release, and addresses the security flaws
described in CVE-2014-8500 and CVE-2015-1349.
#### BIND 9.9.8
BIND 9.9.8 is a maintenance release, and addresses the security flaws
described in CVE-2015-4620, CVE-2015-5477, CVE-2015-5722, and
CVE-2015-5986.
It also makes the following new features available via a compile-time
option:
* New "fetchlimit" quotas are now available for the use of
recursive resolvers that are are under high query load for
domains 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.
NOTE: These options are NOT built in by default; use
`configure --enable-fetchlimit` to enable them.
#### BIND 9.9.9
BIND 9.9.9 is a maintenance release and addresses bugs found
in BIND 9.9.8 and earlier, as well as the security flaws
described in CVE-2015-8000, CVE-2015-8461, CVE-2015-8704,
CVE-2016-1285, CVE-2016-1286, CVE-2016-2775 and CVE-2016-2776.
#### BIND 9.9.10
BIND 9.9.10 is a maintenance release and addresses the security
flaws disclosed in CVE-2016-2775, CVE-2016-2776, CVE-2016-6170,
CVE-2016-8864, CVE-2016-9131, CVE-2016-9147, CVE-2016-9444,
CVE-2017-3135, CVE-2017-3136, CVE-2017-3137, and CVE-2017-3138.
#### BIND 9.9.11
BIND 9.9.11 is a maintenance release, and addresses the security flaws
disclosed in CVE-2017-3140, CVE-2017-3141, CVE-2017-3142 and CVE-2017-3143.
#### BIND 9.9.12
BIND 9.9.12 is a maintenance release, and addresses the security flaw
disclosed in CVE-2017-3145.
### <a name="build"/> Building BIND
BIND requires a UNIX or Linux system with an ANSI C compiler, basic POSIX
support, and a 64-bit integer type. Successful builds have been observed on
many versions of Linux and UNIX, including RedHat, Fedora, Debian, Ubuntu,
SuSE, Slackware, FreeBSD, NetBSD, OpenBSD, Mac OS X, Solaris, HP-UX, AIX,
SCO OpenServer, and OpenWRT.
BIND is also available for Windows XP, 2003, 2008, and higher. See
`win32utils/readme1st.txt` for details on building for Windows systems.
To build on a UNIX or Linux system, use:
$ ./configure
$ make
If you're planning on making changes to the BIND 9 source, you should run
`make depend`. If you're using Emacs, you might find `make tags` helpful.
Several environment variables that can be set before running `configure` will
affect compilation:
|Variable|Description |
|--------------------|-----------------------------------------------|
|`CC`|The C compiler to use. `configure` tries to figure out the right one for supported systems.|
|`CFLAGS`|C compiler flags. Defaults to include -g and/or -O2 as supported by the compiler. Please include '-g' if you need to set `CFLAGS`. |
|`STD_CINCLUDES`|System header file directories. Can be used to specify where add-on thread or IPv6 support is, for example. Defaults to empty string.|
|`STD_CDEFINES`|Any additional preprocessor symbols you want defined. Defaults to empty string. For a list of possible settings, see the file [OPTIONS](OPTIONS.md).|
|`LDFLAGS`|Linker flags. Defaults to empty string.|
|`BUILD_CC`|Needed when cross-compiling: the native C compiler to use when building for the target system.|
|`BUILD_CFLAGS`|Optional, used for cross-compiling|
|`BUILD_CPPFLAGS`||
|`BUILD_LDFLAGS`||
|`BUILD_LIBS`||
#### <a name="macos"> macOS
Building on macOS assumes that the "Command Tools for Xcode" is installed.
This can be downloaded from https://developer.apple.com/download/more/
or if you have Xcode already installed you can run "xcode-select --install".
This will add /usr/include to the system and install the compiler and other
tools so that they can be easily found.
#### <a name="opts"/> Compile-time options
To see a full list of configuration options, run `configure --help`.
On most platforms, BIND 9 is built with multithreading support, allowing it
to take advantage of multiple CPUs. You can configure this by specifying
`--enable-threads` or `--disable-threads` on the `configure` command line.
The default is to enable threads, except on some older operating systems on
which threads are known to have had problems in the past. (Note: Prior to
BIND 9.10, the default was to disable threads on Linux systems; this has
now been reversed. On Linux systems, the threaded build is known to change
BIND's behavior with respect to file permissions; it may be necessary to
specify a user with the -u option when running `named`.)
To build shared libraries, specify `--with-libtool` on the `configure`
command line.
Certain compiled-in constants and default settings can be increased to
values better suited to large servers with abundant memory resources (e.g,
64-bit servers with 12G or more of memory) by specifying
`--with-tuning=large` on the `configure` command line. This can improve
performance on big servers, but will consume more memory and may degrade
performance on smaller systems.
For the server to support DNSSEC, you need to build it with crypto support.
To use OpenSSL, you should have OpenSSL 1.0.2e or newer installed. If the
OpenSSL library is installed in a nonstandard location, specify the prefix
using "--with-openssl=&lt;PREFIX&gt;" on the configure command line. To use a
PKCS#11 hardware service module for cryptographic operations, specify the
path to the PKCS#11 provider library using "--with-pkcs11=&lt;PREFIX&gt;", and
configure BIND with "--enable-native-pkcs11".
To support the HTTP statistics channel, the server must be linked with
libxml2 [http://xmlsoft.org](http://xmlsoft.org) If this is installed at a
nonstandard location, specify the prefix using `--with-libxml2=/prefix`.
Portions of BIND that are written in Python, including
`dnssec-coverage`, `dnssec-checkds`, and some of the
system tests, require the 'argparse' module to be available.
'argparse' is a standard module as of Python 2.7 and Python 3.2.
On some platforms it is necessary to explicitly request large file support
to handle files bigger than 2GB. This can be done by using
`--enable-largefile` on the `configure` command line.
Support for the "fixed" rrset-order option can be enabled or disabled by
specifying `--enable-fixed-rrset` or `--disable-fixed-rrset` on the
configure command line. By default, fixed rrset-order is disabled to
reduce memory footprint.
If your operating system has integrated support for IPv6, it will be used
automatically. If you have installed KAME IPv6 separately, use
`--with-kame[=PATH]` to specify its location.
`make install` will install `named` and the various BIND 9 libraries. By
default, installation is into /usr/local, but this can be changed with the
`--prefix` option when running `configure`.
You may specify the option `--sysconfdir` to set the directory where
configuration files like `named.conf` go by default, and `--localstatedir`
to set the default parent directory of `run/named.pid`. For backwards
compatibility with BIND 8, `--sysconfdir` defaults to `/etc` and
`--localstatedir` defaults to `/var` if no `--prefix` option is given. If
there is a `--prefix` option, sysconfdir defaults to `$prefix/etc` and
localstatedir defaults to `$prefix/var`.
### <a name="testing"/> Automated testing
A system test suite can be run with `make test`. The system tests require
you to configure a set of virtual IP addresses on your system (this allows
multiple servers to run locally and communicate with one another). These
IP addresses can be configured by running the command
`bin/tests/system/ifconfig.sh up` as root.
Some tests require Perl and the Net::DNS and/or IO::Socket::INET6 modules,
and will be skipped if these are not available. Some tests require Python
and the 'dnspython' module and will be skipped if these are not available.
See bin/tests/system/README for further details.
Unit tests are implemented using Automated Testing Framework (ATF).
To run them, use `configure --with-atf`, then run `make test` or
`make unit`.
### <a name="doc"/> Documentation
The *BIND 9 Administrator Reference Manual* is included with the source
distribution, in DocBook XML, HTML and PDF format, in the `doc/arm`
directory.
Some of the programs in the BIND 9 distribution have man pages in their
directories. In particular, the command line options of `named` are
documented in `bin/named/named.8`.
Frequently (and not-so-frequently) asked questions and their answers
can be found in the ISC Knowledge Base at
[https://kb.isc.org](https://kb.isc.org).
Additional information on various subjects can be found in other
`README` files throughout the source tree.
### <a name="changes"/> Change log
A detailed list of all changes that have been made throughout the
development BIND 9 is included in the file CHANGES, with the most recent
changes listed first. Change notes include tags indicating the category of
the change that was made; these categories are:
|Category |Description |
|-------------- |-----------------------------------------------|
| [func] | New feature |
| [bug] | General bug fix |
| [security] | Fix for a significant security flaw |
| [experimental] | Used for new features when the syntax or other aspects of the design are still in flux and may change |
| [port] | Portability enhancement |
| [maint] | Updates to built-in data such as root server addresses and keys |
| [tuning] | Changes to built-in configuration defaults and constants to improve performance |
| [performance] | Other changes to improve server performance |
| [protocol] | Updates to the DNS protocol such as new RR types |
| [test] | Changes to the automatic tests, not affecting server functionality |
| [cleanup] | Minor corrections and refactoring |
| [doc] | Documentation |
| [contrib] | Changes to the contributed tools and libraries in the 'contrib' subdirectory |
| [placeholder] | Used in the master development branch to reserve change numbers for use in other branches, e.g. when fixing a bug that only exists in older releases |
In general, [func] and [experimental] tags will only appear in new-feature
releases (i.e., those with version numbers ending in zero). Some new
functionality may be backported to older releases on a case-by-case basis.
All other change types may be applied to all currently-supported releases.
### <a name="ack"/> Acknowledgments
* The original development of BIND 9 was underwritten by the
following organizations:
Sun Microsystems, Inc.
Hewlett Packard
Compaq Computer Corporation
IBM
Process Software Corporation
Silicon Graphics, Inc.
Network Associates, Inc.
U.S. Defense Information Systems Agency
USENIX Association
Stichting NLnet - NLnet Foundation
Nominum, Inc.
* This product includes software developed by the OpenSSL Project for use
in the OpenSSL Toolkit.
[http://www.OpenSSL.org/](http://www.OpenSSL.org/)
* This product includes cryptographic software written by Eric Young
(eay@cryptsoft.com)
* This product includes software written by Tim Hudson (tjh@cryptsoft.com)

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2004, 2005, 2007, 2008, 2012, 2014 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2004, 2005, 2007, 2008, 2012, 2014, 2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 1999-2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and/or distribute this software for any
@@ -15,8 +15,6 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: acconfig.h,v 1.53 2008/12/01 23:47:44 tbox Exp $ */
/*! \file */
/***
@@ -70,12 +68,6 @@
/** define if gai_strerror() exists */
#undef HAVE_GAISTRERROR
/** define if arc4random() exists */
#undef HAVE_ARC4RANDOM
/** define if arc4random_addrandom() exists */
#undef HAVE_ARC4RANDOM_ADDRANDOM
/**
* define if pthread_setconcurrency() should be called to tell the
* OS how many threads we might want to run.
@@ -149,3 +141,6 @@ int sigwait(const unsigned int *set, int *sig);
/* Define if threads need PTHREAD_SCOPE_SYSTEM */
#undef NEED_PTHREAD_SCOPE_SYSTEM
/* Define to 1 if you have the uname library function. */
#undef HAVE_UNAME

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2004-2007, 2009, 2012, 2014 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 2004-2007, 2009, 2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 2000-2003 Internet Software Consortium.
#
# Permission to use, copy, modify, and/or distribute this software for any
@@ -19,7 +19,7 @@ srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
@BIND9_VERSION@
VERSION=@BIND9_VERSION@
@BIND9_MAKE_INCLUDES@
@@ -96,5 +96,12 @@ install:: named-checkconf@EXEEXT@ named-checkzone@EXEEXT@ installdirs
for m in ${MANPAGES}; do ${INSTALL_DATA} ${srcdir}/$$m ${DESTDIR}${mandir}/man8; done
(cd ${DESTDIR}${mandir}/man8; rm -f named-compilezone.8; ${LINK_PROGRAM} named-checkzone.8 named-compilezone.8)
uninstall::
rm -f ${DESTDIR}${mandir}/man8/named-compilezone.8
for m in ${MANPAGES}; do rm -f ${DESTDIR}${mandir}/man8/$$m ; done
rm -f ${DESTDIR}${sbindir}/named-compilezone@EXEEXT@
${LIBTOOL_MODE_UNINSTALL} rm -f ${DESTDIR}${sbindir}/named-checkconf@EXEEXT@
${LIBTOOL_MODE_UNINSTALL} rm -f ${DESTDIR}${sbindir}/named-checkzone@EXEEXT@
clean distclean::
rm -f ${TARGETS} r1.htm

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2004-2012, 2015 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2004-2012, 2015, 2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2000-2002 Internet Software Consortium.
*
* Permission to use, copy, modify, and/or distribute this software for any
@@ -211,8 +211,9 @@ checkns(dns_zone_t *zone, dns_name_t *name, dns_name_t *owner,
/*
* Turn off search.
*/
if (dns_name_countlabels(name) > 1U)
strcat(namebuf, ".");
if (dns_name_countlabels(name) > 1U) {
strlcat(namebuf, ".", sizeof(namebuf));
}
dns_name_format(owner, ownerbuf, sizeof(ownerbuf));
result = getaddrinfo(namebuf, NULL, &hints, &ai);
@@ -400,8 +401,9 @@ checkmx(dns_zone_t *zone, dns_name_t *name, dns_name_t *owner) {
/*
* Turn off search.
*/
if (dns_name_countlabels(name) > 1U)
strcat(namebuf, ".");
if (dns_name_countlabels(name) > 1U) {
strlcat(namebuf, ".", sizeof(namebuf));
}
dns_name_format(owner, ownerbuf, sizeof(ownerbuf));
result = getaddrinfo(namebuf, NULL, &hints, &ai);
@@ -485,8 +487,9 @@ checksrv(dns_zone_t *zone, dns_name_t *name, dns_name_t *owner) {
/*
* Turn off search.
*/
if (dns_name_countlabels(name) > 1U)
strcat(namebuf, ".");
if (dns_name_countlabels(name) > 1U) {
strlcat(namebuf, ".", sizeof(namebuf));
}
dns_name_format(owner, ownerbuf, sizeof(ownerbuf));
result = getaddrinfo(namebuf, NULL, &hints, &ai);

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2004, 2005, 2007, 2009, 2014 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2004, 2005, 2007, 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2000-2002 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
@@ -13,115 +13,134 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
.\" Title: named\-checkconf
'\" t
.\" Title: named-checkconf
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: January 10, 2014
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2014-01-10
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "NAMED\-CHECKCONF" "8" "January 10, 2014" "BIND9" "BIND9"
.TH "NAMED\-CHECKCONF" "8" "2014\-01\-10" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
named\-checkconf \- named configuration file syntax checking tool
named-checkconf \- named configuration file syntax checking tool
.SH "SYNOPSIS"
.HP 16
\fBnamed\-checkconf\fR [\fB\-h\fR] [\fB\-v\fR] [\fB\-j\fR] [\fB\-t\ \fR\fB\fIdirectory\fR\fR] {filename} [\fB\-p\fR] [\fB\-x\fR] [\fB\-z\fR]
.HP \w'\fBnamed\-checkconf\fR\ 'u
\fBnamed\-checkconf\fR [\fB\-hjvz\fR] [\fB\-p\fR\ [\fB\-x\fR\ ]] [\fB\-t\ \fR\fB\fIdirectory\fR\fR] {filename}
.SH "DESCRIPTION"
.PP
\fBnamed\-checkconf\fR
checks the syntax, but not the semantics, of a
\fBnamed\fR
configuration file. The file is parsed and checked for syntax errors, along with all files included by it. If no file is specified,
\fI/etc/named.conf\fR
is read by default.
configuration file\&. The file is parsed and checked for syntax errors, along with all files included by it\&. If no file is specified,
/etc/named\&.conf
is read by default\&.
.PP
Note: files that
\fBnamed\fR
reads in separate parser contexts, such as
\fIrndc.key\fR
rndc\&.key
and
\fIbind.keys\fR, are not automatically read by
\fBnamed\-checkconf\fR. Configuration errors in these files may cause
bind\&.keys, are not automatically read by
\fBnamed\-checkconf\fR\&. Configuration errors in these files may cause
\fBnamed\fR
to fail to run, even if
\fBnamed\-checkconf\fR
was successful.
was successful\&.
\fBnamed\-checkconf\fR
can be run on these files explicitly, however.
can be run on these files explicitly, however\&.
.SH "OPTIONS"
.PP
\-h
.RS 4
Print the usage summary and exit.
Print the usage summary and exit\&.
.RE
.PP
\-j
.RS 4
When loading a zonefile read the journal if it exists\&.
.RE
.PP
\-p
.RS 4
Print out the
named\&.conf
and included files in canonical form if no errors were detected\&. See also the
\fB\-x\fR
option\&.
.RE
.PP
\-t \fIdirectory\fR
.RS 4
Chroot to
\fIdirectory\fR
so that include directives in the configuration file are processed as if run by a similarly chrooted named.
directory
so that include directives in the configuration file are processed as if run by a similarly chrooted
\fBnamed\fR\&.
.RE
.PP
\-v
.RS 4
Print the version of the
\fBnamed\-checkconf\fR
program and exit.
.RE
.PP
\-p
.RS 4
Print out the
\fInamed.conf\fR
and included files in canonical form if no errors were detected.
program and exit\&.
.RE
.PP
\-x
.RS 4
When printing the configuration files in canonical form, obscure shared secrets by replacing them with strings of question marks ('?'). This allows the contents of
\fInamed.conf\fR
and related files to be shared \(em for example, when submitting bug reports \(em without compromising private data. This option cannot be used without
\fB\-p\fR.
When printing the configuration files in canonical form, obscure shared secrets by replacing them with strings of question marks (\*(Aq?\*(Aq)\&. This allows the contents of
named\&.conf
and related files to be shared \(em for example, when submitting bug reports \(em without compromising private data\&. This option cannot be used without
\fB\-p\fR\&.
.RE
.PP
\-z
.RS 4
Perform a test load of all master zones found in
\fInamed.conf\fR.
.RE
.PP
\-j
.RS 4
When loading a zonefile read the journal if it exists.
named\&.conf\&.
.RE
.PP
filename
.RS 4
The name of the configuration file to be checked. If not specified, it defaults to
\fI/etc/named.conf\fR.
The name of the configuration file to be checked\&. If not specified, it defaults to
/etc/named\&.conf\&.
.RE
.SH "RETURN VALUES"
.PP
\fBnamed\-checkconf\fR
returns an exit status of 1 if errors were detected and 0 otherwise.
returns an exit status of 1 if errors were detected and 0 otherwise\&.
.SH "SEE ALSO"
.PP
\fBnamed\fR(8),
\fBnamed\-checkzone\fR(8),
BIND 9 Administrator Reference Manual.
\fBnamed-checkzone\fR(8),
BIND 9 Administrator Reference Manual\&.
.SH "AUTHOR"
.PP
Internet Systems Consortium
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2004, 2005, 2007, 2009, 2014 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2000\-2002 Internet Software Consortium.
Copyright \(co 2004, 2005, 2007, 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2000-2002 Internet Software Consortium.
.br

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2004-2007, 2009-2015 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2004-2007, 2009-2016 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 1999-2002 Internet Software Consortium.
*
* Permission to use, copy, modify, and/or distribute this software for any
@@ -68,7 +68,7 @@ usage(void) ISC_PLATFORM_NORETURN_POST;
static void
usage(void) {
fprintf(stderr, "usage: %s [-h] [-j] [-p] [-v] [-z] [-t directory] "
fprintf(stderr, "usage: %s [-hjvz] [-p [-x]] [-t directory] "
"[named.conf]\n", program);
exit(1);
}
@@ -421,15 +421,27 @@ configure_view(const char *vclass, const char *view, const cfg_obj_t *config,
return (result);
}
static isc_result_t
config_getclass(const cfg_obj_t *classobj, dns_rdataclass_t defclass,
dns_rdataclass_t *classp)
{
isc_textregion_t r;
if (!cfg_obj_isstring(classobj)) {
*classp = defclass;
return (ISC_R_SUCCESS);
}
DE_CONST(cfg_obj_asstring(classobj), r.base);
r.length = strlen(r.base);
return (dns_rdataclass_fromtext(classp, &r));
}
/*% load zones from the configuration */
static isc_result_t
load_zones_fromconfig(const cfg_obj_t *config, isc_mem_t *mctx) {
const cfg_listelt_t *element;
const cfg_obj_t *classobj;
const cfg_obj_t *views;
const cfg_obj_t *vconfig;
const char *vclass;
isc_result_t result = ISC_R_SUCCESS;
isc_result_t tresult;
@@ -440,17 +452,24 @@ load_zones_fromconfig(const cfg_obj_t *config, isc_mem_t *mctx) {
element != NULL;
element = cfg_list_next(element))
{
const cfg_obj_t *classobj;
dns_rdataclass_t viewclass;
const char *vname;
char buf[sizeof("CLASS65535")];
vclass = "IN";
vconfig = cfg_listelt_value(element);
if (vconfig != NULL) {
classobj = cfg_tuple_get(vconfig, "class");
if (cfg_obj_isstring(classobj))
vclass = cfg_obj_asstring(classobj);
}
if (vconfig == NULL)
continue;
classobj = cfg_tuple_get(vconfig, "class");
CHECK(config_getclass(classobj, dns_rdataclass_in,
&viewclass));
if (dns_rdataclass_ismeta(viewclass))
CHECK(ISC_R_FAILURE);
dns_rdataclass_format(viewclass, buf, sizeof(buf));
vname = cfg_obj_asstring(cfg_tuple_get(vconfig, "name"));
tresult = configure_view(vclass, vname, config, vconfig, mctx);
tresult = configure_view(buf, vname, config, vconfig, mctx);
if (tresult != ISC_R_SUCCESS)
result = tresult;
}
@@ -460,6 +479,8 @@ load_zones_fromconfig(const cfg_obj_t *config, isc_mem_t *mctx) {
if (tresult != ISC_R_SUCCESS)
result = tresult;
}
cleanup:
return (result);
}

View File

@@ -1,8 +1,7 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!DOCTYPE book [
<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2004, 2005, 2007, 2009, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004, 2005, 2007, 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2002 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -18,9 +17,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.named-checkconf">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.named-checkconf">
<info>
<date>2014-01-10</date>
</info>
<refentryinfo>
<date>January 10, 2014</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -36,6 +40,8 @@
<year>2007</year>
<year>2009</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
<copyright>
@@ -52,21 +58,19 @@
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>named-checkconf</command>
<arg><option>-h</option></arg>
<arg><option>-v</option></arg>
<arg><option>-j</option></arg>
<arg><option>-t <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="req">filename</arg>
<arg><option>-p</option></arg>
<arg><option>-x</option></arg>
<arg><option>-z</option></arg>
<arg choice="opt" rep="norepeat"><option>-hjvz</option></arg>
<arg choice="opt" rep="norepeat"><option>-p</option>
<arg choice="opt" rep="norepeat"><option>-x</option>
</arg></arg>
<arg choice="opt" rep="norepeat"><option>-t <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="req" rep="norepeat">filename</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>named-checkconf</command>
checks the syntax, but not the semantics, of a
<command>named</command> configuration file. The file is parsed
@@ -84,10 +88,9 @@
successful. <command>named-checkconf</command> can be run
on these files explicitly, however.
</para>
</refsect1>
</refsection>
<refsect1>
<title>OPTIONS</title>
<refsection><info><title>OPTIONS</title></info>
<variablelist>
<varlistentry>
@@ -100,22 +103,10 @@
</varlistentry>
<varlistentry>
<term>-t <replaceable class="parameter">directory</replaceable></term>
<term>-j</term>
<listitem>
<para>
Chroot to <filename>directory</filename> so that include
directives in the configuration file are processed as if
run by a similarly chrooted named.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-v</term>
<listitem>
<para>
Print the version of the <command>named-checkconf</command>
program and exit.
When loading a zonefile read the journal if it exists.
</para>
</listitem>
</varlistentry>
@@ -126,6 +117,28 @@
<para>
Print out the <filename>named.conf</filename> and included files
in canonical form if no errors were detected.
See also the <option>-x</option> option.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-t <replaceable class="parameter">directory</replaceable></term>
<listitem>
<para>
Chroot to <filename>directory</filename> so that include
directives in the configuration file are processed as if
run by a similarly chrooted <command>named</command>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-v</term>
<listitem>
<para>
Print the version of the <command>named-checkconf</command>
program and exit.
</para>
</listitem>
</varlistentry>
@@ -155,15 +168,6 @@
</listitem>
</varlistentry>
<varlistentry>
<term>-j</term>
<listitem>
<para>
When loading a zonefile read the journal if it exists.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>filename</term>
<listitem>
@@ -176,18 +180,18 @@
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>RETURN VALUES</title></info>
<refsect1>
<title>RETURN VALUES</title>
<para><command>named-checkconf</command>
returns an exit status of 1 if
errors were detected and 0 otherwise.
</para>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>named</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
@@ -196,16 +200,5 @@
</citerefentry>,
<citetitle>BIND 9 Administrator Reference Manual</citetitle>.
</para>
</refsect1>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refsection>
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2004, 2005, 2007, 2009, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004, 2005, 2007, 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2002 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -14,68 +15,106 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>named-checkconf</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.named-checkconf"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">named-checkconf</span> &#8212; named configuration file syntax checking tool</p>
<p>
<span class="application">named-checkconf</span>
&#8212; named configuration file syntax checking tool
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">named-checkconf</code> [<code class="option">-h</code>] [<code class="option">-v</code>] [<code class="option">-j</code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] {filename} [<code class="option">-p</code>] [<code class="option">-x</code>] [<code class="option">-z</code>]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543411"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">named-checkconf</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">named-checkconf</code>
[<code class="option">-hjvz</code>]
[<code class="option">-p</code>
[<code class="option">-x</code>
]]
[<code class="option">-t <em class="replaceable"><code>directory</code></em></code>]
{filename}
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>named-checkconf</strong></span>
checks the syntax, but not the semantics, of a
<span><strong class="command">named</strong></span> configuration file. The file is parsed
<span class="command"><strong>named</strong></span> configuration file. The file is parsed
and checked for syntax errors, along with all files included by it.
If no file is specified, <code class="filename">/etc/named.conf</code> is read
by default.
</p>
<p>
Note: files that <span><strong class="command">named</strong></span> reads in separate
<p>
Note: files that <span class="command"><strong>named</strong></span> reads in separate
parser contexts, such as <code class="filename">rndc.key</code> and
<code class="filename">bind.keys</code>, are not automatically read
by <span><strong class="command">named-checkconf</strong></span>. Configuration
errors in these files may cause <span><strong class="command">named</strong></span> to
fail to run, even if <span><strong class="command">named-checkconf</strong></span> was
successful. <span><strong class="command">named-checkconf</strong></span> can be run
by <span class="command"><strong>named-checkconf</strong></span>. Configuration
errors in these files may cause <span class="command"><strong>named</strong></span> to
fail to run, even if <span class="command"><strong>named-checkconf</strong></span> was
successful. <span class="command"><strong>named-checkconf</strong></span> can be run
on these files explicitly, however.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543460"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-h</span></dt>
<dd><p>
<dd>
<p>
Print the usage summary and exit.
</p></dd>
<dt><span class="term">-t <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
Chroot to <code class="filename">directory</code> so that include
directives in the configuration file are processed as if
run by a similarly chrooted named.
</p></dd>
<dt><span class="term">-v</span></dt>
<dd><p>
Print the version of the <span><strong class="command">named-checkconf</strong></span>
program and exit.
</p></dd>
</p>
</dd>
<dt><span class="term">-j</span></dt>
<dd>
<p>
When loading a zonefile read the journal if it exists.
</p>
</dd>
<dt><span class="term">-p</span></dt>
<dd><p>
<dd>
<p>
Print out the <code class="filename">named.conf</code> and included files
in canonical form if no errors were detected.
</p></dd>
See also the <code class="option">-x</code> option.
</p>
</dd>
<dt><span class="term">-t <em class="replaceable"><code>directory</code></em></span></dt>
<dd>
<p>
Chroot to <code class="filename">directory</code> so that include
directives in the configuration file are processed as if
run by a similarly chrooted <span class="command"><strong>named</strong></span>.
</p>
</dd>
<dt><span class="term">-v</span></dt>
<dd>
<p>
Print the version of the <span class="command"><strong>named-checkconf</strong></span>
program and exit.
</p>
</dd>
<dt><span class="term">-x</span></dt>
<dd><p>
<dd>
<p>
When printing the configuration files in canonical
form, obscure shared secrets by replacing them with
strings of question marks ('?'). This allows the
@@ -83,41 +122,46 @@
files to be shared &#8212; for example, when submitting
bug reports &#8212; without compromising private data.
This option cannot be used without <code class="option">-p</code>.
</p></dd>
</p>
</dd>
<dt><span class="term">-z</span></dt>
<dd><p>
<dd>
<p>
Perform a test load of all master zones found in
<code class="filename">named.conf</code>.
</p></dd>
<dt><span class="term">-j</span></dt>
<dd><p>
When loading a zonefile read the journal if it exists.
</p></dd>
</p>
</dd>
<dt><span class="term">filename</span></dt>
<dd><p>
<dd>
<p>
The name of the configuration file to be checked. If not
specified, it defaults to <code class="filename">/etc/named.conf</code>.
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543604"></a><h2>RETURN VALUES</h2>
<p><span><strong class="command">named-checkconf</strong></span>
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>RETURN VALUES</h2>
<p><span class="command"><strong>named-checkconf</strong></span>
returns an exit status of 1 if
errors were detected and 0 otherwise.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543616"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
<span class="citerefentry"><span class="refentrytitle">named-checkzone</span>(8)</span>,
</div>
<div class="refsection">
<a name="id-1.10"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">named</span>(8)
</span>,
<span class="citerefentry">
<span class="refentrytitle">named-checkzone</span>(8)
</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543645"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2004-2007, 2009-2011, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2004-2007, 2009-2011, 2013-2016 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2000-2002 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
@@ -13,106 +13,121 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
.\" Title: named\-checkzone
'\" t
.\" Title: named-checkzone
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: April 29, 2013
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2013-04-29
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "NAMED\-CHECKZONE" "8" "April 29, 2013" "BIND9" "BIND9"
.TH "NAMED\-CHECKZONE" "8" "2013\-04\-29" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
named\-checkzone, named\-compilezone \- zone file validity checking or converting tool
named-checkzone, named-compilezone \- zone file validity checking or converting tool
.SH "SYNOPSIS"
.HP 16
.HP \w'\fBnamed\-checkzone\fR\ 'u
\fBnamed\-checkzone\fR [\fB\-d\fR] [\fB\-h\fR] [\fB\-j\fR] [\fB\-q\fR] [\fB\-v\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-f\ \fR\fB\fIformat\fR\fR] [\fB\-F\ \fR\fB\fIformat\fR\fR] [\fB\-i\ \fR\fB\fImode\fR\fR] [\fB\-k\ \fR\fB\fImode\fR\fR] [\fB\-m\ \fR\fB\fImode\fR\fR] [\fB\-M\ \fR\fB\fImode\fR\fR] [\fB\-n\ \fR\fB\fImode\fR\fR] [\fB\-L\ \fR\fB\fIserial\fR\fR] [\fB\-o\ \fR\fB\fIfilename\fR\fR] [\fB\-r\ \fR\fB\fImode\fR\fR] [\fB\-s\ \fR\fB\fIstyle\fR\fR] [\fB\-S\ \fR\fB\fImode\fR\fR] [\fB\-t\ \fR\fB\fIdirectory\fR\fR] [\fB\-T\ \fR\fB\fImode\fR\fR] [\fB\-w\ \fR\fB\fIdirectory\fR\fR] [\fB\-D\fR] [\fB\-W\ \fR\fB\fImode\fR\fR] {zonename} {filename}
.HP 18
.HP \w'\fBnamed\-compilezone\fR\ 'u
\fBnamed\-compilezone\fR [\fB\-d\fR] [\fB\-j\fR] [\fB\-q\fR] [\fB\-v\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-C\ \fR\fB\fImode\fR\fR] [\fB\-f\ \fR\fB\fIformat\fR\fR] [\fB\-F\ \fR\fB\fIformat\fR\fR] [\fB\-i\ \fR\fB\fImode\fR\fR] [\fB\-k\ \fR\fB\fImode\fR\fR] [\fB\-m\ \fR\fB\fImode\fR\fR] [\fB\-n\ \fR\fB\fImode\fR\fR] [\fB\-L\ \fR\fB\fIserial\fR\fR] [\fB\-r\ \fR\fB\fImode\fR\fR] [\fB\-s\ \fR\fB\fIstyle\fR\fR] [\fB\-t\ \fR\fB\fIdirectory\fR\fR] [\fB\-T\ \fR\fB\fImode\fR\fR] [\fB\-w\ \fR\fB\fIdirectory\fR\fR] [\fB\-D\fR] [\fB\-W\ \fR\fB\fImode\fR\fR] {\fB\-o\ \fR\fB\fIfilename\fR\fR} {zonename} {filename}
.SH "DESCRIPTION"
.PP
\fBnamed\-checkzone\fR
checks the syntax and integrity of a zone file. It performs the same checks as
checks the syntax and integrity of a zone file\&. It performs the same checks as
\fBnamed\fR
does when loading a zone. This makes
does when loading a zone\&. This makes
\fBnamed\-checkzone\fR
useful for checking zone files before configuring them into a name server.
useful for checking zone files before configuring them into a name server\&.
.PP
\fBnamed\-compilezone\fR
is similar to
\fBnamed\-checkzone\fR, but it always dumps the zone contents to a specified file in a specified format. Additionally, it applies stricter check levels by default, since the dump output will be used as an actual zone file loaded by
\fBnamed\fR. When manually specified otherwise, the check levels must at least be as strict as those specified in the
\fBnamed\-checkzone\fR, but it always dumps the zone contents to a specified file in a specified format\&. Additionally, it applies stricter check levels by default, since the dump output will be used as an actual zone file loaded by
\fBnamed\fR\&. When manually specified otherwise, the check levels must at least be as strict as those specified in the
\fBnamed\fR
configuration file.
configuration file\&.
.SH "OPTIONS"
.PP
\-d
.RS 4
Enable debugging.
Enable debugging\&.
.RE
.PP
\-h
.RS 4
Print the usage summary and exit.
Print the usage summary and exit\&.
.RE
.PP
\-q
.RS 4
Quiet mode \- exit code only.
Quiet mode \- exit code only\&.
.RE
.PP
\-v
.RS 4
Print the version of the
\fBnamed\-checkzone\fR
program and exit.
program and exit\&.
.RE
.PP
\-j
.RS 4
When loading the zone file read the journal if it exists.
When loading the zone file read the journal if it exists\&.
.RE
.PP
\-c \fIclass\fR
.RS 4
Specify the class of the zone. If not specified, "IN" is assumed.
Specify the class of the zone\&. If not specified, "IN" is assumed\&.
.RE
.PP
\-i \fImode\fR
.RS 4
Perform post\-load zone integrity checks. Possible modes are
Perform post\-load zone integrity checks\&. Possible modes are
\fB"full"\fR
(default),
\fB"full\-sibling"\fR,
\fB"local"\fR,
\fB"local\-sibling"\fR
and
\fB"none"\fR.
\fB"none"\fR\&.
.sp
Mode
\fB"full"\fR
checks that MX records refer to A or AAAA record (both in\-zone and out\-of\-zone hostnames). Mode
checks that MX records refer to A or AAAA record (both in\-zone and out\-of\-zone hostnames)\&. Mode
\fB"local"\fR
only checks MX records which refer to in\-zone hostnames.
only checks MX records which refer to in\-zone hostnames\&.
.sp
Mode
\fB"full"\fR
checks that SRV records refer to A or AAAA record (both in\-zone and out\-of\-zone hostnames). Mode
checks that SRV records refer to A or AAAA record (both in\-zone and out\-of\-zone hostnames)\&. Mode
\fB"local"\fR
only checks SRV records which refer to in\-zone hostnames.
only checks SRV records which refer to in\-zone hostnames\&.
.sp
Mode
\fB"full"\fR
checks that delegation NS records refer to A or AAAA record (both in\-zone and out\-of\-zone hostnames). It also checks that glue address records in the zone match those advertised by the child. Mode
checks that delegation NS records refer to A or AAAA record (both in\-zone and out\-of\-zone hostnames)\&. It also checks that glue address records in the zone match those advertised by the child\&. Mode
\fB"local"\fR
only checks NS records which refer to in\-zone hostnames or that some required glue exists, that is when the nameserver is in a child zone.
only checks NS records which refer to in\-zone hostnames or that some required glue exists, that is when the nameserver is in a child zone\&.
.sp
Mode
\fB"full\-sibling"\fR
@@ -122,25 +137,25 @@ disable sibling glue checks but are otherwise the same as
\fB"full"\fR
and
\fB"local"\fR
respectively.
respectively\&.
.sp
Mode
\fB"none"\fR
disables the checks.
disables the checks\&.
.RE
.PP
\-f \fIformat\fR
.RS 4
Specify the format of the zone file. Possible formats are
Specify the format of the zone file\&. Possible formats are
\fB"text"\fR
(default) and
\fB"raw"\fR.
\fB"raw"\fR\&.
.RE
.PP
\-F \fIformat\fR
.RS 4
Specify the format of the output file specified. For
\fBnamed\-checkzone\fR, this does not cause any effects unless it dumps the zone contents.
Specify the format of the output file specified\&. For
\fBnamed\-checkzone\fR, this does not cause any effects unless it dumps the zone contents\&.
.sp
Possible formats are
\fB"text"\fR
@@ -148,161 +163,162 @@ Possible formats are
\fB"raw"\fR
or
\fB"raw=N"\fR, which store the zone in a binary format for rapid loading by
\fBnamed\fR.
\fBnamed\fR\&.
\fB"raw=N"\fR
specifies the format version of the raw zone file: if N is 0, the raw file can be read by any version of
\fBnamed\fR; if N is 1, the file can be read by release 9.9.0 or higher. The default is 1.
\fBnamed\fR; if N is 1, the file can be read by release 9\&.9\&.0 or higher\&. The default is 1\&.
.RE
.PP
\-k \fImode\fR
.RS 4
Perform
\fB"check\-names"\fR
checks with the specified failure mode. Possible modes are
checks with the specified failure mode\&. Possible modes are
\fB"fail"\fR
(default for
\fBnamed\-compilezone\fR),
\fB"warn"\fR
(default for
\fBnamed\-checkzone\fR) and
\fB"ignore"\fR.
\fB"ignore"\fR\&.
.RE
.PP
\-L \fIserial\fR
.RS 4
When compiling a zone to 'raw' format, set the "source serial" value in the header to the specified serial number. (This is expected to be used primarily for testing purposes.)
When compiling a zone to \*(Aqraw\*(Aq format, set the "source serial" value in the header to the specified serial number\&. (This is expected to be used primarily for testing purposes\&.)
.RE
.PP
\-m \fImode\fR
.RS 4
Specify whether MX records should be checked to see if they are addresses. Possible modes are
Specify whether MX records should be checked to see if they are addresses\&. Possible modes are
\fB"fail"\fR,
\fB"warn"\fR
(default) and
\fB"ignore"\fR.
\fB"ignore"\fR\&.
.RE
.PP
\-M \fImode\fR
.RS 4
Check if a MX record refers to a CNAME. Possible modes are
Check if a MX record refers to a CNAME\&. Possible modes are
\fB"fail"\fR,
\fB"warn"\fR
(default) and
\fB"ignore"\fR.
\fB"ignore"\fR\&.
.RE
.PP
\-n \fImode\fR
.RS 4
Specify whether NS records should be checked to see if they are addresses. Possible modes are
Specify whether NS records should be checked to see if they are addresses\&. Possible modes are
\fB"fail"\fR
(default for
\fBnamed\-compilezone\fR),
\fB"warn"\fR
(default for
\fBnamed\-checkzone\fR) and
\fB"ignore"\fR.
\fB"ignore"\fR\&.
.RE
.PP
\-o \fIfilename\fR
.RS 4
Write zone output to
\fIfilename\fR. If
\fIfilename\fR
filename\&. If
filename
is
\fI\-\fR
then write to standard out. This is mandatory for
\fBnamed\-compilezone\fR.
\-
then write to standard out\&. This is mandatory for
\fBnamed\-compilezone\fR\&.
.RE
.PP
\-r \fImode\fR
.RS 4
Check for records that are treated as different by DNSSEC but are semantically equal in plain DNS. Possible modes are
Check for records that are treated as different by DNSSEC but are semantically equal in plain DNS\&. Possible modes are
\fB"fail"\fR,
\fB"warn"\fR
(default) and
\fB"ignore"\fR.
\fB"ignore"\fR\&.
.RE
.PP
\-s \fIstyle\fR
.RS 4
Specify the style of the dumped zone file. Possible styles are
Specify the style of the dumped zone file\&. Possible styles are
\fB"full"\fR
(default) and
\fB"relative"\fR. The full format is most suitable for processing automatically by a separate script. On the other hand, the relative format is more human\-readable and is thus suitable for editing by hand. For
\fB"relative"\fR\&. The full format is most suitable for processing automatically by a separate script\&. On the other hand, the relative format is more human\-readable and is thus suitable for editing by hand\&. For
\fBnamed\-checkzone\fR
this does not cause any effects unless it dumps the zone contents. It also does not have any meaning if the output format is not text.
this does not cause any effects unless it dumps the zone contents\&. It also does not have any meaning if the output format is not text\&.
.RE
.PP
\-S \fImode\fR
.RS 4
Check if a SRV record refers to a CNAME. Possible modes are
Check if a SRV record refers to a CNAME\&. Possible modes are
\fB"fail"\fR,
\fB"warn"\fR
(default) and
\fB"ignore"\fR.
\fB"ignore"\fR\&.
.RE
.PP
\-t \fIdirectory\fR
.RS 4
Chroot to
\fIdirectory\fR
so that include directives in the configuration file are processed as if run by a similarly chrooted named.
directory
so that include directives in the configuration file are processed as if run by a similarly chrooted named\&.
.RE
.PP
\-T \fImode\fR
.RS 4
Check if Sender Policy Framework (SPF) records exist and issues a warning if an SPF\-formatted TXT record is not also present. Possible modes are
Check if Sender Policy Framework (SPF) records exist and issues a warning if an SPF\-formatted TXT record is not also present\&. Possible modes are
\fB"warn"\fR
(default),
\fB"ignore"\fR.
\fB"ignore"\fR\&.
.RE
.PP
\-w \fIdirectory\fR
.RS 4
chdir to
\fIdirectory\fR
so that relative filenames in master file $INCLUDE directives work. This is similar to the directory clause in
\fInamed.conf\fR.
directory
so that relative filenames in master file $INCLUDE directives work\&. This is similar to the directory clause in
named\&.conf\&.
.RE
.PP
\-D
.RS 4
Dump zone file in canonical format. This is always enabled for
\fBnamed\-compilezone\fR.
Dump zone file in canonical format\&. This is always enabled for
\fBnamed\-compilezone\fR\&.
.RE
.PP
\-W \fImode\fR
.RS 4
Specify whether to check for non\-terminal wildcards. Non\-terminal wildcards are almost always the result of a failure to understand the wildcard matching algorithm (RFC 1034). Possible modes are
Specify whether to check for non\-terminal wildcards\&. Non\-terminal wildcards are almost always the result of a failure to understand the wildcard matching algorithm (RFC 1034)\&. Possible modes are
\fB"warn"\fR
(default) and
\fB"ignore"\fR.
\fB"ignore"\fR\&.
.RE
.PP
zonename
.RS 4
The domain name of the zone being checked.
The domain name of the zone being checked\&.
.RE
.PP
filename
.RS 4
The name of the zone file.
The name of the zone file\&.
.RE
.SH "RETURN VALUES"
.PP
\fBnamed\-checkzone\fR
returns an exit status of 1 if errors were detected and 0 otherwise.
returns an exit status of 1 if errors were detected and 0 otherwise\&.
.SH "SEE ALSO"
.PP
\fBnamed\fR(8),
\fBnamed\-checkconf\fR(8),
\fBnamed-checkconf\fR(8),
RFC 1035,
BIND 9 Administrator Reference Manual.
BIND 9 Administrator Reference Manual\&.
.SH "AUTHOR"
.PP
Internet Systems Consortium
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2004\-2007, 2009\-2011, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2000\-2002 Internet Software Consortium.
Copyright \(co 2004-2007, 2009-2011, 2013-2016 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2000-2002 Internet Software Consortium.
.br

View File

@@ -58,7 +58,7 @@ dns_zone_t *zone = NULL;
dns_zonetype_t zonetype = dns_zone_master;
static int dumpzone = 0;
static const char *output_filename;
static char *prog_name = NULL;
static const char *prog_name = NULL;
static const dns_master_style_t *outputstyle = NULL;
static enum { progmode_check, progmode_compile } progmode;

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2004-2007, 2009-2011, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004-2007, 2009-2011, 2013-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2002 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -18,9 +15,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.named-checkzone">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.named-checkzone">
<info>
<date>2013-04-29</date>
</info>
<refentryinfo>
<date>April 29, 2013</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -40,6 +42,8 @@
<year>2011</year>
<year>2013</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
<copyright>
@@ -57,64 +61,64 @@
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>named-checkzone</command>
<arg><option>-d</option></arg>
<arg><option>-h</option></arg>
<arg><option>-j</option></arg>
<arg><option>-q</option></arg>
<arg><option>-v</option></arg>
<arg><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg><option>-f <replaceable class="parameter">format</replaceable></option></arg>
<arg><option>-F <replaceable class="parameter">format</replaceable></option></arg>
<arg><option>-i <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-k <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-m <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-M <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-n <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-L <replaceable class="parameter">serial</replaceable></option></arg>
<arg><option>-o <replaceable class="parameter">filename</replaceable></option></arg>
<arg><option>-r <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-s <replaceable class="parameter">style</replaceable></option></arg>
<arg><option>-S <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-t <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-T <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-w <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-D</option></arg>
<arg><option>-W <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="req">zonename</arg>
<arg choice="req">filename</arg>
<arg choice="opt" rep="norepeat"><option>-d</option></arg>
<arg choice="opt" rep="norepeat"><option>-h</option></arg>
<arg choice="opt" rep="norepeat"><option>-j</option></arg>
<arg choice="opt" rep="norepeat"><option>-q</option></arg>
<arg choice="opt" rep="norepeat"><option>-v</option></arg>
<arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-f <replaceable class="parameter">format</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-F <replaceable class="parameter">format</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-i <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-k <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-m <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-M <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-n <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-L <replaceable class="parameter">serial</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-o <replaceable class="parameter">filename</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-r <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-s <replaceable class="parameter">style</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-S <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-t <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-T <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-w <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-D</option></arg>
<arg choice="opt" rep="norepeat"><option>-W <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="req" rep="norepeat">zonename</arg>
<arg choice="req" rep="norepeat">filename</arg>
</cmdsynopsis>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>named-compilezone</command>
<arg><option>-d</option></arg>
<arg><option>-j</option></arg>
<arg><option>-q</option></arg>
<arg><option>-v</option></arg>
<arg><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg><option>-C <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-f <replaceable class="parameter">format</replaceable></option></arg>
<arg><option>-F <replaceable class="parameter">format</replaceable></option></arg>
<arg><option>-i <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-k <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-m <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-n <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-L <replaceable class="parameter">serial</replaceable></option></arg>
<arg><option>-r <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-s <replaceable class="parameter">style</replaceable></option></arg>
<arg><option>-t <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-T <replaceable class="parameter">mode</replaceable></option></arg>
<arg><option>-w <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-D</option></arg>
<arg><option>-W <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="req"><option>-o <replaceable class="parameter">filename</replaceable></option></arg>
<arg choice="req">zonename</arg>
<arg choice="req">filename</arg>
<arg choice="opt" rep="norepeat"><option>-d</option></arg>
<arg choice="opt" rep="norepeat"><option>-j</option></arg>
<arg choice="opt" rep="norepeat"><option>-q</option></arg>
<arg choice="opt" rep="norepeat"><option>-v</option></arg>
<arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-C <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-f <replaceable class="parameter">format</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-F <replaceable class="parameter">format</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-i <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-k <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-m <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-n <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-L <replaceable class="parameter">serial</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-r <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-s <replaceable class="parameter">style</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-t <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-T <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-w <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-D</option></arg>
<arg choice="opt" rep="norepeat"><option>-W <replaceable class="parameter">mode</replaceable></option></arg>
<arg choice="req" rep="norepeat"><option>-o <replaceable class="parameter">filename</replaceable></option></arg>
<arg choice="req" rep="norepeat">zonename</arg>
<arg choice="req" rep="norepeat">filename</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>named-checkzone</command>
checks the syntax and integrity of a zone file. It performs the
same checks as <command>named</command> does when loading a
@@ -132,10 +136,10 @@
least be as strict as those specified in the
<command>named</command> configuration file.
</para>
</refsect1>
</refsection>
<refsection><info><title>OPTIONS</title></info>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
@@ -289,7 +293,7 @@
<term>-L <replaceable class="parameter">serial</replaceable></term>
<listitem>
<para>
When compiling a zone to 'raw' format, set the "source serial"
When compiling a zone to 'raw' format, set the "source serial"
value in the header to the specified serial number. (This is
expected to be used primarily for testing purposes.)
</para>
@@ -352,7 +356,7 @@
<listitem>
<para>
Check for records that are treated as different by DNSSEC but
are semantically equal in plain DNS.
are semantically equal in plain DNS.
Possible modes are <command>"fail"</command>,
<command>"warn"</command> (default) and
<command>"ignore"</command>.
@@ -473,37 +477,27 @@
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>RETURN VALUES</title></info>
<refsect1>
<title>RETURN VALUES</title>
<para><command>named-checkzone</command>
returns an exit status of 1 if
errors were detected and 0 otherwise.
</para>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>named</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
<citerefentry>
<refentrytitle>named-checkconf</refentrytitle><manvolnum>8</manvolnum>
<refentrytitle>named-checkconf</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
<citetitle>RFC 1035</citetitle>,
<citetitle>BIND 9 Administrator Reference Manual</citetitle>.
</para>
</refsect1>
</refsection>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2004-2007, 2009-2011, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004-2007, 2009-2011, 2013-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2002 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -14,280 +15,399 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>named-checkzone</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.named-checkzone"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">named-checkzone</span>, <span class="application">named-compilezone</span> &#8212; zone file validity checking or converting tool</p>
<p>
<span class="application">named-checkzone</span>,
<span class="application">named-compilezone</span>
&#8212; zone file validity checking or converting tool
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">named-checkzone</code> [<code class="option">-d</code>] [<code class="option">-h</code>] [<code class="option">-j</code>] [<code class="option">-q</code>] [<code class="option">-v</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-f <em class="replaceable"><code>format</code></em></code>] [<code class="option">-F <em class="replaceable"><code>format</code></em></code>] [<code class="option">-i <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-k <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-m <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-M <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-n <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-L <em class="replaceable"><code>serial</code></em></code>] [<code class="option">-o <em class="replaceable"><code>filename</code></em></code>] [<code class="option">-r <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-s <em class="replaceable"><code>style</code></em></code>] [<code class="option">-S <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-T <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-w <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-D</code>] [<code class="option">-W <em class="replaceable"><code>mode</code></em></code>] {zonename} {filename}</p></div>
<div class="cmdsynopsis"><p><code class="command">named-compilezone</code> [<code class="option">-d</code>] [<code class="option">-j</code>] [<code class="option">-q</code>] [<code class="option">-v</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-C <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-f <em class="replaceable"><code>format</code></em></code>] [<code class="option">-F <em class="replaceable"><code>format</code></em></code>] [<code class="option">-i <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-k <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-m <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-n <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-L <em class="replaceable"><code>serial</code></em></code>] [<code class="option">-r <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-s <em class="replaceable"><code>style</code></em></code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-T <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-w <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-D</code>] [<code class="option">-W <em class="replaceable"><code>mode</code></em></code>] {<code class="option">-o <em class="replaceable"><code>filename</code></em></code>} {zonename} {filename}</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543747"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">named-checkzone</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">named-checkzone</code>
[<code class="option">-d</code>]
[<code class="option">-h</code>]
[<code class="option">-j</code>]
[<code class="option">-q</code>]
[<code class="option">-v</code>]
[<code class="option">-c <em class="replaceable"><code>class</code></em></code>]
[<code class="option">-f <em class="replaceable"><code>format</code></em></code>]
[<code class="option">-F <em class="replaceable"><code>format</code></em></code>]
[<code class="option">-i <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-k <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-m <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-M <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-n <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-L <em class="replaceable"><code>serial</code></em></code>]
[<code class="option">-o <em class="replaceable"><code>filename</code></em></code>]
[<code class="option">-r <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-s <em class="replaceable"><code>style</code></em></code>]
[<code class="option">-S <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-t <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-T <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-w <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-D</code>]
[<code class="option">-W <em class="replaceable"><code>mode</code></em></code>]
{zonename}
{filename}
</p></div>
<div class="cmdsynopsis"><p>
<code class="command">named-compilezone</code>
[<code class="option">-d</code>]
[<code class="option">-j</code>]
[<code class="option">-q</code>]
[<code class="option">-v</code>]
[<code class="option">-c <em class="replaceable"><code>class</code></em></code>]
[<code class="option">-C <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-f <em class="replaceable"><code>format</code></em></code>]
[<code class="option">-F <em class="replaceable"><code>format</code></em></code>]
[<code class="option">-i <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-k <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-m <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-n <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-L <em class="replaceable"><code>serial</code></em></code>]
[<code class="option">-r <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-s <em class="replaceable"><code>style</code></em></code>]
[<code class="option">-t <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-T <em class="replaceable"><code>mode</code></em></code>]
[<code class="option">-w <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-D</code>]
[<code class="option">-W <em class="replaceable"><code>mode</code></em></code>]
{<code class="option">-o <em class="replaceable"><code>filename</code></em></code>}
{zonename}
{filename}
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>named-checkzone</strong></span>
checks the syntax and integrity of a zone file. It performs the
same checks as <span><strong class="command">named</strong></span> does when loading a
zone. This makes <span><strong class="command">named-checkzone</strong></span> useful for
same checks as <span class="command"><strong>named</strong></span> does when loading a
zone. This makes <span class="command"><strong>named-checkzone</strong></span> useful for
checking zone files before configuring them into a name server.
</p>
<p>
<span><strong class="command">named-compilezone</strong></span> is similar to
<span><strong class="command">named-checkzone</strong></span>, but it always dumps the
<p>
<span class="command"><strong>named-compilezone</strong></span> is similar to
<span class="command"><strong>named-checkzone</strong></span>, but it always dumps the
zone contents to a specified file in a specified format.
Additionally, it applies stricter check levels by default,
since the dump output will be used as an actual zone file
loaded by <span><strong class="command">named</strong></span>.
loaded by <span class="command"><strong>named</strong></span>.
When manually specified otherwise, the check levels must at
least be as strict as those specified in the
<span><strong class="command">named</strong></span> configuration file.
<span class="command"><strong>named</strong></span> configuration file.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543782"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-d</span></dt>
<dd><p>
<dd>
<p>
Enable debugging.
</p></dd>
</p>
</dd>
<dt><span class="term">-h</span></dt>
<dd><p>
<dd>
<p>
Print the usage summary and exit.
</p></dd>
</p>
</dd>
<dt><span class="term">-q</span></dt>
<dd><p>
<dd>
<p>
Quiet mode - exit code only.
</p></dd>
</p>
</dd>
<dt><span class="term">-v</span></dt>
<dd><p>
Print the version of the <span><strong class="command">named-checkzone</strong></span>
<dd>
<p>
Print the version of the <span class="command"><strong>named-checkzone</strong></span>
program and exit.
</p></dd>
</p>
</dd>
<dt><span class="term">-j</span></dt>
<dd><p>
<dd>
<p>
When loading the zone file read the journal if it exists.
</p></dd>
</p>
</dd>
<dt><span class="term">-c <em class="replaceable"><code>class</code></em></span></dt>
<dd><p>
<dd>
<p>
Specify the class of the zone. If not specified, "IN" is assumed.
</p></dd>
</p>
</dd>
<dt><span class="term">-i <em class="replaceable"><code>mode</code></em></span></dt>
<dd>
<p>
<p>
Perform post-load zone integrity checks. Possible modes are
<span><strong class="command">"full"</strong></span> (default),
<span><strong class="command">"full-sibling"</strong></span>,
<span><strong class="command">"local"</strong></span>,
<span><strong class="command">"local-sibling"</strong></span> and
<span><strong class="command">"none"</strong></span>.
<span class="command"><strong>"full"</strong></span> (default),
<span class="command"><strong>"full-sibling"</strong></span>,
<span class="command"><strong>"local"</strong></span>,
<span class="command"><strong>"local-sibling"</strong></span> and
<span class="command"><strong>"none"</strong></span>.
</p>
<p>
Mode <span><strong class="command">"full"</strong></span> checks that MX records
<p>
Mode <span class="command"><strong>"full"</strong></span> checks that MX records
refer to A or AAAA record (both in-zone and out-of-zone
hostnames). Mode <span><strong class="command">"local"</strong></span> only
hostnames). Mode <span class="command"><strong>"local"</strong></span> only
checks MX records which refer to in-zone hostnames.
</p>
<p>
Mode <span><strong class="command">"full"</strong></span> checks that SRV records
<p>
Mode <span class="command"><strong>"full"</strong></span> checks that SRV records
refer to A or AAAA record (both in-zone and out-of-zone
hostnames). Mode <span><strong class="command">"local"</strong></span> only
hostnames). Mode <span class="command"><strong>"local"</strong></span> only
checks SRV records which refer to in-zone hostnames.
</p>
<p>
Mode <span><strong class="command">"full"</strong></span> checks that delegation NS
<p>
Mode <span class="command"><strong>"full"</strong></span> checks that delegation NS
records refer to A or AAAA record (both in-zone and out-of-zone
hostnames). It also checks that glue address records
in the zone match those advertised by the child.
Mode <span><strong class="command">"local"</strong></span> only checks NS records which
Mode <span class="command"><strong>"local"</strong></span> only checks NS records which
refer to in-zone hostnames or that some required glue exists,
that is when the nameserver is in a child zone.
</p>
<p>
Mode <span><strong class="command">"full-sibling"</strong></span> and
<span><strong class="command">"local-sibling"</strong></span> disable sibling glue
checks but are otherwise the same as <span><strong class="command">"full"</strong></span>
and <span><strong class="command">"local"</strong></span> respectively.
<p>
Mode <span class="command"><strong>"full-sibling"</strong></span> and
<span class="command"><strong>"local-sibling"</strong></span> disable sibling glue
checks but are otherwise the same as <span class="command"><strong>"full"</strong></span>
and <span class="command"><strong>"local"</strong></span> respectively.
</p>
<p>
Mode <span><strong class="command">"none"</strong></span> disables the checks.
<p>
Mode <span class="command"><strong>"none"</strong></span> disables the checks.
</p>
</dd>
</dd>
<dt><span class="term">-f <em class="replaceable"><code>format</code></em></span></dt>
<dd><p>
<dd>
<p>
Specify the format of the zone file.
Possible formats are <span><strong class="command">"text"</strong></span> (default)
and <span><strong class="command">"raw"</strong></span>.
</p></dd>
Possible formats are <span class="command"><strong>"text"</strong></span> (default)
and <span class="command"><strong>"raw"</strong></span>.
</p>
</dd>
<dt><span class="term">-F <em class="replaceable"><code>format</code></em></span></dt>
<dd>
<p>
<p>
Specify the format of the output file specified.
For <span><strong class="command">named-checkzone</strong></span>,
For <span class="command"><strong>named-checkzone</strong></span>,
this does not cause any effects unless it dumps the zone
contents.
</p>
<p>
Possible formats are <span><strong class="command">"text"</strong></span> (default)
and <span><strong class="command">"raw"</strong></span> or <span><strong class="command">"raw=N"</strong></span>,
<p>
Possible formats are <span class="command"><strong>"text"</strong></span> (default)
and <span class="command"><strong>"raw"</strong></span> or <span class="command"><strong>"raw=N"</strong></span>,
which store the zone in a binary format for rapid loading
by <span><strong class="command">named</strong></span>. <span><strong class="command">"raw=N"</strong></span>
by <span class="command"><strong>named</strong></span>. <span class="command"><strong>"raw=N"</strong></span>
specifies the format version of the raw zone file: if N
is 0, the raw file can be read by any version of
<span><strong class="command">named</strong></span>; if N is 1, the file can be read
<span class="command"><strong>named</strong></span>; if N is 1, the file can be read
by release 9.9.0 or higher. The default is 1.
</p>
</dd>
</dd>
<dt><span class="term">-k <em class="replaceable"><code>mode</code></em></span></dt>
<dd><p>
Perform <span><strong class="command">"check-names"</strong></span> checks with the
<dd>
<p>
Perform <span class="command"><strong>"check-names"</strong></span> checks with the
specified failure mode.
Possible modes are <span><strong class="command">"fail"</strong></span>
(default for <span><strong class="command">named-compilezone</strong></span>),
<span><strong class="command">"warn"</strong></span>
(default for <span><strong class="command">named-checkzone</strong></span>) and
<span><strong class="command">"ignore"</strong></span>.
</p></dd>
Possible modes are <span class="command"><strong>"fail"</strong></span>
(default for <span class="command"><strong>named-compilezone</strong></span>),
<span class="command"><strong>"warn"</strong></span>
(default for <span class="command"><strong>named-checkzone</strong></span>) and
<span class="command"><strong>"ignore"</strong></span>.
</p>
</dd>
<dt><span class="term">-L <em class="replaceable"><code>serial</code></em></span></dt>
<dd><p>
When compiling a zone to 'raw' format, set the "source serial"
<dd>
<p>
When compiling a zone to 'raw' format, set the "source serial"
value in the header to the specified serial number. (This is
expected to be used primarily for testing purposes.)
</p></dd>
</p>
</dd>
<dt><span class="term">-m <em class="replaceable"><code>mode</code></em></span></dt>
<dd><p>
<dd>
<p>
Specify whether MX records should be checked to see if they
are addresses. Possible modes are <span><strong class="command">"fail"</strong></span>,
<span><strong class="command">"warn"</strong></span> (default) and
<span><strong class="command">"ignore"</strong></span>.
</p></dd>
are addresses. Possible modes are <span class="command"><strong>"fail"</strong></span>,
<span class="command"><strong>"warn"</strong></span> (default) and
<span class="command"><strong>"ignore"</strong></span>.
</p>
</dd>
<dt><span class="term">-M <em class="replaceable"><code>mode</code></em></span></dt>
<dd><p>
<dd>
<p>
Check if a MX record refers to a CNAME.
Possible modes are <span><strong class="command">"fail"</strong></span>,
<span><strong class="command">"warn"</strong></span> (default) and
<span><strong class="command">"ignore"</strong></span>.
</p></dd>
Possible modes are <span class="command"><strong>"fail"</strong></span>,
<span class="command"><strong>"warn"</strong></span> (default) and
<span class="command"><strong>"ignore"</strong></span>.
</p>
</dd>
<dt><span class="term">-n <em class="replaceable"><code>mode</code></em></span></dt>
<dd><p>
<dd>
<p>
Specify whether NS records should be checked to see if they
are addresses.
Possible modes are <span><strong class="command">"fail"</strong></span>
(default for <span><strong class="command">named-compilezone</strong></span>),
<span><strong class="command">"warn"</strong></span>
(default for <span><strong class="command">named-checkzone</strong></span>) and
<span><strong class="command">"ignore"</strong></span>.
</p></dd>
Possible modes are <span class="command"><strong>"fail"</strong></span>
(default for <span class="command"><strong>named-compilezone</strong></span>),
<span class="command"><strong>"warn"</strong></span>
(default for <span class="command"><strong>named-checkzone</strong></span>) and
<span class="command"><strong>"ignore"</strong></span>.
</p>
</dd>
<dt><span class="term">-o <em class="replaceable"><code>filename</code></em></span></dt>
<dd><p>
<dd>
<p>
Write zone output to <code class="filename">filename</code>.
If <code class="filename">filename</code> is <code class="filename">-</code> then
write to standard out.
This is mandatory for <span><strong class="command">named-compilezone</strong></span>.
</p></dd>
This is mandatory for <span class="command"><strong>named-compilezone</strong></span>.
</p>
</dd>
<dt><span class="term">-r <em class="replaceable"><code>mode</code></em></span></dt>
<dd><p>
<dd>
<p>
Check for records that are treated as different by DNSSEC but
are semantically equal in plain DNS.
Possible modes are <span><strong class="command">"fail"</strong></span>,
<span><strong class="command">"warn"</strong></span> (default) and
<span><strong class="command">"ignore"</strong></span>.
</p></dd>
are semantically equal in plain DNS.
Possible modes are <span class="command"><strong>"fail"</strong></span>,
<span class="command"><strong>"warn"</strong></span> (default) and
<span class="command"><strong>"ignore"</strong></span>.
</p>
</dd>
<dt><span class="term">-s <em class="replaceable"><code>style</code></em></span></dt>
<dd><p>
<dd>
<p>
Specify the style of the dumped zone file.
Possible styles are <span><strong class="command">"full"</strong></span> (default)
and <span><strong class="command">"relative"</strong></span>.
Possible styles are <span class="command"><strong>"full"</strong></span> (default)
and <span class="command"><strong>"relative"</strong></span>.
The full format is most suitable for processing
automatically by a separate script.
On the other hand, the relative format is more
human-readable and is thus suitable for editing by hand.
For <span><strong class="command">named-checkzone</strong></span>
For <span class="command"><strong>named-checkzone</strong></span>
this does not cause any effects unless it dumps the zone
contents.
It also does not have any meaning if the output format
is not text.
</p></dd>
</p>
</dd>
<dt><span class="term">-S <em class="replaceable"><code>mode</code></em></span></dt>
<dd><p>
<dd>
<p>
Check if a SRV record refers to a CNAME.
Possible modes are <span><strong class="command">"fail"</strong></span>,
<span><strong class="command">"warn"</strong></span> (default) and
<span><strong class="command">"ignore"</strong></span>.
</p></dd>
Possible modes are <span class="command"><strong>"fail"</strong></span>,
<span class="command"><strong>"warn"</strong></span> (default) and
<span class="command"><strong>"ignore"</strong></span>.
</p>
</dd>
<dt><span class="term">-t <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
<dd>
<p>
Chroot to <code class="filename">directory</code> so that
include
directives in the configuration file are processed as if
run by a similarly chrooted named.
</p></dd>
</p>
</dd>
<dt><span class="term">-T <em class="replaceable"><code>mode</code></em></span></dt>
<dd><p>
<dd>
<p>
Check if Sender Policy Framework (SPF) records exist
and issues a warning if an SPF-formatted TXT record is
not also present. Possible modes are <span><strong class="command">"warn"</strong></span>
(default), <span><strong class="command">"ignore"</strong></span>.
</p></dd>
not also present. Possible modes are <span class="command"><strong>"warn"</strong></span>
(default), <span class="command"><strong>"ignore"</strong></span>.
</p>
</dd>
<dt><span class="term">-w <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
<dd>
<p>
chdir to <code class="filename">directory</code> so that
relative
filenames in master file $INCLUDE directives work. This
is similar to the directory clause in
<code class="filename">named.conf</code>.
</p></dd>
</p>
</dd>
<dt><span class="term">-D</span></dt>
<dd><p>
<dd>
<p>
Dump zone file in canonical format.
This is always enabled for <span><strong class="command">named-compilezone</strong></span>.
</p></dd>
This is always enabled for <span class="command"><strong>named-compilezone</strong></span>.
</p>
</dd>
<dt><span class="term">-W <em class="replaceable"><code>mode</code></em></span></dt>
<dd><p>
<dd>
<p>
Specify whether to check for non-terminal wildcards.
Non-terminal wildcards are almost always the result of a
failure to understand the wildcard matching algorithm (RFC 1034).
Possible modes are <span><strong class="command">"warn"</strong></span> (default)
Possible modes are <span class="command"><strong>"warn"</strong></span> (default)
and
<span><strong class="command">"ignore"</strong></span>.
</p></dd>
<span class="command"><strong>"ignore"</strong></span>.
</p>
</dd>
<dt><span class="term">zonename</span></dt>
<dd><p>
<dd>
<p>
The domain name of the zone being checked.
</p></dd>
</p>
</dd>
<dt><span class="term">filename</span></dt>
<dd><p>
<dd>
<p>
The name of the zone file.
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2544622"></a><h2>RETURN VALUES</h2>
<p><span><strong class="command">named-checkzone</strong></span>
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>RETURN VALUES</h2>
<p><span class="command"><strong>named-checkzone</strong></span>
returns an exit status of 1 if
errors were detected and 0 otherwise.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2544634"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
<span class="citerefentry"><span class="refentrytitle">named-checkconf</span>(8)</span>,
</div>
<div class="refsection">
<a name="id-1.10"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">named</span>(8)
</span>,
<span class="citerefentry">
<span class="refentrytitle">named-checkconf</span>(8)
</span>,
<em class="citetitle">RFC 1035</em>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2544667"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,27 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\check-tool.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\named-checkconf.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\check-tool.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\named-checkconf.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@@ -56,13 +56,14 @@
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<FunctionLevelLinking>false</FunctionLevelLinking>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<BrowseInformation>true</BrowseInformation>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\dns\include;..\..\..\lib\bind9\include;..\..\..\lib\isccfg\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -89,6 +90,7 @@
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\dns\include;..\..\..\lib\bind9\include;..\..\..\lib\isccfg\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -110,4 +112,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

View File

@@ -1,18 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\check-tool.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\check-tool.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@@ -59,13 +59,14 @@
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<FunctionLevelLinking>false</FunctionLevelLinking>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<BrowseInformation>true</BrowseInformation>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@..\include;..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\isccfg\include;..\..\..\lib\dns\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Lib>
<OutputFile>.\$(Configuration)\$(TargetName)$(TargetExt)</OutputFile>
@@ -88,6 +89,7 @@
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@..\include;..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\isccfg\include;..\..\..\lib\dns\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Lib>
<OutputFile>.\$(Configuration)\$(TargetName)$(TargetExt)</OutputFile>
@@ -96,4 +98,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

View File

@@ -1,27 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\check-tool.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\named-checkzone.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\check-tool.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\named-checkzone.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@@ -56,13 +56,14 @@
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<FunctionLevelLinking>false</FunctionLevelLinking>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<BrowseInformation>true</BrowseInformation>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\dns\include;..\..\..\lib\bind9\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -95,6 +96,7 @@ copy /Y named-checkzone.ilk named-compilezone.ilk
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\dns\include;..\..\..\lib\bind9\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -121,4 +123,4 @@ copy /Y named-checkzone.exe named-compilezone.exe
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2009, 2012 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 2009, 2012, 2015-2017 Internet Systems Consortium, Inc. ("ISC")
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
@@ -18,7 +18,11 @@ srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
@BIND9_VERSION@
# Attempt to disable parallel processing.
.NOTPARALLEL:
.NO_PARALLEL:
VERSION=@BIND9_VERSION@
@BIND9_MAKE_INCLUDES@
@@ -74,11 +78,11 @@ rndc-confgen.@O@: rndc-confgen.c
ddns-confgen.@O@: ddns-confgen.c
${LIBTOOL_MODE_COMPILE} ${CC} ${ALL_CFLAGS} -c ${srcdir}/ddns-confgen.c
rndc-confgen@EXEEXT@: rndc-confgen.@O@ util.@O@ keygen.@O@ ${UOBJS} ${CONFDEPLIBS}
rndc-confgen@EXEEXT@: rndc-confgen.@O@ util.@O@ keygen.@O@ ${CONFDEPLIBS}
export BASEOBJS="rndc-confgen.@O@ util.@O@ keygen.@O@ ${UOBJS}"; \
${FINALBUILDCMD}
ddns-confgen@EXEEXT@: ddns-confgen.@O@ util.@O@ keygen.@O@ ${UOBJS} ${CONFDEPLIBS}
ddns-confgen@EXEEXT@: ddns-confgen.@O@ util.@O@ keygen.@O@ ${CONFDEPLIBS}
export BASEOBJS="ddns-confgen.@O@ util.@O@ keygen.@O@ ${UOBJS}"; \
${FINALBUILDCMD}
@@ -97,5 +101,13 @@ install:: rndc-confgen@EXEEXT@ ddns-confgen@EXEEXT@ installdirs
${INSTALL_DATA} ${srcdir}/rndc-confgen.8 ${DESTDIR}${mandir}/man8
${INSTALL_DATA} ${srcdir}/ddns-confgen.8 ${DESTDIR}${mandir}/man8
uninstall::
rm -f ${DESTDIR}${mandir}/man8/tsig-keygen.8
rm -f ${DESTDIR}${sbindir}/tsig-keygen@EXEEXT@
rm -f ${DESTDIR}${mandir}/man8/ddns-confgen.8
rm -f ${DESTDIR}${mandir}/man8/rndc-confgen.8
${LIBTOOL_MODE_UNINSTALL} rm -f ${DESTDIR}${sbindir}/ddns-confgen@EXEEXT@
${LIBTOOL_MODE_UNINSTALL} rm -f ${DESTDIR}${sbindir}/rndc-confgen@EXEEXT@
clean distclean maintainer-clean::
rm -f ${TARGETS}

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2009, 2014 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
@@ -12,26 +12,41 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
.\" Title: ddns\-confgen
'\" t
.\" Title: ddns-confgen
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: September 18, 2009
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2009-09-18
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "DDNS\-CONFGEN" "8" "September 18, 2009" "BIND9" "BIND9"
.TH "DDNS\-CONFGEN" "8" "2009\-09\-18" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
ddns\-confgen \- ddns key generation tool
ddns-confgen \- ddns key generation tool
.SH "SYNOPSIS"
.HP 13
.HP \w'\fBddns\-confgen\fR\ 'u
\fBddns\-confgen\fR [\fB\-a\ \fR\fB\fIalgorithm\fR\fR] [\fB\-h\fR] [\fB\-k\ \fR\fB\fIkeyname\fR\fR] [\fB\-r\ \fR\fB\fIrandomfile\fR\fR] [\-s\ \fIname\fR | \-z\ \fIzone\fR] [\fB\-q\fR] [name]
.SH "DESCRIPTION"
.PP
@@ -39,46 +54,46 @@ ddns\-confgen \- ddns key generation tool
generates a key for use by
\fBnsupdate\fR
and
\fBnamed\fR. It simplifies configuration of dynamic zones by generating a key and providing the
\fBnamed\fR\&. It simplifies configuration of dynamic zones by generating a key and providing the
\fBnsupdate\fR
and
\fBnamed.conf\fR
\fBnamed\&.conf\fR
syntax that will be needed to use it, including an example
\fBupdate\-policy\fR
statement.
statement\&.
.PP
If a domain name is specified on the command line, it will be used in the name of the generated key and in the sample
\fBnamed.conf\fR
syntax. For example,
\fBddns\-confgen example.com\fR
would generate a key called "ddns\-key.example.com", and sample
\fBnamed.conf\fR
command that could be used in the zone definition for "example.com".
\fBnamed\&.conf\fR
syntax\&. For example,
\fBddns\-confgen example\&.com\fR
would generate a key called "ddns\-key\&.example\&.com", and sample
\fBnamed\&.conf\fR
command that could be used in the zone definition for "example\&.com"\&.
.PP
Note that
\fBnamed\fR
itself can configure a local DDNS key for use with
\fBnsupdate \-l\fR.
\fBnsupdate \-l\fR\&.
\fBddns\-confgen\fR
is only needed when a more elaborate configuration is required: for instance, if
\fBnsupdate\fR
is to be used from a remote system.
is to be used from a remote system\&.
.SH "OPTIONS"
.PP
\-a \fIalgorithm\fR
.RS 4
Specifies the algorithm to use for the TSIG key. Available choices are: hmac\-md5, hmac\-sha1, hmac\-sha224, hmac\-sha256, hmac\-sha384 and hmac\-sha512. The default is hmac\-sha256.
Specifies the algorithm to use for the TSIG key\&. Available choices are: hmac\-md5, hmac\-sha1, hmac\-sha224, hmac\-sha256, hmac\-sha384 and hmac\-sha512\&. The default is hmac\-sha256\&.
.RE
.PP
\-h
.RS 4
Prints a short summary of the options and arguments to
\fBddns\-confgen\fR.
\fBddns\-confgen\fR\&.
.RE
.PP
\-k \fIkeyname\fR
.RS 4
Specifies the key name of the DDNS authentication key. The default is
Specifies the key name of the DDNS authentication key\&. The default is
\fBddns\-key\fR
when neither the
\fB\-s\fR
@@ -86,58 +101,59 @@ nor
\fB\-z\fR
option is specified; otherwise, the default is
\fBddns\-key\fR
as a separate label followed by the argument of the option, e.g.,
\fBddns\-key.example.com.\fR
The key name must have the format of a valid domain name, consisting of letters, digits, hyphens and periods.
as a separate label followed by the argument of the option, e\&.g\&.,
\fBddns\-key\&.example\&.com\&.\fR
The key name must have the format of a valid domain name, consisting of letters, digits, hyphens and periods\&.
.RE
.PP
\-q
.RS 4
Quiet mode: Print only the key, with no explanatory text or usage examples.
Quiet mode: Print only the key, with no explanatory text or usage examples\&.
.RE
.PP
\-r \fIrandomfile\fR
.RS 4
Specifies a source of random data for generating the authorization. If the operating system does not provide a
\fI/dev/random\fR
or equivalent device, the default source of randomness is keyboard input.
\fIrandomdev\fR
specifies the name of a character device or file containing random data to be used instead of the default. The special value
\fIkeyboard\fR
indicates that keyboard input should be used.
Specifies a source of random data for generating the authorization\&. If the operating system does not provide a
/dev/random
or equivalent device, the default source of randomness is keyboard input\&.
randomdev
specifies the name of a character device or file containing random data to be used instead of the default\&. The special value
keyboard
indicates that keyboard input should be used\&.
.RE
.PP
\-s \fIname\fR
.RS 4
Single host mode: The example
\fBnamed.conf\fR
\fBnamed\&.conf\fR
text shows how to set an update policy for the specified
\fIname\fR
using the "name" nametype. The default key name is ddns\-key.\fIname\fR. Note that the "self" nametype cannot be used, since the name to be updated may differ from the key name. This option cannot be used with the
using the "name" nametype\&. The default key name is ddns\-key\&.\fIname\fR\&. Note that the "self" nametype cannot be used, since the name to be updated may differ from the key name\&. This option cannot be used with the
\fB\-z\fR
option.
option\&.
.RE
.PP
\-z \fIzone\fR
.RS 4
zone mode: The example
\fBnamed.conf\fR
\fBnamed\&.conf\fR
text shows how to set an update policy for the specified
\fIzone\fR
using the "zonesub" nametype, allowing updates to all subdomain names within that
\fIzone\fR. This option cannot be used with the
\fIzone\fR\&. This option cannot be used with the
\fB\-s\fR
option.
option\&.
.RE
.SH "SEE ALSO"
.PP
\fBnsupdate\fR(1),
\fBnamed.conf\fR(5),
\fBnamed\fR(8),
BIND 9 Administrator Reference Manual.
BIND 9 Administrator Reference Manual\&.
.SH "AUTHOR"
.PP
Internet Systems Consortium
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2009, 2014 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.br

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2009, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -17,9 +14,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.ddns-confgen">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.ddns-confgen">
<info>
<date>2009-09-18</date>
</info>
<refentryinfo>
<date>September 18, 2009</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -37,28 +39,30 @@
<copyright>
<year>2009</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>ddns-confgen</command>
<arg><option>-a <replaceable class="parameter">algorithm</replaceable></option></arg>
<arg><option>-h</option></arg>
<arg><option>-k <replaceable class="parameter">keyname</replaceable></option></arg>
<arg><option>-r <replaceable class="parameter">randomfile</replaceable></option></arg>
<group>
<arg choice="plain">-s <replaceable class="parameter">name</replaceable></arg>
<arg choice="plain">-z <replaceable class="parameter">zone</replaceable></arg>
<arg choice="opt" rep="norepeat"><option>-a <replaceable class="parameter">algorithm</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-h</option></arg>
<arg choice="opt" rep="norepeat"><option>-k <replaceable class="parameter">keyname</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-r <replaceable class="parameter">randomfile</replaceable></option></arg>
<group choice="opt" rep="norepeat">
<arg choice="plain" rep="norepeat">-s <replaceable class="parameter">name</replaceable></arg>
<arg choice="plain" rep="norepeat">-z <replaceable class="parameter">zone</replaceable></arg>
</group>
<arg><option>-q</option></arg>
<arg choice="opt">name</arg>
<arg choice="opt" rep="norepeat"><option>-q</option></arg>
<arg choice="opt" rep="norepeat">name</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>ddns-confgen</command>
generates a key for use by <command>nsupdate</command>
and <command>named</command>. It simplifies configuration
@@ -81,14 +85,14 @@
<para>
Note that <command>named</command> itself can configure a
local DDNS key for use with <command>nsupdate -l</command>.
<command>ddns-confgen</command> is only needed when a
<command>ddns-confgen</command> is only needed when a
more elaborate configuration is required: for instance, if
<command>nsupdate</command> is to be used from a remote system.
</para>
</refsect1>
</refsection>
<refsection><info><title>OPTIONS</title></info>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
@@ -188,10 +192,10 @@
</listitem>
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>nsupdate</refentrytitle><manvolnum>1</manvolnum>
</citerefentry>,
@@ -203,16 +207,6 @@
</citerefentry>,
<citetitle>BIND 9 Administrator Reference Manual</citetitle>.
</para>
</refsect1>
</refsection>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2009, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -13,66 +14,100 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>ddns-confgen</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.ddns-confgen"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">ddns-confgen</span> &#8212; ddns key generation tool</p>
</div>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">ddns-confgen</code> [<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>] [<code class="option">-h</code>] [<code class="option">-k <em class="replaceable"><code>keyname</code></em></code>] [<code class="option">-r <em class="replaceable"><code>randomfile</code></em></code>] [ -s <em class="replaceable"><code>name</code></em> | -z <em class="replaceable"><code>zone</code></em> ] [<code class="option">-q</code>] [name]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543406"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">ddns-confgen</strong></span>
generates a key for use by <span><strong class="command">nsupdate</strong></span>
and <span><strong class="command">named</strong></span>. It simplifies configuration
of dynamic zones by generating a key and providing the
<span><strong class="command">nsupdate</strong></span> and <span><strong class="command">named.conf</strong></span>
syntax that will be needed to use it, including an example
<span><strong class="command">update-policy</strong></span> statement.
</p>
<p>
<span class="application">ddns-confgen</span>
&#8212; ddns key generation tool
</p>
</div>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p>
<code class="command">ddns-confgen</code>
[<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>]
[<code class="option">-h</code>]
[<code class="option">-k <em class="replaceable"><code>keyname</code></em></code>]
[<code class="option">-r <em class="replaceable"><code>randomfile</code></em></code>]
[
-s <em class="replaceable"><code>name</code></em>
| -z <em class="replaceable"><code>zone</code></em>
]
[<code class="option">-q</code>]
[name]
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>ddns-confgen</strong></span>
generates a key for use by <span class="command"><strong>nsupdate</strong></span>
and <span class="command"><strong>named</strong></span>. It simplifies configuration
of dynamic zones by generating a key and providing the
<span class="command"><strong>nsupdate</strong></span> and <span class="command"><strong>named.conf</strong></span>
syntax that will be needed to use it, including an example
<span class="command"><strong>update-policy</strong></span> statement.
</p>
<p>
If a domain name is specified on the command line, it will
be used in the name of the generated key and in the sample
<span><strong class="command">named.conf</strong></span> syntax. For example,
<span><strong class="command">ddns-confgen example.com</strong></span> would
<span class="command"><strong>named.conf</strong></span> syntax. For example,
<span class="command"><strong>ddns-confgen example.com</strong></span> would
generate a key called "ddns-key.example.com", and sample
<span><strong class="command">named.conf</strong></span> command that could be used
<span class="command"><strong>named.conf</strong></span> command that could be used
in the zone definition for "example.com".
</p>
<p>
Note that <span><strong class="command">named</strong></span> itself can configure a
local DDNS key for use with <span><strong class="command">nsupdate -l</strong></span>.
<span><strong class="command">ddns-confgen</strong></span> is only needed when a
<p>
Note that <span class="command"><strong>named</strong></span> itself can configure a
local DDNS key for use with <span class="command"><strong>nsupdate -l</strong></span>.
<span class="command"><strong>ddns-confgen</strong></span> is only needed when a
more elaborate configuration is required: for instance, if
<span><strong class="command">nsupdate</strong></span> is to be used from a remote system.
<span class="command"><strong>nsupdate</strong></span> is to be used from a remote system.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543466"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the algorithm to use for the TSIG key. Available
choices are: hmac-md5, hmac-sha1, hmac-sha224, hmac-sha256,
hmac-sha384 and hmac-sha512. The default is hmac-sha256.
</p></dd>
</p>
</dd>
<dt><span class="term">-h</span></dt>
<dd><p>
<dd>
<p>
Prints a short summary of the options and arguments to
<span><strong class="command">ddns-confgen</strong></span>.
</p></dd>
<span class="command"><strong>ddns-confgen</strong></span>.
</p>
</dd>
<dt><span class="term">-k <em class="replaceable"><code>keyname</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the key name of the DDNS authentication key.
The default is <code class="constant">ddns-key</code> when neither
the <code class="option">-s</code> nor <code class="option">-z</code> option is
@@ -82,14 +117,18 @@
<code class="constant">ddns-key.example.com.</code>
The key name must have the format of a valid domain name,
consisting of letters, digits, hyphens and periods.
</p></dd>
</p>
</dd>
<dt><span class="term">-q</span></dt>
<dd><p>
<dd>
<p>
Quiet mode: Print only the key, with no explanatory text or
usage examples.
</p></dd>
</p>
</dd>
<dt><span class="term">-r <em class="replaceable"><code>randomfile</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies a source of random data for generating the
authorization. If the operating system does not provide a
<code class="filename">/dev/random</code> or equivalent device, the
@@ -99,10 +138,12 @@
instead of the default. The special value
<code class="filename">keyboard</code> indicates that keyboard input
should be used.
</p></dd>
</p>
</dd>
<dt><span class="term">-s <em class="replaceable"><code>name</code></em></span></dt>
<dd><p>
Single host mode: The example <span><strong class="command">named.conf</strong></span> text
<dd>
<p>
Single host mode: The example <span class="command"><strong>named.conf</strong></span> text
shows how to set an update policy for the specified
<em class="replaceable"><code>name</code></em>
using the "name" nametype.
@@ -111,31 +152,38 @@
Note that the "self" nametype cannot be used, since
the name to be updated may differ from the key name.
This option cannot be used with the <code class="option">-z</code> option.
</p></dd>
</p>
</dd>
<dt><span class="term">-z <em class="replaceable"><code>zone</code></em></span></dt>
<dd><p>
zone mode: The example <span><strong class="command">named.conf</strong></span> text
<dd>
<p>
zone mode: The example <span class="command"><strong>named.conf</strong></span> text
shows how to set an update policy for the specified
<em class="replaceable"><code>zone</code></em>
using the "zonesub" nametype, allowing updates to all subdomain
names within
that <em class="replaceable"><code>zone</code></em>.
This option cannot be used with the <code class="option">-s</code> option.
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543654"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">nsupdate</span>(1)</span>,
<span class="citerefentry"><span class="refentrytitle">named.conf</span>(5)</span>,
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">nsupdate</span>(1)
</span>,
<span class="citerefentry">
<span class="refentrytitle">named.conf</span>(5)
</span>,
<span class="citerefentry">
<span class="refentrytitle">named</span>(8)
</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543692"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2004, 2005, 2007, 2009, 2014 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2004, 2005, 2007, 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2001, 2003 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
@@ -13,58 +13,73 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
.\" Title: rndc\-confgen
'\" t
.\" Title: rndc-confgen
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: June 15, 2009
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2009-06-15
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "RNDC\-CONFGEN" "8" "June 15, 2009" "BIND9" "BIND9"
.TH "RNDC\-CONFGEN" "8" "2009\-06\-15" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
rndc\-confgen \- rndc key generation tool
rndc-confgen \- rndc key generation tool
.SH "SYNOPSIS"
.HP 13
.HP \w'\fBrndc\-confgen\fR\ 'u
\fBrndc\-confgen\fR [\fB\-a\fR] [\fB\-b\ \fR\fB\fIkeysize\fR\fR] [\fB\-c\ \fR\fB\fIkeyfile\fR\fR] [\fB\-h\fR] [\fB\-k\ \fR\fB\fIkeyname\fR\fR] [\fB\-p\ \fR\fB\fIport\fR\fR] [\fB\-r\ \fR\fB\fIrandomfile\fR\fR] [\fB\-s\ \fR\fB\fIaddress\fR\fR] [\fB\-t\ \fR\fB\fIchrootdir\fR\fR] [\fB\-u\ \fR\fB\fIuser\fR\fR]
.SH "DESCRIPTION"
.PP
\fBrndc\-confgen\fR
generates configuration files for
\fBrndc\fR. It can be used as a convenient alternative to writing the
\fIrndc.conf\fR
\fBrndc\fR\&. It can be used as a convenient alternative to writing the
rndc\&.conf
file and the corresponding
\fBcontrols\fR
and
\fBkey\fR
statements in
\fInamed.conf\fR
by hand. Alternatively, it can be run with the
named\&.conf
by hand\&. Alternatively, it can be run with the
\fB\-a\fR
option to set up a
\fIrndc.key\fR
rndc\&.key
file and avoid the need for a
\fIrndc.conf\fR
rndc\&.conf
file and a
\fBcontrols\fR
statement altogether.
statement altogether\&.
.SH "OPTIONS"
.PP
\-a
.RS 4
Do automatic
\fBrndc\fR
configuration. This creates a file
\fIrndc.key\fR
configuration\&. This creates a file
rndc\&.key
in
\fI/etc\fR
/etc
(or whatever
\fIsysconfdir\fR
was specified as when
@@ -73,13 +88,13 @@ was built) that is read by both
\fBrndc\fR
and
\fBnamed\fR
on startup. The
\fIrndc.key\fR
on startup\&. The
rndc\&.key
file defines a default command channel and authentication key allowing
\fBrndc\fR
to communicate with
\fBnamed\fR
on the local host with no further configuration.
on the local host with no further configuration\&.
.sp
Running
\fBrndc\-confgen \-a\fR
@@ -87,8 +102,8 @@ allows BIND 9 and
\fBrndc\fR
to be used as drop\-in replacements for BIND 8 and
\fBndc\fR, with no changes to the existing BIND 8
\fInamed.conf\fR
file.
named\&.conf
file\&.
.sp
If a more elaborate configuration than that generated by
\fBrndc\-confgen \-a\fR
@@ -97,15 +112,15 @@ is required, for example if rndc is to be used remotely, you should run
without the
\fB\-a\fR
option and set up a
\fIrndc.conf\fR
rndc\&.conf
and
\fInamed.conf\fR
as directed.
named\&.conf
as directed\&.
.RE
.PP
\-b \fIkeysize\fR
.RS 4
Specifies the size of the authentication key in bits. Must be between 1 and 512 bits; the default is 128.
Specifies the size of the authentication key in bits\&. Must be between 1 and 512 bits; the default is 128\&.
.RE
.PP
\-c \fIkeyfile\fR
@@ -113,19 +128,19 @@ Specifies the size of the authentication key in bits. Must be between 1 and 512
Used with the
\fB\-a\fR
option to specify an alternate location for
\fIrndc.key\fR.
rndc\&.key\&.
.RE
.PP
\-h
.RS 4
Prints a short summary of the options and arguments to
\fBrndc\-confgen\fR.
\fBrndc\-confgen\fR\&.
.RE
.PP
\-k \fIkeyname\fR
.RS 4
Specifies the key name of the rndc authentication key. This must be a valid domain name. The default is
\fBrndc\-key\fR.
Specifies the key name of the rndc authentication key\&. This must be a valid domain name\&. The default is
\fBrndc\-key\fR\&.
.RE
.PP
\-p \fIport\fR
@@ -133,18 +148,18 @@ Specifies the key name of the rndc authentication key. This must be a valid doma
Specifies the command channel port where
\fBnamed\fR
listens for connections from
\fBrndc\fR. The default is 953.
\fBrndc\fR\&. The default is 953\&.
.RE
.PP
\-r \fIrandomfile\fR
.RS 4
Specifies a source of random data for generating the authorization. If the operating system does not provide a
\fI/dev/random\fR
or equivalent device, the default source of randomness is keyboard input.
\fIrandomdev\fR
specifies the name of a character device or file containing random data to be used instead of the default. The special value
\fIkeyboard\fR
indicates that keyboard input should be used.
Specifies a source of random data for generating the authorization\&. If the operating system does not provide a
/dev/random
or equivalent device, the default source of randomness is keyboard input\&.
randomdev
specifies the name of a character device or file containing random data to be used instead of the default\&. The special value
keyboard
indicates that keyboard input should be used\&.
.RE
.PP
\-s \fIaddress\fR
@@ -152,7 +167,7 @@ indicates that keyboard input should be used.
Specifies the IP address where
\fBnamed\fR
listens for command channel connections from
\fBrndc\fR. The default is the loopback address 127.0.0.1.
\fBrndc\fR\&. The default is the loopback address 127\&.0\&.0\&.1\&.
.RE
.PP
\-t \fIchrootdir\fR
@@ -161,10 +176,10 @@ Used with the
\fB\-a\fR
option to specify a directory where
\fBnamed\fR
will run chrooted. An additional copy of the
\fIrndc.key\fR
will run chrooted\&. An additional copy of the
rndc\&.key
will be written relative to this directory so that it will be found by the chrooted
\fBnamed\fR.
\fBnamed\fR\&.
.RE
.PP
\-u \fIuser\fR
@@ -172,10 +187,10 @@ will be written relative to this directory so that it will be found by the chroo
Used with the
\fB\-a\fR
option to set the owner of the
\fIrndc.key\fR
file generated. If
rndc\&.key
file generated\&. If
\fB\-t\fR
is also specified only the file in the chroot area has its owner changed.
is also specified only the file in the chroot area has its owner changed\&.
.RE
.SH "EXAMPLES"
.PP
@@ -186,13 +201,13 @@ to be used with no manual configuration, run
\fBrndc\-confgen \-a\fR
.PP
To print a sample
\fIrndc.conf\fR
rndc\&.conf
file and corresponding
\fBcontrols\fR
and
\fBkey\fR
statements to be manually inserted into
\fInamed.conf\fR, run
named\&.conf, run
.PP
\fBrndc\-confgen\fR
.SH "SEE ALSO"
@@ -200,12 +215,13 @@ statements to be manually inserted into
\fBrndc\fR(8),
\fBrndc.conf\fR(5),
\fBnamed\fR(8),
BIND 9 Administrator Reference Manual.
BIND 9 Administrator Reference Manual\&.
.SH "AUTHOR"
.PP
Internet Systems Consortium
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2004, 2005, 2007, 2009, 2014 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2004, 2005, 2007, 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2001, 2003 Internet Software Consortium.
.br

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2004, 2005, 2007, 2009, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004, 2005, 2007, 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2001, 2003 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -18,9 +15,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.rndc-confgen">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.rndc-confgen">
<info>
<date>2009-06-15</date>
</info>
<refentryinfo>
<date>June 15, 2009</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -41,6 +43,8 @@
<year>2007</year>
<year>2009</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
<copyright>
@@ -51,23 +55,23 @@
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>rndc-confgen</command>
<arg><option>-a</option></arg>
<arg><option>-b <replaceable class="parameter">keysize</replaceable></option></arg>
<arg><option>-c <replaceable class="parameter">keyfile</replaceable></option></arg>
<arg><option>-h</option></arg>
<arg><option>-k <replaceable class="parameter">keyname</replaceable></option></arg>
<arg><option>-p <replaceable class="parameter">port</replaceable></option></arg>
<arg><option>-r <replaceable class="parameter">randomfile</replaceable></option></arg>
<arg><option>-s <replaceable class="parameter">address</replaceable></option></arg>
<arg><option>-t <replaceable class="parameter">chrootdir</replaceable></option></arg>
<arg><option>-u <replaceable class="parameter">user</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-a</option></arg>
<arg choice="opt" rep="norepeat"><option>-b <replaceable class="parameter">keysize</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">keyfile</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-h</option></arg>
<arg choice="opt" rep="norepeat"><option>-k <replaceable class="parameter">keyname</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-p <replaceable class="parameter">port</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-r <replaceable class="parameter">randomfile</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-s <replaceable class="parameter">address</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-t <replaceable class="parameter">chrootdir</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-u <replaceable class="parameter">user</replaceable></option></arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>rndc-confgen</command>
generates configuration files
for <command>rndc</command>. It can be used as a
@@ -82,10 +86,10 @@
and a <command>controls</command> statement altogether.
</para>
</refsect1>
</refsection>
<refsection><info><title>OPTIONS</title></info>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
@@ -239,10 +243,10 @@
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>EXAMPLES</title></info>
<refsect1>
<title>EXAMPLES</title>
<para>
To allow <command>rndc</command> to be used with
no manual configuration, run
@@ -257,10 +261,10 @@
</para>
<para><userinput>rndc-confgen</userinput>
</para>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>rndc</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
@@ -272,16 +276,6 @@
</citerefentry>,
<citetitle>BIND 9 Administrator Reference Manual</citetitle>.
</para>
</refsect1>
</refsection>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2004, 2005, 2007, 2009, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004, 2005, 2007, 2009, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2001, 2003 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -14,108 +15,147 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>rndc-confgen</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.rndc-confgen"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">rndc-confgen</span> &#8212; rndc key generation tool</p>
<p>
<span class="application">rndc-confgen</span>
&#8212; rndc key generation tool
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">rndc-confgen</code> [<code class="option">-a</code>] [<code class="option">-b <em class="replaceable"><code>keysize</code></em></code>] [<code class="option">-c <em class="replaceable"><code>keyfile</code></em></code>] [<code class="option">-h</code>] [<code class="option">-k <em class="replaceable"><code>keyname</code></em></code>] [<code class="option">-p <em class="replaceable"><code>port</code></em></code>] [<code class="option">-r <em class="replaceable"><code>randomfile</code></em></code>] [<code class="option">-s <em class="replaceable"><code>address</code></em></code>] [<code class="option">-t <em class="replaceable"><code>chrootdir</code></em></code>] [<code class="option">-u <em class="replaceable"><code>user</code></em></code>]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543444"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">rndc-confgen</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">rndc-confgen</code>
[<code class="option">-a</code>]
[<code class="option">-b <em class="replaceable"><code>keysize</code></em></code>]
[<code class="option">-c <em class="replaceable"><code>keyfile</code></em></code>]
[<code class="option">-h</code>]
[<code class="option">-k <em class="replaceable"><code>keyname</code></em></code>]
[<code class="option">-p <em class="replaceable"><code>port</code></em></code>]
[<code class="option">-r <em class="replaceable"><code>randomfile</code></em></code>]
[<code class="option">-s <em class="replaceable"><code>address</code></em></code>]
[<code class="option">-t <em class="replaceable"><code>chrootdir</code></em></code>]
[<code class="option">-u <em class="replaceable"><code>user</code></em></code>]
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>rndc-confgen</strong></span>
generates configuration files
for <span><strong class="command">rndc</strong></span>. It can be used as a
for <span class="command"><strong>rndc</strong></span>. It can be used as a
convenient alternative to writing the
<code class="filename">rndc.conf</code> file
and the corresponding <span><strong class="command">controls</strong></span>
and <span><strong class="command">key</strong></span>
and the corresponding <span class="command"><strong>controls</strong></span>
and <span class="command"><strong>key</strong></span>
statements in <code class="filename">named.conf</code> by hand.
Alternatively, it can be run with the <span><strong class="command">-a</strong></span>
Alternatively, it can be run with the <span class="command"><strong>-a</strong></span>
option to set up a <code class="filename">rndc.key</code> file and
avoid the need for a <code class="filename">rndc.conf</code> file
and a <span><strong class="command">controls</strong></span> statement altogether.
and a <span class="command"><strong>controls</strong></span> statement altogether.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543489"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-a</span></dt>
<dd>
<p>
Do automatic <span><strong class="command">rndc</strong></span> configuration.
<p>
Do automatic <span class="command"><strong>rndc</strong></span> configuration.
This creates a file <code class="filename">rndc.key</code>
in <code class="filename">/etc</code> (or whatever
<code class="varname">sysconfdir</code>
was specified as when <acronym class="acronym">BIND</acronym> was
built)
that is read by both <span><strong class="command">rndc</strong></span>
and <span><strong class="command">named</strong></span> on startup. The
that is read by both <span class="command"><strong>rndc</strong></span>
and <span class="command"><strong>named</strong></span> on startup. The
<code class="filename">rndc.key</code> file defines a default
command channel and authentication key allowing
<span><strong class="command">rndc</strong></span> to communicate with
<span><strong class="command">named</strong></span> on the local host
<span class="command"><strong>rndc</strong></span> to communicate with
<span class="command"><strong>named</strong></span> on the local host
with no further configuration.
</p>
<p>
Running <span><strong class="command">rndc-confgen -a</strong></span> allows
BIND 9 and <span><strong class="command">rndc</strong></span> to be used as
<p>
Running <span class="command"><strong>rndc-confgen -a</strong></span> allows
BIND 9 and <span class="command"><strong>rndc</strong></span> to be used as
drop-in
replacements for BIND 8 and <span><strong class="command">ndc</strong></span>,
replacements for BIND 8 and <span class="command"><strong>ndc</strong></span>,
with no changes to the existing BIND 8
<code class="filename">named.conf</code> file.
</p>
<p>
<p>
If a more elaborate configuration than that
generated by <span><strong class="command">rndc-confgen -a</strong></span>
generated by <span class="command"><strong>rndc-confgen -a</strong></span>
is required, for example if rndc is to be used remotely,
you should run <span><strong class="command">rndc-confgen</strong></span> without
you should run <span class="command"><strong>rndc-confgen</strong></span> without
the
<span><strong class="command">-a</strong></span> option and set up a
<span class="command"><strong>-a</strong></span> option and set up a
<code class="filename">rndc.conf</code> and
<code class="filename">named.conf</code>
as directed.
</p>
</dd>
</dd>
<dt><span class="term">-b <em class="replaceable"><code>keysize</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the size of the authentication key in bits.
Must be between 1 and 512 bits; the default is 128.
</p></dd>
</p>
</dd>
<dt><span class="term">-c <em class="replaceable"><code>keyfile</code></em></span></dt>
<dd><p>
Used with the <span><strong class="command">-a</strong></span> option to specify
<dd>
<p>
Used with the <span class="command"><strong>-a</strong></span> option to specify
an alternate location for <code class="filename">rndc.key</code>.
</p></dd>
</p>
</dd>
<dt><span class="term">-h</span></dt>
<dd><p>
<dd>
<p>
Prints a short summary of the options and arguments to
<span><strong class="command">rndc-confgen</strong></span>.
</p></dd>
<span class="command"><strong>rndc-confgen</strong></span>.
</p>
</dd>
<dt><span class="term">-k <em class="replaceable"><code>keyname</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the key name of the rndc authentication key.
This must be a valid domain name.
The default is <code class="constant">rndc-key</code>.
</p></dd>
</p>
</dd>
<dt><span class="term">-p <em class="replaceable"><code>port</code></em></span></dt>
<dd><p>
Specifies the command channel port where <span><strong class="command">named</strong></span>
listens for connections from <span><strong class="command">rndc</strong></span>.
<dd>
<p>
Specifies the command channel port where <span class="command"><strong>named</strong></span>
listens for connections from <span class="command"><strong>rndc</strong></span>.
The default is 953.
</p></dd>
</p>
</dd>
<dt><span class="term">-r <em class="replaceable"><code>randomfile</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies a source of random data for generating the
authorization. If the operating
system does not provide a <code class="filename">/dev/random</code>
@@ -126,63 +166,76 @@
data to be used instead of the default. The special value
<code class="filename">keyboard</code> indicates that keyboard
input should be used.
</p></dd>
</p>
</dd>
<dt><span class="term">-s <em class="replaceable"><code>address</code></em></span></dt>
<dd><p>
Specifies the IP address where <span><strong class="command">named</strong></span>
<dd>
<p>
Specifies the IP address where <span class="command"><strong>named</strong></span>
listens for command channel connections from
<span><strong class="command">rndc</strong></span>. The default is the loopback
<span class="command"><strong>rndc</strong></span>. The default is the loopback
address 127.0.0.1.
</p></dd>
</p>
</dd>
<dt><span class="term">-t <em class="replaceable"><code>chrootdir</code></em></span></dt>
<dd><p>
Used with the <span><strong class="command">-a</strong></span> option to specify
a directory where <span><strong class="command">named</strong></span> will run
<dd>
<p>
Used with the <span class="command"><strong>-a</strong></span> option to specify
a directory where <span class="command"><strong>named</strong></span> will run
chrooted. An additional copy of the <code class="filename">rndc.key</code>
will be written relative to this directory so that
it will be found by the chrooted <span><strong class="command">named</strong></span>.
</p></dd>
it will be found by the chrooted <span class="command"><strong>named</strong></span>.
</p>
</dd>
<dt><span class="term">-u <em class="replaceable"><code>user</code></em></span></dt>
<dd><p>
Used with the <span><strong class="command">-a</strong></span> option to set the
<dd>
<p>
Used with the <span class="command"><strong>-a</strong></span> option to set the
owner
of the <code class="filename">rndc.key</code> file generated.
If
<span><strong class="command">-t</strong></span> is also specified only the file
<span class="command"><strong>-t</strong></span> is also specified only the file
in
the chroot area has its owner changed.
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543802"></a><h2>EXAMPLES</h2>
<p>
To allow <span><strong class="command">rndc</strong></span> to be used with
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>EXAMPLES</h2>
<p>
To allow <span class="command"><strong>rndc</strong></span> to be used with
no manual configuration, run
</p>
<p><strong class="userinput"><code>rndc-confgen -a</code></strong>
<p><strong class="userinput"><code>rndc-confgen -a</code></strong>
</p>
<p>
<p>
To print a sample <code class="filename">rndc.conf</code> file and
corresponding <span><strong class="command">controls</strong></span> and <span><strong class="command">key</strong></span>
corresponding <span class="command"><strong>controls</strong></span> and <span class="command"><strong>key</strong></span>
statements to be manually inserted into <code class="filename">named.conf</code>,
run
</p>
<p><strong class="userinput"><code>rndc-confgen</code></strong>
<p><strong class="userinput"><code>rndc-confgen</code></strong>
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543844"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">rndc</span>(8)</span>,
<span class="citerefentry"><span class="refentrytitle">rndc.conf</span>(5)</span>,
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
</div>
<div class="refsection">
<a name="id-1.10"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">rndc</span>(8)
</span>,
<span class="citerefentry">
<span class="refentrytitle">rndc.conf</span>(5)
</span>,
<span class="citerefentry">
<span class="refentrytitle">named</span>(8)
</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543882"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,39 +1,39 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\keygen.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\util.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\confgen\os.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\keygen.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\util.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="os.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\keygen.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\util.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\confgen\os.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\keygen.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\util.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="os.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@@ -54,13 +54,14 @@
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<FunctionLevelLinking>false</FunctionLevelLinking>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<BrowseInformation>true</BrowseInformation>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@..\include;..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\dns\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -84,6 +85,7 @@
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@..\include;..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\dns\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -106,4 +108,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

View File

@@ -1,18 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\ddns-confgen.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\ddns-confgen.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@@ -56,13 +56,14 @@
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<FunctionLevelLinking>false</FunctionLevelLinking>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<BrowseInformation>true</BrowseInformation>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@..\include;..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\dns\include;..\..\..\lib\isccc\include;..\..\..\lib\isccfg\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -89,6 +90,7 @@
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@..\include;..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\dns\include;..\..\..\lib\isccc\include;..\..\..\lib\isccfg\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -107,4 +109,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

View File

@@ -1,18 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\rndc-confgen.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\rndc-confgen.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@@ -56,13 +56,14 @@
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<FunctionLevelLinking>false</FunctionLevelLinking>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<BrowseInformation>true</BrowseInformation>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@..\include;..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\dns\include;..\..\..\lib\isccc\include;..\..\..\lib\isccfg\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -89,6 +90,7 @@
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@..\include;..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\dns\include;..\..\..\lib\isccc\include;..\..\..\lib\isccfg\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -107,4 +109,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2004, 2005, 2007, 2009, 2012, 2013 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 2004, 2005, 2007, 2009, 2012, 2013, 2015-2017 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 2000-2002 Internet Software Consortium.
#
# Permission to use, copy, modify, and/or distribute this software for any
@@ -19,14 +19,15 @@ srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
@BIND9_VERSION@
VERSION=@BIND9_VERSION@
@BIND9_MAKE_INCLUDES@
READLINE_LIB = @READLINE_LIB@
CINCLUDES = -I${srcdir}/include ${DNS_INCLUDES} ${BIND9_INCLUDES} \
${ISC_INCLUDES} ${LWRES_INCLUDES} ${ISCCFG_INCLUDES}
CINCLUDES = -I${srcdir}/include ${DNS_INCLUDES} \
${BIND9_INCLUDES} ${ISC_INCLUDES} \
${LWRES_INCLUDES} ${ISCCFG_INCLUDES}
CDEFINES = -DVERSION=\"${VERSION}\"
CWARNINGS =
@@ -105,3 +106,11 @@ install:: dig@EXEEXT@ host@EXEEXT@ nslookup@EXEEXT@ installdirs
for m in ${MANPAGES}; do \
${INSTALL_DATA} ${srcdir}/$$m ${DESTDIR}${mandir}/man1; \
done
uninstall::
for m in ${MANPAGES}; do \
rm -f ${DESTDIR}${mandir}/man1/$$m ; \
done
${LIBTOOL_MODE_UNINSTALL} rm -f ${DESTDIR}${bindir}/nslookup@EXEEXT@
${LIBTOOL_MODE_UNINSTALL} rm -f ${DESTDIR}${bindir}/host@EXEEXT@
${LIBTOOL_MODE_UNINSTALL} rm -f ${DESTDIR}${bindir}/dig@EXEEXT@

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2004-2011, 2013-2015 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2004-2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2000-2003 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
@@ -13,145 +13,164 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
'\" t
.\" Title: dig
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: February 12, 2014
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2014-02-12
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "DIG" "1" "February 12, 2014" "BIND9" "BIND9"
.TH "DIG" "1" "2014\-02\-12" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
dig \- DNS lookup utility
.SH "SYNOPSIS"
.HP 4
\fBdig\fR [@server] [\fB\-b\ \fR\fB\fIaddress\fR\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-f\ \fR\fB\fIfilename\fR\fR] [\fB\-k\ \fR\fB\fIfilename\fR\fR] [\fB\-m\fR] [\fB\-p\ \fR\fB\fIport#\fR\fR] [\fB\-q\ \fR\fB\fIname\fR\fR] [\fB\-t\ \fR\fB\fItype\fR\fR] [\fB\-v\fR] [\fB\-x\ \fR\fB\fIaddr\fR\fR] [\fB\-y\ \fR\fB\fI[hmac:]\fR\fIname:key\fR\fR] [\fB\-4\fR] [\fB\-6\fR] [name] [type] [class] [queryopt...]
.HP 4
.HP \w'\fBdig\fR\ 'u
\fBdig\fR [@server] [\fB\-b\ \fR\fB\fIaddress\fR\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-f\ \fR\fB\fIfilename\fR\fR] [\fB\-k\ \fR\fB\fIfilename\fR\fR] [\fB\-m\fR] [\fB\-p\ \fR\fB\fIport#\fR\fR] [\fB\-q\ \fR\fB\fIname\fR\fR] [\fB\-t\ \fR\fB\fItype\fR\fR] [\fB\-v\fR] [\fB\-x\ \fR\fB\fIaddr\fR\fR] [\fB\-y\ \fR\fB\fI[hmac:]\fR\fIname:key\fR\fR] [[\fB\-4\fR] | [\fB\-6\fR]] [name] [type] [class] [queryopt...]
.HP \w'\fBdig\fR\ 'u
\fBdig\fR [\fB\-h\fR]
.HP 4
.HP \w'\fBdig\fR\ 'u
\fBdig\fR [global\-queryopt...] [query...]
.SH "DESCRIPTION"
.PP
\fBdig\fR
(domain information groper) is a flexible tool for interrogating DNS name servers. It performs DNS lookups and displays the answers that are returned from the name server(s) that were queried. Most DNS administrators use
is a flexible tool for interrogating DNS name servers\&. It performs DNS lookups and displays the answers that are returned from the name server(s) that were queried\&. Most DNS administrators use
\fBdig\fR
to troubleshoot DNS problems because of its flexibility, ease of use and clarity of output. Other lookup tools tend to have less functionality than
\fBdig\fR.
to troubleshoot DNS problems because of its flexibility, ease of use and clarity of output\&. Other lookup tools tend to have less functionality than
\fBdig\fR\&.
.PP
Although
\fBdig\fR
is normally used with command\-line arguments, it also has a batch mode of operation for reading lookup requests from a file. A brief summary of its command\-line arguments and options is printed when the
is normally used with command\-line arguments, it also has a batch mode of operation for reading lookup requests from a file\&. A brief summary of its command\-line arguments and options is printed when the
\fB\-h\fR
option is given. Unlike earlier versions, the BIND 9 implementation of
option is given\&. Unlike earlier versions, the BIND 9 implementation of
\fBdig\fR
allows multiple lookups to be issued from the command line.
allows multiple lookups to be issued from the command line\&.
.PP
Unless it is told to query a specific name server,
\fBdig\fR
will try each of the servers listed in
\fI/etc/resolv.conf\fR. If no usable server addresses are found,
/etc/resolv\&.conf\&. If no usable server addresses are found,
\fBdig\fR
will send the query to the local host.
will send the query to the local host\&.
.PP
When no command line arguments or options are given,
\fBdig\fR
will perform an NS query for "." (the root).
will perform an NS query for "\&." (the root)\&.
.PP
It is possible to set per\-user defaults for
\fBdig\fR
via
\fI${HOME}/.digrc\fR. This file is read and any options in it are applied before the command line arguments.
${HOME}/\&.digrc\&. This file is read and any options in it are applied before the command line arguments\&.
.PP
The IN and CH class names overlap with the IN and CH top level domain names. Either use the
The IN and CH class names overlap with the IN and CH top level domain names\&. Either use the
\fB\-t\fR
and
\fB\-c\fR
options to specify the type and class, use the
\fB\-q\fR
the specify the domain name, or use "IN." and "CH." when looking up these top level domains.
the specify the domain name, or use "IN\&." and "CH\&." when looking up these top level domains\&.
.SH "SIMPLE USAGE"
.PP
A typical invocation of
\fBdig\fR
looks like:
.sp
.if n \{\
.RS 4
.\}
.nf
dig @server name type
.fi
.if n \{\
.RE
.\}
.sp
where:
.PP
\fBserver\fR
.RS 4
is the name or IP address of the name server to query. This can be an IPv4 address in dotted\-decimal notation or an IPv6 address in colon\-delimited notation. When the supplied
is the name or IP address of the name server to query\&. This can be an IPv4 address in dotted\-decimal notation or an IPv6 address in colon\-delimited notation\&. When the supplied
\fIserver\fR
argument is a hostname,
\fBdig\fR
resolves that name before querying that name server.
resolves that name before querying that name server\&.
.sp
If no
\fIserver\fR
argument is provided,
\fBdig\fR
consults
\fI/etc/resolv.conf\fR; if an address is found there, it queries the name server at that address. If either of the
/etc/resolv\&.conf; if an address is found there, it queries the name server at that address\&. If either of the
\fB\-4\fR
or
\fB\-6\fR
options are in use, then only addresses for the corresponding transport will be tried. If no usable addresses are found,
options are in use, then only addresses for the corresponding transport will be tried\&. If no usable addresses are found,
\fBdig\fR
will send the query to the local host. The reply from the name server that responds is displayed.
will send the query to the local host\&. The reply from the name server that responds is displayed\&.
.RE
.PP
\fBname\fR
.RS 4
is the name of the resource record that is to be looked up.
is the name of the resource record that is to be looked up\&.
.RE
.PP
\fBtype\fR
.RS 4
indicates what type of query is required \(em ANY, A, MX, SIG, etc.
indicates what type of query is required \(em ANY, A, MX, SIG, etc\&.
\fItype\fR
can be any valid query type. If no
can be any valid query type\&. If no
\fItype\fR
argument is supplied,
\fBdig\fR
will perform a lookup for an A record.
will perform a lookup for an A record\&.
.RE
.SH "OPTIONS"
.PP
\-4
.RS 4
Use IPv4 only.
Use IPv4 only\&.
.RE
.PP
\-6
.RS 4
Use IPv6 only.
Use IPv6 only\&.
.RE
.PP
\-b \fIaddress\fR\fI[#port]\fR
.RS 4
Set the source IP address of the query. The
Set the source IP address of the query\&. The
\fIaddress\fR
must be a valid address on one of the host's network interfaces, or "0.0.0.0" or "::". An optional port may be specified by appending "#<port>"
must be a valid address on one of the host\*(Aqs network interfaces, or "0\&.0\&.0\&.0" or "::"\&. An optional port may be specified by appending "#<port>"
.RE
.PP
\-c \fIclass\fR
.RS 4
Set the query class. The default
Set the query class\&. The default
\fIclass\fR
is IN; other classes are HS for Hesiod records or CH for Chaosnet records.
is IN; other classes are HS for Hesiod records or CH for Chaosnet records\&.
.RE
.PP
\-f \fIfile\fR
@@ -159,88 +178,88 @@ is IN; other classes are HS for Hesiod records or CH for Chaosnet records.
Batch mode:
\fBdig\fR
reads a list of lookup requests to process from the given
\fIfile\fR. Each line in the file should be organized in the same way they would be presented as queries to
\fIfile\fR\&. Each line in the file should be organized in the same way they would be presented as queries to
\fBdig\fR
using the command\-line interface.
using the command\-line interface\&.
.RE
.PP
\-i
.RS 4
Do reverse IPv6 lookups using the obsolete RFC1886 IP6.INT domain, which is no longer in use. Obsolete bit string label queries (RFC2874) are not attempted.
Do reverse IPv6 lookups using the obsolete RFC1886 IP6\&.INT domain, which is no longer in use\&. Obsolete bit string label queries (RFC2874) are not attempted\&.
.RE
.PP
\-k \fIkeyfile\fR
.RS 4
Sign queries using TSIG using a key read from the given file. Key files can be generated using
\fBtsig\-keygen\fR(8). When using TSIG authentication with
\fBdig\fR, the name server that is queried needs to know the key and algorithm that is being used. In BIND, this is done by providing appropriate
Sign queries using TSIG using a key read from the given file\&. Key files can be generated using
\fBtsig-keygen\fR(8)\&. When using TSIG authentication with
\fBdig\fR, the name server that is queried needs to know the key and algorithm that is being used\&. In BIND, this is done by providing appropriate
\fBkey\fR
and
\fBserver\fR
statements in
\fInamed.conf\fR.
named\&.conf\&.
.RE
.PP
\-m
.RS 4
Enable memory usage debugging.
Enable memory usage debugging\&.
.RE
.PP
\-p \fIport\fR
.RS 4
Send the query to a non\-standard port on the server, instead of the defaut port 53. This option would be used to test a name server that has been configured to listen for queries on a non\-standard port number.
Send the query to a non\-standard port on the server, instead of the defaut port 53\&. This option would be used to test a name server that has been configured to listen for queries on a non\-standard port number\&.
.RE
.PP
\-q \fIname\fR
.RS 4
The domain name to query. This is useful to distinguish the
The domain name to query\&. This is useful to distinguish the
\fIname\fR
from other arguments.
from other arguments\&.
.RE
.PP
\-t \fItype\fR
.RS 4
The resource record type to query. It can be any valid query type which is supported in BIND 9. The default query type is "A", unless the
The resource record type to query\&. It can be any valid query type which is supported in BIND 9\&. The default query type is "A", unless the
\fB\-x\fR
option is supplied to indicate a reverse lookup. A zone transfer can be requested by specifying a type of AXFR. When an incremental zone transfer (IXFR) is required, set the
option is supplied to indicate a reverse lookup\&. A zone transfer can be requested by specifying a type of AXFR\&. When an incremental zone transfer (IXFR) is required, set the
\fItype\fR
to
ixfr=N. The incremental zone transfer will contain the changes made to the zone since the serial number in the zone's SOA record was
\fIN\fR.
ixfr=N\&. The incremental zone transfer will contain the changes made to the zone since the serial number in the zone\*(Aqs SOA record was
\fIN\fR\&.
.RE
.PP
\-v
.RS 4
Print the version number and exit.
Print the version number and exit\&.
.RE
.PP
\-x \fIaddr\fR
.RS 4
Simplified reverse lookups, for mapping addresses to names. The
Simplified reverse lookups, for mapping addresses to names\&. The
\fIaddr\fR
is an IPv4 address in dotted\-decimal notation, or a colon\-delimited IPv6 address. When the
is an IPv4 address in dotted\-decimal notation, or a colon\-delimited IPv6 address\&. When the
\fB\-x\fR
is used, there is no need to provide the
\fIname\fR,
\fIclass\fR
and
\fItype\fR
arguments.
arguments\&.
\fBdig\fR
automatically performs a lookup for a name like
94.2.0.192.in\-addr.arpa
and sets the query type and class to PTR and IN respectively. IPv6 addresses are looked up using nibble format under the IP6.ARPA domain (but see also the
94\&.2\&.0\&.192\&.in\-addr\&.arpa
and sets the query type and class to PTR and IN respectively\&. IPv6 addresses are looked up using nibble format under the IP6\&.ARPA domain (but see also the
\fB\-i\fR
option).
option)\&.
.RE
.PP
\-y \fI[hmac:]\fR\fIkeyname:secret\fR
.RS 4
Sign queries using TSIG with the given authentication key.
Sign queries using TSIG with the given authentication key\&.
\fIkeyname\fR
is the name of the key, and
\fIsecret\fR
is the base64 encoded shared secret.
is the base64 encoded shared secret\&.
\fIhmac\fR
is the name of the key algorithm; valid choices are
hmac\-md5,
@@ -248,10 +267,10 @@ hmac\-sha1,
hmac\-sha224,
hmac\-sha256,
hmac\-sha384, or
hmac\-sha512. If
hmac\-sha512\&. If
\fIhmac\fR
is not specified, the default is
hmac\-md5.
hmac\-md5\&.
.sp
NOTE: You should use the
\fB\-k\fR
@@ -259,91 +278,91 @@ option and avoid the
\fB\-y\fR
option, because with
\fB\-y\fR
the shared secret is supplied as a command line argument in clear text. This may be visible in the output from
the shared secret is supplied as a command line argument in clear text\&. This may be visible in the output from
\fBps\fR(1)
or in a history file maintained by the user's shell.
or in a history file maintained by the user\*(Aqs shell\&.
.RE
.SH "QUERY OPTIONS"
.PP
\fBdig\fR
provides a number of query options which affect the way in which lookups are made and the results displayed. Some of these set or reset flag bits in the query header, some determine which sections of the answer get printed, and others determine the timeout and retry strategies.
provides a number of query options which affect the way in which lookups are made and the results displayed\&. Some of these set or reset flag bits in the query header, some determine which sections of the answer get printed, and others determine the timeout and retry strategies\&.
.PP
Each query option is identified by a keyword preceded by a plus sign (+). Some keywords set or reset an option. These may be preceded by the string
Each query option is identified by a keyword preceded by a plus sign (+)\&. Some keywords set or reset an option\&. These may be preceded by the string
no
to negate the meaning of that keyword. Other keywords assign values to options like the timeout interval. They have the form
\fB+keyword=value\fR. Keywords may be abbreviated, provided the abbreviation is unambiguous; for example,
to negate the meaning of that keyword\&. Other keywords assign values to options like the timeout interval\&. They have the form
\fB+keyword=value\fR\&. Keywords may be abbreviated, provided the abbreviation is unambiguous; for example,
+cd
is equivalent to
+cdflag. The query options are:
+cdflag\&. The query options are:
.PP
\fB+[no]aaflag\fR
.RS 4
A synonym for
\fI+[no]aaonly\fR.
\fI+[no]aaonly\fR\&.
.RE
.PP
\fB+[no]aaonly\fR
.RS 4
Sets the "aa" flag in the query.
Sets the "aa" flag in the query\&.
.RE
.PP
\fB+[no]additional\fR
.RS 4
Display [do not display] the additional section of a reply. The default is to display it.
Display [do not display] the additional section of a reply\&. The default is to display it\&.
.RE
.PP
\fB+[no]adflag\fR
.RS 4
Set [do not set] the AD (authentic data) bit in the query. This requests the server to return whether all of the answer and authority sections have all been validated as secure according to the security policy of the server. AD=1 indicates that all records have been validated as secure and the answer is not from a OPT\-OUT range. AD=0 indicate that some part of the answer was insecure or not validated. This bit is set by default.
Set [do not set] the AD (authentic data) bit in the query\&. This requests the server to return whether all of the answer and authority sections have all been validated as secure according to the security policy of the server\&. AD=1 indicates that all records have been validated as secure and the answer is not from a OPT\-OUT range\&. AD=0 indicate that some part of the answer was insecure or not validated\&. This bit is set by default\&.
.RE
.PP
\fB+[no]all\fR
.RS 4
Set or clear all display flags.
Set or clear all display flags\&.
.RE
.PP
\fB+[no]answer\fR
.RS 4
Display [do not display] the answer section of a reply. The default is to display it.
Display [do not display] the answer section of a reply\&. The default is to display it\&.
.RE
.PP
\fB+[no]authority\fR
.RS 4
Display [do not display] the authority section of a reply. The default is to display it.
Display [do not display] the authority section of a reply\&. The default is to display it\&.
.RE
.PP
\fB+[no]besteffort\fR
.RS 4
Attempt to display the contents of messages which are malformed. The default is to not display malformed answers.
Attempt to display the contents of messages which are malformed\&. The default is to not display malformed answers\&.
.RE
.PP
\fB+bufsize=B\fR
.RS 4
Set the UDP message buffer size advertised using EDNS0 to
\fIB\fR
bytes. The maximum and minimum sizes of this buffer are 65535 and 0 respectively. Values outside this range are rounded up or down appropriately. Values other than zero will cause a EDNS query to be sent.
bytes\&. The maximum and minimum sizes of this buffer are 65535 and 0 respectively\&. Values outside this range are rounded up or down appropriately\&. Values other than zero will cause a EDNS query to be sent\&.
.RE
.PP
\fB+[no]cdflag\fR
.RS 4
Set [do not set] the CD (checking disabled) bit in the query. This requests the server to not perform DNSSEC validation of responses.
Set [do not set] the CD (checking disabled) bit in the query\&. This requests the server to not perform DNSSEC validation of responses\&.
.RE
.PP
\fB+[no]class\fR
.RS 4
Display [do not display] the CLASS when printing the record.
Display [do not display] the CLASS when printing the record\&.
.RE
.PP
\fB+[no]cmd\fR
.RS 4
Toggles the printing of the initial comment in the output identifying the version of
\fBdig\fR
and the query options that have been applied. This comment is printed by default.
and the query options that have been applied\&. This comment is printed by default\&.
.RE
.PP
\fB+[no]comments\fR
.RS 4
Toggle the display of comment lines in the output. The default is to print comments.
Toggle the display of comment lines in the output\&. The default is to print comments\&.
.RE
.PP
\fB+[no]defname\fR
@@ -354,7 +373,7 @@ Deprecated, treated as a synonym for
.PP
\fB+[no]dnssec\fR
.RS 4
Requests DNSSEC records be sent by setting the DNSSEC OK bit (DO) in the OPT record in the additional section of the query.
Requests DNSSEC records be sent by setting the DNSSEC OK bit (DO) in the OPT record in the additional section of the query\&.
.RE
.PP
\fB+domain=somename\fR
@@ -363,46 +382,51 @@ Set the search list to contain the single domain
\fIsomename\fR, as if specified in a
\fBdomain\fR
directive in
\fI/etc/resolv.conf\fR, and enable search list processing as if the
/etc/resolv\&.conf, and enable search list processing as if the
\fI+search\fR
option were given.
option were given\&.
.RE
.PP
\fB+[no]edns[=#]\fR
.RS 4
Specify the EDNS version to query with. Valid values are 0 to 255. Setting the EDNS version will cause a EDNS query to be sent.
Specify the EDNS version to query with\&. Valid values are 0 to 255\&. Setting the EDNS version will cause a EDNS query to be sent\&.
\fB+noedns\fR
clears the remembered EDNS version. EDNS is set to 0 by default.
clears the remembered EDNS version\&. EDNS is set to 0 by default\&.
.RE
.PP
\fB+[no]fail\fR
.RS 4
Do not try the next server if you receive a SERVFAIL. The default is to not try the next server which is the reverse of normal stub resolver behavior.
Do not try the next server if you receive a SERVFAIL\&. The default is to not try the next server which is the reverse of normal stub resolver behavior\&.
.RE
.PP
\fB+[no]identify\fR
.RS 4
Show [or do not show] the IP address and port number that supplied the answer when the
\fI+short\fR
option is enabled. If short form answers are requested, the default is not to show the source address and port number of the server that provided the answer.
option is enabled\&. If short form answers are requested, the default is not to show the source address and port number of the server that provided the answer\&.
.RE
.PP
\fB+[no]idnout\fR
.RS 4
Convert [do not convert] puny code on output\&. This requires IDN SUPPORT to have been enabled at compile time\&. The default is to convert output\&.
.RE
.PP
\fB+[no]ignore\fR
.RS 4
Ignore truncation in UDP responses instead of retrying with TCP. By default, TCP retries are performed.
Ignore truncation in UDP responses instead of retrying with TCP\&. By default, TCP retries are performed\&.
.RE
.PP
\fB+[no]keepopen\fR
.RS 4
Keep the TCP socket open between queries and reuse it rather than creating a new TCP socket for each lookup. The default is
\fB+nokeepopen\fR.
Keep the TCP socket open between queries and reuse it rather than creating a new TCP socket for each lookup\&. The default is
\fB+nokeepopen\fR\&.
.RE
.PP
\fB+[no]multiline\fR
.RS 4
Print records like the SOA records in a verbose multi\-line format with human\-readable comments. The default is to print each record on a single line, to facilitate machine parsing of the
Print records like the SOA records in a verbose multi\-line format with human\-readable comments\&. The default is to print each record on a single line, to facilitate machine parsing of the
\fBdig\fR
output.
output\&.
.RE
.PP
\fB+ndots=D\fR
@@ -411,101 +435,101 @@ Set the number of dots that have to appear in
\fIname\fR
to
\fID\fR
for it to be considered absolute. The default value is that defined using the ndots statement in
\fI/etc/resolv.conf\fR, or 1 if no ndots statement is present. Names with fewer dots are interpreted as relative names and will be searched for in the domains listed in the
for it to be considered absolute\&. The default value is that defined using the ndots statement in
/etc/resolv\&.conf, or 1 if no ndots statement is present\&. Names with fewer dots are interpreted as relative names and will be searched for in the domains listed in the
\fBsearch\fR
or
\fBdomain\fR
directive in
\fI/etc/resolv.conf\fR
/etc/resolv\&.conf
if
\fB+search\fR
is set.
is set\&.
.RE
.PP
\fB+[no]nsid\fR
.RS 4
Include an EDNS name server ID request when sending a query.
Include an EDNS name server ID request when sending a query\&.
.RE
.PP
\fB+[no]nssearch\fR
.RS 4
When this option is set,
\fBdig\fR
attempts to find the authoritative name servers for the zone containing the name being looked up and display the SOA record that each name server has for the zone.
attempts to find the authoritative name servers for the zone containing the name being looked up and display the SOA record that each name server has for the zone\&.
.RE
.PP
\fB+[no]onesoa\fR
.RS 4
Print only one (starting) SOA record when performing an AXFR. The default is to print both the starting and ending SOA records.
Print only one (starting) SOA record when performing an AXFR\&. The default is to print both the starting and ending SOA records\&.
.RE
.PP
\fB+[no]qr\fR
.RS 4
Print [do not print] the query as it is sent. By default, the query is not printed.
Print [do not print] the query as it is sent\&. By default, the query is not printed\&.
.RE
.PP
\fB+[no]question\fR
.RS 4
Print [do not print] the question section of a query when an answer is returned. The default is to print the question section as a comment.
Print [do not print] the question section of a query when an answer is returned\&. The default is to print the question section as a comment\&.
.RE
.PP
\fB+[no]rdflag\fR
.RS 4
A synonym for
\fI+[no]recurse\fR.
\fI+[no]recurse\fR\&.
.RE
.PP
\fB+[no]recurse\fR
.RS 4
Toggle the setting of the RD (recursion desired) bit in the query. This bit is set by default, which means
Toggle the setting of the RD (recursion desired) bit in the query\&. This bit is set by default, which means
\fBdig\fR
normally sends recursive queries. Recursion is automatically disabled when the
normally sends recursive queries\&. Recursion is automatically disabled when the
\fI+nssearch\fR
or
\fI+trace\fR
query options are used.
query options are used\&.
.RE
.PP
\fB+retry=T\fR
.RS 4
Sets the number of times to retry UDP queries to server to
\fIT\fR
instead of the default, 2. Unlike
\fI+tries\fR, this does not include the initial query.
instead of the default, 2\&. Unlike
\fI+tries\fR, this does not include the initial query\&.
.RE
.PP
\fB+[no]rrcomments\fR
.RS 4
Toggle the display of per\-record comments in the output (for example, human\-readable key information about DNSKEY records). The default is not to print record comments unless multiline mode is active.
Toggle the display of per\-record comments in the output (for example, human\-readable key information about DNSKEY records)\&. The default is not to print record comments unless multiline mode is active\&.
.RE
.PP
\fB+[no]search\fR
.RS 4
Use [do not use] the search list defined by the searchlist or domain directive in
\fIresolv.conf\fR
(if any). The search list is not used by default.
resolv\&.conf
(if any)\&. The search list is not used by default\&.
.sp
\'ndots' from
\fIresolv.conf\fR
\*(Aqndots\*(Aq from
resolv\&.conf
(default 1) which may be overridden by
\fI+ndots\fR
determines if the name will be treated as relative or not and hence whether a search is eventually performed or not.
determines if the name will be treated as relative or not and hence whether a search is eventually performed or not\&.
.RE
.PP
\fB+[no]short\fR
.RS 4
Provide a terse answer. The default is to print the answer in a verbose form.
Provide a terse answer\&. The default is to print the answer in a verbose form\&.
.RE
.PP
\fB+[no]showsearch\fR
.RS 4
Perform [do not perform] a search showing intermediate results.
Perform [do not perform] a search showing intermediate results\&.
.RE
.PP
\fB+[no]sigchase\fR
.RS 4
Chase DNSSEC signature chains. Requires dig be compiled with \-DDIG_SIGCHASE.
Chase DNSSEC signature chains\&. Requires dig be compiled with \-DDIG_SIGCHASE\&.
.RE
.PP
\fB+split=W\fR
@@ -514,86 +538,86 @@ Split long hex\- or base64\-formatted fields in resource records into chunks of
\fIW\fR
characters (where
\fIW\fR
is rounded up to the nearest multiple of 4).
is rounded up to the nearest multiple of 4)\&.
\fI+nosplit\fR
or
\fI+split=0\fR
causes fields not to be split at all. The default is 56 characters, or 44 characters when multiline mode is active.
causes fields not to be split at all\&. The default is 56 characters, or 44 characters when multiline mode is active\&.
.RE
.PP
\fB+[no]stats\fR
.RS 4
This query option toggles the printing of statistics: when the query was made, the size of the reply and so on. The default behavior is to print the query statistics.
This query option toggles the printing of statistics: when the query was made, the size of the reply and so on\&. The default behavior is to print the query statistics\&.
.RE
.PP
\fB+[no]tcp\fR
.RS 4
Use [do not use] TCP when querying name servers. The default behavior is to use UDP unless an
Use [do not use] TCP when querying name servers\&. The default behavior is to use UDP unless an
ixfr=N
query is requested, in which case the default is TCP. AXFR queries always use TCP.
query is requested, in which case the default is TCP\&. AXFR queries always use TCP\&.
.RE
.PP
\fB+time=T\fR
.RS 4
Sets the timeout for a query to
\fIT\fR
seconds. The default timeout is 5 seconds. An attempt to set
seconds\&. The default timeout is 5 seconds\&. An attempt to set
\fIT\fR
to less than 1 will result in a query timeout of 1 second being applied.
to less than 1 will result in a query timeout of 1 second being applied\&.
.RE
.PP
\fB+[no]topdown\fR
.RS 4
When chasing DNSSEC signature chains perform a top\-down validation. Requires dig be compiled with \-DDIG_SIGCHASE.
When chasing DNSSEC signature chains perform a top\-down validation\&. Requires dig be compiled with \-DDIG_SIGCHASE\&.
.RE
.PP
\fB+[no]trace\fR
.RS 4
Toggle tracing of the delegation path from the root name servers for the name being looked up. Tracing is disabled by default. When tracing is enabled,
Toggle tracing of the delegation path from the root name servers for the name being looked up\&. Tracing is disabled by default\&. When tracing is enabled,
\fBdig\fR
makes iterative queries to resolve the name being looked up. It will follow referrals from the root servers, showing the answer from each server that was used to resolve the lookup.
makes iterative queries to resolve the name being looked up\&. It will follow referrals from the root servers, showing the answer from each server that was used to resolve the lookup\&.
.sp
If @server is also specified, it affects only the initial query for the root zone name servers.
If @server is also specified, it affects only the initial query for the root zone name servers\&.
.sp
\fB+dnssec\fR
is also set when +trace is set to better emulate the default queries from a nameserver.
is also set when +trace is set to better emulate the default queries from a nameserver\&.
.RE
.PP
\fB+tries=T\fR
.RS 4
Sets the number of times to try UDP queries to server to
\fIT\fR
instead of the default, 3. If
instead of the default, 3\&. If
\fIT\fR
is less than or equal to zero, the number of tries is silently rounded up to 1.
is less than or equal to zero, the number of tries is silently rounded up to 1\&.
.RE
.PP
\fB+trusted\-key=####\fR
.RS 4
Specifies a file containing trusted keys to be used with
\fB+sigchase\fR. Each DNSKEY record must be on its own line.
\fB+sigchase\fR\&. Each DNSKEY record must be on its own line\&.
.sp
If not specified,
\fBdig\fR
will look for
\fI/etc/trusted\-key.key\fR
/etc/trusted\-key\&.key
then
\fItrusted\-key.key\fR
in the current directory.
trusted\-key\&.key
in the current directory\&.
.sp
Requires dig be compiled with \-DDIG_SIGCHASE.
Requires dig be compiled with \-DDIG_SIGCHASE\&.
.RE
.PP
\fB+[no]ttlid\fR
.RS 4
Display [do not display] the TTL when printing the record.
Display [do not display] the TTL when printing the record\&.
.RE
.PP
\fB+[no]vc\fR
.RS 4
Use [do not use] TCP when querying name servers. This alternate syntax to
Use [do not use] TCP when querying name servers\&. This alternate syntax to
\fI+[no]tcp\fR
is provided for backwards compatibility. The "vc" stands for "virtual circuit".
is provided for backwards compatibility\&. The "vc" stands for "virtual circuit"\&.
.RE
.SH "MULTIPLE QUERIES"
.PP
@@ -601,63 +625,71 @@ The BIND 9 implementation of
\fBdig \fR
supports specifying multiple queries on the command line (in addition to supporting the
\fB\-f\fR
batch file option). Each of those queries can be supplied with its own set of flags, options and query options.
batch file option)\&. Each of those queries can be supplied with its own set of flags, options and query options\&.
.PP
In this case, each
\fIquery\fR
argument represent an individual query in the command\-line syntax described above. Each consists of any of the standard options and flags, the name to be looked up, an optional query type and class and any query options that should be applied to that query.
argument represent an individual query in the command\-line syntax described above\&. Each consists of any of the standard options and flags, the name to be looked up, an optional query type and class and any query options that should be applied to that query\&.
.PP
A global set of query options, which should be applied to all queries, can also be supplied. These global query options must precede the first tuple of name, class, type, options, flags, and query options supplied on the command line. Any global query options (except the
A global set of query options, which should be applied to all queries, can also be supplied\&. These global query options must precede the first tuple of name, class, type, options, flags, and query options supplied on the command line\&. Any global query options (except the
\fB+[no]cmd\fR
option) can be overridden by a query\-specific set of query options. For example:
option) can be overridden by a query\-specific set of query options\&. For example:
.sp
.if n \{\
.RS 4
.\}
.nf
dig +qr www.isc.org any \-x 127.0.0.1 isc.org ns +noqr
dig +qr www\&.isc\&.org any \-x 127\&.0\&.0\&.1 isc\&.org ns +noqr
.fi
.if n \{\
.RE
.\}
.sp
shows how
\fBdig\fR
could be used from the command line to make three lookups: an ANY query for
www.isc.org, a reverse lookup of 127.0.0.1 and a query for the NS records of
isc.org. A global query option of
www\&.isc\&.org, a reverse lookup of 127\&.0\&.0\&.1 and a query for the NS records of
isc\&.org\&. A global query option of
\fI+qr\fR
is applied, so that
\fBdig\fR
shows the initial query it made for each lookup. The final query has a local query option of
shows the initial query it made for each lookup\&. The final query has a local query option of
\fI+noqr\fR
which means that
\fBdig\fR
will not print the initial query when it looks up the NS records for
isc.org.
isc\&.org\&.
.SH "IDN SUPPORT"
.PP
If
\fBdig\fR
has been built with IDN (internationalized domain name) support, it can accept and display non\-ASCII domain names.
has been built with IDN (internationalized domain name) support, it can accept and display non\-ASCII domain names\&.
\fBdig\fR
appropriately converts character encoding of domain name before sending a request to DNS server or displaying a reply from the server. If you'd like to turn off the IDN support for some reason, defines the
appropriately converts character encoding of domain name before sending a request to DNS server or displaying a reply from the server\&. If you\*(Aqd like to turn off the IDN support for some reason, defines the
\fBIDN_DISABLE\fR
environment variable. The IDN support is disabled if the variable is set when
environment variable\&. The IDN support is disabled if the variable is set when
\fBdig\fR
runs.
runs\&.
.SH "FILES"
.PP
\fI/etc/resolv.conf\fR
/etc/resolv\&.conf
.PP
\fI${HOME}/.digrc\fR
${HOME}/\&.digrc
.SH "SEE ALSO"
.PP
\fBhost\fR(1),
\fBnamed\fR(8),
\fBdnssec\-keygen\fR(8),
RFC1035.
\fBdnssec-keygen\fR(8),
RFC1035\&.
.SH "BUGS"
.PP
There are probably too many query options.
There are probably too many query options\&.
.SH "AUTHOR"
.PP
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2004\-2011, 2013\-2015 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2000\-2003 Internet Software Consortium.
Copyright \(co 2004-2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2000-2003 Internet Software Consortium.
.br

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2004-2015 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2004-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2000-2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and/or distribute this software for any
@@ -15,8 +15,6 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: dig.c,v 1.245 2011/12/07 17:23:28 each Exp $ */
/*! \file */
#include <config.h>
@@ -27,6 +25,7 @@
#include <isc/app.h>
#include <isc/netaddr.h>
#include <isc/parseint.h>
#include <isc/platform.h>
#include <isc/print.h>
#include <isc/string.h>
#include <isc/util.h>
@@ -55,6 +54,16 @@
#define DIG_MAX_ADDRESSES 20
#ifndef DNS_NAME_INITABSOLUTE
#define DNS_NAME_INITABSOLUTE(A,B) { \
DNS_NAME_MAGIC, \
A, sizeof(A), sizeof(B), \
DNS_NAMEATTR_READONLY | DNS_NAMEATTR_ABSOLUTE, \
B, NULL, { (void *)-1, (void *)-1}, \
{NULL, NULL} \
}
#endif
dig_lookup_t *default_lookup = NULL;
static char *batchname = NULL;
@@ -67,9 +76,12 @@ static char domainopt[DNS_NAME_MAXTEXT];
static isc_boolean_t short_form = ISC_FALSE, printcmd = ISC_TRUE,
ip6_int = ISC_FALSE, plusquest = ISC_FALSE, pluscomm = ISC_FALSE,
multiline = ISC_FALSE, nottl = ISC_FALSE, noclass = ISC_FALSE,
onesoa = ISC_FALSE, rrcomments = ISC_FALSE;
onesoa = ISC_FALSE, ipv4only = ISC_FALSE, ipv6only = ISC_FALSE;
static isc_uint32_t splitwidth = 0xffffffff;
/*% rrcomments are neither explicitly enabled nor disabled by default */
static int rrcomments = 0;
/*% opcode text */
static const char * const opcodetext[] = {
"QUERY",
@@ -197,6 +209,7 @@ help(void) {
" +[no]edns[=###] (Set EDNS version) [0]\n"
" +[no]fail (Don't try next server on SERVFAIL)\n"
" +[no]identify (ID responders in short answers)\n"
" +[no]idnout (convert IDN response)\n"
" +[no]ignore (Don't revert to TCP for TC responses.)"
"\n"
" +[no]keepopen (Keep the TCP socket open between queries)\n"
@@ -244,12 +257,16 @@ help(void) {
/*%
* Callback from dighost.c to print the received message.
*/
void
static void
received(int bytes, isc_sockaddr_t *from, dig_query_t *query) {
isc_uint64_t diff;
time_t tnow;
struct tm tmnow;
#ifdef WIN32
wchar_t time_str[100];
#else
char time_str[100];
#endif
char fromtext[ISC_SOCKADDR_FORMATSIZE];
isc_sockaddr_format(from, fromtext, sizeof(fromtext));
@@ -259,10 +276,25 @@ received(int bytes, isc_sockaddr_t *from, dig_query_t *query) {
printf(";; Query time: %ld msec\n", (long int)diff/1000);
printf(";; SERVER: %s(%s)\n", fromtext, query->servname);
time(&tnow);
#if defined(ISC_PLATFORM_USETHREADS) && !defined(WIN32)
(void)localtime_r(&tnow, &tmnow);
#else
tmnow = *localtime(&tnow);
#endif
#ifdef WIN32
/*
* On Windows, time zone name ("%Z") may be a localized
* wide-character string, which strftime() handles incorrectly.
*/
if (wcsftime(time_str, sizeof(time_str)/sizeof(time_str[0]),
L"%a %b %d %H:%M:%S %Z %Y", &tmnow) > 0U)
printf(";; WHEN: %ls\n", time_str);
#else
if (strftime(time_str, sizeof(time_str),
"%a %b %d %H:%M:%S %Z %Y", &tmnow) > 0U)
printf(";; WHEN: %s\n", time_str);
#endif
if (query->lookup->doing_xfr) {
printf(";; XFR size: %u records (messages %u, "
"bytes %" ISC_PRINT_QUADFORMAT "u)\n",
@@ -296,7 +328,7 @@ received(int bytes, isc_sockaddr_t *from, dig_query_t *query) {
* Not used in dig.
* XXX print_trying
*/
void
static void
trying(char *frm, dig_lookup_t *lookup) {
UNUSED(frm);
UNUSED(lookup);
@@ -309,7 +341,7 @@ static isc_result_t
say_message(dns_rdata_t *rdata, dig_query_t *query, isc_buffer_t *buf) {
isc_result_t result;
isc_uint64_t diff;
char store[sizeof("12345678901234567890")];
char store[sizeof(" in 18446744073709551616 us.")];
unsigned int styleflags = 0;
if (query->lookup->trace || query->lookup->ns_search_only) {
@@ -319,7 +351,8 @@ say_message(dns_rdata_t *rdata, dig_query_t *query, isc_buffer_t *buf) {
ADD_STRING(buf, " ");
}
if (rrcomments)
/* Turn on rrcomments if explicitly enabled */
if (rrcomments > 0)
styleflags |= DNS_STYLEFLAG_RRCOMMENT;
result = dns_rdata_tofmttext(rdata, NULL, styleflags, 0,
splitwidth, " ", buf);
@@ -327,10 +360,11 @@ say_message(dns_rdata_t *rdata, dig_query_t *query, isc_buffer_t *buf) {
return (result);
check_result(result, "dns_rdata_totext");
if (query->lookup->identify) {
diff = isc_time_microdiff(&query->time_recv, &query->time_sent);
ADD_STRING(buf, " from server ");
ADD_STRING(buf, query->servname);
snprintf(store, 19, " in %d ms.", (int)diff/1000);
snprintf(store, sizeof(store), " in %" ISC_PLATFORM_QUADFORMAT "u ms.", diff / 1000);
ADD_STRING(buf, store);
}
ADD_STRING(buf, "\n");
@@ -388,7 +422,7 @@ short_answer(dns_message_t *msg, dns_messagetextflag_t flags,
return (ISC_R_SUCCESS);
}
#ifdef DIG_SIGCHASE
isc_result_t
static isc_result_t
printrdataset(dns_name_t *owner_name, dns_rdataset_t *rdataset,
isc_buffer_t *target)
{
@@ -404,7 +438,8 @@ printrdataset(dns_name_t *owner_name, dns_rdataset_t *rdataset,
styleflags |= DNS_STYLEFLAG_NO_TTL;
if (noclass)
styleflags |= DNS_STYLEFLAG_NO_CLASS;
if (rrcomments)
/* Turn on rrcomments if explicitly enabled */
if (rrcomments > 0)
styleflags |= DNS_STYLEFLAG_RRCOMMENT;
if (multiline) {
styleflags |= DNS_STYLEFLAG_OMIT_OWNER;
@@ -414,7 +449,9 @@ printrdataset(dns_name_t *owner_name, dns_rdataset_t *rdataset,
styleflags |= DNS_STYLEFLAG_TTL;
styleflags |= DNS_STYLEFLAG_MULTILINE;
styleflags |= DNS_STYLEFLAG_COMMENT;
styleflags |= DNS_STYLEFLAG_RRCOMMENT;
/* Turn on rrcomments if not explicitly disabled */
if (rrcomments >= 0)
styleflags |= DNS_STYLEFLAG_RRCOMMENT;
}
if (multiline || (nottl && noclass))
@@ -440,10 +477,30 @@ printrdataset(dns_name_t *owner_name, dns_rdataset_t *rdataset,
}
#endif
static isc_boolean_t
isdotlocal(dns_message_t *msg) {
isc_result_t result;
static unsigned char local_ndata[] = { "\005local\0" };
static unsigned char local_offsets[] = { 0, 6 };
static dns_name_t local =
DNS_NAME_INITABSOLUTE(local_ndata, local_offsets);
for (result = dns_message_firstname(msg, DNS_SECTION_QUESTION);
result == ISC_R_SUCCESS;
result = dns_message_nextname(msg, DNS_SECTION_QUESTION))
{
dns_name_t *name = NULL;
dns_message_currentname(msg, DNS_SECTION_QUESTION, &name);
if (dns_name_issubdomain(name, &local))
return (ISC_TRUE);
}
return (ISC_FALSE);
}
/*
* Callback from dighost.c to print the reply from a server
*/
isc_result_t
static isc_result_t
printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
isc_result_t result;
dns_messagetextflag_t flags;
@@ -455,7 +512,8 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
styleflags |= DNS_STYLEFLAG_REL_OWNER;
if (query->lookup->comments)
styleflags |= DNS_STYLEFLAG_COMMENT;
if (rrcomments)
/* Turn on rrcomments if explicitly enabled */
if (rrcomments > 0)
styleflags |= DNS_STYLEFLAG_RRCOMMENT;
if (nottl)
styleflags |= DNS_STYLEFLAG_NO_TTL;
@@ -468,7 +526,9 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
styleflags |= DNS_STYLEFLAG_OMIT_TTL;
styleflags |= DNS_STYLEFLAG_TTL;
styleflags |= DNS_STYLEFLAG_MULTILINE;
styleflags |= DNS_STYLEFLAG_RRCOMMENT;
/* Turn on rrcomments unless explicitly disabled */
if (rrcomments >= 0)
styleflags |= DNS_STYLEFLAG_RRCOMMENT;
}
if (multiline || (nottl && noclass))
result = dns_master_stylecreate2(&style, styleflags,
@@ -516,6 +576,12 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
printf(";; Got answer:\n");
if (headers) {
if (isdotlocal(msg)) {
printf(";; WARNING: .local is reserved for "
"Multicast DNS\n;; You are currently "
"testing what happens when an mDNS "
"query is leaked to DNS\n");
}
printf(";; ->>HEADER<<- opcode: %s, status: %s, "
"id: %u\n",
opcodetext[msg->opcode],
@@ -671,33 +737,27 @@ cleanup:
static void
printgreeting(int argc, char **argv, dig_lookup_t *lookup) {
int i;
int remaining;
static isc_boolean_t first = ISC_TRUE;
char append[MXNAME];
if (printcmd) {
lookup->cmdline[sizeof(lookup->cmdline) - 1] = 0;
snprintf(lookup->cmdline, sizeof(lookup->cmdline),
"%s; <<>> DiG " VERSION " <<>>",
first?"\n":"");
i = 1;
while (i < argc) {
snprintf(append, sizeof(append), " %s", argv[i++]);
remaining = sizeof(lookup->cmdline) -
strlen(lookup->cmdline) - 1;
strncat(lookup->cmdline, append, remaining);
strlcat(lookup->cmdline, append,
sizeof(lookup->cmdline));
}
remaining = sizeof(lookup->cmdline) -
strlen(lookup->cmdline) - 1;
strncat(lookup->cmdline, "\n", remaining);
strlcat(lookup->cmdline, "\n", sizeof(lookup->cmdline));
if (first && addresscount != 0) {
snprintf(append, sizeof(append),
"; (%d server%s found)\n",
addresscount,
addresscount > 1 ? "s" : "");
remaining = sizeof(lookup->cmdline) -
strlen(lookup->cmdline) - 1;
strncat(lookup->cmdline, append, remaining);
strlcat(lookup->cmdline, append,
sizeof(lookup->cmdline));
}
if (first) {
snprintf(append, sizeof(append),
@@ -705,9 +765,8 @@ printgreeting(int argc, char **argv, dig_lookup_t *lookup) {
short_form ? " +short" : "",
printcmd ? " +cmd" : "");
first = ISC_FALSE;
remaining = sizeof(lookup->cmdline) -
strlen(lookup->cmdline) - 1;
strncat(lookup->cmdline, append, remaining);
strlcat(lookup->cmdline, append,
sizeof(lookup->cmdline));
}
}
}
@@ -720,7 +779,7 @@ printgreeting(int argc, char **argv, dig_lookup_t *lookup) {
*/
static void
plus_option(char *option, isc_boolean_t is_batchfile,
plus_option(const char *option, isc_boolean_t is_batchfile,
dig_lookup_t *lookup)
{
isc_result_t result;
@@ -732,10 +791,9 @@ plus_option(char *option, isc_boolean_t is_batchfile,
size_t n;
#endif
strncpy(option_store, option, sizeof(option_store));
option_store[sizeof(option_store)-1]=0;
strlcpy(option_store, option, sizeof(option_store));
ptr = option_store;
cmd = next_token(&ptr,"=");
cmd = next_token(&ptr, "=");
if (cmd == NULL) {
printf(";; Invalid option %s\n", option_store);
return;
@@ -789,7 +847,6 @@ plus_option(char *option, isc_boolean_t is_batchfile,
lookup->section_answer = state;
lookup->section_additional = state;
lookup->comments = state;
rrcomments = state;
lookup->stats = state;
printcmd = state;
break;
@@ -879,8 +936,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
goto need_value;
if (!state)
goto invalid_option;
strncpy(domainopt, value, sizeof(domainopt));
domainopt[sizeof(domainopt)-1] = '\0';
strlcpy(domainopt, value, sizeof(domainopt));
break;
default:
goto invalid_option;
@@ -908,13 +964,29 @@ plus_option(char *option, isc_boolean_t is_batchfile,
case 'i':
switch (cmd[1]) {
case 'd': /* identify */
FULLCHECK("identify");
lookup->identify = state;
switch (cmd[2]) {
case 'e':
FULLCHECK("identify");
lookup->identify = state;
break;
case 'n':
FULLCHECK("idnout");
#ifndef WITH_IDN
fprintf(stderr, ";; IDN support not enabled\n");
#else
lookup->idnout = state;
#endif
break;
default:
goto invalid_option;
}
break;
case 'g': /* ignore */
default: /* Inherits default for compatibility */
default: /*
* Inherits default for compatibility (+[no]i*).
*/
FULLCHECK("ignore");
lookup->ignore = ISC_TRUE;
lookup->ignore = state;
}
break;
case 'k':
@@ -955,13 +1027,13 @@ plus_option(char *option, isc_boolean_t is_batchfile,
lookup->identify = ISC_TRUE;
lookup->stats = ISC_FALSE;
lookup->comments = ISC_FALSE;
rrcomments = ISC_FALSE;
lookup->section_additional = ISC_FALSE;
lookup->section_authority = ISC_FALSE;
lookup->section_question = ISC_FALSE;
lookup->rdtype = dns_rdatatype_ns;
lookup->rdtypeset = ISC_TRUE;
short_form = ISC_TRUE;
rrcomments = 0;
}
break;
default:
@@ -1022,7 +1094,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
break;
case 'r': /* rrcomments */
FULLCHECK("rrcomments");
rrcomments = state;
rrcomments = state ? 1 : -1;
break;
default:
goto invalid_option;
@@ -1050,8 +1122,8 @@ plus_option(char *option, isc_boolean_t is_batchfile,
lookup->section_authority = ISC_FALSE;
lookup->section_question = ISC_FALSE;
lookup->comments = ISC_FALSE;
rrcomments = ISC_FALSE;
lookup->stats = ISC_FALSE;
rrcomments = -1;
}
break;
case 'w': /* showsearch */
@@ -1149,7 +1221,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
lookup->recurse = ISC_FALSE;
lookup->identify = ISC_TRUE;
lookup->comments = ISC_FALSE;
rrcomments = ISC_FALSE;
rrcomments = 0;
lookup->stats = ISC_FALSE;
lookup->section_additional = ISC_FALSE;
lookup->section_authority = ISC_TRUE;
@@ -1207,7 +1279,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
invalid_option:
need_value:
fprintf(stderr, "Invalid option: +%s\n",
option);
option);
usage();
}
return;
@@ -1341,7 +1413,7 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
}
*open_type_class = ISC_FALSE;
tr.base = value;
tr.length = strlen(value);
tr.length = (unsigned int) strlen(value);
result = dns_rdataclass_fromtext(&rdclass,
(isc_textregion_t *)&tr);
if (result == ISC_R_SUCCESS) {
@@ -1356,8 +1428,7 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
batchname = value;
return (value_from_next);
case 'k':
strncpy(keyfile, value, sizeof(keyfile));
keyfile[sizeof(keyfile)-1]=0;
strlcpy(keyfile, value, sizeof(keyfile));
return (value_from_next);
case 'p':
result = parse_uint(&num, value, MAXPORT, "port number");
@@ -1371,9 +1442,8 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
(*lookup) = clone_lookup(default_lookup,
ISC_TRUE);
*need_clone = ISC_TRUE;
strncpy((*lookup)->textname, value,
strlcpy((*lookup)->textname, value,
sizeof((*lookup)->textname));
(*lookup)->textname[sizeof((*lookup)->textname)-1]=0;
(*lookup)->trace_root = ISC_TF((*lookup)->trace ||
(*lookup)->ns_search_only);
(*lookup)->new_search = ISC_TRUE;
@@ -1392,7 +1462,7 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
result = ISC_R_SUCCESS;
} else {
tr.base = value;
tr.length = strlen(value);
tr.length = (unsigned int) strlen(value);
result = dns_rdatatype_fromtext(&rdtype,
(isc_textregion_t *)&tr);
if (result == ISC_R_SUCCESS &&
@@ -1434,14 +1504,14 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
value);
return (value_from_next);
case 'y':
ptr = next_token(&value,":"); /* hmac type or name */
ptr = next_token(&value, ":"); /* hmac type or name */
if (ptr == NULL) {
usage();
}
ptr2 = next_token(&value, ":"); /* name or secret */
if (ptr2 == NULL)
usage();
ptr3 = next_token(&value,":"); /* secret or NULL */
ptr3 = next_token(&value, ":"); /* secret or NULL */
if (ptr3 != NULL) {
parse_hmac(ptr);
ptr = ptr2;
@@ -1450,10 +1520,8 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
hmacname = DNS_TSIG_HMACMD5_NAME;
digestbits = 0;
}
strncpy(keynametext, ptr, sizeof(keynametext));
keynametext[sizeof(keynametext)-1]=0;
strncpy(keysecret, ptr2, sizeof(keysecret));
keysecret[sizeof(keysecret)-1]=0;
strlcpy(keynametext, ptr, sizeof(keynametext));
strlcpy(keysecret, ptr2, sizeof(keysecret));
return (value_from_next);
case 'x':
if (*need_clone)
@@ -1461,9 +1529,8 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
*need_clone = ISC_TRUE;
if (get_reverse(textname, sizeof(textname), value,
ip6_int, ISC_FALSE) == ISC_R_SUCCESS) {
strncpy((*lookup)->textname, textname,
strlcpy((*lookup)->textname, textname,
sizeof((*lookup)->textname));
(*lookup)->textname[sizeof((*lookup)->textname)-1] = 0;
debug("looking up %s", (*lookup)->textname);
(*lookup)->trace_root = ISC_TF((*lookup)->trace ||
(*lookup)->ns_search_only);
@@ -1514,11 +1581,22 @@ preparse_args(int argc, char **argv) {
continue;
option = &rv[0][1];
while (strpbrk(option, single_dash_opts) == &option[0]) {
if (option[0] == 'm') {
switch (option[0]) {
case 'm':
memdebugging = ISC_TRUE;
isc_mem_debugging = ISC_MEM_DEBUGTRACE |
ISC_MEM_DEBUGRECORD;
return;
break;
case '4':
if (ipv6only)
fatal("only one of -4 and -6 allowed");
ipv4only = ISC_TRUE;
break;
case '6':
if (ipv4only)
fatal("only one of -4 and -6 allowed");
ipv6only = ISC_TRUE;
break;
}
option = &option[1];
}
@@ -1671,7 +1749,8 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
result = ISC_R_SUCCESS;
} else {
tr.base = rv[0];
tr.length = strlen(rv[0]);
tr.length =
(unsigned int) strlen(rv[0]);
result = dns_rdatatype_fromtext(&rdtype,
(isc_textregion_t *)&tr);
if (result == ISC_R_SUCCESS &&
@@ -1736,9 +1815,8 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
lookup = clone_lookup(default_lookup,
ISC_TRUE);
need_clone = ISC_TRUE;
strncpy(lookup->textname, rv[0],
strlcpy(lookup->textname, rv[0],
sizeof(lookup->textname));
lookup->textname[sizeof(lookup->textname)-1]=0;
lookup->trace_root = ISC_TF(lookup->trace ||
lookup->ns_search_only);
lookup->new_search = ISC_TRUE;
@@ -1804,7 +1882,7 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
lookup->trace_root = ISC_TF(lookup->trace ||
lookup->ns_search_only);
lookup->new_search = ISC_TRUE;
strcpy(lookup->textname, ".");
strlcpy(lookup->textname, ".", sizeof(lookup->textname));
lookup->rdtype = dns_rdatatype_ns;
lookup->rdtypeset = ISC_TRUE;
if (firstarg) {
@@ -1822,8 +1900,8 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
* Here, we're possibly reading from a batch file, then shutting down
* for real if there's nothing in the batch file to read.
*/
void
dighost_shutdown(void) {
static void
query_finished(void) {
char batchline[MXNAME];
int bargc;
char *bargv[16];
@@ -1869,41 +1947,92 @@ dighost_shutdown(void) {
}
}
/*% Main processing routine for dig */
int
main(int argc, char **argv) {
void dig_setup(int argc, char **argv)
{
isc_result_t result;
ISC_LIST_INIT(lookup_list);
ISC_LIST_INIT(server_list);
ISC_LIST_INIT(search_list);
debug("main()");
preparse_args(argc, argv);
debug("dig_setup()");
/* setup dighost callbacks */
#ifdef DIG_SIGCHASE
dighost_printrdataset = printrdataset;
#endif
dighost_printmessage = printmessage;
dighost_received = received;
dighost_trying = trying;
dighost_shutdown = query_finished;
progname = argv[0];
preparse_args(argc, argv);
result = isc_app_start();
check_result(result, "isc_app_start");
setup_libs();
parse_args(ISC_FALSE, ISC_FALSE, argc, argv);
setup_system();
setup_system(ipv4only, ipv6only);
}
void dig_query_setup(isc_boolean_t is_batchfile, isc_boolean_t config_only,
int argc, char **argv)
{
debug("dig_query_setup");
parse_args(is_batchfile, config_only, argc, argv);
if (keyfile[0] != 0)
setup_file_key();
else if (keysecret[0] != 0)
setup_text_key();
if (domainopt[0] != '\0') {
set_search_domain(domainopt);
usesearch = ISC_TRUE;
}
}
void dig_startup() {
isc_result_t result;
debug("dig_startup()");
result = isc_app_onrun(mctx, global_task, onrun_callback, NULL);
check_result(result, "isc_app_onrun");
isc_app_run();
}
void dig_query_start()
{
start_lookup();
}
void
dig_shutdown() {
destroy_lookup(default_lookup);
if (batchname != NULL) {
if (batchfp != stdin)
fclose(batchfp);
batchname = NULL;
}
#ifdef DIG_SIGCHASE
clean_trustedkey();
#endif
cancel_all();
destroy_libs();
isc_app_finish();
}
/*% Main processing routine for dig */
int
main(int argc, char **argv) {
dig_setup(argc, argv);
dig_query_setup(ISC_FALSE, ISC_FALSE, argc, argv);
dig_startup();
dig_shutdown();
return (exitcode);
}

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2004-2011, 2013-2015 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004-2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2003 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -18,10 +15,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.dig">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.dig">
<info>
<date>2014-02-12</date>
</info>
<refentryinfo>
<date>February 12, 2014</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -48,6 +49,8 @@
<year>2013</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2017</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
<copyright>
@@ -60,44 +63,45 @@
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dig</command>
<arg choice="opt">@server</arg>
<arg><option>-b <replaceable class="parameter">address</replaceable></option></arg>
<arg><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg><option>-f <replaceable class="parameter">filename</replaceable></option></arg>
<arg><option>-k <replaceable class="parameter">filename</replaceable></option></arg>
<arg><option>-m</option></arg>
<arg><option>-p <replaceable class="parameter">port#</replaceable></option></arg>
<arg><option>-q <replaceable class="parameter">name</replaceable></option></arg>
<arg><option>-t <replaceable class="parameter">type</replaceable></option></arg>
<arg><option>-v</option></arg>
<arg><option>-x <replaceable class="parameter">addr</replaceable></option></arg>
<arg><option>-y <replaceable class="parameter"><optional>hmac:</optional>name:key</replaceable></option></arg>
<arg><option>-4</option></arg>
<arg><option>-6</option></arg>
<arg choice="opt">name</arg>
<arg choice="opt">type</arg>
<arg choice="opt">class</arg>
<arg choice="opt" rep="norepeat">@server</arg>
<arg choice="opt" rep="norepeat"><option>-b <replaceable class="parameter">address</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-f <replaceable class="parameter">filename</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-k <replaceable class="parameter">filename</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-m</option></arg>
<arg choice="opt" rep="norepeat"><option>-p <replaceable class="parameter">port#</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-q <replaceable class="parameter">name</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-t <replaceable class="parameter">type</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-v</option></arg>
<arg choice="opt" rep="norepeat"><option>-x <replaceable class="parameter">addr</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-y <replaceable class="parameter"><optional>hmac:</optional>name:key</replaceable></option></arg>
<group choice="opt" rep="norepeat">
<arg choice="opt" rep="norepeat"><option>-4</option></arg>
<arg choice="opt" rep="norepeat"><option>-6</option></arg>
</group>
<arg choice="opt" rep="norepeat">name</arg>
<arg choice="opt" rep="norepeat">type</arg>
<arg choice="opt" rep="norepeat">class</arg>
<arg choice="opt" rep="repeat">queryopt</arg>
</cmdsynopsis>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dig</command>
<arg><option>-h</option></arg>
<arg choice="opt" rep="norepeat"><option>-h</option></arg>
</cmdsynopsis>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dig</command>
<arg choice="opt" rep="repeat">global-queryopt</arg>
<arg choice="opt" rep="repeat">query</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<para><command>dig</command>
(domain information groper) is a flexible tool
<refsection><info><title>DESCRIPTION</title></info>
<para><command>dig</command> is a flexible tool
for interrogating DNS name servers. It performs DNS lookups and
displays the answers that are returned from the name server(s) that
were queried. Most DNS administrators use <command>dig</command> to
@@ -141,15 +145,15 @@
<para>
The IN and CH class names overlap with the IN and CH top level
domain names. Either use the <option>-t</option> and
<option>-c</option> options to specify the type and class,
<option>-c</option> options to specify the type and class,
use the <option>-q</option> the specify the domain name, or
use "IN." and "CH." when looking up these top level domains.
</para>
</refsect1>
</refsection>
<refsection><info><title>SIMPLE USAGE</title></info>
<refsect1>
<title>SIMPLE USAGE</title>
<para>
A typical invocation of <command>dig</command> looks like:
@@ -198,7 +202,7 @@
<term><constant>type</constant></term>
<listitem>
<para>
indicates what type of query is required &mdash;
indicates what type of query is required
ANY, A, MX, SIG, etc.
<parameter>type</parameter> can be any valid query
type. If no
@@ -212,10 +216,10 @@
</variablelist>
</para>
</refsect1>
</refsection>
<refsection><info><title>OPTIONS</title></info>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
@@ -415,10 +419,10 @@
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>QUERY OPTIONS</title></info>
<refsect1>
<title>QUERY OPTIONS</title>
<para><command>dig</command>
provides a number of query options which affect
@@ -658,6 +662,17 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]idnout</option></term>
<listitem>
<para>
Convert [do not convert] puny code on output.
This requires IDN SUPPORT to have been enabled at
compile time. The default is to convert output.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]ignore</option></term>
<listitem>
@@ -1006,10 +1021,10 @@
</variablelist>
</para>
</refsect1>
</refsection>
<refsection><info><title>MULTIPLE QUERIES</title></info>
<refsect1>
<title>MULTIPLE QUERIES</title>
<para>
The BIND 9 implementation of <command>dig </command>
@@ -1055,10 +1070,10 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
<literal>isc.org</literal>.
</para>
</refsect1>
</refsection>
<refsection><info><title>IDN SUPPORT</title></info>
<refsect1>
<title>IDN SUPPORT</title>
<para>
If <command>dig</command> has been built with IDN (internationalized
domain name) support, it can accept and display non-ASCII domain names.
@@ -1067,21 +1082,21 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
reply from the server.
If you'd like to turn off the IDN support for some reason, defines
the <envar>IDN_DISABLE</envar> environment variable.
The IDN support is disabled if the variable is set when
The IDN support is disabled if the variable is set when
<command>dig</command> runs.
</para>
</refsect1>
</refsection>
<refsection><info><title>FILES</title></info>
<refsect1>
<title>FILES</title>
<para><filename>/etc/resolv.conf</filename>
</para>
<para><filename>${HOME}/.digrc</filename>
</para>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>host</refentrytitle><manvolnum>1</manvolnum>
</citerefentry>,
@@ -1093,16 +1108,12 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
</citerefentry>,
<citetitle>RFC1035</citetitle>.
</para>
</refsect1>
</refsection>
<refsection><info><title>BUGS</title></info>
<refsect1>
<title>BUGS</title>
<para>
There are probably too many query options.
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refsection>
</refentry>

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2004-2015 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2004-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2000-2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and/or distribute this software for any
@@ -240,13 +240,13 @@ isc_result_t prove_nx_domain(dns_message_t * msg,
dns_rdataset_t ** sigrdataset);
isc_result_t prove_nx_type(dns_message_t * msg, dns_name_t *name,
dns_rdataset_t *nsec,
dns_rdataclass_t class,
dns_rdataclass_t rdclass,
dns_rdatatype_t type,
dns_name_t * rdata_name,
dns_rdataset_t ** rdataset,
dns_rdataset_t ** sigrdataset);
isc_result_t prove_nx(dns_message_t * msg, dns_name_t * name,
dns_rdataclass_t class,
dns_rdataclass_t rdclass,
dns_rdatatype_t type,
dns_name_t * rdata_name,
dns_rdataset_t ** rdataset,
@@ -349,6 +349,29 @@ struct_tk_list tk_list = { {NULL, NULL, NULL, NULL, NULL}, 0};
"isc_mutex_unlock");\
}
/* dynamic callbacks */
#ifdef DIG_SIGCHASE
isc_result_t
(*dighost_printrdataset)(dns_name_t *owner_name, dns_rdataset_t *rdataset,
isc_buffer_t *target);
#endif
isc_result_t
(*dighost_printmessage)(dig_query_t *query, dns_message_t *msg,
isc_boolean_t headers);
void
(*dighost_received)(int bytes, isc_sockaddr_t *from, dig_query_t *query);
void
(*dighost_trying)(char *frm, dig_lookup_t *lookup);
void
(*dighost_shutdown)(void);
/* forward declarations */
static void
cancel_lookup(dig_lookup_t *lookup);
@@ -446,8 +469,8 @@ hex_dump(isc_buffer_t *b) {
* ISC_R_NOSPACE if that would advance p past 'end'.
*/
static isc_result_t
append(const char *text, int len, char **p, char *end) {
if (len > end - *p)
append(const char *text, size_t len, char **p, char *end) {
if (*p + len > end)
return (ISC_R_NOSPACE);
memmove(*p, text, len);
*p += len;
@@ -456,8 +479,8 @@ append(const char *text, int len, char **p, char *end) {
static isc_result_t
reverse_octets(const char *in, char **p, char *end) {
char *dot = strchr(in, '.');
int len;
const char *dot = strchr(in, '.');
size_t len;
if (dot != NULL) {
isc_result_t result;
result = reverse_octets(dot + 1, p, end);
@@ -466,9 +489,9 @@ reverse_octets(const char *in, char **p, char *end) {
result = append(".", 1, p, end);
if (result != ISC_R_SUCCESS)
return (result);
len = (int)(dot - in);
len = (int) (dot - in);
} else {
len = strlen(in);
len = (int) strlen(in);
}
return (append(in, len, p, end));
}
@@ -760,7 +783,6 @@ make_empty_lookup(void) {
looknew->sendmsg = NULL;
looknew->name = NULL;
looknew->oname = NULL;
looknew->timer = NULL;
looknew->xfr_q = NULL;
looknew->current_query = NULL;
looknew->doing_xfr = ISC_FALSE;
@@ -774,6 +796,11 @@ make_empty_lookup(void) {
looknew->besteffort = ISC_TRUE;
looknew->dnssec = ISC_FALSE;
looknew->nsid = ISC_FALSE;
#ifdef WITH_IDN
looknew->idnout = ISC_TRUE;
#else
looknew->idnout = ISC_FALSE;
#endif
#ifdef DIG_SIGCHASE
looknew->sigchase = ISC_FALSE;
#if DIG_SIGCHASE_TD
@@ -810,6 +837,7 @@ make_empty_lookup(void) {
looknew->new_search = ISC_FALSE;
looknew->done_as_is = ISC_FALSE;
looknew->need_search = ISC_FALSE;
looknew->eoferr = 0;
dns_fixedname_init(&looknew->fdomain);
ISC_LINK_INIT(looknew, link);
ISC_LIST_INIT(looknew->q);
@@ -857,6 +885,7 @@ clone_lookup(dig_lookup_t *lookold, isc_boolean_t servers) {
looknew->besteffort = lookold->besteffort;
looknew->dnssec = lookold->dnssec;
looknew->nsid = lookold->nsid;
looknew->idnout = lookold->idnout;
#ifdef DIG_SIGCHASE
looknew->sigchase = lookold->sigchase;
#if DIG_SIGCHASE_TD
@@ -884,10 +913,12 @@ clone_lookup(dig_lookup_t *lookold, isc_boolean_t servers) {
looknew->section_answer = lookold->section_answer;
looknew->section_authority = lookold->section_authority;
looknew->section_additional = lookold->section_additional;
looknew->origin = lookold->origin;
looknew->retries = lookold->retries;
looknew->tsigctx = NULL;
looknew->need_search = lookold->need_search;
looknew->done_as_is = lookold->done_as_is;
looknew->eoferr = lookold->eoferr;
dns_name_copy(dns_fixedname_name(&lookold->fdomain),
dns_fixedname_name(&looknew->fdomain), NULL);
@@ -927,13 +958,12 @@ requeue_lookup(dig_lookup_t *lookold, isc_boolean_t servers) {
return (looknew);
}
static void
void
setup_text_key(void) {
isc_result_t result;
dns_name_t keyname;
isc_buffer_t secretbuf;
int secretsize;
unsigned int secretsize;
unsigned char *secretstore;
debug("setup_text_key()");
@@ -942,7 +972,7 @@ setup_text_key(void) {
dns_name_init(&keyname, NULL);
check_result(result, "dns_name_init");
isc_buffer_putstr(namebuf, keynametext);
secretsize = strlen(keysecret) * 3 / 4;
secretsize = (unsigned int) strlen(keysecret) * 3 / 4;
secretstore = isc_mem_allocate(mctx, secretsize);
if (secretstore == NULL)
fatal("memory allocation failure in %s:%d",
@@ -964,8 +994,8 @@ setup_text_key(void) {
goto failure;
result = dns_tsigkey_create(&keyname, hmacname, secretstore,
secretsize, ISC_FALSE, NULL, 0, 0, mctx,
NULL, &key);
(int)secretsize, ISC_FALSE, NULL, 0, 0,
mctx, NULL, &key);
failure:
if (result != ISC_R_SUCCESS)
printf(";; Couldn't create key %s: %s\n",
@@ -1012,13 +1042,13 @@ parse_bits(char *arg, const char *desc, isc_uint32_t max) {
void
parse_hmac(const char *hmac) {
char buf[20];
int len;
size_t len;
REQUIRE(hmac != NULL);
len = strlen(hmac);
if (len >= (int) sizeof(buf))
fatal("unknown key type '%.*s'", len, hmac);
if (len >= sizeof(buf))
fatal("unknown key type '%.*s'", (int)len, hmac);
strlcpy(buf, hmac, sizeof(buf));
digestbits = 0;
@@ -1115,7 +1145,7 @@ read_confkey(void) {
return (result);
}
static void
void
setup_file_key(void) {
isc_result_t result;
dst_key_t *dstkey = NULL;
@@ -1218,13 +1248,31 @@ create_search_list(lwres_conf_t *confdata) {
* settings.
*/
void
setup_system(void) {
setup_system(isc_boolean_t ipv4only, isc_boolean_t ipv6only) {
dig_searchlist_t *domain = NULL;
lwres_result_t lwresult;
unsigned int lwresflags;
debug("setup_system()");
if (ipv4only) {
if (have_ipv4) {
isc_net_disableipv6();
have_ipv6 = ISC_FALSE;
} else {
fatal("can't find IPv4 networking");
}
}
if (ipv6only) {
if (have_ipv6) {
isc_net_disableipv4();
have_ipv4 = ISC_FALSE;
} else {
fatal("can't find IPv6 networking");
}
}
lwresflags = LWRES_CONTEXT_SERVERMODE;
if (have_ipv4)
lwresflags |= LWRES_CONTEXT_USEIPV4;
@@ -1490,6 +1538,8 @@ clear_query(dig_query_t *query) {
debug("clear_query(%p)", query);
if (query->timer != NULL)
isc_timer_detach(&query->timer);
lookup = query->lookup;
if (lookup->current_query == query)
@@ -1583,8 +1633,6 @@ destroy_lookup(dig_lookup_t *lookup) {
debug("freeing buffer %p", lookup->querysig);
isc_buffer_free(&lookup->querysig);
}
if (lookup->timer != NULL)
isc_timer_detach(&lookup->timer);
if (lookup->sendspace != NULL)
isc_mempool_put(commctx, lookup->sendspace);
@@ -1847,7 +1895,8 @@ followup_lookup(dns_message_t *msg, dig_query_t *query, dns_section_t section)
namestr, isc_result_totext(lresult));
if (addresses_result == ISC_R_SUCCESS) {
addresses_result = lresult;
strcpy(bad_namestr, namestr);
strlcpy(bad_namestr, namestr,
sizeof(bad_namestr));
}
}
numLookups += num;
@@ -2028,7 +2077,7 @@ isc_boolean_t
setup_lookup(dig_lookup_t *lookup) {
isc_result_t result;
isc_uint32_t id;
int len;
unsigned int len;
dig_server_t *serv;
dig_query_t *query;
isc_buffer_t b;
@@ -2040,7 +2089,8 @@ setup_lookup(dig_lookup_t *lookup) {
#endif
#ifdef WITH_IDN
result = dns_name_settotextfilter(output_filter);
result = dns_name_settotextfilter(lookup->idnout ?
output_filter : NULL);
check_result(result, "dns_name_settotextfilter");
#endif
@@ -2066,10 +2116,10 @@ setup_lookup(dig_lookup_t *lookup) {
check_result(result, "dns_message_gettempname");
dns_name_init(lookup->name, NULL);
isc_buffer_init(&lookup->namebuf, lookup->namespace,
sizeof(lookup->namespace));
isc_buffer_init(&lookup->onamebuf, lookup->onamespace,
sizeof(lookup->onamespace));
isc_buffer_init(&lookup->namebuf, lookup->name_space,
sizeof(lookup->name_space));
isc_buffer_init(&lookup->onamebuf, lookup->oname_space,
sizeof(lookup->oname_space));
#ifdef WITH_IDN
/*
@@ -2133,7 +2183,7 @@ setup_lookup(dig_lookup_t *lookup) {
check_result(result, "dns_message_gettempname");
dns_name_init(lookup->oname, NULL);
/* XXX Helper funct to conv char* to name? */
len = strlen(lookup->origin->origin);
len = (unsigned int) strlen(lookup->origin->origin);
isc_buffer_init(&b, lookup->origin->origin, len);
isc_buffer_add(&b, len);
result = dns_name_fromtext(lookup->oname, &b, dns_rootname,
@@ -2155,7 +2205,7 @@ setup_lookup(dig_lookup_t *lookup) {
dns_fixedname_init(&fixed);
name = dns_fixedname_name(&fixed);
len = strlen(lookup->textname);
len = (unsigned int) strlen(lookup->textname);
isc_buffer_init(&b, lookup->textname, len);
isc_buffer_add(&b, len);
result = dns_name_fromtext(name, &b, NULL, 0, NULL);
@@ -2189,14 +2239,14 @@ setup_lookup(dig_lookup_t *lookup) {
dns_name_clone(dns_rootname, lookup->name);
else {
#ifdef WITH_IDN
len = strlen(idn_textname);
len = (unsigned int) strlen(idn_textname);
isc_buffer_init(&b, idn_textname, len);
isc_buffer_add(&b, len);
result = dns_name_fromtext(lookup->name, &b,
dns_rootname, 0,
&lookup->namebuf);
#else
len = strlen(lookup->textname);
len = (unsigned int) strlen(lookup->textname);
isc_buffer_init(&b, lookup->textname, len);
isc_buffer_add(&b, len);
result = dns_name_fromtext(lookup->name, &b,
@@ -2213,7 +2263,7 @@ setup_lookup(dig_lookup_t *lookup) {
}
}
dns_name_format(lookup->name, store, sizeof(store));
trying(store, lookup);
dighost_trying(store, lookup);
INSIST(dns_name_isabsolute(lookup->name));
isc_random_get(&id);
@@ -2338,6 +2388,7 @@ setup_lookup(dig_lookup_t *lookup) {
debug("create query %p linked to lookup %p",
query, lookup);
query->lookup = lookup;
query->timer = NULL;
query->waiting_connect = ISC_FALSE;
query->waiting_senddone = ISC_FALSE;
query->pending_free = ISC_FALSE;
@@ -2347,6 +2398,7 @@ setup_lookup(dig_lookup_t *lookup) {
query->second_rr_rcvd = ISC_FALSE;
query->first_repeat_rcvd = ISC_FALSE;
query->warn_id = ISC_TRUE;
query->timedout = ISC_FALSE;
query->first_rr_serial = 0;
query->second_rr_serial = 0;
query->servname = serv->servername;
@@ -2374,7 +2426,7 @@ setup_lookup(dig_lookup_t *lookup) {
/* XXX qrflag, print_query, etc... */
if (!ISC_LIST_EMPTY(lookup->q) && qr) {
extrabytes = 0;
printmessage(ISC_LIST_HEAD(lookup->q), lookup->sendmsg,
dighost_printmessage(ISC_LIST_HEAD(lookup->q), lookup->sendmsg,
ISC_TRUE);
}
return (ISC_TRUE);
@@ -2451,8 +2503,6 @@ cancel_lookup(dig_lookup_t *lookup) {
}
query = next;
}
if (lookup->timer != NULL)
isc_timer_detach(&lookup->timer);
lookup->pending = ISC_FALSE;
lookup->retries = 0;
}
@@ -2470,7 +2520,7 @@ bringup_timer(dig_query_t *query, unsigned int default_timeout) {
* just reset it.
*/
l = query->lookup;
if (ISC_LIST_NEXT(query, link) != NULL)
if (ISC_LINK_LINKED(query, link) && ISC_LIST_NEXT(query, link) != NULL)
local_timeout = SERVER_TIMEOUT;
else {
if (timeout == 0)
@@ -2480,21 +2530,21 @@ bringup_timer(dig_query_t *query, unsigned int default_timeout) {
}
debug("have local timeout of %d", local_timeout);
isc_interval_set(&l->interval, local_timeout, 0);
if (l->timer != NULL)
isc_timer_detach(&l->timer);
if (query->timer != NULL)
isc_timer_detach(&query->timer);
result = isc_timer_create(timermgr, isc_timertype_once, NULL,
&l->interval, global_task, connect_timeout,
l, &l->timer);
query, &query->timer);
check_result(result, "isc_timer_create");
}
static void
force_timeout(dig_lookup_t *l, dig_query_t *query) {
force_timeout(dig_query_t *query) {
isc_event_t *event;
debug("force_timeout ()");
event = isc_event_allocate(mctx, query, ISC_TIMEREVENT_IDLE,
connect_timeout, l,
connect_timeout, query,
sizeof(isc_event_t));
if (event == NULL) {
fatal("isc_event_allocate: %s",
@@ -2508,8 +2558,8 @@ force_timeout(dig_lookup_t *l, dig_query_t *query) {
* We need to cancel the possible timeout event not to confuse
* ourselves due to the duplicate events.
*/
if (l->timer != NULL)
isc_timer_detach(&l->timer);
if (query->timer != NULL)
isc_timer_detach(&query->timer);
}
@@ -2539,7 +2589,7 @@ send_tcp_connect(dig_query_t *query) {
* by triggering an immediate 'timeout' (we lie, but the effect
* is the same).
*/
force_timeout(l, query);
force_timeout(query);
return;
}
@@ -2549,7 +2599,10 @@ send_tcp_connect(dig_query_t *query) {
printf(";; Skipping server %s, incompatible "
"address family\n", query->servname);
query->waiting_connect = ISC_FALSE;
next = ISC_LIST_NEXT(query, link);
if (ISC_LINK_LINKED(query, link))
next = ISC_LIST_NEXT(query, link);
else
next = NULL;
l = query->lookup;
clear_query(query);
if (next == NULL) {
@@ -2600,9 +2653,11 @@ send_tcp_connect(dig_query_t *query) {
*/
if (l->ns_search_only && !l->trace_root) {
debug("sending next, since searching");
next = ISC_LIST_NEXT(query, link);
if (ISC_LINK_LINKED(query, link))
if (ISC_LINK_LINKED(query, link)) {
next = ISC_LIST_NEXT(query, link);
ISC_LIST_DEQUEUE(l->q, query, link);
} else
next = NULL;
ISC_LIST_ENQUEUE(l->connecting, query, clink);
if (next != NULL)
send_tcp_connect(next);
@@ -2643,7 +2698,7 @@ send_udp(dig_query_t *query) {
result = get_address(query->servname, port, &query->sockaddr);
if (result != ISC_R_SUCCESS) {
/* This servname doesn't have an address. */
force_timeout(l, query);
force_timeout(query);
return;
}
@@ -2698,7 +2753,7 @@ send_udp(dig_query_t *query) {
static void
connect_timeout(isc_task_t *task, isc_event_t *event) {
dig_lookup_t *l = NULL;
dig_query_t *query = NULL, *next, *cq;
dig_query_t *query = NULL, *cq;
UNUSED(task);
REQUIRE(event->ev_type == ISC_TIMEREVENT_IDLE);
@@ -2706,13 +2761,14 @@ connect_timeout(isc_task_t *task, isc_event_t *event) {
debug("connect_timeout()");
LOCK_LOOKUP;
l = event->ev_arg;
query = l->current_query;
query = event->ev_arg;
l = query->lookup;
isc_event_free(&event);
INSIST(!free_now);
if ((query != NULL) && (query->lookup->current_query != NULL) &&
ISC_LINK_LINKED(query->lookup->current_query, link) &&
(ISC_LIST_NEXT(query->lookup->current_query, link) != NULL)) {
debug("trying next server...");
cq = query->lookup->current_query;
@@ -2722,14 +2778,17 @@ connect_timeout(isc_task_t *task, isc_event_t *event) {
if (query->sock != NULL)
isc_socket_cancel(query->sock, NULL,
ISC_SOCKCANCEL_ALL);
next = ISC_LIST_NEXT(cq, link);
if (next != NULL)
send_tcp_connect(next);
send_tcp_connect(ISC_LIST_NEXT(cq, link));
}
UNLOCK_LOOKUP;
return;
}
if (l->tcp_mode && query->sock != NULL) {
query->timedout = ISC_TRUE;
isc_socket_cancel(query->sock, NULL, ISC_SOCKCANCEL_ALL);
}
if (l->retries > 1) {
if (!l->tcp_mode) {
l->retries--;
@@ -2744,9 +2803,11 @@ connect_timeout(isc_task_t *task, isc_event_t *event) {
check_next_lookup(l);
}
} else {
fputs(l->cmdline, stdout);
printf(";; connection timed out; no servers could be "
"reached\n");
if (!l->ns_search_only) {
fputs(l->cmdline, stdout);
printf(";; connection timed out; no servers could be "
"reached\n");
}
cancel_lookup(l);
check_next_lookup(l);
if (exitcode < 9)
@@ -2765,7 +2826,7 @@ tcp_length_done(isc_task_t *task, isc_event_t *event) {
isc_buffer_t *b = NULL;
isc_result_t result;
dig_query_t *query = NULL;
dig_lookup_t *l;
dig_lookup_t *l, *n;
isc_uint16_t length;
REQUIRE(event->ev_type == ISC_SOCKEVENT_RECVDONE);
@@ -2800,13 +2861,20 @@ tcp_length_done(isc_task_t *task, isc_event_t *event) {
sizeof(sockstr));
printf(";; communications error to %s: %s\n",
sockstr, isc_result_totext(sevent->result));
if (keep != NULL)
isc_socket_detach(&keep);
l = query->lookup;
isc_socket_detach(&query->sock);
sockcount--;
debug("sockcount=%d", sockcount);
INSIST(sockcount >= 0);
if (sevent->result == ISC_R_EOF && l->eoferr == 0U) {
n = requeue_lookup(l, ISC_TRUE);
n->eoferr++;
}
isc_event_free(&event);
clear_query(query);
cancel_lookup(l);
check_next_lookup(l);
UNLOCK_LOOKUP;
return;
@@ -2912,6 +2980,7 @@ launch_next_query(dig_query_t *query, isc_boolean_t include_question) {
*/
static void
connect_done(isc_task_t *task, isc_event_t *event) {
char sockstr[ISC_SOCKADDR_FORMATSIZE];
isc_socketevent_t *sevent = NULL;
dig_query_t *query = NULL, *next;
dig_lookup_t *l;
@@ -2933,6 +3002,12 @@ connect_done(isc_task_t *task, isc_event_t *event) {
if (sevent->result == ISC_R_CANCELED) {
debug("in cancel handler");
isc_sockaddr_format(&query->sockaddr, sockstr, sizeof(sockstr));
if (query->timedout)
printf(";; Connection to %s(%s) for %s failed: %s.\n",
sockstr, query->servname,
query->lookup->textname,
isc_result_totext(ISC_R_TIMEDOUT));
isc_socket_detach(&query->sock);
INSIST(sockcount > 0);
sockcount--;
@@ -2946,7 +3021,6 @@ connect_done(isc_task_t *task, isc_event_t *event) {
return;
}
if (sevent->result != ISC_R_SUCCESS) {
char sockstr[ISC_SOCKADDR_FORMATSIZE];
debug("unsuccessful connection: %s",
isc_result_totext(sevent->result));
@@ -2957,8 +3031,8 @@ connect_done(isc_task_t *task, isc_event_t *event) {
query->servname, query->lookup->textname,
isc_result_totext(sevent->result));
isc_socket_detach(&query->sock);
INSIST(sockcount > 0);
sockcount--;
INSIST(sockcount >= 0);
/* XXX Clean up exitcodes */
if (exitcode < 9)
exitcode = 9;
@@ -3131,7 +3205,7 @@ check_for_more_data(dig_query_t *query, dns_message_t *msg,
launch_next_query(query, ISC_FALSE);
return (ISC_FALSE);
doexit:
received(sevent->n, &sevent->address, query);
dighost_received(sevent->n, &sevent->address, query);
return (ISC_TRUE);
}
@@ -3187,8 +3261,8 @@ recv_done(isc_task_t *task, isc_event_t *event) {
INSIST(b == &query->recvbuf);
ISC_LIST_DEQUEUE(sevent->bufferlist, &query->recvbuf, link);
if ((l->tcp_mode) && (l->timer != NULL))
isc_timer_touch(l->timer);
if ((l->tcp_mode) && (query->timer != NULL))
isc_timer_touch(query->timer);
if ((!l->pending && !l->ns_search_only) || cancel_now) {
debug("no longer pending. Got %s",
isc_result_totext(sevent->result));
@@ -3208,13 +3282,20 @@ recv_done(isc_task_t *task, isc_event_t *event) {
} else {
printf(";; communications error: %s\n",
isc_result_totext(sevent->result));
if (keep != NULL)
isc_socket_detach(&keep);
isc_socket_detach(&query->sock);
sockcount--;
debug("sockcount=%d", sockcount);
INSIST(sockcount >= 0);
}
if (sevent->result == ISC_R_EOF && l->eoferr == 0U) {
n = requeue_lookup(l, ISC_TRUE);
n->eoferr++;
}
isc_event_free(&event);
clear_query(query);
cancel_lookup(l);
check_next_lookup(l);
UNLOCK_LOOKUP;
return;
@@ -3276,6 +3357,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
if (fail) {
isc_event_free(&event);
clear_query(query);
cancel_lookup(l);
check_next_lookup(l);
UNLOCK_LOOKUP;
return;
@@ -3387,6 +3469,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
if (l->tcp_mode) {
isc_event_free(&event);
clear_query(query);
cancel_lookup(l);
check_next_lookup(l);
UNLOCK_LOOKUP;
return;
@@ -3399,7 +3482,8 @@ recv_done(isc_task_t *task, isc_event_t *event) {
printf(";; Truncated, retrying in TCP mode.\n");
n = requeue_lookup(l, ISC_TRUE);
n->tcp_mode = ISC_TRUE;
n->origin = query->lookup->origin;
if (l->trace && l->trace_root)
n->rdtype = l->qrdtype;
dns_message_destroy(&msg);
isc_event_free(&event);
clear_query(query);
@@ -3471,7 +3555,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
* the timeout to much longer, so brief network
* outages won't cause the XFR to abort
*/
if (timeout != INT_MAX && l->timer != NULL) {
if (timeout != INT_MAX && query->timer != NULL) {
unsigned int local_timeout;
if (timeout == 0) {
@@ -3487,7 +3571,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
}
debug("have local timeout of %d", local_timeout);
isc_interval_set(&l->interval, local_timeout, 0);
result = isc_timer_reset(l->timer,
result = isc_timer_reset(query->timer,
isc_timertype_once,
NULL,
&l->interval,
@@ -3500,21 +3584,21 @@ recv_done(isc_task_t *task, isc_event_t *event) {
if (msg->rcode == dns_rcode_nxdomain &&
(l->origin != NULL || l->need_search)) {
if (!next_origin(query->lookup) || showsearch) {
printmessage(query, msg, ISC_TRUE);
received(b->used, &sevent->address, query);
dighost_printmessage(query, msg, ISC_TRUE);
dighost_received(b->used, &sevent->address, query);
}
} else if (!l->trace && !l->ns_search_only) {
#ifdef DIG_SIGCHASE
if (!do_sigchase)
#endif
printmessage(query, msg, ISC_TRUE);
dighost_printmessage(query, msg, ISC_TRUE);
} else if (l->trace) {
int nl = 0;
int count = msg->counts[DNS_SECTION_ANSWER];
debug("in TRACE code");
if (!l->ns_search_only)
printmessage(query, msg, ISC_TRUE);
dighost_printmessage(query, msg, ISC_TRUE);
l->rdtype = l->qrdtype;
if (l->trace_root || (l->ns_search_only && count > 0)) {
@@ -3548,7 +3632,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
#ifdef DIG_SIGCHASE
if (!do_sigchase)
#endif
printmessage(query, msg, ISC_TRUE);
dighost_printmessage(query, msg, ISC_TRUE);
}
#ifdef DIG_SIGCHASE
if (do_sigchase) {
@@ -3622,7 +3706,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
#ifdef DIG_SIGCHASE
if (!l->sigchase)
#endif
received(b->used, &sevent->address, query);
dighost_received(b->used, &sevent->address, query);
}
if (!query->lookup->ns_search_only)
@@ -3706,7 +3790,7 @@ getaddresses(dig_lookup_t *lookup, const char *host, isc_result_t *resultp) {
if (resultp == NULL)
fatal("couldn't get address for '%s': %s",
host, isc_result_totext(result));
return 0;
return (0);
}
for (i = 0; i < count; i++) {
@@ -3716,7 +3800,7 @@ getaddresses(dig_lookup_t *lookup, const char *host, isc_result_t *resultp) {
ISC_LIST_APPEND(lookup->my_server_list, srv, link);
}
return count;
return (count);
}
/*%
@@ -3770,8 +3854,6 @@ cancel_all(void) {
}
cancel_now = ISC_TRUE;
if (current_lookup != NULL) {
if (current_lookup->timer != NULL)
isc_timer_detach(&current_lookup->timer);
for (q = ISC_LIST_HEAD(current_lookup->q);
q != NULL;
q = nq)
@@ -3991,7 +4073,7 @@ output_filter(isc_buffer_t *buffer, unsigned int used_org,
*/
if (idn_decodename(IDN_DECODE_APP, tmp1, tmp2, MAXDLEN) != idn_success)
return (ISC_R_SUCCESS);
strcpy(tmp1, tmp2);
strlcpy(tmp1, tmp2, MAXDLEN);
/*
* Copy the converted contents in 'tmp1' back to 'buffer'.
@@ -4018,17 +4100,17 @@ append_textname(char *name, const char *origin, size_t namesize) {
/* Already absolute? */
if (namelen > 0 && name[namelen - 1] == '.')
return idn_success;
return (idn_success);
/* Append dot and origin */
if (namelen + 1 + originlen >= namesize)
return idn_buffer_overflow;
return (idn_buffer_overflow);
if (*origin != '.')
name[namelen++] = '.';
(void)strcpy(name + namelen, origin);
return idn_success;
(void)strlcpy(name + namelen, origin, namesize - namelen);
return (idn_success);
}
static void
@@ -4173,27 +4255,33 @@ chase_scanname(dns_name_t *name, dns_rdatatype_t type, dns_rdatatype_t covers)
msg = ISC_LIST_NEXT(msg, link)) {
if (dns_message_firstname(msg->msg, DNS_SECTION_ANSWER)
== ISC_R_SUCCESS)
{
rdataset = chase_scanname_section(msg->msg, name,
type, covers,
DNS_SECTION_ANSWER);
if (rdataset != NULL)
return (rdataset);
}
if (dns_message_firstname(msg->msg, DNS_SECTION_AUTHORITY)
== ISC_R_SUCCESS)
{
rdataset =
chase_scanname_section(msg->msg, name,
type, covers,
DNS_SECTION_AUTHORITY);
if (rdataset != NULL)
return (rdataset);
}
if (dns_message_firstname(msg->msg, DNS_SECTION_ADDITIONAL)
== ISC_R_SUCCESS)
{
rdataset =
chase_scanname_section(msg->msg, name, type,
covers,
DNS_SECTION_ADDITIONAL);
if (rdataset != NULL)
return (rdataset);
}
}
return (NULL);
@@ -4620,7 +4708,7 @@ print_rdataset(dns_name_t *name, dns_rdataset_t *rdataset)
result = isc_buffer_allocate(mctx, &b, 9000);
check_result(result, "isc_buffer_allocate");
printrdataset(name, rdataset, b);
dighost_printrdataset(name, rdataset, b);
isc_buffer_usedregion(b, &r);
r.base[r.length] = '\0';
@@ -5757,7 +5845,7 @@ prove_nx_domain(dns_message_t *msg,
*/
isc_result_t
prove_nx_type(dns_message_t *msg, dns_name_t *name, dns_rdataset_t *nsecset,
dns_rdataclass_t class, dns_rdatatype_t type,
dns_rdataclass_t rdclass, dns_rdatatype_t type,
dns_name_t *rdata_name, dns_rdataset_t **rdataset,
dns_rdataset_t **sigrdataset)
{
@@ -5765,7 +5853,7 @@ prove_nx_type(dns_message_t *msg, dns_name_t *name, dns_rdataset_t *nsecset,
dns_rdataset_t *signsecset;
dns_rdata_t nsec = DNS_RDATA_INIT;
UNUSED(class);
UNUSED(rdclass);
ret = dns_rdataset_first(nsecset);
check_result(ret,"dns_rdataset_first");
@@ -5798,7 +5886,7 @@ prove_nx_type(dns_message_t *msg, dns_name_t *name, dns_rdataset_t *nsecset,
*
*/
isc_result_t
prove_nx(dns_message_t *msg, dns_name_t *name, dns_rdataclass_t class,
prove_nx(dns_message_t *msg, dns_name_t *name, dns_rdataclass_t rdclass,
dns_rdatatype_t type, dns_name_t *rdata_name,
dns_rdataset_t **rdataset, dns_rdataset_t **sigrdataset)
{
@@ -5820,7 +5908,7 @@ prove_nx(dns_message_t *msg, dns_name_t *name, dns_rdataclass_t class,
DNS_SECTION_AUTHORITY);
if (nsecset != NULL) {
printf("We have a NSEC for this zone :OK\n");
ret = prove_nx_type(msg, name, nsecset, class,
ret = prove_nx_type(msg, name, nsecset, rdclass,
type, rdata_name, rdataset,
sigrdataset);
if (ret != ISC_R_SUCCESS) {

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2004, 2005, 2007-2009, 2014 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2004, 2005, 2007-2009, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2000-2002 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
@@ -13,213 +13,258 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
'\" t
.\" Title: host
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: January 20, 2009
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2009-01-20
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "HOST" "1" "January 20, 2009" "BIND9" "BIND9"
.TH "HOST" "1" "2009\-01\-20" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
host \- DNS lookup utility
.SH "SYNOPSIS"
.HP 5
\fBhost\fR [\fB\-aCdlnrsTwv\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-N\ \fR\fB\fIndots\fR\fR] [\fB\-R\ \fR\fB\fInumber\fR\fR] [\fB\-t\ \fR\fB\fItype\fR\fR] [\fB\-W\ \fR\fB\fIwait\fR\fR] [\fB\-m\ \fR\fB\fIflag\fR\fR] [\fB\-4\fR] [\fB\-6\fR] [\fB\-v\fR] [\fB\-V\fR] {name} [server]
.HP \w'\fBhost\fR\ 'u
\fBhost\fR [\fB\-aCdlnrsTwv\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-N\ \fR\fB\fIndots\fR\fR] [\fB\-R\ \fR\fB\fInumber\fR\fR] [\fB\-t\ \fR\fB\fItype\fR\fR] [\fB\-W\ \fR\fB\fIwait\fR\fR] [\fB\-m\ \fR\fB\fIflag\fR\fR] [[\fB\-4\fR] | [\fB\-6\fR]] [\fB\-v\fR] [\fB\-V\fR] {name} [server]
.SH "DESCRIPTION"
.PP
\fBhost\fR
is a simple utility for performing DNS lookups. It is normally used to convert names to IP addresses and vice versa. When no arguments or options are given,
is a simple utility for performing DNS lookups\&. It is normally used to convert names to IP addresses and vice versa\&. When no arguments or options are given,
\fBhost\fR
prints a short summary of its command line arguments and options.
prints a short summary of its command line arguments and options\&.
.PP
\fIname\fR
is the domain name that is to be looked up. It can also be a dotted\-decimal IPv4 address or a colon\-delimited IPv6 address, in which case
is the domain name that is to be looked up\&. It can also be a dotted\-decimal IPv4 address or a colon\-delimited IPv6 address, in which case
\fBhost\fR
will by default perform a reverse lookup for that address.
will by default perform a reverse lookup for that address\&.
\fIserver\fR
is an optional argument which is either the name or IP address of the name server that
\fBhost\fR
should query instead of the server or servers listed in
\fI/etc/resolv.conf\fR.
/etc/resolv\&.conf\&.
.SH "OPTIONS"
.PP
The
\-4
.RS 4
Use IPv4 only for query transport\&. See also the
\fB\-6\fR
option\&.
.RE
.PP
\-6
.RS 4
Use IPv6 only for query transport\&. See also the
\fB\-4\fR
option\&.
.RE
.PP
\-a
.RS 4
"All"\&. The
\fB\-a\fR
(all) option is equivalent to setting the
\fB\-v\fR
option and asking
\fBhost\fR
to make a query of type ANY.
.PP
When the
\fB\-C\fR
option is used,
\fBhost\fR
will attempt to display the SOA records for zone
\fIname\fR
from all the listed authoritative name servers for that zone. The list of name servers is defined by the NS records that are found for the zone.
.PP
The
\fB\-c\fR
option instructs to make a DNS query of class
\fIclass\fR. This can be used to lookup Hesiod or Chaosnet class resource records. The default class is IN (Internet).
.PP
Verbose output is generated by
\fBhost\fR
when the
\fB\-d\fR
or
\fB\-v\fR
option is used. The two options are equivalent. They have been provided for backwards compatibility. In previous versions, the
\fB\-d\fR
option switched on debugging traces and
\fB\-v\fR
enabled verbose output.
.PP
List mode is selected by the
option is normally equivalent to
\fB\-v \-t \fR\fBANY\fR\&. It also affects the behaviour of the
\fB\-l\fR
option. This makes
list zone option\&.
.RE
.PP
\-c \fIclass\fR
.RS 4
Query class: This can be used to lookup HS (Hesiod) or CH (Chaosnet) class resource records\&. The default class is IN (Internet)\&.
.RE
.PP
\-C
.RS 4
Check consistency:
\fBhost\fR
perform a zone transfer for zone
\fIname\fR. Transfer the zone printing out the NS, PTR and address records (A/AAAA). If combined with
\fB\-a\fR
all records will be printed.
.PP
The
\fB\-i\fR
option specifies that reverse lookups of IPv6 addresses should use the IP6.INT domain as defined in RFC1886. The default is to use IP6.ARPA.
.PP
The
\fB\-N\fR
option sets the number of dots that have to be in
will query the SOA records for zone
\fIname\fR
for it to be considered absolute. The default value is that defined using the ndots statement in
\fI/etc/resolv.conf\fR, or 1 if no ndots statement is present. Names with fewer dots are interpreted as relative names and will be searched for in the domains listed in the
from all the listed authoritative name servers for that zone\&. The list of name servers is defined by the NS records that are found for the zone\&.
.RE
.PP
\-d
.RS 4
Print debugging traces\&. Equivalent to the
\fB\-v\fR
verbose option\&.
.RE
.PP
\-i
.RS 4
Obsolete\&. Use the IP6\&.INT domain for reverse lookups of IPv6 addresses as defined in RFC1886 and deprecated in RFC4159\&. The default is to use IP6\&.ARPA as specified in RFC3596\&.
.RE
.PP
\-l
.RS 4
List zone: The
\fBhost\fR
command performs a zone transfer of zone
\fIname\fR
and prints out the NS, PTR and address records (A/AAAA)\&.
.sp
Together, the
\fB\-l \-a\fR
options print all records in the zone\&.
.RE
.PP
\-N \fIndots\fR
.RS 4
The number of dots that have to be in
\fIname\fR
for it to be considered absolute\&. The default value is that defined using the ndots statement in
/etc/resolv\&.conf, or 1 if no ndots statement is present\&. Names with fewer dots are interpreted as relative names and will be searched for in the domains listed in the
\fBsearch\fR
or
\fBdomain\fR
directive in
\fI/etc/resolv.conf\fR.
/etc/resolv\&.conf\&.
.RE
.PP
The number of UDP retries for a lookup can be changed with the
\fB\-R\fR
option.
\fInumber\fR
indicates how many times
\fBhost\fR
will repeat a query that does not get answered. The default number of retries is 1. If
\fInumber\fR
is negative or zero, the number of retries will default to 1.
.PP
Non\-recursive queries can be made via the
\fB\-r\fR
option. Setting this option clears the
\fBRD\fR
\(em recursion desired \(em bit in the query which
\fBhost\fR
makes. This should mean that the name server receiving the query will not attempt to resolve
\fIname\fR. The
\-r
.RS 4
Non\-recursive query: Setting this option clears the RD (recursion desired) bit in the query\&. This should mean that the name server receiving the query will not attempt to resolve
\fIname\fR\&. The
\fB\-r\fR
option enables
\fBhost\fR
to mimic the behavior of a name server by making non\-recursive queries and expecting to receive answers to those queries that are usually referrals to other name servers.
to mimic the behavior of a name server by making non\-recursive queries and expecting to receive answers to those queries that can be referrals to other name servers\&.
.RE
.PP
By default,
\fBhost\fR
uses UDP when making queries. The
\fB\-T\fR
option makes it use a TCP connection when querying the name server. TCP will be automatically selected for queries that require it, such as zone transfer (AXFR) requests.
\-R \fInumber\fR
.RS 4
Number of retries for UDP queries: If
\fInumber\fR
is negative or zero, the number of retries will default to 1\&. The default value is 1\&.
.RE
.PP
The
\fB\-4\fR
option forces
\fBhost\fR
to only use IPv4 query transport. The
\fB\-6\fR
option forces
\fBhost\fR
to only use IPv6 query transport.
\-s
.RS 4
Do
\fInot\fR
send the query to the next nameserver if any server responds with a SERVFAIL response, which is the reverse of normal stub resolver behavior\&.
.RE
.PP
The
\fB\-t\fR
option is used to select the query type.
\-t \fItype\fR
.RS 4
Query type: The
\fItype\fR
can be any recognized query type: CNAME, NS, SOA, SIG, KEY, AXFR, etc. When no query type is specified,
argument can be any recognized query type: CNAME, NS, SOA, TXT, DNSKEY, AXFR, etc\&.
.sp
When no query type is specified,
\fBhost\fR
automatically selects an appropriate query type. By default, it looks for A, AAAA, and MX records, but if the
automatically selects an appropriate query type\&. By default, it looks for A, AAAA, and MX records\&. If the
\fB\-C\fR
option was given, queries will be made for SOA records, and if
option is given, queries will be made for SOA records\&. If
\fIname\fR
is a dotted\-decimal IPv4 address or colon\-delimited IPv6 address,
\fBhost\fR
will query for PTR records. If a query type of IXFR is chosen the starting serial number can be specified by appending an equal followed by the starting serial number (e.g. \-t IXFR=12345678).
will query for PTR records\&.
.sp
If a query type of IXFR is chosen the starting serial number can be specified by appending an equal followed by the starting serial number (like
\fB\-t \fR\fBIXFR=12345678\fR)\&.
.RE
.PP
The time to wait for a reply can be controlled through the
\fB\-W\fR
and
\fB\-w\fR
options. The
\fB\-W\fR
option makes
\-T
.RS 4
TCP: By default,
\fBhost\fR
wait for
\fIwait\fR
seconds. If
\fIwait\fR
is less than one, the wait interval is set to one second. When the
\fB\-w\fR
option is used,
\fBhost\fR
will effectively wait forever for a reply. The time to wait for a response will be set to the number of seconds given by the hardware's maximum value for an integer quantity.
uses UDP when making queries\&. The
\fB\-T\fR
option makes it use a TCP connection when querying the name server\&. TCP will be automatically selected for queries that require it, such as zone transfer (AXFR) requests\&.
.RE
.PP
The
\fB\-s\fR
option tells
\fBhost\fR
\fInot\fR
to send the query to the next nameserver if any server responds with a SERVFAIL response, which is the reverse of normal stub resolver behavior.
.PP
The
\fB\-m\fR
can be used to set the memory usage debugging flags
\-m \fIflag\fR
.RS 4
Memory usage debugging: the flag can be
\fIrecord\fR,
\fIusage\fR
and
\fItrace\fR.
\fIusage\fR, or
\fItrace\fR\&. You can specify the
\fB\-m\fR
option more than once to set multiple flags\&.
.RE
.PP
The
\fB\-V\fR
option causes
\-v
.RS 4
Verbose output\&. Equivalent to the
\fB\-d\fR
debug option\&.
.RE
.PP
\-V
.RS 4
Print the version number and exit\&.
.RE
.PP
\-w
.RS 4
Wait forever: The query timeout is set to the maximum possible\&. See also the
\fB\-W\fR
option\&.
.RE
.PP
\-W \fIwait\fR
.RS 4
Timeout: Wait for up to
\fIwait\fR
seconds for a reply\&. If
\fIwait\fR
is less than one, the wait interval is set to one second\&.
.sp
By default,
\fBhost\fR
to print the version number and exit.
will wait for 5 seconds for UDP responses and 10 seconds for TCP connections\&.
.sp
See also the
\fB\-w\fR
option\&.
.RE
.SH "IDN SUPPORT"
.PP
If
\fBhost\fR
has been built with IDN (internationalized domain name) support, it can accept and display non\-ASCII domain names.
has been built with IDN (internationalized domain name) support, it can accept and display non\-ASCII domain names\&.
\fBhost\fR
appropriately converts character encoding of domain name before sending a request to DNS server or displaying a reply from the server. If you'd like to turn off the IDN support for some reason, defines the
appropriately converts character encoding of domain name before sending a request to DNS server or displaying a reply from the server\&. If you\*(Aqd like to turn off the IDN support for some reason, defines the
\fBIDN_DISABLE\fR
environment variable. The IDN support is disabled if the variable is set when
environment variable\&. The IDN support is disabled if the variable is set when
\fBhost\fR
runs.
runs\&.
.SH "FILES"
.PP
\fI/etc/resolv.conf\fR
/etc/resolv\&.conf
.SH "SEE ALSO"
.PP
\fBdig\fR(1),
\fBnamed\fR(8).
\fBnamed\fR(8)\&.
.SH "AUTHOR"
.PP
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2004, 2005, 2007\-2009, 2014 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2000\-2002 Internet Software Consortium.
Copyright \(co 2004, 2005, 2007-2009, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2000-2002 Internet Software Consortium.
.br

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2004-2007, 2009-2015 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2004-2007, 2009-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2000-2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and/or distribute this software for any
@@ -59,6 +59,7 @@ static int seen_error = -1;
static isc_boolean_t list_addresses = ISC_TRUE;
static dns_rdatatype_t list_type = dns_rdatatype_a;
static isc_boolean_t printed_server = ISC_FALSE;
static isc_boolean_t ipv4only = ISC_FALSE, ipv6only = ISC_FALSE;
static const char *opcodetext[] = {
"QUERY",
@@ -145,14 +146,15 @@ show_usage(void) ISC_PLATFORM_NORETURN_POST;
static void
show_usage(void) {
fputs(
"Usage: host [-aCdlriTwv] [-c class] [-N ndots] [-t type] [-W time]\n"
"Usage: host [-aCdilrTvVw] [-c class] [-N ndots] [-t type] [-W time]\n"
" [-R number] [-m flag] hostname [server]\n"
" -a is equivalent to -v -t ANY\n"
" -c specifies query class for non-IN data\n"
" -C compares SOA records on authoritative nameservers\n"
" -d is equivalent to -v\n"
" -l lists all hosts in a domain, using AXFR\n"
" -i IP6.INT reverse lookups\n"
" -l lists all hosts in a domain, using AXFR\n"
" -m set memory debugging flag (trace|record|usage)\n"
" -N changes the number of dots allowed before root lookup is done\n"
" -r disables recursive processing\n"
" -R specifies number of retries for UDP packets\n"
@@ -160,21 +162,20 @@ show_usage(void) {
" -t specifies the query type\n"
" -T enables TCP/IP mode\n"
" -v enables verbose output\n"
" -V print version number and exit\n"
" -w specifies to wait forever for a reply\n"
" -W specifies how long to wait for a reply\n"
" -4 use IPv4 query transport only\n"
" -6 use IPv6 query transport only\n"
" -m set memory debugging flag (trace|record|usage)\n"
" -V print version number and exit\n", stderr);
" -6 use IPv6 query transport only\n", stderr);
exit(1);
}
void
dighost_shutdown(void) {
isc_app_shutdown();
static void
host_shutdown(void) {
(void) isc_app_shutdown();
}
void
static void
received(int bytes, isc_sockaddr_t *from, dig_query_t *query) {
isc_time_t now;
int diff;
@@ -189,7 +190,7 @@ received(int bytes, isc_sockaddr_t *from, dig_query_t *query) {
}
}
void
static void
trying(char *frm, dig_lookup_t *lookup) {
UNUSED(lookup);
@@ -233,7 +234,7 @@ say_message(dns_name_t *name, const char *msg, dns_rdata_t *rdata,
}
#ifdef DIG_SIGCHASE
/* Just for compatibility : not use in host program */
isc_result_t
static isc_result_t
printrdataset(dns_name_t *owner_name, dns_rdataset_t *rdataset,
isc_buffer_t *target)
{
@@ -414,7 +415,7 @@ chase_cnamechain(dns_message_t *msg, dns_name_t *qname) {
}
}
isc_result_t
static isc_result_t
printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
isc_boolean_t did_flag = ISC_FALSE;
dns_rdataset_t *opt, *tsig = NULL;
@@ -474,9 +475,8 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
dns_name_format(name, namestr, sizeof(namestr));
lookup = clone_lookup(query->lookup, ISC_FALSE);
if (lookup != NULL) {
strncpy(lookup->textname, namestr,
strlcpy(lookup->textname, namestr,
sizeof(lookup->textname));
lookup->textname[sizeof(lookup->textname)-1] = 0;
lookup->rdtype = dns_rdatatype_aaaa;
lookup->rdtypeset = ISC_TRUE;
lookup->origin = NULL;
@@ -485,9 +485,8 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
}
lookup = clone_lookup(query->lookup, ISC_FALSE);
if (lookup != NULL) {
strncpy(lookup->textname, namestr,
strlcpy(lookup->textname, namestr,
sizeof(lookup->textname));
lookup->textname[sizeof(lookup->textname)-1] = 0;
lookup->rdtype = dns_rdatatype_mx;
lookup->rdtypeset = ISC_TRUE;
lookup->origin = NULL;
@@ -620,16 +619,24 @@ pre_parse_args(int argc, char **argv) {
memdebugging = ISC_TRUE;
if (strcasecmp("trace", isc_commandline_argument) == 0)
isc_mem_debugging |= ISC_MEM_DEBUGTRACE;
else if (!strcasecmp("record",
isc_commandline_argument) == 0)
else if (strcasecmp("record",
isc_commandline_argument) == 0)
isc_mem_debugging |= ISC_MEM_DEBUGRECORD;
else if (strcasecmp("usage",
isc_commandline_argument) == 0)
isc_mem_debugging |= ISC_MEM_DEBUGUSAGE;
break;
case '4': break;
case '6': break;
case '4':
if (ipv6only)
fatal("only one of -4 and -6 allowed");
ipv4only = ISC_TRUE;
break;
case '6':
if (ipv4only)
fatal("only one of -4 and -6 allowed");
ipv6only = ISC_TRUE;
break;
case 'a': break;
case 'c': break;
case 'd': break;
@@ -823,18 +830,10 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
/* Handled by pre_parse_args(). */
break;
case '4':
if (have_ipv4) {
isc_net_disableipv6();
have_ipv6 = ISC_FALSE;
} else
fatal("can't find IPv4 networking");
/* Handled by pre_parse_args(). */
break;
case '6':
if (have_ipv6) {
isc_net_disableipv4();
have_ipv4 = ISC_FALSE;
} else
fatal("can't find IPv6 networking");
/* Handled by pre_parse_args(). */
break;
case 's':
lookup->servfail_stops = ISC_TRUE;
@@ -859,14 +858,12 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
lookup->pending = ISC_FALSE;
if (get_reverse(store, sizeof(store), hostname,
lookup->ip6_int, ISC_TRUE) == ISC_R_SUCCESS) {
strncpy(lookup->textname, store, sizeof(lookup->textname));
lookup->textname[sizeof(lookup->textname)-1] = 0;
strlcpy(lookup->textname, store, sizeof(lookup->textname));
lookup->rdtype = dns_rdatatype_ptr;
lookup->rdtypeset = ISC_TRUE;
default_lookups = ISC_FALSE;
} else {
strncpy(lookup->textname, hostname, sizeof(lookup->textname));
lookup->textname[sizeof(lookup->textname)-1]=0;
strlcpy(lookup->textname, hostname, sizeof(lookup->textname));
usesearch = ISC_TRUE;
}
lookup->new_search = ISC_TRUE;
@@ -888,14 +885,27 @@ main(int argc, char **argv) {
idnoptions = IDN_ASCCHECK;
#endif
/* setup dighost callbacks */
#ifdef DIG_SIGCHASE
dighost_printrdataset = printrdataset;
#endif
dighost_printmessage = printmessage;
dighost_received = received;
dighost_trying = trying;
dighost_shutdown = host_shutdown;
debug("main()");
progname = argv[0];
pre_parse_args(argc, argv);
result = isc_app_start();
check_result(result, "isc_app_start");
setup_libs();
setup_system(ipv4only, ipv6only);
parse_args(ISC_FALSE, argc, argv);
setup_system();
if (keyfile[0] != 0)
setup_file_key();
else if (keysecret[0] != 0)
setup_text_key();
result = isc_app_onrun(mctx, global_task, onrun_callback, NULL);
check_result(result, "isc_app_onrun");
isc_app_run();

View File

@@ -1,8 +1,7 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!DOCTYPE book [
<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2004, 2005, 2007-2009, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004, 2005, 2007-2009, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2002 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -18,10 +17,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.host">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.host">
<info>
<date>2009-01-20</date>
</info>
<refentryinfo>
<date>January 20, 2009</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -43,6 +46,9 @@
<year>2008</year>
<year>2009</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2017</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
<copyright>
@@ -54,26 +60,28 @@
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>host</command>
<arg><option>-aCdlnrsTwv</option></arg>
<arg><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg><option>-N <replaceable class="parameter">ndots</replaceable></option></arg>
<arg><option>-R <replaceable class="parameter">number</replaceable></option></arg>
<arg><option>-t <replaceable class="parameter">type</replaceable></option></arg>
<arg><option>-W <replaceable class="parameter">wait</replaceable></option></arg>
<arg><option>-m <replaceable class="parameter">flag</replaceable></option></arg>
<arg><option>-4</option></arg>
<arg><option>-6</option></arg>
<arg><option>-v</option></arg>
<arg><option>-V</option></arg>
<arg choice="req">name</arg>
<arg choice="opt">server</arg>
<arg choice="opt" rep="norepeat"><option>-aCdlnrsTwv</option></arg>
<arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-N <replaceable class="parameter">ndots</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-R <replaceable class="parameter">number</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-t <replaceable class="parameter">type</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-W <replaceable class="parameter">wait</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-m <replaceable class="parameter">flag</replaceable></option></arg>
<group choice="opt" rep="norepeat">
<arg choice="opt" rep="norepeat"><option>-4</option></arg>
<arg choice="opt" rep="norepeat"><option>-6</option></arg>
</group>
<arg choice="opt" rep="norepeat"><option>-v</option></arg>
<arg choice="opt" rep="norepeat"><option>-V</option></arg>
<arg choice="req" rep="norepeat">name</arg>
<arg choice="opt" rep="norepeat">server</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>host</command>
is a simple utility for performing DNS lookups.
@@ -96,162 +104,276 @@
<filename>/etc/resolv.conf</filename>.
</para>
<para>
The <option>-a</option> (all) option is equivalent to setting the
<option>-v</option> option and asking <command>host</command> to make
a query of type ANY.
</para>
</refsection>
<para>
When the <option>-C</option> option is used, <command>host</command>
will attempt to display the SOA records for zone
<parameter>name</parameter> from all the listed
authoritative name
servers for that zone. The list of name servers is defined by the NS
records that are found for the zone.
</para>
<refsection><info><title>OPTIONS</title></info>
<para>
The <option>-c</option> option instructs to make a DNS query of class
<parameter>class</parameter>. This can be used to lookup
Hesiod or
Chaosnet class resource records. The default class is IN (Internet).
</para>
<variablelist>
<para>
Verbose output is generated by <command>host</command> when
the
<option>-d</option> or <option>-v</option> option is used. The two
options are equivalent. They have been provided for backwards
compatibility. In previous versions, the <option>-d</option> option
switched on debugging traces and <option>-v</option> enabled verbose
output.
</para>
<varlistentry>
<term>-4</term>
<listitem>
<para>
Use IPv4 only for query transport.
See also the <option>-6</option> option.
</para>
</listitem>
</varlistentry>
<para>
List mode is selected by the <option>-l</option> option. This makes
<command>host</command> perform a zone transfer for zone
<parameter>name</parameter>. Transfer the zone printing out
the NS, PTR
and address records (A/AAAA). If combined with <option>-a</option>
all records will be printed.
</para>
<varlistentry>
<term>-6</term>
<listitem>
<para>
Use IPv6 only for query transport.
See also the <option>-4</option> option.
</para>
</listitem>
</varlistentry>
<para>
The <option>-i</option>
option specifies that reverse lookups of IPv6 addresses should
use the IP6.INT domain as defined in RFC1886.
The default is to use IP6.ARPA.
</para>
<varlistentry>
<term>-a</term>
<listitem>
<para>
"All". The <option>-a</option> option is normally equivalent
to <option>-v -t <literal>ANY</literal></option>.
It also affects the behaviour of the <option>-l</option>
list zone option.
</para>
</listitem>
</varlistentry>
<para>
The <option>-N</option> option sets the number of dots that have to be
in <parameter>name</parameter> for it to be considered
absolute. The
default value is that defined using the ndots statement in
<filename>/etc/resolv.conf</filename>, or 1 if no ndots
statement is
present. Names with fewer dots are interpreted as relative names and
will be searched for in the domains listed in the <type>search</type>
or <type>domain</type> directive in
<filename>/etc/resolv.conf</filename>.
</para>
<varlistentry>
<term>-c <replaceable class="parameter">class</replaceable></term>
<listitem>
<para>
Query class: This can be used to lookup HS (Hesiod) or CH
(Chaosnet) class resource records. The default class is IN
(Internet).
</para>
</listitem>
</varlistentry>
<para>
The number of UDP retries for a lookup can be changed with the
<option>-R</option> option. <parameter>number</parameter>
indicates
how many times <command>host</command> will repeat a query
that does
not get answered. The default number of retries is 1. If
<parameter>number</parameter> is negative or zero, the
number of
retries will default to 1.
</para>
<varlistentry>
<term>-C</term>
<listitem>
<para>
Check consistency: <command>host</command> will query the
SOA records for zone <parameter>name</parameter> from all
the listed authoritative name servers for that zone. The
list of name servers is defined by the NS records that are
found for the zone.
</para>
</listitem>
</varlistentry>
<para>
Non-recursive queries can be made via the <option>-r</option> option.
Setting this option clears the <type>RD</type> &mdash; recursion
desired &mdash; bit in the query which <command>host</command> makes.
This should mean that the name server receiving the query will not
attempt to resolve <parameter>name</parameter>. The
<option>-r</option> option enables <command>host</command>
to mimic
the behavior of a name server by making non-recursive queries and
expecting to receive answers to those queries that are usually
referrals to other name servers.
</para>
<varlistentry>
<term>-d</term>
<listitem>
<para>
Print debugging traces.
Equivalent to the <option>-v</option> verbose option.
</para>
</listitem>
</varlistentry>
<para>
By default, <command>host</command> uses UDP when making
queries. The
<option>-T</option> option makes it use a TCP connection when querying
the name server. TCP will be automatically selected for queries that
require it, such as zone transfer (AXFR) requests.
</para>
<varlistentry>
<term>-i</term>
<listitem>
<para>
Obsolete.
Use the IP6.INT domain for reverse lookups of IPv6
addresses as defined in RFC1886 and deprecated in RFC4159.
The default is to use IP6.ARPA as specified in RFC3596.
</para>
</listitem>
</varlistentry>
<para>
The <option>-4</option> option forces <command>host</command> to only
use IPv4 query transport. The <option>-6</option> option forces
<command>host</command> to only use IPv6 query transport.
</para>
<varlistentry>
<term>-l</term>
<listitem>
<para>
List zone:
The <command>host</command> command performs a zone transfer of
zone <parameter>name</parameter> and prints out the NS,
PTR and address records (A/AAAA).
</para>
<para>
Together, the <option>-l -a</option>
options print all records in the zone.
</para>
</listitem>
</varlistentry>
<para>
The <option>-t</option> option is used to select the query type.
<parameter>type</parameter> can be any recognized query
type: CNAME,
NS, SOA, SIG, KEY, AXFR, etc. When no query type is specified,
<command>host</command> automatically selects an appropriate
query
type. By default, it looks for A, AAAA, and MX records, but if the
<option>-C</option> option was given, queries will be made for SOA
records, and if <parameter>name</parameter> is a
dotted-decimal IPv4
address or colon-delimited IPv6 address, <command>host</command> will
query for PTR records. If a query type of IXFR is chosen the starting
serial number can be specified by appending an equal followed by the
starting serial number (e.g. -t IXFR=12345678).
</para>
<varlistentry>
<term>-N <replaceable class="parameter">ndots</replaceable></term>
<listitem>
<para>
The number of dots that have to be
in <parameter>name</parameter> for it to be considered
absolute. The default value is that defined using the
ndots statement in <filename>/etc/resolv.conf</filename>,
or 1 if no ndots statement is present. Names with fewer
dots are interpreted as relative names and will be
searched for in the domains listed in
the <type>search</type> or <type>domain</type> directive
in <filename>/etc/resolv.conf</filename>.
</para>
</listitem>
</varlistentry>
<para>
The time to wait for a reply can be controlled through the
<option>-W</option> and <option>-w</option> options. The
<option>-W</option> option makes <command>host</command>
wait for
<parameter>wait</parameter> seconds. If <parameter>wait</parameter>
is less than one, the wait interval is set to one second. When the
<option>-w</option> option is used, <command>host</command>
will
effectively wait forever for a reply. The time to wait for a response
will be set to the number of seconds given by the hardware's maximum
value for an integer quantity.
</para>
<varlistentry>
<term>-r</term>
<listitem>
<para>
Non-recursive query:
Setting this option clears the RD (recursion desired) bit
in the query. This should mean that the name server
receiving the query will not attempt to
resolve <parameter>name</parameter>.
The <option>-r</option> option
enables <command>host</command> to mimic the behavior of a
name server by making non-recursive queries and expecting
to receive answers to those queries that can be
referrals to other name servers.
</para>
</listitem>
</varlistentry>
<para>
The <option>-s</option> option tells <command>host</command>
<emphasis>not</emphasis> to send the query to the next nameserver
if any server responds with a SERVFAIL response, which is the
reverse of normal stub resolver behavior.
</para>
<varlistentry>
<term>-R <replaceable class="parameter">number</replaceable></term>
<listitem>
<para>
Number of retries for UDP queries:
If <parameter>number</parameter> is negative or zero, the
number of retries will default to 1. The default value is 1.
</para>
</listitem>
</varlistentry>
<para>
The <option>-m</option> can be used to set the memory usage debugging
flags
<parameter>record</parameter>, <parameter>usage</parameter> and
<parameter>trace</parameter>.
</para>
<varlistentry>
<term>-s</term>
<listitem>
<para>
Do <emphasis>not</emphasis> send the query to the next
nameserver if any server responds with a SERVFAIL
response, which is the reverse of normal stub resolver
behavior.
</para>
</listitem>
</varlistentry>
<para>
The <option>-V</option> option causes <command>host</command>
to print the version number and exit.
</para>
</refsect1>
<varlistentry>
<term>-t <replaceable class="parameter">type</replaceable></term>
<listitem>
<para>
Query type:
The <parameter>type</parameter> argument can be any
recognized query type: CNAME, NS, SOA, TXT, DNSKEY, AXFR, etc.
</para>
<para>
When no query type is specified, <command>host</command>
automatically selects an appropriate query type. By default, it
looks for A, AAAA, and MX records.
If the <option>-C</option> option is given, queries will
be made for SOA records.
If <parameter>name</parameter> is a dotted-decimal IPv4
address or colon-delimited IPv6
address, <command>host</command> will query for PTR
records.
</para>
<para>
If a query type of IXFR is chosen the starting serial
number can be specified by appending an equal followed by
the starting serial number
(like <option>-t <literal>IXFR=12345678</literal></option>).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-T</term>
<listitem>
<para>
TCP:
By default, <command>host</command> uses UDP when making
queries. The <option>-T</option> option makes it use a TCP
connection when querying the name server. TCP will be
automatically selected for queries that require it, such
as zone transfer (AXFR) requests.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-m <replaceable class="parameter">flag</replaceable></term>
<listitem>
<para>
Memory usage debugging: the flag can
be <parameter>record</parameter>, <parameter>usage</parameter>,
or <parameter>trace</parameter>. You can specify
the <option>-m</option> option more than once to set
multiple flags.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-v</term>
<listitem>
<para>
Verbose output.
Equivalent to the <option>-d</option> debug option.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-V</term>
<listitem>
<para>
Print the version number and exit.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-w</term>
<listitem>
<para>
Wait forever: The query timeout is set to the maximum possible.
See also the <option>-W</option> option.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-W <replaceable class="parameter">wait</replaceable></term>
<listitem>
<para>
Timeout: Wait for up to <parameter>wait</parameter>
seconds for a reply. If <parameter>wait</parameter> is
less than one, the wait interval is set to one second.
</para>
<para>
By default, <command>host</command> will wait for 5
seconds for UDP responses and 10 seconds for TCP
connections.
</para>
<para>
See also the <option>-w</option> option.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsection>
<refsection><info><title>IDN SUPPORT</title></info>
<refsect1>
<title>IDN SUPPORT</title>
<para>
If <command>host</command> has been built with IDN (internationalized
domain name) support, it can accept and display non-ASCII domain names.
domain name) support, it can accept and display non-ASCII domain names.
<command>host</command> appropriately converts character encoding of
domain name before sending a request to DNS server or displaying a
reply from the server.
@@ -260,16 +382,16 @@
The IDN support is disabled if the variable is set when
<command>host</command> runs.
</para>
</refsect1>
</refsection>
<refsection><info><title>FILES</title></info>
<refsect1>
<title>FILES</title>
<para><filename>/etc/resolv.conf</filename>
</para>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>dig</refentrytitle><manvolnum>1</manvolnum>
</citerefentry>,
@@ -277,10 +399,6 @@
<refentrytitle>named</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>.
</para>
</refsection>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2004, 2005, 2007-2009, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004, 2005, 2007-2009, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2002 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -14,203 +15,318 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>host</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.host"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p>host &#8212; DNS lookup utility</p>
<p>
host
&#8212; DNS lookup utility
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">host</code> [<code class="option">-aCdlnrsTwv</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-N <em class="replaceable"><code>ndots</code></em></code>] [<code class="option">-R <em class="replaceable"><code>number</code></em></code>] [<code class="option">-t <em class="replaceable"><code>type</code></em></code>] [<code class="option">-W <em class="replaceable"><code>wait</code></em></code>] [<code class="option">-m <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-4</code>] [<code class="option">-6</code>] [<code class="option">-v</code>] [<code class="option">-V</code>] {name} [server]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543454"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">host</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">host</code>
[<code class="option">-aCdlnrsTwv</code>]
[<code class="option">-c <em class="replaceable"><code>class</code></em></code>]
[<code class="option">-N <em class="replaceable"><code>ndots</code></em></code>]
[<code class="option">-R <em class="replaceable"><code>number</code></em></code>]
[<code class="option">-t <em class="replaceable"><code>type</code></em></code>]
[<code class="option">-W <em class="replaceable"><code>wait</code></em></code>]
[<code class="option">-m <em class="replaceable"><code>flag</code></em></code>]
[
[<code class="option">-4</code>]
| [<code class="option">-6</code>]
]
[<code class="option">-v</code>]
[<code class="option">-V</code>]
{name}
[server]
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>host</strong></span>
is a simple utility for performing DNS lookups.
It is normally used to convert names to IP addresses and vice versa.
When no arguments or options are given,
<span><strong class="command">host</strong></span>
<span class="command"><strong>host</strong></span>
prints a short summary of its command line arguments and options.
</p>
<p><em class="parameter"><code>name</code></em> is the domain name that is to be
<p><em class="parameter"><code>name</code></em> is the domain name that is to be
looked
up. It can also be a dotted-decimal IPv4 address or a colon-delimited
IPv6 address, in which case <span><strong class="command">host</strong></span> will by
IPv6 address, in which case <span class="command"><strong>host</strong></span> will by
default
perform a reverse lookup for that address.
<em class="parameter"><code>server</code></em> is an optional argument which
is either
the name or IP address of the name server that <span><strong class="command">host</strong></span>
the name or IP address of the name server that <span class="command"><strong>host</strong></span>
should query instead of the server or servers listed in
<code class="filename">/etc/resolv.conf</code>.
</p>
<p>
The <code class="option">-a</code> (all) option is equivalent to setting the
<code class="option">-v</code> option and asking <span><strong class="command">host</strong></span> to make
a query of type ANY.
</p>
<p>
When the <code class="option">-C</code> option is used, <span><strong class="command">host</strong></span>
will attempt to display the SOA records for zone
<em class="parameter"><code>name</code></em> from all the listed
authoritative name
servers for that zone. The list of name servers is defined by the NS
records that are found for the zone.
</p>
<p>
The <code class="option">-c</code> option instructs to make a DNS query of class
<em class="parameter"><code>class</code></em>. This can be used to lookup
Hesiod or
Chaosnet class resource records. The default class is IN (Internet).
</p>
<p>
Verbose output is generated by <span><strong class="command">host</strong></span> when
the
<code class="option">-d</code> or <code class="option">-v</code> option is used. The two
options are equivalent. They have been provided for backwards
compatibility. In previous versions, the <code class="option">-d</code> option
switched on debugging traces and <code class="option">-v</code> enabled verbose
output.
</p>
<p>
List mode is selected by the <code class="option">-l</code> option. This makes
<span><strong class="command">host</strong></span> perform a zone transfer for zone
<em class="parameter"><code>name</code></em>. Transfer the zone printing out
the NS, PTR
and address records (A/AAAA). If combined with <code class="option">-a</code>
all records will be printed.
</p>
<p>
The <code class="option">-i</code>
option specifies that reverse lookups of IPv6 addresses should
use the IP6.INT domain as defined in RFC1886.
The default is to use IP6.ARPA.
</p>
<p>
The <code class="option">-N</code> option sets the number of dots that have to be
in <em class="parameter"><code>name</code></em> for it to be considered
absolute. The
default value is that defined using the ndots statement in
<code class="filename">/etc/resolv.conf</code>, or 1 if no ndots
statement is
present. Names with fewer dots are interpreted as relative names and
will be searched for in the domains listed in the <span class="type">search</span>
or <span class="type">domain</span> directive in
<code class="filename">/etc/resolv.conf</code>.
</p>
<p>
The number of UDP retries for a lookup can be changed with the
<code class="option">-R</code> option. <em class="parameter"><code>number</code></em>
indicates
how many times <span><strong class="command">host</strong></span> will repeat a query
that does
not get answered. The default number of retries is 1. If
<em class="parameter"><code>number</code></em> is negative or zero, the
number of
retries will default to 1.
</p>
<p>
Non-recursive queries can be made via the <code class="option">-r</code> option.
Setting this option clears the <span class="type">RD</span> &#8212; recursion
desired &#8212; bit in the query which <span><strong class="command">host</strong></span> makes.
This should mean that the name server receiving the query will not
attempt to resolve <em class="parameter"><code>name</code></em>. The
<code class="option">-r</code> option enables <span><strong class="command">host</strong></span>
to mimic
the behavior of a name server by making non-recursive queries and
expecting to receive answers to those queries that are usually
referrals to other name servers.
</p>
<p>
By default, <span><strong class="command">host</strong></span> uses UDP when making
queries. The
<code class="option">-T</code> option makes it use a TCP connection when querying
the name server. TCP will be automatically selected for queries that
require it, such as zone transfer (AXFR) requests.
</p>
<p>
The <code class="option">-4</code> option forces <span><strong class="command">host</strong></span> to only
use IPv4 query transport. The <code class="option">-6</code> option forces
<span><strong class="command">host</strong></span> to only use IPv6 query transport.
</p>
<p>
The <code class="option">-t</code> option is used to select the query type.
<em class="parameter"><code>type</code></em> can be any recognized query
type: CNAME,
NS, SOA, SIG, KEY, AXFR, etc. When no query type is specified,
<span><strong class="command">host</strong></span> automatically selects an appropriate
query
type. By default, it looks for A, AAAA, and MX records, but if the
<code class="option">-C</code> option was given, queries will be made for SOA
records, and if <em class="parameter"><code>name</code></em> is a
dotted-decimal IPv4
address or colon-delimited IPv6 address, <span><strong class="command">host</strong></span> will
query for PTR records. If a query type of IXFR is chosen the starting
serial number can be specified by appending an equal followed by the
starting serial number (e.g. -t IXFR=12345678).
</p>
<p>
The time to wait for a reply can be controlled through the
<code class="option">-W</code> and <code class="option">-w</code> options. The
<code class="option">-W</code> option makes <span><strong class="command">host</strong></span>
wait for
<em class="parameter"><code>wait</code></em> seconds. If <em class="parameter"><code>wait</code></em>
is less than one, the wait interval is set to one second. When the
<code class="option">-w</code> option is used, <span><strong class="command">host</strong></span>
will
effectively wait forever for a reply. The time to wait for a response
will be set to the number of seconds given by the hardware's maximum
value for an integer quantity.
</p>
<p>
The <code class="option">-s</code> option tells <span><strong class="command">host</strong></span>
<span class="emphasis"><em>not</em></span> to send the query to the next nameserver
if any server responds with a SERVFAIL response, which is the
reverse of normal stub resolver behavior.
</p>
<p>
The <code class="option">-m</code> can be used to set the memory usage debugging
flags
<em class="parameter"><code>record</code></em>, <em class="parameter"><code>usage</code></em> and
<em class="parameter"><code>trace</code></em>.
</p>
<p>
The <code class="option">-V</code> option causes <span><strong class="command">host</strong></span>
to print the version number and exit.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543831"></a><h2>IDN SUPPORT</h2>
<p>
If <span><strong class="command">host</strong></span> has been built with IDN (internationalized
domain name) support, it can accept and display non-ASCII domain names.
<span><strong class="command">host</strong></span> appropriately converts character encoding of
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-4</span></dt>
<dd>
<p>
Use IPv4 only for query transport.
See also the <code class="option">-6</code> option.
</p>
</dd>
<dt><span class="term">-6</span></dt>
<dd>
<p>
Use IPv6 only for query transport.
See also the <code class="option">-4</code> option.
</p>
</dd>
<dt><span class="term">-a</span></dt>
<dd>
<p>
"All". The <code class="option">-a</code> option is normally equivalent
to <code class="option">-v -t <code class="literal">ANY</code></code>.
It also affects the behaviour of the <code class="option">-l</code>
list zone option.
</p>
</dd>
<dt><span class="term">-c <em class="replaceable"><code>class</code></em></span></dt>
<dd>
<p>
Query class: This can be used to lookup HS (Hesiod) or CH
(Chaosnet) class resource records. The default class is IN
(Internet).
</p>
</dd>
<dt><span class="term">-C</span></dt>
<dd>
<p>
Check consistency: <span class="command"><strong>host</strong></span> will query the
SOA records for zone <em class="parameter"><code>name</code></em> from all
the listed authoritative name servers for that zone. The
list of name servers is defined by the NS records that are
found for the zone.
</p>
</dd>
<dt><span class="term">-d</span></dt>
<dd>
<p>
Print debugging traces.
Equivalent to the <code class="option">-v</code> verbose option.
</p>
</dd>
<dt><span class="term">-i</span></dt>
<dd>
<p>
Obsolete.
Use the IP6.INT domain for reverse lookups of IPv6
addresses as defined in RFC1886 and deprecated in RFC4159.
The default is to use IP6.ARPA as specified in RFC3596.
</p>
</dd>
<dt><span class="term">-l</span></dt>
<dd>
<p>
List zone:
The <span class="command"><strong>host</strong></span> command performs a zone transfer of
zone <em class="parameter"><code>name</code></em> and prints out the NS,
PTR and address records (A/AAAA).
</p>
<p>
Together, the <code class="option">-l -a</code>
options print all records in the zone.
</p>
</dd>
<dt><span class="term">-N <em class="replaceable"><code>ndots</code></em></span></dt>
<dd>
<p>
The number of dots that have to be
in <em class="parameter"><code>name</code></em> for it to be considered
absolute. The default value is that defined using the
ndots statement in <code class="filename">/etc/resolv.conf</code>,
or 1 if no ndots statement is present. Names with fewer
dots are interpreted as relative names and will be
searched for in the domains listed in
the <span class="type">search</span> or <span class="type">domain</span> directive
in <code class="filename">/etc/resolv.conf</code>.
</p>
</dd>
<dt><span class="term">-r</span></dt>
<dd>
<p>
Non-recursive query:
Setting this option clears the RD (recursion desired) bit
in the query. This should mean that the name server
receiving the query will not attempt to
resolve <em class="parameter"><code>name</code></em>.
The <code class="option">-r</code> option
enables <span class="command"><strong>host</strong></span> to mimic the behavior of a
name server by making non-recursive queries and expecting
to receive answers to those queries that can be
referrals to other name servers.
</p>
</dd>
<dt><span class="term">-R <em class="replaceable"><code>number</code></em></span></dt>
<dd>
<p>
Number of retries for UDP queries:
If <em class="parameter"><code>number</code></em> is negative or zero, the
number of retries will default to 1. The default value is 1.
</p>
</dd>
<dt><span class="term">-s</span></dt>
<dd>
<p>
Do <span class="emphasis"><em>not</em></span> send the query to the next
nameserver if any server responds with a SERVFAIL
response, which is the reverse of normal stub resolver
behavior.
</p>
</dd>
<dt><span class="term">-t <em class="replaceable"><code>type</code></em></span></dt>
<dd>
<p>
Query type:
The <em class="parameter"><code>type</code></em> argument can be any
recognized query type: CNAME, NS, SOA, TXT, DNSKEY, AXFR, etc.
</p>
<p>
When no query type is specified, <span class="command"><strong>host</strong></span>
automatically selects an appropriate query type. By default, it
looks for A, AAAA, and MX records.
If the <code class="option">-C</code> option is given, queries will
be made for SOA records.
If <em class="parameter"><code>name</code></em> is a dotted-decimal IPv4
address or colon-delimited IPv6
address, <span class="command"><strong>host</strong></span> will query for PTR
records.
</p>
<p>
If a query type of IXFR is chosen the starting serial
number can be specified by appending an equal followed by
the starting serial number
(like <code class="option">-t <code class="literal">IXFR=12345678</code></code>).
</p>
</dd>
<dt><span class="term">-T</span></dt>
<dd>
<p>
TCP:
By default, <span class="command"><strong>host</strong></span> uses UDP when making
queries. The <code class="option">-T</code> option makes it use a TCP
connection when querying the name server. TCP will be
automatically selected for queries that require it, such
as zone transfer (AXFR) requests.
</p>
</dd>
<dt><span class="term">-m <em class="replaceable"><code>flag</code></em></span></dt>
<dd>
<p>
Memory usage debugging: the flag can
be <em class="parameter"><code>record</code></em>, <em class="parameter"><code>usage</code></em>,
or <em class="parameter"><code>trace</code></em>. You can specify
the <code class="option">-m</code> option more than once to set
multiple flags.
</p>
</dd>
<dt><span class="term">-v</span></dt>
<dd>
<p>
Verbose output.
Equivalent to the <code class="option">-d</code> debug option.
</p>
</dd>
<dt><span class="term">-V</span></dt>
<dd>
<p>
Print the version number and exit.
</p>
</dd>
<dt><span class="term">-w</span></dt>
<dd>
<p>
Wait forever: The query timeout is set to the maximum possible.
See also the <code class="option">-W</code> option.
</p>
</dd>
<dt><span class="term">-W <em class="replaceable"><code>wait</code></em></span></dt>
<dd>
<p>
Timeout: Wait for up to <em class="parameter"><code>wait</code></em>
seconds for a reply. If <em class="parameter"><code>wait</code></em> is
less than one, the wait interval is set to one second.
</p>
<p>
By default, <span class="command"><strong>host</strong></span> will wait for 5
seconds for UDP responses and 10 seconds for TCP
connections.
</p>
<p>
See also the <code class="option">-w</code> option.
</p>
</dd>
</dl></div>
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>IDN SUPPORT</h2>
<p>
If <span class="command"><strong>host</strong></span> has been built with IDN (internationalized
domain name) support, it can accept and display non-ASCII domain names.
<span class="command"><strong>host</strong></span> appropriately converts character encoding of
domain name before sending a request to DNS server or displaying a
reply from the server.
If you'd like to turn off the IDN support for some reason, defines
the <code class="envar">IDN_DISABLE</code> environment variable.
The IDN support is disabled if the variable is set when
<span><strong class="command">host</strong></span> runs.
<span class="command"><strong>host</strong></span> runs.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543853"></a><h2>FILES</h2>
<p><code class="filename">/etc/resolv.conf</code>
</div>
<div class="refsection">
<a name="id-1.10"></a><h2>FILES</h2>
<p><code class="filename">/etc/resolv.conf</code>
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543865"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">dig</span>(1)</span>,
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>.
</div>
<div class="refsection">
<a name="id-1.11"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">dig</span>(1)
</span>,
<span class="citerefentry">
<span class="refentrytitle">named</span>(8)
</span>.
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2004-2009, 2011-2015 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2004-2009, 2011-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2000-2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and/or distribute this software for any
@@ -129,7 +129,8 @@ struct dig_lookup {
done_as_is,
besteffort,
dnssec,
nsid; /*% Name Server ID (RFC 5001) */
nsid, /*% Name Server ID (RFC 5001) */
idnout;
#ifdef DIG_SIGCHASE
isc_boolean_t sigchase;
#if DIG_SIGCHASE_TD
@@ -154,14 +155,13 @@ isc_boolean_t sigchase;
dns_rdataclass_t rdclass;
isc_boolean_t rdtypeset;
isc_boolean_t rdclassset;
char namespace[BUFSIZE];
char onamespace[BUFSIZE];
char name_space[BUFSIZE];
char oname_space[BUFSIZE];
isc_buffer_t namebuf;
isc_buffer_t onamebuf;
isc_buffer_t renderbuf;
char *sendspace;
dns_name_t *name;
isc_timer_t *timer;
isc_interval_t interval;
dns_message_t *sendmsg;
dns_name_t *oname;
@@ -183,6 +183,7 @@ isc_boolean_t sigchase;
isc_buffer_t *querysig;
isc_uint32_t msgcounter;
dns_fixedname_t fdomain;
unsigned int eoferr;
};
/*% The dig_query structure */
@@ -196,7 +197,8 @@ struct dig_query {
second_rr_rcvd,
first_repeat_rcvd,
recv_made,
warn_id;
warn_id,
timedout;
isc_uint32_t first_rr_serial;
isc_uint32_t second_rr_serial;
isc_uint32_t msg_count;
@@ -221,6 +223,7 @@ struct dig_query {
isc_time_t time_recv;
isc_uint64_t byte_count;
isc_buffer_t sendbuf;
isc_timer_t *timer;
};
struct dig_server {
@@ -330,7 +333,7 @@ void
setup_libs(void);
void
setup_system(void);
setup_system(isc_boolean_t ipv4only, isc_boolean_t ipv6only);
isc_result_t
parse_uint(isc_uint32_t *uip, const char *value, isc_uint32_t max,
@@ -375,37 +378,38 @@ void
clean_trustedkey(void);
#endif
char *
next_token(char **stringp, const char *delim);
/*
* Routines to be defined in dig.c, host.c, and nslookup.c.
* Routines to be defined in dig.c, host.c, and nslookup.c. and
* then assigned to the appropriate function pointer
*/
#ifdef DIG_SIGCHASE
isc_result_t
printrdataset(dns_name_t *owner_name, dns_rdataset_t *rdataset,
extern isc_result_t
(*dighost_printrdataset)(dns_name_t *owner_name, dns_rdataset_t *rdataset,
isc_buffer_t *target);
#endif
isc_result_t
printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers);
extern isc_result_t
(*dighost_printmessage)(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers);
/*%<
* Print the final result of the lookup.
*/
void
received(int bytes, isc_sockaddr_t *from, dig_query_t *query);
extern void
(*dighost_received)(int bytes, isc_sockaddr_t *from, dig_query_t *query);
/*%<
* Print a message about where and when the response
* was received from, like the final comment in the
* output of "dig".
*/
void
trying(char *frm, dig_lookup_t *lookup);
extern void
(*dighost_trying)(char *frm, dig_lookup_t *lookup);
void
dighost_shutdown(void);
char *
next_token(char **stringp, const char *delim);
extern void
(*dighost_shutdown)(void);
#ifdef DIG_SIGCHASE
/* Chasing functions */
@@ -415,6 +419,47 @@ void
chase_sig(dns_message_t *msg);
#endif
void setup_file_key(void);
void setup_text_key(void);
void setup_file_key(void);
void setup_text_key(void);
/*
* Routines exported from dig.c for use by dig for iOS
*/
/*%<
* Call once only to set up libraries, parse global
* parameters and initial command line query parameters
*/
void
dig_setup(int argc, char **argv);
/*%<
* Call to supply new parameters for the next lookup
*/
void
dig_query_setup(isc_boolean_t, isc_boolean_t, int argc, char **argv);
/*%<
* set the main application event cycle running
*/
void
dig_startup(void);
/*%<
* Initiates the next lookup cycle
*/
void
dig_query_start(void);
/*%<
* Cleans up the application
*/
void
dig_shutdown(void);
ISC_LANG_ENDDECLS
#endif

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2004-2007, 2010, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2004-2007, 2010, 2013-2016 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
@@ -12,68 +12,100 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
'\" t
.\" Title: nslookup
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: January 24, 2014
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2014-01-24
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "NSLOOKUP" "1" "January 24, 2014" "BIND9" "BIND9"
.TH "NSLOOKUP" "1" "2014\-01\-24" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
nslookup \- query Internet name servers interactively
.SH "SYNOPSIS"
.HP 9
.HP \w'\fBnslookup\fR\ 'u
\fBnslookup\fR [\fB\-option\fR] [name\ |\ \-] [server]
.SH "DESCRIPTION"
.PP
\fBNslookup\fR
is a program to query Internet domain name servers.
is a program to query Internet domain name servers\&.
\fBNslookup\fR
has two modes: interactive and non\-interactive. Interactive mode allows the user to query name servers for information about various hosts and domains or to print a list of hosts in a domain. Non\-interactive mode is used to print just the name and requested information for a host or domain.
has two modes: interactive and non\-interactive\&. Interactive mode allows the user to query name servers for information about various hosts and domains or to print a list of hosts in a domain\&. Non\-interactive mode is used to print just the name and requested information for a host or domain\&.
.SH "ARGUMENTS"
.PP
Interactive mode is entered in the following cases:
.TP 4
1.
when no arguments are given (the default name server will be used)
.TP 4
2.
when the first argument is a hyphen (\-) and the second argument is the host name or Internet address of a name server.
.sp
.RE
.PP
Non\-interactive mode is used when the name or Internet address of the host to be looked up is given as the first argument. The optional second argument specifies the host name or address of a name server.
.PP
Options can also be specified on the command line if they precede the arguments and are prefixed with a hyphen. For example, to change the default query type to host information, and the initial timeout to 10 seconds, type:
.sp
.RS 4
.ie n \{\
\h'-04' 1.\h'+01'\c
.\}
.el \{\
.sp -1
.IP " 1." 4.2
.\}
when no arguments are given (the default name server will be used)
.RE
.sp
.RS 4
.ie n \{\
\h'-04' 2.\h'+01'\c
.\}
.el \{\
.sp -1
.IP " 2." 4.2
.\}
when the first argument is a hyphen (\-) and the second argument is the host name or Internet address of a name server\&.
.RE
.PP
Non\-interactive mode is used when the name or Internet address of the host to be looked up is given as the first argument\&. The optional second argument specifies the host name or address of a name server\&.
.PP
Options can also be specified on the command line if they precede the arguments and are prefixed with a hyphen\&. For example, to change the default query type to host information, and the initial timeout to 10 seconds, type:
.sp
.if n \{\
.RS 4
.\}
.nf
nslookup \-query=hinfo \-timeout=10
.fi
.if n \{\
.RE
.sp
.\}
.PP
The
\fB\-version\fR
option causes
\fBnslookup\fR
to print the version number and immediately exits.
to print the version number and immediately exits\&.
.SH "INTERACTIVE COMMANDS"
.PP
\fBhost\fR [server]
.RS 4
Look up information for host using the current default server or using server, if specified. If host is an Internet address and the query type is A or PTR, the name of the host is returned. If host is a name and does not have a trailing period, the search list is used to qualify the name.
Look up information for host using the current default server or using server, if specified\&. If host is an Internet address and the query type is A or PTR, the name of the host is returned\&. If host is a name and does not have a trailing period, the search list is used to qualify the name\&.
.sp
To look up a host not in the current domain, append a period to the name.
To look up a host not in the current domain, append a period to the name\&.
.RE
.PP
\fBserver\fR \fIdomain\fR
@@ -88,7 +120,7 @@ Change the default server to
uses the initial server to look up information about
\fIdomain\fR, while
\fBserver\fR
uses the current default server. If an authoritative answer can't be found, the names of servers that might have the answer are returned.
uses the current default server\&. If an authoritative answer can\*(Aqt be found, the names of servers that might have the answer are returned\&.
.RE
.PP
\fBroot\fR
@@ -123,24 +155,22 @@ not implemented
.PP
\fBexit\fR
.RS 4
Exits the program.
Exits the program\&.
.RE
.PP
\fBset\fR \fIkeyword\fR\fI[=value]\fR
.RS 4
This command is used to change state information that affects the lookups. Valid keywords are:
.RS 4
This command is used to change state information that affects the lookups\&. Valid keywords are:
.PP
\fBall\fR
.RS 4
Prints the current values of the frequently used options to
\fBset\fR. Information about the current default server and host is also printed.
\fBset\fR\&. Information about the current default server and host is also printed\&.
.RE
.PP
\fBclass=\fR\fIvalue\fR
.RS 4
Change the query class to one of:
.RS 4
.PP
\fBIN\fR
.RS 4
@@ -161,16 +191,15 @@ the Hesiod class
.RS 4
wildcard
.RE
.RE
.IP "" 4
The class specifies the protocol group of the information.
.sp
The class specifies the protocol group of the information\&.
.sp
(Default = IN; abbreviation = cl)
.RE
.PP
\fB \fR\fB\fI[no]\fR\fR\fBdebug\fR
.RS 4
Turn on or off the display of the full response packet and any intermediate response packets when searching.
Turn on or off the display of the full response packet and any intermediate response packets when searching\&.
.sp
(Default = nodebug; abbreviation =
[no]deb)
@@ -178,7 +207,7 @@ Turn on or off the display of the full response packet and any intermediate resp
.PP
\fB \fR\fB\fI[no]\fR\fR\fBd2\fR
.RS 4
Turn debugging mode on or off. This displays more about what nslookup is doing.
Turn debugging mode on or off\&. This displays more about what nslookup is doing\&.
.sp
(Default = nod2)
.RE
@@ -186,12 +215,12 @@ Turn debugging mode on or off. This displays more about what nslookup is doing.
\fBdomain=\fR\fIname\fR
.RS 4
Sets the search list to
\fIname\fR.
\fIname\fR\&.
.RE
.PP
\fB \fR\fB\fI[no]\fR\fR\fBsearch\fR
.RS 4
If the lookup request contains at least one period but doesn't end with a trailing period, append the domain names in the domain search list to the request until an answer is received.
If the lookup request contains at least one period but doesn\*(Aqt end with a trailing period, append the domain names in the domain search list to the request until an answer is received\&.
.sp
(Default = search)
.RE
@@ -199,7 +228,7 @@ If the lookup request contains at least one period but doesn't end with a traili
\fBport=\fR\fIvalue\fR
.RS 4
Change the default TCP/UDP name server port to
\fIvalue\fR.
\fIvalue\fR\&.
.sp
(Default = 53; abbreviation = po)
.RE
@@ -210,60 +239,64 @@ Change the default TCP/UDP name server port to
.PP
\fBtype=\fR\fIvalue\fR
.RS 4
Change the type of the information query.
Change the type of the information query\&.
.sp
(Default = A; abbreviations = q, ty)
.RE
.PP
\fB \fR\fB\fI[no]\fR\fR\fBrecurse\fR
.RS 4
Tell the name server to query other servers if it does not have the information.
Tell the name server to query other servers if it does not have the information\&.
.sp
(Default = recurse; abbreviation = [no]rec)
.RE
.PP
\fBndots=\fR\fInumber\fR
.RS 4
Set the number of dots (label separators) in a domain that will disable searching. Absolute names always stop searching.
Set the number of dots (label separators) in a domain that will disable searching\&. Absolute names always stop searching\&.
.RE
.PP
\fBretry=\fR\fInumber\fR
.RS 4
Set the number of retries to number.
Set the number of retries to number\&.
.RE
.PP
\fBtimeout=\fR\fInumber\fR
.RS 4
Change the initial timeout interval for waiting for a reply to number seconds.
Change the initial timeout interval for waiting for a reply to number seconds\&.
.RE
.PP
\fB \fR\fB\fI[no]\fR\fR\fBvc\fR
.RS 4
Always use a virtual circuit when sending requests to the server.
Always use a virtual circuit when sending requests to the server\&.
.sp
(Default = novc)
.RE
.PP
\fB \fR\fB\fI[no]\fR\fR\fBfail\fR
.RS 4
Try the next nameserver if a nameserver responds with SERVFAIL or a referral (nofail) or terminate query (fail) on such a response.
Try the next nameserver if a nameserver responds with SERVFAIL or a referral (nofail) or terminate query (fail) on such a response\&.
.sp
(Default = nofail)
.RE
.sp
.RE
.IP "" 4
.RE
.SH "RETURN VALUES"
.PP
\fBnslookup\fR
returns with an exit status of 1 if any query failed, and 0 otherwise\&.
.SH "FILES"
.PP
\fI/etc/resolv.conf\fR
/etc/resolv\&.conf
.SH "SEE ALSO"
.PP
\fBdig\fR(1),
\fBhost\fR(1),
\fBnamed\fR(8).
\fBnamed\fR(8)\&.
.SH "AUTHOR"
.PP
Andrew Cherenson
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2004\-2007, 2010, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2004-2007, 2010, 2013-2016 Internet Systems Consortium, Inc. ("ISC")
.br

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2004-2015 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2004-2017 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2000-2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and/or distribute this software for any
@@ -27,7 +27,6 @@
#include <isc/parseint.h>
#include <isc/print.h>
#include <isc/string.h>
#include <isc/timer.h>
#include <isc/util.h>
#include <isc/task.h>
#include <isc/netaddr.h>
@@ -45,9 +44,20 @@
#include <dig/dig.h>
#if defined(HAVE_READLINE)
#if defined(HAVE_EDIT_READLINE_READLINE_H)
#include <edit/readline/readline.h>
#if defined(HAVE_EDIT_READLINE_HISTORY_H)
#include <edit/readline/history.h>
#endif
#elif defined(HAVE_EDITLINE_READLINE_H)
#include <editline/readline.h>
#elif defined(HAVE_READLINE_READLINE_H)
#include <readline/readline.h>
#if defined (HAVE_READLINE_HISTORY_H)
#include <readline/history.h>
#endif
#endif
#endif
static isc_boolean_t short_form = ISC_TRUE,
tcpmode = ISC_FALSE,
@@ -154,8 +164,8 @@ rcode_totext(dns_rcode_t rcode)
return totext.deconsttext;
}
void
dighost_shutdown(void) {
static void
query_finished(void) {
isc_event_t *event = global_event;
flush_lookup_list();
@@ -204,7 +214,7 @@ printa(dns_rdata_t *rdata) {
}
#ifdef DIG_SIGCHASE
/* Just for compatibility : not use in host program */
isc_result_t
static isc_result_t
printrdataset(dns_name_t *owner_name, dns_rdataset_t *rdataset,
isc_buffer_t *target)
{
@@ -394,7 +404,7 @@ detailsection(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers,
return (ISC_R_SUCCESS);
}
void
static void
received(int bytes, isc_sockaddr_t *from, dig_query_t *query)
{
UNUSED(bytes);
@@ -402,14 +412,13 @@ received(int bytes, isc_sockaddr_t *from, dig_query_t *query)
UNUSED(query);
}
void
static void
trying(char *frm, dig_lookup_t *lookup) {
UNUSED(frm);
UNUSED(lookup);
}
isc_result_t
static isc_result_t
printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
char servtext[ISC_SOCKADDR_FORMATSIZE];
@@ -585,7 +594,12 @@ version(void) {
static void
setoption(char *opt) {
if (strncasecmp(opt, "all", 3) == 0) {
size_t l = strlen(opt);
#define CHECKOPT(A, N) \
((l >= N) && (l < sizeof(A)) && (strncasecmp(opt, A, l) == 0))
if (CHECKOPT("all", 3)) {
show_settings(ISC_TRUE, ISC_FALSE);
} else if (strncasecmp(opt, "class=", 6) == 0) {
if (testclass(&opt[6]))
@@ -627,41 +641,41 @@ setoption(char *opt) {
set_timeout(&opt[8]);
} else if (strncasecmp(opt, "t=", 2) == 0) {
set_timeout(&opt[2]);
} else if (strncasecmp(opt, "rec", 3) == 0) {
} else if (CHECKOPT("recurse", 3)) {
recurse = ISC_TRUE;
} else if (strncasecmp(opt, "norec", 5) == 0) {
} else if (CHECKOPT("norecurse", 5)) {
recurse = ISC_FALSE;
} else if (strncasecmp(opt, "retry=", 6) == 0) {
set_tries(&opt[6]);
} else if (strncasecmp(opt, "ret=", 4) == 0) {
set_tries(&opt[4]);
} else if (strncasecmp(opt, "def", 3) == 0) {
} else if (CHECKOPT("defname", 3)) {
usesearch = ISC_TRUE;
} else if (strncasecmp(opt, "nodef", 5) == 0) {
} else if (CHECKOPT("nodefname", 5)) {
usesearch = ISC_FALSE;
} else if (strncasecmp(opt, "vc", 3) == 0) {
} else if (CHECKOPT("vc", 2) == 0) {
tcpmode = ISC_TRUE;
} else if (strncasecmp(opt, "novc", 5) == 0) {
} else if (CHECKOPT("novc", 4) == 0) {
tcpmode = ISC_FALSE;
} else if (strncasecmp(opt, "deb", 3) == 0) {
} else if (CHECKOPT("debug", 3) == 0) {
short_form = ISC_FALSE;
showsearch = ISC_TRUE;
} else if (strncasecmp(opt, "nodeb", 5) == 0) {
} else if (CHECKOPT("nodebug", 5) == 0) {
short_form = ISC_TRUE;
showsearch = ISC_FALSE;
} else if (strncasecmp(opt, "d2", 2) == 0) {
} else if (CHECKOPT("d2", 2) == 0) {
debugging = ISC_TRUE;
} else if (strncasecmp(opt, "nod2", 4) == 0) {
} else if (CHECKOPT("nod2", 4) == 0) {
debugging = ISC_FALSE;
} else if (strncasecmp(opt, "search", 3) == 0) {
} else if (CHECKOPT("search", 3) == 0) {
usesearch = ISC_TRUE;
} else if (strncasecmp(opt, "nosearch", 5) == 0) {
} else if (CHECKOPT("nosearch", 5) == 0) {
usesearch = ISC_FALSE;
} else if (strncasecmp(opt, "sil", 3) == 0) {
} else if (CHECKOPT("sil", 3) == 0) {
/* deprecation_msg = ISC_FALSE; */
} else if (strncasecmp(opt, "fail", 3) == 0) {
} else if (CHECKOPT("fail", 3) == 0) {
nofail=ISC_FALSE;
} else if (strncasecmp(opt, "nofail", 3) == 0) {
} else if (CHECKOPT("nofail", 5) == 0) {
nofail=ISC_TRUE;
} else if (strncasecmp(opt, "ndots=", 6) == 0) {
set_ndots(&opt[6]);
@@ -866,8 +880,6 @@ flush_lookup_list(void) {
}
if (l->sendmsg != NULL)
dns_message_destroy(&l->sendmsg);
if (l->timer != NULL)
isc_timer_detach(&l->timer);
lp = l;
l = ISC_LIST_NEXT(l, link);
ISC_LIST_DEQUEUE(lookup_list, lp, link);
@@ -902,15 +914,27 @@ main(int argc, char **argv) {
check_ra = ISC_TRUE;
/* setup dighost callbacks */
#ifdef DIG_SIGCHASE
dighost_printrdataset = printrdataset;
#endif
dighost_printmessage = printmessage;
dighost_received = received;
dighost_trying = trying;
dighost_shutdown = query_finished;
result = isc_app_start();
check_result(result, "isc_app_start");
setup_libs();
progname = argv[0];
setup_system(ISC_FALSE, ISC_FALSE);
parse_args(argc, argv);
setup_system();
if (keyfile[0] != 0)
setup_file_key();
else if (keysecret[0] != 0)
setup_text_key();
if (domainopt[0] != '\0')
set_search_domain(domainopt);
if (in_use)

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2004-2007, 2010, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004-2007, 2010, 2013-2016 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -45,10 +42,14 @@
- OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- SUCH DAMAGE.
-->
<refentry>
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.nslookup">
<info>
<date>2014-01-24</date>
</info>
<refentryinfo>
<date>January 24, 2014</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -71,21 +72,23 @@
<year>2010</year>
<year>2013</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>nslookup</command>
<arg><option>-option</option></arg>
<arg choice="opt">name | -</arg>
<arg choice="opt">server</arg>
<arg choice="opt" rep="norepeat"><option>-option</option></arg>
<arg choice="opt" rep="norepeat">name | -</arg>
<arg choice="opt" rep="norepeat">server</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>Nslookup</command>
is a program to query Internet domain name servers. <command>Nslookup</command>
has two modes: interactive and non-interactive. Interactive mode allows
@@ -95,13 +98,13 @@
used to print just the name and requested information for a host or
domain.
</para>
</refsect1>
</refsection>
<refsection><info><title>ARGUMENTS</title></info>
<refsect1>
<title>ARGUMENTS</title>
<para>
Interactive mode is entered in the following cases:
<orderedlist numeration="loweralpha">
<orderedlist numeration="loweralpha" inheritnum="ignore" continuation="restarts">
<listitem>
<para>
when no arguments are given (the default name server will be used)
@@ -139,10 +142,10 @@ nslookup -query=hinfo -timeout=10
number and immediately exits.
</para>
</refsect1>
</refsection>
<refsection><info><title>INTERACTIVE COMMANDS</title></info>
<refsect1>
<title>INTERACTIVE COMMANDS</title>
<variablelist>
<varlistentry>
<term><constant>host</constant> <optional>server</optional></term>
@@ -475,16 +478,23 @@ nslookup -query=hinfo -timeout=10
</listitem>
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>RETURN VALUES</title></info>
<para>
<command>nslookup</command> returns with an exit status of 1
if any query failed, and 0 otherwise.
</para>
</refsection>
<refsection><info><title>FILES</title></info>
<refsect1>
<title>FILES</title>
<para><filename>/etc/resolv.conf</filename>
</para>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>dig</refentrytitle><manvolnum>1</manvolnum>
</citerefentry>,
@@ -495,16 +505,5 @@ nslookup -query=hinfo -timeout=10
<refentrytitle>named</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>.
</para>
</refsect1>
<refsect1>
<title>Author</title>
<para>
Andrew Cherenson
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refsection>
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2004-2007, 2010, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004-2007, 2010, 2013-2016 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -13,27 +14,44 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>nslookup</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<a name="id2476283"></a><div class="titlepage"></div>
<div class="refnamediv">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.nslookup"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2>Name</h2>
<p>nslookup &#8212; query Internet name servers interactively</p>
<p>
nslookup
&#8212; query Internet name servers interactively
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">nslookup</code> [<code class="option">-option</code>] [name | -] [server]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543442"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">Nslookup</strong></span>
is a program to query Internet domain name servers. <span><strong class="command">Nslookup</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">nslookup</code>
[<code class="option">-option</code>]
[name | -]
[server]
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>Nslookup</strong></span>
is a program to query Internet domain name servers. <span class="command"><strong>Nslookup</strong></span>
has two modes: interactive and non-interactive. Interactive mode allows
the user to query name servers for information about various hosts and
domains or to print a list of hosts in a domain. Non-interactive mode
@@ -41,29 +59,37 @@
used to print just the name and requested information for a host or
domain.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543458"></a><h2>ARGUMENTS</h2>
<p>
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>ARGUMENTS</h2>
<p>
Interactive mode is entered in the following cases:
</p>
<div class="orderedlist"><ol type="a">
<li><p>
<div class="orderedlist"><ol class="orderedlist" type="a">
<li class="listitem">
<p>
when no arguments are given (the default name server will be used)
</p></li>
<li><p>
</p>
</li>
<li class="listitem">
<p>
when the first argument is a hyphen (-) and the second argument is
the host name or Internet address of a name server.
</p></li>
</p>
</li>
</ol></div>
<p>
</p>
<p>
<p>
Non-interactive mode is used when the name or Internet address of the
host to be looked up is given as the first argument. The optional second
argument specifies the host name or address of a name server.
</p>
<p>
<p>
Options can also be specified on the command line if they precede the
arguments and are prefixed with a hyphen. For example, to
change the default query type to host information, and the initial
@@ -76,245 +102,299 @@ nslookup -query=hinfo -timeout=10
<p>
</p>
<p>
<p>
The <code class="option">-version</code> option causes
<span><strong class="command">nslookup</strong></span> to print the version
<span class="command"><strong>nslookup</strong></span> to print the version
number and immediately exits.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543512"></a><h2>INTERACTIVE COMMANDS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>INTERACTIVE COMMANDS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term"><code class="constant">host</code> [<span class="optional">server</span>]</span></dt>
<dd>
<p>
<p>
Look up information for host using the current default server or
using server, if specified. If host is an Internet address and
the query type is A or PTR, the name of the host is returned.
If host is a name and does not have a trailing period, the
search list is used to qualify the name.
</p>
<p>
<p>
To look up a host not in the current domain, append a period to
the name.
</p>
</dd>
</dd>
<dt><span class="term"><code class="constant">server</code> <em class="replaceable"><code>domain</code></em></span></dt>
<dd><p></p></dd>
<dd>
<p></p>
</dd>
<dt><span class="term"><code class="constant">lserver</code> <em class="replaceable"><code>domain</code></em></span></dt>
<dd><p>
<dd>
<p>
Change the default server to <em class="replaceable"><code>domain</code></em>; <code class="constant">lserver</code> uses the initial
server to look up information about <em class="replaceable"><code>domain</code></em>, while <code class="constant">server</code> uses
the current default server. If an authoritative answer can't be
found, the names of servers that might have the answer are
returned.
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">root</code></span></dt>
<dd><p>
<dd>
<p>
not implemented
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">finger</code></span></dt>
<dd><p>
<dd>
<p>
not implemented
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">ls</code></span></dt>
<dd><p>
<dd>
<p>
not implemented
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">view</code></span></dt>
<dd><p>
<dd>
<p>
not implemented
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">help</code></span></dt>
<dd><p>
<dd>
<p>
not implemented
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">?</code></span></dt>
<dd><p>
<dd>
<p>
not implemented
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">exit</code></span></dt>
<dd><p>
<dd>
<p>
Exits the program.
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">set</code>
<em class="replaceable"><code>keyword[<span class="optional">=value</span>]</code></em></span></dt>
<dd>
<p>
<p>
This command is used to change state information that affects
the lookups. Valid keywords are:
</p>
<div class="variablelist"><dl>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term"><code class="constant">all</code></span></dt>
<dd><p>
<dd>
<p>
Prints the current values of the frequently used
options to <span><strong class="command">set</strong></span>.
options to <span class="command"><strong>set</strong></span>.
Information about the current default
server and host is also printed.
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">class=</code><em class="replaceable"><code>value</code></em></span></dt>
<dd>
<p>
<p>
Change the query class to one of:
</p>
<div class="variablelist"><dl>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term"><code class="constant">IN</code></span></dt>
<dd><p>
<dd>
<p>
the Internet class
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">CH</code></span></dt>
<dd><p>
<dd>
<p>
the Chaos class
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">HS</code></span></dt>
<dd><p>
<dd>
<p>
the Hesiod class
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">ANY</code></span></dt>
<dd><p>
<dd>
<p>
wildcard
</p></dd>
</p>
</dd>
</dl></div>
<p>
The class specifies the protocol group of the information.
</p>
<p>
<p>
(Default = IN; abbreviation = cl)
</p>
</dd>
</dd>
<dt><span class="term"><code class="constant">
<em class="replaceable"><code>[<span class="optional">no</span>]</code></em>debug</code></span></dt>
<dd>
<p>
<p>
Turn on or off the display of the full response packet and
any intermediate response packets when searching.
</p>
<p>
<p>
(Default = nodebug; abbreviation = [<span class="optional">no</span>]deb)
</p>
</dd>
</dd>
<dt><span class="term"><code class="constant">
<em class="replaceable"><code>[<span class="optional">no</span>]</code></em>d2</code></span></dt>
<dd>
<p>
<p>
Turn debugging mode on or off. This displays more about
what nslookup is doing.
</p>
<p>
<p>
(Default = nod2)
</p>
</dd>
</dd>
<dt><span class="term"><code class="constant">domain=</code><em class="replaceable"><code>name</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the search list to <em class="replaceable"><code>name</code></em>.
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">
<em class="replaceable"><code>[<span class="optional">no</span>]</code></em>search</code></span></dt>
<dd>
<p>
<p>
If the lookup request contains at least one period but
doesn't end with a trailing period, append the domain
names in the domain search list to the request until an
answer is received.
</p>
<p>
<p>
(Default = search)
</p>
</dd>
</dd>
<dt><span class="term"><code class="constant">port=</code><em class="replaceable"><code>value</code></em></span></dt>
<dd>
<p>
<p>
Change the default TCP/UDP name server port to <em class="replaceable"><code>value</code></em>.
</p>
<p>
<p>
(Default = 53; abbreviation = po)
</p>
</dd>
</dd>
<dt><span class="term"><code class="constant">querytype=</code><em class="replaceable"><code>value</code></em></span></dt>
<dd><p></p></dd>
<dd>
<p></p>
</dd>
<dt><span class="term"><code class="constant">type=</code><em class="replaceable"><code>value</code></em></span></dt>
<dd>
<p>
<p>
Change the type of the information query.
</p>
<p>
<p>
(Default = A; abbreviations = q, ty)
</p>
</dd>
</dd>
<dt><span class="term"><code class="constant">
<em class="replaceable"><code>[<span class="optional">no</span>]</code></em>recurse</code></span></dt>
<dd>
<p>
<p>
Tell the name server to query other servers if it does not
have the
information.
</p>
<p>
<p>
(Default = recurse; abbreviation = [no]rec)
</p>
</dd>
</dd>
<dt><span class="term"><code class="constant">ndots=</code><em class="replaceable"><code>number</code></em></span></dt>
<dd><p>
<dd>
<p>
Set the number of dots (label separators) in a domain
that will disable searching. Absolute names always
stop searching.
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">retry=</code><em class="replaceable"><code>number</code></em></span></dt>
<dd><p>
<dd>
<p>
Set the number of retries to number.
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">timeout=</code><em class="replaceable"><code>number</code></em></span></dt>
<dd><p>
<dd>
<p>
Change the initial timeout interval for waiting for a
reply to number seconds.
</p></dd>
</p>
</dd>
<dt><span class="term"><code class="constant">
<em class="replaceable"><code>[<span class="optional">no</span>]</code></em>vc</code></span></dt>
<dd>
<p>
<p>
Always use a virtual circuit when sending requests to the
server.
</p>
<p>
<p>
(Default = novc)
</p>
</dd>
</dd>
<dt><span class="term"><code class="constant">
<em class="replaceable"><code>[<span class="optional">no</span>]</code></em>fail</code></span></dt>
<dd>
<p>
<p>
Try the next nameserver if a nameserver responds with
SERVFAIL or a referral (nofail) or terminate query
(fail) on such a response.
</p>
<p>
<p>
(Default = nofail)
</p>
</dd>
</dd>
</dl></div>
<p>
</p>
</dd>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2546326"></a><h2>FILES</h2>
<p><code class="filename">/etc/resolv.conf</code>
</div>
<div class="refsection">
<a name="id-1.10"></a><h2>RETURN VALUES</h2>
<p>
<span class="command"><strong>nslookup</strong></span> returns with an exit status of 1
if any query failed, and 0 otherwise.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2546338"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">dig</span>(1)</span>,
<span class="citerefentry"><span class="refentrytitle">host</span>(1)</span>,
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>.
</div>
<div class="refsection">
<a name="id-1.11"></a><h2>FILES</h2>
<p><code class="filename">/etc/resolv.conf</code>
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2546372"></a><h2>Author</h2>
<p>
Andrew Cherenson
</div>
<div class="refsection">
<a name="id-1.12"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">dig</span>(1)
</span>,
<span class="citerefentry">
<span class="refentrytitle">host</span>(1)
</span>,
<span class="citerefentry">
<span class="refentrytitle">named</span>(8)
</span>.
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,27 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\include\dig\dig.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\dig.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\include\dig\dig.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\dig.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@@ -54,13 +54,14 @@
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<FunctionLevelLinking>false</FunctionLevelLinking>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<BrowseInformation>true</BrowseInformation>
<AdditionalIncludeDirectories>.\;..\include;..\..\..\;@LIBXML2_INC@@IDN_INC@..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\isccfg\include;..\..\..\lib\dns\include;..\..\..\lib\bind9\include;..\..\..\lib\lwres\win32\include;..\..\..\lib\lwres\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -87,6 +88,7 @@
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<AdditionalIncludeDirectories>.\;..\include;..\..\..\;@LIBXML2_INC@@IDN_INC@..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\isccfg\include;..\..\..\lib\dns\include;..\..\..\lib\bind9\include;..\..\..\lib\lwres\win32\include;..\..\..\lib\lwres\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -108,4 +110,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

View File

@@ -1,18 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\dighost.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\dighost.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@@ -54,13 +54,14 @@
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<FunctionLevelLinking>false</FunctionLevelLinking>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<BrowseInformation>true</BrowseInformation>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@@IDN_INC@..\include;..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\isccfg\include;..\..\..\lib\lwres\win32\include;..\..\..\lib\lwres\include;..\..\..\lib\dns\include;..\..\..\lib\bind9\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -85,6 +86,7 @@
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<AdditionalIncludeDirectories>.\;..\..\..\;@LIBXML2_INC@@IDN_INC@..\include;..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\isccfg\include;..\..\..\lib\lwres\win32\include;..\..\..\lib\lwres\include;..\..\..\lib\dns\include;..\..\..\lib\bind9\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -101,4 +103,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

View File

@@ -1,18 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\host.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\host.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@@ -54,13 +54,14 @@
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<FunctionLevelLinking>false</FunctionLevelLinking>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<BrowseInformation>true</BrowseInformation>
<AdditionalIncludeDirectories>.\;..\include;..\..\..\;@LIBXML2_INC@@IDN_INC@..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\isccfg\include;..\..\..\lib\dns\include;..\..\..\lib\bind9\include;..\..\..\lib\lwres\win32\include;..\..\..\lib\lwres\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -87,6 +88,7 @@
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<AdditionalIncludeDirectories>.\;..\include;..\..\..\;@LIBXML2_INC@@IDN_INC@..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\isccfg\include;..\..\..\lib\dns\include;..\..\..\lib\bind9\include;..\..\..\lib\lwres\win32\include;..\..\..\lib\lwres\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -105,4 +107,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

View File

@@ -1,21 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\dighost.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\nslookup.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\dighost.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\nslookup.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@@ -54,13 +54,14 @@
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;USE_READLINE_STATIC;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<FunctionLevelLinking>false</FunctionLevelLinking>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<BrowseInformation>true</BrowseInformation>
<AdditionalIncludeDirectories>.\;..\include;..\..\..\;@LIBXML2_INC@@READLINE_INC@..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\isccfg\include;..\..\..\lib\dns\include;..\..\..\lib\bind9\include;..\..\..\lib\lwres\win32\include;..\..\..\lib\lwres\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -87,6 +88,7 @@
<ObjectFileName>.\$(Configuration)\</ObjectFileName>
<ProgramDataBaseFileName>$(OutDir)$(TargetName).pdb</ProgramDataBaseFileName>
<AdditionalIncludeDirectories>.\;..\include;..\..\..\;@LIBXML2_INC@@READLINE_INC@..\..\..\lib\isc\win32;..\..\..\lib\isc\win32\include;..\..\..\lib\isc\include;..\..\..\lib\isccfg\include;..\..\..\lib\dns\include;..\..\..\lib\bind9\include;..\..\..\lib\lwres\win32\include;..\..\..\lib\lwres\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -106,4 +108,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2004, 2005, 2007-2009, 2012-2014 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 2004, 2005, 2007-2009, 2012-2016 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 2000-2002 Internet Software Consortium.
#
# Permission to use, copy, modify, and/or distribute this software for any
@@ -19,7 +19,7 @@ srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
@BIND9_VERSION@
VERSION=@BIND9_VERSION@
@BIND9_MAKE_INCLUDES@
@@ -51,7 +51,7 @@ OBJS = dnssectool.@O@
SRCS = dnssec-dsfromkey.c dnssec-keyfromlabel.c dnssec-keygen.c \
dnssec-revoke.c dnssec-settime.c dnssec-signzone.c \
dnssec-verify.c dnssec-importkey.c dnssectool.c
dnssec-verify.c dnssec-importkey.c dnssectool.c
MANPAGES = dnssec-dsfromkey.8 dnssec-keyfromlabel.8 dnssec-keygen.8 \
dnssec-revoke.8 dnssec-settime.8 dnssec-signzone.8 \
@@ -119,6 +119,10 @@ install:: ${TARGETS} installdirs
for t in ${TARGETS}; do ${LIBTOOL_MODE_INSTALL} ${INSTALL_PROGRAM} $$t ${DESTDIR}${sbindir}; done
for m in ${MANPAGES}; do ${INSTALL_DATA} ${srcdir}/$$m ${DESTDIR}${mandir}/man8; done
uninstall::
for m in ${MANPAGES}; do rm -f ${DESTDIR}${mandir}/man8/$$m ; done
for t in ${TARGETS}; do ${LIBTOOL_MODE_UNINSTALL} rm -f ${DESTDIR}${sbindir}/$$t ; done
clean distclean::
rm -f ${TARGETS}

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2008-2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2008-2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
@@ -12,163 +12,179 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
.\" Title: dnssec\-dsfromkey
'\" t
.\" Title: dnssec-dsfromkey
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: May 17, 2012
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2012-05-17
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "DNSSEC\-DSFROMKEY" "8" "May 17, 2012" "BIND9" "BIND9"
.TH "DNSSEC\-DSFROMKEY" "8" "2012\-05\-17" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
dnssec\-dsfromkey \- DNSSEC DS RR generation tool
dnssec-dsfromkey \- DNSSEC DS RR generation tool
.SH "SYNOPSIS"
.HP 17
.HP \w'\fBdnssec\-dsfromkey\fR\ 'u
\fBdnssec\-dsfromkey\fR [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-1\fR] [\fB\-2\fR] [\fB\-a\ \fR\fB\fIalg\fR\fR] [\fB\-C\fR] [\fB\-l\ \fR\fB\fIdomain\fR\fR] [\fB\-T\ \fR\fB\fITTL\fR\fR] {keyfile}
.HP 17
.HP \w'\fBdnssec\-dsfromkey\fR\ 'u
\fBdnssec\-dsfromkey\fR {\-s} [\fB\-1\fR] [\fB\-2\fR] [\fB\-a\ \fR\fB\fIalg\fR\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-l\ \fR\fB\fIdomain\fR\fR] [\fB\-s\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-T\ \fR\fB\fITTL\fR\fR] [\fB\-f\ \fR\fB\fIfile\fR\fR] [\fB\-A\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] {dnsname}
.HP 17
.HP \w'\fBdnssec\-dsfromkey\fR\ 'u
\fBdnssec\-dsfromkey\fR [\fB\-h\fR] [\fB\-V\fR]
.SH "DESCRIPTION"
.PP
\fBdnssec\-dsfromkey\fR
outputs the Delegation Signer (DS) resource record (RR), as defined in RFC 3658 and RFC 4509, for the given key(s).
outputs the Delegation Signer (DS) resource record (RR), as defined in RFC 3658 and RFC 4509, for the given key(s)\&.
.SH "OPTIONS"
.PP
\-1
.RS 4
Use SHA\-1 as the digest algorithm (the default is to use both SHA\-1 and SHA\-256).
Use SHA\-1 as the digest algorithm (the default is to use both SHA\-1 and SHA\-256)\&.
.RE
.PP
\-2
.RS 4
Use SHA\-256 as the digest algorithm.
Use SHA\-256 as the digest algorithm\&.
.RE
.PP
\-a \fIalgorithm\fR
.RS 4
Select the digest algorithm. The value of
Select the digest algorithm\&. The value of
\fBalgorithm\fR
must be one of SHA\-1 (SHA1), SHA\-256 (SHA256), GOST or SHA\-384 (SHA384). These values are case insensitive.
must be one of SHA\-1 (SHA1), SHA\-256 (SHA256), GOST or SHA\-384 (SHA384)\&. These values are case insensitive\&.
.RE
.PP
\-C
.RS 4
Generate CDS records rather than DS records. This is mutually exclusive with generating lookaside records.
Generate CDS records rather than DS records\&. This is mutually exclusive with generating lookaside records\&.
.RE
.PP
\-T \fITTL\fR
.RS 4
Specifies the TTL of the DS records.
Specifies the TTL of the DS records\&.
.RE
.PP
\-K \fIdirectory\fR
.RS 4
Look for key files (or, in keyset mode,
\fIkeyset\-\fR
keyset\-
files) in
\fBdirectory\fR.
\fBdirectory\fR\&.
.RE
.PP
\-f \fIfile\fR
.RS 4
Zone file mode: in place of the keyfile name, the argument is the DNS domain name of a zone master file, which can be read from
\fBfile\fR. If the zone name is the same as
\fBfile\fR, then it may be omitted.
\fBfile\fR\&. If the zone name is the same as
\fBfile\fR, then it may be omitted\&.
.sp
If
\fBfile\fR
is set to
"\-", then the zone data is read from the standard input. This makes it possible to use the output of the
"\-", then the zone data is read from the standard input\&. This makes it possible to use the output of the
\fBdig\fR
command as input, as in:
.sp
\fBdig dnskey example.com | dnssec\-dsfromkey \-f \- example.com\fR
\fBdig dnskey example\&.com | dnssec\-dsfromkey \-f \- example\&.com\fR
.RE
.PP
\-A
.RS 4
Include ZSK's when generating DS records. Without this option, only keys which have the KSK flag set will be converted to DS records and printed. Useful only in zone file mode.
Include ZSK\*(Aqs when generating DS records\&. Without this option, only keys which have the KSK flag set will be converted to DS records and printed\&. Useful only in zone file mode\&.
.RE
.PP
\-l \fIdomain\fR
.RS 4
Generate a DLV set instead of a DS set. The specified
Generate a DLV set instead of a DS set\&. The specified
\fBdomain\fR
is appended to the name for each record in the set. The DNSSEC Lookaside Validation (DLV) RR is described in RFC 4431. This is mutually exclusive with generating CDS records.
is appended to the name for each record in the set\&. The DNSSEC Lookaside Validation (DLV) RR is described in RFC 4431\&. This is mutually exclusive with generating CDS records\&.
.RE
.PP
\-s
.RS 4
Keyset mode: in place of the keyfile name, the argument is the DNS domain name of a keyset file.
Keyset mode: in place of the keyfile name, the argument is the DNS domain name of a keyset file\&.
.RE
.PP
\-c \fIclass\fR
.RS 4
Specifies the DNS class (default is IN). Useful only in keyset or zone file mode.
Specifies the DNS class (default is IN)\&. Useful only in keyset or zone file mode\&.
.RE
.PP
\-v \fIlevel\fR
.RS 4
Sets the debugging level.
Sets the debugging level\&.
.RE
.PP
\-h
.RS 4
Prints usage information.
Prints usage information\&.
.RE
.PP
\-V
.RS 4
Prints version information.
Prints version information\&.
.RE
.SH "EXAMPLE"
.PP
To build the SHA\-256 DS RR from the
\fBKexample.com.+003+26160\fR
\fBKexample\&.com\&.+003+26160\fR
keyfile name, the following command would be issued:
.PP
\fBdnssec\-dsfromkey \-2 Kexample.com.+003+26160\fR
\fBdnssec\-dsfromkey \-2 Kexample\&.com\&.+003+26160\fR
.PP
The command would print something like:
.PP
\fBexample.com. IN DS 26160 5 2 3A1EADA7A74B8D0BA86726B0C227AA85AB8BBD2B2004F41A868A54F0 C5EA0B94\fR
\fBexample\&.com\&. IN DS 26160 5 2 3A1EADA7A74B8D0BA86726B0C227AA85AB8BBD2B2004F41A868A54F0 C5EA0B94\fR
.SH "FILES"
.PP
The keyfile can be designed by the key identification
\fIKnnnn.+aaa+iiiii\fR
Knnnn\&.+aaa+iiiii
or the full file name
\fIKnnnn.+aaa+iiiii.key\fR
Knnnn\&.+aaa+iiiii\&.key
as generated by
dnssec\-keygen(8).
dnssec\-keygen(8)\&.
.PP
The keyset file name is built from the
\fBdirectory\fR, the string
\fIkeyset\-\fR
keyset\-
and the
\fBdnsname\fR.
\fBdnsname\fR\&.
.SH "CAVEAT"
.PP
A keyfile error can give a "file not found" even if the file exists.
A keyfile error can give a "file not found" even if the file exists\&.
.SH "SEE ALSO"
.PP
\fBdnssec\-keygen\fR(8),
\fBdnssec\-signzone\fR(8),
\fBdnssec-keygen\fR(8),
\fBdnssec-signzone\fR(8),
BIND 9 Administrator Reference Manual,
RFC 3658,
RFC 4431.
RFC 4509.
RFC 4431\&.
RFC 4509\&.
.SH "AUTHOR"
.PP
Internet Systems Consortium
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2008\-2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2008-2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.br

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2008-2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2008-2012, 2014, 2015, 2017 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -187,7 +187,7 @@ loadkey(char *filename, unsigned char *key_buf, unsigned int key_buf_size,
result = dst_key_fromnamedfile(filename, NULL, DST_TYPE_PUBLIC,
mctx, &key);
if (result != ISC_R_SUCCESS)
fatal("invalid keyfile name %s: %s",
fatal("can't load %s.key: %s",
filename, isc_result_totext(result));
if (verbose > 2) {

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2008-2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2008-2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -17,9 +14,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.dnssec-dsfromkey">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.dnssec-dsfromkey">
<info>
<date>2012-05-17</date>
</info>
<refentryinfo>
<date>May 17, 2012</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -42,55 +44,56 @@
<year>2012</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dnssec-dsfromkey</command>
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg><option>-1</option></arg>
<arg><option>-2</option></arg>
<arg><option>-a <replaceable class="parameter">alg</replaceable></option></arg>
<arg><option>-C</option></arg>
<arg><option>-l <replaceable class="parameter">domain</replaceable></option></arg>
<arg><option>-T <replaceable class="parameter">TTL</replaceable></option></arg>
<arg choice="req">keyfile</arg>
<arg choice="opt" rep="norepeat"><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-1</option></arg>
<arg choice="opt" rep="norepeat"><option>-2</option></arg>
<arg choice="opt" rep="norepeat"><option>-a <replaceable class="parameter">alg</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-C</option></arg>
<arg choice="opt" rep="norepeat"><option>-l <replaceable class="parameter">domain</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-T <replaceable class="parameter">TTL</replaceable></option></arg>
<arg choice="req" rep="norepeat">keyfile</arg>
</cmdsynopsis>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dnssec-dsfromkey</command>
<arg choice="req">-s</arg>
<arg><option>-1</option></arg>
<arg><option>-2</option></arg>
<arg><option>-a <replaceable class="parameter">alg</replaceable></option></arg>
<arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-l <replaceable class="parameter">domain</replaceable></option></arg>
<arg><option>-s</option></arg>
<arg><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg><option>-T <replaceable class="parameter">TTL</replaceable></option></arg>
<arg><option>-f <replaceable class="parameter">file</replaceable></option></arg>
<arg><option>-A</option></arg>
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg choice="req">dnsname</arg>
<arg choice="req" rep="norepeat">-s</arg>
<arg choice="opt" rep="norepeat"><option>-1</option></arg>
<arg choice="opt" rep="norepeat"><option>-2</option></arg>
<arg choice="opt" rep="norepeat"><option>-a <replaceable class="parameter">alg</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-l <replaceable class="parameter">domain</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-s</option></arg>
<arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-T <replaceable class="parameter">TTL</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-f <replaceable class="parameter">file</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-A</option></arg>
<arg choice="opt" rep="norepeat"><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg choice="req" rep="norepeat">dnsname</arg>
</cmdsynopsis>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dnssec-dsfromkey</command>
<arg><option>-h</option></arg>
<arg><option>-V</option></arg>
<arg choice="opt" rep="norepeat"><option>-h</option></arg>
<arg choice="opt" rep="norepeat"><option>-V</option></arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>dnssec-dsfromkey</command>
outputs the Delegation Signer (DS) resource record (RR), as defined in
RFC 3658 and RFC 4509, for the given key(s).
</para>
</refsect1>
</refsection>
<refsection><info><title>OPTIONS</title></info>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
@@ -181,7 +184,7 @@
<para>
Include ZSK's when generating DS records. Without this option,
only keys which have the KSK flag set will be converted to DS
records and printed. Useful only in zone file mode.
records and printed. Useful only in zone file mode.
</para>
</listitem>
</varlistentry>
@@ -247,10 +250,10 @@
</listitem>
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>EXAMPLE</title></info>
<refsect1>
<title>EXAMPLE</title>
<para>
To build the SHA-256 DS RR from the
<userinput>Kexample.com.+003+26160</userinput>
@@ -263,10 +266,10 @@
</para>
<para><userinput>example.com. IN DS 26160 5 2 3A1EADA7A74B8D0BA86726B0C227AA85AB8BBD2B2004F41A868A54F0 C5EA0B94</userinput>
</para>
</refsect1>
</refsection>
<refsection><info><title>FILES</title></info>
<refsect1>
<title>FILES</title>
<para>
The keyfile can be designed by the key identification
<filename>Knnnn.+aaa+iiiii</filename> or the full file name
@@ -278,17 +281,17 @@
the string <filename>keyset-</filename> and the
<option>dnsname</option>.
</para>
</refsect1>
</refsection>
<refsection><info><title>CAVEAT</title></info>
<refsect1>
<title>CAVEAT</title>
<para>
A keyfile error can give a "file not found" even if the file exists.
</para>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>dnssec-keygen</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
@@ -300,16 +303,6 @@
<citetitle>RFC 4431</citetitle>.
<citetitle>RFC 4509</citetitle>.
</para>
</refsect1>
</refsection>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2008-2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2008-2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -13,172 +14,250 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>dnssec-dsfromkey</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.dnssec-dsfromkey"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">dnssec-dsfromkey</span> &#8212; DNSSEC DS RR generation tool</p>
<p>
<span class="application">dnssec-dsfromkey</span>
&#8212; DNSSEC DS RR generation tool
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">dnssec-dsfromkey</code> [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-1</code>] [<code class="option">-2</code>] [<code class="option">-a <em class="replaceable"><code>alg</code></em></code>] [<code class="option">-C</code>] [<code class="option">-l <em class="replaceable"><code>domain</code></em></code>] [<code class="option">-T <em class="replaceable"><code>TTL</code></em></code>] {keyfile}</p></div>
<div class="cmdsynopsis"><p><code class="command">dnssec-dsfromkey</code> {-s} [<code class="option">-1</code>] [<code class="option">-2</code>] [<code class="option">-a <em class="replaceable"><code>alg</code></em></code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-l <em class="replaceable"><code>domain</code></em></code>] [<code class="option">-s</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-T <em class="replaceable"><code>TTL</code></em></code>] [<code class="option">-f <em class="replaceable"><code>file</code></em></code>] [<code class="option">-A</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] {dnsname}</p></div>
<div class="cmdsynopsis"><p><code class="command">dnssec-dsfromkey</code> [<code class="option">-h</code>] [<code class="option">-V</code>]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543522"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">dnssec-dsfromkey</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">dnssec-dsfromkey</code>
[<code class="option">-v <em class="replaceable"><code>level</code></em></code>]
[<code class="option">-1</code>]
[<code class="option">-2</code>]
[<code class="option">-a <em class="replaceable"><code>alg</code></em></code>]
[<code class="option">-C</code>]
[<code class="option">-l <em class="replaceable"><code>domain</code></em></code>]
[<code class="option">-T <em class="replaceable"><code>TTL</code></em></code>]
{keyfile}
</p></div>
<div class="cmdsynopsis"><p>
<code class="command">dnssec-dsfromkey</code>
{-s}
[<code class="option">-1</code>]
[<code class="option">-2</code>]
[<code class="option">-a <em class="replaceable"><code>alg</code></em></code>]
[<code class="option">-K <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-l <em class="replaceable"><code>domain</code></em></code>]
[<code class="option">-s</code>]
[<code class="option">-c <em class="replaceable"><code>class</code></em></code>]
[<code class="option">-T <em class="replaceable"><code>TTL</code></em></code>]
[<code class="option">-f <em class="replaceable"><code>file</code></em></code>]
[<code class="option">-A</code>]
[<code class="option">-v <em class="replaceable"><code>level</code></em></code>]
{dnsname}
</p></div>
<div class="cmdsynopsis"><p>
<code class="command">dnssec-dsfromkey</code>
[<code class="option">-h</code>]
[<code class="option">-V</code>]
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>dnssec-dsfromkey</strong></span>
outputs the Delegation Signer (DS) resource record (RR), as defined in
RFC 3658 and RFC 4509, for the given key(s).
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543533"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-1</span></dt>
<dd><p>
<dd>
<p>
Use SHA-1 as the digest algorithm (the default is to use
both SHA-1 and SHA-256).
</p></dd>
</p>
</dd>
<dt><span class="term">-2</span></dt>
<dd><p>
<dd>
<p>
Use SHA-256 as the digest algorithm.
</p></dd>
</p>
</dd>
<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
<dd><p>
<dd>
<p>
Select the digest algorithm. The value of
<code class="option">algorithm</code> must be one of SHA-1 (SHA1),
SHA-256 (SHA256), GOST or SHA-384 (SHA384).
These values are case insensitive.
</p></dd>
</p>
</dd>
<dt><span class="term">-C</span></dt>
<dd><p>
<dd>
<p>
Generate CDS records rather than DS records. This is mutually
exclusive with generating lookaside records.
</p></dd>
</p>
</dd>
<dt><span class="term">-T <em class="replaceable"><code>TTL</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the TTL of the DS records.
</p></dd>
</p>
</dd>
<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
<dd>
<p>
Look for key files (or, in keyset mode,
<code class="filename">keyset-</code> files) in
<code class="option">directory</code>.
</p></dd>
</p>
</dd>
<dt><span class="term">-f <em class="replaceable"><code>file</code></em></span></dt>
<dd>
<p>
<p>
Zone file mode: in place of the keyfile name, the argument is
the DNS domain name of a zone master file, which can be read
from <code class="option">file</code>. If the zone name is the same as
<code class="option">file</code>, then it may be omitted.
</p>
<p>
<p>
If <code class="option">file</code> is set to <code class="literal">"-"</code>, then
the zone data is read from the standard input. This makes it
possible to use the output of the <span><strong class="command">dig</strong></span>
possible to use the output of the <span class="command"><strong>dig</strong></span>
command as input, as in:
</p>
<p>
<p>
<strong class="userinput"><code>dig dnskey example.com | dnssec-dsfromkey -f - example.com</code></strong>
</p>
</dd>
</dd>
<dt><span class="term">-A</span></dt>
<dd><p>
<dd>
<p>
Include ZSK's when generating DS records. Without this option,
only keys which have the KSK flag set will be converted to DS
records and printed. Useful only in zone file mode.
</p></dd>
records and printed. Useful only in zone file mode.
</p>
</dd>
<dt><span class="term">-l <em class="replaceable"><code>domain</code></em></span></dt>
<dd><p>
<dd>
<p>
Generate a DLV set instead of a DS set. The specified
<code class="option">domain</code> is appended to the name for each
record in the set.
The DNSSEC Lookaside Validation (DLV) RR is described
in RFC 4431. This is mutually exclusive with generating
CDS records.
</p></dd>
</p>
</dd>
<dt><span class="term">-s</span></dt>
<dd><p>
<dd>
<p>
Keyset mode: in place of the keyfile name, the argument is
the DNS domain name of a keyset file.
</p></dd>
</p>
</dd>
<dt><span class="term">-c <em class="replaceable"><code>class</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the DNS class (default is IN). Useful only
in keyset or zone file mode.
</p></dd>
</p>
</dd>
<dt><span class="term">-v <em class="replaceable"><code>level</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the debugging level.
</p></dd>
</p>
</dd>
<dt><span class="term">-h</span></dt>
<dd><p>
<dd>
<p>
Prints usage information.
</p></dd>
</p>
</dd>
<dt><span class="term">-V</span></dt>
<dd><p>
<dd>
<p>
Prints version information.
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543800"></a><h2>EXAMPLE</h2>
<p>
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>EXAMPLE</h2>
<p>
To build the SHA-256 DS RR from the
<strong class="userinput"><code>Kexample.com.+003+26160</code></strong>
keyfile name, the following command would be issued:
</p>
<p><strong class="userinput"><code>dnssec-dsfromkey -2 Kexample.com.+003+26160</code></strong>
<p><strong class="userinput"><code>dnssec-dsfromkey -2 Kexample.com.+003+26160</code></strong>
</p>
<p>
<p>
The command would print something like:
</p>
<p><strong class="userinput"><code>example.com. IN DS 26160 5 2 3A1EADA7A74B8D0BA86726B0C227AA85AB8BBD2B2004F41A868A54F0 C5EA0B94</code></strong>
<p><strong class="userinput"><code>example.com. IN DS 26160 5 2 3A1EADA7A74B8D0BA86726B0C227AA85AB8BBD2B2004F41A868A54F0 C5EA0B94</code></strong>
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543830"></a><h2>FILES</h2>
<p>
</div>
<div class="refsection">
<a name="id-1.10"></a><h2>FILES</h2>
<p>
The keyfile can be designed by the key identification
<code class="filename">Knnnn.+aaa+iiiii</code> or the full file name
<code class="filename">Knnnn.+aaa+iiiii.key</code> as generated by
<span class="refentrytitle">dnssec-keygen</span>(8).
</p>
<p>
<p>
The keyset file name is built from the <code class="option">directory</code>,
the string <code class="filename">keyset-</code> and the
<code class="option">dnsname</code>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543865"></a><h2>CAVEAT</h2>
<p>
</div>
<div class="refsection">
<a name="id-1.11"></a><h2>CAVEAT</h2>
<p>
A keyfile error can give a "file not found" even if the file exists.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543875"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
<span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
</div>
<div class="refsection">
<a name="id-1.12"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">dnssec-keygen</span>(8)
</span>,
<span class="citerefentry">
<span class="refentrytitle">dnssec-signzone</span>(8)
</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
<em class="citetitle">RFC 3658</em>,
<em class="citetitle">RFC 4431</em>.
<em class="citetitle">RFC 4509</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543914"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,120 +1,136 @@
.\" Copyright (C) 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Copyright (C) 2013-2016 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
.\" REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
.\" AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
.\" LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
.\" Title: dnssec\-importkey
'\" t
.\" Title: dnssec-importkey
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: February 07, 2014
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2014-02-07
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "DNSSEC\-IMPORTKEY" "8" "February 07, 2014" "BIND9" "BIND9"
.TH "DNSSEC\-IMPORTKEY" "8" "2014\-02\-07" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
dnssec\-importkey \- Import DNSKEY records from external systems so they can be managed.
dnssec-importkey \- Import DNSKEY records from external systems so they can be managed\&.
.SH "SYNOPSIS"
.HP 17
.HP \w'\fBdnssec\-importkey\fR\ 'u
\fBdnssec\-importkey\fR [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-L\ \fR\fB\fIttl\fR\fR] [\fB\-P\ \fR\fB\fIdate/offset\fR\fR] [\fB\-D\ \fR\fB\fIdate/offset\fR\fR] [\fB\-h\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-V\fR] {\fBkeyfile\fR}
.HP 17
.HP \w'\fBdnssec\-importkey\fR\ 'u
\fBdnssec\-importkey\fR {\fB\-f\ \fR\fB\fIfilename\fR\fR} [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-L\ \fR\fB\fIttl\fR\fR] [\fB\-P\ \fR\fB\fIdate/offset\fR\fR] [\fB\-D\ \fR\fB\fIdate/offset\fR\fR] [\fB\-h\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-V\fR] [\fBdnsname\fR]
.SH "DESCRIPTION"
.PP
\fBdnssec\-importkey\fR
reads a public DNSKEY record and generates a pair of .key/.private files. The DNSKEY record may be read from an existing .key file, in which case a corresponding .private file will be generated, or it may be read from any other file or from the standard input, in which case both .key and .private files will be generated.
reads a public DNSKEY record and generates a pair of \&.key/\&.private files\&. The DNSKEY record may be read from an existing \&.key file, in which case a corresponding \&.private file will be generated, or it may be read from any other file or from the standard input, in which case both \&.key and \&.private files will be generated\&.
.PP
The newly\-created .private file does
The newly\-created \&.private file does
\fInot\fR
contain private key data, and cannot be used for signing. However, having a .private file makes it possible to set publication (\fB\-P\fR) and deletion (\fB\-D\fR) times for the key, which means the public key can be added to and removed from the DNSKEY RRset on schedule even if the true private key is stored offline.
contain private key data, and cannot be used for signing\&. However, having a \&.private file makes it possible to set publication (\fB\-P\fR) and deletion (\fB\-D\fR) times for the key, which means the public key can be added to and removed from the DNSKEY RRset on schedule even if the true private key is stored offline\&.
.SH "OPTIONS"
.PP
\-f \fIfilename\fR
.RS 4
Zone file mode: instead of a public keyfile name, the argument is the DNS domain name of a zone master file, which can be read from
\fBfile\fR. If the domain name is the same as
\fBfile\fR, then it may be omitted.
\fBfile\fR\&. If the domain name is the same as
\fBfile\fR, then it may be omitted\&.
.sp
If
\fBfile\fR
is set to
"\-", then the zone data is read from the standard input.
"\-", then the zone data is read from the standard input\&.
.RE
.PP
\-K \fIdirectory\fR
.RS 4
Sets the directory in which the key files are to reside.
Sets the directory in which the key files are to reside\&.
.RE
.PP
\-L \fIttl\fR
.RS 4
Sets the default TTL to use for this key when it is converted into a DNSKEY RR. If the key is imported into a zone, this is the TTL that will be used for it, unless there was already a DNSKEY RRset in place, in which case the existing TTL would take precedence. Setting the default TTL to
Sets the default TTL to use for this key when it is converted into a DNSKEY RR\&. If the key is imported into a zone, this is the TTL that will be used for it, unless there was already a DNSKEY RRset in place, in which case the existing TTL would take precedence\&. Setting the default TTL to
0
or
none
removes it.
removes it\&.
.RE
.PP
\-h
.RS 4
Emit usage message and exit.
Emit usage message and exit\&.
.RE
.PP
\-v \fIlevel\fR
.RS 4
Sets the debugging level.
Sets the debugging level\&.
.RE
.PP
\-V
.RS 4
Prints version information.
Prints version information\&.
.RE
.SH "TIMING OPTIONS"
.PP
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS. If the argument begins with a '+' or '\-', it is interpreted as an offset from the present time. For convenience, if such an offset is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the offset is computed in years (defined as 365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour days), weeks, days, hours, or minutes, respectively. Without a suffix, the offset is computed in seconds. To explicitly prevent a date from being set, use 'none' or 'never'.
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS\&. If the argument begins with a \*(Aq+\*(Aq or \*(Aq\-\*(Aq, it is interpreted as an offset from the present time\&. For convenience, if such an offset is followed by one of the suffixes \*(Aqy\*(Aq, \*(Aqmo\*(Aq, \*(Aqw\*(Aq, \*(Aqd\*(Aq, \*(Aqh\*(Aq, or \*(Aqmi\*(Aq, then the offset is computed in years (defined as 365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour days), weeks, days, hours, or minutes, respectively\&. Without a suffix, the offset is computed in seconds\&. To explicitly prevent a date from being set, use \*(Aqnone\*(Aq or \*(Aqnever\*(Aq\&.
.PP
\-P \fIdate/offset\fR
.RS 4
Sets the date on which a key is to be published to the zone. After that date, the key will be included in the zone but will not be used to sign it.
Sets the date on which a key is to be published to the zone\&. After that date, the key will be included in the zone but will not be used to sign it\&.
.RE
.PP
\-D \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be deleted. After that date, the key will no longer be included in the zone. (It may remain in the key repository, however.)
Sets the date on which the key is to be deleted\&. After that date, the key will no longer be included in the zone\&. (It may remain in the key repository, however\&.)
.RE
.SH "FILES"
.PP
A keyfile can be designed by the key identification
\fIKnnnn.+aaa+iiiii\fR
Knnnn\&.+aaa+iiiii
or the full file name
\fIKnnnn.+aaa+iiiii.key\fR
Knnnn\&.+aaa+iiiii\&.key
as generated by
dnssec\-keygen(8).
dnssec\-keygen(8)\&.
.SH "SEE ALSO"
.PP
\fBdnssec\-keygen\fR(8),
\fBdnssec\-signzone\fR(8),
\fBdnssec-keygen\fR(8),
\fBdnssec-signzone\fR(8),
BIND 9 Administrator Reference Manual,
RFC 5011.
RFC 5011\&.
.SH "AUTHOR"
.PP
Internet Systems Consortium
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2013-2016 Internet Systems Consortium, Inc. ("ISC")
.br

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2013-2016 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -17,9 +14,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.dnssec-importkey">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.dnssec-importkey">
<info>
<date>2014-02-07</date>
</info>
<refentryinfo>
<date>February 07, 2014</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -37,38 +39,40 @@
<copyright>
<year>2013</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dnssec-importkey</command>
<arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-L <replaceable class="parameter">ttl</replaceable></option></arg>
<arg><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-D <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-h</option></arg>
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg><option>-V</option></arg>
<arg choice="req"><option>keyfile</option></arg>
<arg choice="opt" rep="norepeat"><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-L <replaceable class="parameter">ttl</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-D <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-h</option></arg>
<arg choice="opt" rep="norepeat"><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-V</option></arg>
<arg choice="req" rep="norepeat"><option>keyfile</option></arg>
</cmdsynopsis>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dnssec-importkey</command>
<arg choice="req"><option>-f <replaceable class="parameter">filename</replaceable></option></arg>
<arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-L <replaceable class="parameter">ttl</replaceable></option></arg>
<arg><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-D <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-h</option></arg>
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg><option>-V</option></arg>
<arg><option>dnsname</option></arg>
<arg choice="req" rep="norepeat"><option>-f <replaceable class="parameter">filename</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-L <replaceable class="parameter">ttl</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-D <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-h</option></arg>
<arg choice="opt" rep="norepeat"><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-V</option></arg>
<arg choice="opt" rep="norepeat"><option>dnsname</option></arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>dnssec-importkey</command>
reads a public DNSKEY record and generates a pair of
.key/.private files. The DNSKEY record may be read from an
@@ -86,10 +90,10 @@
public key can be added to and removed from the DNSKEY RRset
on schedule even if the true private key is stored offline.
</para>
</refsect1>
</refsection>
<refsection><info><title>OPTIONS</title></info>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
@@ -107,7 +111,7 @@
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-K <replaceable class="parameter">directory</replaceable></term>
<listitem>
@@ -139,7 +143,7 @@
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-v <replaceable class="parameter">level</replaceable></term>
<listitem>
@@ -159,10 +163,10 @@
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>TIMING OPTIONS</title></info>
<refsect1>
<title>TIMING OPTIONS</title>
<para>
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
If the argument begins with a '+' or '-', it is interpreted as
@@ -199,20 +203,20 @@
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>FILES</title></info>
<refsect1>
<title>FILES</title>
<para>
A keyfile can be designed by the key identification
<filename>Knnnn.+aaa+iiiii</filename> or the full file name
<filename>Knnnn.+aaa+iiiii.key</filename> as generated by
<refentrytitle>dnssec-keygen</refentrytitle><manvolnum>8</manvolnum>.
</para>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>dnssec-keygen</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
@@ -222,16 +226,6 @@
<citetitle>BIND 9 Administrator Reference Manual</citetitle>,
<citetitle>RFC 5011</citetitle>.
</para>
</refsect1>
</refsection>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refentry>

View File

@@ -1,40 +1,73 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
-
- Copyright (C) 2013-2016 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>dnssec-importkey</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.dnssec-importkey"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">dnssec-importkey</span> &#8212; Import DNSKEY records from external systems so they can be managed.</p>
<p>
<span class="application">dnssec-importkey</span>
&#8212; Import DNSKEY records from external systems so they can be managed.
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">dnssec-importkey</code> [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-L <em class="replaceable"><code>ttl</code></em></code>] [<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-h</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-V</code>] {<code class="option">keyfile</code>}</p></div>
<div class="cmdsynopsis"><p><code class="command">dnssec-importkey</code> {<code class="option">-f <em class="replaceable"><code>filename</code></em></code>} [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-L <em class="replaceable"><code>ttl</code></em></code>] [<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-h</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-V</code>] [<code class="option">dnsname</code>]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543475"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">dnssec-importkey</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">dnssec-importkey</code>
[<code class="option">-K <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-L <em class="replaceable"><code>ttl</code></em></code>]
[<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-h</code>]
[<code class="option">-v <em class="replaceable"><code>level</code></em></code>]
[<code class="option">-V</code>]
{<code class="option">keyfile</code>}
</p></div>
<div class="cmdsynopsis"><p>
<code class="command">dnssec-importkey</code>
{<code class="option">-f <em class="replaceable"><code>filename</code></em></code>}
[<code class="option">-K <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-L <em class="replaceable"><code>ttl</code></em></code>]
[<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-h</code>]
[<code class="option">-v <em class="replaceable"><code>level</code></em></code>]
[<code class="option">-V</code>]
[<code class="option">dnsname</code>]
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>dnssec-importkey</strong></span>
reads a public DNSKEY record and generates a pair of
.key/.private files. The DNSKEY record may be read from an
existing .key file, in which case a corresponding .private file
@@ -42,7 +75,7 @@
from the standard input, in which case both .key and .private
files will be generated.
</p>
<p>
<p>
The newly-created .private file does <span class="emphasis"><em>not</em></span>
contain private key data, and cannot be used for signing.
However, having a .private file makes it possible to set
@@ -51,53 +84,68 @@
public key can be added to and removed from the DNSKEY RRset
on schedule even if the true private key is stored offline.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543500"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-f <em class="replaceable"><code>filename</code></em></span></dt>
<dd>
<p>
<p>
Zone file mode: instead of a public keyfile name, the argument
is the DNS domain name of a zone master file, which can be read
from <code class="option">file</code>. If the domain name is the same as
<code class="option">file</code>, then it may be omitted.
</p>
<p>
<p>
If <code class="option">file</code> is set to <code class="literal">"-"</code>, then
the zone data is read from the standard input.
</p>
</dd>
</dd>
<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the directory in which the key files are to reside.
</p></dd>
</p>
</dd>
<dt><span class="term">-L <em class="replaceable"><code>ttl</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the default TTL to use for this key when it is converted
into a DNSKEY RR. If the key is imported into a zone,
this is the TTL that will be used for it, unless there was
already a DNSKEY RRset in place, in which case the existing TTL
would take precedence. Setting the default TTL to
<code class="literal">0</code> or <code class="literal">none</code> removes it.
</p></dd>
</p>
</dd>
<dt><span class="term">-h</span></dt>
<dd><p>
<dd>
<p>
Emit usage message and exit.
</p></dd>
</p>
</dd>
<dt><span class="term">-v <em class="replaceable"><code>level</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the debugging level.
</p></dd>
</p>
</dd>
<dt><span class="term">-V</span></dt>
<dd><p>
<dd>
<p>
Prints version information.
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543632"></a><h2>TIMING OPTIONS</h2>
<p>
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>TIMING OPTIONS</h2>
<p>
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
If the argument begins with a '+' or '-', it is interpreted as
an offset from the present time. For convenience, if such an offset
@@ -108,42 +156,51 @@
is computed in seconds. To explicitly prevent a date from being
set, use 'none' or 'never'.
</p>
<div class="variablelist"><dl>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-P <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which a key is to be published to the zone.
After that date, the key will be included in the zone but will
not be used to sign it.
</p></dd>
</p>
</dd>
<dt><span class="term">-D <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be deleted. After that
date, the key will no longer be included in the zone. (It
may remain in the key repository, however.)
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543678"></a><h2>FILES</h2>
<p>
</div>
<div class="refsection">
<a name="id-1.10"></a><h2>FILES</h2>
<p>
A keyfile can be designed by the key identification
<code class="filename">Knnnn.+aaa+iiiii</code> or the full file name
<code class="filename">Knnnn.+aaa+iiiii.key</code> as generated by
<span class="refentrytitle">dnssec-keygen</span>(8).
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543700"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
<span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
</div>
<div class="refsection">
<a name="id-1.11"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">dnssec-keygen</span>(8)
</span>,
<span class="citerefentry">
<span class="refentrytitle">dnssec-signzone</span>(8)
</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
<em class="citetitle">RFC 5011</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543733"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2008-2012, 2014 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2008-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
@@ -12,237 +12,277 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
.\" Title: dnssec\-keyfromlabel
'\" t
.\" Title: dnssec-keyfromlabel
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: February 27, 2014
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2014-02-27
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "DNSSEC\-KEYFROMLABEL" "8" "February 27, 2014" "BIND9" "BIND9"
.TH "DNSSEC\-KEYFROMLABEL" "8" "2014\-02\-27" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
dnssec\-keyfromlabel \- DNSSEC key generation tool
dnssec-keyfromlabel \- DNSSEC key generation tool
.SH "SYNOPSIS"
.HP 20
.HP \w'\fBdnssec\-keyfromlabel\fR\ 'u
\fBdnssec\-keyfromlabel\fR {\-l\ \fIlabel\fR} [\fB\-3\fR] [\fB\-a\ \fR\fB\fIalgorithm\fR\fR] [\fB\-A\ \fR\fB\fIdate/offset\fR\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-D\ \fR\fB\fIdate/offset\fR\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] [\fB\-f\ \fR\fB\fIflag\fR\fR] [\fB\-G\fR] [\fB\-I\ \fR\fB\fIdate/offset\fR\fR] [\fB\-i\ \fR\fB\fIinterval\fR\fR] [\fB\-k\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-L\ \fR\fB\fIttl\fR\fR] [\fB\-n\ \fR\fB\fInametype\fR\fR] [\fB\-P\ \fR\fB\fIdate/offset\fR\fR] [\fB\-p\ \fR\fB\fIprotocol\fR\fR] [\fB\-R\ \fR\fB\fIdate/offset\fR\fR] [\fB\-S\ \fR\fB\fIkey\fR\fR] [\fB\-t\ \fR\fB\fItype\fR\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-V\fR] [\fB\-y\fR] {name}
.SH "DESCRIPTION"
.PP
\fBdnssec\-keyfromlabel\fR
generates a key pair of files that referencing a key object stored in a cryptographic hardware service module (HSM). The private key file can be used for DNSSEC signing of zone data as if it were a conventional signing key created by
\fBdnssec\-keygen\fR, but the key material is stored within the HSM, and the actual signing takes place there.
generates a key pair of files that referencing a key object stored in a cryptographic hardware service module (HSM)\&. The private key file can be used for DNSSEC signing of zone data as if it were a conventional signing key created by
\fBdnssec\-keygen\fR, but the key material is stored within the HSM, and the actual signing takes place there\&.
.PP
The
\fBname\fR
of the key is specified on the command line. This must match the name of the zone for which the key is being generated.
of the key is specified on the command line\&. This must match the name of the zone for which the key is being generated\&.
.SH "OPTIONS"
.PP
\-a \fIalgorithm\fR
.RS 4
Selects the cryptographic algorithm. The value of
Selects the cryptographic algorithm\&. The value of
\fBalgorithm\fR
must be one of RSAMD5, RSASHA1, DSA, NSEC3RSASHA1, NSEC3DSA, RSASHA256, RSASHA512, ECCGOST, ECDSAP256SHA256 or ECDSAP384SHA384. These values are case insensitive.
must be one of RSAMD5, RSASHA1, DSA, NSEC3RSASHA1, NSEC3DSA, RSASHA256, RSASHA512, ECCGOST, ECDSAP256SHA256, ECDSAP384SHA384, ED25519 or ED448\&. These values are case insensitive\&.
.sp
If no algorithm is specified, then RSASHA1 will be used by default, unless the
\fB\-3\fR
option is specified, in which case NSEC3RSASHA1 will be used instead. (If
option is specified, in which case NSEC3RSASHA1 will be used instead\&. (If
\fB\-3\fR
is used and an algorithm is specified, that algorithm will be checked for compatibility with NSEC3.)
is used and an algorithm is specified, that algorithm will be checked for compatibility with NSEC3\&.)
.sp
Note 1: that for DNSSEC, RSASHA1 is a mandatory to implement algorithm, and DSA is recommended.
Note 1: that for DNSSEC, RSASHA1 is a mandatory to implement algorithm, and DSA is recommended\&.
.sp
Note 2: DH automatically sets the \-k flag.
Note 2: DH automatically sets the \-k flag\&.
.RE
.PP
\-3
.RS 4
Use an NSEC3\-capable algorithm to generate a DNSSEC key. If this option is used and no algorithm is explicitly set on the command line, NSEC3RSASHA1 will be used by default.
Use an NSEC3\-capable algorithm to generate a DNSSEC key\&. If this option is used and no algorithm is explicitly set on the command line, NSEC3RSASHA1 will be used by default\&.
.RE
.PP
\-E \fIengine\fR
.RS 4
Specifies the name of the crypto hardware (OpenSSL engine). When compiled with PKCS#11 support it defaults to "pkcs11".
Specifies the name of the crypto hardware (OpenSSL engine)\&. When compiled with PKCS#11 support it defaults to "pkcs11"\&.
.RE
.PP
\-l \fIlabel\fR
.RS 4
Specifies the label of the key pair in the crypto hardware. The label may be preceded by an optional OpenSSL engine name, separated by a colon, as in "pkcs11:keylabel".
Specifies the label of the key pair in the crypto hardware\&. The label may be preceded by an optional OpenSSL engine name, separated by a colon, as in "pkcs11:keylabel"\&.
.RE
.PP
\-n \fInametype\fR
.RS 4
Specifies the owner type of the key. The value of
Specifies the owner type of the key\&. The value of
\fBnametype\fR
must either be ZONE (for a DNSSEC zone key (KEY/DNSKEY)), HOST or ENTITY (for a key associated with a host (KEY)), USER (for a key associated with a user(KEY)) or OTHER (DNSKEY). These values are case insensitive.
must either be ZONE (for a DNSSEC zone key (KEY/DNSKEY)), HOST or ENTITY (for a key associated with a host (KEY)), USER (for a key associated with a user(KEY)) or OTHER (DNSKEY)\&. These values are case insensitive\&.
.RE
.PP
\-C
.RS 4
Compatibility mode: generates an old\-style key, without any metadata. By default,
Compatibility mode: generates an old\-style key, without any metadata\&. By default,
\fBdnssec\-keyfromlabel\fR
will include the key's creation date in the metadata stored with the private key, and other dates may be set there as well (publication date, activation date, etc). Keys that include this data may be incompatible with older versions of BIND; the
will include the key\*(Aqs creation date in the metadata stored with the private key, and other dates may be set there as well (publication date, activation date, etc)\&. Keys that include this data may be incompatible with older versions of BIND; the
\fB\-C\fR
option suppresses them.
option suppresses them\&.
.RE
.PP
\-c \fIclass\fR
.RS 4
Indicates that the DNS record containing the key should have the specified class. If not specified, class IN is used.
Indicates that the DNS record containing the key should have the specified class\&. If not specified, class IN is used\&.
.RE
.PP
\-f \fIflag\fR
.RS 4
Set the specified flag in the flag field of the KEY/DNSKEY record. The only recognized flags are KSK (Key Signing Key) and REVOKE.
Set the specified flag in the flag field of the KEY/DNSKEY record\&. The only recognized flags are KSK (Key Signing Key) and REVOKE\&.
.RE
.PP
\-G
.RS 4
Generate a key, but do not publish it or sign with it. This option is incompatible with \-P and \-A.
Generate a key, but do not publish it or sign with it\&. This option is incompatible with \-P and \-A\&.
.RE
.PP
\-h
.RS 4
Prints a short summary of the options and arguments to
\fBdnssec\-keyfromlabel\fR.
\fBdnssec\-keyfromlabel\fR\&.
.RE
.PP
\-K \fIdirectory\fR
.RS 4
Sets the directory in which the key files are to be written.
Sets the directory in which the key files are to be written\&.
.RE
.PP
\-k
.RS 4
Generate KEY records rather than DNSKEY records.
Generate KEY records rather than DNSKEY records\&.
.RE
.PP
\-L \fIttl\fR
.RS 4
Sets the default TTL to use for this key when it is converted into a DNSKEY RR. If the key is imported into a zone, this is the TTL that will be used for it, unless there was already a DNSKEY RRset in place, in which case the existing TTL would take precedence. Setting the default TTL to
Sets the default TTL to use for this key when it is converted into a DNSKEY RR\&. If the key is imported into a zone, this is the TTL that will be used for it, unless there was already a DNSKEY RRset in place, in which case the existing TTL would take precedence\&. Setting the default TTL to
0
or
none
removes it.
removes it\&.
.RE
.PP
\-p \fIprotocol\fR
.RS 4
Sets the protocol value for the key. The protocol is a number between 0 and 255. The default is 3 (DNSSEC). Other possible values for this argument are listed in RFC 2535 and its successors.
Sets the protocol value for the key\&. The protocol is a number between 0 and 255\&. The default is 3 (DNSSEC)\&. Other possible values for this argument are listed in RFC 2535 and its successors\&.
.RE
.PP
\-S \fIkey\fR
.RS 4
Generate a key as an explicit successor to an existing key. The name, algorithm, size, and type of the key will be set to match the predecessor. The activation date of the new key will be set to the inactivation date of the existing one. The publication date will be set to the activation date minus the prepublication interval, which defaults to 30 days.
Generate a key as an explicit successor to an existing key\&. The name, algorithm, size, and type of the key will be set to match the predecessor\&. The activation date of the new key will be set to the inactivation date of the existing one\&. The publication date will be set to the activation date minus the prepublication interval, which defaults to 30 days\&.
.RE
.PP
\-t \fItype\fR
.RS 4
Indicates the use of the key.
Indicates the use of the key\&.
\fBtype\fR
must be one of AUTHCONF, NOAUTHCONF, NOAUTH, or NOCONF. The default is AUTHCONF. AUTH refers to the ability to authenticate data, and CONF the ability to encrypt data.
must be one of AUTHCONF, NOAUTHCONF, NOAUTH, or NOCONF\&. The default is AUTHCONF\&. AUTH refers to the ability to authenticate data, and CONF the ability to encrypt data\&.
.RE
.PP
\-v \fIlevel\fR
.RS 4
Sets the debugging level.
Sets the debugging level\&.
.RE
.PP
\-V
.RS 4
Prints version information.
Prints version information\&.
.RE
.PP
\-y
.RS 4
Allows DNSSEC key files to be generated even if the key ID would collide with that of an existing key, in the event of either key being revoked. (This is only safe to use if you are sure you won't be using RFC 5011 trust anchor maintenance with either of the keys involved.)
Allows DNSSEC key files to be generated even if the key ID would collide with that of an existing key, in the event of either key being revoked\&. (This is only safe to use if you are sure you won\*(Aqt be using RFC 5011 trust anchor maintenance with either of the keys involved\&.)
.RE
.SH "TIMING OPTIONS"
.PP
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS. If the argument begins with a '+' or '\-', it is interpreted as an offset from the present time. For convenience, if such an offset is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the offset is computed in years (defined as 365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour days), weeks, days, hours, or minutes, respectively. Without a suffix, the offset is computed in seconds. To explicitly prevent a date from being set, use 'none' or 'never'.
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS\&. If the argument begins with a \*(Aq+\*(Aq or \*(Aq\-\*(Aq, it is interpreted as an offset from the present time\&. For convenience, if such an offset is followed by one of the suffixes \*(Aqy\*(Aq, \*(Aqmo\*(Aq, \*(Aqw\*(Aq, \*(Aqd\*(Aq, \*(Aqh\*(Aq, or \*(Aqmi\*(Aq, then the offset is computed in years (defined as 365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour days), weeks, days, hours, or minutes, respectively\&. Without a suffix, the offset is computed in seconds\&. To explicitly prevent a date from being set, use \*(Aqnone\*(Aq or \*(Aqnever\*(Aq\&.
.PP
\-P \fIdate/offset\fR
.RS 4
Sets the date on which a key is to be published to the zone. After that date, the key will be included in the zone but will not be used to sign it. If not set, and if the \-G option has not been used, the default is "now".
Sets the date on which a key is to be published to the zone\&. After that date, the key will be included in the zone but will not be used to sign it\&. If not set, and if the \-G option has not been used, the default is "now"\&.
.RE
.PP
\-A \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be activated. After that date, the key will be included in the zone and used to sign it. If not set, and if the \-G option has not been used, the default is "now".
Sets the date on which the key is to be activated\&. After that date, the key will be included in the zone and used to sign it\&. If not set, and if the \-G option has not been used, the default is "now"\&.
.RE
.PP
\-R \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be revoked. After that date, the key will be flagged as revoked. It will be included in the zone and will be used to sign it.
Sets the date on which the key is to be revoked\&. After that date, the key will be flagged as revoked\&. It will be included in the zone and will be used to sign it\&.
.RE
.PP
\-I \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be retired. After that date, the key will still be included in the zone, but it will not be used to sign it.
Sets the date on which the key is to be retired\&. After that date, the key will still be included in the zone, but it will not be used to sign it\&.
.RE
.PP
\-D \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be deleted. After that date, the key will no longer be included in the zone. (It may remain in the key repository, however.)
Sets the date on which the key is to be deleted\&. After that date, the key will no longer be included in the zone\&. (It may remain in the key repository, however\&.)
.RE
.PP
\-i \fIinterval\fR
.RS 4
Sets the prepublication interval for a key. If set, then the publication and activation dates must be separated by at least this much time. If the activation date is specified but the publication date isn't, then the publication date will default to this much time before the activation date; conversely, if the publication date is specified but activation date isn't, then activation will be set to this much time after publication.
Sets the prepublication interval for a key\&. If set, then the publication and activation dates must be separated by at least this much time\&. If the activation date is specified but the publication date isn\*(Aqt, then the publication date will default to this much time before the activation date; conversely, if the publication date is specified but activation date isn\*(Aqt, then activation will be set to this much time after publication\&.
.sp
If the key is being created as an explicit successor to another key, then the default prepublication interval is 30 days; otherwise it is zero.
If the key is being created as an explicit successor to another key, then the default prepublication interval is 30 days; otherwise it is zero\&.
.sp
As with date offsets, if the argument is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the interval is measured in years, months, weeks, days, hours, or minutes, respectively. Without a suffix, the interval is measured in seconds.
As with date offsets, if the argument is followed by one of the suffixes \*(Aqy\*(Aq, \*(Aqmo\*(Aq, \*(Aqw\*(Aq, \*(Aqd\*(Aq, \*(Aqh\*(Aq, or \*(Aqmi\*(Aq, then the interval is measured in years, months, weeks, days, hours, or minutes, respectively\&. Without a suffix, the interval is measured in seconds\&.
.RE
.SH "GENERATED KEY FILES"
.PP
When
\fBdnssec\-keyfromlabel\fR
completes successfully, it prints a string of the form
\fIKnnnn.+aaa+iiiii\fR
to the standard output. This is an identification string for the key files it has generated.
.TP 4
\(bu
\fInnnn\fR
is the key name.
.TP 4
\(bu
\fIaaa\fR
is the numeric representation of the algorithm.
.TP 4
\(bu
\fIiiiii\fR
is the key identifier (or footprint).
Knnnn\&.+aaa+iiiii
to the standard output\&. This is an identification string for the key files it has generated\&.
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
nnnn
is the key name\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
aaa
is the numeric representation of the algorithm\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
iiiii
is the key identifier (or footprint)\&.
.RE
.PP
\fBdnssec\-keyfromlabel\fR
creates two files, with names based on the printed string.
\fIKnnnn.+aaa+iiiii.key\fR
creates two files, with names based on the printed string\&.
Knnnn\&.+aaa+iiiii\&.key
contains the public key, and
\fIKnnnn.+aaa+iiiii.private\fR
contains the private key.
Knnnn\&.+aaa+iiiii\&.private
contains the private key\&.
.PP
The
\fI.key\fR
file contains a DNS KEY record that can be inserted into a zone file (directly or with a $INCLUDE statement).
\&.key
file contains a DNS KEY record that can be inserted into a zone file (directly or with a $INCLUDE statement)\&.
.PP
The
\fI.private\fR
file contains algorithm\-specific fields. For obvious security reasons, this file does not have general read permission.
\&.private
file contains algorithm\-specific fields\&. For obvious security reasons, this file does not have general read permission\&.
.SH "SEE ALSO"
.PP
\fBdnssec\-keygen\fR(8),
\fBdnssec\-signzone\fR(8),
\fBdnssec-keygen\fR(8),
\fBdnssec-signzone\fR(8),
BIND 9 Administrator Reference Manual,
RFC 4034.
RFC 4034\&.
.SH "AUTHOR"
.PP
Internet Systems Consortium
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2008\-2012, 2014 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2008-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.br

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2007-2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2007-2012, 2014, 2015, 2017 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -54,7 +54,8 @@ int verbose;
static const char *algs = "RSA | RSAMD5 | DH | DSA | RSASHA1 |"
" NSEC3DSA | NSEC3RSASHA1 |"
" RSASHA256 | RSASHA512 | ECCGOST |"
" ECDSAP256SHA256 | ECDSAP384SHA384";
" ECDSAP256SHA256 | ECDSAP384SHA384 |"
" ED25519 | ED448";
ISC_PLATFORM_NORETURN_PRE static void
usage(void) ISC_PLATFORM_NORETURN_POST;
@@ -148,7 +149,7 @@ main(int argc, char **argv) {
char *label = NULL;
dns_ttl_t ttl = 0;
isc_stdtime_t publish = 0, activate = 0, revoke = 0;
isc_stdtime_t inactive = 0, delete = 0;
isc_stdtime_t inactive = 0, deltime = 0;
isc_stdtime_t now;
int prepub = -1;
isc_boolean_t setpub = ISC_FALSE, setact = ISC_FALSE;
@@ -278,8 +279,8 @@ main(int argc, char **argv) {
if (setdel || unsetdel)
fatal("-D specified more than once");
delete = strtotime(isc_commandline_argument,
now, now, &setdel);
deltime = strtotime(isc_commandline_argument,
now, now, &setdel);
unsetdel = !setdel;
break;
case 'S':
@@ -388,7 +389,8 @@ main(int argc, char **argv) {
alg != DST_ALG_NSEC3DSA && alg != DST_ALG_NSEC3RSASHA1 &&
alg != DST_ALG_RSASHA256 && alg != DST_ALG_RSASHA512 &&
alg != DST_ALG_ECCGOST &&
alg != DST_ALG_ECDSA256 && alg != DST_ALG_ECDSA384) {
alg != DST_ALG_ECDSA256 && alg != DST_ALG_ECDSA384 &&
alg != DST_ALG_ED25519 && alg != DST_ALG_ED448) {
fatal("%s is incompatible with NSEC3; "
"do not use the -3 option", algname);
}
@@ -608,7 +610,7 @@ main(int argc, char **argv) {
dst_key_settime(key, DST_TIME_INACTIVE, inactive);
if (setdel)
dst_key_settime(key, DST_TIME_DELETE, delete);
dst_key_settime(key, DST_TIME_DELETE, deltime);
} else {
if (setpub || setact || setrev || setinact ||
setdel || unsetpub || unsetact ||

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2008-2012, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2008-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -17,9 +14,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.dnssec-keyfromlabel">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.dnssec-keyfromlabel">
<info>
<date>2014-02-27</date>
</info>
<refentryinfo>
<date>February 27, 2014</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -41,42 +43,45 @@
<year>2011</year>
<year>2012</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2017</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dnssec-keyfromlabel</command>
<arg choice="req">-l <replaceable class="parameter">label</replaceable></arg>
<arg><option>-3</option></arg>
<arg><option>-a <replaceable class="parameter">algorithm</replaceable></option></arg>
<arg><option>-A <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg><option>-D <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg><option>-f <replaceable class="parameter">flag</replaceable></option></arg>
<arg><option>-G</option></arg>
<arg><option>-I <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-i <replaceable class="parameter">interval</replaceable></option></arg>
<arg><option>-k</option></arg>
<arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-L <replaceable class="parameter">ttl</replaceable></option></arg>
<arg><option>-n <replaceable class="parameter">nametype</replaceable></option></arg>
<arg><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-p <replaceable class="parameter">protocol</replaceable></option></arg>
<arg><option>-R <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-S <replaceable class="parameter">key</replaceable></option></arg>
<arg><option>-t <replaceable class="parameter">type</replaceable></option></arg>
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg><option>-V</option></arg>
<arg><option>-y</option></arg>
<arg choice="req">name</arg>
<arg choice="req" rep="norepeat">-l <replaceable class="parameter">label</replaceable></arg>
<arg choice="opt" rep="norepeat"><option>-3</option></arg>
<arg choice="opt" rep="norepeat"><option>-a <replaceable class="parameter">algorithm</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-A <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-D <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-f <replaceable class="parameter">flag</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-G</option></arg>
<arg choice="opt" rep="norepeat"><option>-I <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-i <replaceable class="parameter">interval</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-k</option></arg>
<arg choice="opt" rep="norepeat"><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-L <replaceable class="parameter">ttl</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-n <replaceable class="parameter">nametype</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-p <replaceable class="parameter">protocol</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-R <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-S <replaceable class="parameter">key</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-t <replaceable class="parameter">type</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-V</option></arg>
<arg choice="opt" rep="norepeat"><option>-y</option></arg>
<arg choice="req" rep="norepeat">name</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>dnssec-keyfromlabel</command>
generates a key pair of files that referencing a key object stored
in a cryptographic hardware service module (HSM). The private key
@@ -90,10 +95,10 @@
line. This must match the name of the zone for which the key is
being generated.
</para>
</refsect1>
</refsection>
<refsection><info><title>OPTIONS</title></info>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
@@ -103,7 +108,7 @@
Selects the cryptographic algorithm. The value of
<option>algorithm</option> must be one of RSAMD5, RSASHA1,
DSA, NSEC3RSASHA1, NSEC3DSA, RSASHA256, RSASHA512, ECCGOST,
ECDSAP256SHA256 or ECDSAP384SHA384.
ECDSAP256SHA256, ECDSAP384SHA384, ED25519 or ED448.
These values are case insensitive.
</para>
<para>
@@ -328,10 +333,10 @@
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>TIMING OPTIONS</title></info>
<refsect1>
<title>TIMING OPTIONS</title>
<para>
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
@@ -417,7 +422,7 @@
</para>
<para>
If the key is being created as an explicit successor to another
key, then the default prepublication interval is 30 days;
key, then the default prepublication interval is 30 days;
otherwise it is zero.
</para>
<para>
@@ -431,10 +436,10 @@
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>GENERATED KEY FILES</title></info>
<refsect1>
<title>GENERATED KEY FILES</title>
<para>
When <command>dnssec-keyfromlabel</command> completes
successfully,
@@ -458,7 +463,7 @@
</para>
</listitem>
</itemizedlist>
<para><command>dnssec-keyfromlabel</command>
<para><command>dnssec-keyfromlabel</command>
creates two files, with names based
on the printed string. <filename>Knnnn.+aaa+iiiii.key</filename>
contains the public key, and
@@ -477,10 +482,10 @@
fields. For obvious security reasons, this file does not have
general read permission.
</para>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>dnssec-keygen</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
@@ -490,16 +495,6 @@
<citetitle>BIND 9 Administrator Reference Manual</citetitle>,
<citetitle>RFC 4034</citetitle>.
</para>
</refsect1>
</refsection>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2008-2012, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2008-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -13,149 +14,217 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>dnssec-keyfromlabel</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.dnssec-keyfromlabel"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">dnssec-keyfromlabel</span> &#8212; DNSSEC key generation tool</p>
<p>
<span class="application">dnssec-keyfromlabel</span>
&#8212; DNSSEC key generation tool
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">dnssec-keyfromlabel</code> {-l <em class="replaceable"><code>label</code></em>} [<code class="option">-3</code>] [<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>] [<code class="option">-A <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] [<code class="option">-f <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-G</code>] [<code class="option">-I <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-i <em class="replaceable"><code>interval</code></em></code>] [<code class="option">-k</code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-L <em class="replaceable"><code>ttl</code></em></code>] [<code class="option">-n <em class="replaceable"><code>nametype</code></em></code>] [<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-p <em class="replaceable"><code>protocol</code></em></code>] [<code class="option">-R <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-S <em class="replaceable"><code>key</code></em></code>] [<code class="option">-t <em class="replaceable"><code>type</code></em></code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-V</code>] [<code class="option">-y</code>] {name}</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543539"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">dnssec-keyfromlabel</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">dnssec-keyfromlabel</code>
{-l <em class="replaceable"><code>label</code></em>}
[<code class="option">-3</code>]
[<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>]
[<code class="option">-A <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-c <em class="replaceable"><code>class</code></em></code>]
[<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-E <em class="replaceable"><code>engine</code></em></code>]
[<code class="option">-f <em class="replaceable"><code>flag</code></em></code>]
[<code class="option">-G</code>]
[<code class="option">-I <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-i <em class="replaceable"><code>interval</code></em></code>]
[<code class="option">-k</code>]
[<code class="option">-K <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-L <em class="replaceable"><code>ttl</code></em></code>]
[<code class="option">-n <em class="replaceable"><code>nametype</code></em></code>]
[<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-p <em class="replaceable"><code>protocol</code></em></code>]
[<code class="option">-R <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-S <em class="replaceable"><code>key</code></em></code>]
[<code class="option">-t <em class="replaceable"><code>type</code></em></code>]
[<code class="option">-v <em class="replaceable"><code>level</code></em></code>]
[<code class="option">-V</code>]
[<code class="option">-y</code>]
{name}
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>dnssec-keyfromlabel</strong></span>
generates a key pair of files that referencing a key object stored
in a cryptographic hardware service module (HSM). The private key
file can be used for DNSSEC signing of zone data as if it were a
conventional signing key created by <span><strong class="command">dnssec-keygen</strong></span>,
conventional signing key created by <span class="command"><strong>dnssec-keygen</strong></span>,
but the key material is stored within the HSM, and the actual signing
takes place there.
</p>
<p>
<p>
The <code class="option">name</code> of the key is specified on the command
line. This must match the name of the zone for which the key is
being generated.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543560"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
<dd>
<p>
<p>
Selects the cryptographic algorithm. The value of
<code class="option">algorithm</code> must be one of RSAMD5, RSASHA1,
DSA, NSEC3RSASHA1, NSEC3DSA, RSASHA256, RSASHA512, ECCGOST,
ECDSAP256SHA256 or ECDSAP384SHA384.
ECDSAP256SHA256, ECDSAP384SHA384, ED25519 or ED448.
These values are case insensitive.
</p>
<p>
<p>
If no algorithm is specified, then RSASHA1 will be used by
default, unless the <code class="option">-3</code> option is specified,
in which case NSEC3RSASHA1 will be used instead. (If
<code class="option">-3</code> is used and an algorithm is specified,
that algorithm will be checked for compatibility with NSEC3.)
</p>
<p>
<p>
Note 1: that for DNSSEC, RSASHA1 is a mandatory to implement
algorithm, and DSA is recommended.
</p>
<p>
<p>
Note 2: DH automatically sets the -k flag.
</p>
</dd>
</dd>
<dt><span class="term">-3</span></dt>
<dd><p>
<dd>
<p>
Use an NSEC3-capable algorithm to generate a DNSSEC key.
If this option is used and no algorithm is explicitly
set on the command line, NSEC3RSASHA1 will be used by
default.
</p></dd>
</p>
</dd>
<dt><span class="term">-E <em class="replaceable"><code>engine</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the name of the crypto hardware (OpenSSL engine).
When compiled with PKCS#11 support it defaults to "pkcs11".
</p></dd>
</p>
</dd>
<dt><span class="term">-l <em class="replaceable"><code>label</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the label of the key pair in the crypto hardware.
The label may be preceded by an optional OpenSSL engine name,
separated by a colon, as in "pkcs11:keylabel".
</p></dd>
</p>
</dd>
<dt><span class="term">-n <em class="replaceable"><code>nametype</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the owner type of the key. The value of
<code class="option">nametype</code> must either be ZONE (for a DNSSEC
zone key (KEY/DNSKEY)), HOST or ENTITY (for a key associated with
a host (KEY)),
USER (for a key associated with a user(KEY)) or OTHER (DNSKEY).
These values are case insensitive.
</p></dd>
</p>
</dd>
<dt><span class="term">-C</span></dt>
<dd><p>
<dd>
<p>
Compatibility mode: generates an old-style key, without
any metadata. By default, <span><strong class="command">dnssec-keyfromlabel</strong></span>
any metadata. By default, <span class="command"><strong>dnssec-keyfromlabel</strong></span>
will include the key's creation date in the metadata stored
with the private key, and other dates may be set there as well
(publication date, activation date, etc). Keys that include
this data may be incompatible with older versions of BIND; the
<code class="option">-C</code> option suppresses them.
</p></dd>
</p>
</dd>
<dt><span class="term">-c <em class="replaceable"><code>class</code></em></span></dt>
<dd><p>
<dd>
<p>
Indicates that the DNS record containing the key should have
the specified class. If not specified, class IN is used.
</p></dd>
</p>
</dd>
<dt><span class="term">-f <em class="replaceable"><code>flag</code></em></span></dt>
<dd><p>
<dd>
<p>
Set the specified flag in the flag field of the KEY/DNSKEY record.
The only recognized flags are KSK (Key Signing Key) and REVOKE.
</p></dd>
</p>
</dd>
<dt><span class="term">-G</span></dt>
<dd><p>
<dd>
<p>
Generate a key, but do not publish it or sign with it. This
option is incompatible with -P and -A.
</p></dd>
</p>
</dd>
<dt><span class="term">-h</span></dt>
<dd><p>
<dd>
<p>
Prints a short summary of the options and arguments to
<span><strong class="command">dnssec-keyfromlabel</strong></span>.
</p></dd>
<span class="command"><strong>dnssec-keyfromlabel</strong></span>.
</p>
</dd>
<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the directory in which the key files are to be written.
</p></dd>
</p>
</dd>
<dt><span class="term">-k</span></dt>
<dd><p>
<dd>
<p>
Generate KEY records rather than DNSKEY records.
</p></dd>
</p>
</dd>
<dt><span class="term">-L <em class="replaceable"><code>ttl</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the default TTL to use for this key when it is converted
into a DNSKEY RR. If the key is imported into a zone,
this is the TTL that will be used for it, unless there was
already a DNSKEY RRset in place, in which case the existing TTL
would take precedence. Setting the default TTL to
<code class="literal">0</code> or <code class="literal">none</code> removes it.
</p></dd>
</p>
</dd>
<dt><span class="term">-p <em class="replaceable"><code>protocol</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the protocol value for the key. The protocol
is a number between 0 and 255. The default is 3 (DNSSEC).
Other possible values for this argument are listed in
RFC 2535 and its successors.
</p></dd>
</p>
</dd>
<dt><span class="term">-S <em class="replaceable"><code>key</code></em></span></dt>
<dd><p>
<dd>
<p>
Generate a key as an explicit successor to an existing key.
The name, algorithm, size, and type of the key will be set
to match the predecessor. The activation date of the new
@@ -163,35 +232,47 @@
one. The publication date will be set to the activation
date minus the prepublication interval, which defaults to
30 days.
</p></dd>
</p>
</dd>
<dt><span class="term">-t <em class="replaceable"><code>type</code></em></span></dt>
<dd><p>
<dd>
<p>
Indicates the use of the key. <code class="option">type</code> must be
one of AUTHCONF, NOAUTHCONF, NOAUTH, or NOCONF. The default
is AUTHCONF. AUTH refers to the ability to authenticate
data, and CONF the ability to encrypt data.
</p></dd>
</p>
</dd>
<dt><span class="term">-v <em class="replaceable"><code>level</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the debugging level.
</p></dd>
</p>
</dd>
<dt><span class="term">-V</span></dt>
<dd><p>
<dd>
<p>
Prints version information.
</p></dd>
</p>
</dd>
<dt><span class="term">-y</span></dt>
<dd><p>
<dd>
<p>
Allows DNSSEC key files to be generated even if the key ID
would collide with that of an existing key, in the event of
either key being revoked. (This is only safe to use if you
are sure you won't be using RFC 5011 trust anchor maintenance
with either of the keys involved.)
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2544046"></a><h2>TIMING OPTIONS</h2>
<p>
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>TIMING OPTIONS</h2>
<p>
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
If the argument begins with a '+' or '-', it is interpreted as
an offset from the present time. For convenience, if such an offset
@@ -202,42 +283,53 @@
is computed in seconds. To explicitly prevent a date from being
set, use 'none' or 'never'.
</p>
<div class="variablelist"><dl>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-P <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which a key is to be published to the zone.
After that date, the key will be included in the zone but will
not be used to sign it. If not set, and if the -G option has
not been used, the default is "now".
</p></dd>
</p>
</dd>
<dt><span class="term">-A <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be activated. After that
date, the key will be included in the zone and used to sign
it. If not set, and if the -G option has not been used, the
default is "now".
</p></dd>
</p>
</dd>
<dt><span class="term">-R <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be revoked. After that
date, the key will be flagged as revoked. It will be included
in the zone and will be used to sign it.
</p></dd>
</p>
</dd>
<dt><span class="term">-I <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be retired. After that
date, the key will still be included in the zone, but it
will not be used to sign it.
</p></dd>
</p>
</dd>
<dt><span class="term">-D <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be deleted. After that
date, the key will no longer be included in the zone. (It
may remain in the key repository, however.)
</p></dd>
</p>
</dd>
<dt><span class="term">-i <em class="replaceable"><code>interval</code></em></span></dt>
<dd>
<p>
<p>
Sets the prepublication interval for a key. If set, then
the publication and activation dates must be separated by at least
this much time. If the activation date is specified but the
@@ -246,72 +338,82 @@
the publication date is specified but activation date isn't,
then activation will be set to this much time after publication.
</p>
<p>
<p>
If the key is being created as an explicit successor to another
key, then the default prepublication interval is 30 days;
key, then the default prepublication interval is 30 days;
otherwise it is zero.
</p>
<p>
<p>
As with date offsets, if the argument is followed by one of
the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the
interval is measured in years, months, weeks, days, hours,
or minutes, respectively. Without a suffix, the interval is
measured in seconds.
</p>
</dd>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543008"></a><h2>GENERATED KEY FILES</h2>
<p>
When <span><strong class="command">dnssec-keyfromlabel</strong></span> completes
</div>
<div class="refsection">
<a name="id-1.10"></a><h2>GENERATED KEY FILES</h2>
<p>
When <span class="command"><strong>dnssec-keyfromlabel</strong></span> completes
successfully,
it prints a string of the form <code class="filename">Knnnn.+aaa+iiiii</code>
to the standard output. This is an identification string for
the key files it has generated.
</p>
<div class="itemizedlist"><ul type="disc">
<li><p><code class="filename">nnnn</code> is the key name.
</p></li>
<li><p><code class="filename">aaa</code> is the numeric representation
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
<p><code class="filename">nnnn</code> is the key name.
</p>
</li>
<li class="listitem">
<p><code class="filename">aaa</code> is the numeric representation
of the algorithm.
</p></li>
<li><p><code class="filename">iiiii</code> is the key identifier (or
</p>
</li>
<li class="listitem">
<p><code class="filename">iiiii</code> is the key identifier (or
footprint).
</p></li>
</p>
</li>
</ul></div>
<p><span><strong class="command">dnssec-keyfromlabel</strong></span>
<p><span class="command"><strong>dnssec-keyfromlabel</strong></span>
creates two files, with names based
on the printed string. <code class="filename">Knnnn.+aaa+iiiii.key</code>
contains the public key, and
<code class="filename">Knnnn.+aaa+iiiii.private</code> contains the
private key.
</p>
<p>
<p>
The <code class="filename">.key</code> file contains a DNS KEY record
that
can be inserted into a zone file (directly or with a $INCLUDE
statement).
</p>
<p>
<p>
The <code class="filename">.private</code> file contains
algorithm-specific
fields. For obvious security reasons, this file does not have
general read permission.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543080"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
<span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
</div>
<div class="refsection">
<a name="id-1.11"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">dnssec-keygen</span>(8)
</span>,
<span class="citerefentry">
<span class="refentrytitle">dnssec-signzone</span>(8)
</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
<em class="citetitle">RFC 4034</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543113"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2004, 2005, 2007-2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2004, 2005, 2007-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2000-2003 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
@@ -13,301 +13,341 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
.\" Title: dnssec\-keygen
'\" t
.\" Title: dnssec-keygen
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: February 07, 2014
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2014-02-07
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "DNSSEC\-KEYGEN" "8" "February 07, 2014" "BIND9" "BIND9"
.TH "DNSSEC\-KEYGEN" "8" "2014\-02\-07" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
dnssec\-keygen \- DNSSEC key generation tool
dnssec-keygen \- DNSSEC key generation tool
.SH "SYNOPSIS"
.HP 14
.HP \w'\fBdnssec\-keygen\fR\ 'u
\fBdnssec\-keygen\fR [\fB\-a\ \fR\fB\fIalgorithm\fR\fR] [\fB\-b\ \fR\fB\fIkeysize\fR\fR] [\fB\-n\ \fR\fB\fInametype\fR\fR] [\fB\-3\fR] [\fB\-A\ \fR\fB\fIdate/offset\fR\fR] [\fB\-C\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-D\ \fR\fB\fIdate/offset\fR\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] [\fB\-f\ \fR\fB\fIflag\fR\fR] [\fB\-G\fR] [\fB\-g\ \fR\fB\fIgenerator\fR\fR] [\fB\-h\fR] [\fB\-I\ \fR\fB\fIdate/offset\fR\fR] [\fB\-i\ \fR\fB\fIinterval\fR\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-L\ \fR\fB\fIttl\fR\fR] [\fB\-k\fR] [\fB\-P\ \fR\fB\fIdate/offset\fR\fR] [\fB\-p\ \fR\fB\fIprotocol\fR\fR] [\fB\-q\fR] [\fB\-R\ \fR\fB\fIdate/offset\fR\fR] [\fB\-r\ \fR\fB\fIrandomdev\fR\fR] [\fB\-S\ \fR\fB\fIkey\fR\fR] [\fB\-s\ \fR\fB\fIstrength\fR\fR] [\fB\-t\ \fR\fB\fItype\fR\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-V\fR] [\fB\-z\fR] {name}
.SH "DESCRIPTION"
.PP
\fBdnssec\-keygen\fR
generates keys for DNSSEC (Secure DNS), as defined in RFC 2535 and RFC 4034. It can also generate keys for use with TSIG (Transaction Signatures) as defined in RFC 2845, or TKEY (Transaction Key) as defined in RFC 2930.
generates keys for DNSSEC (Secure DNS), as defined in RFC 2535 and RFC 4034\&. It can also generate keys for use with TSIG (Transaction Signatures) as defined in RFC 2845, or TKEY (Transaction Key) as defined in RFC 2930\&.
.PP
The
\fBname\fR
of the key is specified on the command line. For DNSSEC keys, this must match the name of the zone for which the key is being generated.
of the key is specified on the command line\&. For DNSSEC keys, this must match the name of the zone for which the key is being generated\&.
.SH "OPTIONS"
.PP
\-a \fIalgorithm\fR
.RS 4
Selects the cryptographic algorithm. For DNSSEC keys, the value of
Selects the cryptographic algorithm\&. For DNSSEC keys, the value of
\fBalgorithm\fR
must be one of RSAMD5, RSASHA1, DSA, NSEC3RSASHA1, NSEC3DSA, RSASHA256, RSASHA512, ECCGOST, ECDSAP256SHA256 or ECDSAP384SHA384. For TSIG/TKEY, the value must be DH (Diffie Hellman), HMAC\-MD5, HMAC\-SHA1, HMAC\-SHA224, HMAC\-SHA256, HMAC\-SHA384, or HMAC\-SHA512. These values are case insensitive.
must be one of RSAMD5, RSASHA1, DSA, NSEC3RSASHA1, NSEC3DSA, RSASHA256, RSASHA512, ECCGOST, ECDSAP256SHA256, ECDSAP384SHA384, ED25519 or ED448\&. For TSIG/TKEY, the value must be DH (Diffie Hellman), HMAC\-MD5, HMAC\-SHA1, HMAC\-SHA224, HMAC\-SHA256, HMAC\-SHA384, or HMAC\-SHA512\&. These values are case insensitive\&.
.sp
If no algorithm is specified, then RSASHA1 will be used by default, unless the
\fB\-3\fR
option is specified, in which case NSEC3RSASHA1 will be used instead. (If
option is specified, in which case NSEC3RSASHA1 will be used instead\&. (If
\fB\-3\fR
is used and an algorithm is specified, that algorithm will be checked for compatibility with NSEC3.)
is used and an algorithm is specified, that algorithm will be checked for compatibility with NSEC3\&.)
.sp
Note 1: that for DNSSEC, RSASHA1 is a mandatory to implement algorithm, and DSA is recommended. For TSIG, HMAC\-MD5 is mandatory.
Note 1: that for DNSSEC, RSASHA1 is a mandatory to implement algorithm, and DSA is recommended\&. For TSIG, HMAC\-MD5 is mandatory\&.
.sp
Note 2: DH, HMAC\-MD5, and HMAC\-SHA1 through HMAC\-SHA512 automatically set the \-T KEY option.
Note 2: DH, HMAC\-MD5, and HMAC\-SHA1 through HMAC\-SHA512 automatically set the \-T KEY option\&.
.RE
.PP
\-b \fIkeysize\fR
.RS 4
Specifies the number of bits in the key. The choice of key size depends on the algorithm used. RSA keys must be between 512 and 2048 bits. Diffie Hellman keys must be between 128 and 4096 bits. DSA keys must be between 512 and 1024 bits and an exact multiple of 64. HMAC keys must be between 1 and 512 bits. Elliptic curve algorithms don't need this parameter.
Specifies the number of bits in the key\&. The choice of key size depends on the algorithm used\&. RSA keys must be between 512 and 2048 bits\&. Diffie Hellman keys must be between 128 and 4096 bits\&. DSA keys must be between 512 and 1024 bits and an exact multiple of 64\&. HMAC keys must be between 1 and 512 bits\&. Elliptic curve algorithms don\*(Aqt need this parameter\&.
.sp
The key size does not need to be specified if using a default algorithm. The default key size is 1024 bits for zone signing keys (ZSK's) and 2048 bits for key signing keys (KSK's, generated with
\fB\-f KSK\fR). However, if an algorithm is explicitly specified with the
The key size does not need to be specified if using a default algorithm\&. The default key size is 1024 bits for zone signing keys (ZSK\*(Aqs) and 2048 bits for key signing keys (KSK\*(Aqs, generated with
\fB\-f KSK\fR)\&. However, if an algorithm is explicitly specified with the
\fB\-a\fR, then there is no default key size, and the
\fB\-b\fR
must be used.
must be used\&.
.RE
.PP
\-n \fInametype\fR
.RS 4
Specifies the owner type of the key. The value of
Specifies the owner type of the key\&. The value of
\fBnametype\fR
must either be ZONE (for a DNSSEC zone key (KEY/DNSKEY)), HOST or ENTITY (for a key associated with a host (KEY)), USER (for a key associated with a user(KEY)) or OTHER (DNSKEY). These values are case insensitive. Defaults to ZONE for DNSKEY generation.
must either be ZONE (for a DNSSEC zone key (KEY/DNSKEY)), HOST or ENTITY (for a key associated with a host (KEY)), USER (for a key associated with a user(KEY)) or OTHER (DNSKEY)\&. These values are case insensitive\&. Defaults to ZONE for DNSKEY generation\&.
.RE
.PP
\-3
.RS 4
Use an NSEC3\-capable algorithm to generate a DNSSEC key. If this option is used and no algorithm is explicitly set on the command line, NSEC3RSASHA1 will be used by default. Note that RSASHA256, RSASHA512, ECCGOST, ECDSAP256SHA256 and ECDSAP384SHA384 algorithms are NSEC3\-capable.
Use an NSEC3\-capable algorithm to generate a DNSSEC key\&. If this option is used and no algorithm is explicitly set on the command line, NSEC3RSASHA1 will be used by default\&. Note that RSASHA256, RSASHA512, ECCGOST, ECDSAP256SHA256, ECDSAP384SHA384, ED25519 and ED448 algorithms are NSEC3\-capable\&.
.RE
.PP
\-C
.RS 4
Compatibility mode: generates an old\-style key, without any metadata. By default,
Compatibility mode: generates an old\-style key, without any metadata\&. By default,
\fBdnssec\-keygen\fR
will include the key's creation date in the metadata stored with the private key, and other dates may be set there as well (publication date, activation date, etc). Keys that include this data may be incompatible with older versions of BIND; the
will include the key\*(Aqs creation date in the metadata stored with the private key, and other dates may be set there as well (publication date, activation date, etc)\&. Keys that include this data may be incompatible with older versions of BIND; the
\fB\-C\fR
option suppresses them.
option suppresses them\&.
.RE
.PP
\-c \fIclass\fR
.RS 4
Indicates that the DNS record containing the key should have the specified class. If not specified, class IN is used.
Indicates that the DNS record containing the key should have the specified class\&. If not specified, class IN is used\&.
.RE
.PP
\-E \fIengine\fR
.RS 4
Uses a crypto hardware (OpenSSL engine) for random number and, when supported, key generation. When compiled with PKCS#11 support it defaults to pkcs11; the empty name resets it to no engine.
Uses a crypto hardware (OpenSSL engine) for random number and, when supported, key generation\&. When compiled with PKCS#11 support it defaults to pkcs11; the empty name resets it to no engine\&.
.RE
.PP
\-f \fIflag\fR
.RS 4
Set the specified flag in the flag field of the KEY/DNSKEY record. The only recognized flags are KSK (Key Signing Key) and REVOKE.
Set the specified flag in the flag field of the KEY/DNSKEY record\&. The only recognized flags are KSK (Key Signing Key) and REVOKE\&.
.RE
.PP
\-G
.RS 4
Generate a key, but do not publish it or sign with it. This option is incompatible with \-P and \-A.
Generate a key, but do not publish it or sign with it\&. This option is incompatible with \-P and \-A\&.
.RE
.PP
\-g \fIgenerator\fR
.RS 4
If generating a Diffie Hellman key, use this generator. Allowed values are 2 and 5. If no generator is specified, a known prime from RFC 2539 will be used if possible; otherwise the default is 2.
If generating a Diffie Hellman key, use this generator\&. Allowed values are 2 and 5\&. If no generator is specified, a known prime from RFC 2539 will be used if possible; otherwise the default is 2\&.
.RE
.PP
\-h
.RS 4
Prints a short summary of the options and arguments to
\fBdnssec\-keygen\fR.
\fBdnssec\-keygen\fR\&.
.RE
.PP
\-K \fIdirectory\fR
.RS 4
Sets the directory in which the key files are to be written.
Sets the directory in which the key files are to be written\&.
.RE
.PP
\-k
.RS 4
Deprecated in favor of \-T KEY.
Deprecated in favor of \-T KEY\&.
.RE
.PP
\-L \fIttl\fR
.RS 4
Sets the default TTL to use for this key when it is converted into a DNSKEY RR. If the key is imported into a zone, this is the TTL that will be used for it, unless there was already a DNSKEY RRset in place, in which case the existing TTL would take precedence. If this value is not set and there is no existing DNSKEY RRset, the TTL will default to the SOA TTL. Setting the default TTL to
Sets the default TTL to use for this key when it is converted into a DNSKEY RR\&. If the key is imported into a zone, this is the TTL that will be used for it, unless there was already a DNSKEY RRset in place, in which case the existing TTL would take precedence\&. If this value is not set and there is no existing DNSKEY RRset, the TTL will default to the SOA TTL\&. Setting the default TTL to
0
or
none
is the same as leaving it unset.
is the same as leaving it unset\&.
.RE
.PP
\-p \fIprotocol\fR
.RS 4
Sets the protocol value for the generated key. The protocol is a number between 0 and 255. The default is 3 (DNSSEC). Other possible values for this argument are listed in RFC 2535 and its successors.
Sets the protocol value for the generated key\&. The protocol is a number between 0 and 255\&. The default is 3 (DNSSEC)\&. Other possible values for this argument are listed in RFC 2535 and its successors\&.
.RE
.PP
\-q
.RS 4
Quiet mode: Suppresses unnecessary output, including progress indication. Without this option, when
Quiet mode: Suppresses unnecessary output, including progress indication\&. Without this option, when
\fBdnssec\-keygen\fR
is run interactively to generate an RSA or DSA key pair, it will print a string of symbols to
\fIstderr\fR
indicating the progress of the key generation. A '.' indicates that a random number has been found which passed an initial sieve test; '+' means a number has passed a single round of the Miller\-Rabin primality test; a space means that the number has passed all the tests and is a satisfactory key.
stderr
indicating the progress of the key generation\&. A \*(Aq\&.\*(Aq indicates that a random number has been found which passed an initial sieve test; \*(Aq+\*(Aq means a number has passed a single round of the Miller\-Rabin primality test; a space means that the number has passed all the tests and is a satisfactory key\&.
.RE
.PP
\-r \fIrandomdev\fR
.RS 4
Specifies the source of randomness. If the operating system does not provide a
\fI/dev/random\fR
or equivalent device, the default source of randomness is keyboard input.
\fIrandomdev\fR
specifies the name of a character device or file containing random data to be used instead of the default. The special value
\fIkeyboard\fR
indicates that keyboard input should be used.
Specifies the source of randomness\&. If the operating system does not provide a
/dev/random
or equivalent device, the default source of randomness is keyboard input\&.
randomdev
specifies the name of a character device or file containing random data to be used instead of the default\&. The special value
keyboard
indicates that keyboard input should be used\&.
.RE
.PP
\-S \fIkey\fR
.RS 4
Create a new key which is an explicit successor to an existing key. The name, algorithm, size, and type of the key will be set to match the existing key. The activation date of the new key will be set to the inactivation date of the existing one. The publication date will be set to the activation date minus the prepublication interval, which defaults to 30 days.
Create a new key which is an explicit successor to an existing key\&. The name, algorithm, size, and type of the key will be set to match the existing key\&. The activation date of the new key will be set to the inactivation date of the existing one\&. The publication date will be set to the activation date minus the prepublication interval, which defaults to 30 days\&.
.RE
.PP
\-s \fIstrength\fR
.RS 4
Specifies the strength value of the key. The strength is a number between 0 and 15, and currently has no defined purpose in DNSSEC.
Specifies the strength value of the key\&. The strength is a number between 0 and 15, and currently has no defined purpose in DNSSEC\&.
.RE
.PP
\-T \fIrrtype\fR
.RS 4
Specifies the resource record type to use for the key.
Specifies the resource record type to use for the key\&.
\fBrrtype\fR
must be either DNSKEY or KEY. The default is DNSKEY when using a DNSSEC algorithm, but it can be overridden to KEY for use with SIG(0).
Using any TSIG algorithm (HMAC\-* or DH) forces this option to KEY.
must be either DNSKEY or KEY\&. The default is DNSKEY when using a DNSSEC algorithm, but it can be overridden to KEY for use with SIG(0)\&.
Using any TSIG algorithm (HMAC\-* or DH) forces this option to KEY\&.
.RE
.PP
\-t \fItype\fR
.RS 4
Indicates the use of the key.
Indicates the use of the key\&.
\fBtype\fR
must be one of AUTHCONF, NOAUTHCONF, NOAUTH, or NOCONF. The default is AUTHCONF. AUTH refers to the ability to authenticate data, and CONF the ability to encrypt data.
must be one of AUTHCONF, NOAUTHCONF, NOAUTH, or NOCONF\&. The default is AUTHCONF\&. AUTH refers to the ability to authenticate data, and CONF the ability to encrypt data\&.
.RE
.PP
\-v \fIlevel\fR
.RS 4
Sets the debugging level.
Sets the debugging level\&.
.RE
.PP
\-V
.RS 4
Prints version information.
Prints version information\&.
.RE
.SH "TIMING OPTIONS"
.PP
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS. If the argument begins with a '+' or '\-', it is interpreted as an offset from the present time. For convenience, if such an offset is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the offset is computed in years (defined as 365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour days), weeks, days, hours, or minutes, respectively. Without a suffix, the offset is computed in seconds. To explicitly prevent a date from being set, use 'none' or 'never'.
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS\&. If the argument begins with a \*(Aq+\*(Aq or \*(Aq\-\*(Aq, it is interpreted as an offset from the present time\&. For convenience, if such an offset is followed by one of the suffixes \*(Aqy\*(Aq, \*(Aqmo\*(Aq, \*(Aqw\*(Aq, \*(Aqd\*(Aq, \*(Aqh\*(Aq, or \*(Aqmi\*(Aq, then the offset is computed in years (defined as 365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour days), weeks, days, hours, or minutes, respectively\&. Without a suffix, the offset is computed in seconds\&. To explicitly prevent a date from being set, use \*(Aqnone\*(Aq or \*(Aqnever\*(Aq\&.
.PP
\-P \fIdate/offset\fR
.RS 4
Sets the date on which a key is to be published to the zone. After that date, the key will be included in the zone but will not be used to sign it. If not set, and if the \-G option has not been used, the default is "now".
Sets the date on which a key is to be published to the zone\&. After that date, the key will be included in the zone but will not be used to sign it\&. If not set, and if the \-G option has not been used, the default is "now"\&.
.RE
.PP
\-A \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be activated. After that date, the key will be included in the zone and used to sign it. If not set, and if the \-G option has not been used, the default is "now". If set, if and \-P is not set, then the publication date will be set to the activation date minus the prepublication interval.
Sets the date on which the key is to be activated\&. After that date, the key will be included in the zone and used to sign it\&. If not set, and if the \-G option has not been used, the default is "now"\&. If set, if and \-P is not set, then the publication date will be set to the activation date minus the prepublication interval\&.
.RE
.PP
\-R \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be revoked. After that date, the key will be flagged as revoked. It will be included in the zone and will be used to sign it.
Sets the date on which the key is to be revoked\&. After that date, the key will be flagged as revoked\&. It will be included in the zone and will be used to sign it\&.
.RE
.PP
\-I \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be retired. After that date, the key will still be included in the zone, but it will not be used to sign it.
Sets the date on which the key is to be retired\&. After that date, the key will still be included in the zone, but it will not be used to sign it\&.
.RE
.PP
\-D \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be deleted. After that date, the key will no longer be included in the zone. (It may remain in the key repository, however.)
Sets the date on which the key is to be deleted\&. After that date, the key will no longer be included in the zone\&. (It may remain in the key repository, however\&.)
.RE
.PP
\-i \fIinterval\fR
.RS 4
Sets the prepublication interval for a key. If set, then the publication and activation dates must be separated by at least this much time. If the activation date is specified but the publication date isn't, then the publication date will default to this much time before the activation date; conversely, if the publication date is specified but activation date isn't, then activation will be set to this much time after publication.
Sets the prepublication interval for a key\&. If set, then the publication and activation dates must be separated by at least this much time\&. If the activation date is specified but the publication date isn\*(Aqt, then the publication date will default to this much time before the activation date; conversely, if the publication date is specified but activation date isn\*(Aqt, then activation will be set to this much time after publication\&.
.sp
If the key is being created as an explicit successor to another key, then the default prepublication interval is 30 days; otherwise it is zero.
If the key is being created as an explicit successor to another key, then the default prepublication interval is 30 days; otherwise it is zero\&.
.sp
As with date offsets, if the argument is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the interval is measured in years, months, weeks, days, hours, or minutes, respectively. Without a suffix, the interval is measured in seconds.
As with date offsets, if the argument is followed by one of the suffixes \*(Aqy\*(Aq, \*(Aqmo\*(Aq, \*(Aqw\*(Aq, \*(Aqd\*(Aq, \*(Aqh\*(Aq, or \*(Aqmi\*(Aq, then the interval is measured in years, months, weeks, days, hours, or minutes, respectively\&. Without a suffix, the interval is measured in seconds\&.
.RE
.SH "GENERATED KEYS"
.PP
When
\fBdnssec\-keygen\fR
completes successfully, it prints a string of the form
\fIKnnnn.+aaa+iiiii\fR
to the standard output. This is an identification string for the key it has generated.
.TP 4
\(bu
\fInnnn\fR
is the key name.
.TP 4
\(bu
\fIaaa\fR
is the numeric representation of the algorithm.
.TP 4
\(bu
\fIiiiii\fR
is the key identifier (or footprint).
Knnnn\&.+aaa+iiiii
to the standard output\&. This is an identification string for the key it has generated\&.
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
nnnn
is the key name\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
aaa
is the numeric representation of the algorithm\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
iiiii
is the key identifier (or footprint)\&.
.RE
.PP
\fBdnssec\-keygen\fR
creates two files, with names based on the printed string.
\fIKnnnn.+aaa+iiiii.key\fR
creates two files, with names based on the printed string\&.
Knnnn\&.+aaa+iiiii\&.key
contains the public key, and
\fIKnnnn.+aaa+iiiii.private\fR
contains the private key.
Knnnn\&.+aaa+iiiii\&.private
contains the private key\&.
.PP
The
\fI.key\fR
file contains a DNS KEY record that can be inserted into a zone file (directly or with a $INCLUDE statement).
\&.key
file contains a DNS KEY record that can be inserted into a zone file (directly or with a $INCLUDE statement)\&.
.PP
The
\fI.private\fR
file contains algorithm\-specific fields. For obvious security reasons, this file does not have general read permission.
\&.private
file contains algorithm\-specific fields\&. For obvious security reasons, this file does not have general read permission\&.
.PP
Both
\fI.key\fR
\&.key
and
\fI.private\fR
files are generated for symmetric encryption algorithms such as HMAC\-MD5, even though the public and private key are equivalent.
\&.private
files are generated for symmetric cryptography algorithms such as HMAC\-MD5, even though the public and private key are equivalent\&.
.SH "EXAMPLE"
.PP
To generate a 768\-bit DSA key for the domain
\fBexample.com\fR, the following command would be issued:
\fBexample\&.com\fR, the following command would be issued:
.PP
\fBdnssec\-keygen \-a DSA \-b 768 \-n ZONE example.com\fR
\fBdnssec\-keygen \-a DSA \-b 768 \-n ZONE example\&.com\fR
.PP
The command would print a string of the form:
.PP
\fBKexample.com.+003+26160\fR
\fBKexample\&.com\&.+003+26160\fR
.PP
In this example,
\fBdnssec\-keygen\fR
creates the files
\fIKexample.com.+003+26160.key\fR
Kexample\&.com\&.+003+26160\&.key
and
\fIKexample.com.+003+26160.private\fR.
Kexample\&.com\&.+003+26160\&.private\&.
.SH "SEE ALSO"
.PP
\fBdnssec\-signzone\fR(8),
\fBdnssec-signzone\fR(8),
BIND 9 Administrator Reference Manual,
RFC 2539,
RFC 2845,
RFC 4034.
RFC 4034\&.
.SH "AUTHOR"
.PP
Internet Systems Consortium
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2004, 2005, 2007\-2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2000\-2003 Internet Software Consortium.
Copyright \(co 2004, 2005, 2007-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2000-2003 Internet Software Consortium.
.br

View File

@@ -1,5 +1,5 @@
/*
* Portions Copyright (C) 2004-2015 Internet Systems Consortium, Inc. ("ISC")
* Portions Copyright (C) 2004-2015, 2017 Internet Systems Consortium, Inc. ("ISC")
* Portions Copyright (C) 1999-2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and/or distribute this software for any
@@ -85,7 +85,8 @@ usage(void) {
" | NSEC3DSA |\n");
fprintf(stderr, " RSASHA256 | RSASHA512 | ECCGOST |\n");
fprintf(stderr, " ECDSAP256SHA256 | ECDSAP384SHA384 |\n");
fprintf(stderr, " DH | HMAC-MD5 | HMAC-SHA1 | HMAC-SHA224 | "
fprintf(stderr, " ED25519 | ED448 | DH |\n");
fprintf(stderr, " HMAC-MD5 | HMAC-SHA1 | HMAC-SHA224 | "
"HMAC-SHA256 | \n");
fprintf(stderr, " HMAC-SHA384 | HMAC-SHA512\n");
fprintf(stderr, " (default: RSASHA1, or "
@@ -104,6 +105,8 @@ usage(void) {
fprintf(stderr, " ECCGOST:\tignored\n");
fprintf(stderr, " ECDSAP256SHA256:\tignored\n");
fprintf(stderr, " ECDSAP384SHA384:\tignored\n");
fprintf(stderr, " ED25519:\tignored\n");
fprintf(stderr, " ED448:\tignored\n");
fprintf(stderr, " HMAC-MD5:\t[1..512]\n");
fprintf(stderr, " HMAC-SHA1:\t[1..160]\n");
fprintf(stderr, " HMAC-SHA224:\t[1..224]\n");
@@ -233,7 +236,7 @@ main(int argc, char **argv) {
dns_ttl_t ttl = 0;
isc_boolean_t use_default = ISC_FALSE, use_nsec3 = ISC_FALSE;
isc_stdtime_t publish = 0, activate = 0, revokekey = 0;
isc_stdtime_t inactive = 0, delete = 0;
isc_stdtime_t inactive = 0, deltime = 0;
isc_stdtime_t now;
int prepub = -1;
isc_boolean_t setpub = ISC_FALSE, setact = ISC_FALSE;
@@ -433,8 +436,8 @@ main(int argc, char **argv) {
if (setdel || unsetdel)
fatal("-D specified more than once");
delete = strtotime(isc_commandline_argument,
now, now, &setdel);
deltime = strtotime(isc_commandline_argument,
now, now, &setdel);
unsetdel = !setdel;
break;
case 'S':
@@ -549,7 +552,8 @@ main(int argc, char **argv) {
alg != DST_ALG_NSEC3DSA && alg != DST_ALG_NSEC3RSASHA1 &&
alg != DST_ALG_RSASHA256 && alg!= DST_ALG_RSASHA512 &&
alg != DST_ALG_ECCGOST &&
alg != DST_ALG_ECDSA256 && alg != DST_ALG_ECDSA384) {
alg != DST_ALG_ECDSA256 && alg != DST_ALG_ECDSA384 &&
alg != DST_ALG_ED25519 && alg != DST_ALG_ED448) {
fatal("%s is incompatible with NSEC3; "
"do not use the -3 option", algname);
}
@@ -583,7 +587,9 @@ main(int argc, char **argv) {
" to %d\n", size);
} else if (alg != DST_ALG_ECCGOST &&
alg != DST_ALG_ECDSA256 &&
alg != DST_ALG_ECDSA384)
alg != DST_ALG_ECDSA384 &&
alg != DST_ALG_ED25519 &&
alg != DST_ALG_ED448)
fatal("key size not specified (-b option)");
}
@@ -720,6 +726,12 @@ main(int argc, char **argv) {
case DST_ALG_ECDSA384:
size = 384;
break;
case DST_ALG_ED25519:
size = 256;
break;
case DST_ALG_ED448:
size = 456;
break;
case DST_ALG_HMACMD5:
options |= DST_TYPE_KEY;
if (size < 1 || size > 512)
@@ -853,6 +865,8 @@ main(int argc, char **argv) {
case DST_ALG_ECCGOST:
case DST_ALG_ECDSA256:
case DST_ALG_ECDSA384:
case DST_ALG_ED25519:
case DST_ALG_ED448:
show_progress = ISC_TRUE;
/* fall through */
@@ -954,13 +968,13 @@ main(int argc, char **argv) {
inactive);
if (setdel) {
if (setinact && delete < inactive)
if (setinact && deltime < inactive)
fprintf(stderr, "%s: warning: Key is "
"scheduled to be deleted "
"before it is scheduled to be "
"made inactive.\n",
program);
dst_key_settime(key, DST_TIME_DELETE, delete);
dst_key_settime(key, DST_TIME_DELETE, deltime);
}
} else {
if (setpub || setact || setrev || setinact ||

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2004, 2005, 2007-2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004, 2005, 2007-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2003 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -18,9 +15,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.dnssec-keygen">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.dnssec-keygen">
<info>
<date>2014-02-07</date>
</info>
<refentryinfo>
<date>February 07, 2014</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -46,6 +48,8 @@
<year>2012</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2017</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
<copyright>
@@ -58,43 +62,43 @@
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dnssec-keygen</command>
<arg><option>-a <replaceable class="parameter">algorithm</replaceable></option></arg>
<arg ><option>-b <replaceable class="parameter">keysize</replaceable></option></arg>
<arg><option>-n <replaceable class="parameter">nametype</replaceable></option></arg>
<arg><option>-3</option></arg>
<arg><option>-A <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-C</option></arg>
<arg><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg><option>-D <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg><option>-f <replaceable class="parameter">flag</replaceable></option></arg>
<arg><option>-G</option></arg>
<arg><option>-g <replaceable class="parameter">generator</replaceable></option></arg>
<arg><option>-h</option></arg>
<arg><option>-I <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-i <replaceable class="parameter">interval</replaceable></option></arg>
<arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-L <replaceable class="parameter">ttl</replaceable></option></arg>
<arg><option>-k</option></arg>
<arg><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-p <replaceable class="parameter">protocol</replaceable></option></arg>
<arg><option>-q</option></arg>
<arg><option>-R <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-r <replaceable class="parameter">randomdev</replaceable></option></arg>
<arg><option>-S <replaceable class="parameter">key</replaceable></option></arg>
<arg><option>-s <replaceable class="parameter">strength</replaceable></option></arg>
<arg><option>-t <replaceable class="parameter">type</replaceable></option></arg>
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg><option>-V</option></arg>
<arg><option>-z</option></arg>
<arg choice="req">name</arg>
<arg choice="opt" rep="norepeat"><option>-a <replaceable class="parameter">algorithm</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-b <replaceable class="parameter">keysize</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-n <replaceable class="parameter">nametype</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-3</option></arg>
<arg choice="opt" rep="norepeat"><option>-A <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-C</option></arg>
<arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-D <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-f <replaceable class="parameter">flag</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-G</option></arg>
<arg choice="opt" rep="norepeat"><option>-g <replaceable class="parameter">generator</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-h</option></arg>
<arg choice="opt" rep="norepeat"><option>-I <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-i <replaceable class="parameter">interval</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-L <replaceable class="parameter">ttl</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-k</option></arg>
<arg choice="opt" rep="norepeat"><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-p <replaceable class="parameter">protocol</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-q</option></arg>
<arg choice="opt" rep="norepeat"><option>-R <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-r <replaceable class="parameter">randomdev</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-S <replaceable class="parameter">key</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-s <replaceable class="parameter">strength</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-t <replaceable class="parameter">type</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-V</option></arg>
<arg choice="opt" rep="norepeat"><option>-z</option></arg>
<arg choice="req" rep="norepeat">name</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>dnssec-keygen</command>
generates keys for DNSSEC (Secure DNS), as defined in RFC 2535
and RFC 4034. It can also generate keys for use with
@@ -106,10 +110,10 @@
line. For DNSSEC keys, this must match the name of the zone for
which the key is being generated.
</para>
</refsect1>
</refsection>
<refsection><info><title>OPTIONS</title></info>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
@@ -119,7 +123,7 @@
Selects the cryptographic algorithm. For DNSSEC keys, the value
of <option>algorithm</option> must be one of RSAMD5, RSASHA1,
DSA, NSEC3RSASHA1, NSEC3DSA, RSASHA256, RSASHA512, ECCGOST,
ECDSAP256SHA256 or ECDSAP384SHA384.
ECDSAP256SHA256, ECDSAP384SHA384, ED25519 or ED448.
For TSIG/TKEY, the value must
be DH (Diffie Hellman), HMAC-MD5, HMAC-SHA1, HMAC-SHA224,
HMAC-SHA256, HMAC-SHA384, or HMAC-SHA512. These values are
@@ -191,8 +195,8 @@
If this option is used and no algorithm is explicitly
set on the command line, NSEC3RSASHA1 will be used by
default. Note that RSASHA256, RSASHA512, ECCGOST,
ECDSAP256SHA256 and ECDSAP384SHA384 algorithms
are NSEC3-capable.
ECDSAP256SHA256, ECDSAP384SHA384, ED25519 and ED448
algorithms are NSEC3-capable.
</para>
</listitem>
</varlistentry>
@@ -431,10 +435,10 @@
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>TIMING OPTIONS</title></info>
<refsect1>
<title>TIMING OPTIONS</title>
<para>
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
@@ -522,7 +526,7 @@
</para>
<para>
If the key is being created as an explicit successor to another
key, then the default prepublication interval is 30 days;
key, then the default prepublication interval is 30 days;
otherwise it is zero.
</para>
<para>
@@ -536,11 +540,11 @@
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsect1>
<title>GENERATED KEYS</title>
<refsection><info><title>GENERATED KEYS</title></info>
<para>
When <command>dnssec-keygen</command> completes
successfully,
@@ -565,7 +569,7 @@
</para>
</listitem>
</itemizedlist>
<para><command>dnssec-keygen</command>
<para><command>dnssec-keygen</command>
creates two files, with names based
on the printed string. <filename>Knnnn.+aaa+iiiii.key</filename>
contains the public key, and
@@ -587,13 +591,13 @@
</para>
<para>
Both <filename>.key</filename> and <filename>.private</filename>
files are generated for symmetric encryption algorithms such as
files are generated for symmetric cryptography algorithms such as
HMAC-MD5, even though the public and private key are equivalent.
</para>
</refsect1>
</refsection>
<refsection><info><title>EXAMPLE</title></info>
<refsect1>
<title>EXAMPLE</title>
<para>
To generate a 768-bit DSA key for the domain
<userinput>example.com</userinput>, the following command would be
@@ -612,10 +616,10 @@
and
<filename>Kexample.com.+003+26160.private</filename>.
</para>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>dnssec-signzone</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
@@ -624,16 +628,6 @@
<citetitle>RFC 2845</citetitle>,
<citetitle>RFC 4034</citetitle>.
</para>
</refsect1>
</refsection>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2004, 2005, 2007-2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004, 2005, 2007-2012, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2003 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -14,72 +15,119 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>dnssec-keygen</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.dnssec-keygen"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">dnssec-keygen</span> &#8212; DNSSEC key generation tool</p>
<p>
<span class="application">dnssec-keygen</span>
&#8212; DNSSEC key generation tool
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">dnssec-keygen</code> [<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>] [<code class="option">-b <em class="replaceable"><code>keysize</code></em></code>] [<code class="option">-n <em class="replaceable"><code>nametype</code></em></code>] [<code class="option">-3</code>] [<code class="option">-A <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-C</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] [<code class="option">-f <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-G</code>] [<code class="option">-g <em class="replaceable"><code>generator</code></em></code>] [<code class="option">-h</code>] [<code class="option">-I <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-i <em class="replaceable"><code>interval</code></em></code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-L <em class="replaceable"><code>ttl</code></em></code>] [<code class="option">-k</code>] [<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-p <em class="replaceable"><code>protocol</code></em></code>] [<code class="option">-q</code>] [<code class="option">-R <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-r <em class="replaceable"><code>randomdev</code></em></code>] [<code class="option">-S <em class="replaceable"><code>key</code></em></code>] [<code class="option">-s <em class="replaceable"><code>strength</code></em></code>] [<code class="option">-t <em class="replaceable"><code>type</code></em></code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-V</code>] [<code class="option">-z</code>] {name}</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543608"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">dnssec-keygen</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">dnssec-keygen</code>
[<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>]
[<code class="option">-b <em class="replaceable"><code>keysize</code></em></code>]
[<code class="option">-n <em class="replaceable"><code>nametype</code></em></code>]
[<code class="option">-3</code>]
[<code class="option">-A <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-C</code>]
[<code class="option">-c <em class="replaceable"><code>class</code></em></code>]
[<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-E <em class="replaceable"><code>engine</code></em></code>]
[<code class="option">-f <em class="replaceable"><code>flag</code></em></code>]
[<code class="option">-G</code>]
[<code class="option">-g <em class="replaceable"><code>generator</code></em></code>]
[<code class="option">-h</code>]
[<code class="option">-I <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-i <em class="replaceable"><code>interval</code></em></code>]
[<code class="option">-K <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-L <em class="replaceable"><code>ttl</code></em></code>]
[<code class="option">-k</code>]
[<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-p <em class="replaceable"><code>protocol</code></em></code>]
[<code class="option">-q</code>]
[<code class="option">-R <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-r <em class="replaceable"><code>randomdev</code></em></code>]
[<code class="option">-S <em class="replaceable"><code>key</code></em></code>]
[<code class="option">-s <em class="replaceable"><code>strength</code></em></code>]
[<code class="option">-t <em class="replaceable"><code>type</code></em></code>]
[<code class="option">-v <em class="replaceable"><code>level</code></em></code>]
[<code class="option">-V</code>]
[<code class="option">-z</code>]
{name}
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>dnssec-keygen</strong></span>
generates keys for DNSSEC (Secure DNS), as defined in RFC 2535
and RFC 4034. It can also generate keys for use with
TSIG (Transaction Signatures) as defined in RFC 2845, or TKEY
(Transaction Key) as defined in RFC 2930.
</p>
<p>
<p>
The <code class="option">name</code> of the key is specified on the command
line. For DNSSEC keys, this must match the name of the zone for
which the key is being generated.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543626"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
<dd>
<p>
<p>
Selects the cryptographic algorithm. For DNSSEC keys, the value
of <code class="option">algorithm</code> must be one of RSAMD5, RSASHA1,
DSA, NSEC3RSASHA1, NSEC3DSA, RSASHA256, RSASHA512, ECCGOST,
ECDSAP256SHA256 or ECDSAP384SHA384.
ECDSAP256SHA256, ECDSAP384SHA384, ED25519 or ED448.
For TSIG/TKEY, the value must
be DH (Diffie Hellman), HMAC-MD5, HMAC-SHA1, HMAC-SHA224,
HMAC-SHA256, HMAC-SHA384, or HMAC-SHA512. These values are
case insensitive.
</p>
<p>
<p>
If no algorithm is specified, then RSASHA1 will be used by
default, unless the <code class="option">-3</code> option is specified,
in which case NSEC3RSASHA1 will be used instead. (If
<code class="option">-3</code> is used and an algorithm is specified,
that algorithm will be checked for compatibility with NSEC3.)
</p>
<p>
<p>
Note 1: that for DNSSEC, RSASHA1 is a mandatory to implement
algorithm, and DSA is recommended. For TSIG, HMAC-MD5 is
mandatory.
</p>
<p>
<p>
Note 2: DH, HMAC-MD5, and HMAC-SHA1 through HMAC-SHA512
automatically set the -T KEY option.
</p>
</dd>
</dd>
<dt><span class="term">-b <em class="replaceable"><code>keysize</code></em></span></dt>
<dd>
<p>
<p>
Specifies the number of bits in the key. The choice of key
size depends on the algorithm used. RSA keys must be
between 512 and 2048 bits. Diffie Hellman keys must be between
@@ -88,7 +136,7 @@
between 1 and 512 bits. Elliptic curve algorithms don't need
this parameter.
</p>
<p>
<p>
The key size does not need to be specified if using a default
algorithm. The default key size is 1024 bits for zone signing
keys (ZSK's) and 2048 bits for key signing keys (KSK's,
@@ -97,9 +145,10 @@
then there is no default key size, and the <code class="option">-b</code>
must be used.
</p>
</dd>
</dd>
<dt><span class="term">-n <em class="replaceable"><code>nametype</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the owner type of the key. The value of
<code class="option">nametype</code> must either be ZONE (for a DNSSEC
zone key (KEY/DNSKEY)), HOST or ENTITY (for a key associated with
@@ -107,70 +156,92 @@
USER (for a key associated with a user(KEY)) or OTHER (DNSKEY).
These values are case insensitive. Defaults to ZONE for DNSKEY
generation.
</p></dd>
</p>
</dd>
<dt><span class="term">-3</span></dt>
<dd><p>
<dd>
<p>
Use an NSEC3-capable algorithm to generate a DNSSEC key.
If this option is used and no algorithm is explicitly
set on the command line, NSEC3RSASHA1 will be used by
default. Note that RSASHA256, RSASHA512, ECCGOST,
ECDSAP256SHA256 and ECDSAP384SHA384 algorithms
are NSEC3-capable.
</p></dd>
ECDSAP256SHA256, ECDSAP384SHA384, ED25519 and ED448
algorithms are NSEC3-capable.
</p>
</dd>
<dt><span class="term">-C</span></dt>
<dd><p>
<dd>
<p>
Compatibility mode: generates an old-style key, without
any metadata. By default, <span><strong class="command">dnssec-keygen</strong></span>
any metadata. By default, <span class="command"><strong>dnssec-keygen</strong></span>
will include the key's creation date in the metadata stored
with the private key, and other dates may be set there as well
(publication date, activation date, etc). Keys that include
this data may be incompatible with older versions of BIND; the
<code class="option">-C</code> option suppresses them.
</p></dd>
</p>
</dd>
<dt><span class="term">-c <em class="replaceable"><code>class</code></em></span></dt>
<dd><p>
<dd>
<p>
Indicates that the DNS record containing the key should have
the specified class. If not specified, class IN is used.
</p></dd>
</p>
</dd>
<dt><span class="term">-E <em class="replaceable"><code>engine</code></em></span></dt>
<dd><p>
<dd>
<p>
Uses a crypto hardware (OpenSSL engine) for random number
and, when supported, key generation. When compiled with PKCS#11
support it defaults to pkcs11; the empty name resets it to
no engine.
</p></dd>
</p>
</dd>
<dt><span class="term">-f <em class="replaceable"><code>flag</code></em></span></dt>
<dd><p>
<dd>
<p>
Set the specified flag in the flag field of the KEY/DNSKEY record.
The only recognized flags are KSK (Key Signing Key) and REVOKE.
</p></dd>
</p>
</dd>
<dt><span class="term">-G</span></dt>
<dd><p>
<dd>
<p>
Generate a key, but do not publish it or sign with it. This
option is incompatible with -P and -A.
</p></dd>
</p>
</dd>
<dt><span class="term">-g <em class="replaceable"><code>generator</code></em></span></dt>
<dd><p>
<dd>
<p>
If generating a Diffie Hellman key, use this generator.
Allowed values are 2 and 5. If no generator
is specified, a known prime from RFC 2539 will be used
if possible; otherwise the default is 2.
</p></dd>
</p>
</dd>
<dt><span class="term">-h</span></dt>
<dd><p>
<dd>
<p>
Prints a short summary of the options and arguments to
<span><strong class="command">dnssec-keygen</strong></span>.
</p></dd>
<span class="command"><strong>dnssec-keygen</strong></span>.
</p>
</dd>
<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the directory in which the key files are to be written.
</p></dd>
</p>
</dd>
<dt><span class="term">-k</span></dt>
<dd><p>
<dd>
<p>
Deprecated in favor of -T KEY.
</p></dd>
</p>
</dd>
<dt><span class="term">-L <em class="replaceable"><code>ttl</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the default TTL to use for this key when it is converted
into a DNSKEY RR. If the key is imported into a zone,
this is the TTL that will be used for it, unless there was
@@ -179,19 +250,23 @@
is no existing DNSKEY RRset, the TTL will default to the
SOA TTL. Setting the default TTL to <code class="literal">0</code>
or <code class="literal">none</code> is the same as leaving it unset.
</p></dd>
</p>
</dd>
<dt><span class="term">-p <em class="replaceable"><code>protocol</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the protocol value for the generated key. The protocol
is a number between 0 and 255. The default is 3 (DNSSEC).
Other possible values for this argument are listed in
RFC 2535 and its successors.
</p></dd>
</p>
</dd>
<dt><span class="term">-q</span></dt>
<dd><p>
<dd>
<p>
Quiet mode: Suppresses unnecessary output, including
progress indication. Without this option, when
<span><strong class="command">dnssec-keygen</strong></span> is run interactively
<span class="command"><strong>dnssec-keygen</strong></span> is run interactively
to generate an RSA or DSA key pair, it will print a string
of symbols to <code class="filename">stderr</code> indicating the
progress of the key generation. A '.' indicates that a
@@ -200,9 +275,11 @@
round of the Miller-Rabin primality test; a space
means that the number has passed all the tests and is
a satisfactory key.
</p></dd>
</p>
</dd>
<dt><span class="term">-r <em class="replaceable"><code>randomdev</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the source of randomness. If the operating
system does not provide a <code class="filename">/dev/random</code>
or equivalent device, the default source of randomness
@@ -212,9 +289,11 @@
data to be used instead of the default. The special value
<code class="filename">keyboard</code> indicates that keyboard
input should be used.
</p></dd>
</p>
</dd>
<dt><span class="term">-S <em class="replaceable"><code>key</code></em></span></dt>
<dd><p>
<dd>
<p>
Create a new key which is an explicit successor to an
existing key. The name, algorithm, size, and type of the
key will be set to match the existing key. The activation
@@ -222,16 +301,19 @@
the existing one. The publication date will be set to the
activation date minus the prepublication interval, which
defaults to 30 days.
</p></dd>
</p>
</dd>
<dt><span class="term">-s <em class="replaceable"><code>strength</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the strength value of the key. The strength is
a number between 0 and 15, and currently has no defined
purpose in DNSSEC.
</p></dd>
</p>
</dd>
<dt><span class="term">-T <em class="replaceable"><code>rrtype</code></em></span></dt>
<dd>
<p>
<p>
Specifies the resource record type to use for the key.
<code class="option">rrtype</code> must be either DNSKEY or KEY. The
default is DNSKEY when using a DNSSEC algorithm, but it can be
@@ -243,27 +325,36 @@
Using any TSIG algorithm (HMAC-* or DH) forces this option
to KEY.
</p>
</dd>
</dd>
<dt><span class="term">-t <em class="replaceable"><code>type</code></em></span></dt>
<dd><p>
<dd>
<p>
Indicates the use of the key. <code class="option">type</code> must be
one of AUTHCONF, NOAUTHCONF, NOAUTH, or NOCONF. The default
is AUTHCONF. AUTH refers to the ability to authenticate
data, and CONF the ability to encrypt data.
</p></dd>
</p>
</dd>
<dt><span class="term">-v <em class="replaceable"><code>level</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the debugging level.
</p></dd>
</p>
</dd>
<dt><span class="term">-V</span></dt>
<dd><p>
<dd>
<p>
Prints version information.
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2544220"></a><h2>TIMING OPTIONS</h2>
<p>
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>TIMING OPTIONS</h2>
<p>
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
If the argument begins with a '+' or '-', it is interpreted as
an offset from the present time. For convenience, if such an offset
@@ -274,44 +365,55 @@
is computed in seconds. To explicitly prevent a date from being
set, use 'none' or 'never'.
</p>
<div class="variablelist"><dl>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-P <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which a key is to be published to the zone.
After that date, the key will be included in the zone but will
not be used to sign it. If not set, and if the -G option has
not been used, the default is "now".
</p></dd>
</p>
</dd>
<dt><span class="term">-A <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be activated. After that
date, the key will be included in the zone and used to sign
it. If not set, and if the -G option has not been used, the
default is "now". If set, if and -P is not set, then
the publication date will be set to the activation date
minus the prepublication interval.
</p></dd>
</p>
</dd>
<dt><span class="term">-R <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be revoked. After that
date, the key will be flagged as revoked. It will be included
in the zone and will be used to sign it.
</p></dd>
</p>
</dd>
<dt><span class="term">-I <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be retired. After that
date, the key will still be included in the zone, but it
will not be used to sign it.
</p></dd>
</p>
</dd>
<dt><span class="term">-D <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be deleted. After that
date, the key will no longer be included in the zone. (It
may remain in the key repository, however.)
</p></dd>
</p>
</dd>
<dt><span class="term">-i <em class="replaceable"><code>interval</code></em></span></dt>
<dd>
<p>
<p>
Sets the prepublication interval for a key. If set, then
the publication and activation dates must be separated by at least
this much time. If the activation date is specified but the
@@ -320,42 +422,51 @@
the publication date is specified but activation date isn't,
then activation will be set to this much time after publication.
</p>
<p>
<p>
If the key is being created as an explicit successor to another
key, then the default prepublication interval is 30 days;
key, then the default prepublication interval is 30 days;
otherwise it is zero.
</p>
<p>
<p>
As with date offsets, if the argument is followed by one of
the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the
interval is measured in years, months, weeks, days, hours,
or minutes, respectively. Without a suffix, the interval is
measured in seconds.
</p>
</dd>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2544410"></a><h2>GENERATED KEYS</h2>
<p>
When <span><strong class="command">dnssec-keygen</strong></span> completes
</div>
<div class="refsection">
<a name="id-1.10"></a><h2>GENERATED KEYS</h2>
<p>
When <span class="command"><strong>dnssec-keygen</strong></span> completes
successfully,
it prints a string of the form <code class="filename">Knnnn.+aaa+iiiii</code>
to the standard output. This is an identification string for
the key it has generated.
</p>
<div class="itemizedlist"><ul type="disc">
<li><p><code class="filename">nnnn</code> is the key name.
</p></li>
<li><p><code class="filename">aaa</code> is the numeric representation
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
<p><code class="filename">nnnn</code> is the key name.
</p>
</li>
<li class="listitem">
<p><code class="filename">aaa</code> is the numeric representation
of the
algorithm.
</p></li>
<li><p><code class="filename">iiiii</code> is the key identifier (or
</p>
</li>
<li class="listitem">
<p><code class="filename">iiiii</code> is the key identifier (or
footprint).
</p></li>
</p>
</li>
</ul></div>
<p><span><strong class="command">dnssec-keygen</strong></span>
<p><span class="command"><strong>dnssec-keygen</strong></span>
creates two files, with names based
on the printed string. <code class="filename">Knnnn.+aaa+iiiii.key</code>
contains the public key, and
@@ -363,58 +474,60 @@
private
key.
</p>
<p>
<p>
The <code class="filename">.key</code> file contains a DNS KEY record
that
can be inserted into a zone file (directly or with a $INCLUDE
statement).
</p>
<p>
<p>
The <code class="filename">.private</code> file contains
algorithm-specific
fields. For obvious security reasons, this file does not have
general read permission.
</p>
<p>
<p>
Both <code class="filename">.key</code> and <code class="filename">.private</code>
files are generated for symmetric encryption algorithms such as
files are generated for symmetric cryptography algorithms such as
HMAC-MD5, even though the public and private key are equivalent.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2544492"></a><h2>EXAMPLE</h2>
<p>
</div>
<div class="refsection">
<a name="id-1.11"></a><h2>EXAMPLE</h2>
<p>
To generate a 768-bit DSA key for the domain
<strong class="userinput"><code>example.com</code></strong>, the following command would be
issued:
</p>
<p><strong class="userinput"><code>dnssec-keygen -a DSA -b 768 -n ZONE example.com</code></strong>
<p><strong class="userinput"><code>dnssec-keygen -a DSA -b 768 -n ZONE example.com</code></strong>
</p>
<p>
<p>
The command would print a string of the form:
</p>
<p><strong class="userinput"><code>Kexample.com.+003+26160</code></strong>
<p><strong class="userinput"><code>Kexample.com.+003+26160</code></strong>
</p>
<p>
In this example, <span><strong class="command">dnssec-keygen</strong></span> creates
<p>
In this example, <span class="command"><strong>dnssec-keygen</strong></span> creates
the files <code class="filename">Kexample.com.+003+26160.key</code>
and
<code class="filename">Kexample.com.+003+26160.private</code>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2544604"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
</div>
<div class="refsection">
<a name="id-1.12"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">dnssec-signzone</span>(8)
</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
<em class="citetitle">RFC 2539</em>,
<em class="citetitle">RFC 2845</em>,
<em class="citetitle">RFC 4034</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2544635"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2009, 2011, 2014 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2009, 2011, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
@@ -12,82 +12,95 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
.\" Title: dnssec\-revoke
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: October 20, 2011
'\" t
.\" Title: dnssec-revoke
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2011-10-20
.\" Manual: BIND9
.\" Source: BIND9
.\" Language: English
.\"
.TH "DNSSEC\-REVOKE" "8" "October 20, 2011" "BIND9" "BIND9"
.TH "DNSSEC\-REVOKE" "8" "2011\-10\-20" "BIND9" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
dnssec\-revoke \- Set the REVOKED bit on a DNSSEC key
dnssec-revoke \- Set the REVOKED bit on a DNSSEC key
.SH "SYNOPSIS"
.HP 14
.HP \w'\fBdnssec\-revoke\fR\ 'u
\fBdnssec\-revoke\fR [\fB\-hr\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-V\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] [\fB\-f\fR] [\fB\-R\fR] {keyfile}
.SH "DESCRIPTION"
.PP
\fBdnssec\-revoke\fR
reads a DNSSEC key file, sets the REVOKED bit on the key as defined in RFC 5011, and creates a new pair of key files containing the now\-revoked key.
reads a DNSSEC key file, sets the REVOKED bit on the key as defined in RFC 5011, and creates a new pair of key files containing the now\-revoked key\&.
.SH "OPTIONS"
.PP
\-h
.RS 4
Emit usage message and exit.
Emit usage message and exit\&.
.RE
.PP
\-K \fIdirectory\fR
.RS 4
Sets the directory in which the key files are to reside.
Sets the directory in which the key files are to reside\&.
.RE
.PP
\-r
.RS 4
After writing the new keyset files remove the original keyset files.
After writing the new keyset files remove the original keyset files\&.
.RE
.PP
\-v \fIlevel\fR
.RS 4
Sets the debugging level.
Sets the debugging level\&.
.RE
.PP
\-V
.RS 4
Prints version information.
Prints version information\&.
.RE
.PP
\-E \fIengine\fR
.RS 4
Use the given OpenSSL engine. When compiled with PKCS#11 support it defaults to pkcs11; the empty name resets it to no engine.
Use the given OpenSSL engine\&. When compiled with PKCS#11 support it defaults to pkcs11; the empty name resets it to no engine\&.
.RE
.PP
\-f
.RS 4
Force overwrite: Causes
\fBdnssec\-revoke\fR
to write the new key pair even if a file already exists matching the algorithm and key ID of the revoked key.
to write the new key pair even if a file already exists matching the algorithm and key ID of the revoked key\&.
.RE
.PP
\-R
.RS 4
Print the key tag of the key with the REVOKE bit set but do not revoke the key.
Print the key tag of the key with the REVOKE bit set but do not revoke the key\&.
.RE
.SH "SEE ALSO"
.PP
\fBdnssec\-keygen\fR(8),
\fBdnssec-keygen\fR(8),
BIND 9 Administrator Reference Manual,
RFC 5011.
.SH "AUTHOR"
.PP
Internet Systems Consortium
RFC 5011\&.
.SH "COPYRIGHT"
Copyright \(co 2009, 2011, 2014 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2009, 2011, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.br

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2009-2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2009-2012, 2014, 2015, 2017 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -79,7 +79,8 @@ main(int argc, char **argv) {
#else
const char *engine = NULL;
#endif
char *filename = NULL, *dir = NULL;
char const *filename = NULL;
char *dir = NULL;
char newname[1024], oldname[1024];
char keystr[DST_KEY_FORMATSIZE];
char *endp;
@@ -137,7 +138,7 @@ main(int argc, char **argv) {
if (isc_commandline_option != '?')
fprintf(stderr, "%s: invalid argument -%c\n",
program, isc_commandline_option);
/* Falls into */
/* FALLTHROUGH */
case 'h':
/* Does not return. */
usage();

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2009, 2011, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2009, 2011, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -17,10 +14,11 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.dnssec-revoke">
<refentryinfo>
<date>October 20, 2011</date>
</refentryinfo>
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.dnssec-revoke">
<info>
<date>2011-10-20</date>
</info>
<refmeta>
<refentrytitle><application>dnssec-revoke</application></refentrytitle>
@@ -38,35 +36,37 @@
<year>2009</year>
<year>2011</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dnssec-revoke</command>
<arg><option>-hr</option></arg>
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg><option>-V</option></arg>
<arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg><option>-f</option></arg>
<arg><option>-R</option></arg>
<arg choice="req">keyfile</arg>
<arg choice="opt" rep="norepeat"><option>-hr</option></arg>
<arg choice="opt" rep="norepeat"><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-V</option></arg>
<arg choice="opt" rep="norepeat"><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-f</option></arg>
<arg choice="opt" rep="norepeat"><option>-R</option></arg>
<arg choice="req" rep="norepeat">keyfile</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>dnssec-revoke</command>
reads a DNSSEC key file, sets the REVOKED bit on the key as defined
in RFC 5011, and creates a new pair of key files containing the
now-revoked key.
</para>
</refsect1>
</refsection>
<refsection><info><title>OPTIONS</title></info>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
@@ -77,7 +77,7 @@
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-K <replaceable class="parameter">directory</replaceable></term>
<listitem>
@@ -146,26 +146,16 @@
</listitem>
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>dnssec-keygen</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
<citetitle>BIND 9 Administrator Reference Manual</citetitle>,
<citetitle>RFC 5011</citetitle>.
</para>
</refsect1>
</refsection>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2009, 2011, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2009, 2011, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -13,84 +14,124 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>dnssec-revoke</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.dnssec-revoke"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">dnssec-revoke</span> &#8212; Set the REVOKED bit on a DNSSEC key</p>
<p>
<span class="application">dnssec-revoke</span>
&#8212; Set the REVOKED bit on a DNSSEC key
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">dnssec-revoke</code> [<code class="option">-hr</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-V</code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] [<code class="option">-f</code>] [<code class="option">-R</code>] {keyfile}</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543397"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">dnssec-revoke</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">dnssec-revoke</code>
[<code class="option">-hr</code>]
[<code class="option">-v <em class="replaceable"><code>level</code></em></code>]
[<code class="option">-V</code>]
[<code class="option">-K <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-E <em class="replaceable"><code>engine</code></em></code>]
[<code class="option">-f</code>]
[<code class="option">-R</code>]
{keyfile}
</p></div>
</div>
<div class="refsection">
<a name="id-1.6"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>dnssec-revoke</strong></span>
reads a DNSSEC key file, sets the REVOKED bit on the key as defined
in RFC 5011, and creates a new pair of key files containing the
now-revoked key.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543409"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-h</span></dt>
<dd><p>
<dd>
<p>
Emit usage message and exit.
</p></dd>
</p>
</dd>
<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the directory in which the key files are to reside.
</p></dd>
</p>
</dd>
<dt><span class="term">-r</span></dt>
<dd><p>
<dd>
<p>
After writing the new keyset files remove the original keyset
files.
</p></dd>
</p>
</dd>
<dt><span class="term">-v <em class="replaceable"><code>level</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the debugging level.
</p></dd>
</p>
</dd>
<dt><span class="term">-V</span></dt>
<dd><p>
<dd>
<p>
Prints version information.
</p></dd>
</p>
</dd>
<dt><span class="term">-E <em class="replaceable"><code>engine</code></em></span></dt>
<dd><p>
<dd>
<p>
Use the given OpenSSL engine. When compiled with PKCS#11 support
it defaults to pkcs11; the empty name resets it to no engine.
</p></dd>
</p>
</dd>
<dt><span class="term">-f</span></dt>
<dd><p>
Force overwrite: Causes <span><strong class="command">dnssec-revoke</strong></span> to
<dd>
<p>
Force overwrite: Causes <span class="command"><strong>dnssec-revoke</strong></span> to
write the new key pair even if a file already exists matching
the algorithm and key ID of the revoked key.
</p></dd>
</p>
</dd>
<dt><span class="term">-R</span></dt>
<dd><p>
<dd>
<p>
Print the key tag of the key with the REVOKE bit set but do
not revoke the key.
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543541"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">dnssec-keygen</span>(8)
</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
<em class="citetitle">RFC 5011</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543565"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2009-2011, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2009-2011, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
@@ -12,27 +12,42 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
.\" Title: dnssec\-settime
'\" t
.\" Title: dnssec-settime
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: February 07, 2014
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2014-02-07
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "DNSSEC\-SETTIME" "8" "February 07, 2014" "BIND9" "BIND9"
.TH "DNSSEC\-SETTIME" "8" "2014\-02\-07" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
dnssec\-settime \- Set the key timing metadata for a DNSSEC key
dnssec-settime \- Set the key timing metadata for a DNSSEC key
.SH "SYNOPSIS"
.HP 15
\fBdnssec\-settime\fR [\fB\-f\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-L\ \fR\fB\fIttl\fR\fR] [\fB\-P\ \fR\fB\fIdate/offset\fR\fR] [\fB\-A\ \fR\fB\fIdate/offset\fR\fR] [\fB\-R\ \fR\fB\fIdate/offset\fR\fR] [\fB\-I\ \fR\fB\fIdate/offset\fR\fR] [\fB\-D\ \fR\fB\fIdate/offset\fR\fR] [\fB\-h\fR] [\fB\-V\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] {keyfile}
.HP \w'\fBdnssec\-settime\fR\ 'u
\fBdnssec\-settime\fR [\fB\-f\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-L\ \fR\fB\fIttl\fR\fR] [\fB\-P\ \fR\fB\fIdate/offset\fR\fR] [\fB\-A\ \fR\fB\fIdate/offset\fR\fR] [\fB\-R\ \fR\fB\fIdate/offset\fR\fR] [\fB\-I\ \fR\fB\fIdate/offset\fR\fR] [\fB\-D\ \fR\fB\fIdate/offset\fR\fR] [\fB\-S\ \fR\fB\fIkey\fR\fR] [\fB\-i\ \fR\fB\fIinterval\fR\fR] [\fB\-h\fR] [\fB\-V\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] {keyfile}
.SH "DESCRIPTION"
.PP
\fBdnssec\-settime\fR
@@ -42,114 +57,114 @@ reads a DNSSEC private key file and sets the key timing metadata as specified by
\fB\-R\fR,
\fB\-I\fR, and
\fB\-D\fR
options. The metadata can then be used by
options\&. The metadata can then be used by
\fBdnssec\-signzone\fR
or other signing software to determine when a key is to be published, whether it should be used for signing a zone, etc.
or other signing software to determine when a key is to be published, whether it should be used for signing a zone, etc\&.
.PP
If none of these options is set on the command line, then
\fBdnssec\-settime\fR
simply prints the key timing metadata already stored in the key.
simply prints the key timing metadata already stored in the key\&.
.PP
When key metadata fields are changed, both files of a key pair (\fIKnnnn.+aaa+iiiii.key\fR
When key metadata fields are changed, both files of a key pair (Knnnn\&.+aaa+iiiii\&.key
and
\fIKnnnn.+aaa+iiiii.private\fR) are regenerated. Metadata fields are stored in the private file. A human\-readable description of the metadata is also placed in comments in the key file. The private file's permissions are always set to be inaccessible to anyone other than the owner (mode 0600).
Knnnn\&.+aaa+iiiii\&.private) are regenerated\&. Metadata fields are stored in the private file\&. A human\-readable description of the metadata is also placed in comments in the key file\&. The private file\*(Aqs permissions are always set to be inaccessible to anyone other than the owner (mode 0600)\&.
.SH "OPTIONS"
.PP
\-f
.RS 4
Force an update of an old\-format key with no metadata fields. Without this option,
Force an update of an old\-format key with no metadata fields\&. Without this option,
\fBdnssec\-settime\fR
will fail when attempting to update a legacy key. With this option, the key will be recreated in the new format, but with the original key data retained. The key's creation date will be set to the present time. If no other values are specified, then the key's publication and activation dates will also be set to the present time.
will fail when attempting to update a legacy key\&. With this option, the key will be recreated in the new format, but with the original key data retained\&. The key\*(Aqs creation date will be set to the present time\&. If no other values are specified, then the key\*(Aqs publication and activation dates will also be set to the present time\&.
.RE
.PP
\-K \fIdirectory\fR
.RS 4
Sets the directory in which the key files are to reside.
Sets the directory in which the key files are to reside\&.
.RE
.PP
\-L \fIttl\fR
.RS 4
Sets the default TTL to use for this key when it is converted into a DNSKEY RR. If the key is imported into a zone, this is the TTL that will be used for it, unless there was already a DNSKEY RRset in place, in which case the existing TTL would take precedence. If this value is not set and there is no existing DNSKEY RRset, the TTL will default to the SOA TTL. Setting the default TTL to
Sets the default TTL to use for this key when it is converted into a DNSKEY RR\&. If the key is imported into a zone, this is the TTL that will be used for it, unless there was already a DNSKEY RRset in place, in which case the existing TTL would take precedence\&. If this value is not set and there is no existing DNSKEY RRset, the TTL will default to the SOA TTL\&. Setting the default TTL to
0
or
none
removes it from the key.
removes it from the key\&.
.RE
.PP
\-h
.RS 4
Emit usage message and exit.
Emit usage message and exit\&.
.RE
.PP
\-V
.RS 4
Prints version information.
Prints version information\&.
.RE
.PP
\-v \fIlevel\fR
.RS 4
Sets the debugging level.
Sets the debugging level\&.
.RE
.PP
\-E \fIengine\fR
.RS 4
Use the given OpenSSL engine. When compiled with PKCS#11 support it defaults to pkcs11; the empty name resets it to no engine.
Use the given OpenSSL engine\&. When compiled with PKCS#11 support it defaults to pkcs11; the empty name resets it to no engine\&.
.RE
.SH "TIMING OPTIONS"
.PP
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS. If the argument begins with a '+' or '\-', it is interpreted as an offset from the present time. For convenience, if such an offset is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the offset is computed in years (defined as 365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour days), weeks, days, hours, or minutes, respectively. Without a suffix, the offset is computed in seconds. To unset a date, use 'none' or 'never'.
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS\&. If the argument begins with a \*(Aq+\*(Aq or \*(Aq\-\*(Aq, it is interpreted as an offset from the present time\&. For convenience, if such an offset is followed by one of the suffixes \*(Aqy\*(Aq, \*(Aqmo\*(Aq, \*(Aqw\*(Aq, \*(Aqd\*(Aq, \*(Aqh\*(Aq, or \*(Aqmi\*(Aq, then the offset is computed in years (defined as 365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour days), weeks, days, hours, or minutes, respectively\&. Without a suffix, the offset is computed in seconds\&. To unset a date, use \*(Aqnone\*(Aq or \*(Aqnever\*(Aq\&.
.PP
\-P \fIdate/offset\fR
.RS 4
Sets the date on which a key is to be published to the zone. After that date, the key will be included in the zone but will not be used to sign it.
Sets the date on which a key is to be published to the zone\&. After that date, the key will be included in the zone but will not be used to sign it\&.
.RE
.PP
\-A \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be activated. After that date, the key will be included in the zone and used to sign it.
Sets the date on which the key is to be activated\&. After that date, the key will be included in the zone and used to sign it\&.
.RE
.PP
\-R \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be revoked. After that date, the key will be flagged as revoked. It will be included in the zone and will be used to sign it.
Sets the date on which the key is to be revoked\&. After that date, the key will be flagged as revoked\&. It will be included in the zone and will be used to sign it\&.
.RE
.PP
\-I \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be retired. After that date, the key will still be included in the zone, but it will not be used to sign it.
Sets the date on which the key is to be retired\&. After that date, the key will still be included in the zone, but it will not be used to sign it\&.
.RE
.PP
\-D \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be deleted. After that date, the key will no longer be included in the zone. (It may remain in the key repository, however.)
Sets the date on which the key is to be deleted\&. After that date, the key will no longer be included in the zone\&. (It may remain in the key repository, however\&.)
.RE
.PP
\-S \fIpredecessor key\fR
.RS 4
Select a key for which the key being modified will be an explicit successor. The name, algorithm, size, and type of the predecessor key must exactly match those of the key being modified. The activation date of the successor key will be set to the inactivation date of the predecessor. The publication date will be set to the activation date minus the prepublication interval, which defaults to 30 days.
Select a key for which the key being modified will be an explicit successor\&. The name, algorithm, size, and type of the predecessor key must exactly match those of the key being modified\&. The activation date of the successor key will be set to the inactivation date of the predecessor\&. The publication date will be set to the activation date minus the prepublication interval, which defaults to 30 days\&.
.RE
.PP
\-i \fIinterval\fR
.RS 4
Sets the prepublication interval for a key. If set, then the publication and activation dates must be separated by at least this much time. If the activation date is specified but the publication date isn't, then the publication date will default to this much time before the activation date; conversely, if the publication date is specified but activation date isn't, then activation will be set to this much time after publication.
Sets the prepublication interval for a key\&. If set, then the publication and activation dates must be separated by at least this much time\&. If the activation date is specified but the publication date isn\*(Aqt, then the publication date will default to this much time before the activation date; conversely, if the publication date is specified but activation date isn\*(Aqt, then activation will be set to this much time after publication\&.
.sp
If the key is being set to be an explicit successor to another key, then the default prepublication interval is 30 days; otherwise it is zero.
If the key is being set to be an explicit successor to another key, then the default prepublication interval is 30 days; otherwise it is zero\&.
.sp
As with date offsets, if the argument is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the interval is measured in years, months, weeks, days, hours, or minutes, respectively. Without a suffix, the interval is measured in seconds.
As with date offsets, if the argument is followed by one of the suffixes \*(Aqy\*(Aq, \*(Aqmo\*(Aq, \*(Aqw\*(Aq, \*(Aqd\*(Aq, \*(Aqh\*(Aq, or \*(Aqmi\*(Aq, then the interval is measured in years, months, weeks, days, hours, or minutes, respectively\&. Without a suffix, the interval is measured in seconds\&.
.RE
.SH "PRINTING OPTIONS"
.PP
\fBdnssec\-settime\fR
can also be used to print the timing metadata associated with a key.
can also be used to print the timing metadata associated with a key\&.
.PP
\-u
.RS 4
Print times in UNIX epoch format.
Print times in UNIX epoch format\&.
.RE
.PP
\-p \fIC/P/A/R/I/D/all\fR
.RS 4
Print a specific metadata value or set of metadata values. The
Print a specific metadata value or set of metadata values\&. The
\fB\-p\fR
option may be followed by one or more of the following letters to indicate which value or values to print:
\fBC\fR
@@ -163,18 +178,19 @@ for the revocation date,
\fBI\fR
for the inactivation date, or
\fBD\fR
for the deletion date. To print all of the metadata, use
\fB\-p all\fR.
for the deletion date\&. To print all of the metadata, use
\fB\-p all\fR\&.
.RE
.SH "SEE ALSO"
.PP
\fBdnssec\-keygen\fR(8),
\fBdnssec\-signzone\fR(8),
\fBdnssec-keygen\fR(8),
\fBdnssec-signzone\fR(8),
BIND 9 Administrator Reference Manual,
RFC 5011.
RFC 5011\&.
.SH "AUTHOR"
.PP
Internet Systems Consortium
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2009\-2011, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2009-2011, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
.br

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2009-2015 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2009-2017 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -79,6 +79,11 @@ usage(void) {
"inactivation date\n");
fprintf(stderr, " -D date/[+-]offset/none: set/unset key "
"deletion date\n");
fprintf(stderr, " -S <key>: generate a successor to an existing "
"key\n");
fprintf(stderr, " -i <interval>: prepublication interval for "
"successor key "
"(default: 30 days)\n");
fprintf(stderr, "Printing options:\n");
fprintf(stderr, " -p C/P/A/R/I/D/all: print a particular time "
"value or values\n");
@@ -122,7 +127,8 @@ main(int argc, char **argv) {
#else
const char *engine = NULL;
#endif
char *filename = NULL, *directory = NULL;
const char *filename = NULL;
char *directory = NULL;
char newname[1024];
char keystr[DST_KEY_FORMATSIZE];
char *endp, *p;
@@ -298,7 +304,7 @@ main(int argc, char **argv) {
if (isc_commandline_option != '?')
fprintf(stderr, "%s: invalid argument -%c\n",
program, isc_commandline_option);
/* Falls into */
/* FALLTHROUGH */
case 'h':
/* Does not return. */
usage();
@@ -377,13 +383,16 @@ main(int argc, char **argv) {
"You must set one before\n\t"
"generating a successor.");
pub = prevact - prepub;
if (pub < now && prepub != 0)
fatal("Predecessor will become inactive before the\n\t"
"prepublication period ends. Either change "
"its inactivation date,\n\t"
"or use the -i option to set a shorter "
"prepublication interval.");
pub = previnact - prepub;
act = previnact;
if ((previnact - prepub) < now && prepub != 0)
fatal("Time until predecessor inactivation is\n\t"
"shorter than the prepublication interval. "
"Either change\n\t"
"predecessor inactivation date, or use the -i "
"option to set\n\t"
"a shorter prepublication interval.");
result = dst_key_gettime(prevkey, DST_TIME_DELETE, &prevdel);
if (result != ISC_R_SUCCESS)
@@ -461,11 +470,12 @@ main(int argc, char **argv) {
if ((setdel && setinact && del < inact) ||
(dst_key_gettime(key, DST_TIME_INACTIVE,
&previnact) == ISC_R_SUCCESS &&
setdel && !setinact && del < previnact) ||
setdel && !setinact && !unsetinact && del < previnact) ||
(dst_key_gettime(key, DST_TIME_DELETE,
&prevdel) == ISC_R_SUCCESS &&
setinact && !setdel && prevdel < inact) ||
(!setdel && !setinact && prevdel < previnact))
setinact && !setdel && !unsetdel && prevdel < inact) ||
(!setdel && !unsetdel && !setinact && !unsetinact &&
prevdel != 0 && prevdel < previnact))
fprintf(stderr, "%s: warning: Key is scheduled to "
"be deleted before it is\n\t"
"scheduled to be inactive.\n",

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2009-2011, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2009-2011, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -17,9 +14,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.dnssec-settime">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.dnssec-settime">
<info>
<date>2014-02-07</date>
</info>
<refentryinfo>
<date>February 07, 2014</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -40,31 +42,35 @@
<year>2011</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2017</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dnssec-settime</command>
<arg><option>-f</option></arg>
<arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-L <replaceable class="parameter">ttl</replaceable></option></arg>
<arg><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-A <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-R <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-I <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-D <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-h</option></arg>
<arg><option>-V</option></arg>
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg choice="req">keyfile</arg>
<arg choice="opt" rep="norepeat"><option>-f</option></arg>
<arg choice="opt" rep="norepeat"><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-L <replaceable class="parameter">ttl</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-A <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-R <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-I <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-D <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-S <replaceable class="parameter">key</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-i <replaceable class="parameter">interval</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-h</option></arg>
<arg choice="opt" rep="norepeat"><option>-V</option></arg>
<arg choice="opt" rep="norepeat"><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg choice="req" rep="norepeat">keyfile</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>dnssec-settime</command>
reads a DNSSEC private key file and sets the key timing metadata
as specified by the <option>-P</option>, <option>-A</option>,
@@ -88,10 +94,10 @@
file. The private file's permissions are always set to be
inaccessible to anyone other than the owner (mode 0600).
</para>
</refsect1>
</refsection>
<refsection><info><title>OPTIONS</title></info>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
@@ -103,13 +109,13 @@
fail when attempting to update a legacy key. With this option,
the key will be recreated in the new format, but with the
original key data retained. The key's creation date will be
set to the present time. If no other values are specified,
then the key's publication and activation dates will also
set to the present time. If no other values are specified,
then the key's publication and activation dates will also
be set to the present time.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-K <replaceable class="parameter">directory</replaceable></term>
<listitem>
@@ -143,7 +149,7 @@
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-V</term>
<listitem>
@@ -172,10 +178,10 @@
</listitem>
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>TIMING OPTIONS</title></info>
<refsect1>
<title>TIMING OPTIONS</title>
<para>
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
If the argument begins with a '+' or '-', it is interpreted as
@@ -272,7 +278,7 @@
</para>
<para>
If the key is being set to be an explicit successor to another
key, then the default prepublication interval is 30 days;
key, then the default prepublication interval is 30 days;
otherwise it is zero.
</para>
<para>
@@ -285,10 +291,10 @@
</listitem>
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>PRINTING OPTIONS</title></info>
<refsect1>
<title>PRINTING OPTIONS</title>
<para>
<command>dnssec-settime</command> can also be used to print the
timing metadata associated with a key.
@@ -323,10 +329,10 @@
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>dnssec-keygen</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
@@ -336,16 +342,6 @@
<citetitle>BIND 9 Administrator Reference Manual</citetitle>,
<citetitle>RFC 5011</citetitle>.
</para>
</refsect1>
</refsection>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2009-2011, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2009-2011, 2014-2017 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -13,40 +14,69 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>dnssec-settime</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.dnssec-settime"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">dnssec-settime</span> &#8212; Set the key timing metadata for a DNSSEC key</p>
<p>
<span class="application">dnssec-settime</span>
&#8212; Set the key timing metadata for a DNSSEC key
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">dnssec-settime</code> [<code class="option">-f</code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-L <em class="replaceable"><code>ttl</code></em></code>] [<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-A <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-R <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-I <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-h</code>] [<code class="option">-V</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] {keyfile}</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543450"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">dnssec-settime</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">dnssec-settime</code>
[<code class="option">-f</code>]
[<code class="option">-K <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-L <em class="replaceable"><code>ttl</code></em></code>]
[<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-A <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-R <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-I <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>]
[<code class="option">-S <em class="replaceable"><code>key</code></em></code>]
[<code class="option">-i <em class="replaceable"><code>interval</code></em></code>]
[<code class="option">-h</code>]
[<code class="option">-V</code>]
[<code class="option">-v <em class="replaceable"><code>level</code></em></code>]
[<code class="option">-E <em class="replaceable"><code>engine</code></em></code>]
{keyfile}
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>dnssec-settime</strong></span>
reads a DNSSEC private key file and sets the key timing metadata
as specified by the <code class="option">-P</code>, <code class="option">-A</code>,
<code class="option">-R</code>, <code class="option">-I</code>, and <code class="option">-D</code>
options. The metadata can then be used by
<span><strong class="command">dnssec-signzone</strong></span> or other signing software to
<span class="command"><strong>dnssec-signzone</strong></span> or other signing software to
determine when a key is to be published, whether it should be
used for signing a zone, etc.
</p>
<p>
<p>
If none of these options is set on the command line,
then <span><strong class="command">dnssec-settime</strong></span> simply prints the key timing
then <span class="command"><strong>dnssec-settime</strong></span> simply prints the key timing
metadata already stored in the key.
</p>
<p>
<p>
When key metadata fields are changed, both files of a key
pair (<code class="filename">Knnnn.+aaa+iiiii.key</code> and
<code class="filename">Knnnn.+aaa+iiiii.private</code>) are regenerated.
@@ -55,27 +85,35 @@
file. The private file's permissions are always set to be
inaccessible to anyone other than the owner (mode 0600).
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543498"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-f</span></dt>
<dd><p>
<dd>
<p>
Force an update of an old-format key with no metadata fields.
Without this option, <span><strong class="command">dnssec-settime</strong></span> will
Without this option, <span class="command"><strong>dnssec-settime</strong></span> will
fail when attempting to update a legacy key. With this option,
the key will be recreated in the new format, but with the
original key data retained. The key's creation date will be
set to the present time. If no other values are specified,
then the key's publication and activation dates will also
set to the present time. If no other values are specified,
then the key's publication and activation dates will also
be set to the present time.
</p></dd>
</p>
</dd>
<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the directory in which the key files are to reside.
</p></dd>
</p>
</dd>
<dt><span class="term">-L <em class="replaceable"><code>ttl</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the default TTL to use for this key when it is converted
into a DNSKEY RR. If the key is imported into a zone,
this is the TTL that will be used for it, unless there was
@@ -84,29 +122,40 @@
is no existing DNSKEY RRset, the TTL will default to the
SOA TTL. Setting the default TTL to <code class="literal">0</code>
or <code class="literal">none</code> removes it from the key.
</p></dd>
</p>
</dd>
<dt><span class="term">-h</span></dt>
<dd><p>
<dd>
<p>
Emit usage message and exit.
</p></dd>
</p>
</dd>
<dt><span class="term">-V</span></dt>
<dd><p>
<dd>
<p>
Prints version information.
</p></dd>
</p>
</dd>
<dt><span class="term">-v <em class="replaceable"><code>level</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the debugging level.
</p></dd>
</p>
</dd>
<dt><span class="term">-E <em class="replaceable"><code>engine</code></em></span></dt>
<dd><p>
<dd>
<p>
Use the given OpenSSL engine. When compiled with PKCS#11 support
it defaults to pkcs11; the empty name resets it to no engine.
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543697"></a><h2>TIMING OPTIONS</h2>
<p>
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>TIMING OPTIONS</h2>
<p>
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
If the argument begins with a '+' or '-', it is interpreted as
an offset from the present time. For convenience, if such an offset
@@ -116,39 +165,51 @@
days, hours, or minutes, respectively. Without a suffix, the offset
is computed in seconds. To unset a date, use 'none' or 'never'.
</p>
<div class="variablelist"><dl>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-P <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which a key is to be published to the zone.
After that date, the key will be included in the zone but will
not be used to sign it.
</p></dd>
</p>
</dd>
<dt><span class="term">-A <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be activated. After that
date, the key will be included in the zone and used to sign
it.
</p></dd>
</p>
</dd>
<dt><span class="term">-R <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be revoked. After that
date, the key will be flagged as revoked. It will be included
in the zone and will be used to sign it.
</p></dd>
</p>
</dd>
<dt><span class="term">-I <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be retired. After that
date, the key will still be included in the zone, but it
will not be used to sign it.
</p></dd>
</p>
</dd>
<dt><span class="term">-D <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the date on which the key is to be deleted. After that
date, the key will no longer be included in the zone. (It
may remain in the key repository, however.)
</p></dd>
</p>
</dd>
<dt><span class="term">-S <em class="replaceable"><code>predecessor key</code></em></span></dt>
<dd><p>
<dd>
<p>
Select a key for which the key being modified will be an
explicit successor. The name, algorithm, size, and type of the
predecessor key must exactly match those of the key being
@@ -156,10 +217,11 @@
to the inactivation date of the predecessor. The publication
date will be set to the activation date minus the prepublication
interval, which defaults to 30 days.
</p></dd>
</p>
</dd>
<dt><span class="term">-i <em class="replaceable"><code>interval</code></em></span></dt>
<dd>
<p>
<p>
Sets the prepublication interval for a key. If set, then
the publication and activation dates must be separated by at least
this much time. If the activation date is specified but the
@@ -168,34 +230,40 @@
the publication date is specified but activation date isn't,
then activation will be set to this much time after publication.
</p>
<p>
<p>
If the key is being set to be an explicit successor to another
key, then the default prepublication interval is 30 days;
key, then the default prepublication interval is 30 days;
otherwise it is zero.
</p>
<p>
<p>
As with date offsets, if the argument is followed by one of
the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the
interval is measured in years, months, weeks, days, hours,
or minutes, respectively. Without a suffix, the interval is
measured in seconds.
</p>
</dd>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543835"></a><h2>PRINTING OPTIONS</h2>
<p>
<span><strong class="command">dnssec-settime</strong></span> can also be used to print the
</div>
<div class="refsection">
<a name="id-1.10"></a><h2>PRINTING OPTIONS</h2>
<p>
<span class="command"><strong>dnssec-settime</strong></span> can also be used to print the
timing metadata associated with a key.
</p>
<div class="variablelist"><dl>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-u</span></dt>
<dd><p>
<dd>
<p>
Print times in UNIX epoch format.
</p></dd>
</p>
</dd>
<dt><span class="term">-p <em class="replaceable"><code>C/P/A/R/I/D/all</code></em></span></dt>
<dd><p>
<dd>
<p>
Print a specific metadata value or set of metadata values.
The <code class="option">-p</code> option may be followed by one or more
of the following letters to indicate which value or values to print:
@@ -206,21 +274,24 @@
<code class="option">I</code> for the inactivation date, or
<code class="option">D</code> for the deletion date.
To print all of the metadata, use <code class="option">-p all</code>.
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543913"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
<span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
</div>
<div class="refsection">
<a name="id-1.11"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">dnssec-keygen</span>(8)
</span>,
<span class="citerefentry">
<span class="refentrytitle">dnssec-signzone</span>(8)
</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
<em class="citetitle">RFC 5011</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543946"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,4 +1,4 @@
.\" Copyright (C) 2004-2009, 2011, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2004-2009, 2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2000-2003 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
@@ -13,438 +13,458 @@
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
.\" Title: dnssec\-signzone
'\" t
.\" Title: dnssec-signzone
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: December 11, 2013
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2013-12-11
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "DNSSEC\-SIGNZONE" "8" "December 11, 2013" "BIND9" "BIND9"
.TH "DNSSEC\-SIGNZONE" "8" "2013\-12\-11" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
dnssec\-signzone \- DNSSEC zone signing tool
dnssec-signzone \- DNSSEC zone signing tool
.SH "SYNOPSIS"
.HP 16
\fBdnssec\-signzone\fR [\fB\-a\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-d\ \fR\fB\fIdirectory\fR\fR] [\fB\-D\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] [\fB\-e\ \fR\fB\fIend\-time\fR\fR] [\fB\-f\ \fR\fB\fIoutput\-file\fR\fR] [\fB\-g\fR] [\fB\-h\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-k\ \fR\fB\fIkey\fR\fR] [\fB\-L\ \fR\fB\fIserial\fR\fR] [\fB\-l\ \fR\fB\fIdomain\fR\fR] [\fB\-i\ \fR\fB\fIinterval\fR\fR] [\fB\-I\ \fR\fB\fIinput\-format\fR\fR] [\fB\-j\ \fR\fB\fIjitter\fR\fR] [\fB\-N\ \fR\fB\fIsoa\-serial\-format\fR\fR] [\fB\-o\ \fR\fB\fIorigin\fR\fR] [\fB\-O\ \fR\fB\fIoutput\-format\fR\fR] [\fB\-P\fR] [\fB\-p\fR] [\fB\-R\fR] [\fB\-r\ \fR\fB\fIrandomdev\fR\fR] [\fB\-S\fR] [\fB\-s\ \fR\fB\fIstart\-time\fR\fR] [\fB\-T\ \fR\fB\fIttl\fR\fR] [\fB\-t\fR] [\fB\-u\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-V\fR] [\fB\-X\ \fR\fB\fIextended\ end\-time\fR\fR] [\fB\-x\fR] [\fB\-z\fR] [\fB\-3\ \fR\fB\fIsalt\fR\fR] [\fB\-H\ \fR\fB\fIiterations\fR\fR] [\fB\-A\fR] {zonefile} [key...]
.HP \w'\fBdnssec\-signzone\fR\ 'u
\fBdnssec\-signzone\fR [\fB\-a\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-d\ \fR\fB\fIdirectory\fR\fR] [\fB\-D\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] [\fB\-e\ \fR\fB\fIend\-time\fR\fR] [\fB\-f\ \fR\fB\fIoutput\-file\fR\fR] [\fB\-g\fR] [\fB\-h\fR] [\fB\-i\ \fR\fB\fIinterval\fR\fR] [\fB\-I\ \fR\fB\fIinput\-format\fR\fR] [\fB\-j\ \fR\fB\fIjitter\fR\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-k\ \fR\fB\fIkey\fR\fR] [\fB\-L\ \fR\fB\fIserial\fR\fR] [\fB\-l\ \fR\fB\fIdomain\fR\fR] [\fB\-N\ \fR\fB\fIsoa\-serial\-format\fR\fR] [\fB\-o\ \fR\fB\fIorigin\fR\fR] [\fB\-O\ \fR\fB\fIoutput\-format\fR\fR] [\fB\-P\fR] [\fB\-p\fR] [\fB\-R\fR] [\fB\-r\ \fR\fB\fIrandomdev\fR\fR] [\fB\-S\fR] [\fB\-s\ \fR\fB\fIstart\-time\fR\fR] [\fB\-T\ \fR\fB\fIttl\fR\fR] [\fB\-t\fR] [\fB\-u\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-V\fR] [\fB\-X\ \fR\fB\fIextended\ end\-time\fR\fR] [\fB\-x\fR] [\fB\-z\fR] [\fB\-3\ \fR\fB\fIsalt\fR\fR] [\fB\-H\ \fR\fB\fIiterations\fR\fR] [\fB\-A\fR] {zonefile} [key...]
.SH "DESCRIPTION"
.PP
\fBdnssec\-signzone\fR
signs a zone. It generates NSEC and RRSIG records and produces a signed version of the zone. The security status of delegations from the signed zone (that is, whether the child zones are secure or not) is determined by the presence or absence of a
\fIkeyset\fR
file for each child zone.
signs a zone\&. It generates NSEC and RRSIG records and produces a signed version of the zone\&. The security status of delegations from the signed zone (that is, whether the child zones are secure or not) is determined by the presence or absence of a
keyset
file for each child zone\&.
.SH "OPTIONS"
.PP
\-a
.RS 4
Verify all generated signatures.
Verify all generated signatures\&.
.RE
.PP
\-c \fIclass\fR
.RS 4
Specifies the DNS class of the zone.
Specifies the DNS class of the zone\&.
.RE
.PP
\-C
.RS 4
Compatibility mode: Generate a
\fIkeyset\-\fR\fI\fIzonename\fR\fR
keyset\-\fIzonename\fR
file in addition to
\fIdsset\-\fR\fI\fIzonename\fR\fR
dsset\-\fIzonename\fR
when signing a zone, for use by older versions of
\fBdnssec\-signzone\fR.
\fBdnssec\-signzone\fR\&.
.RE
.PP
\-d \fIdirectory\fR
.RS 4
Look for
\fIdsset\-\fR
dsset\-
or
\fIkeyset\-\fR
keyset\-
files in
\fBdirectory\fR.
\fBdirectory\fR\&.
.RE
.PP
\-D
.RS 4
Output only those record types automatically managed by
\fBdnssec\-signzone\fR, i.e. RRSIG, NSEC, NSEC3 and NSEC3PARAM records. If smart signing (\fB\-S\fR) is used, DNSKEY records are also included. The resulting file can be included in the original zone file with
\fB$INCLUDE\fR. This option cannot be combined with
\fBdnssec\-signzone\fR, i\&.e\&. RRSIG, NSEC, NSEC3 and NSEC3PARAM records\&. If smart signing (\fB\-S\fR) is used, DNSKEY records are also included\&. The resulting file can be included in the original zone file with
\fB$INCLUDE\fR\&. This option cannot be combined with
\fB\-O raw\fR
or serial number updating.
or serial number updating\&.
.RE
.PP
\-E \fIengine\fR
.RS 4
Uses a crypto hardware (OpenSSL engine) for the crypto operations it supports, for instance signing with private keys from a secure key store. When compiled with PKCS#11 support it defaults to pkcs11; the empty name resets it to no engine.
Uses a crypto hardware (OpenSSL engine) for the crypto operations it supports, for instance signing with private keys from a secure key store\&. When compiled with PKCS#11 support it defaults to pkcs11; the empty name resets it to no engine\&.
.RE
.PP
\-g
.RS 4
Generate DS records for child zones from
\fIdsset\-\fR
dsset\-
or
\fIkeyset\-\fR
file. Existing DS records will be removed.
keyset\-
file\&. Existing DS records will be removed\&.
.RE
.PP
\-K \fIdirectory\fR
.RS 4
Key repository: Specify a directory to search for DNSSEC keys. If not specified, defaults to the current directory.
Key repository: Specify a directory to search for DNSSEC keys\&. If not specified, defaults to the current directory\&.
.RE
.PP
\-k \fIkey\fR
.RS 4
Treat specified key as a key signing key ignoring any key flags. This option may be specified multiple times.
Treat specified key as a key signing key ignoring any key flags\&. This option may be specified multiple times\&.
.RE
.PP
\-l \fIdomain\fR
.RS 4
Generate a DLV set in addition to the key (DNSKEY) and DS sets. The domain is appended to the name of the records.
Generate a DLV set in addition to the key (DNSKEY) and DS sets\&. The domain is appended to the name of the records\&.
.RE
.PP
\-s \fIstart\-time\fR
.RS 4
Specify the date and time when the generated RRSIG records become valid. This can be either an absolute or relative time. An absolute start time is indicated by a number in YYYYMMDDHHMMSS notation; 20000530144500 denotes 14:45:00 UTC on May 30th, 2000. A relative start time is indicated by +N, which is N seconds from the current time. If no
Specify the date and time when the generated RRSIG records become valid\&. This can be either an absolute or relative time\&. An absolute start time is indicated by a number in YYYYMMDDHHMMSS notation; 20000530144500 denotes 14:45:00 UTC on May 30th, 2000\&. A relative start time is indicated by +N, which is N seconds from the current time\&. If no
\fBstart\-time\fR
is specified, the current time minus 1 hour (to allow for clock skew) is used.
is specified, the current time minus 1 hour (to allow for clock skew) is used\&.
.RE
.PP
\-e \fIend\-time\fR
.RS 4
Specify the date and time when the generated RRSIG records expire. As with
\fBstart\-time\fR, an absolute time is indicated in YYYYMMDDHHMMSS notation. A time relative to the start time is indicated with +N, which is N seconds from the start time. A time relative to the current time is indicated with now+N. If no
Specify the date and time when the generated RRSIG records expire\&. As with
\fBstart\-time\fR, an absolute time is indicated in YYYYMMDDHHMMSS notation\&. A time relative to the start time is indicated with +N, which is N seconds from the start time\&. A time relative to the current time is indicated with now+N\&. If no
\fBend\-time\fR
is specified, 30 days from the start time is used as a default.
is specified, 30 days from the start time is used as a default\&.
\fBend\-time\fR
must be later than
\fBstart\-time\fR.
\fBstart\-time\fR\&.
.RE
.PP
\-X \fIextended end\-time\fR
.RS 4
Specify the date and time when the generated RRSIG records for the DNSKEY RRset will expire. This is to be used in cases when the DNSKEY signatures need to persist longer than signatures on other records; e.g., when the private component of the KSK is kept offline and the KSK signature is to be refreshed manually.
Specify the date and time when the generated RRSIG records for the DNSKEY RRset will expire\&. This is to be used in cases when the DNSKEY signatures need to persist longer than signatures on other records; e\&.g\&., when the private component of the KSK is kept offline and the KSK signature is to be refreshed manually\&.
.sp
As with
\fBstart\-time\fR, an absolute time is indicated in YYYYMMDDHHMMSS notation. A time relative to the start time is indicated with +N, which is N seconds from the start time. A time relative to the current time is indicated with now+N. If no
\fBstart\-time\fR, an absolute time is indicated in YYYYMMDDHHMMSS notation\&. A time relative to the start time is indicated with +N, which is N seconds from the start time\&. A time relative to the current time is indicated with now+N\&. If no
\fBextended end\-time\fR
is specified, the value of
\fBend\-time\fR
is used as the default. (\fBend\-time\fR, in turn, defaults to 30 days from the start time.)
is used as the default\&. (\fBend\-time\fR, in turn, defaults to 30 days from the start time\&.)
\fBextended end\-time\fR
must be later than
\fBstart\-time\fR.
\fBstart\-time\fR\&.
.RE
.PP
\-f \fIoutput\-file\fR
.RS 4
The name of the output file containing the signed zone. The default is to append
\fI.signed\fR
to the input filename. If
The name of the output file containing the signed zone\&. The default is to append
\&.signed
to the input filename\&. If
\fBoutput\-file\fR
is set to
"\-", then the signed zone is written to the standard output, with a default output format of "full".
"\-", then the signed zone is written to the standard output, with a default output format of "full"\&.
.RE
.PP
\-h
.RS 4
Prints a short summary of the options and arguments to
\fBdnssec\-signzone\fR.
\fBdnssec\-signzone\fR\&.
.RE
.PP
\-V
.RS 4
Prints version information.
Prints version information\&.
.RE
.PP
\-i \fIinterval\fR
.RS 4
When a previously\-signed zone is passed as input, records may be resigned. The
When a previously\-signed zone is passed as input, records may be resigned\&. The
\fBinterval\fR
option specifies the cycle interval as an offset from the current time (in seconds). If a RRSIG record expires after the cycle interval, it is retained. Otherwise, it is considered to be expiring soon, and it will be replaced.
option specifies the cycle interval as an offset from the current time (in seconds)\&. If a RRSIG record expires after the cycle interval, it is retained\&. Otherwise, it is considered to be expiring soon, and it will be replaced\&.
.sp
The default cycle interval is one quarter of the difference between the signature end and start times. So if neither
The default cycle interval is one quarter of the difference between the signature end and start times\&. So if neither
\fBend\-time\fR
or
\fBstart\-time\fR
are specified,
\fBdnssec\-signzone\fR
generates signatures that are valid for 30 days, with a cycle interval of 7.5 days. Therefore, if any existing RRSIG records are due to expire in less than 7.5 days, they would be replaced.
generates signatures that are valid for 30 days, with a cycle interval of 7\&.5 days\&. Therefore, if any existing RRSIG records are due to expire in less than 7\&.5 days, they would be replaced\&.
.RE
.PP
\-I \fIinput\-format\fR
.RS 4
The format of the input zone file. Possible formats are
The format of the input zone file\&. Possible formats are
\fB"text"\fR
(default) and
\fB"raw"\fR. This option is primarily intended to be used for dynamic signed zones so that the dumped zone file in a non\-text format containing updates can be signed directly. The use of this option does not make much sense for non\-dynamic zones.
\fB"raw"\fR\&. This option is primarily intended to be used for dynamic signed zones so that the dumped zone file in a non\-text format containing updates can be signed directly\&. The use of this option does not make much sense for non\-dynamic zones\&.
.RE
.PP
\-j \fIjitter\fR
.RS 4
When signing a zone with a fixed signature lifetime, all RRSIG records issued at the time of signing expires simultaneously. If the zone is incrementally signed, i.e. a previously\-signed zone is passed as input to the signer, all expired signatures have to be regenerated at about the same time. The
When signing a zone with a fixed signature lifetime, all RRSIG records issued at the time of signing expires simultaneously\&. If the zone is incrementally signed, i\&.e\&. a previously\-signed zone is passed as input to the signer, all expired signatures have to be regenerated at about the same time\&. The
\fBjitter\fR
option specifies a jitter window that will be used to randomize the signature expire time, thus spreading incremental signature regeneration over time.
option specifies a jitter window that will be used to randomize the signature expire time, thus spreading incremental signature regeneration over time\&.
.sp
Signature lifetime jitter also to some extent benefits validators and servers by spreading out cache expiration, i.e. if large numbers of RRSIGs don't expire at the same time from all caches there will be less congestion than if all validators need to refetch at mostly the same time.
Signature lifetime jitter also to some extent benefits validators and servers by spreading out cache expiration, i\&.e\&. if large numbers of RRSIGs don\*(Aqt expire at the same time from all caches there will be less congestion than if all validators need to refetch at mostly the same time\&.
.RE
.PP
\-L \fIserial\fR
.RS 4
When writing a signed zone to 'raw' format, set the "source serial" value in the header to the specified serial number. (This is expected to be used primarily for testing purposes.)
When writing a signed zone to \*(Aqraw\*(Aq format, set the "source serial" value in the header to the specified serial number\&. (This is expected to be used primarily for testing purposes\&.)
.RE
.PP
\-n \fIncpus\fR
.RS 4
Specifies the number of threads to use. By default, one thread is started for each detected CPU.
Specifies the number of threads to use\&. By default, one thread is started for each detected CPU\&.
.RE
.PP
\-N \fIsoa\-serial\-format\fR
.RS 4
The SOA serial number format of the signed zone. Possible formats are
The SOA serial number format of the signed zone\&. Possible formats are
\fB"keep"\fR
(default),
\fB"increment"\fR
and
\fB"unixtime"\fR.
.RS 4
\fB"unixtime"\fR\&.
.PP
\fB"keep"\fR
.RS 4
Do not modify the SOA serial number.
Do not modify the SOA serial number\&.
.RE
.PP
\fB"increment"\fR
.RS 4
Increment the SOA serial number using RFC 1982 arithmetics.
Increment the SOA serial number using RFC 1982 arithmetics\&.
.RE
.PP
\fB"unixtime"\fR
.RS 4
Set the SOA serial number to the number of seconds since epoch.
.RE
Set the SOA serial number to the number of seconds since epoch\&.
.RE
.RE
.PP
\-o \fIorigin\fR
.RS 4
The zone origin. If not specified, the name of the zone file is assumed to be the origin.
The zone origin\&. If not specified, the name of the zone file is assumed to be the origin\&.
.RE
.PP
\-O \fIoutput\-format\fR
.RS 4
The format of the output file containing the signed zone. Possible formats are
The format of the output file containing the signed zone\&. Possible formats are
\fB"text"\fR
(default)
\fB"full"\fR, which is text output in a format suitable for processing by external scripts, and
\fB"raw"\fR
or
\fB"raw=N"\fR, which store the zone in a binary format for rapid loading by
\fBnamed\fR.
\fBnamed\fR\&.
\fB"raw=N"\fR
specifies the format version of the raw zone file: if N is 0, the raw file can be read by any version of
\fBnamed\fR; if N is 1, the file can be read by release 9.9.0 or higher. The default is 1.
\fBnamed\fR; if N is 1, the file can be read by release 9\&.9\&.0 or higher\&. The default is 1\&.
.RE
.PP
\-p
.RS 4
Use pseudo\-random data when signing the zone. This is faster, but less secure, than using real random data. This option may be useful when signing large zones or when the entropy source is limited.
Use pseudo\-random data when signing the zone\&. This is faster, but less secure, than using real random data\&. This option may be useful when signing large zones or when the entropy source is limited\&.
.RE
.PP
\-P
.RS 4
Disable post sign verification tests.
Disable post sign verification tests\&.
.sp
The post sign verification test ensures that for each algorithm in use there is at least one non revoked self signed KSK key, that all revoked KSK keys are self signed, and that all records in the zone are signed by the algorithm. This option skips these tests.
The post sign verification test ensures that for each algorithm in use there is at least one non revoked self signed KSK key, that all revoked KSK keys are self signed, and that all records in the zone are signed by the algorithm\&. This option skips these tests\&.
.RE
.PP
\-Q
.RS 4
Remove signatures from keys that are no longer active.
Remove signatures from keys that are no longer active\&.
.sp
Normally, when a previously\-signed zone is passed as input to the signer, and a DNSKEY record has been removed and replaced with a new one, signatures from the old key that are still within their validity period are retained. This allows the zone to continue to validate with cached copies of the old DNSKEY RRset. The
Normally, when a previously\-signed zone is passed as input to the signer, and a DNSKEY record has been removed and replaced with a new one, signatures from the old key that are still within their validity period are retained\&. This allows the zone to continue to validate with cached copies of the old DNSKEY RRset\&. The
\fB\-Q\fR
forces
\fBdnssec\-signzone\fR
to remove signatures from keys that are no longer active. This enables ZSK rollover using the procedure described in RFC 4641, section 4.2.1.1 ("Pre\-Publish Key Rollover").
to remove signatures from keys that are no longer active\&. This enables ZSK rollover using the procedure described in RFC 4641, section 4\&.2\&.1\&.1 ("Pre\-Publish Key Rollover")\&.
.RE
.PP
\-R
.RS 4
Remove signatures from keys that are no longer published.
Remove signatures from keys that are no longer published\&.
.sp
This option is similar to
\fB\-Q\fR, except it forces
\fBdnssec\-signzone\fR
to signatures from keys that are no longer published. This enables ZSK rollover using the procedure described in RFC 4641, section 4.2.1.2 ("Double Signature Zone Signing Key Rollover").
to signatures from keys that are no longer published\&. This enables ZSK rollover using the procedure described in RFC 4641, section 4\&.2\&.1\&.2 ("Double Signature Zone Signing Key Rollover")\&.
.RE
.PP
\-r \fIrandomdev\fR
.RS 4
Specifies the source of randomness. If the operating system does not provide a
\fI/dev/random\fR
or equivalent device, the default source of randomness is keyboard input.
\fIrandomdev\fR
specifies the name of a character device or file containing random data to be used instead of the default. The special value
\fIkeyboard\fR
indicates that keyboard input should be used.
Specifies the source of randomness\&. If the operating system does not provide a
/dev/random
or equivalent device, the default source of randomness is keyboard input\&.
randomdev
specifies the name of a character device or file containing random data to be used instead of the default\&. The special value
keyboard
indicates that keyboard input should be used\&.
.RE
.PP
\-S
.RS 4
Smart signing: Instructs
\fBdnssec\-signzone\fR
to search the key repository for keys that match the zone being signed, and to include them in the zone if appropriate.
to search the key repository for keys that match the zone being signed, and to include them in the zone if appropriate\&.
.sp
When a key is found, its timing metadata is examined to determine how it should be used, according to the following rules. Each successive rule takes priority over the prior ones:
.RS 4
When a key is found, its timing metadata is examined to determine how it should be used, according to the following rules\&. Each successive rule takes priority over the prior ones:
.PP
.RS 4
If no timing metadata has been set for the key, the key is published in the zone and used to sign the zone.
If no timing metadata has been set for the key, the key is published in the zone and used to sign the zone\&.
.RE
.PP
.RS 4
If the key's publication date is set and is in the past, the key is published in the zone.
If the key\*(Aqs publication date is set and is in the past, the key is published in the zone\&.
.RE
.PP
.RS 4
If the key's activation date is set and in the past, the key is published (regardless of publication date) and used to sign the zone.
If the key\*(Aqs activation date is set and in the past, the key is published (regardless of publication date) and used to sign the zone\&.
.RE
.PP
.RS 4
If the key's revocation date is set and in the past, and the key is published, then the key is revoked, and the revoked key is used to sign the zone.
If the key\*(Aqs revocation date is set and in the past, and the key is published, then the key is revoked, and the revoked key is used to sign the zone\&.
.RE
.PP
.RS 4
If either of the key's unpublication or deletion dates are set and in the past, the key is NOT published or used to sign the zone, regardless of any other metadata.
.RE
If either of the key\*(Aqs unpublication or deletion dates are set and in the past, the key is NOT published or used to sign the zone, regardless of any other metadata\&.
.RE
.RE
.PP
\-T \fIttl\fR
.RS 4
Specifies a TTL to be used for new DNSKEY records imported into the zone from the key repository. If not specified, the default is the TTL value from the zone's SOA record. This option is ignored when signing without
\fB\-S\fR, since DNSKEY records are not imported from the key repository in that case. It is also ignored if there are any pre\-existing DNSKEY records at the zone apex, in which case new records' TTL values will be set to match them, or if any of the imported DNSKEY records had a default TTL value. In the event of a a conflict between TTL values in imported keys, the shortest one is used.
Specifies a TTL to be used for new DNSKEY records imported into the zone from the key repository\&. If not specified, the default is the TTL value from the zone\*(Aqs SOA record\&. This option is ignored when signing without
\fB\-S\fR, since DNSKEY records are not imported from the key repository in that case\&. It is also ignored if there are any pre\-existing DNSKEY records at the zone apex, in which case new records\*(Aq TTL values will be set to match them, or if any of the imported DNSKEY records had a default TTL value\&. In the event of a a conflict between TTL values in imported keys, the shortest one is used\&.
.RE
.PP
\-t
.RS 4
Print statistics at completion.
Print statistics at completion\&.
.RE
.PP
\-u
.RS 4
Update NSEC/NSEC3 chain when re\-signing a previously signed zone. With this option, a zone signed with NSEC can be switched to NSEC3, or a zone signed with NSEC3 can be switch to NSEC or to NSEC3 with different parameters. Without this option,
Update NSEC/NSEC3 chain when re\-signing a previously signed zone\&. With this option, a zone signed with NSEC can be switched to NSEC3, or a zone signed with NSEC3 can be switch to NSEC or to NSEC3 with different parameters\&. Without this option,
\fBdnssec\-signzone\fR
will retain the existing chain when re\-signing.
will retain the existing chain when re\-signing\&.
.RE
.PP
\-v \fIlevel\fR
.RS 4
Sets the debugging level.
Sets the debugging level\&.
.RE
.PP
\-x
.RS 4
Only sign the DNSKEY RRset with key\-signing keys, and omit signatures from zone\-signing keys. (This is similar to the
Only sign the DNSKEY RRset with key\-signing keys, and omit signatures from zone\-signing keys\&. (This is similar to the
\fBdnssec\-dnskey\-kskonly yes;\fR
zone option in
\fBnamed\fR.)
\fBnamed\fR\&.)
.RE
.PP
\-z
.RS 4
Ignore KSK flag on key when determining what to sign. This causes KSK\-flagged keys to sign all records, not just the DNSKEY RRset. (This is similar to the
Ignore KSK flag on key when determining what to sign\&. This causes KSK\-flagged keys to sign all records, not just the DNSKEY RRset\&. (This is similar to the
\fBupdate\-check\-ksk no;\fR
zone option in
\fBnamed\fR.)
\fBnamed\fR\&.)
.RE
.PP
\-3 \fIsalt\fR
.RS 4
Generate an NSEC3 chain with the given hex encoded salt. A dash (\fIsalt\fR) can be used to indicate that no salt is to be used when generating the NSEC3 chain.
Generate an NSEC3 chain with the given hex encoded salt\&. A dash (\fIsalt\fR) can be used to indicate that no salt is to be used when generating the NSEC3 chain\&.
.RE
.PP
\-H \fIiterations\fR
.RS 4
When generating an NSEC3 chain, use this many iterations. The default is 10.
When generating an NSEC3 chain, use this many iterations\&. The default is 10\&.
.RE
.PP
\-A
.RS 4
When generating an NSEC3 chain set the OPTOUT flag on all NSEC3 records and do not generate NSEC3 records for insecure delegations.
When generating an NSEC3 chain set the OPTOUT flag on all NSEC3 records and do not generate NSEC3 records for insecure delegations\&.
.sp
Using this option twice (i.e.,
\fB\-AA\fR) turns the OPTOUT flag off for all records. This is useful when using the
Using this option twice (i\&.e\&.,
\fB\-AA\fR) turns the OPTOUT flag off for all records\&. This is useful when using the
\fB\-u\fR
option to modify an NSEC3 chain which previously had OPTOUT set.
option to modify an NSEC3 chain which previously had OPTOUT set\&.
.RE
.PP
zonefile
.RS 4
The file containing the zone to be signed.
The file containing the zone to be signed\&.
.RE
.PP
key
.RS 4
Specify which keys should be used to sign the zone. If no keys are specified, then the zone will be examined for DNSKEY records at the zone apex. If these are found and there are matching private keys, in the current directory, then these will be used for signing.
Specify which keys should be used to sign the zone\&. If no keys are specified, then the zone will be examined for DNSKEY records at the zone apex\&. If these are found and there are matching private keys, in the current directory, then these will be used for signing\&.
.RE
.SH "EXAMPLE"
.PP
The following command signs the
\fBexample.com\fR
\fBexample\&.com\fR
zone with the DSA key generated by
\fBdnssec\-keygen\fR
(Kexample.com.+003+17247). Because the
(Kexample\&.com\&.+003+17247)\&. Because the
\fB\-S\fR
option is not being used, the zone's keys must be in the master file (\fIdb.example.com\fR). This invocation looks for
\fIdsset\fR
files, in the current directory, so that DS records can be imported from them (\fB\-g\fR).
option is not being used, the zone\*(Aqs keys must be in the master file (db\&.example\&.com)\&. This invocation looks for
dsset
files, in the current directory, so that DS records can be imported from them (\fB\-g\fR)\&.
.sp
.if n \{\
.RS 4
.\}
.nf
% dnssec\-signzone \-g \-o example.com db.example.com \\
Kexample.com.+003+17247
db.example.com.signed
% dnssec\-signzone \-g \-o example\&.com db\&.example\&.com \e
Kexample\&.com\&.+003+17247
db\&.example\&.com\&.signed
%
.fi
.if n \{\
.RE
.\}
.PP
In the above example,
\fBdnssec\-signzone\fR
creates the file
\fIdb.example.com.signed\fR. This file should be referenced in a zone statement in a
\fInamed.conf\fR
file.
db\&.example\&.com\&.signed\&. This file should be referenced in a zone statement in a
named\&.conf
file\&.
.PP
This example re\-signs a previously signed zone with default parameters. The private keys are assumed to be in the current directory.
This example re\-signs a previously signed zone with default parameters\&. The private keys are assumed to be in the current directory\&.
.sp
.if n \{\
.RS 4
.\}
.nf
% cp db.example.com.signed db.example.com
% dnssec\-signzone \-o example.com db.example.com
db.example.com.signed
% cp db\&.example\&.com\&.signed db\&.example\&.com
% dnssec\-signzone \-o example\&.com db\&.example\&.com
db\&.example\&.com\&.signed
%
.fi
.if n \{\
.RE
.\}
.SH "SEE ALSO"
.PP
\fBdnssec\-keygen\fR(8),
\fBdnssec-keygen\fR(8),
BIND 9 Administrator Reference Manual,
RFC 4033,
RFC 4641.
RFC 4641\&.
.SH "AUTHOR"
.PP
Internet Systems Consortium
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2004\-2009, 2011, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2000\-2003 Internet Software Consortium.
Copyright \(co 2004-2009, 2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2000-2003 Internet Software Consortium.
.br

View File

@@ -1,5 +1,5 @@
/*
* Portions Copyright (C) 2004-2015 Internet Systems Consortium, Inc. ("ISC")
* Portions Copyright (C) 2004-2017 Internet Systems Consortium, Inc. ("ISC")
* Portions Copyright (C) 1999-2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and/or distribute this software for any
@@ -718,6 +718,17 @@ hashlist_init(hashlist_t *l, unsigned int nodes, unsigned int length) {
}
}
static void
hashlist_free(hashlist_t *l) {
if (l->hashbuf) {
free(l->hashbuf);
l->hashbuf = NULL;
l->entries = 0;
l->length = 0;
l->size = 0;
}
}
static void
hashlist_add(hashlist_t *l, const unsigned char *hash, size_t len)
{
@@ -1099,6 +1110,10 @@ signname(dns_dbnode_t *node, dns_name_t *name) {
dns_diff_clear(&add);
}
/*
* See if the node contains any non RRSIG/NSEC records and report to
* caller. Clean out extranous RRSIG records for node.
*/
static inline isc_boolean_t
active_node(dns_dbnode_t *node) {
dns_rdatasetiter_t *rdsiter = NULL;
@@ -1771,9 +1786,12 @@ nsecify(void) {
continue;
}
if (dns_name_equal(name, gorigin))
if (dns_name_equal(name, gorigin)) {
remove_records(node, dns_rdatatype_nsec3param,
ISC_TRUE);
/* Clean old rrsigs at apex. */
(void)active_node(node);
}
if (is_delegation(gdb, gversion, gorigin, name, node, &nsttl)) {
zonecut = dns_fixedname_name(&fzonecut);
@@ -1946,7 +1964,7 @@ addnsec3(dns_name_t *name, dns_dbnode_t *node,
* any NSEC3 records which have the same parameters as the chain we
* are building.
*
* XXXMPA Should we also check that it of the form <hash>.<origin>?
* XXXMPA Should we also check that it of the form &lt;hash&gt;.&lt;origin&gt;?
*/
static void
nsec3clean(dns_name_t *name, dns_dbnode_t *node,
@@ -2189,8 +2207,11 @@ nsec3ify(unsigned int hashalg, dns_iterations_t iterations,
continue;
}
if (dns_name_equal(name, gorigin))
if (dns_name_equal(name, gorigin)) {
remove_records(node, dns_rdatatype_nsec, ISC_TRUE);
/* Clean old rrsigs at apex. */
(void)active_node(node);
}
result = dns_dbiterator_next(dbiter);
nextnode = NULL;
@@ -2762,18 +2783,18 @@ writeset(const char *prefix, dns_rdatatype_t type) {
result = dns_name_tofilenametext(gorigin, ISC_FALSE, &namebuf);
check_result(result, "dns_name_tofilenametext");
isc_buffer_putuint8(&namebuf, 0);
filenamelen = strlen(prefix) + strlen(namestr);
filenamelen = strlen(prefix) + strlen(namestr) + 1;
if (dsdir != NULL)
filenamelen += strlen(dsdir) + 1;
filename = isc_mem_get(mctx, filenamelen + 1);
filename = isc_mem_get(mctx, filenamelen);
if (filename == NULL)
fatal("out of memory");
if (dsdir != NULL)
sprintf(filename, "%s/", dsdir);
snprintf(filename, filenamelen, "%s/", dsdir);
else
filename[0] = 0;
strcat(filename, prefix);
strcat(filename, namestr);
strlcat(filename, prefix, filenamelen);
strlcat(filename, namestr, filenamelen);
dns_diff_init(mctx, &diff);
@@ -2869,7 +2890,7 @@ writeset(const char *prefix, dns_rdatatype_t type) {
result = dns_master_dump(mctx, db, dbversion, style, filename);
check_result(result, "dns_master_dump");
isc_mem_put(mctx, filename, filenamelen + 1);
isc_mem_put(mctx, filename, filenamelen);
dns_db_closeversion(db, &dbversion, ISC_FALSE);
dns_db_detach(&db);
@@ -3421,12 +3442,13 @@ main(int argc, char *argv[]) {
origin = file;
if (output == NULL) {
size_t size;
free_output = ISC_TRUE;
output = isc_mem_allocate(mctx,
strlen(file) + strlen(".signed") + 1);
size = strlen(file) + strlen(".signed") + 1;
output = isc_mem_allocate(mctx, size);
if (output == NULL)
fatal("out of memory");
sprintf(output, "%s.signed", file);
snprintf(output, size, "%s.signed", file);
}
if (inputformatstr != NULL) {
@@ -3585,6 +3607,8 @@ main(int argc, char *argv[]) {
if (nsec3iter > max)
fatal("NSEC3 iterations too big for weakest DNSKEY "
"strength. Maximum iterations allowed %u.", max);
} else {
hashlist_init(&hashlist, 0, 0); /* silence clang */
}
gversion = NULL;
@@ -3742,6 +3766,8 @@ main(int argc, char *argv[]) {
dns_db_closeversion(gdb, &gversion, ISC_FALSE);
dns_db_detach(&gdb);
hashlist_free(&hashlist);
while (!ISC_LIST_EMPTY(keylist)) {
key = ISC_LIST_HEAD(keylist);
ISC_LIST_UNLINK(keylist, key, link);

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2004-2009, 2011, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004-2009, 2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2003 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -18,9 +15,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.dnssec-signzone">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.dnssec-signzone">
<info>
<date>2013-12-11</date>
</info>
<refentryinfo>
<date>December 11, 2013</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -45,6 +47,9 @@
<year>2011</year>
<year>2013</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<year>2017</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
<copyright>
@@ -57,51 +62,51 @@
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dnssec-signzone</command>
<arg><option>-a</option></arg>
<arg><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg><option>-d <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-D</option></arg>
<arg><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg><option>-e <replaceable class="parameter">end-time</replaceable></option></arg>
<arg><option>-f <replaceable class="parameter">output-file</replaceable></option></arg>
<arg><option>-g</option></arg>
<arg><option>-h</option></arg>
<arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-k <replaceable class="parameter">key</replaceable></option></arg>
<arg><option>-L <replaceable class="parameter">serial</replaceable></option></arg>
<arg><option>-l <replaceable class="parameter">domain</replaceable></option></arg>
<arg><option>-i <replaceable class="parameter">interval</replaceable></option></arg>
<arg><option>-I <replaceable class="parameter">input-format</replaceable></option></arg>
<arg><option>-j <replaceable class="parameter">jitter</replaceable></option></arg>
<arg><option>-N <replaceable class="parameter">soa-serial-format</replaceable></option></arg>
<arg><option>-o <replaceable class="parameter">origin</replaceable></option></arg>
<arg><option>-O <replaceable class="parameter">output-format</replaceable></option></arg>
<arg><option>-P</option></arg>
<arg><option>-p</option></arg>
<arg><option>-R</option></arg>
<arg><option>-r <replaceable class="parameter">randomdev</replaceable></option></arg>
<arg><option>-S</option></arg>
<arg><option>-s <replaceable class="parameter">start-time</replaceable></option></arg>
<arg><option>-T <replaceable class="parameter">ttl</replaceable></option></arg>
<arg><option>-t</option></arg>
<arg><option>-u</option></arg>
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg><option>-V</option></arg>
<arg><option>-X <replaceable class="parameter">extended end-time</replaceable></option></arg>
<arg><option>-x</option></arg>
<arg><option>-z</option></arg>
<arg><option>-3 <replaceable class="parameter">salt</replaceable></option></arg>
<arg><option>-H <replaceable class="parameter">iterations</replaceable></option></arg>
<arg><option>-A</option></arg>
<arg choice="req">zonefile</arg>
<arg rep="repeat">key</arg>
<arg choice="opt" rep="norepeat"><option>-a</option></arg>
<arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-d <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-D</option></arg>
<arg choice="opt" rep="norepeat"><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-e <replaceable class="parameter">end-time</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-f <replaceable class="parameter">output-file</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-g</option></arg>
<arg choice="opt" rep="norepeat"><option>-h</option></arg>
<arg choice="opt" rep="norepeat"><option>-i <replaceable class="parameter">interval</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-I <replaceable class="parameter">input-format</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-j <replaceable class="parameter">jitter</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-k <replaceable class="parameter">key</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-L <replaceable class="parameter">serial</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-l <replaceable class="parameter">domain</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-N <replaceable class="parameter">soa-serial-format</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-o <replaceable class="parameter">origin</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-O <replaceable class="parameter">output-format</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-P</option></arg>
<arg choice="opt" rep="norepeat"><option>-p</option></arg>
<arg choice="opt" rep="norepeat"><option>-R</option></arg>
<arg choice="opt" rep="norepeat"><option>-r <replaceable class="parameter">randomdev</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-S</option></arg>
<arg choice="opt" rep="norepeat"><option>-s <replaceable class="parameter">start-time</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-T <replaceable class="parameter">ttl</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-t</option></arg>
<arg choice="opt" rep="norepeat"><option>-u</option></arg>
<arg choice="opt" rep="norepeat"><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-V</option></arg>
<arg choice="opt" rep="norepeat"><option>-X <replaceable class="parameter">extended end-time</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-x</option></arg>
<arg choice="opt" rep="norepeat"><option>-z</option></arg>
<arg choice="opt" rep="norepeat"><option>-3 <replaceable class="parameter">salt</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-H <replaceable class="parameter">iterations</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-A</option></arg>
<arg choice="req" rep="norepeat">zonefile</arg>
<arg rep="repeat" choice="opt">key</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>dnssec-signzone</command>
signs a zone. It generates
NSEC and RRSIG records and produces a signed version of the
@@ -110,10 +115,10 @@
determined by the presence or absence of a
<filename>keyset</filename> file for each child zone.
</para>
</refsect1>
</refsection>
<refsection><info><title>OPTIONS</title></info>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
@@ -387,7 +392,7 @@
<term>-L <replaceable class="parameter">serial</replaceable></term>
<listitem>
<para>
When writing a signed zone to 'raw' format, set the "source serial"
When writing a signed zone to 'raw' format, set the "source serial"
value in the header to the specified serial number. (This is
expected to be used primarily for testing purposes.)
</para>
@@ -508,7 +513,7 @@
<para>
Normally, when a previously-signed zone is passed as input
to the signer, and a DNSKEY record has been removed and
replaced with a new one, signatures from the old key
replaced with a new one, signatures from the old key
that are still within their validity period are retained.
This allows the zone to continue to validate with cached
copies of the old DNSKEY RRset. The <option>-Q</option>
@@ -589,7 +594,7 @@
<para>
If the key's activation date is set and in the past, the
key is published (regardless of publication date) and
used to sign the zone.
used to sign the zone.
</para>
</listitem>
</varlistentry>
@@ -754,10 +759,10 @@
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>EXAMPLE</title></info>
<refsect1>
<title>EXAMPLE</title>
<para>
The following command signs the <userinput>example.com</userinput>
zone with the DSA key generated by <command>dnssec-keygen</command>
@@ -785,26 +790,16 @@ db.example.com.signed
% dnssec-signzone -o example.com db.example.com
db.example.com.signed
%</programlisting>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>dnssec-keygen</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
<citetitle>BIND 9 Administrator Reference Manual</citetitle>,
<citetitle>RFC 4033</citetitle>, <citetitle>RFC 4641</citetitle>.
</para>
</refsect1>
</refsection>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2004-2009, 2011, 2013, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2004-2009, 2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2000-2003 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
@@ -14,26 +15,78 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>dnssec-signzone</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.dnssec-signzone"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">dnssec-signzone</span> &#8212; DNSSEC zone signing tool</p>
<p>
<span class="application">dnssec-signzone</span>
&#8212; DNSSEC zone signing tool
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">dnssec-signzone</code> [<code class="option">-a</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-d <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-D</code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] [<code class="option">-e <em class="replaceable"><code>end-time</code></em></code>] [<code class="option">-f <em class="replaceable"><code>output-file</code></em></code>] [<code class="option">-g</code>] [<code class="option">-h</code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-k <em class="replaceable"><code>key</code></em></code>] [<code class="option">-L <em class="replaceable"><code>serial</code></em></code>] [<code class="option">-l <em class="replaceable"><code>domain</code></em></code>] [<code class="option">-i <em class="replaceable"><code>interval</code></em></code>] [<code class="option">-I <em class="replaceable"><code>input-format</code></em></code>] [<code class="option">-j <em class="replaceable"><code>jitter</code></em></code>] [<code class="option">-N <em class="replaceable"><code>soa-serial-format</code></em></code>] [<code class="option">-o <em class="replaceable"><code>origin</code></em></code>] [<code class="option">-O <em class="replaceable"><code>output-format</code></em></code>] [<code class="option">-P</code>] [<code class="option">-p</code>] [<code class="option">-R</code>] [<code class="option">-r <em class="replaceable"><code>randomdev</code></em></code>] [<code class="option">-S</code>] [<code class="option">-s <em class="replaceable"><code>start-time</code></em></code>] [<code class="option">-T <em class="replaceable"><code>ttl</code></em></code>] [<code class="option">-t</code>] [<code class="option">-u</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-V</code>] [<code class="option">-X <em class="replaceable"><code>extended end-time</code></em></code>] [<code class="option">-x</code>] [<code class="option">-z</code>] [<code class="option">-3 <em class="replaceable"><code>salt</code></em></code>] [<code class="option">-H <em class="replaceable"><code>iterations</code></em></code>] [<code class="option">-A</code>] {zonefile} [key...]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543644"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">dnssec-signzone</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">dnssec-signzone</code>
[<code class="option">-a</code>]
[<code class="option">-c <em class="replaceable"><code>class</code></em></code>]
[<code class="option">-d <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-D</code>]
[<code class="option">-E <em class="replaceable"><code>engine</code></em></code>]
[<code class="option">-e <em class="replaceable"><code>end-time</code></em></code>]
[<code class="option">-f <em class="replaceable"><code>output-file</code></em></code>]
[<code class="option">-g</code>]
[<code class="option">-h</code>]
[<code class="option">-i <em class="replaceable"><code>interval</code></em></code>]
[<code class="option">-I <em class="replaceable"><code>input-format</code></em></code>]
[<code class="option">-j <em class="replaceable"><code>jitter</code></em></code>]
[<code class="option">-K <em class="replaceable"><code>directory</code></em></code>]
[<code class="option">-k <em class="replaceable"><code>key</code></em></code>]
[<code class="option">-L <em class="replaceable"><code>serial</code></em></code>]
[<code class="option">-l <em class="replaceable"><code>domain</code></em></code>]
[<code class="option">-N <em class="replaceable"><code>soa-serial-format</code></em></code>]
[<code class="option">-o <em class="replaceable"><code>origin</code></em></code>]
[<code class="option">-O <em class="replaceable"><code>output-format</code></em></code>]
[<code class="option">-P</code>]
[<code class="option">-p</code>]
[<code class="option">-R</code>]
[<code class="option">-r <em class="replaceable"><code>randomdev</code></em></code>]
[<code class="option">-S</code>]
[<code class="option">-s <em class="replaceable"><code>start-time</code></em></code>]
[<code class="option">-T <em class="replaceable"><code>ttl</code></em></code>]
[<code class="option">-t</code>]
[<code class="option">-u</code>]
[<code class="option">-v <em class="replaceable"><code>level</code></em></code>]
[<code class="option">-V</code>]
[<code class="option">-X <em class="replaceable"><code>extended end-time</code></em></code>]
[<code class="option">-x</code>]
[<code class="option">-z</code>]
[<code class="option">-3 <em class="replaceable"><code>salt</code></em></code>]
[<code class="option">-H <em class="replaceable"><code>iterations</code></em></code>]
[<code class="option">-A</code>]
{zonefile}
[key...]
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>dnssec-signzone</strong></span>
signs a zone. It generates
NSEC and RRSIG records and produces a signed version of the
zone. The security status of delegations from the signed zone
@@ -41,73 +94,97 @@
determined by the presence or absence of a
<code class="filename">keyset</code> file for each child zone.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543659"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-a</span></dt>
<dd><p>
<dd>
<p>
Verify all generated signatures.
</p></dd>
</p>
</dd>
<dt><span class="term">-c <em class="replaceable"><code>class</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the DNS class of the zone.
</p></dd>
</p>
</dd>
<dt><span class="term">-C</span></dt>
<dd><p>
<dd>
<p>
Compatibility mode: Generate a
<code class="filename">keyset-<em class="replaceable"><code>zonename</code></em></code>
file in addition to
<code class="filename">dsset-<em class="replaceable"><code>zonename</code></em></code>
when signing a zone, for use by older versions of
<span><strong class="command">dnssec-signzone</strong></span>.
</p></dd>
<span class="command"><strong>dnssec-signzone</strong></span>.
</p>
</dd>
<dt><span class="term">-d <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
<dd>
<p>
Look for <code class="filename">dsset-</code> or
<code class="filename">keyset-</code> files in <code class="option">directory</code>.
</p></dd>
</p>
</dd>
<dt><span class="term">-D</span></dt>
<dd><p>
<dd>
<p>
Output only those record types automatically managed by
<span><strong class="command">dnssec-signzone</strong></span>, i.e. RRSIG, NSEC,
<span class="command"><strong>dnssec-signzone</strong></span>, i.e. RRSIG, NSEC,
NSEC3 and NSEC3PARAM records. If smart signing
(<code class="option">-S</code>) is used, DNSKEY records are also
included. The resulting file can be included in the original
zone file with <span><strong class="command">$INCLUDE</strong></span>. This option
zone file with <span class="command"><strong>$INCLUDE</strong></span>. This option
cannot be combined with <code class="option">-O raw</code> or serial
number updating.
</p></dd>
</p>
</dd>
<dt><span class="term">-E <em class="replaceable"><code>engine</code></em></span></dt>
<dd><p>
<dd>
<p>
Uses a crypto hardware (OpenSSL engine) for the crypto operations
it supports, for instance signing with private keys from
a secure key store. When compiled with PKCS#11 support
it defaults to pkcs11; the empty name resets it to no engine.
</p></dd>
</p>
</dd>
<dt><span class="term">-g</span></dt>
<dd><p>
<dd>
<p>
Generate DS records for child zones from
<code class="filename">dsset-</code> or <code class="filename">keyset-</code>
file. Existing DS records will be removed.
</p></dd>
</p>
</dd>
<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
<dd>
<p>
Key repository: Specify a directory to search for DNSSEC keys.
If not specified, defaults to the current directory.
</p></dd>
</p>
</dd>
<dt><span class="term">-k <em class="replaceable"><code>key</code></em></span></dt>
<dd><p>
<dd>
<p>
Treat specified key as a key signing key ignoring any
key flags. This option may be specified multiple times.
</p></dd>
</p>
</dd>
<dt><span class="term">-l <em class="replaceable"><code>domain</code></em></span></dt>
<dd><p>
<dd>
<p>
Generate a DLV set in addition to the key (DNSKEY) and DS sets.
The domain is appended to the name of the records.
</p></dd>
</p>
</dd>
<dt><span class="term">-s <em class="replaceable"><code>start-time</code></em></span></dt>
<dd><p>
<dd>
<p>
Specify the date and time when the generated RRSIG records
become valid. This can be either an absolute or relative
time. An absolute start time is indicated by a number
@@ -116,9 +193,11 @@
indicated by +N, which is N seconds from the current time.
If no <code class="option">start-time</code> is specified, the current
time minus 1 hour (to allow for clock skew) is used.
</p></dd>
</p>
</dd>
<dt><span class="term">-e <em class="replaceable"><code>end-time</code></em></span></dt>
<dd><p>
<dd>
<p>
Specify the date and time when the generated RRSIG records
expire. As with <code class="option">start-time</code>, an absolute
time is indicated in YYYYMMDDHHMMSS notation. A time relative
@@ -128,10 +207,11 @@
specified, 30 days from the start time is used as a default.
<code class="option">end-time</code> must be later than
<code class="option">start-time</code>.
</p></dd>
</p>
</dd>
<dt><span class="term">-X <em class="replaceable"><code>extended end-time</code></em></span></dt>
<dd>
<p>
<p>
Specify the date and time when the generated RRSIG records
for the DNSKEY RRset will expire. This is to be used in cases
when the DNSKEY signatures need to persist longer than
@@ -139,7 +219,7 @@
of the KSK is kept offline and the KSK signature is to be
refreshed manually.
</p>
<p>
<p>
As with <code class="option">start-time</code>, an absolute
time is indicated in YYYYMMDDHHMMSS notation. A time relative
to the start time is indicated with +N, which is N seconds from
@@ -150,28 +230,34 @@
30 days from the start time.) <code class="option">extended end-time</code>
must be later than <code class="option">start-time</code>.
</p>
</dd>
</dd>
<dt><span class="term">-f <em class="replaceable"><code>output-file</code></em></span></dt>
<dd><p>
<dd>
<p>
The name of the output file containing the signed zone. The
default is to append <code class="filename">.signed</code> to
the input filename. If <code class="option">output-file</code> is
set to <code class="literal">"-"</code>, then the signed zone is
written to the standard output, with a default output
format of "full".
</p></dd>
</p>
</dd>
<dt><span class="term">-h</span></dt>
<dd><p>
<dd>
<p>
Prints a short summary of the options and arguments to
<span><strong class="command">dnssec-signzone</strong></span>.
</p></dd>
<span class="command"><strong>dnssec-signzone</strong></span>.
</p>
</dd>
<dt><span class="term">-V</span></dt>
<dd><p>
<dd>
<p>
Prints version information.
</p></dd>
</p>
</dd>
<dt><span class="term">-i <em class="replaceable"><code>interval</code></em></span></dt>
<dd>
<p>
<p>
When a previously-signed zone is passed as input, records
may be resigned. The <code class="option">interval</code> option
specifies the cycle interval as an offset from the current
@@ -179,32 +265,34 @@
cycle interval, it is retained. Otherwise, it is considered
to be expiring soon, and it will be replaced.
</p>
<p>
<p>
The default cycle interval is one quarter of the difference
between the signature end and start times. So if neither
<code class="option">end-time</code> or <code class="option">start-time</code>
are specified, <span><strong class="command">dnssec-signzone</strong></span>
are specified, <span class="command"><strong>dnssec-signzone</strong></span>
generates
signatures that are valid for 30 days, with a cycle
interval of 7.5 days. Therefore, if any existing RRSIG records
are due to expire in less than 7.5 days, they would be
replaced.
</p>
</dd>
</dd>
<dt><span class="term">-I <em class="replaceable"><code>input-format</code></em></span></dt>
<dd><p>
<dd>
<p>
The format of the input zone file.
Possible formats are <span><strong class="command">"text"</strong></span> (default)
and <span><strong class="command">"raw"</strong></span>.
Possible formats are <span class="command"><strong>"text"</strong></span> (default)
and <span class="command"><strong>"raw"</strong></span>.
This option is primarily intended to be used for dynamic
signed zones so that the dumped zone file in a non-text
format containing updates can be signed directly.
The use of this option does not make much sense for
non-dynamic zones.
</p></dd>
</p>
</dd>
<dt><span class="term">-j <em class="replaceable"><code>jitter</code></em></span></dt>
<dd>
<p>
<p>
When signing a zone with a fixed signature lifetime, all
RRSIG records issued at the time of signing expires
simultaneously. If the zone is incrementally signed, i.e.
@@ -215,116 +303,135 @@
expire time, thus spreading incremental signature
regeneration over time.
</p>
<p>
<p>
Signature lifetime jitter also to some extent benefits
validators and servers by spreading out cache expiration,
i.e. if large numbers of RRSIGs don't expire at the same time
from all caches there will be less congestion than if all
validators need to refetch at mostly the same time.
</p>
</dd>
</dd>
<dt><span class="term">-L <em class="replaceable"><code>serial</code></em></span></dt>
<dd><p>
When writing a signed zone to 'raw' format, set the "source serial"
<dd>
<p>
When writing a signed zone to 'raw' format, set the "source serial"
value in the header to the specified serial number. (This is
expected to be used primarily for testing purposes.)
</p></dd>
</p>
</dd>
<dt><span class="term">-n <em class="replaceable"><code>ncpus</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the number of threads to use. By default, one
thread is started for each detected CPU.
</p></dd>
</p>
</dd>
<dt><span class="term">-N <em class="replaceable"><code>soa-serial-format</code></em></span></dt>
<dd>
<p>
<p>
The SOA serial number format of the signed zone.
Possible formats are <span><strong class="command">"keep"</strong></span> (default),
<span><strong class="command">"increment"</strong></span> and
<span><strong class="command">"unixtime"</strong></span>.
Possible formats are <span class="command"><strong>"keep"</strong></span> (default),
<span class="command"><strong>"increment"</strong></span> and
<span class="command"><strong>"unixtime"</strong></span>.
</p>
<div class="variablelist"><dl>
<dt><span class="term"><span><strong class="command">"keep"</strong></span></span></dt>
<dd><p>Do not modify the SOA serial number.</p></dd>
<dt><span class="term"><span><strong class="command">"increment"</strong></span></span></dt>
<dd><p>Increment the SOA serial number using RFC 1982
arithmetics.</p></dd>
<dt><span class="term"><span><strong class="command">"unixtime"</strong></span></span></dt>
<dd><p>Set the SOA serial number to the number of seconds
since epoch.</p></dd>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term"><span class="command"><strong>"keep"</strong></span></span></dt>
<dd>
<p>Do not modify the SOA serial number.</p>
</dd>
<dt><span class="term"><span class="command"><strong>"increment"</strong></span></span></dt>
<dd>
<p>Increment the SOA serial number using RFC 1982
arithmetics.</p>
</dd>
<dt><span class="term"><span class="command"><strong>"unixtime"</strong></span></span></dt>
<dd>
<p>Set the SOA serial number to the number of seconds
since epoch.</p>
</dd>
</dl></div>
</dd>
</dd>
<dt><span class="term">-o <em class="replaceable"><code>origin</code></em></span></dt>
<dd><p>
<dd>
<p>
The zone origin. If not specified, the name of the zone file
is assumed to be the origin.
</p></dd>
</p>
</dd>
<dt><span class="term">-O <em class="replaceable"><code>output-format</code></em></span></dt>
<dd><p>
<dd>
<p>
The format of the output file containing the signed zone.
Possible formats are <span><strong class="command">"text"</strong></span> (default)
<span><strong class="command">"full"</strong></span>, which is text output in a
Possible formats are <span class="command"><strong>"text"</strong></span> (default)
<span class="command"><strong>"full"</strong></span>, which is text output in a
format suitable for processing by external scripts,
and <span><strong class="command">"raw"</strong></span> or <span><strong class="command">"raw=N"</strong></span>,
and <span class="command"><strong>"raw"</strong></span> or <span class="command"><strong>"raw=N"</strong></span>,
which store the zone in a binary format for rapid loading
by <span><strong class="command">named</strong></span>. <span><strong class="command">"raw=N"</strong></span>
by <span class="command"><strong>named</strong></span>. <span class="command"><strong>"raw=N"</strong></span>
specifies the format version of the raw zone file: if N
is 0, the raw file can be read by any version of
<span><strong class="command">named</strong></span>; if N is 1, the file can be
<span class="command"><strong>named</strong></span>; if N is 1, the file can be
read by release 9.9.0 or higher. The default is 1.
</p></dd>
</p>
</dd>
<dt><span class="term">-p</span></dt>
<dd><p>
<dd>
<p>
Use pseudo-random data when signing the zone. This is faster,
but less secure, than using real random data. This option
may be useful when signing large zones or when the entropy
source is limited.
</p></dd>
</p>
</dd>
<dt><span class="term">-P</span></dt>
<dd>
<p>
<p>
Disable post sign verification tests.
</p>
<p>
<p>
The post sign verification test ensures that for each algorithm
in use there is at least one non revoked self signed KSK key,
that all revoked KSK keys are self signed, and that all records
in the zone are signed by the algorithm.
This option skips these tests.
</p>
</dd>
</dd>
<dt><span class="term">-Q</span></dt>
<dd>
<p>
<p>
Remove signatures from keys that are no longer active.
</p>
<p>
<p>
Normally, when a previously-signed zone is passed as input
to the signer, and a DNSKEY record has been removed and
replaced with a new one, signatures from the old key
replaced with a new one, signatures from the old key
that are still within their validity period are retained.
This allows the zone to continue to validate with cached
copies of the old DNSKEY RRset. The <code class="option">-Q</code>
forces <span><strong class="command">dnssec-signzone</strong></span> to remove
forces <span class="command"><strong>dnssec-signzone</strong></span> to remove
signatures from keys that are no longer active. This
enables ZSK rollover using the procedure described in
RFC 4641, section 4.2.1.1 ("Pre-Publish Key Rollover").
</p>
</dd>
</dd>
<dt><span class="term">-R</span></dt>
<dd>
<p>
<p>
Remove signatures from keys that are no longer published.
</p>
<p>
<p>
This option is similar to <code class="option">-Q</code>, except it
forces <span><strong class="command">dnssec-signzone</strong></span> to signatures from
forces <span class="command"><strong>dnssec-signzone</strong></span> to signatures from
keys that are no longer published. This enables ZSK rollover
using the procedure described in RFC 4641, section 4.2.1.2
("Double Signature Zone Signing Key Rollover").
</p>
</dd>
</dd>
<dt><span class="term">-r <em class="replaceable"><code>randomdev</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the source of randomness. If the operating
system does not provide a <code class="filename">/dev/random</code>
or equivalent device, the default source of randomness
@@ -334,53 +441,65 @@
data to be used instead of the default. The special value
<code class="filename">keyboard</code> indicates that keyboard
input should be used.
</p></dd>
</p>
</dd>
<dt><span class="term">-S</span></dt>
<dd>
<p>
Smart signing: Instructs <span><strong class="command">dnssec-signzone</strong></span> to
<p>
Smart signing: Instructs <span class="command"><strong>dnssec-signzone</strong></span> to
search the key repository for keys that match the zone being
signed, and to include them in the zone if appropriate.
</p>
<p>
<p>
When a key is found, its timing metadata is examined to
determine how it should be used, according to the following
rules. Each successive rule takes priority over the prior
ones:
</p>
<div class="variablelist"><dl>
<div class="variablelist"><dl class="variablelist">
<dt></dt>
<dd><p>
<dd>
<p>
If no timing metadata has been set for the key, the key is
published in the zone and used to sign the zone.
</p></dd>
</p>
</dd>
<dt></dt>
<dd><p>
<dd>
<p>
If the key's publication date is set and is in the past, the
key is published in the zone.
</p></dd>
</p>
</dd>
<dt></dt>
<dd><p>
<dd>
<p>
If the key's activation date is set and in the past, the
key is published (regardless of publication date) and
used to sign the zone.
</p></dd>
used to sign the zone.
</p>
</dd>
<dt></dt>
<dd><p>
<dd>
<p>
If the key's revocation date is set and in the past, and the
key is published, then the key is revoked, and the revoked key
is used to sign the zone.
</p></dd>
</p>
</dd>
<dt></dt>
<dd><p>
<dd>
<p>
If either of the key's unpublication or deletion dates are set
and in the past, the key is NOT published or used to sign the
zone, regardless of any other metadata.
</p></dd>
</p>
</dd>
</dl></div>
</dd>
</dd>
<dt><span class="term">-T <em class="replaceable"><code>ttl</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies a TTL to be used for new DNSKEY records imported
into the zone from the key repository. If not
specified, the default is the TTL value from the zone's SOA
@@ -392,100 +511,121 @@
them, or if any of the imported DNSKEY records had a default
TTL value. In the event of a a conflict between TTL values in
imported keys, the shortest one is used.
</p></dd>
</p>
</dd>
<dt><span class="term">-t</span></dt>
<dd><p>
<dd>
<p>
Print statistics at completion.
</p></dd>
</p>
</dd>
<dt><span class="term">-u</span></dt>
<dd><p>
<dd>
<p>
Update NSEC/NSEC3 chain when re-signing a previously signed
zone. With this option, a zone signed with NSEC can be
switched to NSEC3, or a zone signed with NSEC3 can
be switch to NSEC or to NSEC3 with different parameters.
Without this option, <span><strong class="command">dnssec-signzone</strong></span> will
Without this option, <span class="command"><strong>dnssec-signzone</strong></span> will
retain the existing chain when re-signing.
</p></dd>
</p>
</dd>
<dt><span class="term">-v <em class="replaceable"><code>level</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the debugging level.
</p></dd>
</p>
</dd>
<dt><span class="term">-x</span></dt>
<dd><p>
<dd>
<p>
Only sign the DNSKEY RRset with key-signing keys, and omit
signatures from zone-signing keys. (This is similar to the
<span><strong class="command">dnssec-dnskey-kskonly yes;</strong></span> zone option in
<span><strong class="command">named</strong></span>.)
</p></dd>
<span class="command"><strong>dnssec-dnskey-kskonly yes;</strong></span> zone option in
<span class="command"><strong>named</strong></span>.)
</p>
</dd>
<dt><span class="term">-z</span></dt>
<dd><p>
<dd>
<p>
Ignore KSK flag on key when determining what to sign. This
causes KSK-flagged keys to sign all records, not just the
DNSKEY RRset. (This is similar to the
<span><strong class="command">update-check-ksk no;</strong></span> zone option in
<span><strong class="command">named</strong></span>.)
</p></dd>
<span class="command"><strong>update-check-ksk no;</strong></span> zone option in
<span class="command"><strong>named</strong></span>.)
</p>
</dd>
<dt><span class="term">-3 <em class="replaceable"><code>salt</code></em></span></dt>
<dd><p>
<dd>
<p>
Generate an NSEC3 chain with the given hex encoded salt.
A dash (<em class="replaceable"><code>salt</code></em>) can
be used to indicate that no salt is to be used when generating the NSEC3 chain.
</p></dd>
</p>
</dd>
<dt><span class="term">-H <em class="replaceable"><code>iterations</code></em></span></dt>
<dd><p>
<dd>
<p>
When generating an NSEC3 chain, use this many iterations. The
default is 10.
</p></dd>
</p>
</dd>
<dt><span class="term">-A</span></dt>
<dd>
<p>
<p>
When generating an NSEC3 chain set the OPTOUT flag on all
NSEC3 records and do not generate NSEC3 records for insecure
delegations.
</p>
<p>
<p>
Using this option twice (i.e., <code class="option">-AA</code>)
turns the OPTOUT flag off for all records. This is useful
when using the <code class="option">-u</code> option to modify an NSEC3
chain which previously had OPTOUT set.
</p>
</dd>
</dd>
<dt><span class="term">zonefile</span></dt>
<dd><p>
<dd>
<p>
The file containing the zone to be signed.
</p></dd>
</p>
</dd>
<dt><span class="term">key</span></dt>
<dd><p>
<dd>
<p>
Specify which keys should be used to sign the zone. If
no keys are specified, then the zone will be examined
for DNSKEY records at the zone apex. If these are found and
there are matching private keys, in the current directory,
then these will be used for signing.
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2545181"></a><h2>EXAMPLE</h2>
<p>
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>EXAMPLE</h2>
<p>
The following command signs the <strong class="userinput"><code>example.com</code></strong>
zone with the DSA key generated by <span><strong class="command">dnssec-keygen</strong></span>
(Kexample.com.+003+17247). Because the <span><strong class="command">-S</strong></span> option
zone with the DSA key generated by <span class="command"><strong>dnssec-keygen</strong></span>
(Kexample.com.+003+17247). Because the <span class="command"><strong>-S</strong></span> option
is not being used, the zone's keys must be in the master file
(<code class="filename">db.example.com</code>). This invocation looks
for <code class="filename">dsset</code> files, in the current directory,
so that DS records can be imported from them (<span><strong class="command">-g</strong></span>).
so that DS records can be imported from them (<span class="command"><strong>-g</strong></span>).
</p>
<pre class="programlisting">% dnssec-signzone -g -o example.com db.example.com \
Kexample.com.+003+17247
db.example.com.signed
%</pre>
<p>
In the above example, <span><strong class="command">dnssec-signzone</strong></span> creates
<p>
In the above example, <span class="command"><strong>dnssec-signzone</strong></span> creates
the file <code class="filename">db.example.com.signed</code>. This
file should be referenced in a zone statement in a
<code class="filename">named.conf</code> file.
</p>
<p>
<p>
This example re-signs a previously signed zone with default parameters.
The private keys are assumed to be in the current directory.
</p>
@@ -493,18 +633,18 @@ db.example.com.signed
% dnssec-signzone -o example.com db.example.com
db.example.com.signed
%</pre>
</div>
<div class="refsect1" lang="en">
<a name="id2545237"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
</div>
<div class="refsection">
<a name="id-1.10"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry">
<span class="refentrytitle">dnssec-keygen</span>(8)
</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
<em class="citetitle">RFC 4033</em>, <em class="citetitle">RFC 4641</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2545265"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div>
</div></body>
</html>

View File

@@ -1,102 +1,118 @@
.\" Copyright (C) 2012, 2014 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Copyright (C) 2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
.\" REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
.\" AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
.\" LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id$
.\"
.hy 0
.ad l
.\" Title: dnssec\-verify
'\" t
.\" Title: dnssec-verify
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: June 26, 2012
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2012-06-26
.\" Manual: BIND9
.\" Source: BIND9
.\" Source: ISC
.\" Language: English
.\"
.TH "DNSSEC\-VERIFY" "8" "June 26, 2012" "BIND9" "BIND9"
.TH "DNSSEC\-VERIFY" "8" "2012\-06\-26" "ISC" "BIND9"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
dnssec\-verify \- DNSSEC zone verification tool
dnssec-verify \- DNSSEC zone verification tool
.SH "SYNOPSIS"
.HP 14
.HP \w'\fBdnssec\-verify\fR\ 'u
\fBdnssec\-verify\fR [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] [\fB\-I\ \fR\fB\fIinput\-format\fR\fR] [\fB\-o\ \fR\fB\fIorigin\fR\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-V\fR] [\fB\-x\fR] [\fB\-z\fR] {zonefile}
.SH "DESCRIPTION"
.PP
\fBdnssec\-verify\fR
verifies that a zone is fully signed for each algorithm found in the DNSKEY RRset for the zone, and that the NSEC / NSEC3 chains are complete.
verifies that a zone is fully signed for each algorithm found in the DNSKEY RRset for the zone, and that the NSEC / NSEC3 chains are complete\&.
.SH "OPTIONS"
.PP
\-c \fIclass\fR
.RS 4
Specifies the DNS class of the zone.
Specifies the DNS class of the zone\&.
.RE
.PP
\-I \fIinput\-format\fR
.RS 4
The format of the input zone file. Possible formats are
The format of the input zone file\&. Possible formats are
\fB"text"\fR
(default) and
\fB"raw"\fR. This option is primarily intended to be used for dynamic signed zones so that the dumped zone file in a non\-text format containing updates can be verified independently. The use of this option does not make much sense for non\-dynamic zones.
\fB"raw"\fR\&. This option is primarily intended to be used for dynamic signed zones so that the dumped zone file in a non\-text format containing updates can be verified independently\&. The use of this option does not make much sense for non\-dynamic zones\&.
.RE
.PP
\-o \fIorigin\fR
.RS 4
The zone origin. If not specified, the name of the zone file is assumed to be the origin.
The zone origin\&. If not specified, the name of the zone file is assumed to be the origin\&.
.RE
.PP
\-v \fIlevel\fR
.RS 4
Sets the debugging level.
Sets the debugging level\&.
.RE
.PP
\-V
.RS 4
Prints version information.
Prints version information\&.
.RE
.PP
\-x
.RS 4
Only verify that the DNSKEY RRset is signed with key\-signing keys. Without this flag, it is assumed that the DNSKEY RRset will be signed by all active keys. When this flag is set, it will not be an error if the DNSKEY RRset is not signed by zone\-signing keys. This corresponds to the
Only verify that the DNSKEY RRset is signed with key\-signing keys\&. Without this flag, it is assumed that the DNSKEY RRset will be signed by all active keys\&. When this flag is set, it will not be an error if the DNSKEY RRset is not signed by zone\-signing keys\&. This corresponds to the
\fB\-x\fR
option in
\fBdnssec\-signzone\fR.
\fBdnssec\-signzone\fR\&.
.RE
.PP
\-z
.RS 4
Ignore the KSK flag on the keys when determining whether the zone if correctly signed. Without this flag it is assumed that there will be a non\-revoked, self\-signed DNSKEY with the KSK flag set for each algorithm and that RRsets other than DNSKEY RRset will be signed with a different DNSKEY without the KSK flag set.
Ignore the KSK flag on the keys when determining whether the zone if correctly signed\&. Without this flag it is assumed that there will be a non\-revoked, self\-signed DNSKEY with the KSK flag set for each algorithm and that RRsets other than DNSKEY RRset will be signed with a different DNSKEY without the KSK flag set\&.
.sp
With this flag set, we only require that for each algorithm, there will be at least one non\-revoked, self\-signed DNSKEY, regardless of the KSK flag state, and that other RRsets will be signed by a non\-revoked key for the same algorithm that includes the self\-signed key; the same key may be used for both purposes. This corresponds to the
With this flag set, we only require that for each algorithm, there will be at least one non\-revoked, self\-signed DNSKEY, regardless of the KSK flag state, and that other RRsets will be signed by a non\-revoked key for the same algorithm that includes the self\-signed key; the same key may be used for both purposes\&. This corresponds to the
\fB\-z\fR
option in
\fBdnssec\-signzone\fR.
\fBdnssec\-signzone\fR\&.
.RE
.PP
zonefile
.RS 4
The file containing the zone to be signed.
The file containing the zone to be signed\&.
.RE
.SH "SEE ALSO"
.PP
\fBdnssec\-signzone\fR(8),
\fBdnssec-signzone\fR(8),
BIND 9 Administrator Reference Manual,
RFC 4033.
RFC 4033\&.
.SH "AUTHOR"
.PP
Internet Systems Consortium
\fBInternet Systems Consortium, Inc\&.\fR
.SH "COPYRIGHT"
Copyright \(co 2012, 2014 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
.br

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 2012, 2014, 2015, 2017 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -110,9 +110,26 @@ loadzone(char *file, char *origin, dns_rdataclass_t rdclass, dns_db_t **db) {
check_result(result, "dns_db_create()");
result = dns_db_load2(*db, file, inputformat);
if (result != ISC_R_SUCCESS && result != DNS_R_SEENINCLUDE)
switch (result) {
case DNS_R_SEENINCLUDE:
case ISC_R_SUCCESS:
break;
case DNS_R_NOTZONETOP:
/*
* Comparing pointers (vs. using strcmp()) is intentional: we
* want to check whether -o was supplied on the command line,
* not whether origin and file contain the same string.
*/
if (origin == file) {
fatal("failed loading zone '%s' from file '%s': "
"use -o to specify a different zone origin",
origin, file);
}
/* FALLTHROUGH */
default:
fatal("failed loading zone from '%s': %s",
file, isc_result_totext(result));
}
}
ISC_PLATFORM_NORETURN_PRE static void

View File

@@ -1,8 +1,5 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2012, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -17,9 +14,14 @@
- PERFORMANCE OF THIS SOFTWARE.
-->
<refentry id="man.dnssec-verify">
<!-- Converted by db4-upgrade version 1.0 -->
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.dnssec-verify">
<info>
<date>2012-06-26</date>
</info>
<refentryinfo>
<date>June 26, 2012</date>
<corpname>ISC</corpname>
<corpauthor>Internet Systems Consortium, Inc.</corpauthor>
</refentryinfo>
<refmeta>
@@ -37,36 +39,38 @@
<copyright>
<year>2012</year>
<year>2014</year>
<year>2015</year>
<year>2016</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<cmdsynopsis sepchar=" ">
<command>dnssec-verify</command>
<arg><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg><option>-I <replaceable class="parameter">input-format</replaceable></option></arg>
<arg><option>-o <replaceable class="parameter">origin</replaceable></option></arg>
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg><option>-V</option></arg>
<arg><option>-x</option></arg>
<arg><option>-z</option></arg>
<arg choice="req">zonefile</arg>
<arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">class</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-I <replaceable class="parameter">input-format</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-o <replaceable class="parameter">origin</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg choice="opt" rep="norepeat"><option>-V</option></arg>
<arg choice="opt" rep="norepeat"><option>-x</option></arg>
<arg choice="opt" rep="norepeat"><option>-z</option></arg>
<arg choice="req" rep="norepeat">zonefile</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<refsection><info><title>DESCRIPTION</title></info>
<para><command>dnssec-verify</command>
verifies that a zone is fully signed for each algorithm found
in the DNSKEY RRset for the zone, and that the NSEC / NSEC3
chains are complete.
</para>
</refsect1>
</refsection>
<refsection><info><title>OPTIONS</title></info>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
@@ -169,10 +173,10 @@
</varlistentry>
</variablelist>
</refsect1>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<refsect1>
<title>SEE ALSO</title>
<para>
<citerefentry>
<refentrytitle>dnssec-signzone</refentrytitle><manvolnum>8</manvolnum>
@@ -180,16 +184,6 @@
<citetitle>BIND 9 Administrator Reference Manual</citetitle>,
<citetitle>RFC 4033</citetitle>.
</para>
</refsect1>
</refsection>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->
</refentry>

View File

@@ -1,5 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- Copyright (C) 2012, 2014 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2012, 2014-2016 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
@@ -13,74 +14,112 @@
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id$ -->
<html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>dnssec-verify</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry">
<a name="man.dnssec-verify"></a><div class="titlepage"></div>
<div class="refnamediv">
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">dnssec-verify</span> &#8212; DNSSEC zone verification tool</p>
<p>
<span class="application">dnssec-verify</span>
&#8212; DNSSEC zone verification tool
</p>
</div>
<div class="refsynopsisdiv">
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">dnssec-verify</code> [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] [<code class="option">-I <em class="replaceable"><code>input-format</code></em></code>] [<code class="option">-o <em class="replaceable"><code>origin</code></em></code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-V</code>] [<code class="option">-x</code>] [<code class="option">-z</code>] {zonefile}</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543405"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">dnssec-verify</strong></span>
<div class="cmdsynopsis"><p>
<code class="command">dnssec-verify</code>
[<code class="option">-c <em class="replaceable"><code>class</code></em></code>]
[<code class="option">-E <em class="replaceable"><code>engine</code></em></code>]
[<code class="option">-I <em class="replaceable"><code>input-format</code></em></code>]
[<code class="option">-o <em class="replaceable"><code>origin</code></em></code>]
[<code class="option">-v <em class="replaceable"><code>level</code></em></code>]
[<code class="option">-V</code>]
[<code class="option">-x</code>]
[<code class="option">-z</code>]
{zonefile}
</p></div>
</div>
<div class="refsection">
<a name="id-1.7"></a><h2>DESCRIPTION</h2>
<p><span class="command"><strong>dnssec-verify</strong></span>
verifies that a zone is fully signed for each algorithm found
in the DNSKEY RRset for the zone, and that the NSEC / NSEC3
chains are complete.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543417"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
</div>
<div class="refsection">
<a name="id-1.8"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl class="variablelist">
<dt><span class="term">-c <em class="replaceable"><code>class</code></em></span></dt>
<dd><p>
<dd>
<p>
Specifies the DNS class of the zone.
</p></dd>
</p>
</dd>
<dt><span class="term">-I <em class="replaceable"><code>input-format</code></em></span></dt>
<dd><p>
<dd>
<p>
The format of the input zone file.
Possible formats are <span><strong class="command">"text"</strong></span> (default)
and <span><strong class="command">"raw"</strong></span>.
Possible formats are <span class="command"><strong>"text"</strong></span> (default)
and <span class="command"><strong>"raw"</strong></span>.
This option is primarily intended to be used for dynamic
signed zones so that the dumped zone file in a non-text
format containing updates can be verified independently.
The use of this option does not make much sense for
non-dynamic zones.
</p></dd>
</p>
</dd>
<dt><span class="term">-o <em class="replaceable"><code>origin</code></em></span></dt>
<dd><p>
<dd>
<p>
The zone origin. If not specified, the name of the zone file
is assumed to be the origin.
</p></dd>
</p>
</dd>
<dt><span class="term">-v <em class="replaceable"><code>level</code></em></span></dt>
<dd><p>
<dd>
<p>
Sets the debugging level.
</p></dd>
</p>
</dd>
<dt><span class="term">-V</span></dt>
<dd><p>
<dd>
<p>
Prints version information.
</p></dd>
</p>
</dd>
<dt><span class="term">-x</span></dt>
<dd><p>
<dd>
<p>
Only verify that the DNSKEY RRset is signed with key-signing
keys. Without this flag, it is assumed that the DNSKEY RRset
will be signed by all active keys. When this flag is set,
it will not be an error if the DNSKEY RRset is not signed
by zone-signing keys. This corresponds to the <code class="option">-x</code>
option in <span><strong class="command">dnssec-signzone</strong></span>.
</p></dd>
option in <span class="command"><strong>dnssec-signzone</strong></span>.
</p>
</dd>
<dt><span class="term">-z</span></dt>
<dd>
<p>
<p>
Ignore the KSK flag on the keys when determining whether
the zone if correctly signed. Without this flag it is
assumed that there will be a non-revoked, self-signed
@@ -88,34 +127,36 @@
that RRsets other than DNSKEY RRset will be signed with
a different DNSKEY without the KSK flag set.
</p>
<p>
<p>
With this flag set, we only require that for each algorithm,
there will be at least one non-revoked, self-signed DNSKEY,
regardless of the KSK flag state, and that other RRsets
will be signed by a non-revoked key for the same algorithm
that includes the self-signed key; the same key may be used
for both purposes. This corresponds to the <code class="option">-z</code>
option in <span><strong class="command">dnssec-signzone</strong></span>.
option in <span class="command"><strong>dnssec-signzone</strong></span>.
</p>
</dd>
</dd>
<dt><span class="term">zonefile</span></dt>
<dd><p>
<dd>
<p>
The file containing the zone to be signed.
</p></dd>
</p>
</dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543640"></a><h2>SEE ALSO</h2>
<p>
<span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
</div>
<div class="refsection">
<a name="id-1.9"></a><h2>SEE ALSO</h2>
<p>
<span class="citerefentry">
<span class="refentrytitle">dnssec-signzone</span>(8)
</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
<em class="citetitle">RFC 4033</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543666"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div>
</div></body>
</html>

Some files were not shown because too many files have changed in this diff Show More