Compare commits
91
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d61392dc24 | ||
|
|
9b2eb2697d | ||
|
|
644148ca94 | ||
|
|
cf9d6b541f | ||
|
|
e81d1c4365 | ||
|
|
763ed17442 | ||
|
|
78e1b0e742 | ||
|
|
91d9a51e44 | ||
|
|
aae05daa5d | ||
|
|
ce3c4bd362 | ||
|
|
ef505e6148 | ||
|
|
6e5bc5165e | ||
|
|
75ae1f59bb | ||
|
|
b46a6d9b2f | ||
|
|
e2e00b772e | ||
|
|
7432649e34 | ||
|
|
6f9e900823 | ||
|
|
9ab6f8ac36 | ||
|
|
688b375048 | ||
|
|
1867547966 | ||
|
|
ad74027862 | ||
|
|
de0504d7af | ||
|
|
f658f6a219 | ||
|
|
3aae62c938 | ||
|
|
2fb2f90065 | ||
|
|
630424f3bc | ||
|
|
a38ef1cac6 | ||
|
|
d5de380a7c | ||
|
|
166b961979 | ||
|
|
10bf117b92 | ||
|
|
c7c06bd691 | ||
|
|
00cbc03bef | ||
|
|
3c54676758 | ||
|
|
a80f124e49 | ||
|
|
17078469da | ||
|
|
1c210d4957 | ||
|
|
2901e56bed | ||
|
|
8143baa1c5 | ||
|
|
0c55ac9cea | ||
|
|
2d80536643 | ||
|
|
07de450857 | ||
|
|
5da8799418 | ||
|
|
bfb778470a | ||
|
|
5fe566404a | ||
|
|
af353b88fe | ||
|
|
6c4f850040 | ||
|
|
3b5e12f336 | ||
|
|
90b24241b2 | ||
|
|
9c1639ead8 | ||
|
|
2840ff2dd9 | ||
|
|
f5407d206a | ||
|
|
0b1e7dff95 | ||
|
|
6d585912dc | ||
|
|
db1f35dfe8 | ||
|
|
e6d191a70c | ||
|
|
874bdcca60 | ||
|
|
6f8bc655a4 | ||
|
|
f212c720b2 | ||
|
|
0cfac3b6a2 | ||
|
|
67a3d018bd | ||
|
|
e209965393 | ||
|
|
c065d7e235 | ||
|
|
a48f76c95e | ||
|
|
e90d966657 | ||
|
|
e30629e0f1 | ||
|
|
57011672d8 | ||
|
|
7a3908784c | ||
|
|
806c07338d | ||
|
|
33dacc1073 | ||
|
|
f275a6891b | ||
|
|
4570929cfd | ||
|
|
6232249e0c | ||
|
|
e019b0ea9b | ||
|
|
07aacad8e6 | ||
|
|
8c6478be65 | ||
|
|
145229b4a9 | ||
|
|
f4d268083c | ||
|
|
1f1e984852 | ||
|
|
8af094afaa | ||
|
|
130849b80a | ||
|
|
b9cd7aabac | ||
|
|
d69f84e37e | ||
|
|
48d19b5ef7 | ||
|
|
1a2410c831 | ||
|
|
f0f7f94c3a | ||
|
|
df6009d6a9 | ||
|
|
fc8743de34 | ||
|
|
c07e71fdaf | ||
|
|
e13c57d8ad | ||
|
|
ca1c779211 | ||
|
|
7166d8c8ce |
@@ -1,3 +1,92 @@
|
||||
--- 9.6-ESV-R10 released ---
|
||||
|
||||
3638. [cleanup] Add the ability to handle ENOPROTOOPT in case it is
|
||||
encountered. [RT #34668]
|
||||
|
||||
--- 9.6-ESV-R10rc2 released ---
|
||||
|
||||
3637. [bug] 'allow-query-on' was checking the source address
|
||||
rather than the destination address. [RT #34590]
|
||||
|
||||
3636. [bug] Automatic empty zones now behave better with
|
||||
forward only "zones" beneath them. [RT #34583]
|
||||
|
||||
3634. [func] Report build-id in rndc status. Report build-id
|
||||
when building from a git repository. [RT #20422]
|
||||
|
||||
3633. [cleanup] Refactor OPT processing in named to make it easier
|
||||
to support new EDNS options. [RT #34414]
|
||||
|
||||
3631. [bug] Remove spurious warning about missing signatures when
|
||||
qtype is SIG. [RT #34600]
|
||||
|
||||
3630. [bug] Ensure correct ID computation for MD5 keys. [RT #33033]
|
||||
|
||||
3625. [bug] Don't send notify messages to machines outside of the
|
||||
test setup.
|
||||
|
||||
--- 9.6-ESV-R10rc1 released ---
|
||||
|
||||
3615. [cleanup] "configure" now finishes by printing a summary
|
||||
of optional BIND features and whether they are
|
||||
active or inactive. ("configure --enable-full-report"
|
||||
increases the verbosity of the summary.) [RT #31777]
|
||||
|
||||
3614. [port] Check for <linux/types.h>. [RT #34162]
|
||||
|
||||
3611. [bug] Improved resistance to a theoretical authentication
|
||||
attack based on differential timing. [RT #33939]
|
||||
|
||||
3608. [port] win32: added todos.pl script to ensure all text files
|
||||
the win32 build depends on are converted to DOS
|
||||
newline format. [RT #22067]
|
||||
|
||||
--- 9.6-ESV-R10b1 released ---
|
||||
|
||||
3605. [port] win32: Addressed several compatibility issues
|
||||
with newer versions of Visual Studio. [RT #33916]
|
||||
|
||||
3603. [bug] Install <isc/stat.h>. [RT #33956]
|
||||
|
||||
3600. [cleanup] dig: Fixed a typo in the warning output when receiving
|
||||
an oversized response. [RT #33910]
|
||||
|
||||
3599. [tuning] Check for pointer equivalence in name comparisons.
|
||||
[RT #18125]
|
||||
|
||||
3594. [maint] Update config.guess and config.sub. [RT #33816]
|
||||
|
||||
3592. [doc] Moved documentation of rndc command options to the
|
||||
rndc man page. [RT #33506]
|
||||
|
||||
3588. [bug] dig: addressed a memory leak in the sigchase code
|
||||
that could cause a shutdown crash. [RT #33733]
|
||||
|
||||
3587. [func] 'named -g' now checks the logging configuration but
|
||||
does not use it. [RT #33473]
|
||||
|
||||
3586. [bug] Handle errors in xmlDocDumpFormatMemoryEnc. [RT #33706]
|
||||
|
||||
3584. [security] Caching data from an incompletely signed zone could
|
||||
trigger an assertion failure in resolver.c
|
||||
(CVE-2013-3919). [RT #33690]
|
||||
|
||||
3583. [bug] Address memory leak in GSS-API processing [RT #33574]
|
||||
|
||||
3581. [bug] Changed the tcp-listen-queue default to 10. [RT #33029]
|
||||
|
||||
3580. [bug] Addressed a possible race in acache.c [RT #33602]
|
||||
|
||||
3578. [bug] 'rndc -c file' now fails if 'file' does not exist.
|
||||
[RT #33571]
|
||||
|
||||
3577. [bug] Handle zero TTL values better. [RT #33411]
|
||||
|
||||
3576. [bug] Address a shutdown race when validating. [RT #33573]
|
||||
|
||||
3574. [doc] The 'hostname' keyword was missing from server-id
|
||||
description in the named.conf man page. [RT #33476]
|
||||
|
||||
--- 9.6-ESV-R9 released ---
|
||||
|
||||
3568. [cleanup] Add a product description line to the version file,
|
||||
|
||||
@@ -1,9 +1,81 @@
|
||||
3635. [bug] Signatures were not being removed from a zone with
|
||||
only KSK keys for a algorithm. [RT #24439]
|
||||
|
||||
3632. [bug] Signature from newly inactive keys were not being
|
||||
removed. [RT #32178]
|
||||
|
||||
3627. [bug] RPZ changes were not effective on slaves. [RT #34450]
|
||||
|
||||
3624. [bug] Look for 'json_object_new_int64' when looking for a
|
||||
the json library. [RT #34449]
|
||||
|
||||
3622. [tuning] Eliminate an unnecessary lock when incrementing
|
||||
cache statistics. [RT #34339]
|
||||
|
||||
3621. [security] Incorrect bounds checking on private type 'keydata'
|
||||
can lead to a remotely triggerable REQUIRE failure
|
||||
(CVE-2013-4854). [RT #34238]
|
||||
|
||||
3619. [bug] Fixed a bug in RPZ with "recursive-only no;"
|
||||
[RT #33776]
|
||||
|
||||
3617. [bug] Named was failing to answer queries during
|
||||
"rndc reload" [RT #34098]
|
||||
|
||||
3616. [bug] Change #3613 was incomplete. [RT #34177]
|
||||
|
||||
3613. [bug] named could crash when deleting inline-signing
|
||||
zones with "rndc delzone". [RT #34066]
|
||||
|
||||
3612. [port] Check whether to use -ljson or -ljson-c. [RT #34115]
|
||||
|
||||
3610. [cleanup] win32: Some executables had been omitted from the
|
||||
installer. [RT #34116]
|
||||
|
||||
3609. [bug] Corrected a possible deadlock in applications using
|
||||
the export version of the isc_app API. [RT #33967]
|
||||
|
||||
3607. [bug] dnssec-keygen had broken 'Invalid keyfile' error
|
||||
message. [RT #34045]
|
||||
|
||||
3604. [bug] Fixed a compile-time error when building with
|
||||
JSON but not XML. [RT #33959]
|
||||
|
||||
3602. [contrib] Added DLZ Perl module, allowing Perl scripts to
|
||||
integrate with named and serve DNS data.
|
||||
(Contributed by John Eaglesham of Yahoo.)
|
||||
|
||||
3601. [bug] Added to PKCS#11 openssl patches a value len
|
||||
attribute in DH derive key. [RT #33928]
|
||||
|
||||
3598. [cleanup] Improved portability of map file code. [RT #33820]
|
||||
|
||||
3597. [bug] Ensure automatic-resigning heaps are reconstructed
|
||||
when loading zones in map format. [RT #33381]
|
||||
|
||||
3596. [port] Updated win32 build documentation, added
|
||||
dnssec-verify. [RT #22067]
|
||||
|
||||
3595. [port] win32: Fix build problems introduced by change #3550.
|
||||
[RT #33807]
|
||||
|
||||
3590. [bug] When using RRL on recursive servers, defer
|
||||
rate-limiting until after recursion is complete;
|
||||
also, use correct rcode for slipped NXDOMAIN
|
||||
responses. [RT #33604]
|
||||
|
||||
3582. [bug] Silence false positive warning regarding missing file
|
||||
directive for inline slave zones. [RT #33662]
|
||||
|
||||
3579. [maint] Updates to PKCS#11 openssl patches, supporting
|
||||
versions 0.9.8y, 1.0.0k, 1.0.1e [RT #33463]
|
||||
|
||||
3573. [bug] "rndc addzone" and "rndc delzone" incorrectly handled
|
||||
zone names containing punctuation marks and other
|
||||
nonstandard characters. [RT #33419]
|
||||
|
||||
3571. [bug] Address race condition in dns_client_startresolve().
|
||||
[RT #33234]
|
||||
3571. [bug] Address race condition in dns_client_startresolve().
|
||||
[RT #33234]
|
||||
|
||||
3570. [bug] Check internal pointers are valid when loading map
|
||||
files. [RT #33403]
|
||||
@@ -51,43 +123,43 @@
|
||||
of whether it is teated as signed or unsigned by
|
||||
the compiler. [RT #32792]
|
||||
|
||||
3514. [bug] The ranges for valid key sizes in ddns-confgen and
|
||||
rndc-confgen were too constrained. Keys up to 512
|
||||
bits are now allowed for most algorithms, and up
|
||||
to 1024 bits for hmac-sha384 and hmac-sha512.
|
||||
[RT #32753]
|
||||
3514. [bug] The ranges for valid key sizes in ddns-confgen and
|
||||
rndc-confgen were too constrained. Keys up to 512
|
||||
bits are now allowed for most algorithms, and up
|
||||
to 1024 bits for hmac-sha384 and hmac-sha512.
|
||||
[RT #32753]
|
||||
|
||||
3511. [doc] Improve documentation of redirect zones. [RT #32756]
|
||||
3511. [doc] Improve documentation of redirect zones. [RT #32756]
|
||||
|
||||
3507. [bug] Statistics channel XSL had a glitch when attempting
|
||||
to chart query data before any queries had been
|
||||
received. [RT #32620]
|
||||
3507. [bug] Statistics channel XSL had a glitch when attempting
|
||||
to chart query data before any queries had been
|
||||
received. [RT #32620]
|
||||
|
||||
3505. [bug] When setting "max-cache-size" and "max-acache-size",
|
||||
larger values than 4 gigabytes could not be set
|
||||
explicitly, though larger sizes were available
|
||||
when setting cache size to 0. This has been
|
||||
corrected; the full range is now available.
|
||||
[RT #32358]
|
||||
3505. [bug] When setting "max-cache-size" and "max-acache-size",
|
||||
larger values than 4 gigabytes could not be set
|
||||
explicitly, though larger sizes were available
|
||||
when setting cache size to 0. This has been
|
||||
corrected; the full range is now available.
|
||||
[RT #32358]
|
||||
|
||||
3500. [port] Support NAPTR regular expression validation on
|
||||
all platforms. [RT #32688]
|
||||
3500. [port] Support NAPTR regular expression validation on
|
||||
all platforms. [RT #32688]
|
||||
|
||||
3493. [contrib] Added BDBHPT dynamically-lodable DLZ module,
|
||||
contributed by Mark Goldfinch. [RT #32549]
|
||||
3493. [contrib] Added BDBHPT dynamically-lodable DLZ module,
|
||||
contributed by Mark Goldfinch. [RT #32549]
|
||||
|
||||
3492. [bug] Fixed a regression in zone loading performance
|
||||
due to lock contention. [RT #30399]
|
||||
3492. [bug] Fixed a regression in zone loading performance
|
||||
due to lock contention. [RT #30399]
|
||||
|
||||
3491. [bug] Slave zones using inline-signing must specify a
|
||||
file name. [RT #31946]
|
||||
3491. [bug] Slave zones using inline-signing must specify a
|
||||
file name. [RT #31946]
|
||||
|
||||
3490. [bug] When logging RDATA during update, truncate if it's
|
||||
too long. [RT #32365]
|
||||
3490. [bug] When logging RDATA during update, truncate if it's
|
||||
too long. [RT #32365]
|
||||
|
||||
3489. [bug] --enable-developer now turns on ISC_LIST_CHECKINIT.
|
||||
When cloning a rdataset do not copy the link contents.
|
||||
[RT #32651]
|
||||
3489. [bug] --enable-developer now turns on ISC_LIST_CHECKINIT.
|
||||
When cloning a rdataset do not copy the link contents.
|
||||
[RT #32651]
|
||||
|
||||
3488. [bug] Use after free error with DH generated keys. [RT #32649]
|
||||
|
||||
@@ -99,42 +171,42 @@
|
||||
3484. [bug] Some statistics were incorrectly rendered in XML.
|
||||
[RT #32587]
|
||||
|
||||
3480. [bug] Silence logging noise when setting up zone
|
||||
statistics. [RT #32525]
|
||||
3480. [bug] Silence logging noise when setting up zone
|
||||
statistics. [RT #32525]
|
||||
|
||||
3476. [bug] "rndc zonestatus" could report a spurious "not
|
||||
found" error on inline-signing zones. [RT #29226]
|
||||
3476. [bug] "rndc zonestatus" could report a spurious "not
|
||||
found" error on inline-signing zones. [RT #29226]
|
||||
|
||||
3475. [cleanup] Changed name of 'map' zone file format (previously
|
||||
'fast'). [RT #32458]
|
||||
3475. [cleanup] Changed name of 'map' zone file format (previously
|
||||
'fast'). [RT #32458]
|
||||
|
||||
3473. [bug] dnssec-signzone/verify could incorrectly report
|
||||
an error condition due to an empty node above an
|
||||
opt-out delegation lacking an NSEC3. [RT #32072]
|
||||
3473. [bug] dnssec-signzone/verify could incorrectly report
|
||||
an error condition due to an empty node above an
|
||||
opt-out delegation lacking an NSEC3. [RT #32072]
|
||||
|
||||
3472. [bug] The active-connections counter in the socket
|
||||
statistics could underflow. [RT #31747]
|
||||
3472. [bug] The active-connections counter in the socket
|
||||
statistics could underflow. [RT #31747]
|
||||
|
||||
3471. [bug] The number of UDP dispatches now defaults to
|
||||
the number of CPUs even if -n has been set to
|
||||
a higher value. [RT #30964]
|
||||
3471. [bug] The number of UDP dispatches now defaults to
|
||||
the number of CPUs even if -n has been set to
|
||||
a higher value. [RT #30964]
|
||||
|
||||
3470. [bug] Slave zones could fail to dump when successfully
|
||||
refreshing after an initial failure. [RT #31276]
|
||||
|
||||
3469. [bug] Handle DLZ lookup failures more gracefully. Improve
|
||||
backward compatibility between versions of DLZ dlopen
|
||||
API. [RT #32275]
|
||||
3469. [bug] Handle DLZ lookup failures more gracefully. Improve
|
||||
backward compatibility between versions of DLZ dlopen
|
||||
API. [RT #32275]
|
||||
|
||||
3468. [security] RPZ rules to generate A records (but not AAAA records)
|
||||
could trigger an assertion failure when used in
|
||||
conjunction with DNS64 (CVE-2012-5689). [RT #32141]
|
||||
3468. [security] RPZ rules to generate A records (but not AAAA records)
|
||||
could trigger an assertion failure when used in
|
||||
conjunction with DNS64 (CVE-2012-5689). [RT #32141]
|
||||
|
||||
3467. [bug] Added checks in dnssec-keygen and dnssec-settime
|
||||
to check for delete date < inactive date. [RT #31719]
|
||||
3467. [bug] Added checks in dnssec-keygen and dnssec-settime
|
||||
to check for delete date < inactive date. [RT #31719]
|
||||
|
||||
3466. [contrib] Corrected the DNS_CLIENTINFOMETHODS_VERSION check
|
||||
in DLZ example driver. [RT #32275]
|
||||
3466. [contrib] Corrected the DNS_CLIENTINFOMETHODS_VERSION check
|
||||
in DLZ example driver. [RT #32275]
|
||||
|
||||
3464. [maint] Updates to PKCS#11 openssl patches, supporting
|
||||
versions 0.9.8x, 1.0.0j, 1.0.1c [RT #29749]
|
||||
@@ -498,9 +570,9 @@
|
||||
|
||||
3122. [cleanup] dnssec-settime: corrected usage message. [RT #24664]
|
||||
|
||||
3119. [bug] When rolling to a new DNSSEC key, a private-type
|
||||
record could be created and never marked complete.
|
||||
[RT #23253]
|
||||
3119. [bug] When rolling to a new DNSSEC key, a private-type
|
||||
record could be created and never marked complete.
|
||||
[RT #23253]
|
||||
|
||||
3117. [cleanup] Remove doc and parser references to the
|
||||
never-implemented 'auto-dnssec create' option.
|
||||
@@ -510,12 +582,12 @@
|
||||
following a CNAME that points into the same zone.
|
||||
[RT #24455]
|
||||
|
||||
3114. [bug] Retain expired RRSIGs in dynamic zones if key is
|
||||
inactive and there is no replacement key. [RT #23136]
|
||||
3114. [bug] Retain expired RRSIGs in dynamic zones if key is
|
||||
inactive and there is no replacement key. [RT #23136]
|
||||
|
||||
3111. [bug] Improved consistency checks for dnssec-enable and
|
||||
dnssec-validation, added test cases to the
|
||||
checkconf system test. [RT #24398]
|
||||
3111. [bug] Improved consistency checks for dnssec-enable and
|
||||
dnssec-validation, added test cases to the
|
||||
checkconf system test. [RT #24398]
|
||||
|
||||
3108. [cleanup] dnssec-signzone: Clarified some error and
|
||||
warning messages; removed #ifdef ALLOW_KSKLESS_ZONES
|
||||
@@ -548,8 +620,8 @@
|
||||
|
||||
3093. [bug] Fix gssapi/kerberos dependencies [RT #23836]
|
||||
|
||||
3092. [bug] Signatures for records at the zone apex could go
|
||||
stale due to an incorrect timer setting. [RT #23769]
|
||||
3092. [bug] Signatures for records at the zone apex could go
|
||||
stale due to an incorrect timer setting. [RT #23769]
|
||||
|
||||
3091. [bug] Fixed a bug in which zone keys that were published
|
||||
and then subsequently activated could fail to trigger
|
||||
@@ -578,8 +650,8 @@
|
||||
3072. [bug] dns_dns64_aaaaok() potential NULL pointer dereference.
|
||||
[RT #20256]
|
||||
|
||||
3070. [bug] dnssec-signzone potential NULL pointer dereference.
|
||||
[RT #20256]
|
||||
3070. [bug] dnssec-signzone potential NULL pointer dereference.
|
||||
[RT #20256]
|
||||
|
||||
3057. [bug] "rndc secroots" would abort after the first error
|
||||
and so could miss some views. [RT #23488]
|
||||
@@ -593,14 +665,14 @@
|
||||
Wait for the initial autosigning to complete
|
||||
before running the rest of the test. [RT #23035]
|
||||
|
||||
3049. [bug] Save and restore the gid when creating creating
|
||||
named.pid at startup. [RT #23290]
|
||||
3049. [bug] Save and restore the gid when creating creating
|
||||
named.pid at startup. [RT #23290]
|
||||
|
||||
3048. [bug] Fully separate view key mangement. [RT #23419]
|
||||
|
||||
3047. [bug] DNSKEY NODATA responses not cached fixed in
|
||||
validator.c. Tests added to dnssec system test.
|
||||
[RT #22908]
|
||||
3047. [bug] DNSKEY NODATA responses not cached fixed in
|
||||
validator.c. Tests added to dnssec system test.
|
||||
[RT #22908]
|
||||
|
||||
3045. [removed] Replaced by change #3050.
|
||||
|
||||
@@ -672,10 +744,10 @@
|
||||
2977. [bug] 'nsupdate -l' report if the session key is missing.
|
||||
[RT #21670]
|
||||
|
||||
2974. [bug] Some valid UPDATE requests could fail due to a
|
||||
consistency check examining the existing version
|
||||
of the zone rather than the new version resulting
|
||||
from the UPDATE. [RT #22413]
|
||||
2974. [bug] Some valid UPDATE requests could fail due to a
|
||||
consistency check examining the existing version
|
||||
of the zone rather than the new version resulting
|
||||
from the UPDATE. [RT #22413]
|
||||
|
||||
2973. [bug] bind.keys.h was being removed by the "make clean"
|
||||
at the end of configure resulting in build failures
|
||||
@@ -688,8 +760,8 @@
|
||||
2961. [bug] Be still more selective about the non-authoritative
|
||||
answers we apply change 2748 to. [RT #22074]
|
||||
|
||||
2958. [bug] named failed to start with a missing master file.
|
||||
[RT #22076]
|
||||
2958. [bug] named failed to start with a missing master file.
|
||||
[RT #22076]
|
||||
|
||||
2949. [bug] dns_view_setnewzones() contained a memory leak if
|
||||
it was called multiple times. [RT #21942]
|
||||
@@ -812,8 +884,8 @@
|
||||
2832. [bug] Modify "struct stat" in lib/export/samples/nsprobe.c
|
||||
to avoid redefinition in some OSs [RT 20831]
|
||||
|
||||
2830. [bug] Changing the OPTOUT setting could take multiple
|
||||
passes. [RT #20813]
|
||||
2830. [bug] Changing the OPTOUT setting could take multiple
|
||||
passes. [RT #20813]
|
||||
|
||||
2829. [bug] Fixed potential node inconsistency in rbtdb.c.
|
||||
[RT #20808]
|
||||
|
||||
@@ -48,6 +48,12 @@ BIND 9
|
||||
For up-to-date release notes and errata, see
|
||||
http://www.isc.org/software/bind9/releasenotes
|
||||
|
||||
BIND 9.6-ESV-R10 (Extended Support Version)
|
||||
|
||||
BIND 9.6-ESV-R10 is a maintenance release, fixing bugs in BIND
|
||||
9.6-ESV-R9, and also patches the security flaw described in
|
||||
CVE-2013-3919.
|
||||
|
||||
BIND 9.6-ESV-R9 (Extended Support Version)
|
||||
|
||||
BIND 9.6-ESV-R9 is a maintenance release, fixing bugs in BIND
|
||||
|
||||
+1
-1
@@ -532,7 +532,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
"%s - retry with '+noedns'\n",
|
||||
rcode_totext(msg->rcode));
|
||||
if (msg != query->lookup->sendmsg && extrabytes != 0U)
|
||||
printf(";; WARNING: Messages has %u extra byte%s at "
|
||||
printf(";; WARNING: Message has %u extra byte%s at "
|
||||
"end\n", extrabytes, extrabytes != 0 ? "s" : "");
|
||||
}
|
||||
|
||||
|
||||
+39
-124
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -46,8 +46,10 @@
|
||||
|
||||
#include <dns/byaddr.h>
|
||||
#ifdef DIG_SIGCHASE
|
||||
#include <dns/callbacks.h>
|
||||
#include <dns/dnssec.h>
|
||||
#include <dns/ds.h>
|
||||
#include <dns/master.h>
|
||||
#include <dns/nsec.h>
|
||||
#include <isc/random.h>
|
||||
#include <ctype.h>
|
||||
@@ -244,11 +246,10 @@ isc_result_t prove_nx(dns_message_t * msg, dns_name_t * name,
|
||||
dns_rdataset_t ** sigrdataset);
|
||||
static void nameFromString(const char *str, dns_name_t *p_ret);
|
||||
int inf_name(dns_name_t * name1, dns_name_t * name2);
|
||||
isc_result_t opentmpkey(isc_mem_t *mctx, const char *file,
|
||||
char **tempp, FILE **fp);
|
||||
isc_result_t removetmpkey(isc_mem_t *mctx, const char *file);
|
||||
void clean_trustedkey(void);
|
||||
void insert_trustedkey(dst_key_t **key);
|
||||
isc_result_t insert_trustedkey(void *arg, dns_name_t *name,
|
||||
dns_rdataset_t *rdataset);
|
||||
#if DIG_SIGCHASE_BU
|
||||
isc_result_t getneededrr(dns_message_t *msg);
|
||||
void sigchase_bottom_up(dns_message_t *msg);
|
||||
@@ -3945,17 +3946,35 @@ sigchase_scanname(dns_rdatatype_t type, dns_rdatatype_t covers,
|
||||
return (NULL);
|
||||
}
|
||||
|
||||
void
|
||||
insert_trustedkey(dst_key_t **keyp)
|
||||
isc_result_t
|
||||
insert_trustedkey(void *arg, dns_name_t *name, dns_rdataset_t *rdataset)
|
||||
{
|
||||
if (*keyp == NULL)
|
||||
return;
|
||||
if (tk_list.nb_tk >= MAX_TRUSTED_KEY)
|
||||
return;
|
||||
isc_result_t result;
|
||||
dst_key_t *key;
|
||||
|
||||
tk_list.key[tk_list.nb_tk++] = *keyp;
|
||||
*keyp = NULL;
|
||||
return;
|
||||
UNUSED(arg);
|
||||
|
||||
if (rdataset == NULL || rdataset->type != dns_rdatatype_dnskey)
|
||||
return (ISC_R_SUCCESS);
|
||||
|
||||
for (result = dns_rdataset_first(rdataset);
|
||||
result == ISC_R_SUCCESS;
|
||||
result = dns_rdataset_next(rdataset)) {
|
||||
dns_rdata_t rdata = DNS_RDATA_INIT;
|
||||
isc_buffer_t b;
|
||||
|
||||
dns_rdataset_current(rdataset, &rdata);
|
||||
isc_buffer_init(&b, rdata.data, rdata.length);
|
||||
isc_buffer_add(&b, rdata.length);
|
||||
if (tk_list.nb_tk >= MAX_TRUSTED_KEY)
|
||||
return (ISC_R_SUCCESS);
|
||||
key = NULL;
|
||||
result = dst_key_fromdns(name, rdata.rdclass, &b, mctx, &key);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
continue;
|
||||
tk_list.key[tk_list.nb_tk++] = key;
|
||||
}
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
void
|
||||
@@ -4001,87 +4020,12 @@ removetmpkey(isc_mem_t *mctx, const char *file)
|
||||
return (result);
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
opentmpkey(isc_mem_t *mctx, const char *file, char **tempp, FILE **fp) {
|
||||
FILE *f = NULL;
|
||||
isc_result_t result;
|
||||
char *tempname = NULL;
|
||||
char *tempnamekey = NULL;
|
||||
int tempnamelen;
|
||||
int tempnamekeylen;
|
||||
char *x;
|
||||
char *cp;
|
||||
isc_uint32_t which;
|
||||
|
||||
while (1) {
|
||||
tempnamelen = strlen(file) + 20;
|
||||
tempname = isc_mem_allocate(mctx, tempnamelen);
|
||||
if (tempname == NULL)
|
||||
return (ISC_R_NOMEMORY);
|
||||
memset(tempname, 0, tempnamelen);
|
||||
|
||||
result = isc_file_mktemplate(file, tempname, tempnamelen);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto cleanup;
|
||||
|
||||
cp = tempname;
|
||||
while (*cp != '\0')
|
||||
cp++;
|
||||
if (cp == tempname) {
|
||||
isc_mem_free(mctx, tempname);
|
||||
return (ISC_R_FAILURE);
|
||||
}
|
||||
|
||||
x = cp--;
|
||||
while (cp >= tempname && *cp == 'X') {
|
||||
isc_random_get(&which);
|
||||
*cp = alphnum[which % (sizeof(alphnum) - 1)];
|
||||
x = cp--;
|
||||
}
|
||||
|
||||
tempnamekeylen = tempnamelen+5;
|
||||
tempnamekey = isc_mem_allocate(mctx, tempnamekeylen);
|
||||
if (tempnamekey == NULL)
|
||||
return (ISC_R_NOMEMORY);
|
||||
|
||||
memset(tempnamekey, 0, tempnamekeylen);
|
||||
strlcpy(tempnamekey, tempname, tempnamelen);
|
||||
strcat(tempnamekey ,".key");
|
||||
|
||||
|
||||
if (isc_file_exists(tempnamekey)) {
|
||||
isc_mem_free(mctx, tempnamekey);
|
||||
isc_mem_free(mctx, tempname);
|
||||
continue;
|
||||
}
|
||||
|
||||
if ((f = fopen(tempnamekey, "w")) == NULL) {
|
||||
printf("get_trusted_key(): trusted key not found %s\n",
|
||||
tempnamekey);
|
||||
return (ISC_R_FAILURE);
|
||||
}
|
||||
break;
|
||||
}
|
||||
isc_mem_free(mctx, tempnamekey);
|
||||
*tempp = tempname;
|
||||
*fp = f;
|
||||
return (ISC_R_SUCCESS);
|
||||
|
||||
cleanup:
|
||||
isc_mem_free(mctx, tempname);
|
||||
|
||||
return (result);
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
get_trusted_key(isc_mem_t *mctx)
|
||||
{
|
||||
isc_result_t result;
|
||||
const char *filename = NULL;
|
||||
char *filetemp = NULL;
|
||||
char buf[1500];
|
||||
FILE *fp, *fptemp;
|
||||
dst_key_t *key = NULL;
|
||||
dns_rdatacallbacks_t callbacks;
|
||||
|
||||
result = isc_file_exists(trustedkey);
|
||||
if (result != ISC_TRUE) {
|
||||
@@ -4102,40 +4046,11 @@ get_trusted_key(isc_mem_t *mctx)
|
||||
return (ISC_R_FAILURE);
|
||||
}
|
||||
|
||||
if ((fp = fopen(filename, "r")) == NULL) {
|
||||
printf("get_trusted_key(): trusted key not found %s\n",
|
||||
filename);
|
||||
return (ISC_R_FAILURE);
|
||||
}
|
||||
while (fgets(buf, sizeof(buf), fp) != NULL) {
|
||||
result = opentmpkey(mctx,"tmp_file", &filetemp, &fptemp);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
fclose(fp);
|
||||
return (ISC_R_FAILURE);
|
||||
}
|
||||
if (fputs(buf, fptemp) < 0) {
|
||||
fclose(fp);
|
||||
fclose(fptemp);
|
||||
return (ISC_R_FAILURE);
|
||||
}
|
||||
fclose(fptemp);
|
||||
result = dst_key_fromnamedfile(filetemp, DST_TYPE_PUBLIC,
|
||||
mctx, &key);
|
||||
removetmpkey(mctx, filetemp);
|
||||
isc_mem_free(mctx, filetemp);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
fclose(fp);
|
||||
return (ISC_R_FAILURE);
|
||||
}
|
||||
#if 0
|
||||
dst_key_tofile(key, DST_TYPE_PUBLIC,"/tmp");
|
||||
#endif
|
||||
insert_trustedkey(&key);
|
||||
if (key != NULL)
|
||||
dst_key_free(&key);
|
||||
}
|
||||
fclose(fp);
|
||||
return (ISC_R_SUCCESS);
|
||||
dns_rdatacallbacks_init_stdio(&callbacks);
|
||||
callbacks.add = insert_trustedkey;
|
||||
return (dns_master_loadfile(filename, dns_rootname, dns_rootname,
|
||||
current_lookup->rdclass, 0, &callbacks,
|
||||
mctx));
|
||||
}
|
||||
|
||||
|
||||
@@ -4149,7 +4064,7 @@ nameFromString(const char *str, dns_name_t *p_ret) {
|
||||
REQUIRE(p_ret != NULL);
|
||||
REQUIRE(str != NULL);
|
||||
|
||||
isc_buffer_init(&buffer, str, len);
|
||||
isc_buffer_constinit(&buffer, str, len);
|
||||
isc_buffer_add(&buffer, len);
|
||||
|
||||
dns_fixedname_init(&fixedname);
|
||||
|
||||
+94
-129
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -1170,62 +1170,30 @@ ns_client_error(ns_client_t *client, isc_result_t result) {
|
||||
|
||||
static inline isc_result_t
|
||||
client_addopt(ns_client_t *client) {
|
||||
dns_rdataset_t *rdataset;
|
||||
dns_rdatalist_t *rdatalist;
|
||||
dns_rdata_t *rdata;
|
||||
char nsid[BUFSIZ], *nsidp;
|
||||
isc_result_t result;
|
||||
dns_view_t *view;
|
||||
dns_resolver_t *resolver;
|
||||
isc_uint16_t udpsize;
|
||||
dns_ednsopt_t ednsopts[2];
|
||||
int count = 0;
|
||||
unsigned int flags;
|
||||
|
||||
REQUIRE(client->opt == NULL); /* XXXRTH free old. */
|
||||
|
||||
rdatalist = NULL;
|
||||
result = dns_message_gettemprdatalist(client->message, &rdatalist);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
rdata = NULL;
|
||||
result = dns_message_gettemprdata(client->message, &rdata);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
rdataset = NULL;
|
||||
result = dns_message_gettemprdataset(client->message, &rdataset);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
dns_rdataset_init(rdataset);
|
||||
|
||||
rdatalist->type = dns_rdatatype_opt;
|
||||
rdatalist->covers = 0;
|
||||
|
||||
/*
|
||||
* Set the maximum UDP buffer size.
|
||||
*/
|
||||
view = client->view;
|
||||
resolver = (view != NULL) ? view->resolver : NULL;
|
||||
if (resolver != NULL)
|
||||
udpsize = dns_resolver_getudpsize(resolver);
|
||||
else
|
||||
udpsize = ns_g_udpsize;
|
||||
rdatalist->rdclass = udpsize;
|
||||
|
||||
/*
|
||||
* Set EXTENDED-RCODE, VERSION and Z to 0.
|
||||
*/
|
||||
rdatalist->ttl = (client->extflags & DNS_MESSAGEEXTFLAG_REPLYPRESERVE);
|
||||
flags = client->extflags & DNS_MESSAGEEXTFLAG_REPLYPRESERVE;
|
||||
|
||||
/* Set EDNS options if applicable */
|
||||
if (client->attributes & NS_CLIENTATTR_WANTNSID &&
|
||||
if ((client->attributes & NS_CLIENTATTR_WANTNSID) != 0 &&
|
||||
(ns_g_server->server_id != NULL ||
|
||||
ns_g_server->server_usehostname)) {
|
||||
/*
|
||||
* Space required for NSID data:
|
||||
* 2 bytes for opt code
|
||||
* + 2 bytes for NSID length
|
||||
* + NSID itself
|
||||
*/
|
||||
char nsid[BUFSIZ], *nsidp;
|
||||
isc_buffer_t *buffer = NULL;
|
||||
|
||||
if (ns_g_server->server_usehostname) {
|
||||
isc_result_t result;
|
||||
result = ns_os_gethostname(nsid, sizeof(nsid));
|
||||
@@ -1236,35 +1204,15 @@ client_addopt(ns_client_t *client) {
|
||||
} else
|
||||
nsidp = ns_g_server->server_id;
|
||||
|
||||
rdata->length = strlen(nsidp) + 4;
|
||||
result = isc_buffer_allocate(client->mctx, &buffer,
|
||||
rdata->length);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto no_nsid;
|
||||
|
||||
isc_buffer_putuint16(buffer, DNS_OPT_NSID);
|
||||
isc_buffer_putuint16(buffer, strlen(nsidp));
|
||||
isc_buffer_putstr(buffer, nsidp);
|
||||
rdata->data = buffer->base;
|
||||
dns_message_takebuffer(client->message, &buffer);
|
||||
} else {
|
||||
no_nsid:
|
||||
rdata->data = NULL;
|
||||
rdata->length = 0;
|
||||
ednsopts[count].code = DNS_OPT_NSID;
|
||||
ednsopts[count].length = strlen(nsidp);
|
||||
ednsopts[count].value = (unsigned char *)nsidp;
|
||||
count++;
|
||||
}
|
||||
|
||||
rdata->rdclass = rdatalist->rdclass;
|
||||
rdata->type = rdatalist->type;
|
||||
rdata->flags = 0;
|
||||
|
||||
ISC_LIST_INIT(rdatalist->rdata);
|
||||
ISC_LIST_APPEND(rdatalist->rdata, rdata, link);
|
||||
RUNTIME_CHECK(dns_rdatalist_tordataset(rdatalist, rdataset)
|
||||
== ISC_R_SUCCESS);
|
||||
|
||||
client->opt = rdataset;
|
||||
|
||||
return (ISC_R_SUCCESS);
|
||||
no_nsid:
|
||||
result = dns_message_buildopt(client->message, &client->opt, 0,
|
||||
udpsize, flags, ednsopts, count);
|
||||
return (result);
|
||||
}
|
||||
|
||||
static inline isc_boolean_t
|
||||
@@ -1345,6 +1293,83 @@ ns_client_isself(dns_view_t *myview, dns_tsigkey_t *mykey,
|
||||
return (ISC_TF(view == myview));
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
process_opt(ns_client_t *client, dns_rdataset_t *opt) {
|
||||
dns_rdata_t rdata;
|
||||
isc_buffer_t optbuf;
|
||||
isc_result_t result;
|
||||
isc_uint16_t optcode;
|
||||
isc_uint16_t optlen;
|
||||
|
||||
/*
|
||||
* Set the client's UDP buffer size.
|
||||
*/
|
||||
client->udpsize = opt->rdclass;
|
||||
|
||||
/*
|
||||
* If the requested UDP buffer size is less than 512,
|
||||
* ignore it and use 512.
|
||||
*/
|
||||
if (client->udpsize < 512)
|
||||
client->udpsize = 512;
|
||||
|
||||
/*
|
||||
* Get the flags out of the OPT record.
|
||||
*/
|
||||
client->extflags = (isc_uint16_t)(opt->ttl & 0xFFFF);
|
||||
|
||||
/*
|
||||
* Do we understand this version of EDNS?
|
||||
*
|
||||
* XXXRTH need library support for this!
|
||||
*/
|
||||
client->ednsversion = (opt->ttl & 0x00FF0000) >> 16;
|
||||
if (client->ednsversion > 0) {
|
||||
isc_stats_increment(ns_g_server->nsstats,
|
||||
dns_nsstatscounter_badednsver);
|
||||
result = client_addopt(client);
|
||||
if (result == ISC_R_SUCCESS)
|
||||
result = DNS_R_BADVERS;
|
||||
ns_client_error(client, result);
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
/* Check for NSID request */
|
||||
result = dns_rdataset_first(opt);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
dns_rdata_init(&rdata);
|
||||
dns_rdataset_current(opt, &rdata);
|
||||
isc_buffer_init(&optbuf, rdata.data, rdata.length);
|
||||
isc_buffer_add(&optbuf, rdata.length);
|
||||
while (isc_buffer_remaininglength(&optbuf) >= 4) {
|
||||
optcode = isc_buffer_getuint16(&optbuf);
|
||||
optlen = isc_buffer_getuint16(&optbuf);
|
||||
switch (optcode) {
|
||||
case DNS_OPT_NSID:
|
||||
client->attributes |= NS_CLIENTATTR_WANTNSID;
|
||||
isc_buffer_forward(&optbuf, optlen);
|
||||
break;
|
||||
default:
|
||||
isc_buffer_forward(&optbuf, optlen);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
isc_stats_increment(ns_g_server->nsstats, dns_nsstatscounter_edns0in);
|
||||
|
||||
/*
|
||||
* Create an OPT for our reply.
|
||||
*/
|
||||
result = client_addopt(client);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
ns_client_error(client, result);
|
||||
goto cleanup;
|
||||
}
|
||||
cleanup:
|
||||
return (result);
|
||||
}
|
||||
|
||||
/*
|
||||
* Handle an incoming request event from the socket (UDP case)
|
||||
* or tcpmsg (TCP case).
|
||||
@@ -1367,8 +1392,6 @@ client_request(isc_task_t *task, isc_event_t *event) {
|
||||
dns_messageid_t id;
|
||||
unsigned int flags;
|
||||
isc_boolean_t notimp;
|
||||
dns_rdata_t rdata;
|
||||
isc_uint16_t optcode;
|
||||
|
||||
REQUIRE(event != NULL);
|
||||
client = event->ev_arg;
|
||||
@@ -1568,67 +1591,9 @@ client_request(isc_task_t *task, isc_event_t *event) {
|
||||
*/
|
||||
opt = dns_message_getopt(client->message);
|
||||
if (opt != NULL) {
|
||||
/*
|
||||
* Set the client's UDP buffer size.
|
||||
*/
|
||||
client->udpsize = opt->rdclass;
|
||||
|
||||
/*
|
||||
* If the requested UDP buffer size is less than 512,
|
||||
* ignore it and use 512.
|
||||
*/
|
||||
if (client->udpsize < 512)
|
||||
client->udpsize = 512;
|
||||
|
||||
/*
|
||||
* Get the flags out of the OPT record.
|
||||
*/
|
||||
client->extflags = (isc_uint16_t)(opt->ttl & 0xFFFF);
|
||||
|
||||
/*
|
||||
* Do we understand this version of EDNS?
|
||||
*
|
||||
* XXXRTH need library support for this!
|
||||
*/
|
||||
client->ednsversion = (opt->ttl & 0x00FF0000) >> 16;
|
||||
if (client->ednsversion > 0) {
|
||||
isc_stats_increment(ns_g_server->nsstats,
|
||||
dns_nsstatscounter_badednsver);
|
||||
result = client_addopt(client);
|
||||
if (result == ISC_R_SUCCESS)
|
||||
result = DNS_R_BADVERS;
|
||||
ns_client_error(client, result);
|
||||
result = process_opt(client, opt);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
/* Check for NSID request */
|
||||
result = dns_rdataset_first(opt);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
dns_rdata_init(&rdata);
|
||||
dns_rdataset_current(opt, &rdata);
|
||||
if (rdata.length >= 2) {
|
||||
isc_buffer_t nsidbuf;
|
||||
isc_buffer_init(&nsidbuf,
|
||||
rdata.data, rdata.length);
|
||||
isc_buffer_add(&nsidbuf, rdata.length);
|
||||
optcode = isc_buffer_getuint16(&nsidbuf);
|
||||
if (optcode == DNS_OPT_NSID)
|
||||
client->attributes |=
|
||||
NS_CLIENTATTR_WANTNSID;
|
||||
}
|
||||
}
|
||||
|
||||
isc_stats_increment(ns_g_server->nsstats,
|
||||
dns_nsstatscounter_edns0in);
|
||||
|
||||
/*
|
||||
* Create an OPT for our reply.
|
||||
*/
|
||||
result = client_addopt(client);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
ns_client_error(client, result);
|
||||
goto cleanup;
|
||||
}
|
||||
}
|
||||
|
||||
if (client->message->rdclass == 0) {
|
||||
|
||||
+1
-1
@@ -87,7 +87,7 @@ options {\n\
|
||||
statistics-file \"named.stats\";\n\
|
||||
statistics-interval 60;\n\
|
||||
tcp-clients 100;\n\
|
||||
tcp-listen-queue 3;\n\
|
||||
tcp-listen-queue 10;\n\
|
||||
# tkey-dhkey <none>\n\
|
||||
# tkey-gssapi-credential <none>\n\
|
||||
# tkey-domain <none>\n\
|
||||
|
||||
+33
-28
@@ -41,10 +41,10 @@
|
||||
|
||||
/*%
|
||||
* Set up a logging category according to the named.conf data
|
||||
* in 'ccat' and add it to 'lctx'.
|
||||
* in 'ccat' and add it to 'logconfig'.
|
||||
*/
|
||||
static isc_result_t
|
||||
category_fromconf(const cfg_obj_t *ccat, isc_logconfig_t *lctx) {
|
||||
category_fromconf(const cfg_obj_t *ccat, isc_logconfig_t *logconfig) {
|
||||
isc_result_t result;
|
||||
const char *catname;
|
||||
isc_logcategory_t *category;
|
||||
@@ -64,6 +64,9 @@ category_fromconf(const cfg_obj_t *ccat, isc_logconfig_t *lctx) {
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
if (logconfig == NULL)
|
||||
return (ISC_R_SUCCESS);
|
||||
|
||||
module = NULL;
|
||||
|
||||
destinations = cfg_tuple_get(ccat, "destinations");
|
||||
@@ -74,7 +77,7 @@ category_fromconf(const cfg_obj_t *ccat, isc_logconfig_t *lctx) {
|
||||
const cfg_obj_t *channel = cfg_listelt_value(element);
|
||||
const char *channelname = cfg_obj_asstring(channel);
|
||||
|
||||
result = isc_log_usechannel(lctx, channelname, category,
|
||||
result = isc_log_usechannel(logconfig, channelname, category,
|
||||
module);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
isc_log_write(ns_g_lctx, CFG_LOGCATEGORY_CONFIG,
|
||||
@@ -89,10 +92,11 @@ category_fromconf(const cfg_obj_t *ccat, isc_logconfig_t *lctx) {
|
||||
|
||||
/*%
|
||||
* Set up a logging channel according to the named.conf data
|
||||
* in 'cchan' and add it to 'lctx'.
|
||||
* in 'cchan' and add it to 'logconfig'.
|
||||
*/
|
||||
static isc_result_t
|
||||
channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *logconfig)
|
||||
{
|
||||
isc_result_t result;
|
||||
isc_logdestination_t dest;
|
||||
unsigned int type;
|
||||
@@ -215,8 +219,11 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
level = cfg_obj_asuint32(severity);
|
||||
}
|
||||
|
||||
result = isc_log_createchannel(lctx, channelname,
|
||||
type, level, &dest, flags);
|
||||
if (logconfig == NULL)
|
||||
result = ISC_R_SUCCESS;
|
||||
else
|
||||
result = isc_log_createchannel(logconfig, channelname,
|
||||
type, level, &dest, flags);
|
||||
|
||||
if (result == ISC_R_SUCCESS && type == ISC_LOG_TOFILE) {
|
||||
FILE *fp;
|
||||
@@ -226,32 +233,31 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
* Fix defect #22771
|
||||
*/
|
||||
result = isc_file_isplainfile(dest.file.name);
|
||||
if (result == ISC_R_SUCCESS ||
|
||||
result == ISC_R_FILENOTFOUND) {
|
||||
if (result == ISC_R_SUCCESS || result == ISC_R_FILENOTFOUND) {
|
||||
/*
|
||||
* Test that the file can be opened, since
|
||||
* isc_log_open() can't effectively report
|
||||
* failures when called in
|
||||
* isc_log_doit().
|
||||
* failures when called in isc_log_doit().
|
||||
*/
|
||||
result = isc_stdio_open(dest.file.name, "a", &fp);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
syslog(LOG_ERR,
|
||||
"isc_stdio_open '%s' failed: %s",
|
||||
dest.file.name,
|
||||
isc_result_totext(result));
|
||||
if (logconfig != NULL && !ns_g_nosyslog)
|
||||
syslog(LOG_ERR,
|
||||
"isc_stdio_open '%s' failed: "
|
||||
"%s", dest.file.name,
|
||||
isc_result_totext(result));
|
||||
fprintf(stderr,
|
||||
"isc_stdio_open '%s' failed: %s",
|
||||
"isc_stdio_open '%s' failed: %s\n",
|
||||
dest.file.name,
|
||||
isc_result_totext(result));
|
||||
} else
|
||||
(void)isc_stdio_close(fp);
|
||||
goto done;
|
||||
}
|
||||
if (!ns_g_nosyslog)
|
||||
if (logconfig != NULL && !ns_g_nosyslog)
|
||||
syslog(LOG_ERR, "isc_file_isplainfile '%s' failed: %s",
|
||||
dest.file.name, isc_result_totext(result));
|
||||
fprintf(stderr, "isc_file_isplainfile '%s' failed: %s",
|
||||
fprintf(stderr, "isc_file_isplainfile '%s' failed: %s\n",
|
||||
dest.file.name, isc_result_totext(result));
|
||||
}
|
||||
|
||||
@@ -260,7 +266,7 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
ns_log_configure(isc_logconfig_t *logconf, const cfg_obj_t *logstmt) {
|
||||
ns_log_configure(isc_logconfig_t *logconfig, const cfg_obj_t *logstmt) {
|
||||
isc_result_t result;
|
||||
const cfg_obj_t *channels = NULL;
|
||||
const cfg_obj_t *categories = NULL;
|
||||
@@ -269,7 +275,8 @@ ns_log_configure(isc_logconfig_t *logconf, const cfg_obj_t *logstmt) {
|
||||
isc_boolean_t unmatched_set = ISC_FALSE;
|
||||
const cfg_obj_t *catname;
|
||||
|
||||
CHECK(ns_log_setdefaultchannels(logconf));
|
||||
if (logconfig != NULL)
|
||||
CHECK(ns_log_setdefaultchannels(logconfig));
|
||||
|
||||
(void)cfg_map_get(logstmt, "channel", &channels);
|
||||
for (element = cfg_list_first(channels);
|
||||
@@ -277,7 +284,7 @@ ns_log_configure(isc_logconfig_t *logconf, const cfg_obj_t *logstmt) {
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *channel = cfg_listelt_value(element);
|
||||
CHECK(channel_fromconf(channel, logconf));
|
||||
CHECK(channel_fromconf(channel, logconfig));
|
||||
}
|
||||
|
||||
(void)cfg_map_get(logstmt, "category", &categories);
|
||||
@@ -286,7 +293,7 @@ ns_log_configure(isc_logconfig_t *logconf, const cfg_obj_t *logstmt) {
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *category = cfg_listelt_value(element);
|
||||
CHECK(category_fromconf(category, logconf));
|
||||
CHECK(category_fromconf(category, logconfig));
|
||||
if (!default_set) {
|
||||
catname = cfg_tuple_get(category, "name");
|
||||
if (strcmp(cfg_obj_asstring(catname), "default") == 0)
|
||||
@@ -299,16 +306,14 @@ ns_log_configure(isc_logconfig_t *logconf, const cfg_obj_t *logstmt) {
|
||||
}
|
||||
}
|
||||
|
||||
if (!default_set)
|
||||
CHECK(ns_log_setdefaultcategory(logconf));
|
||||
if (logconfig != NULL && !default_set)
|
||||
CHECK(ns_log_setdefaultcategory(logconfig));
|
||||
|
||||
if (!unmatched_set)
|
||||
CHECK(ns_log_setunmatchedcategory(logconf));
|
||||
if (logconfig != NULL && !unmatched_set)
|
||||
CHECK(ns_log_setunmatchedcategory(logconfig));
|
||||
|
||||
return (ISC_R_SUCCESS);
|
||||
|
||||
cleanup:
|
||||
if (logconf != NULL)
|
||||
isc_logconfig_destroy(&logconf);
|
||||
return (result);
|
||||
}
|
||||
|
||||
@@ -178,7 +178,7 @@ options {
|
||||
random\-device \fIquoted_string\fR;
|
||||
recursive\-clients \fIinteger\fR;
|
||||
serial\-query\-rate \fIinteger\fR;
|
||||
server\-id ( \fIquoted_string\fR | none );
|
||||
server\-id ( \fIquoted_string\fR | hostname | none );
|
||||
stacksize \fIsize\fR;
|
||||
statistics\-file \fIquoted_string\fR;
|
||||
statistics\-interval \fIinteger\fR; // not yet implemented
|
||||
|
||||
@@ -208,7 +208,7 @@ options {
|
||||
random-device <replaceable>quoted_string</replaceable>;
|
||||
recursive-clients <replaceable>integer</replaceable>;
|
||||
serial-query-rate <replaceable>integer</replaceable>;
|
||||
server-id ( <replaceable>quoted_string</replaceable> | none );
|
||||
server-id ( <replaceable>quoted_string</replaceable> | hostname | none );
|
||||
stacksize <replaceable>size</replaceable>;
|
||||
statistics-file <replaceable>quoted_string</replaceable>;
|
||||
statistics-interval <replaceable>integer</replaceable>; // not yet implemented
|
||||
|
||||
@@ -176,7 +176,7 @@ options
|
||||
random-device <em class="replaceable"><code>quoted_string</code></em>;<br>
|
||||
recursive-clients <em class="replaceable"><code>integer</code></em>;<br>
|
||||
serial-query-rate <em class="replaceable"><code>integer</code></em>;<br>
|
||||
server-id ( <em class="replaceable"><code>quoted_string</code></em> | none );<br>
|
||||
server-id ( <em class="replaceable"><code>quoted_string</code></em> | hostname | none );<br>
|
||||
stacksize <em class="replaceable"><code>size</code></em>;<br>
|
||||
statistics-file <em class="replaceable"><code>quoted_string</code></em>;<br>
|
||||
statistics-interval <em class="replaceable"><code>integer</code></em>; // not yet implemented<br>
|
||||
@@ -329,7 +329,7 @@ options
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544458"></a><h2>VIEW</h2>
|
||||
<a name="id2544459"></a><h2>VIEW</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
view <em class="replaceable"><code>string</code></em> <em class="replaceable"><code>optional_class</code></em> {<br>
|
||||
match-clients { <em class="replaceable"><code>address_match_element</code></em>; ... };<br>
|
||||
@@ -477,7 +477,7 @@ view
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545120"></a><h2>ZONE</h2>
|
||||
<a name="id2545121"></a><h2>ZONE</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
zone <em class="replaceable"><code>string</code></em> <em class="replaceable"><code>optional_class</code></em> {<br>
|
||||
type ( master | slave | stub | hint |<br>
|
||||
@@ -569,12 +569,12 @@ zone
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545416"></a><h2>FILES</h2>
|
||||
<a name="id2545417"></a><h2>FILES</h2>
|
||||
<p><code class="filename">/etc/named.conf</code>
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545428"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2545429"></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>,
|
||||
<span class="citerefentry"><span class="refentrytitle">rndc</span>(8)</span>,
|
||||
|
||||
+6
-3
@@ -57,6 +57,7 @@
|
||||
|
||||
#include <named/client.h>
|
||||
#include <named/globals.h>
|
||||
#include <named/interfacemgr.h>
|
||||
#include <named/log.h>
|
||||
#include <named/server.h>
|
||||
#include <named/sortlist.h>
|
||||
@@ -737,8 +738,9 @@ query_validatezonedb(ns_client_t *client, dns_name_t *name,
|
||||
if (queryonacl == NULL)
|
||||
queryonacl = client->view->queryonacl;
|
||||
|
||||
result = ns_client_checkaclsilent(client, NULL,
|
||||
queryonacl, ISC_TRUE);
|
||||
result = ns_client_checkaclsilent(client,
|
||||
&client->interface->addr,
|
||||
queryonacl, ISC_TRUE);
|
||||
if ((options & DNS_GETDB_NOLOG) == 0 &&
|
||||
result != ISC_R_SUCCESS)
|
||||
ns_client_log(client, DNS_LOGCATEGORY_SECURITY,
|
||||
@@ -4785,7 +4787,8 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
goto addauth;
|
||||
}
|
||||
|
||||
if (dns_db_issecure(db)) {
|
||||
if (qtype == dns_rdatatype_rrsig &&
|
||||
dns_db_issecure(db)) {
|
||||
char namebuf[DNS_NAME_FORMATSIZE];
|
||||
dns_name_format(client->query.qname,
|
||||
namebuf,
|
||||
|
||||
+312
-52
@@ -68,11 +68,13 @@
|
||||
#include <dns/portlist.h>
|
||||
#include <dns/rbt.h>
|
||||
#include <dns/rdataclass.h>
|
||||
#include <dns/rdatalist.h>
|
||||
#include <dns/rdataset.h>
|
||||
#include <dns/rdatastruct.h>
|
||||
#include <dns/resolver.h>
|
||||
#include <dns/rootns.h>
|
||||
#include <dns/secalg.h>
|
||||
#include <dns/soa.h>
|
||||
#include <dns/stats.h>
|
||||
#include <dns/tkey.h>
|
||||
#include <dns/tsig.h>
|
||||
@@ -1055,6 +1057,278 @@ cache_reusable(dns_view_t *originview, dns_view_t *view,
|
||||
return (ISC_TRUE);
|
||||
}
|
||||
|
||||
#define BINDABLE(name) \
|
||||
((name->attributes & (DNS_NAMEATTR_READONLY|DNS_NAMEATTR_DYNAMIC)) \
|
||||
== 0)
|
||||
|
||||
static isc_result_t
|
||||
dns_name_fromstring(dns_name_t *target, const char *src,
|
||||
unsigned int options, isc_mem_t *mctx)
|
||||
{
|
||||
isc_result_t result;
|
||||
isc_buffer_t buf;
|
||||
dns_fixedname_t fn;
|
||||
dns_name_t *name;
|
||||
|
||||
REQUIRE(src != NULL);
|
||||
|
||||
isc_buffer_constinit(&buf, src, strlen(src));
|
||||
isc_buffer_add(&buf, strlen(src));
|
||||
if (BINDABLE(target) && target->buffer != NULL)
|
||||
name = target;
|
||||
else {
|
||||
dns_fixedname_init(&fn);
|
||||
name = dns_fixedname_name(&fn);
|
||||
}
|
||||
|
||||
result = dns_name_fromtext(name, &buf, dns_rootname, options, NULL);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
|
||||
if (name != target)
|
||||
result = dns_name_dupwithoffsets(name, mctx, target);
|
||||
return (result);
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
add_soa(dns_db_t *db, dns_dbversion_t *version, dns_name_t *name,
|
||||
dns_name_t *origin, dns_name_t *contact)
|
||||
{
|
||||
dns_dbnode_t *node = NULL;
|
||||
dns_rdata_soa_t soa;
|
||||
dns_rdata_t rdata = DNS_RDATA_INIT;
|
||||
dns_rdatalist_t rdatalist;
|
||||
dns_rdataset_t rdataset;
|
||||
isc_buffer_t b;
|
||||
isc_result_t result;
|
||||
unsigned char buf[2 * DNS_NAME_MAXWIRE + 20];
|
||||
|
||||
dns_rdataset_init(&rdataset);
|
||||
dns_rdatalist_init(&rdatalist);
|
||||
isc_buffer_init(&b, buf, sizeof(buf));
|
||||
|
||||
soa.common.rdtype = dns_rdatatype_soa;
|
||||
soa.common.rdclass = dns_db_class(db);
|
||||
soa.mctx = NULL;
|
||||
soa.serial = 0;
|
||||
soa.refresh = 28800;
|
||||
soa.retry = 7200;
|
||||
soa.expire = 604800;
|
||||
soa.minimum = 86400;
|
||||
dns_name_init(&soa.origin, NULL);
|
||||
dns_name_clone(origin, &soa.origin);
|
||||
dns_name_init(&soa.contact, NULL);
|
||||
dns_name_clone(contact, &soa.contact);
|
||||
|
||||
CHECK(dns_rdata_fromstruct(&rdata, dns_db_class(db), dns_rdatatype_soa,
|
||||
&soa, &b));
|
||||
|
||||
rdatalist.type = rdata.type;
|
||||
rdatalist.covers = 0;
|
||||
rdatalist.rdclass = rdata.rdclass;
|
||||
rdatalist.ttl = 86400;
|
||||
ISC_LIST_APPEND(rdatalist.rdata, &rdata, link);
|
||||
CHECK(dns_rdatalist_tordataset(&rdatalist, &rdataset));
|
||||
CHECK(dns_db_findnode(db, name, ISC_TRUE, &node));
|
||||
CHECK(dns_db_addrdataset(db, node, version, 0, &rdataset, 0, NULL));
|
||||
cleanup:
|
||||
if (node != NULL)
|
||||
dns_db_detachnode(db, &node);
|
||||
return (result);
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
add_ns(dns_db_t *db, dns_dbversion_t *version, dns_name_t *name,
|
||||
dns_name_t *nsname)
|
||||
{
|
||||
dns_dbnode_t *node = NULL;
|
||||
dns_rdata_ns_t ns;
|
||||
dns_rdata_t rdata = DNS_RDATA_INIT;
|
||||
dns_rdatalist_t rdatalist;
|
||||
dns_rdataset_t rdataset;
|
||||
isc_result_t result;
|
||||
isc_buffer_t b;
|
||||
unsigned char buf[DNS_NAME_MAXWIRE];
|
||||
|
||||
isc_buffer_init(&b, buf, sizeof(buf));
|
||||
|
||||
dns_rdataset_init(&rdataset);
|
||||
dns_rdatalist_init(&rdatalist);
|
||||
ns.common.rdtype = dns_rdatatype_ns;
|
||||
ns.common.rdclass = dns_db_class(db);
|
||||
ns.mctx = NULL;
|
||||
dns_name_init(&ns.name, NULL);
|
||||
dns_name_clone(nsname, &ns.name);
|
||||
CHECK(dns_rdata_fromstruct(&rdata, dns_db_class(db), dns_rdatatype_ns,
|
||||
&ns, &b));
|
||||
rdatalist.type = rdata.type;
|
||||
rdatalist.covers = 0;
|
||||
rdatalist.rdclass = rdata.rdclass;
|
||||
rdatalist.ttl = 86400;
|
||||
ISC_LIST_APPEND(rdatalist.rdata, &rdata, link);
|
||||
CHECK(dns_rdatalist_tordataset(&rdatalist, &rdataset));
|
||||
CHECK(dns_db_findnode(db, name, ISC_TRUE, &node));
|
||||
CHECK(dns_db_addrdataset(db, node, version, 0, &rdataset, 0, NULL));
|
||||
cleanup:
|
||||
if (node != NULL)
|
||||
dns_db_detachnode(db, &node);
|
||||
return (result);
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
create_empty_zone(dns_zone_t *zone, dns_name_t *name, dns_view_t *view,
|
||||
const cfg_obj_t *zonelist, const char **empty_dbtype,
|
||||
int empty_dbtypec, isc_boolean_t zonestats_on)
|
||||
{
|
||||
char namebuf[DNS_NAME_FORMATSIZE];
|
||||
const cfg_listelt_t *element;
|
||||
const cfg_obj_t *obj;
|
||||
const cfg_obj_t *zconfig;
|
||||
const cfg_obj_t *zoptions;
|
||||
const char *rbt_dbtype[4] = { "rbt" };
|
||||
const char *sep = ": view ";
|
||||
const char *str;
|
||||
const char *viewname = view->name;
|
||||
dns_db_t *db = NULL;
|
||||
dns_dbversion_t *version = NULL;
|
||||
dns_fixedname_t cfixed;
|
||||
dns_fixedname_t fixed;
|
||||
dns_fixedname_t nsfixed;
|
||||
dns_name_t *contact;
|
||||
dns_name_t *ns;
|
||||
dns_name_t *zname;
|
||||
dns_zone_t *myzone = NULL;
|
||||
int rbt_dbtypec = 1;
|
||||
isc_result_t result;
|
||||
dns_namereln_t namereln;
|
||||
int order;
|
||||
unsigned int nlabels;
|
||||
|
||||
dns_fixedname_init(&fixed);
|
||||
zname = dns_fixedname_name(&fixed);
|
||||
dns_fixedname_init(&nsfixed);
|
||||
ns = dns_fixedname_name(&nsfixed);
|
||||
dns_fixedname_init(&cfixed);
|
||||
contact = dns_fixedname_name(&cfixed);
|
||||
|
||||
/*
|
||||
* Look for forward "zones" beneath this empty zone and if so
|
||||
* create a custom db for the empty zone.
|
||||
*/
|
||||
for (element = cfg_list_first(zonelist);
|
||||
element != NULL;
|
||||
element = cfg_list_next(element)) {
|
||||
|
||||
zconfig = cfg_listelt_value(element);
|
||||
str = cfg_obj_asstring(cfg_tuple_get(zconfig, "name"));
|
||||
CHECK(dns_name_fromstring(zname, str, 0, NULL));
|
||||
namereln = dns_name_fullcompare(zname, name, &order, &nlabels);
|
||||
if (namereln != dns_namereln_subdomain)
|
||||
continue;
|
||||
|
||||
zoptions = cfg_tuple_get(zconfig, "options");
|
||||
|
||||
obj = NULL;
|
||||
(void)cfg_map_get(zoptions, "type", &obj);
|
||||
INSIST(obj != NULL);
|
||||
if (strcasecmp(cfg_obj_asstring(obj), "forward") != 0)
|
||||
continue;
|
||||
|
||||
obj = NULL;
|
||||
(void)cfg_map_get(zoptions, "forward", &obj);
|
||||
if (obj == NULL)
|
||||
continue;
|
||||
if (strcasecmp(cfg_obj_asstring(obj), "only") != 0)
|
||||
continue;
|
||||
if (db == NULL) {
|
||||
CHECK(dns_db_create(view->mctx, "rbt", name,
|
||||
dns_dbtype_zone, view->rdclass,
|
||||
0, NULL, &db));
|
||||
CHECK(dns_db_newversion(db, &version));
|
||||
if (strcmp(empty_dbtype[2], "@") == 0)
|
||||
dns_name_clone(name, ns);
|
||||
else
|
||||
CHECK(dns_name_fromstring(ns, empty_dbtype[2],
|
||||
0, NULL));
|
||||
CHECK(dns_name_fromstring(contact, empty_dbtype[3],
|
||||
0, NULL));
|
||||
CHECK(add_soa(db, version, name, ns, contact));
|
||||
CHECK(add_ns(db, version, name, ns));
|
||||
}
|
||||
CHECK(add_ns(db, version, zname, dns_rootname));
|
||||
}
|
||||
|
||||
/*
|
||||
* Is the existing zone the ok to use?
|
||||
*/
|
||||
if (zone != NULL) {
|
||||
if (db != NULL)
|
||||
check_dbtype(&zone, rbt_dbtypec, rbt_dbtype,
|
||||
view->mctx);
|
||||
else
|
||||
check_dbtype(&zone, empty_dbtypec, empty_dbtype,
|
||||
view->mctx);
|
||||
if (zone != NULL && dns_zone_gettype(zone) != dns_zone_master)
|
||||
zone = NULL;
|
||||
if (zone != NULL && dns_zone_getfile(zone) != NULL)
|
||||
zone = NULL;
|
||||
}
|
||||
|
||||
if (zone == NULL) {
|
||||
CHECK(dns_zone_create(&myzone, view->mctx));
|
||||
zone = myzone;
|
||||
CHECK(dns_zone_setorigin(zone, name));
|
||||
CHECK(dns_zonemgr_managezone(ns_g_server->zonemgr, zone));
|
||||
if (db == NULL)
|
||||
CHECK(dns_zone_setdbtype(zone, empty_dbtypec,
|
||||
empty_dbtype));
|
||||
dns_zone_setclass(zone, view->rdclass);
|
||||
dns_zone_settype(zone, dns_zone_master);
|
||||
dns_zone_setstats(zone, ns_g_server->zonestats);
|
||||
}
|
||||
|
||||
dns_zone_setoption(zone, ~DNS_ZONEOPT_NOCHECKNS, ISC_FALSE);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_NOCHECKNS, ISC_TRUE);
|
||||
dns_zone_setnotifytype(zone, dns_notifytype_no);
|
||||
dns_zone_setdialup(zone, dns_dialuptype_no);
|
||||
if (view->queryacl)
|
||||
dns_zone_setqueryacl(zone, view->queryacl);
|
||||
else
|
||||
dns_zone_clearqueryacl(zone);
|
||||
if (view->queryonacl)
|
||||
dns_zone_setqueryonacl(zone, view->queryonacl);
|
||||
else
|
||||
dns_zone_clearqueryonacl(zone);
|
||||
dns_zone_clearupdateacl(zone);
|
||||
dns_zone_clearxfracl(zone);
|
||||
|
||||
CHECK(setquerystats(zone, view->mctx, zonestats_on));
|
||||
if (db != NULL) {
|
||||
dns_db_closeversion(db, &version, ISC_TRUE);
|
||||
CHECK(dns_zone_replacedb(zone, db, ISC_FALSE));
|
||||
}
|
||||
dns_zone_setview(zone, view);
|
||||
CHECK(dns_view_addzone(view, zone));
|
||||
|
||||
if (!strcmp(viewname, "_default")) {
|
||||
sep = "";
|
||||
viewname = "";
|
||||
}
|
||||
dns_name_format(name, namebuf, sizeof(namebuf));
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_SERVER,
|
||||
ISC_LOG_INFO, "automatic empty zone%s%s: %s",
|
||||
sep, viewname, namebuf);
|
||||
|
||||
cleanup:
|
||||
if (myzone != NULL)
|
||||
dns_zone_detach(&myzone);
|
||||
if (version != NULL)
|
||||
dns_db_closeversion(db, &version, ISC_FALSE);
|
||||
if (db != NULL)
|
||||
dns_db_detach(&db);
|
||||
return (result);
|
||||
}
|
||||
|
||||
/*
|
||||
* Configure 'view' according to 'vconfig', taking defaults from 'config'
|
||||
* where values are missing in 'vconfig'.
|
||||
@@ -1105,7 +1379,6 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
isc_uint32_t max_clients_per_query;
|
||||
const char *sep = ": view ";
|
||||
const char *viewname = view->name;
|
||||
const char *forview = " for view ";
|
||||
isc_boolean_t rfc1918;
|
||||
isc_boolean_t empty_zones_enable;
|
||||
const cfg_obj_t *disablelist = NULL;
|
||||
@@ -1138,8 +1411,6 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
if (!strcmp(viewname, "_default")) {
|
||||
sep = "";
|
||||
viewname = "";
|
||||
forview = "";
|
||||
POST(forview);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -2045,43 +2316,13 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
if (pview != NULL) {
|
||||
(void)dns_view_findzone(pview, name, &zone);
|
||||
dns_view_detach(&pview);
|
||||
if (zone != NULL)
|
||||
check_dbtype(&zone, empty_dbtypec,
|
||||
empty_dbtype, mctx);
|
||||
if (zone != NULL) {
|
||||
dns_zone_setview(zone, view);
|
||||
CHECK(dns_view_addzone(view, zone));
|
||||
CHECK(setquerystats(zone, mctx,
|
||||
zonestats_on));
|
||||
dns_zone_detach(&zone);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
CHECK(dns_zone_create(&zone, mctx));
|
||||
CHECK(dns_zone_setorigin(zone, name));
|
||||
dns_zone_setview(zone, view);
|
||||
CHECK(dns_zonemgr_managezone(ns_g_server->zonemgr, zone));
|
||||
dns_zone_setclass(zone, view->rdclass);
|
||||
dns_zone_settype(zone, dns_zone_master);
|
||||
dns_zone_setstats(zone, ns_g_server->zonestats);
|
||||
CHECK(dns_zone_setdbtype(zone, empty_dbtypec,
|
||||
empty_dbtype));
|
||||
if (view->queryacl != NULL)
|
||||
dns_zone_setqueryacl(zone, view->queryacl);
|
||||
if (view->queryonacl != NULL)
|
||||
dns_zone_setqueryonacl(zone, view->queryonacl);
|
||||
dns_zone_setdialup(zone, dns_dialuptype_no);
|
||||
dns_zone_setnotifytype(zone, dns_notifytype_no);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_NOCHECKNS,
|
||||
ISC_TRUE);
|
||||
CHECK(setquerystats(zone, mctx, zonestats_on));
|
||||
CHECK(dns_view_addzone(view, zone));
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL,
|
||||
NS_LOGMODULE_SERVER, ISC_LOG_INFO,
|
||||
"automatic empty zone%s%s: %s",
|
||||
sep, viewname, empty);
|
||||
dns_zone_detach(&zone);
|
||||
CHECK(create_empty_zone(zone, name, view, zonelist,
|
||||
empty_dbtype, empty_dbtypec,
|
||||
zonestats_on));
|
||||
if (zone != NULL)
|
||||
dns_zone_detach(&zone);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3076,7 +3317,10 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
dns_viewlist_t viewlist;
|
||||
in_port_t listen_port, udpport_low, udpport_high;
|
||||
int i;
|
||||
int num_zones = 0;
|
||||
isc_boolean_t exclusive = ISC_FALSE;
|
||||
isc_interval_t interval;
|
||||
isc_logconfig_t *logc = NULL;
|
||||
isc_portset_t *v4portset = NULL;
|
||||
isc_portset_t *v6portset = NULL;
|
||||
isc_resourcevalue_t nfiles;
|
||||
@@ -3086,8 +3330,6 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
isc_uint32_t reserved;
|
||||
isc_uint32_t udpsize;
|
||||
unsigned int maxsocks;
|
||||
int num_zones = 0;
|
||||
isc_boolean_t exclusive = ISC_FALSE;
|
||||
|
||||
cfg_aclconfctx_init(&aclconfctx);
|
||||
ISC_LIST_INIT(viewlist);
|
||||
@@ -3344,8 +3586,8 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
result = ns_config_get(maps, "tcp-listen-queue", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
ns_g_listen = cfg_obj_asuint32(obj);
|
||||
if (ns_g_listen < 3)
|
||||
ns_g_listen = 3;
|
||||
if ((ns_g_listen > 0) && (ns_g_listen < 10))
|
||||
ns_g_listen = 10;
|
||||
|
||||
/*
|
||||
* Configure the interface manager according to the "listen-on"
|
||||
@@ -3669,13 +3911,30 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
* unprivileged user, not root.
|
||||
*/
|
||||
if (ns_g_logstderr) {
|
||||
const cfg_obj_t *logobj = NULL;
|
||||
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL,
|
||||
NS_LOGMODULE_SERVER, ISC_LOG_INFO,
|
||||
"ignoring config file logging "
|
||||
"statement due to -g option");
|
||||
"not using config file logging "
|
||||
"statement for logging due to "
|
||||
"-g option");
|
||||
|
||||
(void)cfg_map_get(config, "logging", &logobj);
|
||||
if (logobj != NULL) {
|
||||
result = ns_log_configure(NULL, logobj);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
isc_log_write(ns_g_lctx,
|
||||
NS_LOGCATEGORY_GENERAL,
|
||||
NS_LOGMODULE_SERVER,
|
||||
ISC_LOG_ERROR,
|
||||
"checking logging configuration "
|
||||
"failed: %s",
|
||||
isc_result_totext(result));
|
||||
goto cleanup;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
const cfg_obj_t *logobj = NULL;
|
||||
isc_logconfig_t *logc = NULL;
|
||||
|
||||
CHECKM(isc_logconfig_create(ns_g_lctx, &logc),
|
||||
"creating new logging configuration");
|
||||
@@ -3694,11 +3953,9 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
"setting up default 'category default'");
|
||||
}
|
||||
|
||||
result = isc_logconfig_use(ns_g_lctx, logc);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
isc_logconfig_destroy(&logc);
|
||||
CHECKM(result, "installing logging configuration");
|
||||
}
|
||||
CHECKM(isc_logconfig_use(ns_g_lctx, logc),
|
||||
"installing logging configuration");
|
||||
logc = NULL;
|
||||
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL,
|
||||
NS_LOGMODULE_SERVER, ISC_LOG_DEBUG(1),
|
||||
@@ -3834,6 +4091,9 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
result = ISC_R_SUCCESS;
|
||||
|
||||
cleanup:
|
||||
if (logc != NULL)
|
||||
isc_logconfig_destroy(&logc);
|
||||
|
||||
if (v4portset != NULL)
|
||||
isc_portset_destroy(ns_g_mctx, &v4portset);
|
||||
|
||||
@@ -5350,7 +5610,7 @@ ns_server_status(ns_server_t *server, isc_buffer_t *text) {
|
||||
|
||||
n = snprintf((char *)isc_buffer_used(text),
|
||||
isc_buffer_availablelength(text),
|
||||
"version: %s%s%s%s\n"
|
||||
"version: %s%s%s%s <id:%s>\n"
|
||||
#ifdef ISC_PLATFORM_USETHREADS
|
||||
"CPUs found: %u\n"
|
||||
"worker threads: %u\n"
|
||||
@@ -5364,7 +5624,7 @@ ns_server_status(ns_server_t *server, isc_buffer_t *text) {
|
||||
"recursive clients: %d/%d/%d\n"
|
||||
"tcp clients: %d/%d\n"
|
||||
"server is up and running",
|
||||
ns_g_version, ob, alt, cb,
|
||||
ns_g_version, ob, alt, cb, ns_g_srcid,
|
||||
#ifdef ISC_PLATFORM_USETHREADS
|
||||
ns_g_cpus_detected, ns_g_cpus,
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2008-2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2008-2013 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
|
||||
@@ -955,6 +955,8 @@ generatexml(ns_server_t *server, int *buflen, xmlChar **buf) {
|
||||
xmlFreeTextWriter(writer);
|
||||
|
||||
xmlDocDumpFormatMemoryEnc(doc, buf, buflen, "UTF-8", 1);
|
||||
if (*buf == NULL)
|
||||
goto error;
|
||||
xmlFreeDoc(doc);
|
||||
return (ISC_R_SUCCESS);
|
||||
|
||||
@@ -979,7 +981,7 @@ render_index(const char *url, const char *querystring, void *arg,
|
||||
isc_buffer_t *b, isc_httpdfree_t **freecb,
|
||||
void **freecb_args)
|
||||
{
|
||||
unsigned char *msg;
|
||||
unsigned char *msg = NULL;
|
||||
int msglen;
|
||||
ns_server_t *server = arg;
|
||||
isc_result_t result;
|
||||
|
||||
+4
-1
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009, 2011, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 2011-2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -117,6 +117,9 @@ static int dfd[2] = { -1, -1 };
|
||||
static isc_boolean_t non_root = ISC_FALSE;
|
||||
static isc_boolean_t non_root_caps = ISC_FALSE;
|
||||
|
||||
#ifdef HAVE_LINUX_TYPES_H
|
||||
#include <linux/types.h>
|
||||
#endif
|
||||
#ifdef HAVE_SYS_CAPABILITY_H
|
||||
#include <sys/capability.h>
|
||||
#else
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006, 2007, 2009, 2011, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2006, 2007, 2009, 2011-2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -28,6 +28,11 @@
|
||||
#include <named/main.h>
|
||||
#include <named/server.h>
|
||||
|
||||
/* In fact more bound to the platform toolset... */
|
||||
#if defined(_M_IX86) && (_MSC_VER < 1600)
|
||||
#define ISC_ADJUST_FDIV
|
||||
#endif
|
||||
|
||||
/* Handle to SCM for updating service status */
|
||||
static SERVICE_STATUS_HANDLE hServiceStatus = 0;
|
||||
static BOOL foreground = FALSE;
|
||||
@@ -199,7 +204,7 @@ _CRTIMP void __cdecl __getmainargs(int *, char ***, char ***, int,
|
||||
_startupinfo *);
|
||||
void __cdecl _setargv(void);
|
||||
|
||||
#ifdef _M_IX86
|
||||
#ifdef ISC_ADJUST_FDIV
|
||||
/* Pentium FDIV adjustment */
|
||||
extern int _adjust_fdiv;
|
||||
extern int * _imp___adjust_fdiv;
|
||||
@@ -236,7 +241,7 @@ void GetArgs(int *argc, char ***argv, char ***envp)
|
||||
__getmainargs(argc, argv, envp, _dowildcard, &startinfo);
|
||||
__initenv = *envp;
|
||||
|
||||
#ifdef _M_IX86
|
||||
#ifdef ISC_ADJUST_FDIV
|
||||
_adjust_fdiv = * _imp___adjust_fdiv;
|
||||
_setdefaultprecision();
|
||||
#endif
|
||||
|
||||
+166
-12
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004, 2005, 2007, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -20,11 +20,11 @@
|
||||
.\" Title: rndc
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
|
||||
.\" Date: June 30, 2000
|
||||
.\" Date: June 7, 2013
|
||||
.\" Manual: BIND9
|
||||
.\" Source: BIND9
|
||||
.\"
|
||||
.TH "RNDC" "8" "June 30, 2000" "BIND9" "BIND9"
|
||||
.TH "RNDC" "8" "June 7, 2013" "BIND9" "BIND9"
|
||||
.\" disable hyphenation
|
||||
.nh
|
||||
.\" disable justification (adjust text to left margin only)
|
||||
@@ -113,18 +113,172 @@ is specified,
|
||||
\fBrndc\fR
|
||||
will first look for a key clause in the server statement of the server being used, or if no server statement is present for that host, then the default\-key clause of the options statement. Note that the configuration file contains shared secrets which are used to send authenticated control commands to name servers. It should therefore not have general read or write access.
|
||||
.RE
|
||||
.SH "COMMANDS"
|
||||
.PP
|
||||
For the complete set of commands supported by
|
||||
\fBrndc\fR, see the BIND 9 Administrator Reference Manual or run
|
||||
A list of commands supported by
|
||||
\fBrndc\fR
|
||||
without arguments to see its help message.
|
||||
can be seen by running
|
||||
\fBrndc\fR
|
||||
without arguments.
|
||||
.PP
|
||||
Currently supported commands are:
|
||||
.PP
|
||||
\fBreload\fR
|
||||
.RS 4
|
||||
Reload configuration file and zones.
|
||||
.RE
|
||||
.PP
|
||||
\fBreload \fR\fB\fIzone\fR\fR\fB \fR\fB[\fIclass\fR [\fIview\fR]]\fR
|
||||
.RS 4
|
||||
Reload the given zone.
|
||||
.RE
|
||||
.PP
|
||||
\fBrefresh \fR\fB\fIzone\fR\fR\fB \fR\fB[\fIclass\fR [\fIview\fR]]\fR
|
||||
.RS 4
|
||||
Schedule zone maintenance for the given zone.
|
||||
.RE
|
||||
.PP
|
||||
\fBretransfer \fR\fB\fIzone\fR\fR\fB \fR\fB[\fIclass\fR [\fIview\fR]]\fR
|
||||
.RS 4
|
||||
Retransfer the given zone from the master.
|
||||
.RE
|
||||
.PP
|
||||
\fBfreeze \fR\fB[\fIzone\fR [\fIclass\fR [\fIview\fR]]]\fR
|
||||
.RS 4
|
||||
Suspend updates to a dynamic zone. If no zone is specified, then all zones are suspended. This allows manual edits to be made to a zone normally updated by dynamic update. It also causes changes in the journal file to be synced into the master file, and the journal file to be removed. All dynamic update attempts will be refused while the zone is frozen.
|
||||
.RE
|
||||
.PP
|
||||
\fBthaw \fR\fB[\fIzone\fR [\fIclass\fR [\fIview\fR]]]\fR
|
||||
.RS 4
|
||||
Enable updates to a frozen dynamic zone. If no zone is specified, then all frozen zones are enabled. This causes the server to reload the zone from disk, and re\-enables dynamic updates after the load has completed. After a zone is thawed, dynamic updates will no longer be refused.
|
||||
.RE
|
||||
.PP
|
||||
\fBnotify \fR\fB\fIzone\fR\fR\fB \fR\fB[\fIclass\fR [\fIview\fR]]\fR
|
||||
.RS 4
|
||||
Resend NOTIFY messages for the zone.
|
||||
.RE
|
||||
.PP
|
||||
\fBreconfig\fR
|
||||
.RS 4
|
||||
Reload the configuration file and load new zones, but do not reload existing zone files even if they have changed. This is faster than a full
|
||||
\fBreload\fR
|
||||
when there is a large number of zones because it avoids the need to examine the modification times of the zones files.
|
||||
.RE
|
||||
.PP
|
||||
\fBstats\fR
|
||||
.RS 4
|
||||
Write server statistics to the statistics file.
|
||||
.RE
|
||||
.PP
|
||||
\fBquerylog\fR [on|off]
|
||||
.RS 4
|
||||
Toggle query logging. Query logging can also be enabled by explicitly directing the
|
||||
\fBqueries\fR
|
||||
\fBcategory\fR
|
||||
to a
|
||||
\fBchannel\fR
|
||||
in the
|
||||
\fBlogging\fR
|
||||
section of
|
||||
\fInamed.conf\fR
|
||||
or by specifying
|
||||
\fBquerylog yes;\fR
|
||||
in the
|
||||
\fBoptions\fR
|
||||
section of
|
||||
\fInamed.conf\fR.
|
||||
.RE
|
||||
.PP
|
||||
\fBdumpdb \fR\fB[\-all|\-cache|\-zone]\fR\fB \fR\fB[\fIview ...\fR]\fR
|
||||
.RS 4
|
||||
Dump the server's caches (default) and/or zones to the dump file for the specified views. If no view is specified, all views are dumped.
|
||||
.RE
|
||||
.PP
|
||||
\fBstop \fR\fB[\-p]\fR
|
||||
.RS 4
|
||||
Stop the server, making sure any recent changes made through dynamic update or IXFR are first saved to the master files of the updated zones. If
|
||||
\fB\-p\fR
|
||||
is specified
|
||||
\fBnamed\fR's process id is returned. This allows an external process to determine when
|
||||
\fBnamed\fR
|
||||
had completed stopping.
|
||||
.RE
|
||||
.PP
|
||||
\fBhalt \fR\fB[\-p]\fR
|
||||
.RS 4
|
||||
Stop the server immediately. Recent changes made through dynamic update or IXFR are not saved to the master files, but will be rolled forward from the journal files when the server is restarted. If
|
||||
\fB\-p\fR
|
||||
is specified
|
||||
\fBnamed\fR's process id is returned. This allows an external process to determine when
|
||||
\fBnamed\fR
|
||||
had completed halting.
|
||||
.RE
|
||||
.PP
|
||||
\fBtrace\fR
|
||||
.RS 4
|
||||
Increment the servers debugging level by one.
|
||||
.RE
|
||||
.PP
|
||||
\fBtrace \fR\fB\fIlevel\fR\fR
|
||||
.RS 4
|
||||
Sets the server's debugging level to an explicit value.
|
||||
.RE
|
||||
.PP
|
||||
\fBnotrace\fR
|
||||
.RS 4
|
||||
Sets the server's debugging level to 0.
|
||||
.RE
|
||||
.PP
|
||||
\fBflush\fR
|
||||
.RS 4
|
||||
Flushes the server's cache.
|
||||
.RE
|
||||
.PP
|
||||
\fBflushname\fR \fIname\fR [\fIview\fR]
|
||||
.RS 4
|
||||
Flushes the given name from the server's cache.
|
||||
.RE
|
||||
.PP
|
||||
\fBstatus\fR
|
||||
.RS 4
|
||||
Display status of the server. Note that the number of zones includes the internal
|
||||
\fBbind/CH\fR
|
||||
zone and the default
|
||||
\fB./IN\fR
|
||||
hint zone if there is not an explicit root zone configured.
|
||||
.RE
|
||||
.PP
|
||||
\fBrecursing\fR
|
||||
.RS 4
|
||||
Dump the list of queries
|
||||
\fBnamed\fR
|
||||
is currently recursing on.
|
||||
.RE
|
||||
.PP
|
||||
\fBvalidation ( on | off | check ) \fR\fB[\fIview ...\fR]\fR\fB \fR
|
||||
.RS 4
|
||||
Enable, disable, or check the current status of DNSSEC validation. Note
|
||||
\fBdnssec\-enable\fR
|
||||
also needs to be set to
|
||||
\fByes\fR
|
||||
or
|
||||
\fBauto\fR
|
||||
to be effective. It defaults to enabled.
|
||||
.RE
|
||||
.PP
|
||||
\fBtsig\-list\fR
|
||||
.RS 4
|
||||
List the names of all TSIG keys currently configured for use by
|
||||
\fBnamed\fR
|
||||
in each view. The list both statically configured keys and dynamic TKEY\-negotiated keys.
|
||||
.RE
|
||||
.PP
|
||||
\fBtsig\-delete\fR \fIkeyname\fR [\fIview\fR]
|
||||
.RS 4
|
||||
Delete a given TKEY\-negotiated key from the server. (This does not apply to statically configured TSIG keys.)
|
||||
.RE
|
||||
.SH "LIMITATIONS"
|
||||
.PP
|
||||
\fBrndc\fR
|
||||
does not yet support all the commands of the BIND 8
|
||||
\fBndc\fR
|
||||
utility.
|
||||
.PP
|
||||
There is currently no way to provide the shared secret for a
|
||||
\fBkey_id\fR
|
||||
without using the configuration file.
|
||||
@@ -142,7 +296,7 @@ BIND 9 Administrator Reference Manual.
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2004, 2005, 2007, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000, 2001 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
+6
-1
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009, 2011, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 2011-2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -79,6 +79,7 @@ static unsigned char databuf[2048];
|
||||
static isccc_ccmsg_t ccmsg;
|
||||
static isccc_region_t secret;
|
||||
static isc_boolean_t failed = ISC_FALSE;
|
||||
static isc_boolean_t c_flag = ISC_FALSE;
|
||||
static isc_mem_t *mctx;
|
||||
static int sends, recvs, connects;
|
||||
static char *command;
|
||||
@@ -458,6 +459,9 @@ parse_config(isc_mem_t *mctx, isc_log_t *log, const char *keyname,
|
||||
conffile = admin_keyfile;
|
||||
conftype = &cfg_type_rndckey;
|
||||
|
||||
if (c_flag)
|
||||
fatal("%s does not exist", admin_conffile);
|
||||
|
||||
if (! isc_file_exists(conffile))
|
||||
fatal("neither %s nor %s was found",
|
||||
admin_conffile, admin_keyfile);
|
||||
@@ -716,6 +720,7 @@ main(int argc, char **argv) {
|
||||
|
||||
case 'c':
|
||||
admin_conffile = isc_commandline_argument;
|
||||
c_flag = ISC_TRUE;
|
||||
break;
|
||||
|
||||
case 'k':
|
||||
|
||||
+277
-10
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005, 2007, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -21,7 +21,7 @@
|
||||
<!-- $Id: rndc.docbook,v 1.21 2007/12/14 20:39:14 marka Exp $ -->
|
||||
<refentry id="man.rndc">
|
||||
<refentryinfo>
|
||||
<date>June 30, 2000</date>
|
||||
<date>June 7, 2013</date>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
@@ -40,6 +40,7 @@
|
||||
<year>2004</year>
|
||||
<year>2005</year>
|
||||
<year>2007</year>
|
||||
<year>2013</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
@@ -194,22 +195,288 @@
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>COMMANDS</title>
|
||||
<para>
|
||||
For the complete set of commands supported by <command>rndc</command>,
|
||||
see the BIND 9 Administrator Reference Manual or run
|
||||
<command>rndc</command> without arguments to see its help
|
||||
message.
|
||||
A list of commands supported by <command>rndc</command> can
|
||||
be seen by running <command>rndc</command> without arguments.
|
||||
</para>
|
||||
<para>
|
||||
Currently supported commands are:
|
||||
</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><userinput>reload</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Reload configuration file and zones.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>reload <replaceable>zone</replaceable> <optional><replaceable>class</replaceable> <optional><replaceable>view</replaceable></optional></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Reload the given zone.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>refresh <replaceable>zone</replaceable> <optional><replaceable>class</replaceable> <optional><replaceable>view</replaceable></optional></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Schedule zone maintenance for the given zone.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>retransfer <replaceable>zone</replaceable> <optional><replaceable>class</replaceable> <optional><replaceable>view</replaceable></optional></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Retransfer the given zone from the master.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>freeze <optional><replaceable>zone</replaceable> <optional><replaceable>class</replaceable> <optional><replaceable>view</replaceable></optional></optional></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Suspend updates to a dynamic zone. If no zone is
|
||||
specified, then all zones are suspended. This allows
|
||||
manual edits to be made to a zone normally updated by
|
||||
dynamic update. It also causes changes in the
|
||||
journal file to be synced into the master file,
|
||||
and the journal file to be removed.
|
||||
All dynamic update attempts will be refused while
|
||||
the zone is frozen.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>thaw <optional><replaceable>zone</replaceable> <optional><replaceable>class</replaceable> <optional><replaceable>view</replaceable></optional></optional></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Enable updates to a frozen dynamic zone. If no
|
||||
zone is specified, then all frozen zones are
|
||||
enabled. This causes the server to reload the zone
|
||||
from disk, and re-enables dynamic updates after the
|
||||
load has completed. After a zone is thawed,
|
||||
dynamic updates will no longer be refused.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>notify <replaceable>zone</replaceable> <optional><replaceable>class</replaceable> <optional><replaceable>view</replaceable></optional></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Resend NOTIFY messages for the zone.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>reconfig</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Reload the configuration file and load new zones,
|
||||
but do not reload existing zone files even if they
|
||||
have changed.
|
||||
This is faster than a full <command>reload</command> when there
|
||||
is a large number of zones because it avoids the need
|
||||
to examine the
|
||||
modification times of the zones files.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>stats</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Write server statistics to the statistics file.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>querylog</userinput> <optional>on|off</optional> </term>
|
||||
<listitem>
|
||||
<para>
|
||||
Toggle query logging. Query logging can also be enabled
|
||||
by explicitly directing the <command>queries</command>
|
||||
<command>category</command> to a
|
||||
<command>channel</command> in the
|
||||
<command>logging</command> section of
|
||||
<filename>named.conf</filename> or by specifying
|
||||
<command>querylog yes;</command> in the
|
||||
<command>options</command> section of
|
||||
<filename>named.conf</filename>.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>dumpdb <optional>-all|-cache|-zone</optional> <optional><replaceable>view ...</replaceable></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Dump the server's caches (default) and/or zones to
|
||||
the
|
||||
dump file for the specified views. If no view is
|
||||
specified, all
|
||||
views are dumped.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>stop <optional>-p</optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Stop the server, making sure any recent changes
|
||||
made through dynamic update or IXFR are first saved to
|
||||
the master files of the updated zones.
|
||||
If <option>-p</option> is specified <command>named</command>'s process id is returned.
|
||||
This allows an external process to determine when <command>named</command>
|
||||
had completed stopping.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>halt <optional>-p</optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Stop the server immediately. Recent changes
|
||||
made through dynamic update or IXFR are not saved to
|
||||
the master files, but will be rolled forward from the
|
||||
journal files when the server is restarted.
|
||||
If <option>-p</option> is specified <command>named</command>'s process id is returned.
|
||||
This allows an external process to determine when <command>named</command>
|
||||
had completed halting.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>trace</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Increment the servers debugging level by one.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>trace <replaceable>level</replaceable></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Sets the server's debugging level to an explicit
|
||||
value.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>notrace</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Sets the server's debugging level to 0.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>flush</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Flushes the server's cache.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>flushname</userinput> <replaceable>name</replaceable> <optional><replaceable>view</replaceable></optional> </term>
|
||||
<listitem>
|
||||
<para>
|
||||
Flushes the given name from the server's cache.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>status</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Display status of the server.
|
||||
Note that the number of zones includes the internal <command>bind/CH</command> zone
|
||||
and the default <command>./IN</command>
|
||||
hint zone if there is not an
|
||||
explicit root zone configured.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>recursing</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Dump the list of queries <command>named</command> is currently recursing
|
||||
on.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>validation ( on | off | check ) <optional><replaceable>view ...</replaceable></optional> </userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Enable, disable, or check the current status of
|
||||
DNSSEC validation.
|
||||
Note <command>dnssec-enable</command> also needs to be
|
||||
set to <userinput>yes</userinput> or
|
||||
<userinput>auto</userinput> to be effective.
|
||||
It defaults to enabled.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>tsig-list</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
List the names of all TSIG keys currently configured
|
||||
for use by <command>named</command> in each view. The
|
||||
list both statically configured keys and dynamic
|
||||
TKEY-negotiated keys.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>tsig-delete</userinput> <replaceable>keyname</replaceable> <optional><replaceable>view</replaceable></optional></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Delete a given TKEY-negotiated key from the server.
|
||||
(This does not apply to statically configured TSIG
|
||||
keys.)
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>LIMITATIONS</title>
|
||||
<para><command>rndc</command>
|
||||
does not yet support all the commands of
|
||||
the BIND 8 <command>ndc</command> utility.
|
||||
</para>
|
||||
<para>
|
||||
There is currently no way to provide the shared secret for a
|
||||
<option>key_id</option> without using the configuration file.
|
||||
|
||||
+166
-15
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005, 2007, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -32,7 +32,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">rndc</code> [<code class="option">-b <em class="replaceable"><code>source-address</code></em></code>] [<code class="option">-c <em class="replaceable"><code>config-file</code></em></code>] [<code class="option">-k <em class="replaceable"><code>key-file</code></em></code>] [<code class="option">-s <em class="replaceable"><code>server</code></em></code>] [<code class="option">-p <em class="replaceable"><code>port</code></em></code>] [<code class="option">-V</code>] [<code class="option">-y <em class="replaceable"><code>key_id</code></em></code>] {command}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543414"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543417"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">rndc</strong></span>
|
||||
controls the operation of a name
|
||||
server. It supersedes the <span><strong class="command">ndc</strong></span> utility
|
||||
@@ -61,7 +61,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543449"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543452"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-b <em class="replaceable"><code>source-address</code></em></span></dt>
|
||||
<dd><p>
|
||||
@@ -125,19 +125,170 @@
|
||||
or write access.
|
||||
</p></dd>
|
||||
</dl></div>
|
||||
<p>
|
||||
For the complete set of commands supported by <span><strong class="command">rndc</strong></span>,
|
||||
see the BIND 9 Administrator Reference Manual or run
|
||||
<span><strong class="command">rndc</strong></span> without arguments to see its help
|
||||
message.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543657"></a><h2>LIMITATIONS</h2>
|
||||
<p><span><strong class="command">rndc</strong></span>
|
||||
does not yet support all the commands of
|
||||
the BIND 8 <span><strong class="command">ndc</strong></span> utility.
|
||||
<a name="id2543649"></a><h2>COMMANDS</h2>
|
||||
<p>
|
||||
A list of commands supported by <span><strong class="command">rndc</strong></span> can
|
||||
be seen by running <span><strong class="command">rndc</strong></span> without arguments.
|
||||
</p>
|
||||
<p>
|
||||
Currently supported commands are:
|
||||
</p>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><strong class="userinput"><code>reload</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Reload configuration file and zones.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>reload <em class="replaceable"><code>zone</code></em> [<span class="optional"><em class="replaceable"><code>class</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Reload the given zone.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>refresh <em class="replaceable"><code>zone</code></em> [<span class="optional"><em class="replaceable"><code>class</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Schedule zone maintenance for the given zone.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>retransfer <em class="replaceable"><code>zone</code></em> [<span class="optional"><em class="replaceable"><code>class</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Retransfer the given zone from the master.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>freeze [<span class="optional"><em class="replaceable"><code>zone</code></em> [<span class="optional"><em class="replaceable"><code>class</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Suspend updates to a dynamic zone. If no zone is
|
||||
specified, then all zones are suspended. This allows
|
||||
manual edits to be made to a zone normally updated by
|
||||
dynamic update. It also causes changes in the
|
||||
journal file to be synced into the master file,
|
||||
and the journal file to be removed.
|
||||
All dynamic update attempts will be refused while
|
||||
the zone is frozen.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>thaw [<span class="optional"><em class="replaceable"><code>zone</code></em> [<span class="optional"><em class="replaceable"><code>class</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Enable updates to a frozen dynamic zone. If no
|
||||
zone is specified, then all frozen zones are
|
||||
enabled. This causes the server to reload the zone
|
||||
from disk, and re-enables dynamic updates after the
|
||||
load has completed. After a zone is thawed,
|
||||
dynamic updates will no longer be refused.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>notify <em class="replaceable"><code>zone</code></em> [<span class="optional"><em class="replaceable"><code>class</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Resend NOTIFY messages for the zone.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>reconfig</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Reload the configuration file and load new zones,
|
||||
but do not reload existing zone files even if they
|
||||
have changed.
|
||||
This is faster than a full <span><strong class="command">reload</strong></span> when there
|
||||
is a large number of zones because it avoids the need
|
||||
to examine the
|
||||
modification times of the zones files.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>stats</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Write server statistics to the statistics file.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>querylog</code></strong> [<span class="optional">on|off</span>] </span></dt>
|
||||
<dd><p>
|
||||
Toggle query logging. Query logging can also be enabled
|
||||
by explicitly directing the <span><strong class="command">queries</strong></span>
|
||||
<span><strong class="command">category</strong></span> to a
|
||||
<span><strong class="command">channel</strong></span> in the
|
||||
<span><strong class="command">logging</strong></span> section of
|
||||
<code class="filename">named.conf</code> or by specifying
|
||||
<span><strong class="command">querylog yes;</strong></span> in the
|
||||
<span><strong class="command">options</strong></span> section of
|
||||
<code class="filename">named.conf</code>.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>dumpdb [<span class="optional">-all|-cache|-zone</span>] [<span class="optional"><em class="replaceable"><code>view ...</code></em></span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Dump the server's caches (default) and/or zones to
|
||||
the
|
||||
dump file for the specified views. If no view is
|
||||
specified, all
|
||||
views are dumped.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>stop [<span class="optional">-p</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Stop the server, making sure any recent changes
|
||||
made through dynamic update or IXFR are first saved to
|
||||
the master files of the updated zones.
|
||||
If <code class="option">-p</code> is specified <span><strong class="command">named</strong></span>'s process id is returned.
|
||||
This allows an external process to determine when <span><strong class="command">named</strong></span>
|
||||
had completed stopping.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>halt [<span class="optional">-p</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Stop the server immediately. Recent changes
|
||||
made through dynamic update or IXFR are not saved to
|
||||
the master files, but will be rolled forward from the
|
||||
journal files when the server is restarted.
|
||||
If <code class="option">-p</code> is specified <span><strong class="command">named</strong></span>'s process id is returned.
|
||||
This allows an external process to determine when <span><strong class="command">named</strong></span>
|
||||
had completed halting.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>trace</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Increment the servers debugging level by one.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>trace <em class="replaceable"><code>level</code></em></code></strong></span></dt>
|
||||
<dd><p>
|
||||
Sets the server's debugging level to an explicit
|
||||
value.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>notrace</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Sets the server's debugging level to 0.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>flush</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Flushes the server's cache.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>flushname</code></strong> <em class="replaceable"><code>name</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>] </span></dt>
|
||||
<dd><p>
|
||||
Flushes the given name from the server's cache.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>status</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Display status of the server.
|
||||
Note that the number of zones includes the internal <span><strong class="command">bind/CH</strong></span> zone
|
||||
and the default <span><strong class="command">./IN</strong></span>
|
||||
hint zone if there is not an
|
||||
explicit root zone configured.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>recursing</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Dump the list of queries <span><strong class="command">named</strong></span> is currently recursing
|
||||
on.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>validation ( on | off | check ) [<span class="optional"><em class="replaceable"><code>view ...</code></em></span>] </code></strong></span></dt>
|
||||
<dd><p>
|
||||
Enable, disable, or check the current status of
|
||||
DNSSEC validation.
|
||||
Note <span><strong class="command">dnssec-enable</strong></span> also needs to be
|
||||
set to <strong class="userinput"><code>yes</code></strong> or
|
||||
<strong class="userinput"><code>auto</code></strong> to be effective.
|
||||
It defaults to enabled.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>tsig-list</code></strong></span></dt>
|
||||
<dd><p>
|
||||
List the names of all TSIG keys currently configured
|
||||
for use by <span><strong class="command">named</strong></span> in each view. The
|
||||
list both statically configured keys and dynamic
|
||||
TKEY-negotiated keys.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>tsig-delete</code></strong> <em class="replaceable"><code>keyname</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span></dt>
|
||||
<dd><p>
|
||||
Delete a given TKEY-negotiated key from the server.
|
||||
(This does not apply to statically configured TSIG
|
||||
keys.)
|
||||
</p></dd>
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544382"></a><h2>LIMITATIONS</h2>
|
||||
<p>
|
||||
There is currently no way to provide the shared secret for a
|
||||
<code class="option">key_id</code> without using the configuration file.
|
||||
@@ -147,7 +298,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543684"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2544401"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">rndc.conf</span>(5)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">rndc-confgen</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
@@ -157,7 +308,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543739"></a><h2>AUTHOR</h2>
|
||||
<a name="id2544524"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
/*
|
||||
* Copyright (C) 2013 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.
|
||||
*/
|
||||
|
||||
/* $Id: named1.conf,v 1.2 2008/01/10 01:10:01 marka Exp $ */
|
||||
|
||||
controls { /* empty */ };
|
||||
|
||||
options {
|
||||
query-source address 10.53.0.2;
|
||||
notify-source 10.53.0.2;
|
||||
transfer-source 10.53.0.2;
|
||||
port 5300;
|
||||
pid-file "named.pid";
|
||||
listen-on { 10.53.0.2; };
|
||||
listen-on-v6 { none; };
|
||||
recursion no;
|
||||
notify yes;
|
||||
ixfr-from-differences yes;
|
||||
check-integrity no;
|
||||
allow-query-on { 10.53.0.2; };
|
||||
};
|
||||
|
||||
include "../../common/controls.conf";
|
||||
|
||||
key one {
|
||||
algorithm hmac-md5;
|
||||
secret "1234abcd8765";
|
||||
};
|
||||
|
||||
key two {
|
||||
algorithm hmac-md5;
|
||||
secret "1234abcd8765";
|
||||
};
|
||||
|
||||
zone "." {
|
||||
type hint;
|
||||
file "../../common/root.hint";
|
||||
};
|
||||
|
||||
zone "example" {
|
||||
type master;
|
||||
file "example.db";
|
||||
};
|
||||
|
||||
zone "tsigzone" {
|
||||
type master;
|
||||
file "tsigzone.db";
|
||||
allow-transfer { !key one; any; };
|
||||
};
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2008, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2008, 2012, 2013 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
|
||||
@@ -140,5 +140,14 @@ $DIG $DIGOPTS tsigzone. \
|
||||
@10.53.0.2 -b 10.53.0.3 axfr -y one:1234abcd8765 -p 5300 > dig.out
|
||||
grep "^;" dig.out > /dev/null 2>&1 || { echo "I:test $t failed" ; status=1; }
|
||||
|
||||
echo "I:testing allow-query-on ACL processing"
|
||||
cp -f ns2/named5.conf ns2/named.conf
|
||||
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 reload 2>&1 | sed 's/^/I:ns2 /'
|
||||
sleep 5
|
||||
t=`expr $t + 1`
|
||||
$DIG +tcp soa example. \
|
||||
@10.53.0.2 -b 10.53.0.3 -p 5300 > dig.out
|
||||
grep "status: NOERROR" dig.out > /dev/null 2>&1 || { echo "I:test $t failed" ; status=1; }
|
||||
|
||||
echo "I:exit status: $status"
|
||||
exit $status
|
||||
|
||||
@@ -48,7 +48,7 @@ SUBDIRS="acl additional allow_query builtin cacheclean checkconf
|
||||
forward glue ixfr limits logfileconfig lwresd masterfile
|
||||
masterformat notify nsupdate pending resolver rndc rrsetorder
|
||||
spf sortlist stub tkey unknown upforwd views wildcard xfer
|
||||
xferquota zonechecks"
|
||||
xferquota zero zonechecks"
|
||||
|
||||
# PERL will be an empty string if no perl interpreter was found.
|
||||
PERL=@PERL@
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2007, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -54,3 +54,8 @@ zone "example4." {
|
||||
type master;
|
||||
file "example.db";
|
||||
};
|
||||
|
||||
zone "1.0.10.in-addr.arpa." {
|
||||
type master;
|
||||
file "example.db";
|
||||
};
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2007, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -50,3 +50,9 @@ zone "example5." {
|
||||
forward only;
|
||||
forwarders { 10.53.0.2; };
|
||||
};
|
||||
|
||||
zone "1.0.10.in-addr.arpa" {
|
||||
type forward;
|
||||
forward only;
|
||||
forwarders { 10.53.0.2; };
|
||||
};
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004, 2007, 2011, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004, 2007, 2011-2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -101,5 +101,14 @@ $PERL ../start.pl --restart --noclean . ns4 || ret=1
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking that forward only zone overrides empty zone"
|
||||
ret=0
|
||||
$DIG 1.0.10.in-addr.arpa TXT @10.53.0.4 -p 5300 > dig.out.f2
|
||||
grep "status: NOERROR" dig.out.f2 > /dev/null || ret=1
|
||||
$DIG 2.0.10.in-addr.arpa TXT @10.53.0.4 -p 5300 > dig.out.f2
|
||||
grep "status: NXDOMAIN" dig.out.f2 > /dev/null || ret=1
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:exit status: $status"
|
||||
exit $status
|
||||
|
||||
@@ -32,13 +32,101 @@ PIDFILE="${THISDIR}/${CONFDIR}/named.pid"
|
||||
myRNDC="$RNDC -c ${THISDIR}/${CONFDIR}/rndc.conf"
|
||||
myNAMED="$NAMED -c ${THISDIR}/${CONFDIR}/named.conf -m record,size,mctx -T nosyslog -d 99"
|
||||
|
||||
status=0
|
||||
|
||||
cd $CONFDIR
|
||||
|
||||
echo "I:testing log file validity (named -g + only plain files allowed)"
|
||||
|
||||
# First run with a known good config.
|
||||
echo > $PLAINFILE
|
||||
cp $PLAINCONF named.conf
|
||||
$myRNDC reconfig
|
||||
grep "reloading configuration failed" named.run > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "I: testing plain file succeeded"
|
||||
else
|
||||
echo "I: testing plain file failed (unexpected)"
|
||||
echo "I:exit status: 1"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Now try directory, expect failure
|
||||
echo "I: testing directory as log file (named -g)"
|
||||
echo > named.run
|
||||
rm -rf $DIRFILE
|
||||
mkdir -p $DIRFILE >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
cp $DIRCONF named.conf
|
||||
echo > named.run
|
||||
$myRNDC reconfig
|
||||
grep "checking logging configuration failed: invalid file" named.run > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "I: testing directory as file succeeded (UNEXPECTED)"
|
||||
echo "I:exit status: 1"
|
||||
exit 1
|
||||
else
|
||||
echo "I: testing directory as log file failed (expected)"
|
||||
fi
|
||||
else
|
||||
echo "I: skipping directory test (unable to create directory)"
|
||||
fi
|
||||
|
||||
# Now try pipe file, expect failure
|
||||
echo "I: testing pipe file as log file (named -g)"
|
||||
echo > named.run
|
||||
rm -f $PIPEFILE
|
||||
mkfifo $PIPEFILE >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
cp $PIPECONF named.conf
|
||||
echo > named.run
|
||||
$myRNDC reconfig
|
||||
grep "checking logging configuration failed: invalid file" named.run > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "I: testing pipe file as log file succeeded (UNEXPECTED)"
|
||||
echo "I:exit status: 1"
|
||||
exit 1
|
||||
else
|
||||
echo "I: testing pipe file as log file failed (expected)"
|
||||
fi
|
||||
else
|
||||
echo "I: skipping pipe test (unable to create pipe)"
|
||||
fi
|
||||
|
||||
# Now try symlink file to plain file, expect success
|
||||
echo "I: testing symlink to plain file as log file (named -g)"
|
||||
# Assume success
|
||||
echo > named.run
|
||||
echo > $PLAINFILE
|
||||
rm -f $SYMFILE $SYMFILE
|
||||
ln -s $PLAINFILE $SYMFILE >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
cp $SYMCONF named.conf
|
||||
$myRNDC reconfig
|
||||
echo > named.run
|
||||
grep "reloading configuration failed" named.run > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "I: testing symlink to plain file succeeded"
|
||||
else
|
||||
echo "I: testing symlink to plain file failed (unexpected)"
|
||||
echo "I:exit status: 1"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo "I: skipping symlink test (unable to create symlink)"
|
||||
fi
|
||||
# Stop the server and run through a series of tests with various config
|
||||
# files while controlling the stop/start of the server.
|
||||
# Have to stop the stock server because it uses "-g"
|
||||
#
|
||||
$PERL ../stop.pl . ns1
|
||||
|
||||
cd $CONFDIR
|
||||
$PERL ../../stop.pl .. ns1
|
||||
|
||||
$myNAMED > /dev/null 2>&1
|
||||
|
||||
@@ -70,6 +158,7 @@ fi
|
||||
# Now try directory, expect failure
|
||||
echo "I: testing directory as log file"
|
||||
echo > named.run
|
||||
rm -rf $DIRFILE
|
||||
mkdir -p $DIRFILE >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
@@ -92,6 +181,7 @@ fi
|
||||
# Now try pipe file, expect failure
|
||||
echo "I: testing pipe file as log file"
|
||||
echo > named.run
|
||||
rm -f $PIPEFILE
|
||||
mkfifo $PIPEFILE >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
@@ -117,6 +207,7 @@ echo "I: testing symlink to plain file as log file"
|
||||
status=0
|
||||
echo > named.run
|
||||
echo > $PLAINFILE
|
||||
rm -f $SYMFILE
|
||||
ln -s $PLAINFILE $SYMFILE >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2006, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2006, 2007, 2013 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
|
||||
@@ -27,7 +27,7 @@ options {
|
||||
listen-on { 10.53.0.1; };
|
||||
listen-on-v6 { none; };
|
||||
recursion no;
|
||||
notify yes;
|
||||
notify no;
|
||||
rrset-order {
|
||||
name "fixed.example" order fixed;
|
||||
name "random.example" order random;
|
||||
@@ -40,4 +40,6 @@ options {
|
||||
zone "." {
|
||||
type master;
|
||||
file "root.db";
|
||||
notify explicit;
|
||||
also-notify { 10.53.0.2; };
|
||||
};
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
# Copyright (C) 2013 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.
|
||||
|
||||
rm -f */named.run
|
||||
rm -f ns2/example.db
|
||||
rm -f ns4/example.bk
|
||||
rm -f dig.out*
|
||||
rm -f query.list
|
||||
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* Copyright (C) 2013 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.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.15 2009/05/29 23:47:49 tbox Exp $ */
|
||||
|
||||
controls { /* empty */ };
|
||||
|
||||
options {
|
||||
query-source address 10.53.0.1;
|
||||
notify-source 10.53.0.1;
|
||||
transfer-source 10.53.0.1;
|
||||
port 5300;
|
||||
pid-file "named.pid";
|
||||
listen-on { 10.53.0.1; };
|
||||
listen-on-v6 { none; };
|
||||
recursion no;
|
||||
acache-enable yes;
|
||||
};
|
||||
|
||||
zone "." {
|
||||
type master;
|
||||
file "root.db";
|
||||
};
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
; Copyright (C) 2013 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.
|
||||
|
||||
$TTL 300
|
||||
@ SOA ns1. hostmaster.warn.example. (
|
||||
1 3600 1200 604800 3600 )
|
||||
NS ns1.
|
||||
ns1. A 10.53.0.1
|
||||
;
|
||||
example. NS ns2.example.
|
||||
ns2.example. A 10.53.0.2
|
||||
example. NS ns4.example.
|
||||
ns4.example. A 10.53.0.4
|
||||
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* Copyright (C) 2013 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.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.15 2009/05/29 23:47:49 tbox Exp $ */
|
||||
|
||||
controls { /* empty */ };
|
||||
|
||||
options {
|
||||
query-source address 10.53.0.2;
|
||||
notify-source 10.53.0.2;
|
||||
transfer-source 10.53.0.2;
|
||||
port 5300;
|
||||
pid-file "named.pid";
|
||||
listen-on { 10.53.0.2; };
|
||||
listen-on-v6 { none; };
|
||||
recursion no;
|
||||
acache-enable yes;
|
||||
};
|
||||
|
||||
zone "example" {
|
||||
type master;
|
||||
file "example.db";
|
||||
};
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* Copyright (C) 2013 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.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.15 2009/05/29 23:47:49 tbox Exp $ */
|
||||
|
||||
controls { /* empty */ };
|
||||
|
||||
options {
|
||||
query-source address 10.53.0.3;
|
||||
notify-source 10.53.0.3;
|
||||
transfer-source 10.53.0.3;
|
||||
port 5300;
|
||||
pid-file "named.pid";
|
||||
listen-on { 10.53.0.3; };
|
||||
listen-on-v6 { none; };
|
||||
recursion yes;
|
||||
acache-enable yes;
|
||||
};
|
||||
|
||||
zone "." {
|
||||
type hint;
|
||||
file "root.hint";
|
||||
};
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
; Copyright (C) 2013 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.
|
||||
|
||||
. NS ns1.
|
||||
ns1. A 10.53.0.1
|
||||
@@ -0,0 +1,38 @@
|
||||
/*
|
||||
* Copyright (C) 2013 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.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.15 2009/05/29 23:47:49 tbox Exp $ */
|
||||
|
||||
controls { /* empty */ };
|
||||
|
||||
options {
|
||||
query-source address 10.53.0.4;
|
||||
notify-source 10.53.0.4;
|
||||
transfer-source 10.53.0.4;
|
||||
port 5300;
|
||||
pid-file "named.pid";
|
||||
listen-on { 10.53.0.4; };
|
||||
listen-on-v6 { none; };
|
||||
recursion no;
|
||||
acache-enable yes;
|
||||
};
|
||||
|
||||
zone "example" {
|
||||
type slave;
|
||||
masters { 10.53.0.2; };
|
||||
file "example.bk";
|
||||
};
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
# Copyright (C) 2013 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.
|
||||
|
||||
sh ../genzone.sh 2 4 | sed -e 's/^$TTL 3600$/$TTL 0 ; force TTL to zero/' -e 's/86400.IN SOA/0 SOA/' > ns2/example.db
|
||||
@@ -0,0 +1,48 @@
|
||||
# Copyright (C) 2013 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.
|
||||
|
||||
SYSTEMTESTTOP=..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
|
||||
status=0
|
||||
echo "I:check lookups against zero TTL records"
|
||||
i=0
|
||||
passes=10
|
||||
$DIG -p 5300 @10.53.0.2 axfr example |
|
||||
awk '$2 == "0" { print "-q", $1, $4; print "-q", "zzz"$1, $4;}' > query.list
|
||||
while [ $i -lt $passes ]
|
||||
do
|
||||
ret=0
|
||||
$DIG -p 5300 @10.53.0.3 -f query.list > dig.out$i.1 &
|
||||
$DIG -p 5300 @10.53.0.3 -f query.list > dig.out$i.2 &
|
||||
$DIG -p 5300 @10.53.0.3 -f query.list > dig.out$i.3 &
|
||||
$DIG -p 5300 @10.53.0.3 -f query.list > dig.out$i.4 &
|
||||
$DIG -p 5300 @10.53.0.3 -f query.list > dig.out$i.5 &
|
||||
$DIG -p 5300 @10.53.0.3 -f query.list > dig.out$i.6 &
|
||||
wait
|
||||
grep "status: SERVFAIL" dig.out$i.1 && ret=1
|
||||
grep "status: SERVFAIL" dig.out$i.2 && ret=1
|
||||
grep "status: SERVFAIL" dig.out$i.3 && ret=1
|
||||
grep "status: SERVFAIL" dig.out$i.5 && ret=1
|
||||
grep "status: SERVFAIL" dig.out$i.6 && ret=1
|
||||
grep "status: SERVFAIL" dig.out$i.6 && ret=1
|
||||
[ $ret = 1 ] && break
|
||||
i=`expr $i + 1`
|
||||
echo "I: successfully completed pass $i of $passes"
|
||||
done
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:exit status: $status"
|
||||
exit $status
|
||||
Vendored
+561
-473
File diff suppressed because it is too large
Load Diff
@@ -241,6 +241,9 @@ int sigwait(const unsigned int *set, int *sig);
|
||||
/* Define to 1 if you have the <linux/capability.h> header file. */
|
||||
#undef HAVE_LINUX_CAPABILITY_H
|
||||
|
||||
/* Define to 1 if you have the <linux/types.h> header file. */
|
||||
#undef HAVE_LINUX_TYPES_H
|
||||
|
||||
/* Define to 1 if you have the <locale.h> header file. */
|
||||
#undef HAVE_LOCALE_H
|
||||
|
||||
|
||||
Vendored
+345
-110
@@ -1,42 +1,42 @@
|
||||
#! /bin/sh
|
||||
# Configuration validation subroutine script.
|
||||
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
||||
# 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
|
||||
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
|
||||
# 2011, 2012, 2013 Free Software Foundation, Inc.
|
||||
|
||||
timestamp='2004-08-29'
|
||||
timestamp='2012-12-29'
|
||||
|
||||
# This file is (in principle) common to ALL GNU software.
|
||||
# The presence of a machine in this file suggests that SOME GNU software
|
||||
# can handle that machine. It does not imply ALL GNU software can.
|
||||
#
|
||||
# This file is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# This file is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
# Boston, MA 02111-1307, USA.
|
||||
|
||||
# along with this program; if not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
# the same distribution terms that you use for the rest of that
|
||||
# program. This Exception is an additional permission under section 7
|
||||
# of the GNU General Public License, version 3 ("GPLv3").
|
||||
|
||||
# Please send patches to <config-patches@gnu.org>. Submit a context
|
||||
# diff and a properly formatted ChangeLog entry.
|
||||
|
||||
# Please send patches with a ChangeLog entry to config-patches@gnu.org.
|
||||
#
|
||||
# Configuration subroutine to validate and canonicalize a configuration type.
|
||||
# Supply the specified configuration type as an argument.
|
||||
# If it is invalid, we print an error message on stderr and exit with code 1.
|
||||
# Otherwise, we print the canonical config type on stdout and succeed.
|
||||
|
||||
# You can get the latest version of this script from:
|
||||
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
|
||||
|
||||
# This file is supposed to be the same for all GNU packages
|
||||
# and recognize all the CPU types, system types and aliases
|
||||
# that are meaningful with *any* GNU software.
|
||||
@@ -70,8 +70,9 @@ Report bugs and patches to <config-patches@gnu.org>."
|
||||
version="\
|
||||
GNU config.sub ($timestamp)
|
||||
|
||||
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
|
||||
Free Software Foundation, Inc.
|
||||
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
|
||||
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
|
||||
2012, 2013 Free Software Foundation, Inc.
|
||||
|
||||
This is free software; see the source for copying conditions. There is NO
|
||||
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
|
||||
@@ -83,11 +84,11 @@ Try \`$me --help' for more information."
|
||||
while test $# -gt 0 ; do
|
||||
case $1 in
|
||||
--time-stamp | --time* | -t )
|
||||
echo "$timestamp" ; exit 0 ;;
|
||||
echo "$timestamp" ; exit ;;
|
||||
--version | -v )
|
||||
echo "$version" ; exit 0 ;;
|
||||
echo "$version" ; exit ;;
|
||||
--help | --h* | -h )
|
||||
echo "$usage"; exit 0 ;;
|
||||
echo "$usage"; exit ;;
|
||||
-- ) # Stop option processing
|
||||
shift; break ;;
|
||||
- ) # Use stdin as input.
|
||||
@@ -99,7 +100,7 @@ while test $# -gt 0 ; do
|
||||
*local*)
|
||||
# First pass through any local machine types.
|
||||
echo $1
|
||||
exit 0;;
|
||||
exit ;;
|
||||
|
||||
* )
|
||||
break ;;
|
||||
@@ -118,11 +119,18 @@ esac
|
||||
# Here we must recognize all the valid KERNEL-OS combinations.
|
||||
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
|
||||
case $maybe_os in
|
||||
nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
|
||||
kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
|
||||
nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
|
||||
linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
|
||||
knetbsd*-gnu* | netbsd*-gnu* | \
|
||||
kopensolaris*-gnu* | \
|
||||
storm-chaos* | os2-emx* | rtmk-nova*)
|
||||
os=-$maybe_os
|
||||
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
|
||||
;;
|
||||
android-linux)
|
||||
os=-linux-android
|
||||
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
|
||||
;;
|
||||
*)
|
||||
basic_machine=`echo $1 | sed 's/-[^-]*$//'`
|
||||
if [ $basic_machine != $1 ]
|
||||
@@ -145,10 +153,13 @@ case $os in
|
||||
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
|
||||
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
|
||||
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
|
||||
-apple | -axis | -knuth | -cray)
|
||||
-apple | -axis | -knuth | -cray | -microblaze*)
|
||||
os=
|
||||
basic_machine=$1
|
||||
;;
|
||||
-bluegene*)
|
||||
os=-cnk
|
||||
;;
|
||||
-sim | -cisco | -oki | -wec | -winbond)
|
||||
os=
|
||||
basic_machine=$1
|
||||
@@ -163,13 +174,17 @@ case $os in
|
||||
os=-chorusos
|
||||
basic_machine=$1
|
||||
;;
|
||||
-chorusrdb)
|
||||
os=-chorusrdb
|
||||
-chorusrdb)
|
||||
os=-chorusrdb
|
||||
basic_machine=$1
|
||||
;;
|
||||
;;
|
||||
-hiux*)
|
||||
os=-hiuxwe2
|
||||
;;
|
||||
-sco6)
|
||||
os=-sco5v6
|
||||
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
|
||||
;;
|
||||
-sco5)
|
||||
os=-sco3.2v5
|
||||
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
|
||||
@@ -186,6 +201,10 @@ case $os in
|
||||
# Don't forget version if it is 3.2v4 or newer.
|
||||
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
|
||||
;;
|
||||
-sco5v6*)
|
||||
# Don't forget version if it is 3.2v4 or newer.
|
||||
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
|
||||
;;
|
||||
-sco*)
|
||||
os=-sco3.2v2
|
||||
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
|
||||
@@ -203,6 +222,12 @@ case $os in
|
||||
-isc*)
|
||||
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
|
||||
;;
|
||||
-lynx*178)
|
||||
os=-lynxos178
|
||||
;;
|
||||
-lynx*5)
|
||||
os=-lynxos5
|
||||
;;
|
||||
-lynx*)
|
||||
os=-lynxos
|
||||
;;
|
||||
@@ -227,25 +252,38 @@ case $basic_machine in
|
||||
# Some are omitted here because they have special meanings below.
|
||||
1750a | 580 \
|
||||
| a29k \
|
||||
| aarch64 | aarch64_be \
|
||||
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
|
||||
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
|
||||
| am33_2.0 \
|
||||
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
|
||||
| arc \
|
||||
| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
|
||||
| avr | avr32 \
|
||||
| be32 | be64 \
|
||||
| bfin \
|
||||
| c4x | clipper \
|
||||
| d10v | d30v | dlx | dsp16xx \
|
||||
| fr30 | frv \
|
||||
| epiphany \
|
||||
| fido | fr30 | frv \
|
||||
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
|
||||
| hexagon \
|
||||
| i370 | i860 | i960 | ia64 \
|
||||
| ip2k | iq2000 \
|
||||
| m32r | m32rle | m68000 | m68k | m88k | mcore \
|
||||
| le32 | le64 \
|
||||
| lm32 \
|
||||
| m32c | m32r | m32rle | m68000 | m68k | m88k \
|
||||
| maxq | mb | microblaze | microblazeel | mcore | mep | metag \
|
||||
| mips | mipsbe | mipseb | mipsel | mipsle \
|
||||
| mips16 \
|
||||
| mips64 | mips64el \
|
||||
| mips64vr | mips64vrel \
|
||||
| mips64octeon | mips64octeonel \
|
||||
| mips64orion | mips64orionel \
|
||||
| mips64r5900 | mips64r5900el \
|
||||
| mips64vr | mips64vrel \
|
||||
| mips64vr4100 | mips64vr4100el \
|
||||
| mips64vr4300 | mips64vr4300el \
|
||||
| mips64vr5000 | mips64vr5000el \
|
||||
| mips64vr5900 | mips64vr5900el \
|
||||
| mipsisa32 | mipsisa32el \
|
||||
| mipsisa32r2 | mipsisa32r2el \
|
||||
| mipsisa64 | mipsisa64el \
|
||||
@@ -254,30 +292,65 @@ case $basic_machine in
|
||||
| mipsisa64sr71k | mipsisa64sr71kel \
|
||||
| mipstx39 | mipstx39el \
|
||||
| mn10200 | mn10300 \
|
||||
| moxie \
|
||||
| mt \
|
||||
| msp430 \
|
||||
| nds32 | nds32le | nds32be \
|
||||
| nios | nios2 \
|
||||
| ns16k | ns32k \
|
||||
| openrisc | or32 \
|
||||
| open8 \
|
||||
| or32 \
|
||||
| pdp10 | pdp11 | pj | pjl \
|
||||
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
|
||||
| powerpc | powerpc64 | powerpc64le | powerpcle \
|
||||
| pyramid \
|
||||
| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
|
||||
| rl78 | rx \
|
||||
| score \
|
||||
| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
|
||||
| sh64 | sh64le \
|
||||
| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv8 | sparcv9 | sparcv9b \
|
||||
| strongarm \
|
||||
| tahoe | thumb | tic4x | tic80 | tron \
|
||||
| v850 | v850e \
|
||||
| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
|
||||
| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
|
||||
| spu \
|
||||
| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
|
||||
| ubicom32 \
|
||||
| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
|
||||
| we32k \
|
||||
| x86 | xscale | xstormy16 | xtensa \
|
||||
| z8k)
|
||||
| x86 | xc16x | xstormy16 | xtensa \
|
||||
| z8k | z80)
|
||||
basic_machine=$basic_machine-unknown
|
||||
;;
|
||||
m6811 | m68hc11 | m6812 | m68hc12)
|
||||
# Motorola 68HC11/12.
|
||||
c54x)
|
||||
basic_machine=tic54x-unknown
|
||||
;;
|
||||
c55x)
|
||||
basic_machine=tic55x-unknown
|
||||
;;
|
||||
c6x)
|
||||
basic_machine=tic6x-unknown
|
||||
;;
|
||||
m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
|
||||
basic_machine=$basic_machine-unknown
|
||||
os=-none
|
||||
;;
|
||||
m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
|
||||
;;
|
||||
ms1)
|
||||
basic_machine=mt-unknown
|
||||
;;
|
||||
|
||||
strongarm | thumb | xscale)
|
||||
basic_machine=arm-unknown
|
||||
;;
|
||||
xgate)
|
||||
basic_machine=$basic_machine-unknown
|
||||
os=-none
|
||||
;;
|
||||
xscaleeb)
|
||||
basic_machine=armeb-unknown
|
||||
;;
|
||||
|
||||
xscaleel)
|
||||
basic_machine=armel-unknown
|
||||
;;
|
||||
|
||||
# We use `pc' rather than `unknown'
|
||||
# because (1) that's what they normally are, and
|
||||
@@ -293,32 +366,41 @@ case $basic_machine in
|
||||
# Recognize the basic CPU types with company name.
|
||||
580-* \
|
||||
| a29k-* \
|
||||
| aarch64-* | aarch64_be-* \
|
||||
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
|
||||
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
|
||||
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
|
||||
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
|
||||
| avr-* \
|
||||
| bs2000-* \
|
||||
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
|
||||
| avr-* | avr32-* \
|
||||
| be32-* | be64-* \
|
||||
| bfin-* | bs2000-* \
|
||||
| c[123]* | c30-* | [cjt]90-* | c4x-* \
|
||||
| clipper-* | craynv-* | cydra-* \
|
||||
| d10v-* | d30v-* | dlx-* \
|
||||
| elxsi-* \
|
||||
| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
|
||||
| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
|
||||
| h8300-* | h8500-* \
|
||||
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
|
||||
| hexagon-* \
|
||||
| i*86-* | i860-* | i960-* | ia64-* \
|
||||
| ip2k-* | iq2000-* \
|
||||
| m32r-* | m32rle-* \
|
||||
| le32-* | le64-* \
|
||||
| lm32-* \
|
||||
| m32c-* | m32r-* | m32rle-* \
|
||||
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
|
||||
| m88110-* | m88k-* | mcore-* \
|
||||
| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
|
||||
| microblaze-* | microblazeel-* \
|
||||
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
|
||||
| mips16-* \
|
||||
| mips64-* | mips64el-* \
|
||||
| mips64vr-* | mips64vrel-* \
|
||||
| mips64octeon-* | mips64octeonel-* \
|
||||
| mips64orion-* | mips64orionel-* \
|
||||
| mips64r5900-* | mips64r5900el-* \
|
||||
| mips64vr-* | mips64vrel-* \
|
||||
| mips64vr4100-* | mips64vr4100el-* \
|
||||
| mips64vr4300-* | mips64vr4300el-* \
|
||||
| mips64vr5000-* | mips64vr5000el-* \
|
||||
| mips64vr5900-* | mips64vr5900el-* \
|
||||
| mipsisa32-* | mipsisa32el-* \
|
||||
| mipsisa32r2-* | mipsisa32r2el-* \
|
||||
| mipsisa64-* | mipsisa64el-* \
|
||||
@@ -327,26 +409,38 @@ case $basic_machine in
|
||||
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
|
||||
| mipstx39-* | mipstx39el-* \
|
||||
| mmix-* \
|
||||
| mt-* \
|
||||
| msp430-* \
|
||||
| nds32-* | nds32le-* | nds32be-* \
|
||||
| nios-* | nios2-* \
|
||||
| none-* | np1-* | ns16k-* | ns32k-* \
|
||||
| open8-* \
|
||||
| orion-* \
|
||||
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
|
||||
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
|
||||
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
|
||||
| pyramid-* \
|
||||
| romp-* | rs6000-* \
|
||||
| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
|
||||
| rl78-* | romp-* | rs6000-* | rx-* \
|
||||
| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
|
||||
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
|
||||
| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
|
||||
| sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
|
||||
| tahoe-* | thumb-* \
|
||||
| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
|
||||
| sparclite-* \
|
||||
| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
|
||||
| tahoe-* \
|
||||
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
|
||||
| tile*-* \
|
||||
| tron-* \
|
||||
| v850-* | v850e-* | vax-* \
|
||||
| ubicom32-* \
|
||||
| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
|
||||
| vax-* \
|
||||
| we32k-* \
|
||||
| x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
|
||||
| xtensa-* \
|
||||
| x86-* | x86_64-* | xc16x-* | xps100-* \
|
||||
| xstormy16-* | xtensa*-* \
|
||||
| ymp-* \
|
||||
| z8k-*)
|
||||
| z8k-* | z80-*)
|
||||
;;
|
||||
# Recognize the basic CPU types without company name, with glob match.
|
||||
xtensa*)
|
||||
basic_machine=$basic_machine-unknown
|
||||
;;
|
||||
# Recognize the various machine names and aliases which stand
|
||||
# for a CPU type and a company and sometimes even an OS.
|
||||
@@ -364,7 +458,7 @@ case $basic_machine in
|
||||
basic_machine=a29k-amd
|
||||
os=-udi
|
||||
;;
|
||||
abacus)
|
||||
abacus)
|
||||
basic_machine=abacus-unknown
|
||||
;;
|
||||
adobe68k)
|
||||
@@ -410,6 +504,10 @@ case $basic_machine in
|
||||
basic_machine=m68k-apollo
|
||||
os=-bsd
|
||||
;;
|
||||
aros)
|
||||
basic_machine=i386-pc
|
||||
os=-aros
|
||||
;;
|
||||
aux)
|
||||
basic_machine=m68k-apple
|
||||
os=-aux
|
||||
@@ -418,10 +516,35 @@ case $basic_machine in
|
||||
basic_machine=ns32k-sequent
|
||||
os=-dynix
|
||||
;;
|
||||
blackfin)
|
||||
basic_machine=bfin-unknown
|
||||
os=-linux
|
||||
;;
|
||||
blackfin-*)
|
||||
basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
|
||||
os=-linux
|
||||
;;
|
||||
bluegene*)
|
||||
basic_machine=powerpc-ibm
|
||||
os=-cnk
|
||||
;;
|
||||
c54x-*)
|
||||
basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
|
||||
;;
|
||||
c55x-*)
|
||||
basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
|
||||
;;
|
||||
c6x-*)
|
||||
basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
|
||||
;;
|
||||
c90)
|
||||
basic_machine=c90-cray
|
||||
os=-unicos
|
||||
;;
|
||||
cegcc)
|
||||
basic_machine=arm-unknown
|
||||
os=-cegcc
|
||||
;;
|
||||
convex-c1)
|
||||
basic_machine=c1-convex
|
||||
os=-bsd
|
||||
@@ -450,8 +573,8 @@ case $basic_machine in
|
||||
basic_machine=craynv-cray
|
||||
os=-unicosmp
|
||||
;;
|
||||
cr16c)
|
||||
basic_machine=cr16c-unknown
|
||||
cr16 | cr16-*)
|
||||
basic_machine=cr16-unknown
|
||||
os=-elf
|
||||
;;
|
||||
crds | unos)
|
||||
@@ -489,6 +612,14 @@ case $basic_machine in
|
||||
basic_machine=m88k-motorola
|
||||
os=-sysv3
|
||||
;;
|
||||
dicos)
|
||||
basic_machine=i686-pc
|
||||
os=-dicos
|
||||
;;
|
||||
djgpp)
|
||||
basic_machine=i586-pc
|
||||
os=-msdosdjgpp
|
||||
;;
|
||||
dpx20 | dpx20-*)
|
||||
basic_machine=rs6000-bull
|
||||
os=-bosx
|
||||
@@ -600,7 +731,6 @@ case $basic_machine in
|
||||
i370-ibm* | ibm*)
|
||||
basic_machine=i370-ibm
|
||||
;;
|
||||
# I'm not sure what "Sysv32" means. Should this be sysv3.2?
|
||||
i*86v32)
|
||||
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
|
||||
os=-sysv32
|
||||
@@ -639,6 +769,14 @@ case $basic_machine in
|
||||
basic_machine=m68k-isi
|
||||
os=-sysv
|
||||
;;
|
||||
m68knommu)
|
||||
basic_machine=m68k-unknown
|
||||
os=-linux
|
||||
;;
|
||||
m68knommu-*)
|
||||
basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
|
||||
os=-linux
|
||||
;;
|
||||
m88k-omron*)
|
||||
basic_machine=m88k-omron
|
||||
;;
|
||||
@@ -650,10 +788,21 @@ case $basic_machine in
|
||||
basic_machine=ns32k-utek
|
||||
os=-sysv
|
||||
;;
|
||||
microblaze*)
|
||||
basic_machine=microblaze-xilinx
|
||||
;;
|
||||
mingw64)
|
||||
basic_machine=x86_64-pc
|
||||
os=-mingw64
|
||||
;;
|
||||
mingw32)
|
||||
basic_machine=i386-pc
|
||||
os=-mingw32
|
||||
;;
|
||||
mingw32ce)
|
||||
basic_machine=arm-unknown
|
||||
os=-mingw32ce
|
||||
;;
|
||||
miniframe)
|
||||
basic_machine=m68000-convergent
|
||||
;;
|
||||
@@ -679,10 +828,21 @@ case $basic_machine in
|
||||
basic_machine=i386-pc
|
||||
os=-msdos
|
||||
;;
|
||||
ms1-*)
|
||||
basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
|
||||
;;
|
||||
msys)
|
||||
basic_machine=i386-pc
|
||||
os=-msys
|
||||
;;
|
||||
mvs)
|
||||
basic_machine=i370-ibm
|
||||
os=-mvs
|
||||
;;
|
||||
nacl)
|
||||
basic_machine=le32-unknown
|
||||
os=-nacl
|
||||
;;
|
||||
ncr3000)
|
||||
basic_machine=i486-ncr
|
||||
os=-sysv4
|
||||
@@ -747,6 +907,12 @@ case $basic_machine in
|
||||
np1)
|
||||
basic_machine=np1-gould
|
||||
;;
|
||||
neo-tandem)
|
||||
basic_machine=neo-tandem
|
||||
;;
|
||||
nse-tandem)
|
||||
basic_machine=nse-tandem
|
||||
;;
|
||||
nsr-tandem)
|
||||
basic_machine=nsr-tandem
|
||||
;;
|
||||
@@ -754,9 +920,8 @@ case $basic_machine in
|
||||
basic_machine=hppa1.1-oki
|
||||
os=-proelf
|
||||
;;
|
||||
or32 | or32-*)
|
||||
openrisc | openrisc-*)
|
||||
basic_machine=or32-unknown
|
||||
os=-coff
|
||||
;;
|
||||
os400)
|
||||
basic_machine=powerpc-ibm
|
||||
@@ -778,6 +943,14 @@ case $basic_machine in
|
||||
basic_machine=i860-intel
|
||||
os=-osf
|
||||
;;
|
||||
parisc)
|
||||
basic_machine=hppa-unknown
|
||||
os=-linux
|
||||
;;
|
||||
parisc-*)
|
||||
basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
|
||||
os=-linux
|
||||
;;
|
||||
pbd)
|
||||
basic_machine=sparc-tti
|
||||
;;
|
||||
@@ -787,6 +960,12 @@ case $basic_machine in
|
||||
pc532 | pc532-*)
|
||||
basic_machine=ns32k-pc532
|
||||
;;
|
||||
pc98)
|
||||
basic_machine=i386-pc
|
||||
;;
|
||||
pc98-*)
|
||||
basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
|
||||
;;
|
||||
pentium | p5 | k5 | k6 | nexgen | viac3)
|
||||
basic_machine=i586-pc
|
||||
;;
|
||||
@@ -816,9 +995,10 @@ case $basic_machine in
|
||||
;;
|
||||
power) basic_machine=power-ibm
|
||||
;;
|
||||
ppc) basic_machine=powerpc-unknown
|
||||
ppc | ppcbe) basic_machine=powerpc-unknown
|
||||
;;
|
||||
ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
|
||||
ppc-* | ppcbe-*)
|
||||
basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
|
||||
;;
|
||||
ppcle | powerpclittle | ppc-le | powerpc-little)
|
||||
basic_machine=powerpcle-unknown
|
||||
@@ -843,6 +1023,14 @@ case $basic_machine in
|
||||
basic_machine=i586-unknown
|
||||
os=-pw32
|
||||
;;
|
||||
rdos | rdos64)
|
||||
basic_machine=x86_64-pc
|
||||
os=-rdos
|
||||
;;
|
||||
rdos32)
|
||||
basic_machine=i386-pc
|
||||
os=-rdos
|
||||
;;
|
||||
rom68k)
|
||||
basic_machine=m68k-rom68k
|
||||
os=-coff
|
||||
@@ -869,6 +1057,10 @@ case $basic_machine in
|
||||
sb1el)
|
||||
basic_machine=mipsisa64sb1el-unknown
|
||||
;;
|
||||
sde)
|
||||
basic_machine=mipsisa32-sde
|
||||
os=-elf
|
||||
;;
|
||||
sei)
|
||||
basic_machine=mips-sei
|
||||
os=-seiux
|
||||
@@ -880,6 +1072,9 @@ case $basic_machine in
|
||||
basic_machine=sh-hitachi
|
||||
os=-hms
|
||||
;;
|
||||
sh5el)
|
||||
basic_machine=sh5le-unknown
|
||||
;;
|
||||
sh64)
|
||||
basic_machine=sh64-unknown
|
||||
;;
|
||||
@@ -901,6 +1096,9 @@ case $basic_machine in
|
||||
basic_machine=i860-stratus
|
||||
os=-sysv4
|
||||
;;
|
||||
strongarm-* | thumb-*)
|
||||
basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
|
||||
;;
|
||||
sun2)
|
||||
basic_machine=m68000-sun
|
||||
;;
|
||||
@@ -957,17 +1155,9 @@ case $basic_machine in
|
||||
basic_machine=t90-cray
|
||||
os=-unicos
|
||||
;;
|
||||
tic54x | c54x*)
|
||||
basic_machine=tic54x-unknown
|
||||
os=-coff
|
||||
;;
|
||||
tic55x | c55x*)
|
||||
basic_machine=tic55x-unknown
|
||||
os=-coff
|
||||
;;
|
||||
tic6x | c6x*)
|
||||
basic_machine=tic6x-unknown
|
||||
os=-coff
|
||||
tile*)
|
||||
basic_machine=$basic_machine-unknown
|
||||
os=-linux-gnu
|
||||
;;
|
||||
tx39)
|
||||
basic_machine=mipstx39-unknown
|
||||
@@ -1029,9 +1219,16 @@ case $basic_machine in
|
||||
basic_machine=hppa1.1-winbond
|
||||
os=-proelf
|
||||
;;
|
||||
xbox)
|
||||
basic_machine=i686-pc
|
||||
os=-mingw32
|
||||
;;
|
||||
xps | xps100)
|
||||
basic_machine=xps100-honeywell
|
||||
;;
|
||||
xscale-* | xscalee[bl]-*)
|
||||
basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
|
||||
;;
|
||||
ymp)
|
||||
basic_machine=ymp-cray
|
||||
os=-unicos
|
||||
@@ -1040,6 +1237,10 @@ case $basic_machine in
|
||||
basic_machine=z8k-unknown
|
||||
os=-sim
|
||||
;;
|
||||
z80-*-coff)
|
||||
basic_machine=z80-unknown
|
||||
os=-sim
|
||||
;;
|
||||
none)
|
||||
basic_machine=none-none
|
||||
os=-none
|
||||
@@ -1078,13 +1279,10 @@ case $basic_machine in
|
||||
we32k)
|
||||
basic_machine=we32k-att
|
||||
;;
|
||||
sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
|
||||
sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
|
||||
basic_machine=sh-unknown
|
||||
;;
|
||||
sh64)
|
||||
basic_machine=sh64-unknown
|
||||
;;
|
||||
sparc | sparcv8 | sparcv9 | sparcv9b)
|
||||
sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
|
||||
basic_machine=sparc-sun
|
||||
;;
|
||||
cydra)
|
||||
@@ -1128,9 +1326,12 @@ esac
|
||||
if [ x"$os" != x"" ]
|
||||
then
|
||||
case $os in
|
||||
# First match some system type aliases
|
||||
# that might get confused with valid system types.
|
||||
# First match some system type aliases
|
||||
# that might get confused with valid system types.
|
||||
# -solaris* is a basic system type, with this one exception.
|
||||
-auroraux)
|
||||
os=-auroraux
|
||||
;;
|
||||
-solaris1 | -solaris1.*)
|
||||
os=`echo $os | sed -e 's|solaris1|sunos4|'`
|
||||
;;
|
||||
@@ -1151,26 +1352,31 @@ case $os in
|
||||
# Each alternative MUST END IN A *, to match a version number.
|
||||
# -sysv* is not here because it comes later, after sysvr4.
|
||||
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
|
||||
| -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
|
||||
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
|
||||
| -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
|
||||
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
|
||||
| -sym* | -kopensolaris* \
|
||||
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
|
||||
| -aos* \
|
||||
| -aos* | -aros* \
|
||||
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
|
||||
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
|
||||
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
|
||||
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
|
||||
| -bitrig* | -openbsd* | -solidbsd* \
|
||||
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
|
||||
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
|
||||
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
|
||||
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
|
||||
| -chorusos* | -chorusrdb* \
|
||||
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
|
||||
| -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
|
||||
| -chorusos* | -chorusrdb* | -cegcc* \
|
||||
| -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
|
||||
| -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
|
||||
| -linux-newlib* | -linux-musl* | -linux-uclibc* \
|
||||
| -uxpv* | -beos* | -mpeix* | -udk* \
|
||||
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
|
||||
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
|
||||
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
|
||||
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
|
||||
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
|
||||
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*)
|
||||
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
|
||||
| -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
|
||||
# Remember, each alternative MUST END IN *, to match a version number.
|
||||
;;
|
||||
-qnx*)
|
||||
@@ -1188,7 +1394,7 @@ case $os in
|
||||
os=`echo $os | sed -e 's|nto|nto-qnx|'`
|
||||
;;
|
||||
-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
|
||||
| -windows* | -osx | -abug | -netware* | -os9* | -beos* \
|
||||
| -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
|
||||
| -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
|
||||
;;
|
||||
-mac*)
|
||||
@@ -1209,7 +1415,7 @@ case $os in
|
||||
-opened*)
|
||||
os=-openedition
|
||||
;;
|
||||
-os400*)
|
||||
-os400*)
|
||||
os=-os400
|
||||
;;
|
||||
-wince*)
|
||||
@@ -1258,7 +1464,7 @@ case $os in
|
||||
-sinix*)
|
||||
os=-sysv4
|
||||
;;
|
||||
-tpf*)
|
||||
-tpf*)
|
||||
os=-tpf
|
||||
;;
|
||||
-triton*)
|
||||
@@ -1297,6 +1503,14 @@ case $os in
|
||||
-kaos*)
|
||||
os=-kaos
|
||||
;;
|
||||
-zvmoe)
|
||||
os=-zvmoe
|
||||
;;
|
||||
-dicos*)
|
||||
os=-dicos
|
||||
;;
|
||||
-nacl*)
|
||||
;;
|
||||
-none)
|
||||
;;
|
||||
*)
|
||||
@@ -1319,6 +1533,12 @@ else
|
||||
# system, and we'll never get to this point.
|
||||
|
||||
case $basic_machine in
|
||||
score-*)
|
||||
os=-elf
|
||||
;;
|
||||
spu-*)
|
||||
os=-elf
|
||||
;;
|
||||
*-acorn)
|
||||
os=-riscix1.2
|
||||
;;
|
||||
@@ -1328,9 +1548,21 @@ case $basic_machine in
|
||||
arm*-semi)
|
||||
os=-aout
|
||||
;;
|
||||
c4x-* | tic4x-*)
|
||||
os=-coff
|
||||
;;
|
||||
c4x-* | tic4x-*)
|
||||
os=-coff
|
||||
;;
|
||||
hexagon-*)
|
||||
os=-elf
|
||||
;;
|
||||
tic54x-*)
|
||||
os=-coff
|
||||
;;
|
||||
tic55x-*)
|
||||
os=-coff
|
||||
;;
|
||||
tic6x-*)
|
||||
os=-coff
|
||||
;;
|
||||
# This must come before the *-dec entry.
|
||||
pdp10-*)
|
||||
os=-tops20
|
||||
@@ -1349,13 +1581,13 @@ case $basic_machine in
|
||||
;;
|
||||
m68000-sun)
|
||||
os=-sunos3
|
||||
# This also exists in the configure program, but was not the
|
||||
# default.
|
||||
# os=-sunos4
|
||||
;;
|
||||
m68*-cisco)
|
||||
os=-aout
|
||||
;;
|
||||
mep-*)
|
||||
os=-elf
|
||||
;;
|
||||
mips*-cisco)
|
||||
os=-elf
|
||||
;;
|
||||
@@ -1374,10 +1606,13 @@ case $basic_machine in
|
||||
*-be)
|
||||
os=-beos
|
||||
;;
|
||||
*-haiku)
|
||||
os=-haiku
|
||||
;;
|
||||
*-ibm)
|
||||
os=-aix
|
||||
;;
|
||||
*-knuth)
|
||||
*-knuth)
|
||||
os=-mmixware
|
||||
;;
|
||||
*-wec)
|
||||
@@ -1482,7 +1717,7 @@ case $basic_machine in
|
||||
-sunos*)
|
||||
vendor=sun
|
||||
;;
|
||||
-aix*)
|
||||
-cnk*|-aix*)
|
||||
vendor=ibm
|
||||
;;
|
||||
-beos*)
|
||||
@@ -1545,7 +1780,7 @@ case $basic_machine in
|
||||
esac
|
||||
|
||||
echo $basic_machine$os
|
||||
exit 0
|
||||
exit
|
||||
|
||||
# Local variables:
|
||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||
|
||||
@@ -1316,6 +1316,7 @@ PERL
|
||||
ETAGS
|
||||
LN
|
||||
ARFLAGS
|
||||
CCNOOPT
|
||||
CCOPT
|
||||
STD_CWARNINGS
|
||||
STD_CDEFINES
|
||||
@@ -1457,6 +1458,7 @@ with_dlz_ldap
|
||||
with_dlz_odbc
|
||||
with_dlz_stub
|
||||
with_make_clean
|
||||
enable_full_report
|
||||
'
|
||||
ac_precious_vars='build_alias
|
||||
host_alias
|
||||
@@ -2101,6 +2103,7 @@ Optional Features:
|
||||
[default=autodetect]
|
||||
--enable-fixed-rrset enable fixed rrset ordering
|
||||
[default=no]
|
||||
--enable-full-report report values of all configure options
|
||||
|
||||
Optional Packages:
|
||||
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
|
||||
@@ -11770,6 +11773,7 @@ fi
|
||||
|
||||
|
||||
|
||||
|
||||
# Warn if the user specified libbind, which is now deprecated
|
||||
# Check whether --enable-libbind was given.
|
||||
if test "${enable_libbind+set}" = set; then :
|
||||
@@ -11808,6 +11812,7 @@ yes)
|
||||
test "${enable_exportlib+set}" = set || enable_exportlib=yes
|
||||
;;
|
||||
esac
|
||||
test "${enable_symtable+set}" = set || enable_symtable=all
|
||||
;;
|
||||
esac
|
||||
#
|
||||
@@ -12692,6 +12697,13 @@ case "$host" in
|
||||
;;
|
||||
esac
|
||||
|
||||
#
|
||||
# CCNOOPT defaults to -O0 on gcc and disables optimization when is last
|
||||
#
|
||||
if test "X$CCNOOPT" = "X" -a "X$GCC" = "Xyes"; then
|
||||
CCNOOPT="-O0"
|
||||
fi
|
||||
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
|
||||
$as_echo_n "checking for ANSI C header files... " >&6; }
|
||||
if ${ac_cv_header_stdc+:} false; then :
|
||||
@@ -14856,11 +14868,13 @@ then
|
||||
*-freebsd*)
|
||||
CC="$CC -pthread"
|
||||
CCOPT="$CCOPT -pthread"
|
||||
CCNOOPT="$CCNOOPT -pthread"
|
||||
STD_CDEFINES="$STD_CDEFINES -D_THREAD_SAFE"
|
||||
;;
|
||||
*-openbsd*)
|
||||
CC="$CC -pthread"
|
||||
CCOPT="$CCOPT -pthread"
|
||||
CCNOOPT="$CCNOOPT -pthread"
|
||||
;;
|
||||
*-solaris*)
|
||||
LIBS="$LIBS -lthread"
|
||||
@@ -14874,10 +14888,12 @@ then
|
||||
*-dec-osf*)
|
||||
CC="$CC -pthread"
|
||||
CCOPT="$CCOPT -pthread"
|
||||
CCNOOPT="$CCNOOPT -pthread"
|
||||
;;
|
||||
*-solaris*)
|
||||
CC="$CC -mt"
|
||||
CCOPT="$CCOPT -mt"
|
||||
CCNOOPT="$CCNOOPT -mt"
|
||||
;;
|
||||
*-ibm-aix*)
|
||||
STD_CDEFINES="$STD_CDEFINES -D_THREAD_SAFE"
|
||||
@@ -14885,10 +14901,12 @@ then
|
||||
*-sco-sysv*uw*|*-*-sysv*UnixWare*)
|
||||
CC="$CC -Kthread"
|
||||
CCOPT="$CCOPT -Kthread"
|
||||
CCNOOPT="$CCNOOPT -Kthread"
|
||||
;;
|
||||
*-*-sysv*OpenUNIX*)
|
||||
CC="$CC -Kpthread"
|
||||
CCOPT="$CCOPT -Kpthread"
|
||||
CCNOOPT="$CCNOOPT -Kpthread"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
@@ -15376,6 +15394,7 @@ else
|
||||
*-dec-osf*)
|
||||
CC="$CC -std"
|
||||
CCOPT="$CCOPT -std"
|
||||
CCNOOPT="$CCNOOPT -std"
|
||||
MKDEPCC="$CC"
|
||||
;;
|
||||
*-hp-hpux*)
|
||||
@@ -15394,6 +15413,7 @@ else
|
||||
;;
|
||||
esac
|
||||
CCOPT="$CCOPT -Ae -z"
|
||||
CCNOOPT="$CCNOOPT -Ae -z"
|
||||
LDFLAGS="-Wl,+vnocompatwarnings $LDFLAGS"
|
||||
MKDEPPROG='cc -Ae -E -Wp,-M >/dev/null 2>>$TMP'
|
||||
;;
|
||||
@@ -16893,10 +16913,26 @@ fi
|
||||
|
||||
case "$enable_linux_caps" in
|
||||
yes|'')
|
||||
for ac_header in linux/types.h
|
||||
do :
|
||||
ac_fn_c_check_header_mongrel "$LINENO" "linux/types.h" "ac_cv_header_linux_types_h" "$ac_includes_default"
|
||||
if test "x$ac_cv_header_linux_types_h" = xyes; then :
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
#define HAVE_LINUX_TYPES_H 1
|
||||
_ACEOF
|
||||
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
for ac_header in linux/capability.h sys/capability.h
|
||||
do :
|
||||
as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
|
||||
ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
|
||||
ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "#ifdef HAVE_LINUX_TYPES_H
|
||||
#include <linux/types.h>
|
||||
#endif
|
||||
|
||||
"
|
||||
if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
|
||||
@@ -18636,7 +18672,7 @@ BIND9_MAKE_INCLUDES=$BIND9_TOP_BUILDDIR/make/includes
|
||||
|
||||
BIND9_MAKE_RULES=$BIND9_TOP_BUILDDIR/make/rules
|
||||
|
||||
. $srcdir/version
|
||||
. "$srcdir/version"
|
||||
BIND9_PRODUCT="PRODUCT=\"${PRODUCT}\""
|
||||
|
||||
BIND9_DESCRIPTION="DESCRIPTION=\"${DESCRIPTION}\""
|
||||
@@ -18645,12 +18681,15 @@ BIND9_VERSION="VERSION=${MAJORVER}.${MINORVER}${PATCHVER:+.}${PATCHVER}${RELEASE
|
||||
|
||||
|
||||
BIND9_SRCID="SRCID=unset"
|
||||
if test -f $srcdir/srcid; then
|
||||
. $srcdir/srcid
|
||||
if test -f "${srcdir}/srcid"; then
|
||||
. "${srcdir}/srcid"
|
||||
BIND9_SRCID="SRCID=$SRCID"
|
||||
elif test -d "${srcdir}/.git"; then
|
||||
BIND9_SRCID="SRCID="`(cd "${srcdir}";git log -n 1 --format=%h)`
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if test -z "$ac_configure_args"; then
|
||||
BIND9_CONFIGARGS="defaults"
|
||||
else
|
||||
@@ -18664,22 +18703,22 @@ BIND9_CONFIGARGS="CONFIGARGS=${BIND9_CONFIGARGS}"
|
||||
|
||||
|
||||
|
||||
LIBISC_API=$srcdir/lib/isc/api
|
||||
LIBISC_API="$srcdir/lib/isc/api"
|
||||
|
||||
|
||||
LIBISCCC_API=$srcdir/lib/isccc/api
|
||||
LIBISCCC_API="$srcdir/lib/isccc/api"
|
||||
|
||||
|
||||
LIBISCCFG_API=$srcdir/lib/isccfg/api
|
||||
LIBISCCFG_API="$srcdir/lib/isccfg/api"
|
||||
|
||||
|
||||
LIBDNS_API=$srcdir/lib/dns/api
|
||||
LIBDNS_API="$srcdir/lib/dns/api"
|
||||
|
||||
|
||||
LIBBIND9_API=$srcdir/lib/bind9/api
|
||||
LIBBIND9_API="$srcdir/lib/bind9/api"
|
||||
|
||||
|
||||
LIBLWRES_API=$srcdir/lib/lwres/api
|
||||
LIBLWRES_API="$srcdir/lib/lwres/api"
|
||||
|
||||
#
|
||||
# Configure any DLZ drivers.
|
||||
@@ -21829,7 +21868,7 @@ fi
|
||||
/*) ;;
|
||||
*) srcdir="../../$srcdir";;
|
||||
esac
|
||||
${SHELL} ${srcdir}${srcdir:+/unit/atf-src/}./configure MISSING=: --prefix $atfdir;
|
||||
${SHELL} "${srcdir}${srcdir:+/unit/atf-src/}./configure" MISSING=: --prefix $atfdir;
|
||||
) ;;
|
||||
"chmod":C) chmod a+x isc-config.sh doc/doxygen/doxygen-input-filter ;;
|
||||
|
||||
@@ -21888,6 +21927,68 @@ yes)
|
||||
;;
|
||||
esac
|
||||
|
||||
# Check whether --enable-full-report was given.
|
||||
if test "${enable_full_report+set}" = set; then :
|
||||
enableval=$enable_full_report;
|
||||
fi
|
||||
|
||||
echo enable full report set to: $enable_full_report
|
||||
|
||||
echo "========================================================================"
|
||||
echo "Configuration summary:"
|
||||
echo "------------------------------------------------------------------------"
|
||||
echo "Optional features enabled:"
|
||||
$use_threads && echo " Multiprocessing support (--enable-threads)"
|
||||
|
||||
test "$enable_fixed" = "yes" && \
|
||||
echo " Fixed RRset order (--enable-fixed-rrset)"
|
||||
test "$atf" = "no" || echo " Automated Testing Framework (--with-atf)"
|
||||
test "$use_gssapi" = "no" || echo " GSS-API (--with-gssapi)"
|
||||
test "$use_pkcs11" = "no" || echo " PKCS#11/Cryptoki support (--with-pkcs11)"
|
||||
|
||||
|
||||
# these lines are only printed if run with --enable-full-report
|
||||
if test "$enable_full_report" = "yes"; then
|
||||
test "$enable_ipv6" = "no" -o "$found_ipv6" = "no" || \
|
||||
echo " IPv6 support (--enable-ipv6)"
|
||||
test "X$USE_OPENSSL" = "X" || \
|
||||
echo " OpenSSL cryptography/DNSSEC (--with-openssl)"
|
||||
test "X$libxml2_libs" = "X" || echo " XML statistics (--with-libxml2)"
|
||||
fi
|
||||
|
||||
test "X$USE_DLZ" = "X" || echo " Dynamically loadable zone (DLZ) drivers:"
|
||||
test "$use_dlz_bdb" = "no" || \
|
||||
echo " Berkeley DB (--with-dlz-bdb)"
|
||||
test "$use_dlz_ldap" = "no" || \
|
||||
echo " LDAP (--with-dlz-ldap)"
|
||||
test "$use_dlz_mysql" = "no" || \
|
||||
echo " MySQL (--with-dlz-mysql)"
|
||||
test "$use_dlz_odbc" = "no" || \
|
||||
echo " ODBC (--with-dlz-bdb)"
|
||||
test "$use_dlz_postgres" = "no" || \
|
||||
echo " Postgres (--with-dlz-postgres)"
|
||||
test "$use_dlz_filesystem" = "no" || \
|
||||
echo " Filesystem (--with-dlz-filesystem)"
|
||||
test "$use_dlz_stub" = "no" || \
|
||||
echo " Stub (--with-dlz-stub)"
|
||||
echo
|
||||
|
||||
echo "Features disabled or unavailable on this platform:"
|
||||
$use_threads || echo " Multiprocessing support (--enable-threads)"
|
||||
test "X$USE_DLZ" = "X" && echo " Dynamically loadable zones (DLZ) (--with-dlz-DRIVER)"
|
||||
test "$enable_fixed" = "yes" || \
|
||||
echo " Fixed RRset order (--enable-fixed-rrset)"
|
||||
test "$atf" = "no" && echo " Automated Testing Framework (--with-atf)"
|
||||
test "$use_gssapi" = "no" && echo " GSS-API (--with-gssapi)"
|
||||
test "$use_pkcs11" = "no" && echo " PKCS#11/Cryptoki support (--with-pkcs11)"
|
||||
test "$enable_ipv6" = "no" -o "$found_ipv6" = "no" && \
|
||||
echo " IPv6 support (--enable-ipv6)"
|
||||
test "X$USE_OPENSSL" = "X" && \
|
||||
echo " OpenSSL cryptography/DNSSEC (--with-openssl)"
|
||||
test "X$libxml2_libs" = "X" && echo " XML statistics (--with-libxml2)"
|
||||
|
||||
echo "========================================================================"
|
||||
|
||||
if test "X$USE_OPENSSL" = "X"; then
|
||||
cat << \EOF
|
||||
BIND is being built without OpenSSL. This means it will not have DNSSEC support.
|
||||
|
||||
+95
-11
@@ -49,6 +49,7 @@ AC_SUBST(STD_CINCLUDES)
|
||||
AC_SUBST(STD_CDEFINES)
|
||||
AC_SUBST(STD_CWARNINGS)
|
||||
AC_SUBST(CCOPT)
|
||||
AC_SUBST(CCNOOPT)
|
||||
|
||||
# Warn if the user specified libbind, which is now deprecated
|
||||
AC_ARG_ENABLE(libbind, [ --enable-libbind deprecated])
|
||||
@@ -80,6 +81,7 @@ yes)
|
||||
test "${enable_exportlib+set}" = set || enable_exportlib=yes
|
||||
;;
|
||||
esac
|
||||
test "${enable_symtable+set}" = set || enable_symtable=all
|
||||
;;
|
||||
esac
|
||||
#
|
||||
@@ -295,6 +297,13 @@ case "$host" in
|
||||
;;
|
||||
esac
|
||||
|
||||
#
|
||||
# CCNOOPT defaults to -O0 on gcc and disables optimization when is last
|
||||
#
|
||||
if test "X$CCNOOPT" = "X" -a "X$GCC" = "Xyes"; then
|
||||
CCNOOPT="-O0"
|
||||
fi
|
||||
|
||||
AC_HEADER_STDC
|
||||
|
||||
AC_CHECK_HEADERS(fcntl.h sys/time.h unistd.h sys/sockio.h sys/select.h sys/param.h sys/sysctl.h net/if6.h,,,
|
||||
@@ -953,11 +962,13 @@ then
|
||||
*-freebsd*)
|
||||
CC="$CC -pthread"
|
||||
CCOPT="$CCOPT -pthread"
|
||||
CCNOOPT="$CCNOOPT -pthread"
|
||||
STD_CDEFINES="$STD_CDEFINES -D_THREAD_SAFE"
|
||||
;;
|
||||
*-openbsd*)
|
||||
CC="$CC -pthread"
|
||||
CCOPT="$CCOPT -pthread"
|
||||
CCNOOPT="$CCNOOPT -pthread"
|
||||
;;
|
||||
*-solaris*)
|
||||
LIBS="$LIBS -lthread"
|
||||
@@ -971,10 +982,12 @@ then
|
||||
*-dec-osf*)
|
||||
CC="$CC -pthread"
|
||||
CCOPT="$CCOPT -pthread"
|
||||
CCNOOPT="$CCNOOPT -pthread"
|
||||
;;
|
||||
*-solaris*)
|
||||
CC="$CC -mt"
|
||||
CCOPT="$CCOPT -mt"
|
||||
CCNOOPT="$CCNOOPT -mt"
|
||||
;;
|
||||
*-ibm-aix*)
|
||||
STD_CDEFINES="$STD_CDEFINES -D_THREAD_SAFE"
|
||||
@@ -982,10 +995,12 @@ then
|
||||
*-sco-sysv*uw*|*-*-sysv*UnixWare*)
|
||||
CC="$CC -Kthread"
|
||||
CCOPT="$CCOPT -Kthread"
|
||||
CCNOOPT="$CCNOOPT -Kthread"
|
||||
;;
|
||||
*-*-sysv*OpenUNIX*)
|
||||
CC="$CC -Kpthread"
|
||||
CCOPT="$CCOPT -Kpthread"
|
||||
CCNOOPT="$CCNOOPT -Kpthread"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
@@ -1195,6 +1210,7 @@ else
|
||||
*-dec-osf*)
|
||||
CC="$CC -std"
|
||||
CCOPT="$CCOPT -std"
|
||||
CCNOOPT="$CCNOOPT -std"
|
||||
MKDEPCC="$CC"
|
||||
;;
|
||||
*-hp-hpux*)
|
||||
@@ -1213,6 +1229,7 @@ else
|
||||
;;
|
||||
esac
|
||||
CCOPT="$CCOPT -Ae -z"
|
||||
CCNOOPT="$CCNOOPT -Ae -z"
|
||||
LDFLAGS="-Wl,+vnocompatwarnings $LDFLAGS"
|
||||
MKDEPPROG='cc -Ae -E -Wp,-M >/dev/null 2>>$TMP'
|
||||
;;
|
||||
@@ -2054,7 +2071,12 @@ AC_ARG_ENABLE(linux-caps,
|
||||
[ --disable-linux-caps disable linux capabilities])
|
||||
case "$enable_linux_caps" in
|
||||
yes|'')
|
||||
AC_CHECK_HEADERS(linux/capability.h sys/capability.h)
|
||||
AC_CHECK_HEADERS(linux/types.h)
|
||||
AC_CHECK_HEADERS([linux/capability.h sys/capability.h], [], [],
|
||||
[#ifdef HAVE_LINUX_TYPES_H
|
||||
#include <linux/types.h>
|
||||
#endif
|
||||
])
|
||||
AC_CHECK_LIB(cap, cap_set_proc)
|
||||
;;
|
||||
no)
|
||||
@@ -2769,7 +2791,7 @@ if test "$atf" = yes; then
|
||||
/*) ;;
|
||||
*) srcdir="../../$srcdir";;
|
||||
esac
|
||||
${SHELL} ${srcdir}${srcdir:+/unit/atf-src/}./configure MISSING=: --prefix $atfdir;
|
||||
${SHELL} "${srcdir}${srcdir:+/unit/atf-src/}./configure" MISSING=: --prefix $atfdir;
|
||||
) ],
|
||||
[atfdir=`pwd`/unit/atf])
|
||||
AC_MSG_RESULT(building ATF from bind9/unit/atf-src)
|
||||
@@ -2827,7 +2849,7 @@ BIND9_MAKE_INCLUDES=$BIND9_TOP_BUILDDIR/make/includes
|
||||
AC_SUBST_FILE(BIND9_MAKE_RULES)
|
||||
BIND9_MAKE_RULES=$BIND9_TOP_BUILDDIR/make/rules
|
||||
|
||||
. $srcdir/version
|
||||
. "$srcdir/version"
|
||||
BIND9_PRODUCT="PRODUCT=\"${PRODUCT}\""
|
||||
AC_SUBST(BIND9_PRODUCT)
|
||||
BIND9_DESCRIPTION="DESCRIPTION=\"${DESCRIPTION}\""
|
||||
@@ -2836,10 +2858,13 @@ BIND9_VERSION="VERSION=${MAJORVER}.${MINORVER}${PATCHVER:+.}${PATCHVER}${RELEASE
|
||||
AC_SUBST(BIND9_VERSION)
|
||||
|
||||
BIND9_SRCID="SRCID=unset"
|
||||
if test -f $srcdir/srcid; then
|
||||
. $srcdir/srcid
|
||||
if test -f "${srcdir}/srcid"; then
|
||||
. "${srcdir}/srcid"
|
||||
BIND9_SRCID="SRCID=$SRCID"
|
||||
elif test -d "${srcdir}/.git"; then
|
||||
BIND9_SRCID="SRCID="`(cd "${srcdir}";git log -n 1 --format=%h)`
|
||||
fi
|
||||
|
||||
AC_SUBST(BIND9_SRCID)
|
||||
|
||||
if test -z "$ac_configure_args"; then
|
||||
@@ -2855,22 +2880,22 @@ BIND9_CONFIGARGS="CONFIGARGS=${BIND9_CONFIGARGS}"
|
||||
AC_SUBST(BIND9_CONFIGARGS)
|
||||
|
||||
AC_SUBST_FILE(LIBISC_API)
|
||||
LIBISC_API=$srcdir/lib/isc/api
|
||||
LIBISC_API="$srcdir/lib/isc/api"
|
||||
|
||||
AC_SUBST_FILE(LIBISCCC_API)
|
||||
LIBISCCC_API=$srcdir/lib/isccc/api
|
||||
LIBISCCC_API="$srcdir/lib/isccc/api"
|
||||
|
||||
AC_SUBST_FILE(LIBISCCFG_API)
|
||||
LIBISCCFG_API=$srcdir/lib/isccfg/api
|
||||
LIBISCCFG_API="$srcdir/lib/isccfg/api"
|
||||
|
||||
AC_SUBST_FILE(LIBDNS_API)
|
||||
LIBDNS_API=$srcdir/lib/dns/api
|
||||
LIBDNS_API="$srcdir/lib/dns/api"
|
||||
|
||||
AC_SUBST_FILE(LIBBIND9_API)
|
||||
LIBBIND9_API=$srcdir/lib/bind9/api
|
||||
LIBBIND9_API="$srcdir/lib/bind9/api"
|
||||
|
||||
AC_SUBST_FILE(LIBLWRES_API)
|
||||
LIBLWRES_API=$srcdir/lib/lwres/api
|
||||
LIBLWRES_API="$srcdir/lib/lwres/api"
|
||||
|
||||
#
|
||||
# Configure any DLZ drivers.
|
||||
@@ -3160,6 +3185,65 @@ yes)
|
||||
;;
|
||||
esac
|
||||
|
||||
AC_ARG_ENABLE(full-report,
|
||||
[ --enable-full-report report values of all configure options])
|
||||
echo enable full report set to: $enable_full_report
|
||||
|
||||
echo "========================================================================"
|
||||
echo "Configuration summary:"
|
||||
echo "------------------------------------------------------------------------"
|
||||
echo "Optional features enabled:"
|
||||
$use_threads && echo " Multiprocessing support (--enable-threads)"
|
||||
|
||||
test "$enable_fixed" = "yes" && \
|
||||
echo " Fixed RRset order (--enable-fixed-rrset)"
|
||||
test "$atf" = "no" || echo " Automated Testing Framework (--with-atf)"
|
||||
test "$use_gssapi" = "no" || echo " GSS-API (--with-gssapi)"
|
||||
test "$use_pkcs11" = "no" || echo " PKCS#11/Cryptoki support (--with-pkcs11)"
|
||||
|
||||
|
||||
# these lines are only printed if run with --enable-full-report
|
||||
if test "$enable_full_report" = "yes"; then
|
||||
test "$enable_ipv6" = "no" -o "$found_ipv6" = "no" || \
|
||||
echo " IPv6 support (--enable-ipv6)"
|
||||
test "X$USE_OPENSSL" = "X" || \
|
||||
echo " OpenSSL cryptography/DNSSEC (--with-openssl)"
|
||||
test "X$libxml2_libs" = "X" || echo " XML statistics (--with-libxml2)"
|
||||
fi
|
||||
|
||||
test "X$USE_DLZ" = "X" || echo " Dynamically loadable zone (DLZ) drivers:"
|
||||
test "$use_dlz_bdb" = "no" || \
|
||||
echo " Berkeley DB (--with-dlz-bdb)"
|
||||
test "$use_dlz_ldap" = "no" || \
|
||||
echo " LDAP (--with-dlz-ldap)"
|
||||
test "$use_dlz_mysql" = "no" || \
|
||||
echo " MySQL (--with-dlz-mysql)"
|
||||
test "$use_dlz_odbc" = "no" || \
|
||||
echo " ODBC (--with-dlz-bdb)"
|
||||
test "$use_dlz_postgres" = "no" || \
|
||||
echo " Postgres (--with-dlz-postgres)"
|
||||
test "$use_dlz_filesystem" = "no" || \
|
||||
echo " Filesystem (--with-dlz-filesystem)"
|
||||
test "$use_dlz_stub" = "no" || \
|
||||
echo " Stub (--with-dlz-stub)"
|
||||
echo
|
||||
|
||||
echo "Features disabled or unavailable on this platform:"
|
||||
$use_threads || echo " Multiprocessing support (--enable-threads)"
|
||||
test "X$USE_DLZ" = "X" && echo " Dynamically loadable zones (DLZ) (--with-dlz-DRIVER)"
|
||||
test "$enable_fixed" = "yes" || \
|
||||
echo " Fixed RRset order (--enable-fixed-rrset)"
|
||||
test "$atf" = "no" && echo " Automated Testing Framework (--with-atf)"
|
||||
test "$use_gssapi" = "no" && echo " GSS-API (--with-gssapi)"
|
||||
test "$use_pkcs11" = "no" && echo " PKCS#11/Cryptoki support (--with-pkcs11)"
|
||||
test "$enable_ipv6" = "no" -o "$found_ipv6" = "no" && \
|
||||
echo " IPv6 support (--enable-ipv6)"
|
||||
test "X$USE_OPENSSL" = "X" && \
|
||||
echo " OpenSSL cryptography/DNSSEC (--with-openssl)"
|
||||
test "X$libxml2_libs" = "X" && echo " XML statistics (--with-libxml2)"
|
||||
|
||||
echo "========================================================================"
|
||||
|
||||
if test "X$USE_OPENSSL" = "X"; then
|
||||
cat << \EOF
|
||||
BIND is being built without OpenSSL. This means it will not have DNSSEC support.
|
||||
|
||||
+10
-301
@@ -1115,306 +1115,14 @@ zone "eng.example.com" {
|
||||
<arg choice="plain"><replaceable>command</replaceable></arg>
|
||||
<arg rep="repeat"><replaceable>command</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
<para>The <command>command</command>
|
||||
is one of the following:
|
||||
|
||||
<para>See <xref linkend="man.rndc"/> for details of
|
||||
the available <command>rndc</command> commands.
|
||||
</para>
|
||||
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>reload</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Reload configuration file and zones.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>reload <replaceable>zone</replaceable>
|
||||
<optional><replaceable>class</replaceable>
|
||||
<optional><replaceable>view</replaceable></optional></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Reload the given zone.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>refresh <replaceable>zone</replaceable>
|
||||
<optional><replaceable>class</replaceable>
|
||||
<optional><replaceable>view</replaceable></optional></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Schedule zone maintenance for the given zone.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>retransfer <replaceable>zone</replaceable>
|
||||
|
||||
<optional><replaceable>class</replaceable>
|
||||
<optional><replaceable>view</replaceable></optional></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Retransfer the given zone from the master.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
|
||||
<term><userinput>freeze
|
||||
<optional><replaceable>zone</replaceable>
|
||||
<optional><replaceable>class</replaceable>
|
||||
<optional><replaceable>view</replaceable></optional></optional></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Suspend updates to a dynamic zone. If no zone is
|
||||
specified,
|
||||
then all zones are suspended. This allows manual
|
||||
edits to be made to a zone normally updated by dynamic
|
||||
update. It
|
||||
also causes changes in the journal file to be synced
|
||||
into the master
|
||||
and the journal file to be removed. All dynamic
|
||||
update attempts will
|
||||
be refused while the zone is frozen.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>thaw
|
||||
<optional><replaceable>zone</replaceable>
|
||||
<optional><replaceable>class</replaceable>
|
||||
<optional><replaceable>view</replaceable></optional></optional></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Enable updates to a frozen dynamic zone. If no zone
|
||||
is
|
||||
specified, then all frozen zones are enabled. This
|
||||
causes
|
||||
the server to reload the zone from disk, and
|
||||
re-enables dynamic updates
|
||||
after the load has completed. After a zone is thawed,
|
||||
dynamic updates
|
||||
will no longer be refused.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>notify <replaceable>zone</replaceable>
|
||||
<optional><replaceable>class</replaceable>
|
||||
<optional><replaceable>view</replaceable></optional></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Resend NOTIFY messages for the zone.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>reconfig</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Reload the configuration file and load new zones,
|
||||
but do not reload existing zone files even if they
|
||||
have changed.
|
||||
This is faster than a full <command>reload</command> when there
|
||||
is a large number of zones because it avoids the need
|
||||
to examine the
|
||||
modification times of the zones files.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>stats</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Write server statistics to the statistics file.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>querylog</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Toggle query logging. Query logging can also be enabled
|
||||
by explicitly directing the <command>queries</command>
|
||||
<command>category</command> to a
|
||||
<command>channel</command> in the
|
||||
<command>logging</command> section of
|
||||
<filename>named.conf</filename> or by specifying
|
||||
<command>querylog yes;</command> in the
|
||||
<command>options</command> section of
|
||||
<filename>named.conf</filename>.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>dumpdb
|
||||
<optional>-all|-cache|-zone</optional>
|
||||
<optional><replaceable>view ...</replaceable></optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Dump the server's caches (default) and/or zones to
|
||||
the
|
||||
dump file for the specified views. If no view is
|
||||
specified, all
|
||||
views are dumped.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>stop <optional>-p</optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Stop the server, making sure any recent changes
|
||||
made through dynamic update or IXFR are first saved to
|
||||
the master files of the updated zones.
|
||||
If <option>-p</option> is specified <command>named</command>'s process id is returned.
|
||||
This allows an external process to determine when <command>named</command>
|
||||
had completed stopping.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>halt <optional>-p</optional></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Stop the server immediately. Recent changes
|
||||
made through dynamic update or IXFR are not saved to
|
||||
the master files, but will be rolled forward from the
|
||||
journal files when the server is restarted.
|
||||
If <option>-p</option> is specified <command>named</command>'s process id is returned.
|
||||
This allows an external process to determine when <command>named</command>
|
||||
had completed halting.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>trace</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Increment the servers debugging level by one.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>trace <replaceable>level</replaceable></userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Sets the server's debugging level to an explicit
|
||||
value.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>notrace</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Sets the server's debugging level to 0.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>flush</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Flushes the server's cache.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>flushname</userinput> <replaceable>name</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Flushes the given name from the server's cache.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>status</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Display status of the server.
|
||||
Note that the number of zones includes the internal <command>bind/CH</command> zone
|
||||
and the default <command>./IN</command>
|
||||
hint zone if there is not an
|
||||
explicit root zone configured.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>tsig-list</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
List the names of all TSIG keys currently configured
|
||||
for use by <command>named</command> in each view. The
|
||||
list both statically configured keys and dynamic
|
||||
TKEY-negotiated keys.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>tsig-delete</userinput>
|
||||
<replaceable>keyname</replaceable>
|
||||
<optional><replaceable>view</replaceable></optional></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Delete a given TKEY-negotated key from the server.
|
||||
(This does not apply to statically configured TSIG
|
||||
keys.)
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>recursing</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Dump the list of queries <command>named</command> is currently recursing
|
||||
on.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><userinput>validation
|
||||
<optional>on|off</optional>
|
||||
<optional><replaceable>view ...</replaceable></optional>
|
||||
</userinput></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Enable or disable DNSSEC validation.
|
||||
Note <command>dnssec-enable</command> also needs to be
|
||||
set to <userinput>yes</userinput> to be effective.
|
||||
It defaults to enabled.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
<para>
|
||||
A configuration file is required, since all
|
||||
<command>rndc</command> requires a configuration file,
|
||||
since all
|
||||
communication with the server is authenticated with
|
||||
digital signatures that rely on a shared secret, and
|
||||
there is no way to provide that secret other than with a
|
||||
@@ -7421,14 +7129,15 @@ avoid-v6-udp-ports { 40000; range 50000 60000; };
|
||||
<term><command>tcp-listen-queue</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
The listen queue depth. The default and minimum is 3.
|
||||
The listen queue depth. The default and minimum is 10.
|
||||
If the kernel supports the accept filter "dataready" this
|
||||
also controls how
|
||||
many TCP connections that will be queued in kernel space
|
||||
waiting for
|
||||
some data before being passed to accept. Values less than 3
|
||||
will be
|
||||
silently raised.
|
||||
some data before being passed to accept. Nonzero values
|
||||
less than 10 will be silently raised. A value of 0 may also
|
||||
be used; on most platforms this sets the listen queue
|
||||
length to a system-defined default value.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
+6
-181
@@ -54,7 +54,7 @@
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch03.html#id2568371">Name Server Operations</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch03.html#id2568376">Tools for Use With the Name Server Daemon</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch03.html#id2570122">Signals</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch03.html#id2569429">Signals</a></span></dt>
|
||||
</dl></dd>
|
||||
</dl>
|
||||
</div>
|
||||
@@ -436,187 +436,12 @@ zone "eng.example.com" {
|
||||
it will display a usage message as follows:
|
||||
</p>
|
||||
<div class="cmdsynopsis"><p><code class="command">rndc</code> [-c <em class="replaceable"><code>config</code></em>] [-s <em class="replaceable"><code>server</code></em>] [-p <em class="replaceable"><code>port</code></em>] [-y <em class="replaceable"><code>key</code></em>] <em class="replaceable"><code>command</code></em> [<em class="replaceable"><code>command</code></em>...]</p></div>
|
||||
<p>The <span><strong class="command">command</strong></span>
|
||||
is one of the following:
|
||||
<p>See <a href="man.rndc.html" title="rndc"><span class="refentrytitle"><span class="application">rndc</span></span>(8)</a> for details of
|
||||
the available <span><strong class="command">rndc</strong></span> commands.
|
||||
</p>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><strong class="userinput"><code>reload</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Reload configuration file and zones.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>reload <em class="replaceable"><code>zone</code></em>
|
||||
[<span class="optional"><em class="replaceable"><code>class</code></em>
|
||||
[<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Reload the given zone.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>refresh <em class="replaceable"><code>zone</code></em>
|
||||
[<span class="optional"><em class="replaceable"><code>class</code></em>
|
||||
[<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Schedule zone maintenance for the given zone.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>retransfer <em class="replaceable"><code>zone</code></em>
|
||||
|
||||
[<span class="optional"><em class="replaceable"><code>class</code></em>
|
||||
[<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Retransfer the given zone from the master.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>freeze
|
||||
[<span class="optional"><em class="replaceable"><code>zone</code></em>
|
||||
[<span class="optional"><em class="replaceable"><code>class</code></em>
|
||||
[<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Suspend updates to a dynamic zone. If no zone is
|
||||
specified,
|
||||
then all zones are suspended. This allows manual
|
||||
edits to be made to a zone normally updated by dynamic
|
||||
update. It
|
||||
also causes changes in the journal file to be synced
|
||||
into the master
|
||||
and the journal file to be removed. All dynamic
|
||||
update attempts will
|
||||
be refused while the zone is frozen.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>thaw
|
||||
[<span class="optional"><em class="replaceable"><code>zone</code></em>
|
||||
[<span class="optional"><em class="replaceable"><code>class</code></em>
|
||||
[<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Enable updates to a frozen dynamic zone. If no zone
|
||||
is
|
||||
specified, then all frozen zones are enabled. This
|
||||
causes
|
||||
the server to reload the zone from disk, and
|
||||
re-enables dynamic updates
|
||||
after the load has completed. After a zone is thawed,
|
||||
dynamic updates
|
||||
will no longer be refused.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>notify <em class="replaceable"><code>zone</code></em>
|
||||
[<span class="optional"><em class="replaceable"><code>class</code></em>
|
||||
[<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Resend NOTIFY messages for the zone.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>reconfig</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Reload the configuration file and load new zones,
|
||||
but do not reload existing zone files even if they
|
||||
have changed.
|
||||
This is faster than a full <span><strong class="command">reload</strong></span> when there
|
||||
is a large number of zones because it avoids the need
|
||||
to examine the
|
||||
modification times of the zones files.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>stats</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Write server statistics to the statistics file.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>querylog</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Toggle query logging. Query logging can also be enabled
|
||||
by explicitly directing the <span><strong class="command">queries</strong></span>
|
||||
<span><strong class="command">category</strong></span> to a
|
||||
<span><strong class="command">channel</strong></span> in the
|
||||
<span><strong class="command">logging</strong></span> section of
|
||||
<code class="filename">named.conf</code> or by specifying
|
||||
<span><strong class="command">querylog yes;</strong></span> in the
|
||||
<span><strong class="command">options</strong></span> section of
|
||||
<code class="filename">named.conf</code>.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>dumpdb
|
||||
[<span class="optional">-all|-cache|-zone</span>]
|
||||
[<span class="optional"><em class="replaceable"><code>view ...</code></em></span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Dump the server's caches (default) and/or zones to
|
||||
the
|
||||
dump file for the specified views. If no view is
|
||||
specified, all
|
||||
views are dumped.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>stop [<span class="optional">-p</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Stop the server, making sure any recent changes
|
||||
made through dynamic update or IXFR are first saved to
|
||||
the master files of the updated zones.
|
||||
If <code class="option">-p</code> is specified <span><strong class="command">named</strong></span>'s process id is returned.
|
||||
This allows an external process to determine when <span><strong class="command">named</strong></span>
|
||||
had completed stopping.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>halt [<span class="optional">-p</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Stop the server immediately. Recent changes
|
||||
made through dynamic update or IXFR are not saved to
|
||||
the master files, but will be rolled forward from the
|
||||
journal files when the server is restarted.
|
||||
If <code class="option">-p</code> is specified <span><strong class="command">named</strong></span>'s process id is returned.
|
||||
This allows an external process to determine when <span><strong class="command">named</strong></span>
|
||||
had completed halting.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>trace</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Increment the servers debugging level by one.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>trace <em class="replaceable"><code>level</code></em></code></strong></span></dt>
|
||||
<dd><p>
|
||||
Sets the server's debugging level to an explicit
|
||||
value.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>notrace</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Sets the server's debugging level to 0.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>flush</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Flushes the server's cache.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>flushname</code></strong> <em class="replaceable"><code>name</code></em></span></dt>
|
||||
<dd><p>
|
||||
Flushes the given name from the server's cache.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>status</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Display status of the server.
|
||||
Note that the number of zones includes the internal <span><strong class="command">bind/CH</strong></span> zone
|
||||
and the default <span><strong class="command">./IN</strong></span>
|
||||
hint zone if there is not an
|
||||
explicit root zone configured.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>tsig-list</code></strong></span></dt>
|
||||
<dd><p>
|
||||
List the names of all TSIG keys currently configured
|
||||
for use by <span><strong class="command">named</strong></span> in each view. The
|
||||
list both statically configured keys and dynamic
|
||||
TKEY-negotiated keys.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>tsig-delete</code></strong>
|
||||
<em class="replaceable"><code>keyname</code></em>
|
||||
[<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span></dt>
|
||||
<dd><p>
|
||||
Delete a given TKEY-negotated key from the server.
|
||||
(This does not apply to statically configured TSIG
|
||||
keys.)
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>recursing</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Dump the list of queries <span><strong class="command">named</strong></span> is currently recursing
|
||||
on.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>validation
|
||||
[<span class="optional">on|off</span>]
|
||||
[<span class="optional"><em class="replaceable"><code>view ...</code></em></span>]
|
||||
</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Enable or disable DNSSEC validation.
|
||||
Note <span><strong class="command">dnssec-enable</strong></span> also needs to be
|
||||
set to <strong class="userinput"><code>yes</code></strong> to be effective.
|
||||
It defaults to enabled.
|
||||
</p></dd>
|
||||
</dl></div>
|
||||
<p>
|
||||
A configuration file is required, since all
|
||||
<span><strong class="command">rndc</strong></span> requires a configuration file,
|
||||
since all
|
||||
communication with the server is authenticated with
|
||||
digital signatures that rely on a shared secret, and
|
||||
there is no way to provide that secret other than with a
|
||||
@@ -764,7 +589,7 @@ controls {
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2570122"></a>Signals</h3></div></div></div>
|
||||
<a name="id2569429"></a>Signals</h3></div></div></div>
|
||||
<p>
|
||||
Certain UNIX signals cause the name server to take specific
|
||||
actions, as described in the following table. These signals can
|
||||
|
||||
+34
-34
@@ -49,29 +49,29 @@
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#dynamic_update">Dynamic Update</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch04.html#journal">The journal file</a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#incremental_zone_transfers">Incremental Zone Transfers (IXFR)</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2570547">Split DNS</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570565">Example split DNS setup</a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2569785">Split DNS</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2569803">Example split DNS setup</a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#tsig">TSIG</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571068">Generate Shared Keys for Each Pair of Hosts</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571278">Copying the Shared Secret to Both Machines</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571289">Informing the Servers of the Key's Existence</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571325">Instructing the Server to Use the Key</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571383">TSIG Key Based Access Control</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571568">Errors</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570443">Generate Shared Keys for Each Pair of Hosts</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570585">Copying the Shared Secret to Both Machines</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570596">Informing the Servers of the Key's Existence</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570632">Instructing the Server to Use the Key</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570690">TSIG Key Based Access Control</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570738">Errors</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2571581">TKEY</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2571630">SIG(0)</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2570752">TKEY</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2570869">SIG(0)</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#DNSSEC">DNSSEC</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571767">Generating Keys</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571846">Signing the Zone</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571927">Configuring Servers</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571074">Generating Keys</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571153">Signing the Zone</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571370">Configuring Servers</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2572165">IPv6 Support in <acronym class="acronym">BIND</acronym> 9</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2571540">IPv6 Support in <acronym class="acronym">BIND</acronym> 9</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2572227">Address Lookups Using AAAA Records</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2572248">Address to Name Lookups Using Nibble Format</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571602">Address Lookups Using AAAA Records</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571691">Address to Name Lookups Using Nibble Format</a></span></dt>
|
||||
</dl></dd>
|
||||
</dl>
|
||||
</div>
|
||||
@@ -217,7 +217,7 @@
|
||||
</div>
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2570547"></a>Split DNS</h2></div></div></div>
|
||||
<a name="id2569785"></a>Split DNS</h2></div></div></div>
|
||||
<p>
|
||||
Setting up different views, or visibility, of the DNS space to
|
||||
internal and external resolvers is usually referred to as a
|
||||
@@ -247,7 +247,7 @@
|
||||
</p>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2570565"></a>Example split DNS setup</h3></div></div></div>
|
||||
<a name="id2569803"></a>Example split DNS setup</h3></div></div></div>
|
||||
<p>
|
||||
Let's say a company named <span class="emphasis"><em>Example, Inc.</em></span>
|
||||
(<code class="literal">example.com</code>)
|
||||
@@ -493,7 +493,7 @@ nameserver 172.16.72.4
|
||||
</p>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2571068"></a>Generate Shared Keys for Each Pair of Hosts</h3></div></div></div>
|
||||
<a name="id2570443"></a>Generate Shared Keys for Each Pair of Hosts</h3></div></div></div>
|
||||
<p>
|
||||
A shared secret is generated to be shared between <span class="emphasis"><em>host1</em></span> and <span class="emphasis"><em>host2</em></span>.
|
||||
An arbitrary key name is chosen: "host1-host2.". The key name must
|
||||
@@ -501,7 +501,7 @@ nameserver 172.16.72.4
|
||||
</p>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2571085"></a>Automatic Generation</h4></div></div></div>
|
||||
<a name="id2570460"></a>Automatic Generation</h4></div></div></div>
|
||||
<p>
|
||||
The following command will generate a 128-bit (16 byte) HMAC-SHA256
|
||||
key as described above. Longer keys are better, but shorter keys
|
||||
@@ -525,7 +525,7 @@ nameserver 172.16.72.4
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2571124"></a>Manual Generation</h4></div></div></div>
|
||||
<a name="id2570499"></a>Manual Generation</h4></div></div></div>
|
||||
<p>
|
||||
The shared secret is simply a random sequence of bits, encoded
|
||||
in base-64. Most ASCII strings are valid base-64 strings (assuming
|
||||
@@ -540,7 +540,7 @@ nameserver 172.16.72.4
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2571278"></a>Copying the Shared Secret to Both Machines</h3></div></div></div>
|
||||
<a name="id2570585"></a>Copying the Shared Secret to Both Machines</h3></div></div></div>
|
||||
<p>
|
||||
This is beyond the scope of DNS. A secure transport mechanism
|
||||
should be used. This could be secure FTP, ssh, telephone, etc.
|
||||
@@ -548,7 +548,7 @@ nameserver 172.16.72.4
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2571289"></a>Informing the Servers of the Key's Existence</h3></div></div></div>
|
||||
<a name="id2570596"></a>Informing the Servers of the Key's Existence</h3></div></div></div>
|
||||
<p>
|
||||
Imagine <span class="emphasis"><em>host1</em></span> and <span class="emphasis"><em>host 2</em></span>
|
||||
are
|
||||
@@ -575,7 +575,7 @@ key host1-host2. {
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2571325"></a>Instructing the Server to Use the Key</h3></div></div></div>
|
||||
<a name="id2570632"></a>Instructing the Server to Use the Key</h3></div></div></div>
|
||||
<p>
|
||||
Since keys are shared between two hosts only, the server must
|
||||
be told when keys are to be used. The following is added to the <code class="filename">named.conf</code> file
|
||||
@@ -607,7 +607,7 @@ server 10.1.2.3 {
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2571383"></a>TSIG Key Based Access Control</h3></div></div></div>
|
||||
<a name="id2570690"></a>TSIG Key Based Access Control</h3></div></div></div>
|
||||
<p>
|
||||
<acronym class="acronym">BIND</acronym> allows IP addresses and ranges
|
||||
to be specified in ACL
|
||||
@@ -635,7 +635,7 @@ allow-update { key host1-host2. ;};
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2571568"></a>Errors</h3></div></div></div>
|
||||
<a name="id2570738"></a>Errors</h3></div></div></div>
|
||||
<p>
|
||||
The processing of TSIG signed messages can result in
|
||||
several errors. If a signed message is sent to a non-TSIG aware
|
||||
@@ -661,7 +661,7 @@ allow-update { key host1-host2. ;};
|
||||
</div>
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2571581"></a>TKEY</h2></div></div></div>
|
||||
<a name="id2570752"></a>TKEY</h2></div></div></div>
|
||||
<p><span><strong class="command">TKEY</strong></span>
|
||||
is a mechanism for automatically generating a shared secret
|
||||
between two hosts. There are several "modes" of
|
||||
@@ -697,7 +697,7 @@ allow-update { key host1-host2. ;};
|
||||
</div>
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2571630"></a>SIG(0)</h2></div></div></div>
|
||||
<a name="id2570869"></a>SIG(0)</h2></div></div></div>
|
||||
<p>
|
||||
<acronym class="acronym">BIND</acronym> 9 partially supports DNSSEC SIG(0)
|
||||
transaction signatures as specified in RFC 2535 and RFC 2931.
|
||||
@@ -758,7 +758,7 @@ allow-update { key host1-host2. ;};
|
||||
</p>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2571767"></a>Generating Keys</h3></div></div></div>
|
||||
<a name="id2571074"></a>Generating Keys</h3></div></div></div>
|
||||
<p>
|
||||
The <span><strong class="command">dnssec-keygen</strong></span> program is used to
|
||||
generate keys.
|
||||
@@ -814,7 +814,7 @@ allow-update { key host1-host2. ;};
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2571846"></a>Signing the Zone</h3></div></div></div>
|
||||
<a name="id2571153"></a>Signing the Zone</h3></div></div></div>
|
||||
<p>
|
||||
The <span><strong class="command">dnssec-signzone</strong></span> program is used
|
||||
to sign a zone.
|
||||
@@ -856,7 +856,7 @@ allow-update { key host1-host2. ;};
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2571927"></a>Configuring Servers</h3></div></div></div>
|
||||
<a name="id2571370"></a>Configuring Servers</h3></div></div></div>
|
||||
<p>
|
||||
To enable <span><strong class="command">named</strong></span> to respond appropriately
|
||||
to DNS requests from DNSSEC aware clients,
|
||||
@@ -981,7 +981,7 @@ options {
|
||||
</div>
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2572165"></a>IPv6 Support in <acronym class="acronym">BIND</acronym> 9</h2></div></div></div>
|
||||
<a name="id2571540"></a>IPv6 Support in <acronym class="acronym">BIND</acronym> 9</h2></div></div></div>
|
||||
<p>
|
||||
<acronym class="acronym">BIND</acronym> 9 fully supports all currently
|
||||
defined forms of IPv6 name to address and address to name
|
||||
@@ -1019,7 +1019,7 @@ options {
|
||||
</p>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2572227"></a>Address Lookups Using AAAA Records</h3></div></div></div>
|
||||
<a name="id2571602"></a>Address Lookups Using AAAA Records</h3></div></div></div>
|
||||
<p>
|
||||
The IPv6 AAAA record is a parallel to the IPv4 A record,
|
||||
and, unlike the deprecated A6 record, specifies the entire
|
||||
@@ -1038,7 +1038,7 @@ host 3600 IN AAAA 2001:db8::1
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2572248"></a>Address to Name Lookups Using Nibble Format</h3></div></div></div>
|
||||
<a name="id2571691"></a>Address to Name Lookups Using Nibble Format</h3></div></div></div>
|
||||
<p>
|
||||
When looking up an address in nibble format, the address
|
||||
components are simply reversed, just as in IPv4, and
|
||||
|
||||
@@ -45,13 +45,13 @@
|
||||
<div class="toc">
|
||||
<p><b>Table of Contents</b></p>
|
||||
<dl>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch05.html#id2572281">The Lightweight Resolver Library</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch05.html#id2571724">The Lightweight Resolver Library</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch05.html#lwresd">Running a Resolver Daemon</a></span></dt>
|
||||
</dl>
|
||||
</div>
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2572281"></a>The Lightweight Resolver Library</h2></div></div></div>
|
||||
<a name="id2571724"></a>The Lightweight Resolver Library</h2></div></div></div>
|
||||
<p>
|
||||
Traditionally applications have been linked with a stub resolver
|
||||
library that sends recursive DNS queries to a local caching name
|
||||
|
||||
+79
-78
@@ -48,55 +48,55 @@
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch06.html#configuration_file_elements">Configuration File Elements</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#address_match_lists">Address Match Lists</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2573798">Comment Syntax</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2564025">Comment Syntax</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch06.html#Configuration_File_Grammar">Configuration File Grammar</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574497"><span><strong class="command">acl</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2573940"><span><strong class="command">acl</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#acl"><span><strong class="command">acl</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574686"><span><strong class="command">controls</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574130"><span><strong class="command">controls</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#controls_statement_definition_and_usage"><span><strong class="command">controls</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2575047"><span><strong class="command">include</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2575064"><span><strong class="command">include</strong></span> Statement Definition and
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574558"><span><strong class="command">include</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574576"><span><strong class="command">include</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2575088"><span><strong class="command">key</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2575111"><span><strong class="command">key</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2575202"><span><strong class="command">logging</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2575328"><span><strong class="command">logging</strong></span> Statement Definition and
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574599"><span><strong class="command">key</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574622"><span><strong class="command">key</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574713"><span><strong class="command">logging</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574839"><span><strong class="command">logging</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577457"><span><strong class="command">lwres</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577530"><span><strong class="command">lwres</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577594"><span><strong class="command">masters</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577638"><span><strong class="command">masters</strong></span> Statement Definition and
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2576832"><span><strong class="command">lwres</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2576905"><span><strong class="command">lwres</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2576969"><span><strong class="command">masters</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577013"><span><strong class="command">masters</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577653"><span><strong class="command">options</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577028"><span><strong class="command">options</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#options"><span><strong class="command">options</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#server_statement_grammar"><span><strong class="command">server</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#server_statement_definition_and_usage"><span><strong class="command">server</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#statschannels"><span><strong class="command">statistics-channels</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2587400"><span><strong class="command">statistics-channels</strong></span> Statement Definition and
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2586775"><span><strong class="command">statistics-channels</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2587555"><span><strong class="command">trusted-keys</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2587674"><span><strong class="command">trusted-keys</strong></span> Statement Definition
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2586861"><span><strong class="command">trusted-keys</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2586913"><span><strong class="command">trusted-keys</strong></span> Statement Definition
|
||||
and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#view_statement_grammar"><span><strong class="command">view</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2587756"><span><strong class="command">view</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2586995"><span><strong class="command">view</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#zone_statement_grammar"><span><strong class="command">zone</strong></span>
|
||||
Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2589242"><span><strong class="command">zone</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2588549"><span><strong class="command">zone</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch06.html#id2591947">Zone File</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch06.html#id2591322">Zone File</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#types_of_resource_records_and_when_to_use_them">Types of Resource Records and When to Use Them</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2594109">Discussion of MX Records</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2593416">Discussion of MX Records</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#Setting_TTLs">Setting TTLs</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2594725">Inverse Mapping in IPv4</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2594920">Other Zone File Directives</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2595193"><acronym class="acronym">BIND</acronym> Master File Extension: the <span><strong class="command">$GENERATE</strong></span> Directive</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2594032">Inverse Mapping in IPv4</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2594227">Other Zone File Directives</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2594500"><acronym class="acronym">BIND</acronym> Master File Extension: the <span><strong class="command">$GENERATE</strong></span> Directive</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#zonefile_format">Additional File Formats</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch06.html#statistics">BIND9 Statistics</a></span></dt>
|
||||
@@ -475,7 +475,7 @@
|
||||
<a name="address_match_lists"></a>Address Match Lists</h3></div></div></div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2573496"></a>Syntax</h4></div></div></div>
|
||||
<a name="id2572939"></a>Syntax</h4></div></div></div>
|
||||
<pre class="programlisting"><code class="varname">address_match_list</code> = address_match_list_element ;
|
||||
[<span class="optional"> address_match_list_element; ... </span>]
|
||||
<code class="varname">address_match_list_element</code> = [<span class="optional"> ! </span>] (ip_address [<span class="optional">/length</span>] |
|
||||
@@ -484,7 +484,7 @@
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2573592"></a>Definition and Usage</h4></div></div></div>
|
||||
<a name="id2572967"></a>Definition and Usage</h4></div></div></div>
|
||||
<p>
|
||||
Address match lists are primarily used to determine access
|
||||
control for various server operations. They are also used in
|
||||
@@ -568,7 +568,7 @@
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2573798"></a>Comment Syntax</h3></div></div></div>
|
||||
<a name="id2564025"></a>Comment Syntax</h3></div></div></div>
|
||||
<p>
|
||||
The <acronym class="acronym">BIND</acronym> 9 comment syntax allows for
|
||||
comments to appear
|
||||
@@ -578,7 +578,7 @@
|
||||
</p>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2573813"></a>Syntax</h4></div></div></div>
|
||||
<a name="id2564108"></a>Syntax</h4></div></div></div>
|
||||
<p>
|
||||
</p>
|
||||
<pre class="programlisting">/* This is a <acronym class="acronym">BIND</acronym> comment as in C */</pre>
|
||||
@@ -593,7 +593,7 @@
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2573843"></a>Definition and Usage</h4></div></div></div>
|
||||
<a name="id2564138"></a>Definition and Usage</h4></div></div></div>
|
||||
<p>
|
||||
Comments may appear anywhere that whitespace may appear in
|
||||
a <acronym class="acronym">BIND</acronym> configuration file.
|
||||
@@ -834,7 +834,7 @@
|
||||
</p>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2574497"></a><span><strong class="command">acl</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<a name="id2573940"></a><span><strong class="command">acl</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<pre class="programlisting"><span><strong class="command">acl</strong></span> acl-name {
|
||||
address_match_list
|
||||
};
|
||||
@@ -916,7 +916,7 @@
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2574686"></a><span><strong class="command">controls</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<a name="id2574130"></a><span><strong class="command">controls</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<pre class="programlisting"><span><strong class="command">controls</strong></span> {
|
||||
[ inet ( ip_addr | * ) [ port ip_port ] allow { <em class="replaceable"><code> address_match_list </code></em> }
|
||||
keys { <em class="replaceable"><code>key_list</code></em> }; ]
|
||||
@@ -1038,12 +1038,12 @@
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2575047"></a><span><strong class="command">include</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<a name="id2574558"></a><span><strong class="command">include</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<pre class="programlisting"><span><strong class="command">include</strong></span> <em class="replaceable"><code>filename</code></em>;</pre>
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2575064"></a><span><strong class="command">include</strong></span> Statement Definition and
|
||||
<a name="id2574576"></a><span><strong class="command">include</strong></span> Statement Definition and
|
||||
Usage</h3></div></div></div>
|
||||
<p>
|
||||
The <span><strong class="command">include</strong></span> statement inserts the
|
||||
@@ -1058,7 +1058,7 @@
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2575088"></a><span><strong class="command">key</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<a name="id2574599"></a><span><strong class="command">key</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<pre class="programlisting"><span><strong class="command">key</strong></span> <em class="replaceable"><code>key_id</code></em> {
|
||||
algorithm <em class="replaceable"><code>string</code></em>;
|
||||
secret <em class="replaceable"><code>string</code></em>;
|
||||
@@ -1067,7 +1067,7 @@
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2575111"></a><span><strong class="command">key</strong></span> Statement Definition and Usage</h3></div></div></div>
|
||||
<a name="id2574622"></a><span><strong class="command">key</strong></span> Statement Definition and Usage</h3></div></div></div>
|
||||
<p>
|
||||
The <span><strong class="command">key</strong></span> statement defines a shared
|
||||
secret key for use with TSIG (see <a href="Bv9ARM.ch04.html#tsig" title="TSIG">the section called “TSIG”</a>)
|
||||
@@ -1114,7 +1114,7 @@
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2575202"></a><span><strong class="command">logging</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<a name="id2574713"></a><span><strong class="command">logging</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<pre class="programlisting"><span><strong class="command">logging</strong></span> {
|
||||
[ <span><strong class="command">channel</strong></span> <em class="replaceable"><code>channel_name</code></em> {
|
||||
( <span><strong class="command">file</strong></span> <em class="replaceable"><code>path_name</code></em>
|
||||
@@ -1138,7 +1138,7 @@
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2575328"></a><span><strong class="command">logging</strong></span> Statement Definition and
|
||||
<a name="id2574839"></a><span><strong class="command">logging</strong></span> Statement Definition and
|
||||
Usage</h3></div></div></div>
|
||||
<p>
|
||||
The <span><strong class="command">logging</strong></span> statement configures a
|
||||
@@ -1172,7 +1172,7 @@
|
||||
</p>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2575448"></a>The <span><strong class="command">channel</strong></span> Phrase</h4></div></div></div>
|
||||
<a name="id2574891"></a>The <span><strong class="command">channel</strong></span> Phrase</h4></div></div></div>
|
||||
<p>
|
||||
All log output goes to one or more <span class="emphasis"><em>channels</em></span>;
|
||||
you can make as many of them as you want.
|
||||
@@ -1737,7 +1737,7 @@ category notify { null; };
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2577012"></a>The <span><strong class="command">query-errors</strong></span> Category</h4></div></div></div>
|
||||
<a name="id2576250"></a>The <span><strong class="command">query-errors</strong></span> Category</h4></div></div></div>
|
||||
<p>
|
||||
The <span><strong class="command">query-errors</strong></span> category is
|
||||
specifically intended for debugging purposes: To identify
|
||||
@@ -1957,7 +1957,7 @@ category notify { null; };
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2577457"></a><span><strong class="command">lwres</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<a name="id2576832"></a><span><strong class="command">lwres</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<p>
|
||||
This is the grammar of the <span><strong class="command">lwres</strong></span>
|
||||
statement in the <code class="filename">named.conf</code> file:
|
||||
@@ -1972,7 +1972,7 @@ category notify { null; };
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2577530"></a><span><strong class="command">lwres</strong></span> Statement Definition and Usage</h3></div></div></div>
|
||||
<a name="id2576905"></a><span><strong class="command">lwres</strong></span> Statement Definition and Usage</h3></div></div></div>
|
||||
<p>
|
||||
The <span><strong class="command">lwres</strong></span> statement configures the
|
||||
name
|
||||
@@ -2023,14 +2023,14 @@ category notify { null; };
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2577594"></a><span><strong class="command">masters</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<a name="id2576969"></a><span><strong class="command">masters</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<pre class="programlisting">
|
||||
<span><strong class="command">masters</strong></span> <em class="replaceable"><code>name</code></em> [<span class="optional">port <em class="replaceable"><code>ip_port</code></em></span>] { ( <em class="replaceable"><code>masters_list</code></em> | <em class="replaceable"><code>ip_addr</code></em> [<span class="optional">port <em class="replaceable"><code>ip_port</code></em></span>] [<span class="optional">key <em class="replaceable"><code>key</code></em></span>] ) ; [<span class="optional">...</span>] };
|
||||
</pre>
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2577638"></a><span><strong class="command">masters</strong></span> Statement Definition and
|
||||
<a name="id2577013"></a><span><strong class="command">masters</strong></span> Statement Definition and
|
||||
Usage</h3></div></div></div>
|
||||
<p><span><strong class="command">masters</strong></span>
|
||||
lists allow for a common set of masters to be easily used by
|
||||
@@ -2039,7 +2039,7 @@ category notify { null; };
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2577653"></a><span><strong class="command">options</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<a name="id2577028"></a><span><strong class="command">options</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<p>
|
||||
This is the grammar of the <span><strong class="command">options</strong></span>
|
||||
statement in the <code class="filename">named.conf</code> file:
|
||||
@@ -3229,7 +3229,7 @@ options {
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2582051"></a>Forwarding</h4></div></div></div>
|
||||
<a name="id2581289"></a>Forwarding</h4></div></div></div>
|
||||
<p>
|
||||
The forwarding facility can be used to create a large site-wide
|
||||
cache on a few servers, reducing traffic over links to external
|
||||
@@ -3273,7 +3273,7 @@ options {
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2582109"></a>Dual-stack Servers</h4></div></div></div>
|
||||
<a name="id2581416"></a>Dual-stack Servers</h4></div></div></div>
|
||||
<p>
|
||||
Dual-stack servers are used as servers of last resort to work
|
||||
around
|
||||
@@ -3476,7 +3476,7 @@ options {
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2582625"></a>Interfaces</h4></div></div></div>
|
||||
<a name="id2582000"></a>Interfaces</h4></div></div></div>
|
||||
<p>
|
||||
The interfaces and ports that the server will answer queries
|
||||
from may be specified using the <span><strong class="command">listen-on</strong></span> option. <span><strong class="command">listen-on</strong></span> takes
|
||||
@@ -3935,7 +3935,7 @@ avoid-v6-udp-ports {};
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2583902"></a>UDP Port Lists</h4></div></div></div>
|
||||
<a name="id2583141"></a>UDP Port Lists</h4></div></div></div>
|
||||
<p>
|
||||
<span><strong class="command">use-v4-udp-ports</strong></span>,
|
||||
<span><strong class="command">avoid-v4-udp-ports</strong></span>,
|
||||
@@ -3977,7 +3977,7 @@ avoid-v6-udp-ports { 40000; range 50000 60000; };
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2583962"></a>Operating System Resource Limits</h4></div></div></div>
|
||||
<a name="id2583201"></a>Operating System Resource Limits</h4></div></div></div>
|
||||
<p>
|
||||
The server's usage of many system resources can be limited.
|
||||
Scaled values are allowed when specifying resource limits. For
|
||||
@@ -4126,20 +4126,21 @@ avoid-v6-udp-ports { 40000; range 50000 60000; };
|
||||
</p></dd>
|
||||
<dt><span class="term"><span><strong class="command">tcp-listen-queue</strong></span></span></dt>
|
||||
<dd><p>
|
||||
The listen queue depth. The default and minimum is 3.
|
||||
The listen queue depth. The default and minimum is 10.
|
||||
If the kernel supports the accept filter "dataready" this
|
||||
also controls how
|
||||
many TCP connections that will be queued in kernel space
|
||||
waiting for
|
||||
some data before being passed to accept. Values less than 3
|
||||
will be
|
||||
silently raised.
|
||||
some data before being passed to accept. Nonzero values
|
||||
less than 10 will be silently raised. A value of 0 may also
|
||||
be used; on most platforms this sets the listen queue
|
||||
length to a system-defined default value.
|
||||
</p></dd>
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2584385"></a>Periodic Task Intervals</h4></div></div></div>
|
||||
<a name="id2583760"></a>Periodic Task Intervals</h4></div></div></div>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><span><strong class="command">cleaning-interval</strong></span></span></dt>
|
||||
<dd><p>
|
||||
@@ -5228,7 +5229,7 @@ avoid-v6-udp-ports { 40000; range 50000 60000; };
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2587400"></a><span><strong class="command">statistics-channels</strong></span> Statement Definition and
|
||||
<a name="id2586775"></a><span><strong class="command">statistics-channels</strong></span> Statement Definition and
|
||||
Usage</h3></div></div></div>
|
||||
<p>
|
||||
The <span><strong class="command">statistics-channels</strong></span> statement
|
||||
@@ -5279,7 +5280,7 @@ avoid-v6-udp-ports { 40000; range 50000 60000; };
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2587555"></a><span><strong class="command">trusted-keys</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<a name="id2586861"></a><span><strong class="command">trusted-keys</strong></span> Statement Grammar</h3></div></div></div>
|
||||
<pre class="programlisting"><span><strong class="command">trusted-keys</strong></span> {
|
||||
<em class="replaceable"><code>string</code></em> <em class="replaceable"><code>number</code></em> <em class="replaceable"><code>number</code></em> <em class="replaceable"><code>number</code></em> <em class="replaceable"><code>string</code></em> ;
|
||||
[<span class="optional"> <em class="replaceable"><code>string</code></em> <em class="replaceable"><code>number</code></em> <em class="replaceable"><code>number</code></em> <em class="replaceable"><code>number</code></em> <em class="replaceable"><code>string</code></em> ; [<span class="optional">...</span>]</span>]
|
||||
@@ -5288,7 +5289,7 @@ avoid-v6-udp-ports { 40000; range 50000 60000; };
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2587674"></a><span><strong class="command">trusted-keys</strong></span> Statement Definition
|
||||
<a name="id2586913"></a><span><strong class="command">trusted-keys</strong></span> Statement Definition
|
||||
and Usage</h3></div></div></div>
|
||||
<p>
|
||||
The <span><strong class="command">trusted-keys</strong></span> statement defines
|
||||
@@ -5334,7 +5335,7 @@ avoid-v6-udp-ports { 40000; range 50000 60000; };
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2587756"></a><span><strong class="command">view</strong></span> Statement Definition and Usage</h3></div></div></div>
|
||||
<a name="id2586995"></a><span><strong class="command">view</strong></span> Statement Definition and Usage</h3></div></div></div>
|
||||
<p>
|
||||
The <span><strong class="command">view</strong></span> statement is a powerful
|
||||
feature
|
||||
@@ -5601,10 +5602,10 @@ zone <em class="replaceable"><code>zone_name</code></em> [<span class="optional"
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2589242"></a><span><strong class="command">zone</strong></span> Statement Definition and Usage</h3></div></div></div>
|
||||
<a name="id2588549"></a><span><strong class="command">zone</strong></span> Statement Definition and Usage</h3></div></div></div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2589250"></a>Zone Types</h4></div></div></div>
|
||||
<a name="id2588556"></a>Zone Types</h4></div></div></div>
|
||||
<div class="informaltable"><table border="1">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -5815,7 +5816,7 @@ zone <em class="replaceable"><code>zone_name</code></em> [<span class="optional"
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2589677"></a>Class</h4></div></div></div>
|
||||
<a name="id2589052"></a>Class</h4></div></div></div>
|
||||
<p>
|
||||
The zone's name may optionally be followed by a class. If
|
||||
a class is not specified, class <code class="literal">IN</code> (for <code class="varname">Internet</code>),
|
||||
@@ -5837,7 +5838,7 @@ zone <em class="replaceable"><code>zone_name</code></em> [<span class="optional"
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2589710"></a>Zone Options</h4></div></div></div>
|
||||
<a name="id2589085"></a>Zone Options</h4></div></div></div>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><span><strong class="command">allow-notify</strong></span></span></dt>
|
||||
<dd><p>
|
||||
@@ -6496,7 +6497,7 @@ zone <em class="replaceable"><code>zone_name</code></em> [<span class="optional"
|
||||
</div>
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2591947"></a>Zone File</h2></div></div></div>
|
||||
<a name="id2591322"></a>Zone File</h2></div></div></div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="types_of_resource_records_and_when_to_use_them"></a>Types of Resource Records and When to Use Them</h3></div></div></div>
|
||||
@@ -6509,7 +6510,7 @@ zone <em class="replaceable"><code>zone_name</code></em> [<span class="optional"
|
||||
</p>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2591965"></a>Resource Records</h4></div></div></div>
|
||||
<a name="id2591340"></a>Resource Records</h4></div></div></div>
|
||||
<p>
|
||||
A domain name identifies a node. Each node has a set of
|
||||
resource information, which may be empty. The set of resource
|
||||
@@ -7246,7 +7247,7 @@ zone <em class="replaceable"><code>zone_name</code></em> [<span class="optional"
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2593589"></a>Textual expression of RRs</h4></div></div></div>
|
||||
<a name="id2592896"></a>Textual expression of RRs</h4></div></div></div>
|
||||
<p>
|
||||
RRs are represented in binary form in the packets of the DNS
|
||||
protocol, and are usually represented in highly encoded form
|
||||
@@ -7449,7 +7450,7 @@ zone <em class="replaceable"><code>zone_name</code></em> [<span class="optional"
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2594109"></a>Discussion of MX Records</h3></div></div></div>
|
||||
<a name="id2593416"></a>Discussion of MX Records</h3></div></div></div>
|
||||
<p>
|
||||
As described above, domain servers store information as a
|
||||
series of resource records, each of which contains a particular
|
||||
@@ -7705,7 +7706,7 @@ zone <em class="replaceable"><code>zone_name</code></em> [<span class="optional"
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2594725"></a>Inverse Mapping in IPv4</h3></div></div></div>
|
||||
<a name="id2594032"></a>Inverse Mapping in IPv4</h3></div></div></div>
|
||||
<p>
|
||||
Reverse name resolution (that is, translation from IP address
|
||||
to name) is achieved by means of the <span class="emphasis"><em>in-addr.arpa</em></span> domain
|
||||
@@ -7766,7 +7767,7 @@ zone <em class="replaceable"><code>zone_name</code></em> [<span class="optional"
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2594920"></a>Other Zone File Directives</h3></div></div></div>
|
||||
<a name="id2594227"></a>Other Zone File Directives</h3></div></div></div>
|
||||
<p>
|
||||
The Master File Format was initially defined in RFC 1035 and
|
||||
has subsequently been extended. While the Master File Format
|
||||
@@ -7781,7 +7782,7 @@ zone <em class="replaceable"><code>zone_name</code></em> [<span class="optional"
|
||||
</p>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2594942"></a>The <span><strong class="command">@</strong></span> (at-sign)</h4></div></div></div>
|
||||
<a name="id2594249"></a>The <span><strong class="command">@</strong></span> (at-sign)</h4></div></div></div>
|
||||
<p>
|
||||
When used in the label (or name) field, the asperand or
|
||||
at-sign (@) symbol represents the current origin.
|
||||
@@ -7792,7 +7793,7 @@ zone <em class="replaceable"><code>zone_name</code></em> [<span class="optional"
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2595027"></a>The <span><strong class="command">$ORIGIN</strong></span> Directive</h4></div></div></div>
|
||||
<a name="id2594265"></a>The <span><strong class="command">$ORIGIN</strong></span> Directive</h4></div></div></div>
|
||||
<p>
|
||||
Syntax: <span><strong class="command">$ORIGIN</strong></span>
|
||||
<em class="replaceable"><code>domain-name</code></em>
|
||||
@@ -7821,7 +7822,7 @@ WWW.EXAMPLE.COM. CNAME MAIN-SERVER.EXAMPLE.COM.
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2595088"></a>The <span><strong class="command">$INCLUDE</strong></span> Directive</h4></div></div></div>
|
||||
<a name="id2594394"></a>The <span><strong class="command">$INCLUDE</strong></span> Directive</h4></div></div></div>
|
||||
<p>
|
||||
Syntax: <span><strong class="command">$INCLUDE</strong></span>
|
||||
<em class="replaceable"><code>filename</code></em>
|
||||
@@ -7857,7 +7858,7 @@ WWW.EXAMPLE.COM. CNAME MAIN-SERVER.EXAMPLE.COM.
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2595157"></a>The <span><strong class="command">$TTL</strong></span> Directive</h4></div></div></div>
|
||||
<a name="id2594464"></a>The <span><strong class="command">$TTL</strong></span> Directive</h4></div></div></div>
|
||||
<p>
|
||||
Syntax: <span><strong class="command">$TTL</strong></span>
|
||||
<em class="replaceable"><code>default-ttl</code></em>
|
||||
@@ -7876,7 +7877,7 @@ WWW.EXAMPLE.COM. CNAME MAIN-SERVER.EXAMPLE.COM.
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2595193"></a><acronym class="acronym">BIND</acronym> Master File Extension: the <span><strong class="command">$GENERATE</strong></span> Directive</h3></div></div></div>
|
||||
<a name="id2594500"></a><acronym class="acronym">BIND</acronym> Master File Extension: the <span><strong class="command">$GENERATE</strong></span> Directive</h3></div></div></div>
|
||||
<p>
|
||||
Syntax: <span><strong class="command">$GENERATE</strong></span>
|
||||
<em class="replaceable"><code>range</code></em>
|
||||
@@ -8267,7 +8268,7 @@ $GENERATE 1-127 $ CNAME $.0</pre>
|
||||
</p>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2596189"></a>Name Server Statistics Counters</h4></div></div></div>
|
||||
<a name="id2595428"></a>Name Server Statistics Counters</h4></div></div></div>
|
||||
<div class="informaltable"><table border="1">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -8824,7 +8825,7 @@ $GENERATE 1-127 $ CNAME $.0</pre>
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2597662"></a>Zone Maintenance Statistics Counters</h4></div></div></div>
|
||||
<a name="id2597106"></a>Zone Maintenance Statistics Counters</h4></div></div></div>
|
||||
<div class="informaltable"><table border="1">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -8978,7 +8979,7 @@ $GENERATE 1-127 $ CNAME $.0</pre>
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2598114"></a>Resolver Statistics Counters</h4></div></div></div>
|
||||
<a name="id2597489"></a>Resolver Statistics Counters</h4></div></div></div>
|
||||
<div class="informaltable"><table border="1">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -9354,7 +9355,7 @@ $GENERATE 1-127 $ CNAME $.0</pre>
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2599064"></a>Socket I/O Statistics Counters</h4></div></div></div>
|
||||
<a name="id2598507"></a>Socket I/O Statistics Counters</h4></div></div></div>
|
||||
<p>
|
||||
Socket I/O statistics counters are defined per socket
|
||||
types, which are
|
||||
@@ -9509,7 +9510,7 @@ $GENERATE 1-127 $ CNAME $.0</pre>
|
||||
</div>
|
||||
<div class="sect3" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2599642"></a>Compatibility with <span class="emphasis"><em>BIND</em></span> 8 Counters</h4></div></div></div>
|
||||
<a name="id2598881"></a>Compatibility with <span class="emphasis"><em>BIND</em></span> 8 Counters</h4></div></div></div>
|
||||
<p>
|
||||
Most statistics counters that were available
|
||||
in <span><strong class="command">BIND</strong></span> 8 are also supported in
|
||||
|
||||
@@ -46,10 +46,10 @@
|
||||
<p><b>Table of Contents</b></p>
|
||||
<dl>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch07.html#Access_Control_Lists">Access Control Lists</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch07.html#id2599869"><span><strong class="command">Chroot</strong></span> and <span><strong class="command">Setuid</strong></span></a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch07.html#id2599040"><span><strong class="command">Chroot</strong></span> and <span><strong class="command">Setuid</strong></span></a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch07.html#id2599950">The <span><strong class="command">chroot</strong></span> Environment</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch07.html#id2600010">Using the <span><strong class="command">setuid</strong></span> Function</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch07.html#id2599189">The <span><strong class="command">chroot</strong></span> Environment</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch07.html#id2599249">Using the <span><strong class="command">setuid</strong></span> Function</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch07.html#dynamic_update_security">Dynamic Update Security</a></span></dt>
|
||||
</dl>
|
||||
@@ -112,7 +112,7 @@ zone "example.com" {
|
||||
</div>
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2599869"></a><span><strong class="command">Chroot</strong></span> and <span><strong class="command">Setuid</strong></span>
|
||||
<a name="id2599040"></a><span><strong class="command">Chroot</strong></span> and <span><strong class="command">Setuid</strong></span>
|
||||
</h2></div></div></div>
|
||||
<p>
|
||||
On UNIX servers, it is possible to run <acronym class="acronym">BIND</acronym>
|
||||
@@ -138,7 +138,7 @@ zone "example.com" {
|
||||
</p>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2599950"></a>The <span><strong class="command">chroot</strong></span> Environment</h3></div></div></div>
|
||||
<a name="id2599189"></a>The <span><strong class="command">chroot</strong></span> Environment</h3></div></div></div>
|
||||
<p>
|
||||
In order for a <span><strong class="command">chroot</strong></span> environment
|
||||
to
|
||||
@@ -166,7 +166,7 @@ zone "example.com" {
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2600010"></a>Using the <span><strong class="command">setuid</strong></span> Function</h3></div></div></div>
|
||||
<a name="id2599249"></a>Using the <span><strong class="command">setuid</strong></span> Function</h3></div></div></div>
|
||||
<p>
|
||||
Prior to running the <span><strong class="command">named</strong></span> daemon,
|
||||
use
|
||||
|
||||
@@ -45,18 +45,18 @@
|
||||
<div class="toc">
|
||||
<p><b>Table of Contents</b></p>
|
||||
<dl>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch08.html#id2600090">Common Problems</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch08.html#id2600096">It's not working; how can I figure out what's wrong?</a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch08.html#id2600107">Incrementing and Changing the Serial Number</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch08.html#id2600124">Where Can I Get Help?</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch08.html#id2599533">Common Problems</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch08.html#id2599539">It's not working; how can I figure out what's wrong?</a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch08.html#id2599550">Incrementing and Changing the Serial Number</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch08.html#id2599568">Where Can I Get Help?</a></span></dt>
|
||||
</dl>
|
||||
</div>
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2600090"></a>Common Problems</h2></div></div></div>
|
||||
<a name="id2599533"></a>Common Problems</h2></div></div></div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2600096"></a>It's not working; how can I figure out what's wrong?</h3></div></div></div>
|
||||
<a name="id2599539"></a>It's not working; how can I figure out what's wrong?</h3></div></div></div>
|
||||
<p>
|
||||
The best solution to solving installation and
|
||||
configuration issues is to take preventative measures by setting
|
||||
@@ -68,7 +68,7 @@
|
||||
</div>
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2600107"></a>Incrementing and Changing the Serial Number</h2></div></div></div>
|
||||
<a name="id2599550"></a>Incrementing and Changing the Serial Number</h2></div></div></div>
|
||||
<p>
|
||||
Zone serial numbers are just numbers — they aren't
|
||||
date related. A lot of people set them to a number that
|
||||
@@ -95,7 +95,7 @@
|
||||
</div>
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2600124"></a>Where Can I Get Help?</h2></div></div></div>
|
||||
<a name="id2599568"></a>Where Can I Get Help?</h2></div></div></div>
|
||||
<p>
|
||||
The Internet Systems Consortium
|
||||
(<acronym class="acronym">ISC</acronym>) offers a wide range
|
||||
|
||||
+89
-89
@@ -45,21 +45,21 @@
|
||||
<div class="toc">
|
||||
<p><b>Table of Contents</b></p>
|
||||
<dl>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch09.html#id2600323">Acknowledgments</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch09.html#id2599629">Acknowledgments</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch09.html#historical_dns_information">A Brief History of the <acronym class="acronym">DNS</acronym> and <acronym class="acronym">BIND</acronym></a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch09.html#id2600494">General <acronym class="acronym">DNS</acronym> Reference Information</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch09.html#id2599869">General <acronym class="acronym">DNS</acronym> Reference Information</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch09.html#ipv6addresses">IPv6 addresses (AAAA)</a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch09.html#bibliography">Bibliography (and Suggested Reading)</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch09.html#rfcs">Request for Comments (RFCs)</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch09.html#internet_drafts">Internet Drafts</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch09.html#id2603774">Other Documents About <acronym class="acronym">BIND</acronym></a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch09.html#id2602945">Other Documents About <acronym class="acronym">BIND</acronym></a></span></dt>
|
||||
</dl></dd>
|
||||
</dl>
|
||||
</div>
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2600323"></a>Acknowledgments</h2></div></div></div>
|
||||
<a name="id2599629"></a>Acknowledgments</h2></div></div></div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="historical_dns_information"></a>A Brief History of the <acronym class="acronym">DNS</acronym> and <acronym class="acronym">BIND</acronym>
|
||||
@@ -162,7 +162,7 @@
|
||||
</div>
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2600494"></a>General <acronym class="acronym">DNS</acronym> Reference Information</h2></div></div></div>
|
||||
<a name="id2599869"></a>General <acronym class="acronym">DNS</acronym> Reference Information</h2></div></div></div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="ipv6addresses"></a>IPv6 addresses (AAAA)</h3></div></div></div>
|
||||
@@ -250,17 +250,17 @@
|
||||
</p>
|
||||
<div class="bibliography">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2600614"></a>Bibliography</h4></div></div></div>
|
||||
<a name="id2599989"></a>Bibliography</h4></div></div></div>
|
||||
<div class="bibliodiv">
|
||||
<h3 class="title">Standards</h3>
|
||||
<div class="biblioentry">
|
||||
<a name="id2600761"></a><p>[<abbr class="abbrev">RFC974</abbr>] <span class="author"><span class="firstname">C.</span> <span class="surname">Partridge</span>. </span><span class="title"><i>Mail Routing and the Domain System</i>. </span><span class="pubdate">January 1986. </span></p>
|
||||
<a name="id2600000"></a><p>[<abbr class="abbrev">RFC974</abbr>] <span class="author"><span class="firstname">C.</span> <span class="surname">Partridge</span>. </span><span class="title"><i>Mail Routing and the Domain System</i>. </span><span class="pubdate">January 1986. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2600785"></a><p>[<abbr class="abbrev">RFC1034</abbr>] <span class="author"><span class="firstname">P.V.</span> <span class="surname">Mockapetris</span>. </span><span class="title"><i>Domain Names — Concepts and Facilities</i>. </span><span class="pubdate">November 1987. </span></p>
|
||||
<a name="id2600023"></a><p>[<abbr class="abbrev">RFC1034</abbr>] <span class="author"><span class="firstname">P.V.</span> <span class="surname">Mockapetris</span>. </span><span class="title"><i>Domain Names — Concepts and Facilities</i>. </span><span class="pubdate">November 1987. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2600808"></a><p>[<abbr class="abbrev">RFC1035</abbr>] <span class="author"><span class="firstname">P. V.</span> <span class="surname">Mockapetris</span>. </span><span class="title"><i>Domain Names — Implementation and
|
||||
<a name="id2600046"></a><p>[<abbr class="abbrev">RFC1035</abbr>] <span class="author"><span class="firstname">P. V.</span> <span class="surname">Mockapetris</span>. </span><span class="title"><i>Domain Names — Implementation and
|
||||
Specification</i>. </span><span class="pubdate">November 1987. </span></p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -268,42 +268,42 @@
|
||||
<h3 class="title">
|
||||
<a name="proposed_standards"></a>Proposed Standards</h3>
|
||||
<div class="biblioentry">
|
||||
<a name="id2600844"></a><p>[<abbr class="abbrev">RFC2181</abbr>] <span class="author"><span class="firstname">R., R. Bush</span> <span class="surname">Elz</span>. </span><span class="title"><i>Clarifications to the <acronym class="acronym">DNS</acronym>
|
||||
<a name="id2600083"></a><p>[<abbr class="abbrev">RFC2181</abbr>] <span class="author"><span class="firstname">R., R. Bush</span> <span class="surname">Elz</span>. </span><span class="title"><i>Clarifications to the <acronym class="acronym">DNS</acronym>
|
||||
Specification</i>. </span><span class="pubdate">July 1997. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2600871"></a><p>[<abbr class="abbrev">RFC2308</abbr>] <span class="author"><span class="firstname">M.</span> <span class="surname">Andrews</span>. </span><span class="title"><i>Negative Caching of <acronym class="acronym">DNS</acronym>
|
||||
<a name="id2600109"></a><p>[<abbr class="abbrev">RFC2308</abbr>] <span class="author"><span class="firstname">M.</span> <span class="surname">Andrews</span>. </span><span class="title"><i>Negative Caching of <acronym class="acronym">DNS</acronym>
|
||||
Queries</i>. </span><span class="pubdate">March 1998. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2600897"></a><p>[<abbr class="abbrev">RFC1995</abbr>] <span class="author"><span class="firstname">M.</span> <span class="surname">Ohta</span>. </span><span class="title"><i>Incremental Zone Transfer in <acronym class="acronym">DNS</acronym></i>. </span><span class="pubdate">August 1996. </span></p>
|
||||
<a name="id2600135"></a><p>[<abbr class="abbrev">RFC1995</abbr>] <span class="author"><span class="firstname">M.</span> <span class="surname">Ohta</span>. </span><span class="title"><i>Incremental Zone Transfer in <acronym class="acronym">DNS</acronym></i>. </span><span class="pubdate">August 1996. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2600921"></a><p>[<abbr class="abbrev">RFC1996</abbr>] <span class="author"><span class="firstname">P.</span> <span class="surname">Vixie</span>. </span><span class="title"><i>A Mechanism for Prompt Notification of Zone Changes</i>. </span><span class="pubdate">August 1996. </span></p>
|
||||
<a name="id2600160"></a><p>[<abbr class="abbrev">RFC1996</abbr>] <span class="author"><span class="firstname">P.</span> <span class="surname">Vixie</span>. </span><span class="title"><i>A Mechanism for Prompt Notification of Zone Changes</i>. </span><span class="pubdate">August 1996. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2600945"></a><p>[<abbr class="abbrev">RFC2136</abbr>] <span class="authorgroup"><span class="firstname">P.</span> <span class="surname">Vixie</span>, <span class="firstname">S.</span> <span class="surname">Thomson</span>, <span class="firstname">Y.</span> <span class="surname">Rekhter</span>, and <span class="firstname">J.</span> <span class="surname">Bound</span>. </span><span class="title"><i>Dynamic Updates in the Domain Name System</i>. </span><span class="pubdate">April 1997. </span></p>
|
||||
<a name="id2600183"></a><p>[<abbr class="abbrev">RFC2136</abbr>] <span class="authorgroup"><span class="firstname">P.</span> <span class="surname">Vixie</span>, <span class="firstname">S.</span> <span class="surname">Thomson</span>, <span class="firstname">Y.</span> <span class="surname">Rekhter</span>, and <span class="firstname">J.</span> <span class="surname">Bound</span>. </span><span class="title"><i>Dynamic Updates in the Domain Name System</i>. </span><span class="pubdate">April 1997. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601000"></a><p>[<abbr class="abbrev">RFC2671</abbr>] <span class="authorgroup"><span class="firstname">P.</span> <span class="surname">Vixie</span>. </span><span class="title"><i>Extension Mechanisms for DNS (EDNS0)</i>. </span><span class="pubdate">August 1997. </span></p>
|
||||
<a name="id2600238"></a><p>[<abbr class="abbrev">RFC2671</abbr>] <span class="authorgroup"><span class="firstname">P.</span> <span class="surname">Vixie</span>. </span><span class="title"><i>Extension Mechanisms for DNS (EDNS0)</i>. </span><span class="pubdate">August 1997. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601027"></a><p>[<abbr class="abbrev">RFC2672</abbr>] <span class="authorgroup"><span class="firstname">M.</span> <span class="surname">Crawford</span>. </span><span class="title"><i>Non-Terminal DNS Name Redirection</i>. </span><span class="pubdate">August 1999. </span></p>
|
||||
<a name="id2600265"></a><p>[<abbr class="abbrev">RFC2672</abbr>] <span class="authorgroup"><span class="firstname">M.</span> <span class="surname">Crawford</span>. </span><span class="title"><i>Non-Terminal DNS Name Redirection</i>. </span><span class="pubdate">August 1999. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601053"></a><p>[<abbr class="abbrev">RFC2845</abbr>] <span class="authorgroup"><span class="firstname">P.</span> <span class="surname">Vixie</span>, <span class="firstname">O.</span> <span class="surname">Gudmundsson</span>, <span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>, and <span class="firstname">B.</span> <span class="surname">Wellington</span>. </span><span class="title"><i>Secret Key Transaction Authentication for <acronym class="acronym">DNS</acronym> (TSIG)</i>. </span><span class="pubdate">May 2000. </span></p>
|
||||
<a name="id2600292"></a><p>[<abbr class="abbrev">RFC2845</abbr>] <span class="authorgroup"><span class="firstname">P.</span> <span class="surname">Vixie</span>, <span class="firstname">O.</span> <span class="surname">Gudmundsson</span>, <span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>, and <span class="firstname">B.</span> <span class="surname">Wellington</span>. </span><span class="title"><i>Secret Key Transaction Authentication for <acronym class="acronym">DNS</acronym> (TSIG)</i>. </span><span class="pubdate">May 2000. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601115"></a><p>[<abbr class="abbrev">RFC2930</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>Secret Key Establishment for DNS (TKEY RR)</i>. </span><span class="pubdate">September 2000. </span></p>
|
||||
<a name="id2600354"></a><p>[<abbr class="abbrev">RFC2930</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>Secret Key Establishment for DNS (TKEY RR)</i>. </span><span class="pubdate">September 2000. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601145"></a><p>[<abbr class="abbrev">RFC2931</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>DNS Request and Transaction Signatures (SIG(0)s)</i>. </span><span class="pubdate">September 2000. </span></p>
|
||||
<a name="id2600384"></a><p>[<abbr class="abbrev">RFC2931</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>DNS Request and Transaction Signatures (SIG(0)s)</i>. </span><span class="pubdate">September 2000. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601175"></a><p>[<abbr class="abbrev">RFC3007</abbr>] <span class="authorgroup"><span class="firstname">B.</span> <span class="surname">Wellington</span>. </span><span class="title"><i>Secure Domain Name System (DNS) Dynamic Update</i>. </span><span class="pubdate">November 2000. </span></p>
|
||||
<a name="id2600413"></a><p>[<abbr class="abbrev">RFC3007</abbr>] <span class="authorgroup"><span class="firstname">B.</span> <span class="surname">Wellington</span>. </span><span class="title"><i>Secure Domain Name System (DNS) Dynamic Update</i>. </span><span class="pubdate">November 2000. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601202"></a><p>[<abbr class="abbrev">RFC3645</abbr>] <span class="authorgroup"><span class="firstname">S.</span> <span class="surname">Kwan</span>, <span class="firstname">P.</span> <span class="surname">Garg</span>, <span class="firstname">J.</span> <span class="surname">Gilroy</span>, <span class="firstname">L.</span> <span class="surname">Esibov</span>, <span class="firstname">J.</span> <span class="surname">Westhead</span>, and <span class="firstname">R.</span> <span class="surname">Hall</span>. </span><span class="title"><i>Generic Security Service Algorithm for Secret
|
||||
<a name="id2600440"></a><p>[<abbr class="abbrev">RFC3645</abbr>] <span class="authorgroup"><span class="firstname">S.</span> <span class="surname">Kwan</span>, <span class="firstname">P.</span> <span class="surname">Garg</span>, <span class="firstname">J.</span> <span class="surname">Gilroy</span>, <span class="firstname">L.</span> <span class="surname">Esibov</span>, <span class="firstname">J.</span> <span class="surname">Westhead</span>, and <span class="firstname">R.</span> <span class="surname">Hall</span>. </span><span class="title"><i>Generic Security Service Algorithm for Secret
|
||||
Key Transaction Authentication for DNS
|
||||
(GSS-TSIG)</i>. </span><span class="pubdate">October 2003. </span></p>
|
||||
</div>
|
||||
@@ -312,19 +312,19 @@
|
||||
<h3 class="title">
|
||||
<acronym class="acronym">DNS</acronym> Security Proposed Standards</h3>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601284"></a><p>[<abbr class="abbrev">RFC3225</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Conrad</span>. </span><span class="title"><i>Indicating Resolver Support of DNSSEC</i>. </span><span class="pubdate">December 2001. </span></p>
|
||||
<a name="id2600522"></a><p>[<abbr class="abbrev">RFC3225</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Conrad</span>. </span><span class="title"><i>Indicating Resolver Support of DNSSEC</i>. </span><span class="pubdate">December 2001. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601310"></a><p>[<abbr class="abbrev">RFC3833</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Atkins</span> and <span class="firstname">R.</span> <span class="surname">Austein</span>. </span><span class="title"><i>Threat Analysis of the Domain Name System (DNS)</i>. </span><span class="pubdate">August 2004. </span></p>
|
||||
<a name="id2600549"></a><p>[<abbr class="abbrev">RFC3833</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Atkins</span> and <span class="firstname">R.</span> <span class="surname">Austein</span>. </span><span class="title"><i>Threat Analysis of the Domain Name System (DNS)</i>. </span><span class="pubdate">August 2004. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601347"></a><p>[<abbr class="abbrev">RFC4033</abbr>] <span class="authorgroup"><span class="firstname">R.</span> <span class="surname">Arends</span>, <span class="firstname">R.</span> <span class="surname">Austein</span>, <span class="firstname">M.</span> <span class="surname">Larson</span>, <span class="firstname">D.</span> <span class="surname">Massey</span>, and <span class="firstname">S.</span> <span class="surname">Rose</span>. </span><span class="title"><i>DNS Security Introduction and Requirements</i>. </span><span class="pubdate">March 2005. </span></p>
|
||||
<a name="id2600585"></a><p>[<abbr class="abbrev">RFC4033</abbr>] <span class="authorgroup"><span class="firstname">R.</span> <span class="surname">Arends</span>, <span class="firstname">R.</span> <span class="surname">Austein</span>, <span class="firstname">M.</span> <span class="surname">Larson</span>, <span class="firstname">D.</span> <span class="surname">Massey</span>, and <span class="firstname">S.</span> <span class="surname">Rose</span>. </span><span class="title"><i>DNS Security Introduction and Requirements</i>. </span><span class="pubdate">March 2005. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601412"></a><p>[<abbr class="abbrev">RFC4034</abbr>] <span class="authorgroup"><span class="firstname">R.</span> <span class="surname">Arends</span>, <span class="firstname">R.</span> <span class="surname">Austein</span>, <span class="firstname">M.</span> <span class="surname">Larson</span>, <span class="firstname">D.</span> <span class="surname">Massey</span>, and <span class="firstname">S.</span> <span class="surname">Rose</span>. </span><span class="title"><i>Resource Records for the DNS Security Extensions</i>. </span><span class="pubdate">March 2005. </span></p>
|
||||
<a name="id2600650"></a><p>[<abbr class="abbrev">RFC4034</abbr>] <span class="authorgroup"><span class="firstname">R.</span> <span class="surname">Arends</span>, <span class="firstname">R.</span> <span class="surname">Austein</span>, <span class="firstname">M.</span> <span class="surname">Larson</span>, <span class="firstname">D.</span> <span class="surname">Massey</span>, and <span class="firstname">S.</span> <span class="surname">Rose</span>. </span><span class="title"><i>Resource Records for the DNS Security Extensions</i>. </span><span class="pubdate">March 2005. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601477"></a><p>[<abbr class="abbrev">RFC4035</abbr>] <span class="authorgroup"><span class="firstname">R.</span> <span class="surname">Arends</span>, <span class="firstname">R.</span> <span class="surname">Austein</span>, <span class="firstname">M.</span> <span class="surname">Larson</span>, <span class="firstname">D.</span> <span class="surname">Massey</span>, and <span class="firstname">S.</span> <span class="surname">Rose</span>. </span><span class="title"><i>Protocol Modifications for the DNS
|
||||
<a name="id2600715"></a><p>[<abbr class="abbrev">RFC4035</abbr>] <span class="authorgroup"><span class="firstname">R.</span> <span class="surname">Arends</span>, <span class="firstname">R.</span> <span class="surname">Austein</span>, <span class="firstname">M.</span> <span class="surname">Larson</span>, <span class="firstname">D.</span> <span class="surname">Massey</span>, and <span class="firstname">S.</span> <span class="surname">Rose</span>. </span><span class="title"><i>Protocol Modifications for the DNS
|
||||
Security Extensions</i>. </span><span class="pubdate">March 2005. </span></p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -332,146 +332,146 @@
|
||||
<h3 class="title">Other Important RFCs About <acronym class="acronym">DNS</acronym>
|
||||
Implementation</h3>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601550"></a><p>[<abbr class="abbrev">RFC1535</abbr>] <span class="author"><span class="firstname">E.</span> <span class="surname">Gavron</span>. </span><span class="title"><i>A Security Problem and Proposed Correction With Widely
|
||||
<a name="id2600789"></a><p>[<abbr class="abbrev">RFC1535</abbr>] <span class="author"><span class="firstname">E.</span> <span class="surname">Gavron</span>. </span><span class="title"><i>A Security Problem and Proposed Correction With Widely
|
||||
Deployed <acronym class="acronym">DNS</acronym> Software.</i>. </span><span class="pubdate">October 1993. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601576"></a><p>[<abbr class="abbrev">RFC1536</abbr>] <span class="authorgroup"><span class="firstname">A.</span> <span class="surname">Kumar</span>, <span class="firstname">J.</span> <span class="surname">Postel</span>, <span class="firstname">C.</span> <span class="surname">Neuman</span>, <span class="firstname">P.</span> <span class="surname">Danzig</span>, and <span class="firstname">S.</span> <span class="surname">Miller</span>. </span><span class="title"><i>Common <acronym class="acronym">DNS</acronym> Implementation
|
||||
<a name="id2600814"></a><p>[<abbr class="abbrev">RFC1536</abbr>] <span class="authorgroup"><span class="firstname">A.</span> <span class="surname">Kumar</span>, <span class="firstname">J.</span> <span class="surname">Postel</span>, <span class="firstname">C.</span> <span class="surname">Neuman</span>, <span class="firstname">P.</span> <span class="surname">Danzig</span>, and <span class="firstname">S.</span> <span class="surname">Miller</span>. </span><span class="title"><i>Common <acronym class="acronym">DNS</acronym> Implementation
|
||||
Errors and Suggested Fixes</i>. </span><span class="pubdate">October 1993. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601644"></a><p>[<abbr class="abbrev">RFC1982</abbr>] <span class="authorgroup"><span class="firstname">R.</span> <span class="surname">Elz</span> and <span class="firstname">R.</span> <span class="surname">Bush</span>. </span><span class="title"><i>Serial Number Arithmetic</i>. </span><span class="pubdate">August 1996. </span></p>
|
||||
<a name="id2600883"></a><p>[<abbr class="abbrev">RFC1982</abbr>] <span class="authorgroup"><span class="firstname">R.</span> <span class="surname">Elz</span> and <span class="firstname">R.</span> <span class="surname">Bush</span>. </span><span class="title"><i>Serial Number Arithmetic</i>. </span><span class="pubdate">August 1996. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601680"></a><p>[<abbr class="abbrev">RFC4074</abbr>] <span class="authorgroup"><span class="firstname">Y.</span> <span class="surname">Morishita</span> and <span class="firstname">T.</span> <span class="surname">Jinmei</span>. </span><span class="title"><i>Common Misbehaviour Against <acronym class="acronym">DNS</acronym>
|
||||
<a name="id2600918"></a><p>[<abbr class="abbrev">RFC4074</abbr>] <span class="authorgroup"><span class="firstname">Y.</span> <span class="surname">Morishita</span> and <span class="firstname">T.</span> <span class="surname">Jinmei</span>. </span><span class="title"><i>Common Misbehaviour Against <acronym class="acronym">DNS</acronym>
|
||||
Queries for IPv6 Addresses</i>. </span><span class="pubdate">May 2005. </span></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bibliodiv">
|
||||
<h3 class="title">Resource Record Types</h3>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601725"></a><p>[<abbr class="abbrev">RFC1183</abbr>] <span class="authorgroup"><span class="firstname">C.F.</span> <span class="surname">Everhart</span>, <span class="firstname">L. A.</span> <span class="surname">Mamakos</span>, <span class="firstname">R.</span> <span class="surname">Ullmann</span>, and <span class="firstname">P.</span> <span class="surname">Mockapetris</span>. </span><span class="title"><i>New <acronym class="acronym">DNS</acronym> RR Definitions</i>. </span><span class="pubdate">October 1990. </span></p>
|
||||
<a name="id2600964"></a><p>[<abbr class="abbrev">RFC1183</abbr>] <span class="authorgroup"><span class="firstname">C.F.</span> <span class="surname">Everhart</span>, <span class="firstname">L. A.</span> <span class="surname">Mamakos</span>, <span class="firstname">R.</span> <span class="surname">Ullmann</span>, and <span class="firstname">P.</span> <span class="surname">Mockapetris</span>. </span><span class="title"><i>New <acronym class="acronym">DNS</acronym> RR Definitions</i>. </span><span class="pubdate">October 1990. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601783"></a><p>[<abbr class="abbrev">RFC1706</abbr>] <span class="authorgroup"><span class="firstname">B.</span> <span class="surname">Manning</span> and <span class="firstname">R.</span> <span class="surname">Colella</span>. </span><span class="title"><i><acronym class="acronym">DNS</acronym> NSAP Resource Records</i>. </span><span class="pubdate">October 1994. </span></p>
|
||||
<a name="id2601021"></a><p>[<abbr class="abbrev">RFC1706</abbr>] <span class="authorgroup"><span class="firstname">B.</span> <span class="surname">Manning</span> and <span class="firstname">R.</span> <span class="surname">Colella</span>. </span><span class="title"><i><acronym class="acronym">DNS</acronym> NSAP Resource Records</i>. </span><span class="pubdate">October 1994. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601820"></a><p>[<abbr class="abbrev">RFC2168</abbr>] <span class="authorgroup"><span class="firstname">R.</span> <span class="surname">Daniel</span> and <span class="firstname">M.</span> <span class="surname">Mealling</span>. </span><span class="title"><i>Resolution of Uniform Resource Identifiers using
|
||||
<a name="id2601059"></a><p>[<abbr class="abbrev">RFC2168</abbr>] <span class="authorgroup"><span class="firstname">R.</span> <span class="surname">Daniel</span> and <span class="firstname">M.</span> <span class="surname">Mealling</span>. </span><span class="title"><i>Resolution of Uniform Resource Identifiers using
|
||||
the Domain Name System</i>. </span><span class="pubdate">June 1997. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601924"></a><p>[<abbr class="abbrev">RFC1876</abbr>] <span class="authorgroup"><span class="firstname">C.</span> <span class="surname">Davis</span>, <span class="firstname">P.</span> <span class="surname">Vixie</span>, <span class="firstname">T.</span>, and <span class="firstname">I.</span> <span class="surname">Dickinson</span>. </span><span class="title"><i>A Means for Expressing Location Information in the
|
||||
<a name="id2601094"></a><p>[<abbr class="abbrev">RFC1876</abbr>] <span class="authorgroup"><span class="firstname">C.</span> <span class="surname">Davis</span>, <span class="firstname">P.</span> <span class="surname">Vixie</span>, <span class="firstname">T.</span>, and <span class="firstname">I.</span> <span class="surname">Dickinson</span>. </span><span class="title"><i>A Means for Expressing Location Information in the
|
||||
Domain
|
||||
Name System</i>. </span><span class="pubdate">January 1996. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2601978"></a><p>[<abbr class="abbrev">RFC2052</abbr>] <span class="authorgroup"><span class="firstname">A.</span> <span class="surname">Gulbrandsen</span> and <span class="firstname">P.</span> <span class="surname">Vixie</span>. </span><span class="title"><i>A <acronym class="acronym">DNS</acronym> RR for Specifying the
|
||||
<a name="id2601148"></a><p>[<abbr class="abbrev">RFC2052</abbr>] <span class="authorgroup"><span class="firstname">A.</span> <span class="surname">Gulbrandsen</span> and <span class="firstname">P.</span> <span class="surname">Vixie</span>. </span><span class="title"><i>A <acronym class="acronym">DNS</acronym> RR for Specifying the
|
||||
Location of
|
||||
Services.</i>. </span><span class="pubdate">October 1996. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602017"></a><p>[<abbr class="abbrev">RFC2163</abbr>] <span class="author"><span class="firstname">A.</span> <span class="surname">Allocchio</span>. </span><span class="title"><i>Using the Internet <acronym class="acronym">DNS</acronym> to
|
||||
<a name="id2601187"></a><p>[<abbr class="abbrev">RFC2163</abbr>] <span class="author"><span class="firstname">A.</span> <span class="surname">Allocchio</span>. </span><span class="title"><i>Using the Internet <acronym class="acronym">DNS</acronym> to
|
||||
Distribute MIXER
|
||||
Conformant Global Address Mapping</i>. </span><span class="pubdate">January 1998. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602042"></a><p>[<abbr class="abbrev">RFC2230</abbr>] <span class="author"><span class="firstname">R.</span> <span class="surname">Atkinson</span>. </span><span class="title"><i>Key Exchange Delegation Record for the <acronym class="acronym">DNS</acronym></i>. </span><span class="pubdate">October 1997. </span></p>
|
||||
<a name="id2601212"></a><p>[<abbr class="abbrev">RFC2230</abbr>] <span class="author"><span class="firstname">R.</span> <span class="surname">Atkinson</span>. </span><span class="title"><i>Key Exchange Delegation Record for the <acronym class="acronym">DNS</acronym></i>. </span><span class="pubdate">October 1997. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602068"></a><p>[<abbr class="abbrev">RFC2536</abbr>] <span class="author"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>DSA KEYs and SIGs in the Domain Name System (DNS)</i>. </span><span class="pubdate">March 1999. </span></p>
|
||||
<a name="id2601238"></a><p>[<abbr class="abbrev">RFC2536</abbr>] <span class="author"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>DSA KEYs and SIGs in the Domain Name System (DNS)</i>. </span><span class="pubdate">March 1999. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602094"></a><p>[<abbr class="abbrev">RFC2537</abbr>] <span class="author"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>RSA/MD5 KEYs and SIGs in the Domain Name System (DNS)</i>. </span><span class="pubdate">March 1999. </span></p>
|
||||
<a name="id2601265"></a><p>[<abbr class="abbrev">RFC2537</abbr>] <span class="author"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>RSA/MD5 KEYs and SIGs in the Domain Name System (DNS)</i>. </span><span class="pubdate">March 1999. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602121"></a><p>[<abbr class="abbrev">RFC2538</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span> and <span class="firstname">O.</span> <span class="surname">Gudmundsson</span>. </span><span class="title"><i>Storing Certificates in the Domain Name System (DNS)</i>. </span><span class="pubdate">March 1999. </span></p>
|
||||
<a name="id2601291"></a><p>[<abbr class="abbrev">RFC2538</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span> and <span class="firstname">O.</span> <span class="surname">Gudmundsson</span>. </span><span class="title"><i>Storing Certificates in the Domain Name System (DNS)</i>. </span><span class="pubdate">March 1999. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602161"></a><p>[<abbr class="abbrev">RFC2539</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>Storage of Diffie-Hellman Keys in the Domain Name System (DNS)</i>. </span><span class="pubdate">March 1999. </span></p>
|
||||
<a name="id2601331"></a><p>[<abbr class="abbrev">RFC2539</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>Storage of Diffie-Hellman Keys in the Domain Name System (DNS)</i>. </span><span class="pubdate">March 1999. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602190"></a><p>[<abbr class="abbrev">RFC2540</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>Detached Domain Name System (DNS) Information</i>. </span><span class="pubdate">March 1999. </span></p>
|
||||
<a name="id2601361"></a><p>[<abbr class="abbrev">RFC2540</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>Detached Domain Name System (DNS) Information</i>. </span><span class="pubdate">March 1999. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602220"></a><p>[<abbr class="abbrev">RFC2782</abbr>] <span class="author"><span class="firstname">A.</span> <span class="surname">Gulbrandsen</span>. </span><span class="author"><span class="firstname">P.</span> <span class="surname">Vixie</span>. </span><span class="author"><span class="firstname">L.</span> <span class="surname">Esibov</span>. </span><span class="title"><i>A DNS RR for specifying the location of services (DNS SRV)</i>. </span><span class="pubdate">February 2000. </span></p>
|
||||
<a name="id2601390"></a><p>[<abbr class="abbrev">RFC2782</abbr>] <span class="author"><span class="firstname">A.</span> <span class="surname">Gulbrandsen</span>. </span><span class="author"><span class="firstname">P.</span> <span class="surname">Vixie</span>. </span><span class="author"><span class="firstname">L.</span> <span class="surname">Esibov</span>. </span><span class="title"><i>A DNS RR for specifying the location of services (DNS SRV)</i>. </span><span class="pubdate">February 2000. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602263"></a><p>[<abbr class="abbrev">RFC2915</abbr>] <span class="author"><span class="firstname">M.</span> <span class="surname">Mealling</span>. </span><span class="author"><span class="firstname">R.</span> <span class="surname">Daniel</span>. </span><span class="title"><i>The Naming Authority Pointer (NAPTR) DNS Resource Record</i>. </span><span class="pubdate">September 2000. </span></p>
|
||||
<a name="id2601433"></a><p>[<abbr class="abbrev">RFC2915</abbr>] <span class="author"><span class="firstname">M.</span> <span class="surname">Mealling</span>. </span><span class="author"><span class="firstname">R.</span> <span class="surname">Daniel</span>. </span><span class="title"><i>The Naming Authority Pointer (NAPTR) DNS Resource Record</i>. </span><span class="pubdate">September 2000. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602296"></a><p>[<abbr class="abbrev">RFC3110</abbr>] <span class="author"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>RSA/SHA-1 SIGs and RSA KEYs in the Domain Name System (DNS)</i>. </span><span class="pubdate">May 2001. </span></p>
|
||||
<a name="id2601466"></a><p>[<abbr class="abbrev">RFC3110</abbr>] <span class="author"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>RSA/SHA-1 SIGs and RSA KEYs in the Domain Name System (DNS)</i>. </span><span class="pubdate">May 2001. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602323"></a><p>[<abbr class="abbrev">RFC3123</abbr>] <span class="author"><span class="firstname">P.</span> <span class="surname">Koch</span>. </span><span class="title"><i>A DNS RR Type for Lists of Address Prefixes (APL RR)</i>. </span><span class="pubdate">June 2001. </span></p>
|
||||
<a name="id2601493"></a><p>[<abbr class="abbrev">RFC3123</abbr>] <span class="author"><span class="firstname">P.</span> <span class="surname">Koch</span>. </span><span class="title"><i>A DNS RR Type for Lists of Address Prefixes (APL RR)</i>. </span><span class="pubdate">June 2001. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602346"></a><p>[<abbr class="abbrev">RFC3596</abbr>] <span class="authorgroup"><span class="firstname">S.</span> <span class="surname">Thomson</span>, <span class="firstname">C.</span> <span class="surname">Huitema</span>, <span class="firstname">V.</span> <span class="surname">Ksinant</span>, and <span class="firstname">M.</span> <span class="surname">Souissi</span>. </span><span class="title"><i><acronym class="acronym">DNS</acronym> Extensions to support IP
|
||||
<a name="id2601516"></a><p>[<abbr class="abbrev">RFC3596</abbr>] <span class="authorgroup"><span class="firstname">S.</span> <span class="surname">Thomson</span>, <span class="firstname">C.</span> <span class="surname">Huitema</span>, <span class="firstname">V.</span> <span class="surname">Ksinant</span>, and <span class="firstname">M.</span> <span class="surname">Souissi</span>. </span><span class="title"><i><acronym class="acronym">DNS</acronym> Extensions to support IP
|
||||
version 6</i>. </span><span class="pubdate">October 2003. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602404"></a><p>[<abbr class="abbrev">RFC3597</abbr>] <span class="author"><span class="firstname">A.</span> <span class="surname">Gustafsson</span>. </span><span class="title"><i>Handling of Unknown DNS Resource Record (RR) Types</i>. </span><span class="pubdate">September 2003. </span></p>
|
||||
<a name="id2601574"></a><p>[<abbr class="abbrev">RFC3597</abbr>] <span class="author"><span class="firstname">A.</span> <span class="surname">Gustafsson</span>. </span><span class="title"><i>Handling of Unknown DNS Resource Record (RR) Types</i>. </span><span class="pubdate">September 2003. </span></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bibliodiv">
|
||||
<h3 class="title">
|
||||
<acronym class="acronym">DNS</acronym> and the Internet</h3>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602436"></a><p>[<abbr class="abbrev">RFC1101</abbr>] <span class="author"><span class="firstname">P. V.</span> <span class="surname">Mockapetris</span>. </span><span class="title"><i><acronym class="acronym">DNS</acronym> Encoding of Network Names
|
||||
<a name="id2601606"></a><p>[<abbr class="abbrev">RFC1101</abbr>] <span class="author"><span class="firstname">P. V.</span> <span class="surname">Mockapetris</span>. </span><span class="title"><i><acronym class="acronym">DNS</acronym> Encoding of Network Names
|
||||
and Other Types</i>. </span><span class="pubdate">April 1989. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602461"></a><p>[<abbr class="abbrev">RFC1123</abbr>] <span class="author"><span class="surname">Braden</span>. </span><span class="title"><i>Requirements for Internet Hosts - Application and
|
||||
<a name="id2601632"></a><p>[<abbr class="abbrev">RFC1123</abbr>] <span class="author"><span class="surname">Braden</span>. </span><span class="title"><i>Requirements for Internet Hosts - Application and
|
||||
Support</i>. </span><span class="pubdate">October 1989. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602484"></a><p>[<abbr class="abbrev">RFC1591</abbr>] <span class="author"><span class="firstname">J.</span> <span class="surname">Postel</span>. </span><span class="title"><i>Domain Name System Structure and Delegation</i>. </span><span class="pubdate">March 1994. </span></p>
|
||||
<a name="id2601722"></a><p>[<abbr class="abbrev">RFC1591</abbr>] <span class="author"><span class="firstname">J.</span> <span class="surname">Postel</span>. </span><span class="title"><i>Domain Name System Structure and Delegation</i>. </span><span class="pubdate">March 1994. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602507"></a><p>[<abbr class="abbrev">RFC2317</abbr>] <span class="authorgroup"><span class="firstname">H.</span> <span class="surname">Eidnes</span>, <span class="firstname">G.</span> <span class="surname">de Groot</span>, and <span class="firstname">P.</span> <span class="surname">Vixie</span>. </span><span class="title"><i>Classless IN-ADDR.ARPA Delegation</i>. </span><span class="pubdate">March 1998. </span></p>
|
||||
<a name="id2601746"></a><p>[<abbr class="abbrev">RFC2317</abbr>] <span class="authorgroup"><span class="firstname">H.</span> <span class="surname">Eidnes</span>, <span class="firstname">G.</span> <span class="surname">de Groot</span>, and <span class="firstname">P.</span> <span class="surname">Vixie</span>. </span><span class="title"><i>Classless IN-ADDR.ARPA Delegation</i>. </span><span class="pubdate">March 1998. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602553"></a><p>[<abbr class="abbrev">RFC2826</abbr>] <span class="authorgroup"><span class="surname">Internet Architecture Board</span>. </span><span class="title"><i>IAB Technical Comment on the Unique DNS Root</i>. </span><span class="pubdate">May 2000. </span></p>
|
||||
<a name="id2601792"></a><p>[<abbr class="abbrev">RFC2826</abbr>] <span class="authorgroup"><span class="surname">Internet Architecture Board</span>. </span><span class="title"><i>IAB Technical Comment on the Unique DNS Root</i>. </span><span class="pubdate">May 2000. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602577"></a><p>[<abbr class="abbrev">RFC2929</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>, <span class="firstname">E.</span> <span class="surname">Brunner-Williams</span>, and <span class="firstname">B.</span> <span class="surname">Manning</span>. </span><span class="title"><i>Domain Name System (DNS) IANA Considerations</i>. </span><span class="pubdate">September 2000. </span></p>
|
||||
<a name="id2601815"></a><p>[<abbr class="abbrev">RFC2929</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>, <span class="firstname">E.</span> <span class="surname">Brunner-Williams</span>, and <span class="firstname">B.</span> <span class="surname">Manning</span>. </span><span class="title"><i>Domain Name System (DNS) IANA Considerations</i>. </span><span class="pubdate">September 2000. </span></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bibliodiv">
|
||||
<h3 class="title">
|
||||
<acronym class="acronym">DNS</acronym> Operations</h3>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602634"></a><p>[<abbr class="abbrev">RFC1033</abbr>] <span class="author"><span class="firstname">M.</span> <span class="surname">Lottor</span>. </span><span class="title"><i>Domain administrators operations guide.</i>. </span><span class="pubdate">November 1987. </span></p>
|
||||
<a name="id2601873"></a><p>[<abbr class="abbrev">RFC1033</abbr>] <span class="author"><span class="firstname">M.</span> <span class="surname">Lottor</span>. </span><span class="title"><i>Domain administrators operations guide.</i>. </span><span class="pubdate">November 1987. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602658"></a><p>[<abbr class="abbrev">RFC1537</abbr>] <span class="author"><span class="firstname">P.</span> <span class="surname">Beertema</span>. </span><span class="title"><i>Common <acronym class="acronym">DNS</acronym> Data File
|
||||
<a name="id2601896"></a><p>[<abbr class="abbrev">RFC1537</abbr>] <span class="author"><span class="firstname">P.</span> <span class="surname">Beertema</span>. </span><span class="title"><i>Common <acronym class="acronym">DNS</acronym> Data File
|
||||
Configuration Errors</i>. </span><span class="pubdate">October 1993. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602684"></a><p>[<abbr class="abbrev">RFC1912</abbr>] <span class="author"><span class="firstname">D.</span> <span class="surname">Barr</span>. </span><span class="title"><i>Common <acronym class="acronym">DNS</acronym> Operational and
|
||||
<a name="id2601923"></a><p>[<abbr class="abbrev">RFC1912</abbr>] <span class="author"><span class="firstname">D.</span> <span class="surname">Barr</span>. </span><span class="title"><i>Common <acronym class="acronym">DNS</acronym> Operational and
|
||||
Configuration Errors</i>. </span><span class="pubdate">February 1996. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602711"></a><p>[<abbr class="abbrev">RFC2010</abbr>] <span class="authorgroup"><span class="firstname">B.</span> <span class="surname">Manning</span> and <span class="firstname">P.</span> <span class="surname">Vixie</span>. </span><span class="title"><i>Operational Criteria for Root Name Servers.</i>. </span><span class="pubdate">October 1996. </span></p>
|
||||
<a name="id2601949"></a><p>[<abbr class="abbrev">RFC2010</abbr>] <span class="authorgroup"><span class="firstname">B.</span> <span class="surname">Manning</span> and <span class="firstname">P.</span> <span class="surname">Vixie</span>. </span><span class="title"><i>Operational Criteria for Root Name Servers.</i>. </span><span class="pubdate">October 1996. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602747"></a><p>[<abbr class="abbrev">RFC2219</abbr>] <span class="authorgroup"><span class="firstname">M.</span> <span class="surname">Hamilton</span> and <span class="firstname">R.</span> <span class="surname">Wright</span>. </span><span class="title"><i>Use of <acronym class="acronym">DNS</acronym> Aliases for
|
||||
<a name="id2601986"></a><p>[<abbr class="abbrev">RFC2219</abbr>] <span class="authorgroup"><span class="firstname">M.</span> <span class="surname">Hamilton</span> and <span class="firstname">R.</span> <span class="surname">Wright</span>. </span><span class="title"><i>Use of <acronym class="acronym">DNS</acronym> Aliases for
|
||||
Network Services.</i>. </span><span class="pubdate">October 1997. </span></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bibliodiv">
|
||||
<h3 class="title">Internationalized Domain Names</h3>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602793"></a><p>[<abbr class="abbrev">RFC2825</abbr>] <span class="authorgroup"><span class="surname">IAB</span> and <span class="firstname">R.</span> <span class="surname">Daigle</span>. </span><span class="title"><i>A Tangled Web: Issues of I18N, Domain Names,
|
||||
<a name="id2602032"></a><p>[<abbr class="abbrev">RFC2825</abbr>] <span class="authorgroup"><span class="surname">IAB</span> and <span class="firstname">R.</span> <span class="surname">Daigle</span>. </span><span class="title"><i>A Tangled Web: Issues of I18N, Domain Names,
|
||||
and the Other Internet protocols</i>. </span><span class="pubdate">May 2000. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602825"></a><p>[<abbr class="abbrev">RFC3490</abbr>] <span class="authorgroup"><span class="firstname">P.</span> <span class="surname">Faltstrom</span>, <span class="firstname">P.</span> <span class="surname">Hoffman</span>, and <span class="firstname">A.</span> <span class="surname">Costello</span>. </span><span class="title"><i>Internationalizing Domain Names in Applications (IDNA)</i>. </span><span class="pubdate">March 2003. </span></p>
|
||||
<a name="id2602064"></a><p>[<abbr class="abbrev">RFC3490</abbr>] <span class="authorgroup"><span class="firstname">P.</span> <span class="surname">Faltstrom</span>, <span class="firstname">P.</span> <span class="surname">Hoffman</span>, and <span class="firstname">A.</span> <span class="surname">Costello</span>. </span><span class="title"><i>Internationalizing Domain Names in Applications (IDNA)</i>. </span><span class="pubdate">March 2003. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602871"></a><p>[<abbr class="abbrev">RFC3491</abbr>] <span class="authorgroup"><span class="firstname">P.</span> <span class="surname">Hoffman</span> and <span class="firstname">M.</span> <span class="surname">Blanchet</span>. </span><span class="title"><i>Nameprep: A Stringprep Profile for Internationalized Domain Names</i>. </span><span class="pubdate">March 2003. </span></p>
|
||||
<a name="id2602109"></a><p>[<abbr class="abbrev">RFC3491</abbr>] <span class="authorgroup"><span class="firstname">P.</span> <span class="surname">Hoffman</span> and <span class="firstname">M.</span> <span class="surname">Blanchet</span>. </span><span class="title"><i>Nameprep: A Stringprep Profile for Internationalized Domain Names</i>. </span><span class="pubdate">March 2003. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2602906"></a><p>[<abbr class="abbrev">RFC3492</abbr>] <span class="authorgroup"><span class="firstname">A.</span> <span class="surname">Costello</span>. </span><span class="title"><i>Punycode: A Bootstring encoding of Unicode
|
||||
<a name="id2602145"></a><p>[<abbr class="abbrev">RFC3492</abbr>] <span class="authorgroup"><span class="firstname">A.</span> <span class="surname">Costello</span>. </span><span class="title"><i>Punycode: A Bootstring encoding of Unicode
|
||||
for Internationalized Domain Names in
|
||||
Applications (IDNA)</i>. </span><span class="pubdate">March 2003. </span></p>
|
||||
</div>
|
||||
@@ -487,47 +487,47 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603019"></a><p>[<abbr class="abbrev">RFC1464</abbr>] <span class="author"><span class="firstname">R.</span> <span class="surname">Rosenbaum</span>. </span><span class="title"><i>Using the Domain Name System To Store Arbitrary String
|
||||
<a name="id2602189"></a><p>[<abbr class="abbrev">RFC1464</abbr>] <span class="author"><span class="firstname">R.</span> <span class="surname">Rosenbaum</span>. </span><span class="title"><i>Using the Domain Name System To Store Arbitrary String
|
||||
Attributes</i>. </span><span class="pubdate">May 1993. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603042"></a><p>[<abbr class="abbrev">RFC1713</abbr>] <span class="author"><span class="firstname">A.</span> <span class="surname">Romao</span>. </span><span class="title"><i>Tools for <acronym class="acronym">DNS</acronym> Debugging</i>. </span><span class="pubdate">November 1994. </span></p>
|
||||
<a name="id2602212"></a><p>[<abbr class="abbrev">RFC1713</abbr>] <span class="author"><span class="firstname">A.</span> <span class="surname">Romao</span>. </span><span class="title"><i>Tools for <acronym class="acronym">DNS</acronym> Debugging</i>. </span><span class="pubdate">November 1994. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603067"></a><p>[<abbr class="abbrev">RFC1794</abbr>] <span class="author"><span class="firstname">T.</span> <span class="surname">Brisco</span>. </span><span class="title"><i><acronym class="acronym">DNS</acronym> Support for Load
|
||||
<a name="id2602237"></a><p>[<abbr class="abbrev">RFC1794</abbr>] <span class="author"><span class="firstname">T.</span> <span class="surname">Brisco</span>. </span><span class="title"><i><acronym class="acronym">DNS</acronym> Support for Load
|
||||
Balancing</i>. </span><span class="pubdate">April 1995. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603093"></a><p>[<abbr class="abbrev">RFC2240</abbr>] <span class="author"><span class="firstname">O.</span> <span class="surname">Vaughan</span>. </span><span class="title"><i>A Legal Basis for Domain Name Allocation</i>. </span><span class="pubdate">November 1997. </span></p>
|
||||
<a name="id2602263"></a><p>[<abbr class="abbrev">RFC2240</abbr>] <span class="author"><span class="firstname">O.</span> <span class="surname">Vaughan</span>. </span><span class="title"><i>A Legal Basis for Domain Name Allocation</i>. </span><span class="pubdate">November 1997. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603116"></a><p>[<abbr class="abbrev">RFC2345</abbr>] <span class="authorgroup"><span class="firstname">J.</span> <span class="surname">Klensin</span>, <span class="firstname">T.</span> <span class="surname">Wolf</span>, and <span class="firstname">G.</span> <span class="surname">Oglesby</span>. </span><span class="title"><i>Domain Names and Company Name Retrieval</i>. </span><span class="pubdate">May 1998. </span></p>
|
||||
<a name="id2602286"></a><p>[<abbr class="abbrev">RFC2345</abbr>] <span class="authorgroup"><span class="firstname">J.</span> <span class="surname">Klensin</span>, <span class="firstname">T.</span> <span class="surname">Wolf</span>, and <span class="firstname">G.</span> <span class="surname">Oglesby</span>. </span><span class="title"><i>Domain Names and Company Name Retrieval</i>. </span><span class="pubdate">May 1998. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603162"></a><p>[<abbr class="abbrev">RFC2352</abbr>] <span class="author"><span class="firstname">O.</span> <span class="surname">Vaughan</span>. </span><span class="title"><i>A Convention For Using Legal Names as Domain Names</i>. </span><span class="pubdate">May 1998. </span></p>
|
||||
<a name="id2602332"></a><p>[<abbr class="abbrev">RFC2352</abbr>] <span class="author"><span class="firstname">O.</span> <span class="surname">Vaughan</span>. </span><span class="title"><i>A Convention For Using Legal Names as Domain Names</i>. </span><span class="pubdate">May 1998. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603186"></a><p>[<abbr class="abbrev">RFC3071</abbr>] <span class="authorgroup"><span class="firstname">J.</span> <span class="surname">Klensin</span>. </span><span class="title"><i>Reflections on the DNS, RFC 1591, and Categories of Domains</i>. </span><span class="pubdate">February 2001. </span></p>
|
||||
<a name="id2602356"></a><p>[<abbr class="abbrev">RFC3071</abbr>] <span class="authorgroup"><span class="firstname">J.</span> <span class="surname">Klensin</span>. </span><span class="title"><i>Reflections on the DNS, RFC 1591, and Categories of Domains</i>. </span><span class="pubdate">February 2001. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603212"></a><p>[<abbr class="abbrev">RFC3258</abbr>] <span class="authorgroup"><span class="firstname">T.</span> <span class="surname">Hardie</span>. </span><span class="title"><i>Distributing Authoritative Name Servers via
|
||||
<a name="id2602382"></a><p>[<abbr class="abbrev">RFC3258</abbr>] <span class="authorgroup"><span class="firstname">T.</span> <span class="surname">Hardie</span>. </span><span class="title"><i>Distributing Authoritative Name Servers via
|
||||
Shared Unicast Addresses</i>. </span><span class="pubdate">April 2002. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603238"></a><p>[<abbr class="abbrev">RFC3901</abbr>] <span class="authorgroup"><span class="firstname">A.</span> <span class="surname">Durand</span> and <span class="firstname">J.</span> <span class="surname">Ihren</span>. </span><span class="title"><i>DNS IPv6 Transport Operational Guidelines</i>. </span><span class="pubdate">September 2004. </span></p>
|
||||
<a name="id2602408"></a><p>[<abbr class="abbrev">RFC3901</abbr>] <span class="authorgroup"><span class="firstname">A.</span> <span class="surname">Durand</span> and <span class="firstname">J.</span> <span class="surname">Ihren</span>. </span><span class="title"><i>DNS IPv6 Transport Operational Guidelines</i>. </span><span class="pubdate">September 2004. </span></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bibliodiv">
|
||||
<h3 class="title">Obsolete and Unimplemented Experimental RFC</h3>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603282"></a><p>[<abbr class="abbrev">RFC1712</abbr>] <span class="authorgroup"><span class="firstname">C.</span> <span class="surname">Farrell</span>, <span class="firstname">M.</span> <span class="surname">Schulze</span>, <span class="firstname">S.</span> <span class="surname">Pleitner</span>, and <span class="firstname">D.</span> <span class="surname">Baldoni</span>. </span><span class="title"><i><acronym class="acronym">DNS</acronym> Encoding of Geographical
|
||||
<a name="id2602452"></a><p>[<abbr class="abbrev">RFC1712</abbr>] <span class="authorgroup"><span class="firstname">C.</span> <span class="surname">Farrell</span>, <span class="firstname">M.</span> <span class="surname">Schulze</span>, <span class="firstname">S.</span> <span class="surname">Pleitner</span>, and <span class="firstname">D.</span> <span class="surname">Baldoni</span>. </span><span class="title"><i><acronym class="acronym">DNS</acronym> Encoding of Geographical
|
||||
Location</i>. </span><span class="pubdate">November 1994. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603339"></a><p>[<abbr class="abbrev">RFC2673</abbr>] <span class="authorgroup"><span class="firstname">M.</span> <span class="surname">Crawford</span>. </span><span class="title"><i>Binary Labels in the Domain Name System</i>. </span><span class="pubdate">August 1999. </span></p>
|
||||
<a name="id2602509"></a><p>[<abbr class="abbrev">RFC2673</abbr>] <span class="authorgroup"><span class="firstname">M.</span> <span class="surname">Crawford</span>. </span><span class="title"><i>Binary Labels in the Domain Name System</i>. </span><span class="pubdate">August 1999. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603366"></a><p>[<abbr class="abbrev">RFC2874</abbr>] <span class="authorgroup"><span class="firstname">M.</span> <span class="surname">Crawford</span> and <span class="firstname">C.</span> <span class="surname">Huitema</span>. </span><span class="title"><i>DNS Extensions to Support IPv6 Address Aggregation
|
||||
<a name="id2602536"></a><p>[<abbr class="abbrev">RFC2874</abbr>] <span class="authorgroup"><span class="firstname">M.</span> <span class="surname">Crawford</span> and <span class="firstname">C.</span> <span class="surname">Huitema</span>. </span><span class="title"><i>DNS Extensions to Support IPv6 Address Aggregation
|
||||
and Renumbering</i>. </span><span class="pubdate">July 2000. </span></p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -541,39 +541,39 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603414"></a><p>[<abbr class="abbrev">RFC2065</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span> and <span class="firstname">C.</span> <span class="surname">Kaufman</span>. </span><span class="title"><i>Domain Name System Security Extensions</i>. </span><span class="pubdate">January 1997. </span></p>
|
||||
<a name="id2602584"></a><p>[<abbr class="abbrev">RFC2065</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span> and <span class="firstname">C.</span> <span class="surname">Kaufman</span>. </span><span class="title"><i>Domain Name System Security Extensions</i>. </span><span class="pubdate">January 1997. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603453"></a><p>[<abbr class="abbrev">RFC2137</abbr>] <span class="author"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>Secure Domain Name System Dynamic Update</i>. </span><span class="pubdate">April 1997. </span></p>
|
||||
<a name="id2602624"></a><p>[<abbr class="abbrev">RFC2137</abbr>] <span class="author"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>Secure Domain Name System Dynamic Update</i>. </span><span class="pubdate">April 1997. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603480"></a><p>[<abbr class="abbrev">RFC2535</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>Domain Name System Security Extensions</i>. </span><span class="pubdate">March 1999. </span></p>
|
||||
<a name="id2602650"></a><p>[<abbr class="abbrev">RFC2535</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Eastlake</span>, <span class="lineage">3rd</span>. </span><span class="title"><i>Domain Name System Security Extensions</i>. </span><span class="pubdate">March 1999. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603510"></a><p>[<abbr class="abbrev">RFC3008</abbr>] <span class="authorgroup"><span class="firstname">B.</span> <span class="surname">Wellington</span>. </span><span class="title"><i>Domain Name System Security (DNSSEC)
|
||||
<a name="id2602680"></a><p>[<abbr class="abbrev">RFC3008</abbr>] <span class="authorgroup"><span class="firstname">B.</span> <span class="surname">Wellington</span>. </span><span class="title"><i>Domain Name System Security (DNSSEC)
|
||||
Signing Authority</i>. </span><span class="pubdate">November 2000. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603536"></a><p>[<abbr class="abbrev">RFC3090</abbr>] <span class="authorgroup"><span class="firstname">E.</span> <span class="surname">Lewis</span>. </span><span class="title"><i>DNS Security Extension Clarification on Zone Status</i>. </span><span class="pubdate">March 2001. </span></p>
|
||||
<a name="id2602706"></a><p>[<abbr class="abbrev">RFC3090</abbr>] <span class="authorgroup"><span class="firstname">E.</span> <span class="surname">Lewis</span>. </span><span class="title"><i>DNS Security Extension Clarification on Zone Status</i>. </span><span class="pubdate">March 2001. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603562"></a><p>[<abbr class="abbrev">RFC3445</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Massey</span> and <span class="firstname">S.</span> <span class="surname">Rose</span>. </span><span class="title"><i>Limiting the Scope of the KEY Resource Record (RR)</i>. </span><span class="pubdate">December 2002. </span></p>
|
||||
<a name="id2602732"></a><p>[<abbr class="abbrev">RFC3445</abbr>] <span class="authorgroup"><span class="firstname">D.</span> <span class="surname">Massey</span> and <span class="firstname">S.</span> <span class="surname">Rose</span>. </span><span class="title"><i>Limiting the Scope of the KEY Resource Record (RR)</i>. </span><span class="pubdate">December 2002. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603598"></a><p>[<abbr class="abbrev">RFC3655</abbr>] <span class="authorgroup"><span class="firstname">B.</span> <span class="surname">Wellington</span> and <span class="firstname">O.</span> <span class="surname">Gudmundsson</span>. </span><span class="title"><i>Redefinition of DNS Authenticated Data (AD) bit</i>. </span><span class="pubdate">November 2003. </span></p>
|
||||
<a name="id2602769"></a><p>[<abbr class="abbrev">RFC3655</abbr>] <span class="authorgroup"><span class="firstname">B.</span> <span class="surname">Wellington</span> and <span class="firstname">O.</span> <span class="surname">Gudmundsson</span>. </span><span class="title"><i>Redefinition of DNS Authenticated Data (AD) bit</i>. </span><span class="pubdate">November 2003. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603635"></a><p>[<abbr class="abbrev">RFC3658</abbr>] <span class="authorgroup"><span class="firstname">O.</span> <span class="surname">Gudmundsson</span>. </span><span class="title"><i>Delegation Signer (DS) Resource Record (RR)</i>. </span><span class="pubdate">December 2003. </span></p>
|
||||
<a name="id2602805"></a><p>[<abbr class="abbrev">RFC3658</abbr>] <span class="authorgroup"><span class="firstname">O.</span> <span class="surname">Gudmundsson</span>. </span><span class="title"><i>Delegation Signer (DS) Resource Record (RR)</i>. </span><span class="pubdate">December 2003. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603661"></a><p>[<abbr class="abbrev">RFC3755</abbr>] <span class="authorgroup"><span class="firstname">S.</span> <span class="surname">Weiler</span>. </span><span class="title"><i>Legacy Resolver Compatibility for Delegation Signer (DS)</i>. </span><span class="pubdate">May 2004. </span></p>
|
||||
<a name="id2602832"></a><p>[<abbr class="abbrev">RFC3755</abbr>] <span class="authorgroup"><span class="firstname">S.</span> <span class="surname">Weiler</span>. </span><span class="title"><i>Legacy Resolver Compatibility for Delegation Signer (DS)</i>. </span><span class="pubdate">May 2004. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603688"></a><p>[<abbr class="abbrev">RFC3757</abbr>] <span class="authorgroup"><span class="firstname">O.</span> <span class="surname">Kolkman</span>, <span class="firstname">J.</span> <span class="surname">Schlyter</span>, and <span class="firstname">E.</span> <span class="surname">Lewis</span>. </span><span class="title"><i>Domain Name System KEY (DNSKEY) Resource Record
|
||||
<a name="id2602858"></a><p>[<abbr class="abbrev">RFC3757</abbr>] <span class="authorgroup"><span class="firstname">O.</span> <span class="surname">Kolkman</span>, <span class="firstname">J.</span> <span class="surname">Schlyter</span>, and <span class="firstname">E.</span> <span class="surname">Lewis</span>. </span><span class="title"><i>Domain Name System KEY (DNSKEY) Resource Record
|
||||
(RR) Secure Entry Point (SEP) Flag</i>. </span><span class="pubdate">April 2004. </span></p>
|
||||
</div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603733"></a><p>[<abbr class="abbrev">RFC3845</abbr>] <span class="authorgroup"><span class="firstname">J.</span> <span class="surname">Schlyter</span>. </span><span class="title"><i>DNS Security (DNSSEC) NextSECure (NSEC) RDATA Format</i>. </span><span class="pubdate">August 2004. </span></p>
|
||||
<a name="id2602903"></a><p>[<abbr class="abbrev">RFC3845</abbr>] <span class="authorgroup"><span class="firstname">J.</span> <span class="surname">Schlyter</span>. </span><span class="title"><i>DNS Security (DNSSEC) NextSECure (NSEC) RDATA Format</i>. </span><span class="pubdate">August 2004. </span></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -594,14 +594,14 @@
|
||||
</div>
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="id2603774"></a>Other Documents About <acronym class="acronym">BIND</acronym>
|
||||
<a name="id2602945"></a>Other Documents About <acronym class="acronym">BIND</acronym>
|
||||
</h3></div></div></div>
|
||||
<p></p>
|
||||
<div class="bibliography">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="id2603784"></a>Bibliography</h4></div></div></div>
|
||||
<a name="id2602954"></a>Bibliography</h4></div></div></div>
|
||||
<div class="biblioentry">
|
||||
<a name="id2603786"></a><p><span class="authorgroup"><span class="firstname">Paul</span> <span class="surname">Albitz</span> and <span class="firstname">Cricket</span> <span class="surname">Liu</span>. </span><span class="title"><i><acronym class="acronym">DNS</acronym> and <acronym class="acronym">BIND</acronym></i>. </span><span class="copyright">Copyright © 1998 Sebastopol, CA: O'Reilly and Associates. </span></p>
|
||||
<a name="id2602956"></a><p><span class="authorgroup"><span class="firstname">Paul</span> <span class="surname">Albitz</span> and <span class="firstname">Cricket</span> <span class="surname">Liu</span>. </span><span class="title"><i><acronym class="acronym">DNS</acronym> and <acronym class="acronym">BIND</acronym></i>. </span><span class="copyright">Copyright © 1998 Sebastopol, CA: O'Reilly and Associates. </span></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
+52
-52
@@ -83,7 +83,7 @@
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch03.html#id2568371">Name Server Operations</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch03.html#id2568376">Tools for Use With the Name Server Daemon</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch03.html#id2570122">Signals</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch03.html#id2569429">Signals</a></span></dt>
|
||||
</dl></dd>
|
||||
</dl></dd>
|
||||
<dt><span class="chapter"><a href="Bv9ARM.ch04.html">4. Advanced DNS Features</a></span></dt>
|
||||
@@ -92,34 +92,34 @@
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#dynamic_update">Dynamic Update</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch04.html#journal">The journal file</a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#incremental_zone_transfers">Incremental Zone Transfers (IXFR)</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2570547">Split DNS</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570565">Example split DNS setup</a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2569785">Split DNS</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2569803">Example split DNS setup</a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#tsig">TSIG</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571068">Generate Shared Keys for Each Pair of Hosts</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571278">Copying the Shared Secret to Both Machines</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571289">Informing the Servers of the Key's Existence</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571325">Instructing the Server to Use the Key</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571383">TSIG Key Based Access Control</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571568">Errors</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570443">Generate Shared Keys for Each Pair of Hosts</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570585">Copying the Shared Secret to Both Machines</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570596">Informing the Servers of the Key's Existence</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570632">Instructing the Server to Use the Key</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570690">TSIG Key Based Access Control</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2570738">Errors</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2571581">TKEY</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2571630">SIG(0)</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2570752">TKEY</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2570869">SIG(0)</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#DNSSEC">DNSSEC</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571767">Generating Keys</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571846">Signing the Zone</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571927">Configuring Servers</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571074">Generating Keys</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571153">Signing the Zone</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571370">Configuring Servers</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2572165">IPv6 Support in <acronym class="acronym">BIND</acronym> 9</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2571540">IPv6 Support in <acronym class="acronym">BIND</acronym> 9</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2572227">Address Lookups Using AAAA Records</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2572248">Address to Name Lookups Using Nibble Format</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571602">Address Lookups Using AAAA Records</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2571691">Address to Name Lookups Using Nibble Format</a></span></dt>
|
||||
</dl></dd>
|
||||
</dl></dd>
|
||||
<dt><span class="chapter"><a href="Bv9ARM.ch05.html">5. The <acronym class="acronym">BIND</acronym> 9 Lightweight Resolver</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch05.html#id2572281">The Lightweight Resolver Library</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch05.html#id2571724">The Lightweight Resolver Library</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch05.html#lwresd">Running a Resolver Daemon</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="chapter"><a href="Bv9ARM.ch06.html">6. <acronym class="acronym">BIND</acronym> 9 Configuration Reference</a></span></dt>
|
||||
@@ -127,55 +127,55 @@
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch06.html#configuration_file_elements">Configuration File Elements</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#address_match_lists">Address Match Lists</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2573798">Comment Syntax</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2564025">Comment Syntax</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch06.html#Configuration_File_Grammar">Configuration File Grammar</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574497"><span><strong class="command">acl</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2573940"><span><strong class="command">acl</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#acl"><span><strong class="command">acl</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574686"><span><strong class="command">controls</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574130"><span><strong class="command">controls</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#controls_statement_definition_and_usage"><span><strong class="command">controls</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2575047"><span><strong class="command">include</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2575064"><span><strong class="command">include</strong></span> Statement Definition and
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574558"><span><strong class="command">include</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574576"><span><strong class="command">include</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2575088"><span><strong class="command">key</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2575111"><span><strong class="command">key</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2575202"><span><strong class="command">logging</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2575328"><span><strong class="command">logging</strong></span> Statement Definition and
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574599"><span><strong class="command">key</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574622"><span><strong class="command">key</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574713"><span><strong class="command">logging</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2574839"><span><strong class="command">logging</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577457"><span><strong class="command">lwres</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577530"><span><strong class="command">lwres</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577594"><span><strong class="command">masters</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577638"><span><strong class="command">masters</strong></span> Statement Definition and
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2576832"><span><strong class="command">lwres</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2576905"><span><strong class="command">lwres</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2576969"><span><strong class="command">masters</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577013"><span><strong class="command">masters</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577653"><span><strong class="command">options</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2577028"><span><strong class="command">options</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#options"><span><strong class="command">options</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#server_statement_grammar"><span><strong class="command">server</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#server_statement_definition_and_usage"><span><strong class="command">server</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#statschannels"><span><strong class="command">statistics-channels</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2587400"><span><strong class="command">statistics-channels</strong></span> Statement Definition and
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2586775"><span><strong class="command">statistics-channels</strong></span> Statement Definition and
|
||||
Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2587555"><span><strong class="command">trusted-keys</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2587674"><span><strong class="command">trusted-keys</strong></span> Statement Definition
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2586861"><span><strong class="command">trusted-keys</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2586913"><span><strong class="command">trusted-keys</strong></span> Statement Definition
|
||||
and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#view_statement_grammar"><span><strong class="command">view</strong></span> Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2587756"><span><strong class="command">view</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2586995"><span><strong class="command">view</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#zone_statement_grammar"><span><strong class="command">zone</strong></span>
|
||||
Statement Grammar</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2589242"><span><strong class="command">zone</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2588549"><span><strong class="command">zone</strong></span> Statement Definition and Usage</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch06.html#id2591947">Zone File</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch06.html#id2591322">Zone File</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#types_of_resource_records_and_when_to_use_them">Types of Resource Records and When to Use Them</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2594109">Discussion of MX Records</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2593416">Discussion of MX Records</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#Setting_TTLs">Setting TTLs</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2594725">Inverse Mapping in IPv4</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2594920">Other Zone File Directives</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2595193"><acronym class="acronym">BIND</acronym> Master File Extension: the <span><strong class="command">$GENERATE</strong></span> Directive</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2594032">Inverse Mapping in IPv4</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2594227">Other Zone File Directives</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#id2594500"><acronym class="acronym">BIND</acronym> Master File Extension: the <span><strong class="command">$GENERATE</strong></span> Directive</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch06.html#zonefile_format">Additional File Formats</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch06.html#statistics">BIND9 Statistics</a></span></dt>
|
||||
@@ -184,31 +184,31 @@
|
||||
<dt><span class="chapter"><a href="Bv9ARM.ch07.html">7. <acronym class="acronym">BIND</acronym> 9 Security Considerations</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch07.html#Access_Control_Lists">Access Control Lists</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch07.html#id2599869"><span><strong class="command">Chroot</strong></span> and <span><strong class="command">Setuid</strong></span></a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch07.html#id2599040"><span><strong class="command">Chroot</strong></span> and <span><strong class="command">Setuid</strong></span></a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch07.html#id2599950">The <span><strong class="command">chroot</strong></span> Environment</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch07.html#id2600010">Using the <span><strong class="command">setuid</strong></span> Function</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch07.html#id2599189">The <span><strong class="command">chroot</strong></span> Environment</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch07.html#id2599249">Using the <span><strong class="command">setuid</strong></span> Function</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch07.html#dynamic_update_security">Dynamic Update Security</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="chapter"><a href="Bv9ARM.ch08.html">8. Troubleshooting</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch08.html#id2600090">Common Problems</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch08.html#id2600096">It's not working; how can I figure out what's wrong?</a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch08.html#id2600107">Incrementing and Changing the Serial Number</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch08.html#id2600124">Where Can I Get Help?</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch08.html#id2599533">Common Problems</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch08.html#id2599539">It's not working; how can I figure out what's wrong?</a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch08.html#id2599550">Incrementing and Changing the Serial Number</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch08.html#id2599568">Where Can I Get Help?</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="appendix"><a href="Bv9ARM.ch09.html">A. Appendices</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch09.html#id2600323">Acknowledgments</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch09.html#id2599629">Acknowledgments</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch09.html#historical_dns_information">A Brief History of the <acronym class="acronym">DNS</acronym> and <acronym class="acronym">BIND</acronym></a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch09.html#id2600494">General <acronym class="acronym">DNS</acronym> Reference Information</a></span></dt>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch09.html#id2599869">General <acronym class="acronym">DNS</acronym> Reference Information</a></span></dt>
|
||||
<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch09.html#ipv6addresses">IPv6 addresses (AAAA)</a></span></dt></dl></dd>
|
||||
<dt><span class="sect1"><a href="Bv9ARM.ch09.html#bibliography">Bibliography (and Suggested Reading)</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch09.html#rfcs">Request for Comments (RFCs)</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch09.html#internet_drafts">Internet Drafts</a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch09.html#id2603774">Other Documents About <acronym class="acronym">BIND</acronym></a></span></dt>
|
||||
<dt><span class="sect2"><a href="Bv9ARM.ch09.html#id2602945">Other Documents About <acronym class="acronym">BIND</acronym></a></span></dt>
|
||||
</dl></dd>
|
||||
</dl></dd>
|
||||
<dt><span class="reference"><a href="Bv9ARM.ch10.html">I. Manual pages</a></span></dt>
|
||||
|
||||
+4903
-4882
File diff suppressed because one or more lines are too long
@@ -52,7 +52,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">dig</code> [global-queryopt...] [query...]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2563926"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2563915"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">dig</strong></span>
|
||||
(domain information groper) is a flexible tool
|
||||
for interrogating DNS name servers. It performs DNS lookups and
|
||||
@@ -99,7 +99,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2575565"></a><h2>SIMPLE USAGE</h2>
|
||||
<a name="id2573097"></a><h2>SIMPLE USAGE</h2>
|
||||
<p>
|
||||
A typical invocation of <span><strong class="command">dig</strong></span> looks like:
|
||||
</p>
|
||||
@@ -152,7 +152,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2630714"></a><h2>OPTIONS</h2>
|
||||
<a name="id2573223"></a><h2>OPTIONS</h2>
|
||||
<p>
|
||||
The <code class="option">-b</code> option sets the source IP address of the query
|
||||
to <em class="parameter"><code>address</code></em>. This must be a valid
|
||||
@@ -256,7 +256,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2631057"></a><h2>QUERY OPTIONS</h2>
|
||||
<a name="id2630227"></a><h2>QUERY OPTIONS</h2>
|
||||
<p><span><strong class="command">dig</strong></span>
|
||||
provides a number of query options which affect
|
||||
the way in which lookups are made and the results displayed. Some of
|
||||
@@ -581,7 +581,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2632125"></a><h2>MULTIPLE QUERIES</h2>
|
||||
<a name="id2631227"></a><h2>MULTIPLE QUERIES</h2>
|
||||
<p>
|
||||
The BIND 9 implementation of <span><strong class="command">dig </strong></span>
|
||||
supports
|
||||
@@ -627,7 +627,7 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2632211"></a><h2>IDN SUPPORT</h2>
|
||||
<a name="id2631381"></a><h2>IDN SUPPORT</h2>
|
||||
<p>
|
||||
If <span><strong class="command">dig</strong></span> has been built with IDN (internationalized
|
||||
domain name) support, it can accept and display non-ASCII domain names.
|
||||
@@ -641,14 +641,14 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2632308"></a><h2>FILES</h2>
|
||||
<a name="id2631410"></a><h2>FILES</h2>
|
||||
<p><code class="filename">/etc/resolv.conf</code>
|
||||
</p>
|
||||
<p><code class="filename">${HOME}/.digrc</code>
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2632329"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2631431"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">host</span>(1)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
|
||||
@@ -656,7 +656,7 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2632435"></a><h2>BUGS</h2>
|
||||
<a name="id2631468"></a><h2>BUGS</h2>
|
||||
<p>
|
||||
There are probably too many query options.
|
||||
</p>
|
||||
|
||||
@@ -51,14 +51,14 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-dsfromkey</code> {-s} [<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 <em class="replaceable"><code>class</code></em></code>] [<code class="option">-d <em class="replaceable"><code>dir</code></em></code>] {dnsname}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2604777"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2604016"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">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="id2604791"></a><h2>OPTIONS</h2>
|
||||
<a name="id2604029"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-1</span></dt>
|
||||
<dd><p>
|
||||
@@ -99,7 +99,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2604921"></a><h2>EXAMPLE</h2>
|
||||
<a name="id2604160"></a><h2>EXAMPLE</h2>
|
||||
<p>
|
||||
To build the SHA-256 DS RR from the
|
||||
<strong class="userinput"><code>Kexample.com.+003+26160</code></strong>
|
||||
@@ -114,7 +114,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2604957"></a><h2>FILES</h2>
|
||||
<a name="id2604264"></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
|
||||
@@ -128,13 +128,13 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2605067"></a><h2>CAVEAT</h2>
|
||||
<a name="id2604306"></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="id2605077"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2604315"></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>,
|
||||
@@ -143,7 +143,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2605113"></a><h2>AUTHOR</h2>
|
||||
<a name="id2604352"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-keyfromlabel</code> {-a <em class="replaceable"><code>algorithm</code></em>} {-l <em class="replaceable"><code>label</code></em>} [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-f <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-k</code>] [<code class="option">-n <em class="replaceable"><code>nametype</code></em></code>] [<code class="option">-p <em class="replaceable"><code>protocol</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>] {name}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2605581"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2604547"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">dnssec-keyfromlabel</strong></span>
|
||||
gets keys with the given label from a crypto hardware and builds
|
||||
key files for DNSSEC (Secure DNS), as defined in RFC 2535
|
||||
@@ -58,7 +58,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2605595"></a><h2>OPTIONS</h2>
|
||||
<a name="id2604561"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
|
||||
<dd>
|
||||
@@ -139,7 +139,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2605801"></a><h2>GENERATED KEY FILES</h2>
|
||||
<a name="id2605040"></a><h2>GENERATED KEY FILES</h2>
|
||||
<p>
|
||||
When <span><strong class="command">dnssec-keyfromlabel</strong></span> completes
|
||||
successfully,
|
||||
@@ -180,7 +180,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2606305"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2605133"></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>,
|
||||
@@ -188,7 +188,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2606338"></a><h2>AUTHOR</h2>
|
||||
<a name="id2605166"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-keygen</code> {-a <em class="replaceable"><code>algorithm</code></em>} {-b <em class="replaceable"><code>keysize</code></em>} {-n <em class="replaceable"><code>nametype</code></em>} [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-e</code>] [<code class="option">-f <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-g <em class="replaceable"><code>generator</code></em></code>] [<code class="option">-h</code>] [<code class="option">-k</code>] [<code class="option">-p <em class="replaceable"><code>protocol</code></em></code>] [<code class="option">-r <em class="replaceable"><code>randomdev</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>] {name}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2607068"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2605419"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">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
|
||||
@@ -63,7 +63,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2607089"></a><h2>OPTIONS</h2>
|
||||
<a name="id2605440"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
|
||||
<dd>
|
||||
@@ -173,7 +173,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2607432"></a><h2>GENERATED KEYS</h2>
|
||||
<a name="id2606261"></a><h2>GENERATED KEYS</h2>
|
||||
<p>
|
||||
When <span><strong class="command">dnssec-keygen</strong></span> completes
|
||||
successfully,
|
||||
@@ -219,7 +219,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2609861"></a><h2>EXAMPLE</h2>
|
||||
<a name="id2608485"></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
|
||||
@@ -240,7 +240,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2609917"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2608541"></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>,
|
||||
@@ -249,7 +249,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2609948"></a><h2>AUTHOR</h2>
|
||||
<a name="id2608572"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
<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">-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>key</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 <em class="replaceable"><code>randomdev</code></em></code>] [<code class="option">-s <em class="replaceable"><code>start-time</code></em></code>] [<code class="option">-t</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></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="id2608811"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2607640"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">dnssec-signzone</strong></span>
|
||||
signs a zone. It generates
|
||||
NSEC and RRSIG records and produces a signed version of the
|
||||
@@ -61,7 +61,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2608836"></a><h2>OPTIONS</h2>
|
||||
<a name="id2607665"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-a</span></dt>
|
||||
<dd><p>
|
||||
@@ -291,7 +291,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2659568"></a><h2>EXAMPLE</h2>
|
||||
<a name="id2658942"></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>
|
||||
@@ -320,7 +320,7 @@ db.example.com.signed
|
||||
%</pre>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2659640"></a><h2>KNOWN BUGS</h2>
|
||||
<a name="id2659015"></a><h2>KNOWN BUGS</h2>
|
||||
<p>
|
||||
<span><strong class="command">dnssec-signzone</strong></span> was designed so that it could
|
||||
sign a zone partially, using only a subset of the DNSSEC keys
|
||||
@@ -345,14 +345,14 @@ db.example.com.signed
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2659672"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2659047"></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>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2659697"></a><h2>AUTHOR</h2>
|
||||
<a name="id2659140"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
<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>] {name} [server]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2604135"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2603305"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">host</strong></span>
|
||||
is a simple utility for performing DNS lookups.
|
||||
It is normally used to convert names to IP addresses and vice versa.
|
||||
@@ -202,7 +202,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2604581"></a><h2>IDN SUPPORT</h2>
|
||||
<a name="id2603751"></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.
|
||||
@@ -216,12 +216,12 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2604610"></a><h2>FILES</h2>
|
||||
<a name="id2603780"></a><h2>FILES</h2>
|
||||
<p><code class="filename">/etc/resolv.conf</code>
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2604624"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2603794"></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>
|
||||
|
||||
@@ -50,14 +50,14 @@
|
||||
<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">-z</code>]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2609304"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2608338"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">named-checkconf</strong></span>
|
||||
checks the syntax, but not the semantics, of a named
|
||||
configuration file.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2609318"></a><h2>OPTIONS</h2>
|
||||
<a name="id2608352"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-h</span></dt>
|
||||
<dd><p>
|
||||
@@ -92,21 +92,21 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2609434"></a><h2>RETURN VALUES</h2>
|
||||
<a name="id2608673"></a><h2>RETURN VALUES</h2>
|
||||
<p><span><strong class="command">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="id2609448"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2608686"></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="id2609478"></a><h2>AUTHOR</h2>
|
||||
<a name="id2608716"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
<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">-o <em class="replaceable"><code>filename</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="id2610723"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2609347"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">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
|
||||
@@ -71,7 +71,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2610773"></a><h2>OPTIONS</h2>
|
||||
<a name="id2609397"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-d</span></dt>
|
||||
<dd><p>
|
||||
@@ -264,14 +264,14 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2660486"></a><h2>RETURN VALUES</h2>
|
||||
<a name="id2660066"></a><h2>RETURN VALUES</h2>
|
||||
<p><span><strong class="command">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="id2660500"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2660080"></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>,
|
||||
@@ -279,7 +279,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2660533"></a><h2>AUTHOR</h2>
|
||||
<a name="id2660113"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">named</code> [<code class="option">-4</code>] [<code class="option">-6</code>] [<code class="option">-c <em class="replaceable"><code>config-file</code></em></code>] [<code class="option">-d <em class="replaceable"><code>debug-level</code></em></code>] [<code class="option">-f</code>] [<code class="option">-g</code>] [<code class="option">-m <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-n <em class="replaceable"><code>#cpus</code></em></code>] [<code class="option">-p <em class="replaceable"><code>port</code></em></code>] [<code class="option">-s</code>] [<code class="option">-S <em class="replaceable"><code>#max-socks</code></em></code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-u <em class="replaceable"><code>user</code></em></code>] [<code class="option">-v</code>] [<code class="option">-V</code>] [<code class="option">-x <em class="replaceable"><code>cache-file</code></em></code>]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2611113"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2609874"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">named</strong></span>
|
||||
is a Domain Name System (DNS) server,
|
||||
part of the BIND 9 distribution from ISC. For more
|
||||
@@ -65,7 +65,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2611144"></a><h2>OPTIONS</h2>
|
||||
<a name="id2609905"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-4</span></dt>
|
||||
<dd><p>
|
||||
@@ -238,7 +238,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2613792"></a><h2>SIGNALS</h2>
|
||||
<a name="id2612484"></a><h2>SIGNALS</h2>
|
||||
<p>
|
||||
In routine operation, signals should not be used to control
|
||||
the nameserver; <span><strong class="command">rndc</strong></span> should be used
|
||||
@@ -259,7 +259,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2613910"></a><h2>CONFIGURATION</h2>
|
||||
<a name="id2612534"></a><h2>CONFIGURATION</h2>
|
||||
<p>
|
||||
The <span><strong class="command">named</strong></span> configuration file is too complex
|
||||
to describe in detail here. A complete description is provided
|
||||
@@ -276,7 +276,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2660585"></a><h2>FILES</h2>
|
||||
<a name="id2612583"></a><h2>FILES</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><code class="filename">/etc/named.conf</code></span></dt>
|
||||
<dd><p>
|
||||
@@ -289,7 +289,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2660629"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2612627"></a><h2>SEE ALSO</h2>
|
||||
<p><em class="citetitle">RFC 1033</em>,
|
||||
<em class="citetitle">RFC 1034</em>,
|
||||
<em class="citetitle">RFC 1035</em>,
|
||||
@@ -302,7 +302,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2660699"></a><h2>AUTHOR</h2>
|
||||
<a name="id2612697"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">nsupdate</code> [<code class="option">-d</code>] [<code class="option">-D</code>] [[<code class="option">-g</code>] | [<code class="option">-o</code>] | [<code class="option">-y <em class="replaceable"><code>[<span class="optional">hmac:</span>]keyname:secret</code></em></code>] | [<code class="option">-k <em class="replaceable"><code>keyfile</code></em></code>]] [<code class="option">-t <em class="replaceable"><code>timeout</code></em></code>] [<code class="option">-u <em class="replaceable"><code>udptimeout</code></em></code>] [<code class="option">-r <em class="replaceable"><code>udpretries</code></em></code>] [<code class="option">-R <em class="replaceable"><code>randomdev</code></em></code>] [<code class="option">-v</code>] [filename]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2612022"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2610714"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">nsupdate</strong></span>
|
||||
is used to submit Dynamic DNS Update requests as defined in RFC2136
|
||||
to a name server.
|
||||
@@ -187,7 +187,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2612417"></a><h2>INPUT FORMAT</h2>
|
||||
<a name="id2611245"></a><h2>INPUT FORMAT</h2>
|
||||
<p><span><strong class="command">nsupdate</strong></span>
|
||||
reads input from
|
||||
<em class="parameter"><code>filename</code></em>
|
||||
@@ -475,7 +475,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2661730"></a><h2>EXAMPLES</h2>
|
||||
<a name="id2667863"></a><h2>EXAMPLES</h2>
|
||||
<p>
|
||||
The examples below show how
|
||||
<span><strong class="command">nsupdate</strong></span>
|
||||
@@ -529,7 +529,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2661780"></a><h2>FILES</h2>
|
||||
<a name="id2667913"></a><h2>FILES</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><code class="constant">/etc/resolv.conf</code></span></dt>
|
||||
<dd><p>
|
||||
@@ -548,7 +548,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2661849"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2668051"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">RFC2136</span></span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">RFC3007</span></span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">RFC2104</span></span>,
|
||||
@@ -561,7 +561,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2661920"></a><h2>BUGS</h2>
|
||||
<a name="id2668121"></a><h2>BUGS</h2>
|
||||
<p>
|
||||
The TSIG key is redundantly stored in two separate files.
|
||||
This is a consequence of nsupdate using the DST library
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
<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="id2615560"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2627346"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">rndc-confgen</strong></span>
|
||||
generates configuration files
|
||||
for <span><strong class="command">rndc</strong></span>. It can be used as a
|
||||
@@ -64,7 +64,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2628802"></a><h2>OPTIONS</h2>
|
||||
<a name="id2627685"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-a</span></dt>
|
||||
<dd>
|
||||
@@ -171,7 +171,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2634376"></a><h2>EXAMPLES</h2>
|
||||
<a name="id2635376"></a><h2>EXAMPLES</h2>
|
||||
<p>
|
||||
To allow <span><strong class="command">rndc</strong></span> to be used with
|
||||
no manual configuration, run
|
||||
@@ -188,7 +188,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2635866"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2635432"></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>,
|
||||
@@ -196,7 +196,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2635905"></a><h2>AUTHOR</h2>
|
||||
<a name="id2635470"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">rndc.conf</code> </p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2613502"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2608017"></a><h2>DESCRIPTION</h2>
|
||||
<p><code class="filename">rndc.conf</code> is the configuration file
|
||||
for <span><strong class="command">rndc</strong></span>, the BIND 9 name server control
|
||||
utility. This file has a similar structure and syntax to
|
||||
@@ -135,7 +135,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2614152"></a><h2>EXAMPLE</h2>
|
||||
<a name="id2617404"></a><h2>EXAMPLE</h2>
|
||||
<pre class="programlisting">
|
||||
options {
|
||||
default-server localhost;
|
||||
@@ -209,7 +209,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2628405"></a><h2>NAME SERVER CONFIGURATION</h2>
|
||||
<a name="id2625923"></a><h2>NAME SERVER CONFIGURATION</h2>
|
||||
<p>
|
||||
The name server must be configured to accept rndc connections and
|
||||
to recognize the key specified in the <code class="filename">rndc.conf</code>
|
||||
@@ -219,7 +219,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2628430"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2625948"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">rndc</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">rndc-confgen</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">mmencode</span>(1)</span>,
|
||||
@@ -227,7 +227,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2628469"></a><h2>AUTHOR</h2>
|
||||
<a name="id2625987"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
+165
-14
@@ -50,7 +50,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">rndc</code> [<code class="option">-b <em class="replaceable"><code>source-address</code></em></code>] [<code class="option">-c <em class="replaceable"><code>config-file</code></em></code>] [<code class="option">-k <em class="replaceable"><code>key-file</code></em></code>] [<code class="option">-s <em class="replaceable"><code>server</code></em></code>] [<code class="option">-p <em class="replaceable"><code>port</code></em></code>] [<code class="option">-V</code>] [<code class="option">-y <em class="replaceable"><code>key_id</code></em></code>] {command}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2612652"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2611470"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">rndc</strong></span>
|
||||
controls the operation of a name
|
||||
server. It supersedes the <span><strong class="command">ndc</strong></span> utility
|
||||
@@ -79,7 +79,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2612702"></a><h2>OPTIONS</h2>
|
||||
<a name="id2611521"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-b <em class="replaceable"><code>source-address</code></em></span></dt>
|
||||
<dd><p>
|
||||
@@ -143,19 +143,170 @@
|
||||
or write access.
|
||||
</p></dd>
|
||||
</dl></div>
|
||||
<p>
|
||||
For the complete set of commands supported by <span><strong class="command">rndc</strong></span>,
|
||||
see the BIND 9 Administrator Reference Manual or run
|
||||
<span><strong class="command">rndc</strong></span> without arguments to see its help
|
||||
message.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2612996"></a><h2>LIMITATIONS</h2>
|
||||
<p><span><strong class="command">rndc</strong></span>
|
||||
does not yet support all the commands of
|
||||
the BIND 8 <span><strong class="command">ndc</strong></span> utility.
|
||||
<a name="id2613232"></a><h2>COMMANDS</h2>
|
||||
<p>
|
||||
A list of commands supported by <span><strong class="command">rndc</strong></span> can
|
||||
be seen by running <span><strong class="command">rndc</strong></span> without arguments.
|
||||
</p>
|
||||
<p>
|
||||
Currently supported commands are:
|
||||
</p>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><strong class="userinput"><code>reload</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Reload configuration file and zones.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>reload <em class="replaceable"><code>zone</code></em> [<span class="optional"><em class="replaceable"><code>class</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Reload the given zone.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>refresh <em class="replaceable"><code>zone</code></em> [<span class="optional"><em class="replaceable"><code>class</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Schedule zone maintenance for the given zone.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>retransfer <em class="replaceable"><code>zone</code></em> [<span class="optional"><em class="replaceable"><code>class</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Retransfer the given zone from the master.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>freeze [<span class="optional"><em class="replaceable"><code>zone</code></em> [<span class="optional"><em class="replaceable"><code>class</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Suspend updates to a dynamic zone. If no zone is
|
||||
specified, then all zones are suspended. This allows
|
||||
manual edits to be made to a zone normally updated by
|
||||
dynamic update. It also causes changes in the
|
||||
journal file to be synced into the master file,
|
||||
and the journal file to be removed.
|
||||
All dynamic update attempts will be refused while
|
||||
the zone is frozen.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>thaw [<span class="optional"><em class="replaceable"><code>zone</code></em> [<span class="optional"><em class="replaceable"><code>class</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Enable updates to a frozen dynamic zone. If no
|
||||
zone is specified, then all frozen zones are
|
||||
enabled. This causes the server to reload the zone
|
||||
from disk, and re-enables dynamic updates after the
|
||||
load has completed. After a zone is thawed,
|
||||
dynamic updates will no longer be refused.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>notify <em class="replaceable"><code>zone</code></em> [<span class="optional"><em class="replaceable"><code>class</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Resend NOTIFY messages for the zone.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>reconfig</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Reload the configuration file and load new zones,
|
||||
but do not reload existing zone files even if they
|
||||
have changed.
|
||||
This is faster than a full <span><strong class="command">reload</strong></span> when there
|
||||
is a large number of zones because it avoids the need
|
||||
to examine the
|
||||
modification times of the zones files.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>stats</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Write server statistics to the statistics file.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>querylog</code></strong> [<span class="optional">on|off</span>] </span></dt>
|
||||
<dd><p>
|
||||
Toggle query logging. Query logging can also be enabled
|
||||
by explicitly directing the <span><strong class="command">queries</strong></span>
|
||||
<span><strong class="command">category</strong></span> to a
|
||||
<span><strong class="command">channel</strong></span> in the
|
||||
<span><strong class="command">logging</strong></span> section of
|
||||
<code class="filename">named.conf</code> or by specifying
|
||||
<span><strong class="command">querylog yes;</strong></span> in the
|
||||
<span><strong class="command">options</strong></span> section of
|
||||
<code class="filename">named.conf</code>.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>dumpdb [<span class="optional">-all|-cache|-zone</span>] [<span class="optional"><em class="replaceable"><code>view ...</code></em></span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Dump the server's caches (default) and/or zones to
|
||||
the
|
||||
dump file for the specified views. If no view is
|
||||
specified, all
|
||||
views are dumped.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>stop [<span class="optional">-p</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Stop the server, making sure any recent changes
|
||||
made through dynamic update or IXFR are first saved to
|
||||
the master files of the updated zones.
|
||||
If <code class="option">-p</code> is specified <span><strong class="command">named</strong></span>'s process id is returned.
|
||||
This allows an external process to determine when <span><strong class="command">named</strong></span>
|
||||
had completed stopping.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>halt [<span class="optional">-p</span>]</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Stop the server immediately. Recent changes
|
||||
made through dynamic update or IXFR are not saved to
|
||||
the master files, but will be rolled forward from the
|
||||
journal files when the server is restarted.
|
||||
If <code class="option">-p</code> is specified <span><strong class="command">named</strong></span>'s process id is returned.
|
||||
This allows an external process to determine when <span><strong class="command">named</strong></span>
|
||||
had completed halting.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>trace</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Increment the servers debugging level by one.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>trace <em class="replaceable"><code>level</code></em></code></strong></span></dt>
|
||||
<dd><p>
|
||||
Sets the server's debugging level to an explicit
|
||||
value.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>notrace</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Sets the server's debugging level to 0.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>flush</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Flushes the server's cache.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>flushname</code></strong> <em class="replaceable"><code>name</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>] </span></dt>
|
||||
<dd><p>
|
||||
Flushes the given name from the server's cache.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>status</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Display status of the server.
|
||||
Note that the number of zones includes the internal <span><strong class="command">bind/CH</strong></span> zone
|
||||
and the default <span><strong class="command">./IN</strong></span>
|
||||
hint zone if there is not an
|
||||
explicit root zone configured.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>recursing</code></strong></span></dt>
|
||||
<dd><p>
|
||||
Dump the list of queries <span><strong class="command">named</strong></span> is currently recursing
|
||||
on.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>validation ( on | off | check ) [<span class="optional"><em class="replaceable"><code>view ...</code></em></span>] </code></strong></span></dt>
|
||||
<dd><p>
|
||||
Enable, disable, or check the current status of
|
||||
DNSSEC validation.
|
||||
Note <span><strong class="command">dnssec-enable</strong></span> also needs to be
|
||||
set to <strong class="userinput"><code>yes</code></strong> or
|
||||
<strong class="userinput"><code>auto</code></strong> to be effective.
|
||||
It defaults to enabled.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>tsig-list</code></strong></span></dt>
|
||||
<dd><p>
|
||||
List the names of all TSIG keys currently configured
|
||||
for use by <span><strong class="command">named</strong></span> in each view. The
|
||||
list both statically configured keys and dynamic
|
||||
TKEY-negotiated keys.
|
||||
</p></dd>
|
||||
<dt><span class="term"><strong class="userinput"><code>tsig-delete</code></strong> <em class="replaceable"><code>keyname</code></em> [<span class="optional"><em class="replaceable"><code>view</code></em></span>]</span></dt>
|
||||
<dd><p>
|
||||
Delete a given TKEY-negotiated key from the server.
|
||||
(This does not apply to statically configured TSIG
|
||||
keys.)
|
||||
</p></dd>
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2668608"></a><h2>LIMITATIONS</h2>
|
||||
<p>
|
||||
There is currently no way to provide the shared secret for a
|
||||
<code class="option">key_id</code> without using the configuration file.
|
||||
@@ -165,7 +316,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2613027"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2668626"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">rndc.conf</span>(5)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">rndc-confgen</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
@@ -175,7 +326,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2613082"></a><h2>AUTHOR</h2>
|
||||
<a name="id2668749"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
+2
-1
@@ -1669,13 +1669,14 @@ dns_acache_cancelentry(dns_acacheentry_t *entry) {
|
||||
REQUIRE(DNS_ACACHEENTRY_VALID(entry));
|
||||
|
||||
acache = entry->acache;
|
||||
callback_active = ISC_TF(entry->cbarg != NULL);
|
||||
|
||||
INSIST(DNS_ACACHE_VALID(entry->acache));
|
||||
|
||||
LOCK(&acache->lock);
|
||||
ACACHE_LOCK(&acache->entrylocks[entry->locknum], isc_rwlocktype_write);
|
||||
|
||||
callback_active = ISC_TF(entry->cbarg != NULL);
|
||||
|
||||
/*
|
||||
* Release dependencies stored in this entry as much as possible.
|
||||
* The main link cannot be released, since the acache object has
|
||||
|
||||
+1
-1
@@ -5,5 +5,5 @@
|
||||
# 9.9: 90-109
|
||||
# 9.9-sub: 130-139
|
||||
LIBINTERFACE = 113
|
||||
LIBREVISION = 1
|
||||
LIBREVISION = 4
|
||||
LIBAGE = 0
|
||||
|
||||
+19
-8
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008, 2010-2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2008, 2010-2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -247,12 +247,12 @@ dst_gssapi_acquirecred(dns_name_t *name, isc_boolean_t initiate,
|
||||
gss_cred_id_t *cred)
|
||||
{
|
||||
#ifdef GSSAPI
|
||||
isc_result_t result;
|
||||
isc_buffer_t namebuf;
|
||||
gss_name_t gname;
|
||||
gss_buffer_desc gnamebuf;
|
||||
unsigned char array[DNS_NAME_MAXTEXT + 1];
|
||||
OM_uint32 gret, minor;
|
||||
gss_OID_set mechs;
|
||||
OM_uint32 lifetime;
|
||||
gss_cred_usage_t usage;
|
||||
char buf[1024];
|
||||
@@ -299,16 +299,17 @@ dst_gssapi_acquirecred(dns_name_t *name, isc_boolean_t initiate,
|
||||
usage = GSS_C_ACCEPT;
|
||||
|
||||
gret = gss_acquire_cred(&minor, gname, GSS_C_INDEFINITE,
|
||||
&mech_oid_set,
|
||||
usage, cred, &mechs, &lifetime);
|
||||
&mech_oid_set, usage, cred, NULL, &lifetime);
|
||||
|
||||
if (gret != GSS_S_COMPLETE) {
|
||||
gss_log(3, "failed to acquire %s credentials for %s: %s",
|
||||
initiate ? "initiate" : "accept",
|
||||
(gname != NULL) ? (char *)gnamebuf.value : "?",
|
||||
gss_error_tostring(gret, minor, buf, sizeof(buf)));
|
||||
dst_gssapi_check_config((char *)array);
|
||||
return (ISC_R_FAILURE);
|
||||
if (gname != NULL)
|
||||
dst_gssapi_check_config((char *)array);
|
||||
result = ISC_R_FAILURE;
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
gss_log(4, "acquired %s credentials for %s",
|
||||
@@ -316,8 +317,18 @@ dst_gssapi_acquirecred(dns_name_t *name, isc_boolean_t initiate,
|
||||
(gname != NULL) ? (char *)gnamebuf.value : "?");
|
||||
|
||||
log_cred(*cred);
|
||||
result = ISC_R_SUCCESS;
|
||||
|
||||
return (ISC_R_SUCCESS);
|
||||
cleanup:
|
||||
if (gname != NULL) {
|
||||
gret = gss_release_name(&minor, &gname);
|
||||
if (gret != GSS_S_COMPLETE)
|
||||
gss_log(3, "failed gss_release_name: %s",
|
||||
gss_error_tostring(gret, minor, buf,
|
||||
sizeof(buf)));
|
||||
}
|
||||
|
||||
return (result);
|
||||
#else
|
||||
REQUIRE(cred != NULL && *cred == NULL);
|
||||
|
||||
@@ -586,7 +597,6 @@ dst_gssapi_initctx(dns_name_t *name, isc_buffer_t *intoken,
|
||||
RETERR(isc_buffer_copyregion(outtoken, &r));
|
||||
(void)gss_release_buffer(&minor, &gouttoken);
|
||||
}
|
||||
(void)gss_release_name(&minor, &gname);
|
||||
|
||||
if (gret == GSS_S_COMPLETE)
|
||||
result = ISC_R_SUCCESS;
|
||||
@@ -594,6 +604,7 @@ dst_gssapi_initctx(dns_name_t *name, isc_buffer_t *intoken,
|
||||
result = DNS_R_CONTINUE;
|
||||
|
||||
out:
|
||||
(void)gss_release_name(&minor, &gname);
|
||||
return (result);
|
||||
#else
|
||||
UNUSED(name);
|
||||
|
||||
+8
-7
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Portions Copyright (C) 2004-2008, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 2004-2008, 2012, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -42,6 +42,7 @@
|
||||
#include <isc/md5.h>
|
||||
#include <isc/sha1.h>
|
||||
#include <isc/mem.h>
|
||||
#include <isc/safe.h>
|
||||
#include <isc/string.h>
|
||||
#include <isc/util.h>
|
||||
|
||||
@@ -142,7 +143,7 @@ hmacmd5_compare(const dst_key_t *key1, const dst_key_t *key2) {
|
||||
else if (hkey1 == NULL || hkey2 == NULL)
|
||||
return (ISC_FALSE);
|
||||
|
||||
if (memcmp(hkey1->key, hkey2->key, HMAC_LEN) == 0)
|
||||
if (isc_safe_memcmp(hkey1->key, hkey2->key, HMAC_LEN))
|
||||
return (ISC_TRUE);
|
||||
else
|
||||
return (ISC_FALSE);
|
||||
@@ -411,7 +412,7 @@ hmacsha1_compare(const dst_key_t *key1, const dst_key_t *key2) {
|
||||
else if (hkey1 == NULL || hkey2 == NULL)
|
||||
return (ISC_FALSE);
|
||||
|
||||
if (memcmp(hkey1->key, hkey2->key, ISC_SHA1_DIGESTLENGTH) == 0)
|
||||
if (isc_safe_memcmp(hkey1->key, hkey2->key, ISC_SHA1_DIGESTLENGTH))
|
||||
return (ISC_TRUE);
|
||||
else
|
||||
return (ISC_FALSE);
|
||||
@@ -681,7 +682,7 @@ hmacsha224_compare(const dst_key_t *key1, const dst_key_t *key2) {
|
||||
else if (hkey1 == NULL || hkey2 == NULL)
|
||||
return (ISC_FALSE);
|
||||
|
||||
if (memcmp(hkey1->key, hkey2->key, ISC_SHA224_DIGESTLENGTH) == 0)
|
||||
if (isc_safe_memcmp(hkey1->key, hkey2->key, ISC_SHA224_DIGESTLENGTH))
|
||||
return (ISC_TRUE);
|
||||
else
|
||||
return (ISC_FALSE);
|
||||
@@ -951,7 +952,7 @@ hmacsha256_compare(const dst_key_t *key1, const dst_key_t *key2) {
|
||||
else if (hkey1 == NULL || hkey2 == NULL)
|
||||
return (ISC_FALSE);
|
||||
|
||||
if (memcmp(hkey1->key, hkey2->key, ISC_SHA256_DIGESTLENGTH) == 0)
|
||||
if (isc_safe_memcmp(hkey1->key, hkey2->key, ISC_SHA256_DIGESTLENGTH))
|
||||
return (ISC_TRUE);
|
||||
else
|
||||
return (ISC_FALSE);
|
||||
@@ -1221,7 +1222,7 @@ hmacsha384_compare(const dst_key_t *key1, const dst_key_t *key2) {
|
||||
else if (hkey1 == NULL || hkey2 == NULL)
|
||||
return (ISC_FALSE);
|
||||
|
||||
if (memcmp(hkey1->key, hkey2->key, ISC_SHA384_DIGESTLENGTH) == 0)
|
||||
if (isc_safe_memcmp(hkey1->key, hkey2->key, ISC_SHA384_DIGESTLENGTH))
|
||||
return (ISC_TRUE);
|
||||
else
|
||||
return (ISC_FALSE);
|
||||
@@ -1491,7 +1492,7 @@ hmacsha512_compare(const dst_key_t *key1, const dst_key_t *key2) {
|
||||
else if (hkey1 == NULL || hkey2 == NULL)
|
||||
return (ISC_FALSE);
|
||||
|
||||
if (memcmp(hkey1->key, hkey2->key, ISC_SHA512_DIGESTLENGTH) == 0)
|
||||
if (isc_safe_memcmp(hkey1->key, hkey2->key, ISC_SHA512_DIGESTLENGTH))
|
||||
return (ISC_TRUE);
|
||||
else
|
||||
return (ISC_FALSE);
|
||||
|
||||
+9
-1
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008, 2010-2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2008, 2010-2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1998-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -577,6 +577,11 @@ dns_name_fullcompare(const dns_name_t *name1, const dns_name_t *name2,
|
||||
REQUIRE((name1->attributes & DNS_NAMEATTR_ABSOLUTE) ==
|
||||
(name2->attributes & DNS_NAMEATTR_ABSOLUTE));
|
||||
|
||||
if (name1 == name2) {
|
||||
*orderp = 0;
|
||||
return (dns_namereln_equal);
|
||||
}
|
||||
|
||||
SETUP_OFFSETS(name1, offsets1, odata1);
|
||||
SETUP_OFFSETS(name2, offsets2, odata2);
|
||||
|
||||
@@ -690,6 +695,9 @@ dns_name_equal(const dns_name_t *name1, const dns_name_t *name2) {
|
||||
REQUIRE((name1->attributes & DNS_NAMEATTR_ABSOLUTE) ==
|
||||
(name2->attributes & DNS_NAMEATTR_ABSOLUTE));
|
||||
|
||||
if (name1 == name2)
|
||||
return (ISC_TRUE);
|
||||
|
||||
if (name1->length != name2->length)
|
||||
return (ISC_FALSE);
|
||||
|
||||
|
||||
+19
-19
@@ -3992,7 +3992,7 @@ cache_zonecut_callback(dns_rbtnode_t *node, dns_name_t *name, void *arg) {
|
||||
header_prev = NULL;
|
||||
for (header = node->data; header != NULL; header = header_next) {
|
||||
header_next = header->next;
|
||||
if (header->rdh_ttl <= search->now) {
|
||||
if (header->rdh_ttl < search->now) {
|
||||
/*
|
||||
* This rdataset is stale. If no one else is
|
||||
* using the node, we can clean it up right
|
||||
@@ -4000,7 +4000,7 @@ cache_zonecut_callback(dns_rbtnode_t *node, dns_name_t *name, void *arg) {
|
||||
* the node as dirty, so it will get cleaned
|
||||
* up later.
|
||||
*/
|
||||
if ((header->rdh_ttl <= search->now - RBTDB_VIRTUAL) &&
|
||||
if ((header->rdh_ttl < search->now - RBTDB_VIRTUAL) &&
|
||||
(locktype == isc_rwlocktype_write ||
|
||||
NODE_TRYUPGRADE(lock) == ISC_R_SUCCESS)) {
|
||||
/*
|
||||
@@ -4116,7 +4116,7 @@ find_deepest_zonecut(rbtdb_search_t *search, dns_rbtnode_t *node,
|
||||
header != NULL;
|
||||
header = header_next) {
|
||||
header_next = header->next;
|
||||
if (header->rdh_ttl <= search->now) {
|
||||
if (header->rdh_ttl < search->now) {
|
||||
/*
|
||||
* This rdataset is stale. If no one else is
|
||||
* using the node, we can clean it up right
|
||||
@@ -4124,7 +4124,7 @@ find_deepest_zonecut(rbtdb_search_t *search, dns_rbtnode_t *node,
|
||||
* the node as dirty, so it will get cleaned
|
||||
* up later.
|
||||
*/
|
||||
if ((header->rdh_ttl <= search->now -
|
||||
if ((header->rdh_ttl < search->now -
|
||||
RBTDB_VIRTUAL) &&
|
||||
(locktype == isc_rwlocktype_write ||
|
||||
NODE_TRYUPGRADE(lock) == ISC_R_SUCCESS)) {
|
||||
@@ -4293,7 +4293,7 @@ find_coveringnsec(rbtdb_search_t *search, dns_dbnode_t **nodep,
|
||||
header != NULL;
|
||||
header = header_next) {
|
||||
header_next = header->next;
|
||||
if (header->rdh_ttl <= now) {
|
||||
if (header->rdh_ttl < now) {
|
||||
/*
|
||||
* This rdataset is stale. If no one else is
|
||||
* using the node, we can clean it up right
|
||||
@@ -4301,7 +4301,7 @@ find_coveringnsec(rbtdb_search_t *search, dns_dbnode_t **nodep,
|
||||
* node as dirty, so it will get cleaned up
|
||||
* later.
|
||||
*/
|
||||
if ((header->rdh_ttl <= now - RBTDB_VIRTUAL) &&
|
||||
if ((header->rdh_ttl < now - RBTDB_VIRTUAL) &&
|
||||
(locktype == isc_rwlocktype_write ||
|
||||
NODE_TRYUPGRADE(lock) == ISC_R_SUCCESS)) {
|
||||
/*
|
||||
@@ -4475,14 +4475,14 @@ cache_find(dns_db_t *db, dns_name_t *name, dns_dbversion_t *version,
|
||||
header_prev = NULL;
|
||||
for (header = node->data; header != NULL; header = header_next) {
|
||||
header_next = header->next;
|
||||
if (header->rdh_ttl <= now) {
|
||||
if (header->rdh_ttl < now) {
|
||||
/*
|
||||
* This rdataset is stale. If no one else is using the
|
||||
* node, we can clean it up right now, otherwise we
|
||||
* mark it as stale, and the node as dirty, so it will
|
||||
* get cleaned up later.
|
||||
*/
|
||||
if ((header->rdh_ttl <= now - RBTDB_VIRTUAL) &&
|
||||
if ((header->rdh_ttl < now - RBTDB_VIRTUAL) &&
|
||||
(locktype == isc_rwlocktype_write ||
|
||||
NODE_TRYUPGRADE(lock) == ISC_R_SUCCESS)) {
|
||||
/*
|
||||
@@ -4782,14 +4782,14 @@ cache_findzonecut(dns_db_t *db, dns_name_t *name, unsigned int options,
|
||||
header_prev = NULL;
|
||||
for (header = node->data; header != NULL; header = header_next) {
|
||||
header_next = header->next;
|
||||
if (header->rdh_ttl <= now) {
|
||||
if (header->rdh_ttl < now) {
|
||||
/*
|
||||
* This rdataset is stale. If no one else is using the
|
||||
* node, we can clean it up right now, otherwise we
|
||||
* mark it as stale, and the node as dirty, so it will
|
||||
* get cleaned up later.
|
||||
*/
|
||||
if ((header->rdh_ttl <= now - RBTDB_VIRTUAL) &&
|
||||
if ((header->rdh_ttl < now - RBTDB_VIRTUAL) &&
|
||||
(locktype == isc_rwlocktype_write ||
|
||||
NODE_TRYUPGRADE(lock) == ISC_R_SUCCESS)) {
|
||||
/*
|
||||
@@ -5271,8 +5271,8 @@ cache_findrdataset(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version,
|
||||
|
||||
for (header = rbtnode->data; header != NULL; header = header_next) {
|
||||
header_next = header->next;
|
||||
if (header->rdh_ttl <= now) {
|
||||
if ((header->rdh_ttl <= now - RBTDB_VIRTUAL) &&
|
||||
if (header->rdh_ttl < now) {
|
||||
if ((header->rdh_ttl < now - RBTDB_VIRTUAL) &&
|
||||
(locktype == isc_rwlocktype_write ||
|
||||
NODE_TRYUPGRADE(lock) == ISC_R_SUCCESS)) {
|
||||
/*
|
||||
@@ -5580,7 +5580,7 @@ add(dns_rbtdb_t *rbtdb, dns_rbtnode_t *rbtnode, rbtdb_version_t *rbtversion,
|
||||
}
|
||||
}
|
||||
if (topheader != NULL && EXISTS(topheader) &&
|
||||
topheader->rdh_ttl > now) {
|
||||
topheader->rdh_ttl >= now) {
|
||||
/*
|
||||
* Found one.
|
||||
*/
|
||||
@@ -5646,7 +5646,7 @@ add(dns_rbtdb_t *rbtdb, dns_rbtnode_t *rbtnode, rbtdb_version_t *rbtversion,
|
||||
* has no effect, provided that the cache data isn't stale.
|
||||
*/
|
||||
if (rbtversion == NULL && trust < header->trust &&
|
||||
(header->rdh_ttl > now || header_nx)) {
|
||||
(header->rdh_ttl >= now || header_nx)) {
|
||||
free_rdataset(rbtdb, rbtdb->common.mctx, newheader);
|
||||
if (addedrdataset != NULL)
|
||||
bind_rdataset(rbtdb, rbtnode, header, now,
|
||||
@@ -5715,7 +5715,7 @@ add(dns_rbtdb_t *rbtdb, dns_rbtnode_t *rbtnode, rbtdb_version_t *rbtversion,
|
||||
* Don't lower trust of existing record if the
|
||||
* update is forced.
|
||||
*/
|
||||
if (IS_CACHE(rbtdb) && header->rdh_ttl > now &&
|
||||
if (IS_CACHE(rbtdb) && header->rdh_ttl >= now &&
|
||||
header->type == dns_rdatatype_ns &&
|
||||
!header_nx && !newheader_nx &&
|
||||
header->trust >= newheader->trust &&
|
||||
@@ -5751,7 +5751,7 @@ add(dns_rbtdb_t *rbtdb, dns_rbtnode_t *rbtnode, rbtdb_version_t *rbtversion,
|
||||
* to be no more than the current NS RRset's TTL. This
|
||||
* ensures the delegations that are withdrawn are honoured.
|
||||
*/
|
||||
if (IS_CACHE(rbtdb) && header->rdh_ttl > now &&
|
||||
if (IS_CACHE(rbtdb) && header->rdh_ttl >= now &&
|
||||
header->type == dns_rdatatype_ns &&
|
||||
!header_nx && !newheader_nx &&
|
||||
header->trust <= newheader->trust) {
|
||||
@@ -5759,7 +5759,7 @@ add(dns_rbtdb_t *rbtdb, dns_rbtnode_t *rbtnode, rbtdb_version_t *rbtversion,
|
||||
newheader->rdh_ttl = header->rdh_ttl;
|
||||
}
|
||||
}
|
||||
if (IS_CACHE(rbtdb) && header->rdh_ttl > now &&
|
||||
if (IS_CACHE(rbtdb) && header->rdh_ttl >= now &&
|
||||
(header->type == dns_rdatatype_a ||
|
||||
header->type == dns_rdatatype_aaaa ||
|
||||
header->type == dns_rdatatype_ds ||
|
||||
@@ -6152,7 +6152,7 @@ addrdataset(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version,
|
||||
cleanup_dead_nodes(rbtdb, rbtnode->locknum);
|
||||
|
||||
header = isc_heap_element(rbtdb->heaps[rbtnode->locknum], 1);
|
||||
if (header && header->rdh_ttl <= now - RBTDB_VIRTUAL)
|
||||
if (header && header->rdh_ttl < now - RBTDB_VIRTUAL)
|
||||
expire_header(rbtdb, header, tree_locked);
|
||||
|
||||
/*
|
||||
@@ -8714,7 +8714,7 @@ overmem_purge(dns_rbtdb_t *rbtdb, unsigned int locknum_start,
|
||||
isc_rwlocktype_write);
|
||||
|
||||
header = isc_heap_element(rbtdb->heaps[locknum], 1);
|
||||
if (header && header->rdh_ttl <= now - RBTDB_VIRTUAL) {
|
||||
if (header && header->rdh_ttl < now - RBTDB_VIRTUAL) {
|
||||
expire_header(rbtdb, header, tree_locked);
|
||||
purgecount--;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2007, 2012, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -32,6 +32,7 @@
|
||||
|
||||
static inline isc_result_t
|
||||
fromtext_dnskey(ARGS_FROMTEXT) {
|
||||
isc_result_t result;
|
||||
isc_token_t token;
|
||||
dns_secalg_t alg;
|
||||
dns_secproto_t proto;
|
||||
@@ -67,7 +68,15 @@ fromtext_dnskey(ARGS_FROMTEXT) {
|
||||
if ((flags & 0xc000) == 0xc000)
|
||||
return (ISC_R_SUCCESS);
|
||||
|
||||
return (isc_base64_tobuffer(lexer, target, -1));
|
||||
result = isc_base64_tobuffer(lexer, target, -1);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
|
||||
/* Ensure there's at least enough data to compute a key ID for MD5 */
|
||||
if (alg == DST_ALG_RSAMD5 && isc_buffer_usedlength(target) < 7)
|
||||
return (ISC_R_UNEXPECTEDEND);
|
||||
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
static inline isc_result_t
|
||||
@@ -134,6 +143,7 @@ totext_dnskey(ARGS_TOTEXT) {
|
||||
static inline isc_result_t
|
||||
fromwire_dnskey(ARGS_FROMWIRE) {
|
||||
isc_region_t sr;
|
||||
unsigned char algorithm;
|
||||
|
||||
REQUIRE(type == 48);
|
||||
|
||||
@@ -146,6 +156,15 @@ fromwire_dnskey(ARGS_FROMWIRE) {
|
||||
if (sr.length < 4)
|
||||
return (ISC_R_UNEXPECTEDEND);
|
||||
|
||||
/*
|
||||
* RSAMD5 computes key ID differently from other
|
||||
* algorithms: we need to ensure there's enough data
|
||||
* present for the computation
|
||||
*/
|
||||
algorithm = sr.base[3];
|
||||
if (algorithm == DST_ALG_RSAMD5 && sr.length < 7)
|
||||
return (ISC_R_UNEXPECTEDEND);
|
||||
|
||||
isc_buffer_forward(source, sr.length);
|
||||
return (mem_tobuffer(target, sr.base, sr.length));
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2007, 2012, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -32,6 +32,7 @@
|
||||
|
||||
static inline isc_result_t
|
||||
fromtext_key(ARGS_FROMTEXT) {
|
||||
isc_result_t result;
|
||||
isc_token_t token;
|
||||
dns_secalg_t alg;
|
||||
dns_secproto_t proto;
|
||||
@@ -67,7 +68,15 @@ fromtext_key(ARGS_FROMTEXT) {
|
||||
if ((flags & 0xc000) == 0xc000)
|
||||
return (ISC_R_SUCCESS);
|
||||
|
||||
return (isc_base64_tobuffer(lexer, target, -1));
|
||||
result = isc_base64_tobuffer(lexer, target, -1);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
|
||||
/* Ensure there's at least enough data to compute a key ID for MD5 */
|
||||
if (alg == DST_ALG_RSAMD5 && isc_buffer_usedlength(target) < 7)
|
||||
return (ISC_R_UNEXPECTEDEND);
|
||||
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
static inline isc_result_t
|
||||
@@ -134,6 +143,7 @@ totext_key(ARGS_TOTEXT) {
|
||||
static inline isc_result_t
|
||||
fromwire_key(ARGS_FROMWIRE) {
|
||||
isc_region_t sr;
|
||||
unsigned char algorithm;
|
||||
|
||||
REQUIRE(type == 25);
|
||||
|
||||
@@ -146,6 +156,15 @@ fromwire_key(ARGS_FROMWIRE) {
|
||||
if (sr.length < 4)
|
||||
return (ISC_R_UNEXPECTEDEND);
|
||||
|
||||
/*
|
||||
* RSAMD5 computes key ID differently from other
|
||||
* algorithms: we need to ensure there's enough data
|
||||
* present for the computation
|
||||
*/
|
||||
algorithm = sr.base[3];
|
||||
if (algorithm == DST_ALG_RSAMD5 && sr.length < 3)
|
||||
return (ISC_R_UNEXPECTEDEND);
|
||||
|
||||
isc_buffer_forward(source, sr.length);
|
||||
return (mem_tobuffer(target, sr.base, sr.length));
|
||||
}
|
||||
|
||||
+27
-6
@@ -1108,6 +1108,10 @@ log_edns(fetchctx_t *fctx) {
|
||||
if (fctx->reason == NULL)
|
||||
return;
|
||||
|
||||
/*
|
||||
* We do not know if fctx->domain is the actual domain the record
|
||||
* lives in or a parent domain so we have a '?' after it.
|
||||
*/
|
||||
dns_name_format(&fctx->domain, domainbuf, sizeof(domainbuf));
|
||||
isc_log_write(dns_lctx, DNS_LOGCATEGORY_EDNS_DISABLED,
|
||||
DNS_LOGMODULE_RESOLVER, ISC_LOG_INFO,
|
||||
@@ -4372,7 +4376,7 @@ fctx_log(void *arg, int level, const char *fmt, ...) {
|
||||
|
||||
static inline isc_result_t
|
||||
findnoqname(fetchctx_t *fctx, dns_name_t *name, dns_rdatatype_t type,
|
||||
dns_name_t **noqname)
|
||||
dns_name_t **noqnamep)
|
||||
{
|
||||
dns_rdataset_t *nrdataset, *next, *sigrdataset;
|
||||
dns_rdata_rrsig_t rrsig;
|
||||
@@ -4385,10 +4389,12 @@ findnoqname(fetchctx_t *fctx, dns_name_t *name, dns_rdatatype_t type,
|
||||
dns_fixedname_t fclosest;
|
||||
dns_name_t *nearest;
|
||||
dns_fixedname_t fnearest;
|
||||
dns_rdatatype_t found = dns_rdatatype_none;
|
||||
dns_name_t *noqname = NULL;
|
||||
|
||||
FCTXTRACE("findnoqname");
|
||||
|
||||
REQUIRE(noqname != NULL && *noqname == NULL);
|
||||
REQUIRE(noqnamep != NULL && *noqnamep == NULL);
|
||||
|
||||
/*
|
||||
* Find the SIG for this rdataset, if we have it.
|
||||
@@ -4457,8 +4463,10 @@ findnoqname(fetchctx_t *fctx, dns_name_t *name, dns_rdatatype_t type,
|
||||
&data, NULL, fctx_log,
|
||||
fctx)))
|
||||
{
|
||||
if (!exists)
|
||||
*noqname = nsec;
|
||||
if (!exists) {
|
||||
noqname = nsec;
|
||||
found = dns_rdatatype_nsec;
|
||||
}
|
||||
}
|
||||
|
||||
if (nrdataset->type == dns_rdatatype_nsec3 &&
|
||||
@@ -4471,13 +4479,26 @@ findnoqname(fetchctx_t *fctx, dns_name_t *name, dns_rdatatype_t type,
|
||||
closest, nearest,
|
||||
fctx_log, fctx)))
|
||||
{
|
||||
if (!exists && setnearest)
|
||||
*noqname = nsec;
|
||||
if (!exists && setnearest) {
|
||||
noqname = nsec;
|
||||
found = dns_rdatatype_nsec3;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (result == ISC_R_NOMORE)
|
||||
result = ISC_R_SUCCESS;
|
||||
if (noqname != NULL) {
|
||||
for (sigrdataset = ISC_LIST_HEAD(noqname->list);
|
||||
sigrdataset != NULL;
|
||||
sigrdataset = ISC_LIST_NEXT(sigrdataset, link)) {
|
||||
if (sigrdataset->type == dns_rdatatype_rrsig &&
|
||||
sigrdataset->covers == found)
|
||||
break;
|
||||
}
|
||||
if (sigrdataset != NULL)
|
||||
*noqnamep = noqname;
|
||||
}
|
||||
return (result);
|
||||
}
|
||||
|
||||
|
||||
@@ -3660,6 +3660,7 @@ dns_validator_create(dns_view_t *view, dns_name_t *name, dns_rdatatype_t type,
|
||||
return (ISC_R_NOMEMORY);
|
||||
val->view = NULL;
|
||||
dns_view_weakattach(view, &val->view);
|
||||
|
||||
event = (dns_validatorevent_t *)
|
||||
isc_event_allocate(view->mctx, task,
|
||||
DNS_EVENT_VALIDATORSTART,
|
||||
|
||||
+36
-7
@@ -452,6 +452,8 @@ dialup(dns_zone_t *zone, void *dummy) {
|
||||
void
|
||||
dns_view_dialup(dns_view_t *view) {
|
||||
REQUIRE(DNS_VIEW_VALID(view));
|
||||
REQUIRE(view->zonetable != NULL);
|
||||
|
||||
(void)dns_zt_apply(view->zonetable, ISC_FALSE, dialup, NULL);
|
||||
}
|
||||
|
||||
@@ -707,11 +709,16 @@ dns_view_findzone(dns_view_t *view, dns_name_t *name, dns_zone_t **zonep) {
|
||||
|
||||
REQUIRE(DNS_VIEW_VALID(view));
|
||||
|
||||
result = dns_zt_find(view->zonetable, name, 0, NULL, zonep);
|
||||
if (result == DNS_R_PARTIALMATCH) {
|
||||
dns_zone_detach(zonep);
|
||||
LOCK(&view->lock);
|
||||
if (view->zonetable != NULL) {
|
||||
result = dns_zt_find(view->zonetable, name, 0, NULL, zonep);
|
||||
if (result == DNS_R_PARTIALMATCH) {
|
||||
dns_zone_detach(zonep);
|
||||
result = ISC_R_NOTFOUND;
|
||||
}
|
||||
} else
|
||||
result = ISC_R_NOTFOUND;
|
||||
}
|
||||
UNLOCK(&view->lock);
|
||||
|
||||
return (result);
|
||||
}
|
||||
@@ -754,7 +761,12 @@ dns_view_find(dns_view_t *view, dns_name_t *name, dns_rdatatype_t type,
|
||||
zone = NULL;
|
||||
db = NULL;
|
||||
node = NULL;
|
||||
result = dns_zt_find(view->zonetable, name, 0, NULL, &zone);
|
||||
LOCK(&view->lock);
|
||||
if (view->zonetable != NULL)
|
||||
result = dns_zt_find(view->zonetable, name, 0, NULL, &zone);
|
||||
else
|
||||
result = ISC_R_NOTFOUND;
|
||||
UNLOCK(&view->lock);
|
||||
if (result == ISC_R_SUCCESS || result == DNS_R_PARTIALMATCH) {
|
||||
result = dns_zone_getdb(zone, &db);
|
||||
if (result != ISC_R_SUCCESS && view->cachedb != NULL)
|
||||
@@ -1001,7 +1013,12 @@ dns_view_findzonecut2(dns_view_t *view, dns_name_t *name, dns_name_t *fname,
|
||||
/*
|
||||
* Find the right database.
|
||||
*/
|
||||
result = dns_zt_find(view->zonetable, name, 0, NULL, &zone);
|
||||
LOCK(&view->lock);
|
||||
if (view->zonetable != NULL)
|
||||
result = dns_zt_find(view->zonetable, name, 0, NULL, &zone);
|
||||
else
|
||||
result = ISC_R_NOTFOUND;
|
||||
UNLOCK(&view->lock);
|
||||
if (result == ISC_R_SUCCESS || result == DNS_R_PARTIALMATCH)
|
||||
result = dns_zone_getdb(zone, &db);
|
||||
if (result == ISC_R_NOTFOUND) {
|
||||
@@ -1185,7 +1202,13 @@ dns_viewlist_findzone(dns_viewlist_t *list, dns_name_t *name,
|
||||
* treat it as not found.
|
||||
*/
|
||||
zp = (zone1 == NULL) ? &zone1 : &zone2;
|
||||
result = dns_zt_find(view->zonetable, name, 0, NULL, zp);
|
||||
LOCK(&view->lock);
|
||||
if (view->zonetable != NULL)
|
||||
result = dns_zt_find(view->zonetable, name, 0,
|
||||
NULL, zp);
|
||||
else
|
||||
result = ISC_R_NOTFOUND;
|
||||
UNLOCK(&view->lock);
|
||||
INSIST(result == ISC_R_SUCCESS ||
|
||||
result == ISC_R_NOTFOUND ||
|
||||
result == DNS_R_PARTIALMATCH);
|
||||
@@ -1217,6 +1240,7 @@ isc_result_t
|
||||
dns_view_load(dns_view_t *view, isc_boolean_t stop) {
|
||||
|
||||
REQUIRE(DNS_VIEW_VALID(view));
|
||||
REQUIRE(view->zonetable != NULL);
|
||||
|
||||
return (dns_zt_load(view->zonetable, stop));
|
||||
}
|
||||
@@ -1225,6 +1249,7 @@ isc_result_t
|
||||
dns_view_loadnew(dns_view_t *view, isc_boolean_t stop) {
|
||||
|
||||
REQUIRE(DNS_VIEW_VALID(view));
|
||||
REQUIRE(view->zonetable != NULL);
|
||||
|
||||
return (dns_zt_loadnew(view->zonetable, stop));
|
||||
}
|
||||
@@ -1442,12 +1467,16 @@ dns_view_getrootdelonly(dns_view_t *view) {
|
||||
|
||||
isc_result_t
|
||||
dns_view_freezezones(dns_view_t *view, isc_boolean_t value) {
|
||||
|
||||
REQUIRE(DNS_VIEW_VALID(view));
|
||||
REQUIRE(view->zonetable != NULL);
|
||||
|
||||
return (dns_zt_freezezones(view->zonetable, value));
|
||||
}
|
||||
|
||||
void
|
||||
dns_view_setresstats(dns_view_t *view, isc_stats_t *stats) {
|
||||
|
||||
REQUIRE(DNS_VIEW_VALID(view));
|
||||
REQUIRE(!view->frozen);
|
||||
REQUIRE(view->resstats == NULL);
|
||||
|
||||
+9
-4
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004-2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004-2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 1998-2003 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -61,7 +61,7 @@ OBJS = @ISC_EXTRA_OBJS@ \
|
||||
netaddr.@O@ netscope.@O@ ondestroy.@O@ \
|
||||
parseint.@O@ portset.@O@ quota.@O@ radix.@O@ random.@O@ \
|
||||
ratelimiter.@O@ refcount.@O@ region.@O@ result.@O@ rwlock.@O@ \
|
||||
serial.@O@ sha1.@O@ sha2.@O@ sockaddr.@O@ stats.@O@ \
|
||||
safe.@O@ serial.@O@ sha1.@O@ sha2.@O@ sockaddr.@O@ stats.@O@ \
|
||||
string.@O@ strtoul.@O@ symtab.@O@ task.@O@ taskpool.@O@ \
|
||||
timer.@O@ version.@O@ ${UNIXOBJS} ${NLSOBJS} ${THREADOBJS}
|
||||
|
||||
@@ -76,8 +76,9 @@ SRCS = @ISC_EXTRA_SRCS@ \
|
||||
netaddr.c netscope.c ondestroy.c \
|
||||
parseint.c portset.c quota.c radix.c random.c \
|
||||
ratelimiter.c refcount.c region.c result.c rwlock.c \
|
||||
serial.c sha1.c sha2.c sockaddr.c stats.c string.c strtoul.c \
|
||||
symtab.c task.c taskpool.c timer.c version.c
|
||||
safe.c serial.c sha1.c sha2.c sockaddr.c stats.c \
|
||||
string.c strtoul.c symtab.c \
|
||||
task.c taskpool.c timer.c version.c
|
||||
|
||||
LIBS = @LIBS@
|
||||
|
||||
@@ -91,6 +92,10 @@ TESTDIRS = @UNITTESTS@
|
||||
|
||||
@BIND9_MAKE_RULES@
|
||||
|
||||
safe.@O@: safe.c
|
||||
${LIBTOOL_MODE_COMPILE} ${CC} ${ALL_CFLAGS} @CCNOOPT@ \
|
||||
-c ${srcdir}/safe.c
|
||||
|
||||
version.@O@: version.c
|
||||
${LIBTOOL_MODE_COMPILE} ${CC} ${ALL_CFLAGS} \
|
||||
-DVERSION=\"${VERSION}\" \
|
||||
|
||||
+3
-3
@@ -4,6 +4,6 @@
|
||||
# 9.8: 80-89, 120-129
|
||||
# 9.9: 90-109
|
||||
# 9.9-sub: 130-139
|
||||
LIBINTERFACE = 58
|
||||
LIBREVISION = 2
|
||||
LIBAGE = 1
|
||||
LIBINTERFACE = 59
|
||||
LIBREVISION = 1
|
||||
LIBAGE = 2
|
||||
|
||||
+3
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2012, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -27,6 +27,7 @@
|
||||
#include <isc/assertions.h>
|
||||
#include <isc/hmacmd5.h>
|
||||
#include <isc/md5.h>
|
||||
#include <isc/safe.h>
|
||||
#include <isc/string.h>
|
||||
#include <isc/types.h>
|
||||
#include <isc/util.h>
|
||||
@@ -114,5 +115,5 @@ isc_hmacmd5_verify2(isc_hmacmd5_t *ctx, unsigned char *digest, size_t len) {
|
||||
|
||||
REQUIRE(len <= ISC_MD5_DIGESTLENGTH);
|
||||
isc_hmacmd5_sign(ctx, newdigest);
|
||||
return (ISC_TF(memcmp(digest, newdigest, len) == 0));
|
||||
return (isc_safe_memcmp(digest, newdigest, len));
|
||||
}
|
||||
|
||||
+7
-6
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2005-2007, 2011, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2005-2007, 2011-2013 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
|
||||
@@ -26,6 +26,7 @@
|
||||
|
||||
#include <isc/assertions.h>
|
||||
#include <isc/hmacsha.h>
|
||||
#include <isc/safe.h>
|
||||
#include <isc/sha1.h>
|
||||
#include <isc/sha2.h>
|
||||
#include <isc/string.h>
|
||||
@@ -113,7 +114,7 @@ isc_hmacsha1_verify(isc_hmacsha1_t *ctx, unsigned char *digest, size_t len) {
|
||||
|
||||
REQUIRE(len <= ISC_SHA1_DIGESTLENGTH);
|
||||
isc_hmacsha1_sign(ctx, newdigest, ISC_SHA1_DIGESTLENGTH);
|
||||
return (ISC_TF(memcmp(digest, newdigest, len) == 0));
|
||||
return (isc_safe_memcmp(digest, newdigest, len));
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -192,7 +193,7 @@ isc_hmacsha224_verify(isc_hmacsha224_t *ctx, unsigned char *digest, size_t len)
|
||||
|
||||
REQUIRE(len <= ISC_SHA224_DIGESTLENGTH);
|
||||
isc_hmacsha224_sign(ctx, newdigest, ISC_SHA224_DIGESTLENGTH);
|
||||
return (ISC_TF(memcmp(digest, newdigest, len) == 0));
|
||||
return (isc_safe_memcmp(digest, newdigest, len));
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -271,7 +272,7 @@ isc_hmacsha256_verify(isc_hmacsha256_t *ctx, unsigned char *digest, size_t len)
|
||||
|
||||
REQUIRE(len <= ISC_SHA256_DIGESTLENGTH);
|
||||
isc_hmacsha256_sign(ctx, newdigest, ISC_SHA256_DIGESTLENGTH);
|
||||
return (ISC_TF(memcmp(digest, newdigest, len) == 0));
|
||||
return (isc_safe_memcmp(digest, newdigest, len));
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -350,7 +351,7 @@ isc_hmacsha384_verify(isc_hmacsha384_t *ctx, unsigned char *digest, size_t len)
|
||||
|
||||
REQUIRE(len <= ISC_SHA384_DIGESTLENGTH);
|
||||
isc_hmacsha384_sign(ctx, newdigest, ISC_SHA384_DIGESTLENGTH);
|
||||
return (ISC_TF(memcmp(digest, newdigest, len) == 0));
|
||||
return (isc_safe_memcmp(digest, newdigest, len));
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -429,5 +430,5 @@ isc_hmacsha512_verify(isc_hmacsha512_t *ctx, unsigned char *digest, size_t len)
|
||||
|
||||
REQUIRE(len <= ISC_SHA512_DIGESTLENGTH);
|
||||
isc_hmacsha512_sign(ctx, newdigest, ISC_SHA512_DIGESTLENGTH);
|
||||
return (ISC_TF(memcmp(digest, newdigest, len) == 0));
|
||||
return (isc_safe_memcmp(digest, newdigest, len));
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004-2009, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004-2009, 2012, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 1998-2001, 2003 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -37,9 +37,9 @@ HEADERS = app.h assertions.h base64.h bitstring.h boolean.h buffer.h \
|
||||
mutexblock.h netaddr.h ondestroy.h os.h parseint.h \
|
||||
print.h quota.h radix.h random.h ratelimiter.h \
|
||||
refcount.h region.h resource.h \
|
||||
result.h resultclass.h rwlock.h serial.h sha1.h sha2.h \
|
||||
sockaddr.h socket.h stdio.h stdlib.h string.h \
|
||||
symtab.h \
|
||||
result.h resultclass.h rwlock.h \
|
||||
safe.h serial.h sha1.h sha2.h \
|
||||
sockaddr.h socket.h stdio.h stdlib.h string.h symtab.h \
|
||||
task.h taskpool.h timer.h types.h util.h version.h \
|
||||
xml.h
|
||||
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
/*
|
||||
* Copyright (C) 2013 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.
|
||||
*/
|
||||
|
||||
/* $Id$ */
|
||||
|
||||
#ifndef ISC_SAFE_H
|
||||
#define ISC_SAFE_H 1
|
||||
|
||||
/*! \file isc/safe.h */
|
||||
|
||||
#include <isc/types.h>
|
||||
|
||||
ISC_LANG_BEGINDECLS
|
||||
|
||||
isc_boolean_t
|
||||
isc_safe_memcmp(const void *s1, const void *s2, size_t n);
|
||||
/*%<
|
||||
* Clone of libc memcmp() safe to differential timing attacks.
|
||||
*/
|
||||
|
||||
ISC_LANG_ENDDECLS
|
||||
|
||||
#endif /* ISC_SAFE_H */
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007, 2009, 2011, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2009, 2011-2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -766,7 +766,7 @@ isc_log_createchannel(isc_logconfig_t *lcfg, const char *name,
|
||||
break;
|
||||
|
||||
default:
|
||||
isc_mem_put(mctx, channel->name, strlen(channel->name) + 1);
|
||||
isc_mem_free(mctx, channel->name);
|
||||
isc_mem_put(mctx, channel, sizeof(*channel));
|
||||
return (ISC_R_UNEXPECTED);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
/*
|
||||
* Copyright (C) 2013 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.
|
||||
*/
|
||||
|
||||
/* $Id$ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <isc/safe.h>
|
||||
#include <isc/util.h>
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#pragma optimize("", off)
|
||||
#endif
|
||||
|
||||
isc_boolean_t
|
||||
isc_safe_memcmp(const void *s1, const void *s2, size_t n) {
|
||||
isc_uint8_t acc = 0;
|
||||
|
||||
if (n != 0U) {
|
||||
const isc_uint8_t *p1 = s1, *p2 = s2;
|
||||
|
||||
do {
|
||||
acc |= *p1++ ^ *p2++;
|
||||
} while (--n != 0U);
|
||||
}
|
||||
return (ISC_TF(acc == 0));
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2011, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2011-2013 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
|
||||
@@ -36,11 +36,11 @@ LIBS = @LIBS@ @ATFLIBS@
|
||||
|
||||
OBJS = isctest.@O@
|
||||
|
||||
SRCS = isctest.c hash_test.c sockaddr_test.c \
|
||||
SRCS = isctest.c hash_test.c safe_test.c sockaddr_test.c \
|
||||
symtab_test.c parse_test.c
|
||||
|
||||
SUBDIRS =
|
||||
TARGETS = hash_test@EXEEXT@ sockaddr_test@EXEEXT@ \
|
||||
TARGETS = hash_test@EXEEXT@ safe_test@EXEEXT@ sockaddr_test@EXEEXT@ \
|
||||
symtab_test@EXEEXT@ parse_test@EXEEXT@
|
||||
|
||||
@BIND9_MAKE_RULES@
|
||||
@@ -61,6 +61,10 @@ sockaddr_test@EXEEXT@: sockaddr_test.@O@ isctest.@O@ ${ISCDEPLIBS}
|
||||
${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
|
||||
sockaddr_test.@O@ isctest.@O@ ${ISCLIBS} ${LIBS}
|
||||
|
||||
safe_test@EXEEXT@: safe_test.@O@ ${ISCDEPLIBS}
|
||||
${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \
|
||||
safe_test.@O@ ${ISCLIBS} ${LIBS}
|
||||
|
||||
unit::
|
||||
sh ${top_srcdir}/unit/unittest.sh
|
||||
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
/*
|
||||
* Copyright (C) 2013 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.
|
||||
*/
|
||||
|
||||
/* $Id$ */
|
||||
|
||||
/* ! \file */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <atf-c.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <isc/safe.h>
|
||||
#include <isc/util.h>
|
||||
|
||||
ATF_TC(isc_safe_memcmp);
|
||||
ATF_TC_HEAD(isc_safe_memcmp, tc) {
|
||||
atf_tc_set_md_var(tc, "descr", "safe memcmp()");
|
||||
}
|
||||
ATF_TC_BODY(isc_safe_memcmp, tc) {
|
||||
UNUSED(tc);
|
||||
|
||||
ATF_CHECK(isc_safe_memcmp("test", "test", 4));
|
||||
ATF_CHECK(!isc_safe_memcmp("test", "tesc", 4));
|
||||
ATF_CHECK(isc_safe_memcmp("\x00\x00\x00\x00", "\x00\x00\x00\x00", 4));
|
||||
ATF_CHECK(!isc_safe_memcmp("\x00\x00\x00\x00", "\x00\x00\x00\x01", 4));
|
||||
ATF_CHECK(!isc_safe_memcmp("\x00\x00\x00\x02", "\x00\x00\x00\x00", 4));
|
||||
}
|
||||
|
||||
/*
|
||||
* Main
|
||||
*/
|
||||
ATF_TP_ADD_TCS(tp) {
|
||||
ATF_TP_ADD_TC(tp, isc_safe_memcmp);
|
||||
return (atf_no_error());
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004, 2007, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004, 2007, 2012, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 1998-2001 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -21,7 +21,7 @@ top_srcdir = @top_srcdir@
|
||||
|
||||
@BIND9_VERSION@
|
||||
|
||||
HEADERS = dir.h int.h net.h netdb.h offset.h stdtime.h \
|
||||
HEADERS = dir.h int.h net.h netdb.h offset.h stat.h stdtime.h \
|
||||
syslog.h time.h
|
||||
|
||||
SUBDIRS =
|
||||
|
||||
@@ -1529,6 +1529,10 @@ doio_recv(isc_socket_t *sock, isc_socketevent_t *dev) {
|
||||
/* HPUX 11.11 can return EADDRNOTAVAIL. */
|
||||
SOFT_OR_HARD(EADDRNOTAVAIL, ISC_R_ADDRNOTAVAIL);
|
||||
ALWAYS_HARD(ENOBUFS, ISC_R_NORESOURCES);
|
||||
/* Should never get this one but it was seen. */
|
||||
#ifdef ENOPROTOOPT
|
||||
SOFT_OR_HARD(ENOPROTOOPT, ISC_R_HOSTUNREACH);
|
||||
#endif
|
||||
/*
|
||||
* HPUX returns EPROTO and EINVAL on receiving some ICMP/ICMPv6
|
||||
* errors.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004, 2007, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004, 2007, 2012, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -22,7 +22,7 @@ top_srcdir = @top_srcdir@
|
||||
@BIND9_VERSION@
|
||||
|
||||
HEADERS = dir.h int.h mutex.h net.h netdb.h once.h \
|
||||
stdtime.h thread.h time.h
|
||||
stat.h stdtime.h thread.h time.h
|
||||
|
||||
SUBDIRS =
|
||||
TARGETS =
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007-2009, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2007-2009, 2012, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -189,41 +189,113 @@ typedef isc_uint16_t in_port_t;
|
||||
* Use the WSA constants instead.
|
||||
*/
|
||||
|
||||
#include <errno.h>
|
||||
|
||||
#ifndef EWOULDBLOCK
|
||||
#define EWOULDBLOCK WSAEWOULDBLOCK
|
||||
#endif
|
||||
#ifndef EINPROGRESS
|
||||
#define EINPROGRESS WSAEINPROGRESS
|
||||
#endif
|
||||
#ifndef EALREADY
|
||||
#define EALREADY WSAEALREADY
|
||||
#endif
|
||||
#ifndef ENOTSOCK
|
||||
#define ENOTSOCK WSAENOTSOCK
|
||||
#endif
|
||||
#ifndef EDESTADDRREQ
|
||||
#define EDESTADDRREQ WSAEDESTADDRREQ
|
||||
#endif
|
||||
#ifndef EMSGSIZE
|
||||
#define EMSGSIZE WSAEMSGSIZE
|
||||
#endif
|
||||
#ifndef EPROTOTYPE
|
||||
#define EPROTOTYPE WSAEPROTOTYPE
|
||||
#endif
|
||||
#ifndef ENOPROTOOPT
|
||||
#define ENOPROTOOPT WSAENOPROTOOPT
|
||||
#endif
|
||||
#ifndef EPROTONOSUPPORT
|
||||
#define EPROTONOSUPPORT WSAEPROTONOSUPPORT
|
||||
#endif
|
||||
#ifndef ESOCKTNOSUPPORT
|
||||
#define ESOCKTNOSUPPORT WSAESOCKTNOSUPPORT
|
||||
#endif
|
||||
#ifndef EOPNOTSUPP
|
||||
#define EOPNOTSUPP WSAEOPNOTSUPP
|
||||
#endif
|
||||
#ifndef EPFNOSUPPORT
|
||||
#define EPFNOSUPPORT WSAEPFNOSUPPORT
|
||||
#endif
|
||||
#ifndef EAFNOSUPPORT
|
||||
#define EAFNOSUPPORT WSAEAFNOSUPPORT
|
||||
#endif
|
||||
#ifndef EADDRINUSE
|
||||
#define EADDRINUSE WSAEADDRINUSE
|
||||
#endif
|
||||
#ifndef EADDRNOTAVAIL
|
||||
#define EADDRNOTAVAIL WSAEADDRNOTAVAIL
|
||||
#endif
|
||||
#ifndef ENETDOWN
|
||||
#define ENETDOWN WSAENETDOWN
|
||||
#endif
|
||||
#ifndef ENETUNREACH
|
||||
#define ENETUNREACH WSAENETUNREACH
|
||||
#endif
|
||||
#ifndef ENETRESET
|
||||
#define ENETRESET WSAENETRESET
|
||||
#endif
|
||||
#ifndef ECONNABORTED
|
||||
#define ECONNABORTED WSAECONNABORTED
|
||||
#endif
|
||||
#ifndef ECONNRESET
|
||||
#define ECONNRESET WSAECONNRESET
|
||||
#endif
|
||||
#ifndef ENOBUFS
|
||||
#define ENOBUFS WSAENOBUFS
|
||||
#endif
|
||||
#ifndef EISCONN
|
||||
#define EISCONN WSAEISCONN
|
||||
#endif
|
||||
#ifndef ENOTCONN
|
||||
#define ENOTCONN WSAENOTCONN
|
||||
#endif
|
||||
#ifndef ESHUTDOWN
|
||||
#define ESHUTDOWN WSAESHUTDOWN
|
||||
#endif
|
||||
#ifndef ETOOMANYREFS
|
||||
#define ETOOMANYREFS WSAETOOMANYREFS
|
||||
#endif
|
||||
#ifndef ETIMEDOUT
|
||||
#define ETIMEDOUT WSAETIMEDOUT
|
||||
#endif
|
||||
#ifndef ECONNREFUSED
|
||||
#define ECONNREFUSED WSAECONNREFUSED
|
||||
#endif
|
||||
#ifndef ELOOP
|
||||
#define ELOOP WSAELOOP
|
||||
#endif
|
||||
#ifndef EHOSTDOWN
|
||||
#define EHOSTDOWN WSAEHOSTDOWN
|
||||
#endif
|
||||
#ifndef EHOSTUNREACH
|
||||
#define EHOSTUNREACH WSAEHOSTUNREACH
|
||||
#endif
|
||||
#ifndef EPROCLIM
|
||||
#define EPROCLIM WSAEPROCLIM
|
||||
#endif
|
||||
#ifndef EUSERS
|
||||
#define EUSERS WSAEUSERS
|
||||
#endif
|
||||
#ifndef EDQUOT
|
||||
#define EDQUOT WSAEDQUOT
|
||||
#endif
|
||||
#ifndef ESTALE
|
||||
#define ESTALE WSAESTALE
|
||||
#endif
|
||||
#ifndef EREMOTE
|
||||
#define EREMOTE WSAEREMOTE
|
||||
#endif
|
||||
|
||||
|
||||
/***
|
||||
|
||||
@@ -374,6 +374,7 @@ isc_rwlock_lock
|
||||
isc_rwlock_trylock
|
||||
isc_rwlock_tryupgrade
|
||||
isc_rwlock_unlock
|
||||
isc_safe_memcmp
|
||||
isc_serial_eq
|
||||
isc_serial_ge
|
||||
isc_serial_gt
|
||||
|
||||
@@ -729,6 +729,10 @@ SOURCE=..\rwlock.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\safe.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\serial.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
@@ -169,6 +169,7 @@ CLEAN :
|
||||
-@erase "$(INTDIR)\resource.obj"
|
||||
-@erase "$(INTDIR)\result.obj"
|
||||
-@erase "$(INTDIR)\rwlock.obj"
|
||||
-@erase "$(INTDIR)\safe.obj"
|
||||
-@erase "$(INTDIR)\serial.obj"
|
||||
-@erase "$(INTDIR)\sha1.obj"
|
||||
-@erase "$(INTDIR)\sha2.obj"
|
||||
@@ -270,6 +271,7 @@ LINK32_OBJS= \
|
||||
"$(INTDIR)\refcount.obj" \
|
||||
"$(INTDIR)\result.obj" \
|
||||
"$(INTDIR)\rwlock.obj" \
|
||||
"$(INTDIR)\safe.obj" \
|
||||
"$(INTDIR)\serial.obj" \
|
||||
"$(INTDIR)\sha1.obj" \
|
||||
"$(INTDIR)\sha2.obj" \
|
||||
@@ -414,6 +416,8 @@ CLEAN :
|
||||
-@erase "$(INTDIR)\result.sbr"
|
||||
-@erase "$(INTDIR)\rwlock.obj"
|
||||
-@erase "$(INTDIR)\rwlock.sbr"
|
||||
-@erase "$(INTDIR)\safe.obj"
|
||||
-@erase "$(INTDIR)\safe.sbr"
|
||||
-@erase "$(INTDIR)\serial.obj"
|
||||
-@erase "$(INTDIR)\serial.sbr"
|
||||
-@erase "$(INTDIR)\sha1.obj"
|
||||
@@ -533,6 +537,7 @@ BSC32_SBRS= \
|
||||
"$(INTDIR)\refcount.sbr" \
|
||||
"$(INTDIR)\result.sbr" \
|
||||
"$(INTDIR)\rwlock.sbr" \
|
||||
"$(INTDIR)\safe.sbr" \
|
||||
"$(INTDIR)\serial.sbr" \
|
||||
"$(INTDIR)\sha1.sbr" \
|
||||
"$(INTDIR)\sha2.sbr" \
|
||||
@@ -619,6 +624,7 @@ LINK32_OBJS= \
|
||||
"$(INTDIR)\refcount.obj" \
|
||||
"$(INTDIR)\result.obj" \
|
||||
"$(INTDIR)\rwlock.obj" \
|
||||
"$(INTDIR)\safe.obj" \
|
||||
"$(INTDIR)\serial.obj" \
|
||||
"$(INTDIR)\sha1.obj" \
|
||||
"$(INTDIR)\sha2.obj" \
|
||||
@@ -1801,6 +1807,24 @@ SOURCE=..\rwlock.c
|
||||
$(CPP) $(CPP_PROJ) $(SOURCE)
|
||||
|
||||
|
||||
!ENDIF
|
||||
|
||||
SOURCE=..\safe.c
|
||||
|
||||
!IF "$(CFG)" == "libisc - Win32 Release"
|
||||
|
||||
|
||||
"$(INTDIR)\safe.obj" : $(SOURCE) "$(INTDIR)"
|
||||
$(CPP) $(CPP_PROJ) $(SOURCE)
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "libisc - Win32 Debug"
|
||||
|
||||
|
||||
"$(INTDIR)\safe.obj" "$(INTDIR)\safe.sbr" : $(SOURCE) "$(INTDIR)"
|
||||
$(CPP) $(CPP_PROJ) $(SOURCE)
|
||||
|
||||
|
||||
!ENDIF
|
||||
|
||||
SOURCE=..\serial.c
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006, 2007, 2009, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2006, 2007, 2009, 2012, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -27,6 +27,7 @@
|
||||
* Define if <netdb.h> does not declare struct addrinfo.
|
||||
*/
|
||||
|
||||
#if _MSC_VER < 1600
|
||||
struct addrinfo {
|
||||
int ai_flags; /* AI_PASSIVE, AI_CANONNAME */
|
||||
int ai_family; /* PF_xxx */
|
||||
@@ -37,6 +38,7 @@ struct addrinfo {
|
||||
struct sockaddr *ai_addr; /* Binary address */
|
||||
struct addrinfo *ai_next; /* Next structure in linked list */
|
||||
};
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2007, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -50,6 +50,7 @@ isc_stdio_close(FILE *f) {
|
||||
|
||||
isc_result_t
|
||||
isc_stdio_seek(FILE *f, long offset, int whence) {
|
||||
/* based on the fact off_t is typedef to long */
|
||||
int r;
|
||||
|
||||
r = fseek(f, offset, whence);
|
||||
|
||||
+1
-1
@@ -5,5 +5,5 @@
|
||||
# 9.9: 90-109
|
||||
# 9.9-sub: 130-139
|
||||
LIBINTERFACE = 50
|
||||
LIBREVISION = 4
|
||||
LIBREVISION = 5
|
||||
LIBAGE = 0
|
||||
|
||||
+4
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Portions Copyright (C) 2004-2007, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 2004-2007, 2012, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 2001-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -42,6 +42,7 @@
|
||||
#include <isc/assertions.h>
|
||||
#include <isc/hmacmd5.h>
|
||||
#include <isc/print.h>
|
||||
#include <isc/safe.h>
|
||||
#include <isc/stdlib.h>
|
||||
|
||||
#include <isccc/alist.h>
|
||||
@@ -311,7 +312,8 @@ verify(isccc_sexpr_t *alist, unsigned char *data, unsigned int length,
|
||||
/*
|
||||
* Verify.
|
||||
*/
|
||||
if (strcmp((char *)digestb64, isccc_sexpr_tostring(hmd5)) != 0)
|
||||
if (!isc_safe_memcmp((unsigned char *) isccc_sexpr_tostring(hmd5),
|
||||
digestb64, HMD5_LENGTH))
|
||||
return (ISCCC_R_BADAUTH);
|
||||
|
||||
return (ISC_R_SUCCESS);
|
||||
|
||||
+1
-1
@@ -5,5 +5,5 @@
|
||||
# 9.9: 90-109
|
||||
# 9.9-sub: 130-139
|
||||
LIBINTERFACE = 50
|
||||
LIBREVISION = 9
|
||||
LIBREVISION = 10
|
||||
LIBAGE = 0
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2007, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -78,15 +78,15 @@
|
||||
#define FD_CLR(fd, set) do { \
|
||||
u_int __i; \
|
||||
for (__i = 0; __i < ((fd_set FAR *)(set))->fd_count; __i++) { \
|
||||
if (((fd_set FAR *)(set))->fd_array[__i] == (SOCKET) fd) { \
|
||||
while (__i < ((fd_set FAR *)(set))->fd_count-1) { \
|
||||
((fd_set FAR *)(set))->fd_array[__i] = \
|
||||
((fd_set FAR *)(set))->fd_array[__i+1]; \
|
||||
__i++; \
|
||||
} \
|
||||
((fd_set FAR *)(set))->fd_count--; \
|
||||
break; \
|
||||
} \
|
||||
if (((fd_set FAR *)(set))->fd_array[__i] == (SOCKET) fd) { \
|
||||
while (__i < ((fd_set FAR *)(set))->fd_count-1) { \
|
||||
((fd_set FAR *)(set))->fd_array[__i] = \
|
||||
((fd_set FAR *)(set))->fd_array[__i+1]; \
|
||||
__i++; \
|
||||
} \
|
||||
((fd_set FAR *)(set))->fd_count--; \
|
||||
break; \
|
||||
} \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
@@ -94,15 +94,15 @@
|
||||
#define FD_SET(fd, set) do { \
|
||||
u_int __i; \
|
||||
for (__i = 0; __i < ((fd_set FAR *)(set))->fd_count; __i++) { \
|
||||
if (((fd_set FAR *)(set))->fd_array[__i] == (SOCKET)(fd)) { \
|
||||
break; \
|
||||
} \
|
||||
if (((fd_set FAR *)(set))->fd_array[__i] == (SOCKET)(fd)) { \
|
||||
break; \
|
||||
} \
|
||||
} \
|
||||
if (__i == ((fd_set FAR *)(set))->fd_count) { \
|
||||
if (((fd_set FAR *)(set))->fd_count < FD_SETSIZE) { \
|
||||
((fd_set FAR *)(set))->fd_array[__i] = (SOCKET)(fd); \
|
||||
((fd_set FAR *)(set))->fd_count++; \
|
||||
} \
|
||||
if (((fd_set FAR *)(set))->fd_count < FD_SETSIZE) { \
|
||||
((fd_set FAR *)(set))->fd_array[__i] = (SOCKET)(fd); \
|
||||
((fd_set FAR *)(set))->fd_count++; \
|
||||
} \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
@@ -112,41 +112,113 @@
|
||||
* Use the WSA constants instead.
|
||||
*/
|
||||
|
||||
#include <errno.h>
|
||||
|
||||
#ifndef EWOULDBLOCK
|
||||
#define EWOULDBLOCK WSAEWOULDBLOCK
|
||||
#endif
|
||||
#ifndef EINPROGRESS
|
||||
#define EINPROGRESS WSAEINPROGRESS
|
||||
#endif
|
||||
#ifndef EALREADY
|
||||
#define EALREADY WSAEALREADY
|
||||
#endif
|
||||
#ifndef ENOTSOCK
|
||||
#define ENOTSOCK WSAENOTSOCK
|
||||
#endif
|
||||
#ifndef EDESTADDRREQ
|
||||
#define EDESTADDRREQ WSAEDESTADDRREQ
|
||||
#endif
|
||||
#ifndef EMSGSIZE
|
||||
#define EMSGSIZE WSAEMSGSIZE
|
||||
#endif
|
||||
#ifndef EPROTOTYPE
|
||||
#define EPROTOTYPE WSAEPROTOTYPE
|
||||
#endif
|
||||
#ifndef ENOPROTOOPT
|
||||
#define ENOPROTOOPT WSAENOPROTOOPT
|
||||
#endif
|
||||
#ifndef EPROTONOSUPPORT
|
||||
#define EPROTONOSUPPORT WSAEPROTONOSUPPORT
|
||||
#endif
|
||||
#ifndef ESOCKTNOSUPPORT
|
||||
#define ESOCKTNOSUPPORT WSAESOCKTNOSUPPORT
|
||||
#endif
|
||||
#ifndef EOPNOTSUPP
|
||||
#define EOPNOTSUPP WSAEOPNOTSUPP
|
||||
#endif
|
||||
#ifndef EPFNOSUPPORT
|
||||
#define EPFNOSUPPORT WSAEPFNOSUPPORT
|
||||
#endif
|
||||
#ifndef EAFNOSUPPORT
|
||||
#define EAFNOSUPPORT WSAEAFNOSUPPORT
|
||||
#endif
|
||||
#ifndef EADDRINUSE
|
||||
#define EADDRINUSE WSAEADDRINUSE
|
||||
#endif
|
||||
#ifndef EADDRNOTAVAIL
|
||||
#define EADDRNOTAVAIL WSAEADDRNOTAVAIL
|
||||
#endif
|
||||
#ifndef ENETDOWN
|
||||
#define ENETDOWN WSAENETDOWN
|
||||
#endif
|
||||
#ifndef ENETUNREACH
|
||||
#define ENETUNREACH WSAENETUNREACH
|
||||
#endif
|
||||
#ifndef ENETRESET
|
||||
#define ENETRESET WSAENETRESET
|
||||
#endif
|
||||
#ifndef ECONNABORTED
|
||||
#define ECONNABORTED WSAECONNABORTED
|
||||
#endif
|
||||
#ifndef ECONNRESET
|
||||
#define ECONNRESET WSAECONNRESET
|
||||
#endif
|
||||
#ifndef ENOBUFS
|
||||
#define ENOBUFS WSAENOBUFS
|
||||
#endif
|
||||
#ifndef EISCONN
|
||||
#define EISCONN WSAEISCONN
|
||||
#endif
|
||||
#ifndef ENOTCONN
|
||||
#define ENOTCONN WSAENOTCONN
|
||||
#endif
|
||||
#ifndef ESHUTDOWN
|
||||
#define ESHUTDOWN WSAESHUTDOWN
|
||||
#endif
|
||||
#ifndef ETOOMANYREFS
|
||||
#define ETOOMANYREFS WSAETOOMANYREFS
|
||||
#endif
|
||||
#ifndef ETIMEDOUT
|
||||
#define ETIMEDOUT WSAETIMEDOUT
|
||||
#endif
|
||||
#ifndef ECONNREFUSED
|
||||
#define ECONNREFUSED WSAECONNREFUSED
|
||||
#endif
|
||||
#ifndef ELOOP
|
||||
#define ELOOP WSAELOOP
|
||||
#endif
|
||||
#ifndef EHOSTDOWN
|
||||
#define EHOSTDOWN WSAEHOSTDOWN
|
||||
#endif
|
||||
#ifndef EHOSTUNREACH
|
||||
#define EHOSTUNREACH WSAEHOSTUNREACH
|
||||
#endif
|
||||
#ifndef EPROCLIM
|
||||
#define EPROCLIM WSAEPROCLIM
|
||||
#endif
|
||||
#ifndef EUSERS
|
||||
#define EUSERS WSAEUSERS
|
||||
#endif
|
||||
#ifndef EDQUOT
|
||||
#define EDQUOT WSAEDQUOT
|
||||
#endif
|
||||
#ifndef ESTALE
|
||||
#define ESTALE WSAESTALE
|
||||
#endif
|
||||
#ifndef EREMOTE
|
||||
#define EREMOTE WSAEREMOTE
|
||||
#endif
|
||||
|
||||
LWRES_LANG_BEGINDECLS
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2006, 2007, 2013 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -31,7 +31,9 @@
|
||||
/*
|
||||
* Define if <netdb.h> does not declare struct addrinfo.
|
||||
*/
|
||||
#if _MSC_VER < 1600
|
||||
#define ISC_LWRES_NEEDADDRINFO 1
|
||||
#endif
|
||||
|
||||
#ifdef ISC_LWRES_NEEDADDRINFO
|
||||
struct addrinfo {
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user