Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9f4dbf5b58 | ||
|
|
a723bc1393 | ||
|
|
14b2ad7281 | ||
|
|
f463c3611b | ||
|
|
417a6e5ce9 | ||
|
|
8b1aabd2a7 | ||
|
|
06de2249b5 | ||
|
|
7c56a5fa65 | ||
|
|
60383f3479 | ||
|
|
0d16ffbb38 | ||
|
|
376b338da4 | ||
|
|
0b619c6751 | ||
|
|
fba67c8aef | ||
|
|
f79d8d3e0a | ||
|
|
b7ae61a21b | ||
|
|
66040ff693 | ||
|
|
bf31eeeee8 | ||
|
|
19286de949 | ||
|
|
159b4147ae | ||
|
|
2adf1074e4 | ||
|
|
f6ad003ecf | ||
|
|
ff8dbeaea2 | ||
|
|
414b674e7c | ||
|
|
c5548964bf | ||
|
|
e946c1762a | ||
|
|
4d1b079ac6 | ||
|
|
fe3ce1da2b | ||
|
|
41ca3ff801 | ||
|
|
77f4a19e4e | ||
|
|
89645a2265 | ||
|
|
851bccc5a1 | ||
|
|
2b24897c64 | ||
|
|
011f157473 | ||
|
|
b3efdb08bd | ||
|
|
38dfbc0462 | ||
|
|
96936dcdab | ||
|
|
d61efe262b | ||
|
|
b55dbfdc1e | ||
|
|
2327cb8332 | ||
|
|
2c50f32188 | ||
|
|
bc6393b238 | ||
|
|
015872cba9 | ||
|
|
40fa732370 | ||
|
|
37b7f9ed76 | ||
|
|
5773bce67f | ||
|
|
4c0de19d1b | ||
|
|
2358a7881c | ||
|
|
593f1e35d7 | ||
|
|
863a0dbd20 | ||
|
|
0a3856d2c4 | ||
|
|
64a1132d74 | ||
|
|
7a0ca2b0c7 | ||
|
|
c057a9b862 | ||
|
|
6fc5dc883e | ||
|
|
d44cb7d304 | ||
|
|
e51b6ade48 | ||
|
|
babe8e1954 | ||
|
|
b6d8f4bcf7 | ||
|
|
4a2abf6faa | ||
|
|
419ef16980 | ||
|
|
8f9cf97d96 | ||
|
|
6dd373ebab | ||
|
|
fc5f2e310e | ||
|
|
7000688bfc | ||
|
|
35e6e7bfe9 | ||
|
|
5d900d5216 | ||
|
|
0f862dd540 | ||
|
|
5dd7596365 | ||
|
|
1bf261f075 | ||
|
|
63aaf0dba0 | ||
|
|
53f747143d | ||
|
|
ea155b7f8b | ||
|
|
8a2c86ea10 | ||
|
|
c02a729605 | ||
|
|
0b53de22db | ||
|
|
86039977b2 | ||
|
|
62bffa3ef0 | ||
|
|
5f01b84397 | ||
|
|
12f0fa2a6a | ||
|
|
905b16ef04 | ||
|
|
3267c08327 | ||
|
|
4b7c993dc2 | ||
|
|
7a9bb15a3c | ||
|
|
68e2731590 | ||
|
|
3602d7ba6a | ||
|
|
203987b1f6 | ||
|
|
ea2b2d9b49 | ||
|
|
28d84645bb | ||
|
|
94a0e96ade | ||
|
|
480c85c467 | ||
|
|
d9e9d845a5 | ||
|
|
f0903fa41f | ||
|
|
f12b694d74 | ||
|
|
1a035f7c01 | ||
|
|
b8be986508 | ||
|
|
3967e289ce | ||
|
|
1f6eacb5f2 | ||
|
|
fd10c6096f | ||
|
|
a7ff07d136 | ||
|
|
efb73dcab3 | ||
|
|
4621e0afc1 | ||
|
|
4d05c5e4c3 | ||
|
|
b3059b496a | ||
|
|
c5dc89ae15 | ||
|
|
e080b58ad2 | ||
|
|
063f6cb1f6 | ||
|
|
368f38ff7e | ||
|
|
30e201af17 | ||
|
|
7fbd853c14 | ||
|
|
e496dc109f | ||
|
|
47b7602b32 | ||
|
|
52d14ab8a0 | ||
|
|
88cc2316d2 | ||
|
|
932d1ded69 | ||
|
|
dae8f07882 | ||
|
|
d2d4121e41 | ||
|
|
1ba011353f | ||
|
|
d6ed4b9543 | ||
|
|
77e391dcf0 | ||
|
|
7361f7b44e | ||
|
|
a1b85f0dc5 | ||
|
|
d2ec48155a | ||
|
|
032b797c12 | ||
|
|
030c95db8b | ||
|
|
d396fa4d7b | ||
|
|
23a90cc905 | ||
|
|
2a15134ad8 | ||
|
|
49c2c7f047 | ||
|
|
70098b1589 | ||
|
|
4f0ae1f09f | ||
|
|
5bfdeeb223 | ||
|
|
c828da6fd2 | ||
|
|
47181231d7 | ||
|
|
f4bf81792a | ||
|
|
9f0648fcdb | ||
|
|
836542c79d | ||
|
|
a6213e6566 | ||
|
|
5b14ab9dc9 | ||
|
|
50e99b5431 | ||
|
|
a6c4c2e290 | ||
|
|
524fb791e1 | ||
|
|
a680251f6b | ||
|
|
1216351b41 | ||
|
|
c4135d6b8e | ||
|
|
391b853668 | ||
|
|
881c1a4e65 | ||
|
|
eddebea2b4 | ||
|
|
d1e2909418 | ||
|
|
7db4c7b5b5 | ||
|
|
d8c4983127 | ||
|
|
2b6899f41f | ||
|
|
232eb5b99c | ||
|
|
f034123382 | ||
|
|
bbc2f43f5f | ||
|
|
ed6abf57cb | ||
|
|
2f19fa2364 | ||
|
|
745452dd8d | ||
|
|
751e78699c | ||
|
|
6fac8250fe | ||
|
|
882ab80d57 | ||
|
|
e89954332f | ||
|
|
c6b94cea88 | ||
|
|
bd3d28a0e1 | ||
|
|
19ad23141e | ||
|
|
4db1370d72 | ||
|
|
4ebf39bfb0 | ||
|
|
0ac301ced6 | ||
|
|
88633933a0 | ||
|
|
9032c19495 | ||
|
|
c802ba3785 | ||
|
|
89beaff53c | ||
|
|
0fa725f3bf | ||
|
|
4d555ab24a | ||
|
|
91a4d82324 | ||
|
|
1ddd383a5c | ||
|
|
8d21fb1375 | ||
|
|
1dfe15d60e | ||
|
|
05fccbb44f | ||
|
|
452a20766e | ||
|
|
bb4175dc30 | ||
|
|
513eac3fa9 | ||
|
|
a7580c035f | ||
|
|
d9d1c24e08 | ||
|
|
ebd1736e8f | ||
|
|
0ffe6373a5 | ||
|
|
05bec7caf8 | ||
|
|
2fbf06bcc8 | ||
|
|
07fc520149 | ||
|
|
f3b8d1f983 | ||
|
|
a407a2a647 | ||
|
|
ffec7b548a | ||
|
|
2a55bd28af | ||
|
|
7d27e29272 | ||
|
|
0f4fb51b1f | ||
|
|
29c4e473a5 | ||
|
|
659792d80a | ||
|
|
0910a0b9fb | ||
|
|
46da8e1665 | ||
|
|
7cda99b512 | ||
|
|
793c8a025a | ||
|
|
5564fe84c5 | ||
|
|
0b693c3cc3 | ||
|
|
da97d91bbf | ||
|
|
2ac13a1d85 | ||
|
|
aeac83f581 | ||
|
|
c0f4d881ad | ||
|
|
c5f5e28dcd | ||
|
|
00b2212e0d | ||
|
|
08ac7f3da1 | ||
|
|
0a58ce1677 | ||
|
|
874d107342 | ||
|
|
9548421f81 | ||
|
|
d96510b789 | ||
|
|
33e22751d5 | ||
|
|
1c0426be14 | ||
|
|
de9953980e | ||
|
|
a1daec7a10 | ||
|
|
199727a752 | ||
|
|
a5607f268d | ||
|
|
84ddf924f1 | ||
|
|
f9cc7d28c5 | ||
|
|
6b658869ba | ||
|
|
0a2a4750b3 | ||
|
|
a9fb68beb3 | ||
|
|
a9eff2fe00 | ||
|
|
fd4f29edf2 | ||
|
|
22e77ee039 | ||
|
|
2ca671d4d2 | ||
|
|
e3d0f21f53 | ||
|
|
1e98c82a59 | ||
|
|
b0e27f785a | ||
|
|
8850c3eb35 | ||
|
|
04b5e1489a | ||
|
|
a75a475780 | ||
|
|
160d5cb860 | ||
|
|
ad385e3aaa | ||
|
|
585530bce3 | ||
|
|
975203a88d | ||
|
|
9f3efdacd0 | ||
|
|
7a6c7b4622 | ||
|
|
53d275bcf7 | ||
|
|
41810688a1 | ||
|
|
8c6e8dd6c1 | ||
|
|
1151904454 | ||
|
|
abcb1ed6e5 | ||
|
|
ed677aad5b | ||
|
|
44eb0b53da | ||
|
|
b61ea69aa3 | ||
|
|
b8f0ed1a12 | ||
|
|
18103754d2 | ||
|
|
44da510c99 | ||
|
|
3a403b358a | ||
|
|
89a68a7d46 | ||
|
|
9a9a197636 | ||
|
|
19c5764f41 | ||
|
|
f0c059899e | ||
|
|
6605a0132b | ||
|
|
ce1eb06d2a | ||
|
|
aa9637307b | ||
|
|
13f7fc506f | ||
|
|
f48478f001 | ||
|
|
5a4f843d3e | ||
|
|
8a5052e802 | ||
|
|
ed04eeab8a | ||
|
|
9a5a8bc9dd | ||
|
|
db1c68a9c1 | ||
|
|
2faa53af39 | ||
|
|
9a350f520a | ||
|
|
c1b270ae40 | ||
|
|
d6b5a7bd1b | ||
|
|
f54fe6f19c | ||
|
|
f5933d79ca | ||
|
|
b134097b24 | ||
|
|
0e54a77925 | ||
|
|
88a65863a5 | ||
|
|
5675d2de03 | ||
|
|
c071a6581e | ||
|
|
b89e028c05 | ||
|
|
5c15917576 | ||
|
|
3c3d03e138 | ||
|
|
b08b711e2a | ||
|
|
ec9d326340 | ||
|
|
7a178c0287 | ||
|
|
a49c3566a7 | ||
|
|
5b8794da73 | ||
|
|
d29938ee0d | ||
|
|
526b51ec93 | ||
|
|
bbc6cb37ae | ||
|
|
b44a3cb109 | ||
|
|
8e4c7e687f | ||
|
|
0d4ec7d9ac | ||
|
|
d7112a033e | ||
|
|
aa691f6fb4 | ||
|
|
c653b35f51 | ||
|
|
c4f131dce9 | ||
|
|
11941bb7c6 | ||
|
|
857a10c5ac | ||
|
|
7c8c5acdcf | ||
|
|
496d013619 | ||
|
|
c4c7fdf98e | ||
|
|
7a3e203b2d | ||
|
|
c81992af09 | ||
|
|
9285be523f | ||
|
|
1d276ca824 | ||
|
|
9996a31fcb | ||
|
|
20d459121d | ||
|
|
b7601f1e78 | ||
|
|
258b3ae519 | ||
|
|
0b80655d1b | ||
|
|
438e0483b7 | ||
|
|
5d72579040 | ||
|
|
9a99e3c47e | ||
|
|
db11e9d7be | ||
|
|
73027787e1 | ||
|
|
3d0d33a56e | ||
|
|
652333b000 | ||
|
|
29baaada1d | ||
|
|
7c704b42da | ||
|
|
871a3ebc69 | ||
|
|
20a5f2b794 | ||
|
|
d41be7b849 | ||
|
|
1d6b2871c2 | ||
|
|
bcea85a562 | ||
|
|
83032e39d7 | ||
|
|
1105a4fcfc | ||
|
|
ff349e3d68 | ||
|
|
1e9a6f3e14 | ||
|
|
47e040c48e | ||
|
|
4c80eea432 | ||
|
|
607c35a5c1 | ||
|
|
71986a4364 | ||
|
|
f324e5035a | ||
|
|
b5906d8cf0 | ||
|
|
17d466904b | ||
|
|
2e19f9ff58 | ||
|
|
445adcb95d | ||
|
|
e28efdcf09 | ||
|
|
69c1260911 | ||
|
|
d50a91b4b5 | ||
|
|
3db330edf8 | ||
|
|
6c0d104d75 | ||
|
|
538e4f74bf | ||
|
|
d1288b14be | ||
|
|
2d032cd20f | ||
|
|
31474958ea | ||
|
|
c05a5e1d73 | ||
|
|
031da3eb0c | ||
|
|
a45a2e965c | ||
|
|
f00527a575 | ||
|
|
a9a775cdda | ||
|
|
377cb850d2 | ||
|
|
b6effcfad3 | ||
|
|
932edca56d | ||
|
|
2fb9f87ccc | ||
|
|
af8a702ffa | ||
|
|
bed2bf2ec7 | ||
|
|
e385b3f9b9 | ||
|
|
e77ffda2f2 | ||
|
|
453e098b25 | ||
|
|
b05158a67d | ||
|
|
f3214d80cc | ||
|
|
5b4db46db2 | ||
|
|
676ee9185a | ||
|
|
cbf9f32246 | ||
|
|
69dfa864d5 | ||
|
|
6a33380ecf | ||
|
|
98ec74d568 | ||
|
|
3abc7a1f90 | ||
|
|
fc7e537b45 | ||
|
|
ca6dd4b475 | ||
|
|
a8ab505429 | ||
|
|
ef1fd9eb5e | ||
|
|
cf5edf83ec | ||
|
|
c1bf2a2775 | ||
|
|
448e2663ac | ||
|
|
83e6c42cdd | ||
|
|
c177dec7c5 | ||
|
|
cc80af09cd | ||
|
|
fcf1934be8 | ||
|
|
bfdef2abaf | ||
|
|
ecb10f595d | ||
|
|
fb2888c3a5 | ||
|
|
081a9dc448 | ||
|
|
0f1c24fec6 | ||
|
|
3ba7bb9664 | ||
|
|
92fd5d1b25 | ||
|
|
ada7ae72c3 | ||
|
|
cf1ddc33ee | ||
|
|
33cd4d9181 | ||
|
|
743770f874 | ||
|
|
33ae0e092b | ||
|
|
d89c1b9466 | ||
|
|
64bbd43587 | ||
|
|
f560610eff | ||
|
|
e0c92f8713 | ||
|
|
d7372aa85b | ||
|
|
078cef089c | ||
|
|
de3940d1ea | ||
|
|
d63b8ea4d0 | ||
|
|
4e272d5a1c | ||
|
|
720b0c0d51 | ||
|
|
4e3697a06e | ||
|
|
d1828d831e | ||
|
|
35949f9ac8 | ||
|
|
e9755e2570 | ||
|
|
bd27d0df2b | ||
|
|
4ef5f38576 | ||
|
|
e009a9de75 | ||
|
|
d967b49681 | ||
|
|
e0c03c4a8c | ||
|
|
95194a972c | ||
|
|
3617d02264 | ||
|
|
7c290f0115 | ||
|
|
70e4b82cd9 | ||
|
|
d1bd7d654f | ||
|
|
253ed9c697 | ||
|
|
5ce02fb8f5 | ||
|
|
e4cf833007 | ||
|
|
2c352f5b03 | ||
|
|
3184f5e1a8 | ||
|
|
02bf1aae84 | ||
|
|
cbc7936c23 | ||
|
|
5651d4d917 | ||
|
|
65e40464b9 | ||
|
|
f2e926483f | ||
|
|
0d50d3b07f | ||
|
|
d05f92796b | ||
|
|
2cc17e1b1c | ||
|
|
7e1e879d56 | ||
|
|
1fd69a8213 | ||
|
|
7a18159352 | ||
|
|
a364df15a9 | ||
|
|
a9c551e555 | ||
|
|
8572954ead | ||
|
|
9cf990271f | ||
|
|
346b91444e | ||
|
|
87519dfd8f | ||
|
|
0cae8f10b7 | ||
|
|
5936aeafed | ||
|
|
e49d73b94b | ||
|
|
10684df873 | ||
|
|
378dbacd83 | ||
|
|
7b4467366d | ||
|
|
631758bd3a | ||
|
|
2ec8ca31c0 | ||
|
|
c3b2b710be | ||
|
|
5468d7a070 | ||
|
|
4d1a4aadbb | ||
|
|
e754375df7 | ||
|
|
e4dcfc0e1e | ||
|
|
a0e5d39d03 | ||
|
|
6b57edb1ab | ||
|
|
1b2692a5b9 | ||
|
|
8c97518725 | ||
|
|
bf79880554 | ||
|
|
9e1b196510 | ||
|
|
d006ab34d2 | ||
|
|
f02cc38da0 | ||
|
|
21996d3904 | ||
|
|
dace425c59 | ||
|
|
aae4d811bc | ||
|
|
d5e086f492 | ||
|
|
b456d81fba | ||
|
|
7734aca6a1 | ||
|
|
92442341b6 | ||
|
|
44f8595983 | ||
|
|
0321a1fd00 | ||
|
|
17db42659c | ||
|
|
6af1573bdb | ||
|
|
5bf955196b | ||
|
|
3cc252d992 |
@@ -0,0 +1,5 @@
|
||||
Content-Type: application/X-atf-atffile; version="1"
|
||||
|
||||
prop: test-suite = bind9
|
||||
|
||||
tp: lib
|
||||
@@ -1,3 +1,273 @@
|
||||
--- 9.7.4-P1 released ---
|
||||
|
||||
3218. [security] Cache lookup could return RRSIG data associated with
|
||||
nonexistent records, leading to an assertion
|
||||
failure. [RT #26590]
|
||||
|
||||
--- 9.7.4 released ---
|
||||
|
||||
3135. [port] FreeBSD: workaround broken IPV6_USE_MIN_MTU processing.
|
||||
See http://www.freebsd.org/cgi/query-pr.cgi?pr=158307
|
||||
[RT #24950]
|
||||
|
||||
3133. [bug] Change #3114 was incomplete. [RT #24577]
|
||||
|
||||
3132. [bug] Workaround for excessive startup time with large
|
||||
number of zones; allow setting of an environment
|
||||
variable to tune the number of tasks, default is 8,
|
||||
recommends 200 zones per task. If you have 200000
|
||||
zones set the BIND9_ZONE_TASKS_HINT environment
|
||||
variable to 1000 before starting named:
|
||||
|
||||
csh: setenv BIND9_ZONE_TASKS_HINT 1000
|
||||
sh: BIND9_ZONE_TASKS_HINT=1000;
|
||||
export BIND9_ZONE_TASKS_HINT
|
||||
|
||||
Applicable to 9.7, 9.6, auto-tuned in 9.8 and up.
|
||||
[RT #25084]
|
||||
|
||||
--- 9.7.4rc1 released ---
|
||||
|
||||
3124. [bug] Use an rdataset attribute flag to indicate
|
||||
negative-cache records rather than using rrtype 0;
|
||||
this will prevent problems when that rrtype is
|
||||
used in actual DNS packets. [RT #24777]
|
||||
|
||||
3123. [security] Change #2912 exposed a latent flaw in
|
||||
dns_rdataset_totext() that could cause named to
|
||||
crash with an assertion failure. [RT #24777]
|
||||
|
||||
3122. [cleanup] dnssec-settime: corrected usage message. [RT #24664]
|
||||
|
||||
3121. [security] An authoritative name server sending a negative
|
||||
response containing a very large RRset could
|
||||
trigger an off-by-one error in the ncache code
|
||||
and crash named. [RT #24650]
|
||||
|
||||
3120. [bug] Named could fail to validate zones listed in a DLV
|
||||
that validated insecure without using DLV and had
|
||||
DS records in the parent zone. [RT #24631]
|
||||
|
||||
3119. [bug] When rolling to a new DNSSEC key, a private-type
|
||||
record could be created and never marked complete.
|
||||
[RT #23253]
|
||||
|
||||
3118. [bug] nsupdate could dump core on shutdown when using
|
||||
SIG(0) keys. [RT #24604]
|
||||
|
||||
3117. [cleanup] Remove doc and parser references to the
|
||||
never-implemented 'auto-dnssec create' option.
|
||||
[RT #24533]
|
||||
|
||||
3114. [bug] Retain expired RRSIGs in dynamic zones if key is
|
||||
inactive and there is no replacement key. [RT #23136]
|
||||
|
||||
3113. [doc] Document the relationship between serial-query-rate
|
||||
and NOTIFY messages.
|
||||
|
||||
3112. [doc] Add missing descriptions of the update policy name
|
||||
types "ms-self", "ms-subdomain", "krb5-self" and
|
||||
"krb5-subdomain", which allow machines to update
|
||||
their own records, to the BIND 9 ARM.
|
||||
|
||||
3111. [bug] Improved consistency checks for dnssec-enable and
|
||||
dnssec-validation, added test cases to the
|
||||
checkconf system test. [RT #24398]
|
||||
|
||||
3110. [bug] dnssec-signzone: Wrong error message could appear
|
||||
when attempting to sign with no KSK. [RT #24369]
|
||||
|
||||
3107. [bug] dnssec-signzone: Report the correct number of ZSKs
|
||||
when using -x. [RT #20852]
|
||||
|
||||
3104. [bug] Better support for cross-compiling. [RT #24367]
|
||||
|
||||
3101. [bug] Zones using automatic key maintenance could fail
|
||||
to check the key repository for updates. [RT #23744]
|
||||
|
||||
3099. [test] "dlz" system test now runs but gives R:SKIPPED if
|
||||
not compiled with --with-dlz-filesystem. [RT #24146]
|
||||
|
||||
3097. [test] Add a tool to test handling of malformed packets.
|
||||
[RT #24096]
|
||||
|
||||
--- 9.7.4b1 released ---
|
||||
|
||||
3095. [bug] Handle isolated reserved ports in the port range.
|
||||
[RT #23957]
|
||||
|
||||
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
|
||||
automatic signing. [RT #22911]
|
||||
|
||||
3088. [bug] Remove bin/tests/system/logfileconfig/ns1/named.conf
|
||||
and add setup.sh in order to resolve changing
|
||||
named.conf issue. [RT #23687]
|
||||
|
||||
3086. [bug] Running dnssec-settime -f on an old-style key will
|
||||
now force an update to the new key format even if no
|
||||
other change has been specified, using "-P now -A now"
|
||||
as default values. [RT #22474]
|
||||
|
||||
3083. [bug] NOTIFY messages were not being sent when generating
|
||||
a NSEC3 chain incrementally. [RT #23702]
|
||||
|
||||
3081. [bug] Failure of DNAME substitution did not return
|
||||
YXDOMAIN. [RT #23591]
|
||||
|
||||
3080. [cleanup] Replaced compile time constant by STDTIME_ON_32BITS.
|
||||
[RT #23587]
|
||||
|
||||
3079. [bug] Handle isc_event_allocate failures in t_tasks.
|
||||
[RT #23572]
|
||||
|
||||
3077. [bug] zone.c:zone_refreshkeys() incorrectly called
|
||||
dns_zone_attach(), use zone->irefs instead. [RT #23303]
|
||||
|
||||
3075. [bug] dns_dnssec_findzonekeys{2} used a inconsistant
|
||||
timestamp when determining which keys are active.
|
||||
[RT #23642]
|
||||
|
||||
3074. [bug] Make the adb cache read through for zone data and
|
||||
glue learn for zone named is authoritative for.
|
||||
[RT #22842]
|
||||
|
||||
3073. [bug] managed-keys changes were not properly being recorded.
|
||||
[RT #20256]
|
||||
|
||||
3071. [bug] has_nsec could be used unintialised in
|
||||
update.c:next_active. [RT #20256]
|
||||
|
||||
3070. [bug] dnssec-signzone potential NULL pointer dereference.
|
||||
[RT #20256]
|
||||
|
||||
3069. [cleanup] Silence warnings messages from clang static analysis.
|
||||
[RT #20256]
|
||||
|
||||
3068. [bug] Named failed to build with a OpenSSL without engine
|
||||
support. [RT #23473]
|
||||
|
||||
3067. [bug] ixfr-from-differences {master|slave}; failed to
|
||||
select the master/slave zones. [RT #23580]
|
||||
|
||||
3065. [bug] RRSIG could have time stamps too far in the future.
|
||||
[RT #23356]
|
||||
|
||||
3064. [bug] powerpc: add sync instructions to the end of atomic
|
||||
operations. [RT #23469]
|
||||
|
||||
3063. [contrib] More verbose error reporting from DLZ LDAP. [RT #23402]
|
||||
|
||||
3059. [test] Added a regression test for change #3023.
|
||||
|
||||
3058. [bug] Cause named to terminate at startup or rndc reconfig/
|
||||
reload to fail, if a log file specified in the conf
|
||||
file isn't a plain file. [RT #22771]
|
||||
|
||||
3057. [bug] "rndc secroots" would abort after the first error
|
||||
and so could miss some views. [RT #23488]
|
||||
|
||||
3055. [bug] Load only the desired keys in the
|
||||
"dnssec-lookaside auto" mode. [RT #23372]
|
||||
|
||||
3053. [bug] Under a sustained high query load with a finite
|
||||
max-cache-size, it was possible for cache memory
|
||||
to be exhausted and not recovered. [RT #23371]
|
||||
|
||||
3052. [test] Fixed last autosign test report. [RT #23256]
|
||||
|
||||
3051. [bug] NS records obsure DNAME records at the bottom of the
|
||||
zone if both are present. [RT #23035]
|
||||
|
||||
3050. [bug] The autosign system test was timing dependent.
|
||||
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]
|
||||
|
||||
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]
|
||||
|
||||
3046. [bug] Use RRSIG original TTL to compute validated RRset
|
||||
and RRSIG TTL. [RT #23332]
|
||||
|
||||
3044. [bug] Hold the socket manager lock while freeing the socket.
|
||||
[RT #23333]
|
||||
|
||||
3043. [test] Merged in the NetBSD ATF test framework (currently
|
||||
version 0.12) for development of future unit tests.
|
||||
Use configure --with-atf to build ATF internally
|
||||
or configure --with-atf=prefix to use an external
|
||||
copy. [RT #23209]
|
||||
|
||||
3042. [bug] dig +trace could fail attempting to use IPv6
|
||||
addresses on systems with only IPv4 connectivity.
|
||||
[RT #23297]
|
||||
|
||||
3041. [bug] dnssec-signzone failed to generate new signatures on
|
||||
ttl changes. [RT #23330]
|
||||
|
||||
3040. [bug] Named failed to validate insecure zones where a node
|
||||
with a CNAME existed between the trust anchor and the
|
||||
top of the zone. [RT #23338]
|
||||
|
||||
3037. [doc] Update COPYRIGHT to contain all the individual
|
||||
copyright notices that cover various parts.
|
||||
|
||||
3036. [bug] Check built-in zone arguments to see if the zone
|
||||
is re-usable or not. [RT #21914]
|
||||
|
||||
3035. [cleanup] Simplify by using strlcpy. [RT #22521]
|
||||
|
||||
3034. [cleanup] nslookup: use strlcpy instead of safecopy. [RT #22521]
|
||||
|
||||
3033. [cleanup] Add two INSIST(bucket != DNS_ADB_INVALIDBUCKET).
|
||||
[RT #22521]
|
||||
|
||||
3032. [bug] rdatalist.c: add missing REQUIREs. [RT #22521]
|
||||
|
||||
3031. [bug] dns_rdataclass_format() handle a zero sized buffer.
|
||||
[RT #22521]
|
||||
|
||||
3030. [bug] dns_rdatatype_format() handle a zero sized buffer.
|
||||
[RT #22521]
|
||||
|
||||
3029. [bug] isc_netaddr_format() handle a zero sized buffer.
|
||||
[RT #22521]
|
||||
|
||||
3028. [bug] isc_sockaddr_format() handle a zero sized buffer.
|
||||
[RT #22521]
|
||||
|
||||
3027. [bug] Add documented REQUIREs to cfg_obj_asnetprefix() to
|
||||
catch NULL pointer dereferences before they happen.
|
||||
[RT #22521]
|
||||
|
||||
3026. [bug] lib/isc/httpd.c: check that we have enough space
|
||||
after calling grow_headerspace() and if not
|
||||
re-call grow_headerspace() until we do. [RT #22521]
|
||||
|
||||
3025. [bug] Fixed a possible deadlock due to zone resigning.
|
||||
[RT #22964]
|
||||
|
||||
3023. [bug] Named could be left in an inconsistent state when
|
||||
receiving multiple AXFR response messages that were
|
||||
not all TSIG-signed. [RT #23254]
|
||||
|
||||
3021. [bug] Change #3010 was incomplete. [RT #22296]
|
||||
|
||||
3020. [bug] auto-dnssec failed to correctly update the zone when
|
||||
changing the DNSKEY RRset. [RT #23232]
|
||||
|
||||
3019. [test] Test: check apex NSEC3 records after adding DNSKEY
|
||||
record via UPDATE. [RT #23229]
|
||||
|
||||
--- 9.7.3 released ---
|
||||
|
||||
3018. [bug] Named failed to check for the "none;" acl when deciding
|
||||
@@ -74,12 +344,12 @@
|
||||
|
||||
2976. [bug] named could die on exit after negotiating a GSS-TSIG
|
||||
key. [RT #22573]
|
||||
|
||||
2975. [bug] rbtdb.c:cleanup_dead_nodes_callback() aquired the
|
||||
|
||||
2975. [bug] rbtdb.c:cleanup_dead_nodes_callback() acquired the
|
||||
wrong lock which could lead to server deadlock.
|
||||
[RT #22614]
|
||||
|
||||
2974. [bug] Some vaild UPDATE requests could fail due to a
|
||||
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]
|
||||
@@ -168,7 +438,7 @@
|
||||
2950. [bug] named failed to perform a SOA up to date check when
|
||||
falling back to TCP on UDP timeouts when
|
||||
ixfr-from-differences was set. [RT #21595]
|
||||
|
||||
|
||||
2949. [bug] dns_view_setnewzones() contained a memory leak if
|
||||
it was called multiple times. [RT #21942]
|
||||
|
||||
@@ -273,10 +543,10 @@
|
||||
This feature is not yet documented, and its syntax
|
||||
is expected to change.) [RT #19447]
|
||||
|
||||
2929. [bug] Improved handling of GSS security contexts:
|
||||
2929. [bug] Improved handling of GSS security contexts:
|
||||
- added LRU expiration for generated TSIGs
|
||||
- added the ability to use a non-default realm
|
||||
- added new "realm" keyword in nsupdate
|
||||
- added new "realm" keyword in nsupdate
|
||||
- limited lifetime of generated keys to 1 hour
|
||||
or the lifetime of the context (whichever is
|
||||
smaller)
|
||||
@@ -344,7 +614,7 @@
|
||||
2905. [port] aix: set use_atomic=yes with native compiler.
|
||||
[RT #21402]
|
||||
|
||||
2904. [bug] When using DLV, sub-zones of the zones in the DLV,
|
||||
2904. [bug] When using DLV, sub-zones of the zones in the DLV,
|
||||
could be incorrectly marked as insecure instead of
|
||||
secure leading to negative proofs failing. This was
|
||||
a unintended outcome from change 2890. [RT# 21392]
|
||||
@@ -359,17 +629,17 @@
|
||||
2901. [port] Use AC_C_FLEXIBLE_ARRAY_MEMBER. [RT #21316]
|
||||
|
||||
2900. [bug] The placeholder negative caching element was not
|
||||
properly constructed triggering a INSIST in
|
||||
properly constructed triggering a INSIST in
|
||||
dns_ncache_towire(). [RT #21346]
|
||||
|
||||
|
||||
2899. [port] win32: Support linking against OpenSSL 1.0.0.
|
||||
|
||||
2898. [bug] nslookup leaked memory when -domain=value was
|
||||
2898. [bug] nslookup leaked memory when -domain=value was
|
||||
specified. [RT #21301]
|
||||
|
||||
2897. [bug] NSEC3 chains could be left behind when transitioning
|
||||
to insecure. [RT #21040]
|
||||
|
||||
|
||||
2896. [bug] "rndc sign" failed to properly update the zone
|
||||
when adding a DNSKEY for publication only. [RT #21045]
|
||||
|
||||
@@ -609,7 +879,7 @@
|
||||
2819. [cleanup] Removed unnecessary DNS_POINTER_MAXHOPS define.
|
||||
[RT #20771]
|
||||
|
||||
2818. [cleanup] rndc could return an incorrect error code
|
||||
2818. [cleanup] rndc could return an incorrect error code
|
||||
when a zone was not found. [RT #20767]
|
||||
|
||||
2817. [cleanup] Removed unnecessary isc_task_endexclusive() calls.
|
||||
@@ -623,7 +893,7 @@
|
||||
|
||||
2814. [func] Provide a definitive error message when a master
|
||||
zone is not loaded. [RT #20757]
|
||||
|
||||
|
||||
2813. [bug] Better handling of unreadable DNSSEC key files.
|
||||
[RT #20710]
|
||||
|
||||
@@ -672,7 +942,7 @@
|
||||
|
||||
named-checkzone -r {ignore|warn|fail} (default warn)
|
||||
named-compilezone -r {ignore|warn|fail} (default warn)
|
||||
|
||||
|
||||
named.conf: check-dup-records {ignore|warn|fail};
|
||||
|
||||
2800. [func] Reject zones which have NS records which refer to
|
||||
@@ -684,7 +954,7 @@
|
||||
"dnssec-secure-to-insecure", and "dnskey-ksk-only"
|
||||
to "dnssec-dnskey-kskonly", for clarity. [RT #20586]
|
||||
|
||||
2798. [bug] Addressed bugs in managed-keys initialization
|
||||
2798. [bug] Addressed bugs in managed-keys initialization
|
||||
and rollover. [RT #20683]
|
||||
|
||||
2797. [bug] Don't decrement the dispatch manager's maxbuffers.
|
||||
@@ -709,7 +979,7 @@
|
||||
|
||||
2790. [bug] Handle DS queries to stub zones. [RT #20440]
|
||||
|
||||
2789. [bug] Fixed an INSIST in dispatch.c [RT #20576]
|
||||
2789. [bug] Fixed an INSIST in dispatch.c [RT #20576]
|
||||
|
||||
2788. [bug] dnssec-signzone could sign with keys that were
|
||||
not requested [RT #20625]
|
||||
@@ -1026,7 +1296,7 @@
|
||||
|
||||
2695. [func] DHCP/DDNS - update fdwatch code for use by
|
||||
DHCP. Modify the api to isc_sockfdwatch_t (the
|
||||
callback funciton for isc_socket_fdwatchcreate)
|
||||
callback functon for isc_socket_fdwatchcreate)
|
||||
to include information about the direction (read
|
||||
or write) and add isc_socket_fdwatchpoke.
|
||||
[RT #20253]
|
||||
@@ -1091,14 +1361,14 @@
|
||||
sets the time when a key is no longer used for
|
||||
signing but is still published.
|
||||
- The "unpublished" date (-U) is deprecated in
|
||||
favor of "deleted" (-D).
|
||||
favour of "deleted" (-D).
|
||||
[RT #20247]
|
||||
|
||||
2676. [bug] --with-export-installdir should have been
|
||||
--with-export-includedir. [RT #20252]
|
||||
|
||||
2675. [bug] dnssec-signzone could crash if the key directory
|
||||
did not exist. [RT #20232]
|
||||
did not exist. [RT #20232]
|
||||
|
||||
--- 9.7.0a3 released ---
|
||||
|
||||
@@ -1189,7 +1459,7 @@
|
||||
64-bit systems. [RT #20076]
|
||||
|
||||
2650. [bug] Assertion failure in dnssec-signzone when trying
|
||||
to read keyset-* files. [RT #20075]
|
||||
to read keyset-* files. [RT #20075]
|
||||
|
||||
2649. [bug] Set the domain for forward only zones. [RT #19944]
|
||||
|
||||
@@ -1261,7 +1531,7 @@
|
||||
2630. [func] Improved syntax for DDNS autoconfiguration: use
|
||||
"update-policy local;" to switch on local DDNS in a
|
||||
zone. (The "ddns-autoconf" option has been removed.)
|
||||
[RT #19875]
|
||||
[RT #19875]
|
||||
|
||||
2629. [port] Check for seteuid()/setegid(), use setresuid()/
|
||||
setresgid() if not present. [RT #19932]
|
||||
@@ -1281,11 +1551,11 @@
|
||||
2624. [func] 'named-checkconf -p' will print out the parsed
|
||||
configuration. [RT #18871]
|
||||
|
||||
2623. [bug] Named started seaches for DS non-optimally. [RT #19915]
|
||||
2623. [bug] Named started searches for DS non-optimally. [RT #19915]
|
||||
|
||||
2622. [bug] Printing of named.conf grammar was broken. [RT #19919]
|
||||
|
||||
2621. [doc] Made copyright boilterplate consistent. [RT #19833]
|
||||
2621. [doc] Made copyright boilerplate consistent. [RT #19833]
|
||||
|
||||
2620. [bug] Delay thawing the zone until the reload of it has
|
||||
completed successfully. [RT #19750]
|
||||
@@ -1605,7 +1875,7 @@
|
||||
2529. [cleanup] Upgrade libtool to silence complaints from recent
|
||||
version of autoconf. [RT #18657]
|
||||
|
||||
2528. [cleanup] Silence spurious configure warning about
|
||||
2528. [cleanup] Silence spurious configure warning about
|
||||
--datarootdir [RT #19096]
|
||||
|
||||
2527. [placeholder]
|
||||
@@ -1890,13 +2160,13 @@
|
||||
2441. [bug] isc_radix_insert() could copy radix tree nodes
|
||||
incompletely. [RT #18573]
|
||||
|
||||
2440. [bug] named-checkconf used an incorrect test to determine
|
||||
2440. [bug] named-checkconf used an incorrect test to determine
|
||||
if an ACL was set to none.
|
||||
|
||||
2439. [bug] Potential NULL dereference in dns_acl_isanyornone().
|
||||
2439. [bug] Potential NULL dereference in dns_acl_isanyornone().
|
||||
[RT #18559]
|
||||
|
||||
2438. [bug] Timeouts could be logged incorrectly under win32.
|
||||
2438. [bug] Timeouts could be logged incorrectly under win32.
|
||||
|
||||
2437. [bug] Sockets could be closed too early, leading to
|
||||
inconsistent states in the socket module. [RT #18298]
|
||||
@@ -1910,7 +2180,7 @@
|
||||
|
||||
2433. [tuning] Set initial timeout to 800ms.
|
||||
|
||||
2432. [bug] More Windows socket handling improvements. Stop
|
||||
2432. [bug] More Windows socket handling improvements. Stop
|
||||
using I/O events and use IO Completion Ports
|
||||
throughout. Rewrite the receive path logic to make
|
||||
it easier to support multiple simultaneous
|
||||
@@ -1945,11 +2215,11 @@
|
||||
epoll and /dev/poll to be selected at compile
|
||||
time. [RT #18277]
|
||||
|
||||
2423. [security] Randomize server selection on queries, so as to
|
||||
make forgery a little more difficult. Instead of
|
||||
always preferring the server with the lowest RTT,
|
||||
pick a server with RTT within the same 128
|
||||
millisecond band. [RT #18441]
|
||||
2423. [security] Randomize server selection on queries, so as to
|
||||
make forgery a little more difficult. Instead of
|
||||
always preferring the server with the lowest RTT,
|
||||
pick a server with RTT within the same 128
|
||||
millisecond band. [RT #18441]
|
||||
|
||||
2422. [bug] Handle the special return value of a empty node as
|
||||
if it was a NXRRSET in the validator. [RT #18447]
|
||||
@@ -1959,7 +2229,7 @@
|
||||
Use caution: this option may not work for some
|
||||
operating systems without rebuilding named.
|
||||
|
||||
2420. [bug] Windows socket handling cleanup. Let the io
|
||||
2420. [bug] Windows socket handling cleanup. Let the io
|
||||
completion event send out canceled read/write
|
||||
done events, which keeps us from writing to memory
|
||||
we no longer have ownership of. Add debugging
|
||||
@@ -2030,7 +2300,7 @@
|
||||
|
||||
2399. [placeholder]
|
||||
|
||||
2398. [bug] Improve file descriptor management. New,
|
||||
2398. [bug] Improve file descriptor management. New,
|
||||
temporary, named.conf option reserved-sockets,
|
||||
default 512. [RT #18344]
|
||||
|
||||
@@ -2281,8 +2551,8 @@
|
||||
2316. [port] Missing #include <isc/print.h> in lib/dns/gssapictx.c.
|
||||
[RT #17513]
|
||||
|
||||
2315. [bug] Used incorrect address family for mapped IPv4
|
||||
addresses in acl.c. [RT #17519]
|
||||
2315. [bug] Used incorrect address family for mapped IPv4
|
||||
addresses in acl.c. [RT #17519]
|
||||
|
||||
2314. [bug] Uninitialized memory use on error path in
|
||||
bin/named/lwdnoop.c. [RT #17476]
|
||||
@@ -2293,14 +2563,14 @@
|
||||
2312. [cleanup] Silence Coverity warning in lib/isc/unix/socket.c.
|
||||
[RT #17458]
|
||||
|
||||
2311. [bug] IPv6 addresses could match IPv4 ACL entries and
|
||||
vice versa. [RT #17462]
|
||||
2311. [bug] IPv6 addresses could match IPv4 ACL entries and
|
||||
vice versa. [RT #17462]
|
||||
|
||||
2310. [bug] dig, host, nslookup: flush stdout before emitting
|
||||
debug/fatal messages. [RT #17501]
|
||||
|
||||
2309. [cleanup] Fix Coverity warnings in lib/dns/acl.c and iptable.c.
|
||||
[RT #17455]
|
||||
2309. [cleanup] Fix Coverity warnings in lib/dns/acl.c and iptable.c.
|
||||
[RT #17455]
|
||||
|
||||
2308. [cleanup] Silence Coverity warning in bin/named/controlconf.c.
|
||||
[RT #17495]
|
||||
@@ -2352,7 +2622,7 @@
|
||||
2292. [bug] Log if the working directory is not writable.
|
||||
[RT #17312]
|
||||
|
||||
2291. [bug] PR_SET_DUMPABLE may be set too late. Also report
|
||||
2291. [bug] PR_SET_DUMPABLE may be set too late. Also report
|
||||
failure to set PR_SET_DUMPABLE. [RT #17312]
|
||||
|
||||
2290. [bug] Let AD in the query signal that the client wants AD
|
||||
@@ -2390,7 +2660,7 @@
|
||||
2280. [func] Allow the experimental http server to be reached
|
||||
over IPv6 as well as IPv4. [RT #17332]
|
||||
|
||||
2279. [bug] Use setsockopt(SO_NOSIGPIPE), when available,
|
||||
2279. [bug] Use setsockopt(SO_NOSIGPIPE), when available,
|
||||
to protect applications from receiving spurious
|
||||
SIGPIPE signals when using the resolver.
|
||||
|
||||
@@ -2425,9 +2695,9 @@
|
||||
|
||||
--- 9.5.0b1 released ---
|
||||
|
||||
2267. [bug] Radix tree node_num value could be set incorrectly,
|
||||
causing positive ACL matches to look like negative
|
||||
ones. [RT #17311]
|
||||
2267. [bug] Radix tree node_num value could be set incorrectly,
|
||||
causing positive ACL matches to look like negative
|
||||
ones. [RT #17311]
|
||||
|
||||
2266. [bug] client.c:get_clientmctx() returned the same mctx
|
||||
once the pool of mctx's was filled. [RT #17218]
|
||||
@@ -2443,7 +2713,7 @@
|
||||
2262. [bug] Error status from all but the last view could be
|
||||
lost. [RT #17292]
|
||||
|
||||
2261. [bug] Fix memory leak with "any" and "none" ACLs [RT #17272]
|
||||
2261. [bug] Fix memory leak with "any" and "none" ACLs [RT #17272]
|
||||
|
||||
2260. [bug] Reported wrong clients-per-query when increasing the
|
||||
value. [RT #17236]
|
||||
|
||||
@@ -13,9 +13,15 @@ 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: COPYRIGHT,v 1.15.188.2 2011/01/04 23:46:30 tbox Exp $
|
||||
$Id: COPYRIGHT,v 1.15.188.3 2011/02/22 06:36:35 marka Exp $
|
||||
|
||||
Portions Copyright (C) 1996-2001 Nominum, Inc.
|
||||
Portions of this code release fall under one or more of the
|
||||
following Copyright notices. Please see individual source
|
||||
files for details.
|
||||
|
||||
For binary releases also see: OpenSSL-LICENSE.
|
||||
|
||||
Copyright (C) 1996-2001 Nominum, Inc.
|
||||
|
||||
Permission to use, copy, modify, and distribute this software for any
|
||||
purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -28,3 +34,485 @@ 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.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (C) 1995-2000 by Network Associates, Inc.
|
||||
|
||||
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 AND NETWORK ASSOCIATES 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.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (C) 2002 Stichting NLnet, Netherlands, stichting@nlnet.nl.
|
||||
|
||||
Permission to use, copy, modify, and 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 STICHTING NLNET
|
||||
DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
|
||||
STICHTING NLNET 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.
|
||||
|
||||
The development of Dynamically Loadable Zones (DLZ) for Bind 9 was
|
||||
conceived and contributed by Rob Butler.
|
||||
|
||||
Permission to use, copy, modify, and 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 ROB BUTLER
|
||||
DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
|
||||
ROB BUTLER 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.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 1987, 1990, 1993, 1994
|
||||
The Regents of the University of California. All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
3. All advertising materials mentioning features or use of this software
|
||||
must display the following acknowledgement:
|
||||
This product includes software developed by the University of
|
||||
California, Berkeley and its contributors.
|
||||
4. Neither the name of the University nor the names of its contributors
|
||||
may be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (C) The Internet Society 2005. This version of
|
||||
this module is part of RFC 4178; see the RFC itself for
|
||||
full legal notices.
|
||||
|
||||
(The above copyright notice is per RFC 3978 5.6 (a), q.v.)
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 2004 Masarykova universita
|
||||
(Masaryk University, Brno, Czech Republic)
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright notice,
|
||||
this list of conditions and the following disclaimer.
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
3. Neither the name of the University nor the names of its contributors may
|
||||
be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
||||
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 1997 - 2003 Kungliga Tekniska Högskolan
|
||||
(Royal Institute of Technology, Stockholm, Sweden).
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
3. Neither the name of the Institute nor the names of its contributors
|
||||
may be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 1998 Doug Rabson
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright ((c)) 2002, Rice University
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are
|
||||
met:
|
||||
|
||||
* Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
* Redistributions in binary form must reproduce the above
|
||||
copyright notice, this list of conditions and the following
|
||||
disclaimer in the documentation and/or other materials provided
|
||||
with the distribution.
|
||||
|
||||
* Neither the name of Rice University (RICE) nor the names of its
|
||||
contributors may be used to endorse or promote products derived
|
||||
from this software without specific prior written permission.
|
||||
|
||||
|
||||
This software is provided by RICE and the contributors on an "as is"
|
||||
basis, without any representations or warranties of any kind, express
|
||||
or implied including, but not limited to, representations or
|
||||
warranties of non-infringement, merchantability or fitness for a
|
||||
particular purpose. In no event shall RICE or contributors be liable
|
||||
for any direct, indirect, incidental, special, exemplary, or
|
||||
consequential damages (including, but not limited to, procurement of
|
||||
substitute goods or services; loss of use, data, or profits; or
|
||||
business interruption) however caused and on any theory of liability,
|
||||
whether in contract, strict liability, or tort (including negligence
|
||||
or otherwise) arising in any way out of the use of this software, even
|
||||
if advised of the possibility of such damage.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 1993 by Digital Equipment Corporation.
|
||||
|
||||
Permission to use, copy, modify, and 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, and that
|
||||
the name of Digital Equipment Corporation not be used in advertising or
|
||||
publicity pertaining to distribution of the document or software without
|
||||
specific, written prior permission.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL
|
||||
WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES
|
||||
OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT
|
||||
CORPORATION 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.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright 2000 Aaron D. Gifford. All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
3. Neither the name of the copyright holder nor the names of contributors
|
||||
may be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) AND CONTRIBUTOR(S) ``AS IS'' AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) OR CONTRIBUTOR(S) BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 1998 Doug Rabson.
|
||||
Copyright (c) 2001 Jake Burkholder.
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
3. Neither the name of the project nor the names of its contributors
|
||||
may be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 1999-2000 by Nortel Networks Corporation
|
||||
|
||||
Permission to use, copy, modify, and 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 NORTEL NETWORKS DISCLAIMS
|
||||
ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
|
||||
OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NORTEL NETWORKS
|
||||
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.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 2000-2002 Japan Network Information Center. All rights reserved.
|
||||
|
||||
By using this file, you agree to the terms and conditions set forth bellow.
|
||||
|
||||
LICENSE TERMS AND CONDITIONS
|
||||
|
||||
The following License Terms and Conditions apply, unless a different
|
||||
license is obtained from Japan Network Information Center ("JPNIC"),
|
||||
a Japanese association, Kokusai-Kougyou-Kanda Bldg 6F, 2-3-4 Uchi-Kanda,
|
||||
Chiyoda-ku, Tokyo 101-0047, Japan.
|
||||
|
||||
1. Use, Modification and Redistribution (including distribution of any
|
||||
modified or derived work) in source and/or binary forms is permitted
|
||||
under this License Terms and Conditions.
|
||||
|
||||
2. Redistribution of source code must retain the copyright notices as they
|
||||
appear in each source code file, this License Terms and Conditions.
|
||||
|
||||
3. Redistribution in binary form must reproduce the Copyright Notice,
|
||||
this License Terms and Conditions, in the documentation and/or other
|
||||
materials provided with the distribution. For the purposes of binary
|
||||
distribution the "Copyright Notice" refers to the following language:
|
||||
"Copyright (c) 2000-2002 Japan Network Information Center. All rights
|
||||
reserved."
|
||||
|
||||
4. The name of JPNIC may not be used to endorse or promote products
|
||||
derived from this Software without specific prior written approval of
|
||||
JPNIC.
|
||||
|
||||
5. Disclaimer/Limitation of Liability: THIS SOFTWARE IS PROVIDED BY JPNIC
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
|
||||
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL JPNIC BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
|
||||
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||
ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (C) 2004 Nominet, Ltd.
|
||||
|
||||
Permission to use, copy, modify, and 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 NOMINET 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.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Portions Copyright RSA Security Inc.
|
||||
|
||||
License to copy and use this software is granted provided that it is
|
||||
identified as "RSA Security Inc. PKCS #11 Cryptographic Token Interface
|
||||
(Cryptoki)" in all material mentioning or referencing this software.
|
||||
|
||||
License is also granted to make and use derivative works provided that
|
||||
such works are identified as "derived from the RSA Security Inc. PKCS #11
|
||||
Cryptographic Token Interface (Cryptoki)" in all material mentioning or
|
||||
referencing the derived work.
|
||||
|
||||
RSA Security Inc. makes no representations concerning either the
|
||||
merchantability of this software or the suitability of this software for
|
||||
any particular purpose. It is provided "as is" without express or implied
|
||||
warranty of any kind.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 1996, David Mazieres <dm@uun.org>
|
||||
Copyright (c) 2008, Damien Miller <djm@openbsd.org>
|
||||
|
||||
Permission to use, copy, modify, and 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 THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR 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.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 2000-2001 The OpenSSL Project. All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in
|
||||
the documentation and/or other materials provided with the
|
||||
distribution.
|
||||
|
||||
3. All advertising materials mentioning features or use of this
|
||||
software must display the following acknowledgment:
|
||||
"This product includes software developed by the OpenSSL Project
|
||||
for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)"
|
||||
|
||||
4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
|
||||
endorse or promote products derived from this software without
|
||||
prior written permission. For written permission, please contact
|
||||
licensing@OpenSSL.org.
|
||||
|
||||
5. Products derived from this software may not be called "OpenSSL"
|
||||
nor may "OpenSSL" appear in their names without prior written
|
||||
permission of the OpenSSL Project.
|
||||
|
||||
6. Redistributions of any form whatsoever must retain the following
|
||||
acknowledgment:
|
||||
"This product includes software developed by the OpenSSL Project
|
||||
for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)"
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
|
||||
EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
|
||||
ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||||
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
||||
OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
|
||||
@@ -37,3 +37,32 @@
|
||||
2948. [port] MacOS: provide a mechanism to configure the test
|
||||
interfaces at reboot. See bin/tests/system/README
|
||||
for details.
|
||||
|
||||
3013. [bug] The DNS64 ttl was not always being set as expected.
|
||||
[RT #23034]
|
||||
|
||||
3022. [bug] Fixed rpz SERVFAILs after failed zone transfers
|
||||
[RT #23246]
|
||||
|
||||
3038. [bug] Install <dns/rpz.h>. [RT #23342]
|
||||
|
||||
3045. [removed] Replaced by change #3050.
|
||||
|
||||
3054. [bug] Added elliptic curve support check in
|
||||
GOST OpenSSL engine detection. [RT #23485]
|
||||
|
||||
3072. [bug] dns_dns64_aaaaok() potential NULL pointer dereference.
|
||||
[RT #20256]
|
||||
|
||||
3082. [port] strtok_r is threads only. [RT #23747]
|
||||
|
||||
3087. [bug] DDNS updates using SIG(0) with update-policy match
|
||||
type "external" could cause a crash. [RT #23735]
|
||||
|
||||
3093. [bug] Fix gssapi/kerberos dependencies [RT #23836]
|
||||
|
||||
3094. [doc] Expand dns64 documentation.
|
||||
|
||||
3096. [bug] Set KRB5_KTNAME before calling log_cred() in
|
||||
dst_gssapi_acceptctx(). [RT #24004]
|
||||
|
||||
|
||||
+4
-3
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004-2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 1998-2002 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -13,7 +13,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: Makefile.in,v 1.58 2009/11/26 20:52:44 marka Exp $
|
||||
# $Id: Makefile.in,v 1.58.8.2 2011/02/28 01:19:26 tbox Exp $
|
||||
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
@@ -21,7 +21,7 @@ top_srcdir = @top_srcdir@
|
||||
|
||||
@BIND9_VERSION@
|
||||
|
||||
SUBDIRS = make lib bin doc @LIBEXPORT@
|
||||
SUBDIRS = make unit lib bin doc @LIBEXPORT@
|
||||
TARGETS =
|
||||
|
||||
MANPAGES = isc-config.sh.1
|
||||
@@ -65,6 +65,7 @@ check: test
|
||||
|
||||
test:
|
||||
(cd bin/tests && ${MAKE} ${MAKEDEFS} test)
|
||||
(test -f unit/unittest.sh && $(SHELL) unit/unittest.sh)
|
||||
|
||||
FAQ: FAQ.xml
|
||||
${XSLTPROC} doc/xsl/isc-docbook-text.xsl FAQ.xml | \
|
||||
|
||||
@@ -1,318 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title></title><link rel="stylesheet" href="release-notes.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.75.2" /></head><body><div class="article"><div class="titlepage"><hr /></div>
|
||||
|
||||
<div class="section" title="Introduction"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id2549151"></a>Introduction</h2></div></div></div>
|
||||
|
||||
<p>
|
||||
BIND 9.7.3 is the current release of BIND 9.7.
|
||||
</p>
|
||||
<p>
|
||||
This document summarizes changes from BIND 9.7.1 to BIND 9.7.3.
|
||||
Please see the CHANGES file in the source code release for a
|
||||
complete list of all changes.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="section" title="Download"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3415638"></a>Download</h2></div></div></div>
|
||||
|
||||
<p>
|
||||
The latest development version of BIND 9 software can always be found
|
||||
on our web site at
|
||||
<a class="ulink" href="http://www.isc.org/downloads/development" target="_top">http://www.isc.org/downloads/development</a>.
|
||||
There you will find additional information about each release,
|
||||
source code, and some pre-compiled versions for certain operating
|
||||
systems.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="section" title="Support"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3415690"></a>Support</h2></div></div></div>
|
||||
|
||||
<p>Product support information is available on
|
||||
<a class="ulink" href="http://www.isc.org/services/support" target="_top">http://www.isc.org/services/support</a>
|
||||
for paid support options. Free support is provided by our user
|
||||
community via a mailing list. Information on all public email
|
||||
lists is available at
|
||||
<a class="ulink" href="https://lists.isc.org/mailman/listinfo" target="_top">https://lists.isc.org/mailman/listinfo</a>.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="section" title="New Features"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3415627"></a>New Features</h2></div></div></div>
|
||||
|
||||
<div class="section" title="9.7.2"><div class="titlepage"><div><div><h3 class="title"><a id="id3415698"></a>9.7.2</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
||||
Zones may be dynamically added and removed with the
|
||||
“rndc addzone” and “rndc delzone” commands. These
|
||||
dynamically added zones are written to a per-view
|
||||
configuration file. Do not rely on the configuration
|
||||
file name nor contents as this will change in a future
|
||||
release. This is an experimental feature at this time.
|
||||
</li><li class="listitem">
|
||||
Added new “filter-aaaa-on-v4” access control list to
|
||||
select which IPv4 clients have AAAA record filtering
|
||||
applied.
|
||||
</li><li class="listitem">
|
||||
A new command “rndc secroots” was added to dump a combined
|
||||
summary of the currently managed keys combined with statically
|
||||
configured trust anchors.
|
||||
</li><li class="listitem">
|
||||
Added support to load new keys into managed zones without
|
||||
signing immediately with "rndc loadkeys". Added support
|
||||
to link keys with "dnssec-keygen -S" and
|
||||
"dnssec-settime -S".
|
||||
</li></ul></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section" title="Feature Changes"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3415770"></a>Feature Changes</h2></div></div></div>
|
||||
|
||||
<div class="section" title="9.7.2"><div class="titlepage"><div><div><h3 class="title"><a id="id3415775"></a>9.7.2</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
||||
Documentation improvements
|
||||
</li><li class="listitem">
|
||||
ORCHID prefixes were removed from the automatic empty
|
||||
zone list.
|
||||
</li><li class="listitem">
|
||||
Improved handling of GSSAPI security contexts. Specifically,
|
||||
better memory management of cached contexts, limited lifetime
|
||||
of a context to 1 hour, and added a “realm” command to
|
||||
nsupdate to allow selection of a non-default realm name.
|
||||
</li><li class="listitem">
|
||||
The contributed tool “zkt” was updated to version 1.0.
|
||||
</li></ul></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section" title="Security Fixes"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3415805"></a>Security Fixes</h2></div></div></div>
|
||||
|
||||
<div class="section" title="9.7.2-P3"><div class="titlepage"><div><div><h3 class="title"><a id="id3415810"></a>9.7.2-P3</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
||||
Adding a NO DATA signed negative response to cache failed to clear
|
||||
any matching RRSIG records already in cache. A subsequent lookup
|
||||
of the cached NO DATA entry could crash named (INSIST) when the
|
||||
unexpected RRSIG was also returned with the NO DATA cache entry.
|
||||
[RT #22288] [CVE-2010-3613] [VU#706148]
|
||||
</li><li class="listitem">
|
||||
BIND, acting as a DNSSEC validator, was determining if the NS RRset
|
||||
is insecure based on a value that could mean either that the RRset
|
||||
is actually insecure or that there wasn't a matching key for the RRSIG
|
||||
in the DNSKEY RRset when resuming from validating the DNSKEY RRset.
|
||||
This can happen when in the middle of a DNSKEY algorithm rollover,
|
||||
when two different algorithms were used to sign a zone but only the
|
||||
new set of keys are in the zone DNSKEY RRset.
|
||||
[RT #22309] [CVE-2010-3614] [VU#837744]
|
||||
</li><li class="listitem">
|
||||
<p>
|
||||
When BIND is running as an authoritative server for a zone and
|
||||
receives a query for that zone data, it first checks for allow-query
|
||||
acls in the zone statement, then in that view, then in global
|
||||
options. If none of these exist, it defaults to allowing any query
|
||||
(allow-query {"any"};).
|
||||
</p>
|
||||
<p>
|
||||
With this bug, if the allow-query is not set in the zone statement,
|
||||
it failed to check in view or global options and fell back to the
|
||||
default of allowing any query. This means that queries that the zone
|
||||
owner did not wish to allow were incorrectly allowed.
|
||||
[RT #22418] [CVE-2010-3615] [VU#510208]
|
||||
</p>
|
||||
</li></ul></div>
|
||||
</div>
|
||||
<div class="section" title="9.7.2-P2"><div class="titlepage"><div><div><h3 class="title"><a id="id3415862"></a>9.7.2-P2</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
||||
A flaw where the wrong ACL was applied was fixed. This flaw
|
||||
allowed access to a cache via recursion even though the ACL
|
||||
disallowed it.
|
||||
</li></ul></div>
|
||||
</div>
|
||||
<div class="section" title="9.7.2-P1"><div class="titlepage"><div><div><h3 class="title"><a id="id3415878"></a>9.7.2-P1</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
||||
If BIND, acting as a DNSSEC validating server, has two or more trust
|
||||
anchors configured in named.conf for the same zone (such as
|
||||
example.com) and the response for a record in that zone from the
|
||||
authoritative server includes a bad signature, the validating server
|
||||
will crash while trying to validate that query.
|
||||
</li></ul></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section" title="Bug Fixes"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3415898"></a>Bug Fixes</h2></div></div></div>
|
||||
|
||||
<div class="section" title="9.7.3"><div class="titlepage"><div><div><h3 class="title"><a id="id3415904"></a>9.7.3</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
||||
BIND now builds with threads disabled in versions of NetBSD earlier
|
||||
than 5.0 and with pthreads enabled by default in NetBSD versions 5.0
|
||||
and higher. Also removes support for unproven-pthreads, mit-pthreads
|
||||
and ptl2. [RT #19203]
|
||||
</li><li class="listitem">
|
||||
Added a regression test for fix 2896/RT #21045 ("rndc sign" failed
|
||||
to properly update the zone when adding a DNSKEY for publication
|
||||
only). [RT #21324]
|
||||
</li><li class="listitem">
|
||||
"nsupdate -l" now gives error message if "session.key" file is not
|
||||
found. [RT #21670]
|
||||
</li><li class="listitem">
|
||||
HPUX now correctly defaults to using /dev/poll, which should
|
||||
increase performance. [RT #21919]
|
||||
</li><li class="listitem">
|
||||
If named is running as a threaded application, after an "rndc stop"
|
||||
command has been issued, other inbound TCP requests can cause named
|
||||
to hang and never complete shutdown. [RT #22108]
|
||||
</li><li class="listitem">
|
||||
After an "rndc reconfig", the refresh timer for managed-keys is ignored, resulting in managed-keys
|
||||
not being refreshed until named is restarted. [RT #22296]
|
||||
</li><li class="listitem">
|
||||
An NSEC3PARAM record placed inside a zone which is not properly
|
||||
signed with NSEC3 could cause named to crash, if changed via dynamic
|
||||
update. [RT #22363]
|
||||
</li><li class="listitem">
|
||||
"rndc -h" now includes "loadkeys" option. [RT #22493]
|
||||
</li><li class="listitem">
|
||||
When performing a GSS-TSIG signed dynamic zone update, memory could be
|
||||
leaked. This causes an unclean shutdown and may affect long-running
|
||||
servers. [RT #22573]
|
||||
</li><li class="listitem">
|
||||
A bug in NetBSD and FreeBSD kernels with SO_ACCEPTFILTER enabled allows
|
||||
for a TCP DoS attack. Until there is a kernel fix, ISC is disabling
|
||||
SO_ACCEPTFILTER support in BIND. [RT #22589]
|
||||
</li><li class="listitem">
|
||||
When signing records, named didn't filter out any TTL changes
|
||||
to DNSKEY records. This resulted in an incomplete key set. TTL
|
||||
changes are now dealt with before signing.
|
||||
[RT #22590]
|
||||
</li><li class="listitem">
|
||||
Corrected a defect where a combination of dynamic updates and zone transfers incorrectly locked the in-memory zone database, causing
|
||||
named to freeze. [RT #22614]
|
||||
</li><li class="listitem">
|
||||
Don't run MX checks (check-mx) when the MX record points to ".".
|
||||
[RT #22645]
|
||||
</li><li class="listitem">
|
||||
DST key reference counts can now be incremented via dst_key_attach.
|
||||
[RT #22672]
|
||||
</li><li class="listitem">
|
||||
The IN6_IS_ADDR_LINKLOCAL and
|
||||
IN6_IS_ADDR_SITELOCAL macros in win32 were updated/corrected
|
||||
per current Windows OS. [RT #22724]
|
||||
</li><li class="listitem">
|
||||
"dnssec-settime -S" no longer tests prepublication interval validity
|
||||
when the interval is set to 0. [RT #22761]
|
||||
</li><li class="listitem">
|
||||
isc_mutex_init_errcheck() in phtreads/mutex.c failed to destroy attr. [RT #22766]
|
||||
</li><li class="listitem">
|
||||
The Kerberos realm was being truncated when being pulled from the
|
||||
the host prinicipal, make krb5-self updates fail. [RT #22770]
|
||||
</li><li class="listitem">
|
||||
named failed to preserve the case of domain names in RDATA which is not compressible when writing master files. [RT #22863]
|
||||
</li><li class="listitem">
|
||||
The man page for dnssec-keyfromlabel incorrectly had "-U" rather
|
||||
than the correct option "-I". [RT #22887]
|
||||
</li><li class="listitem">
|
||||
The "rndc" command usage statement was missing the "-b" option.
|
||||
[RT #22937]
|
||||
</li><li class="listitem">
|
||||
There was a bug in how the clients-per-query code worked with some
|
||||
query patterns. This could result, in rare circumstances, in having all
|
||||
the client query slots filled with queries for the same DNS label,
|
||||
essentially ignoring the max-clients-per-query setting.
|
||||
[RT #22972]
|
||||
</li><li class="listitem">
|
||||
The secure zone update feature in named is based on the zone
|
||||
being signed and configured for dynamic updates. A bug in the ACL
|
||||
processing for "allow-update { none; };" resulted in a zone that is
|
||||
supposed to be static being treated as a dynamic zone. Thus, name
|
||||
would try to sign/re-sign that zone erroneously. [RT #23120]
|
||||
</li></ul></div>
|
||||
</div>
|
||||
<div class="section" title="9.7.2-P3"><div class="titlepage"><div><div><h3 class="title"><a id="id3415913"></a>9.7.2-P3</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
||||
Microsoft changed the behavior of sockets between NT/XP based
|
||||
stacks vs Vista/windows7 stacks. Server 2003/2008 have the older
|
||||
behavior, 2008r2 has the new behavior. With the change, different
|
||||
error results are possible, so ISC adapted BIND to handle the new
|
||||
error results.
|
||||
This resolves an issue where sockets would shut down on
|
||||
Windows servers causing named to stop responding to queries.
|
||||
[RT #21906]
|
||||
</li><li class="listitem">
|
||||
Windows has non-POSIX compliant behavior in its rename() and unlink()
|
||||
calls. This caused journal compaction to fail on Windows BIND servers
|
||||
with the log error: "dns_journal_compact failed: failure".
|
||||
[RT #22434]
|
||||
</li></ul></div>
|
||||
</div>
|
||||
<div class="section" title="9.7.2-P1"><div class="titlepage"><div><div><h3 class="title"><a id="id3416078"></a>9.7.2-P1</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
||||
A bug, introduced in BIND 9.7.2, caused named to fail to start
|
||||
if a master zone file was unreadable or missing. This has
|
||||
been corrected in 9.7.2-P1.
|
||||
</li><li class="listitem">
|
||||
BIND previously accepted answers from authoritative servers that did
|
||||
not provide a "proper" response, such as not setting AA bit. BIND was
|
||||
changed to be more strict in what it accepted but this caused
|
||||
operational issues. This new strictness has been backed out in
|
||||
9.7.2-P1.
|
||||
</li></ul></div>
|
||||
</div>
|
||||
<div class="section" title="9.7.2"><div class="titlepage"><div><div><h3 class="title"><a id="id3416105"></a>9.7.2</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
||||
Removed a warning message when running BIND 9 under Windows
|
||||
for when a TCP connection was aborted. This is a common
|
||||
occurrence and the warning was extraneous.
|
||||
</li><li class="listitem">
|
||||
Worked around a race condition in the cache database memory
|
||||
handling. Without this fix a DNS cache DB or ADB could
|
||||
incorrectly stay in an over memory state, effectively refusing
|
||||
further caching, which subsequently made a BIND 9 caching
|
||||
server unworkable.
|
||||
</li><li class="listitem">
|
||||
Partially disabled change 2864 because it would cause
|
||||
infinite attempts of RRSIG queries.
|
||||
</li><li class="listitem">
|
||||
BIND did not properly handle non-cacheable negative responses
|
||||
from insecure zones. This caused several non-protocol-compliant
|
||||
zones to become unresolvable. BIND is now more accepting of
|
||||
responses it receives from less strict servers.
|
||||
</li></ul></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section" title="Known issues in this release"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3416145"></a>Known issues in this release</h2></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
||||
<p>
|
||||
"make test" will fail on OSX and possibly other operating systems.
|
||||
The failure occurs in a new test to check for allow-query ACLs.
|
||||
The failure is caused because the source address is not specified on
|
||||
the dig commands issued in the test.
|
||||
</p>
|
||||
<p>
|
||||
If running "make test" is part of your usual acceptance process,
|
||||
please edit the file <code class="code">bin/tests/system/allow_query/test.sh</code>
|
||||
and add
|
||||
</p><p>
|
||||
<code class="code">-b 10.53.0.2</code>
|
||||
</p><p>
|
||||
to the <code class="code">DIGOPTS</code> line.
|
||||
</p>
|
||||
</li></ul></div>
|
||||
</div>
|
||||
|
||||
<div class="section" title="Thank You"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3416192"></a>Thank You</h2></div></div></div>
|
||||
|
||||
<p>
|
||||
Thank you to everyone who assisted us in making this release possible.
|
||||
If you would like to contribute to ISC to assist us in continuing to make
|
||||
quality open source software, please visit our donations page at
|
||||
<a class="ulink" href="http://www.isc.org/supportisc" target="_top">http://www.isc.org/supportisc</a>.
|
||||
</p>
|
||||
</div>
|
||||
</div></body></html>
|
||||
Binary file not shown.
@@ -1,220 +0,0 @@
|
||||
__________________________________________________________________
|
||||
|
||||
Introduction
|
||||
|
||||
BIND 9.7.3 is the current release of BIND 9.7.
|
||||
|
||||
This document summarizes changes from BIND 9.7.1 to BIND 9.7.3. Please
|
||||
see the CHANGES file in the source code release for a complete list of
|
||||
all changes.
|
||||
|
||||
Download
|
||||
|
||||
The latest development version of BIND 9 software can always be found
|
||||
on our web site at http://www.isc.org/downloads/development. There you
|
||||
will find additional information about each release, source code, and
|
||||
some pre-compiled versions for certain operating systems.
|
||||
|
||||
Support
|
||||
|
||||
Product support information is available on
|
||||
http://www.isc.org/services/support for paid support options. Free
|
||||
support is provided by our user community via a mailing list.
|
||||
Information on all public email lists is available at
|
||||
https://lists.isc.org/mailman/listinfo.
|
||||
|
||||
New Features
|
||||
|
||||
9.7.2
|
||||
|
||||
* Zones may be dynamically added and removed with the "rndc addzone"
|
||||
and "rndc delzone" commands. These dynamically added zones are
|
||||
written to a per-view configuration file. Do not rely on the
|
||||
configuration file name nor contents as this will change in a
|
||||
future release. This is an experimental feature at this time.
|
||||
* Added new "filter-aaaa-on-v4" access control list to select which
|
||||
IPv4 clients have AAAA record filtering applied.
|
||||
* A new command "rndc secroots" was added to dump a combined summary
|
||||
of the currently managed keys combined with statically configured
|
||||
trust anchors.
|
||||
* Added support to load new keys into managed zones without signing
|
||||
immediately with "rndc loadkeys". Added support to link keys with
|
||||
"dnssec-keygen -S" and "dnssec-settime -S".
|
||||
|
||||
Feature Changes
|
||||
|
||||
9.7.2
|
||||
|
||||
* Documentation improvements
|
||||
* ORCHID prefixes were removed from the automatic empty zone list.
|
||||
* Improved handling of GSSAPI security contexts. Specifically, better
|
||||
memory management of cached contexts, limited lifetime of a context
|
||||
to 1 hour, and added a "realm" command to nsupdate to allow
|
||||
selection of a non-default realm name.
|
||||
* The contributed tool "zkt" was updated to version 1.0.
|
||||
|
||||
Security Fixes
|
||||
|
||||
9.7.2-P3
|
||||
|
||||
* Adding a NO DATA signed negative response to cache failed to clear
|
||||
any matching RRSIG records already in cache. A subsequent lookup of
|
||||
the cached NO DATA entry could crash named (INSIST) when the
|
||||
unexpected RRSIG was also returned with the NO DATA cache entry.
|
||||
[RT #22288] [CVE-2010-3613] [VU#706148]
|
||||
* BIND, acting as a DNSSEC validator, was determining if the NS RRset
|
||||
is insecure based on a value that could mean either that the RRset
|
||||
is actually insecure or that there wasn't a matching key for the
|
||||
RRSIG in the DNSKEY RRset when resuming from validating the DNSKEY
|
||||
RRset. This can happen when in the middle of a DNSKEY algorithm
|
||||
rollover, when two different algorithms were used to sign a zone
|
||||
but only the new set of keys are in the zone DNSKEY RRset. [RT
|
||||
#22309] [CVE-2010-3614] [VU#837744]
|
||||
* When BIND is running as an authoritative server for a zone and
|
||||
receives a query for that zone data, it first checks for
|
||||
allow-query acls in the zone statement, then in that view, then in
|
||||
global options. If none of these exist, it defaults to allowing any
|
||||
query (allow-query {"any"};).
|
||||
With this bug, if the allow-query is not set in the zone statement,
|
||||
it failed to check in view or global options and fell back to the
|
||||
default of allowing any query. This means that queries that the
|
||||
zone owner did not wish to allow were incorrectly allowed. [RT
|
||||
#22418] [CVE-2010-3615] [VU#510208]
|
||||
|
||||
9.7.2-P2
|
||||
|
||||
* A flaw where the wrong ACL was applied was fixed. This flaw allowed
|
||||
access to a cache via recursion even though the ACL disallowed it.
|
||||
|
||||
9.7.2-P1
|
||||
|
||||
* If BIND, acting as a DNSSEC validating server, has two or more
|
||||
trust anchors configured in named.conf for the same zone (such as
|
||||
example.com) and the response for a record in that zone from the
|
||||
authoritative server includes a bad signature, the validating
|
||||
server will crash while trying to validate that query.
|
||||
|
||||
Bug Fixes
|
||||
|
||||
9.7.3
|
||||
|
||||
* BIND now builds with threads disabled in versions of NetBSD earlier
|
||||
than 5.0 and with pthreads enabled by default in NetBSD versions
|
||||
5.0 and higher. Also removes support for unproven-pthreads,
|
||||
mit-pthreads and ptl2. [RT #19203]
|
||||
* Added a regression test for fix 2896/RT #21045 ("rndc sign" failed
|
||||
to properly update the zone when adding a DNSKEY for publication
|
||||
only). [RT #21324]
|
||||
* "nsupdate -l" now gives error message if "session.key" file is not
|
||||
found. [RT #21670]
|
||||
* HPUX now correctly defaults to using /dev/poll, which should
|
||||
increase performance. [RT #21919]
|
||||
* If named is running as a threaded application, after an "rndc stop"
|
||||
command has been issued, other inbound TCP requests can cause named
|
||||
to hang and never complete shutdown. [RT #22108]
|
||||
* After an "rndc reconfig", the refresh timer for managed-keys is
|
||||
ignored, resulting in managed-keys not being refreshed until named
|
||||
is restarted. [RT #22296]
|
||||
* An NSEC3PARAM record placed inside a zone which is not properly
|
||||
signed with NSEC3 could cause named to crash, if changed via
|
||||
dynamic update. [RT #22363]
|
||||
* "rndc -h" now includes "loadkeys" option. [RT #22493]
|
||||
* When performing a GSS-TSIG signed dynamic zone update, memory could
|
||||
be leaked. This causes an unclean shutdown and may affect
|
||||
long-running servers. [RT #22573]
|
||||
* A bug in NetBSD and FreeBSD kernels with SO_ACCEPTFILTER enabled
|
||||
allows for a TCP DoS attack. Until there is a kernel fix, ISC is
|
||||
disabling SO_ACCEPTFILTER support in BIND. [RT #22589]
|
||||
* When signing records, named didn't filter out any TTL changes to
|
||||
DNSKEY records. This resulted in an incomplete key set. TTL changes
|
||||
are now dealt with before signing. [RT #22590]
|
||||
* Corrected a defect where a combination of dynamic updates and zone
|
||||
transfers incorrectly locked the in-memory zone database, causing
|
||||
named to freeze. [RT #22614]
|
||||
* Don't run MX checks (check-mx) when the MX record points to ".".
|
||||
[RT #22645]
|
||||
* DST key reference counts can now be incremented via dst_key_attach.
|
||||
[RT #22672]
|
||||
* The IN6_IS_ADDR_LINKLOCAL and IN6_IS_ADDR_SITELOCAL macros in win32
|
||||
were updated/corrected per current Windows OS. [RT #22724]
|
||||
* "dnssec-settime -S" no longer tests prepublication interval
|
||||
validity when the interval is set to 0. [RT #22761]
|
||||
* isc_mutex_init_errcheck() in phtreads/mutex.c failed to destroy
|
||||
attr. [RT #22766]
|
||||
* The Kerberos realm was being truncated when being pulled from the
|
||||
the host prinicipal, make krb5-self updates fail. [RT #22770]
|
||||
* named failed to preserve the case of domain names in RDATA which is
|
||||
not compressible when writing master files. [RT #22863]
|
||||
* The man page for dnssec-keyfromlabel incorrectly had "-U" rather
|
||||
than the correct option "-I". [RT #22887]
|
||||
* The "rndc" command usage statement was missing the "-b" option. [RT
|
||||
#22937]
|
||||
* There was a bug in how the clients-per-query code worked with some
|
||||
query patterns. This could result, in rare circumstances, in having
|
||||
all the client query slots filled with queries for the same DNS
|
||||
label, essentially ignoring the max-clients-per-query setting. [RT
|
||||
#22972]
|
||||
* The secure zone update feature in named is based on the zone being
|
||||
signed and configured for dynamic updates. A bug in the ACL
|
||||
processing for "allow-update { none; };" resulted in a zone that is
|
||||
supposed to be static being treated as a dynamic zone. Thus, name
|
||||
would try to sign/re-sign that zone erroneously. [RT #23120]
|
||||
|
||||
9.7.2-P3
|
||||
|
||||
* Microsoft changed the behavior of sockets between NT/XP based
|
||||
stacks vs Vista/windows7 stacks. Server 2003/2008 have the older
|
||||
behavior, 2008r2 has the new behavior. With the change, different
|
||||
error results are possible, so ISC adapted BIND to handle the new
|
||||
error results. This resolves an issue where sockets would shut down
|
||||
on Windows servers causing named to stop responding to queries. [RT
|
||||
#21906]
|
||||
* Windows has non-POSIX compliant behavior in its rename() and
|
||||
unlink() calls. This caused journal compaction to fail on Windows
|
||||
BIND servers with the log error: "dns_journal_compact failed:
|
||||
failure". [RT #22434]
|
||||
|
||||
9.7.2-P1
|
||||
|
||||
* A bug, introduced in BIND 9.7.2, caused named to fail to start if a
|
||||
master zone file was unreadable or missing. This has been corrected
|
||||
in 9.7.2-P1.
|
||||
* BIND previously accepted answers from authoritative servers that
|
||||
did not provide a "proper" response, such as not setting AA bit.
|
||||
BIND was changed to be more strict in what it accepted but this
|
||||
caused operational issues. This new strictness has been backed out
|
||||
in 9.7.2-P1.
|
||||
|
||||
9.7.2
|
||||
|
||||
* Removed a warning message when running BIND 9 under Windows for
|
||||
when a TCP connection was aborted. This is a common occurrence and
|
||||
the warning was extraneous.
|
||||
* Worked around a race condition in the cache database memory
|
||||
handling. Without this fix a DNS cache DB or ADB could incorrectly
|
||||
stay in an over memory state, effectively refusing further caching,
|
||||
which subsequently made a BIND 9 caching server unworkable.
|
||||
* Partially disabled change 2864 because it would cause infinite
|
||||
attempts of RRSIG queries.
|
||||
* BIND did not properly handle non-cacheable negative responses from
|
||||
insecure zones. This caused several non-protocol-compliant zones to
|
||||
become unresolvable. BIND is now more accepting of responses it
|
||||
receives from less strict servers.
|
||||
|
||||
Known issues in this release
|
||||
|
||||
* "make test" will fail on OSX and possibly other operating systems.
|
||||
The failure occurs in a new test to check for allow-query ACLs. The
|
||||
failure is caused because the source address is not specified on
|
||||
the dig commands issued in the test.
|
||||
If running "make test" is part of your usual acceptance process,
|
||||
please edit the file bin/tests/system/allow_query/test.sh and add
|
||||
-b 10.53.0.2
|
||||
to the DIGOPTS line.
|
||||
|
||||
Thank You
|
||||
|
||||
Thank you to everyone who assisted us in making this release possible.
|
||||
If you would like to contribute to ISC to assist us in continuing to
|
||||
make quality open source software, please visit our donations page at
|
||||
http://www.isc.org/supportisc.
|
||||
@@ -0,0 +1,354 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<!--
|
||||
- Copyright (C) 2011 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: RELEASE-NOTES-BIND-9.7.4.html,v 1.1.2.8 2011/07/23 23:46:45 tbox Exp $ -->
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title></title><link rel="stylesheet" href="release-notes.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.71.1" /></head><body><div class="article" lang="en" xml:lang="en"><div class="titlepage"><hr /></div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3359852"></a>Introduction</h2></div></div></div>
|
||||
|
||||
<p>
|
||||
BIND 9.7.4 is the current production release of BIND 9.7.
|
||||
</p>
|
||||
<p>
|
||||
This document summarizes changes from BIND 9.7.3 to BIND 9.7.4.
|
||||
Please see the CHANGES file in the source code release for a
|
||||
complete list of all changes.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id2546702"></a>Download</h2></div></div></div>
|
||||
|
||||
<p>
|
||||
The latest version of BIND 9 software can always be found
|
||||
on our web site at
|
||||
<a href="http://www.isc.org/downloads/all" target="_top">http://www.isc.org/downloads/all</a>.
|
||||
There you will find additional information about each release,
|
||||
source code, and some pre-compiled versions for certain operating
|
||||
systems.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id2546736"></a>Support</h2></div></div></div>
|
||||
|
||||
<p>Product support information is available on
|
||||
<a href="http://www.isc.org/services/support" target="_top">http://www.isc.org/services/support</a>
|
||||
for paid support options. Free support is provided by our user
|
||||
community via a mailing list. Information on all public email
|
||||
lists is available at
|
||||
<a href="https://lists.isc.org/mailman/listinfo" target="_top">https://lists.isc.org/mailman/listinfo</a>.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3358885"></a>New Features</h2></div></div></div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id3358925"></a>9.7.4</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul type="disc"><li>
|
||||
A new test has been added to check the apex NSEC3 records after DNSKEY
|
||||
records have been added via dynamic update. [RT #23229]
|
||||
</li><li>
|
||||
Added a tool able to generate malformed packets to allow testing
|
||||
of how named handles them.
|
||||
[RT #24096]
|
||||
</li></ul></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3358973"></a>Security Fixes</h2></div></div></div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id3358993"></a>9.7.4</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul type="disc"><li>
|
||||
named, set up to be a caching resolver, is vulnerable to a
|
||||
user querying a domain with very large resource record sets (RRSets)
|
||||
when trying to negatively cache the response. Due to an off-by-one
|
||||
error, caching the response could cause named to crash. [RT #24650]
|
||||
[CVE-2011-1910]
|
||||
</li><li>
|
||||
Change #2912 (see CHANGES) exposed a latent bug in the DNS message
|
||||
processing code that could allow certain UPDATE requests to crash named.
|
||||
[RT #24777] [CVE-2011-2464]
|
||||
</li></ul></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3359041"></a>Feature Changes</h2></div></div></div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id3359054"></a>9.7.4</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul type="disc"><li>
|
||||
Merged in the NetBSD ATF test framework (currently
|
||||
version 0.12) for development of future unit tests.
|
||||
Use configure --with-atf to build ATF internally
|
||||
or configure --with-atf=prefix to use an external
|
||||
copy. [RT #23209]
|
||||
</li><li>
|
||||
Added more verbose error reporting from DLZ LDAP. [RT #23402]
|
||||
</li><li>
|
||||
Replaced compile time constant with STDTIME_ON_32BITS.
|
||||
[RT #23587]
|
||||
</li></ul></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3359075"></a>Bug Fixes</h2></div></div></div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id3359081"></a>9.7.4</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul type="disc"><li>
|
||||
<p>
|
||||
During RFC5011 processing some journal write errors were not detected.
|
||||
This could lead to managed-keys changes being committed but not
|
||||
recorded in the journal files, causing potential inconsistencies
|
||||
during later processing. [RT #20256]
|
||||
</p>
|
||||
<p>
|
||||
A potential NULL pointer deference in the DNS64 code could cause
|
||||
named to terminate unexpectedly. [RT #20256]
|
||||
</p>
|
||||
<p>
|
||||
A state variable relating to DNSSEC could fail to be set during
|
||||
some infrequently-executed code paths, allowing it to be used whilst
|
||||
in an unitialized state during cache updates, with unpredictable results.
|
||||
[RT #20256]
|
||||
</p>
|
||||
<p>
|
||||
A potential NULL pointer deference in DNSSEC signing code could
|
||||
cause named to terminate unexpectedly [RT #20256]
|
||||
</p>
|
||||
<p>
|
||||
Several cosmetic code changes were made to silence warnings
|
||||
generated by a static code analysis tool. [RT #20256]
|
||||
</p>
|
||||
</li><li>
|
||||
When using the -x (sign with only KSK) option on dnssec-signzone,
|
||||
it could incorrectly count the number of ZSKs in the zone. (And in 9.9.0,
|
||||
some code cleanup and improved warning messages). [RT #20852]
|
||||
</li><li>
|
||||
When using _builtin in named.conf, named.conf changes were not found
|
||||
when reloading the config file. Now checks _builtin zone arguments
|
||||
to see if the zone is re-usable or not. [RT #21914]
|
||||
</li><li>
|
||||
After an "rndc reconfig", the refresh timer for managed-keys is
|
||||
ignored, resulting in managed-keys not being refreshed until named is
|
||||
restarted. [RT #22296]
|
||||
</li><li>
|
||||
Running dnssec-settime -f on an old-style key will
|
||||
now force the key to be rewritten to the new key format even if no
|
||||
other change has been specified, using "-P now -A now"
|
||||
as default values. [RT #22474]
|
||||
</li><li>
|
||||
After an external code review, a code cleanup was done. [RT #22521]
|
||||
</li><li>
|
||||
Cause named to terminate at startup or rndc reconfig
|
||||
reload to fail, if a log file specified in the
|
||||
conf file isn't a plain file. (RT #22771]
|
||||
</li><li>
|
||||
named now forces the ADB cache time for glue related data to zero
|
||||
instead of relying on TTL. This corrects problematic behavior in cases
|
||||
where a server was authoritative for the A record of a nameserver for a
|
||||
delegated zone and was queried to recursively resolve records within
|
||||
that zone. [RT #22842]
|
||||
</li><li>
|
||||
When a validating resolver got a NODATA response for DNSKEY, it was
|
||||
not caching the NODATA. Fixed and test added. [RT #22908]
|
||||
</li><li>
|
||||
Fixed a bug in which zone keys that were published
|
||||
and but not immediately activated, automatic signing could fail to trigger.
|
||||
[RT #22911]
|
||||
</li><li>
|
||||
Fixed a possible deadlock due to zone re-signing. [RT #22964]
|
||||
</li><li>
|
||||
Fixed precedence order bug with NS and DNAME records if both are present.
|
||||
(Also fixed timing of autosign test in 9.7+) [RT #23035]
|
||||
</li><li>
|
||||
When a DNSSEC signed dynamic zone's signatures need to be refreshed,
|
||||
named would first delete the old signatures in the zone. If a private
|
||||
key of the same algorithm isn't available to named, the signing would
|
||||
fail but the old signatures would already be deleted. named now checks
|
||||
if it can access the private key before deleting the old signatures and
|
||||
leaves the old signature if no private key is found. [RT #23136]
|
||||
</li><li>
|
||||
When using auto-dnssec and updating DNSKEY records, named did correctly
|
||||
update the zone. [RT #23232]
|
||||
</li><li>
|
||||
When using "auto-dnssec maintain" and rolling to a new key, a
|
||||
private-type record (only used internally by named) could be created
|
||||
and not marked as complete. [RT #23253]
|
||||
</li><li>
|
||||
If a slave initiates a TSIG signed AXFR from the master and the master
|
||||
fails to correctly TSIG sign the final message, the slave would be left
|
||||
with the zone in an unclean state. named detected this error too late
|
||||
and named would crash with an INSIST. The order dependancy has been
|
||||
fixed. [RT #23254]
|
||||
</li><li>
|
||||
Fixed last autosign test report. [RT #23256]
|
||||
</li><li>
|
||||
named didn't save gid at startup and later assumed gid 0.
|
||||
named now saves/restores the gid when creating creating
|
||||
named.pid at startup. [RT #23290]
|
||||
</li><li>
|
||||
If the server has an IPv6 address but does not have IPv6 connectivity
|
||||
to the internet, dig +trace could fail attempting to use IPv6
|
||||
addresses. [RT #23297]
|
||||
</li><li>
|
||||
If named is configured with managed zones, the managed key maint timer
|
||||
can exercise a race condition that can crash the server.
|
||||
[RT #23303]
|
||||
</li><li>
|
||||
Changing TTL did not cause dnssec-signzone to generate new signatures.
|
||||
[RT #23330]
|
||||
</li><li>
|
||||
Have the validating resolver use RRSIG original TTL to compute
|
||||
validated RRset and RRSIG TTL. [RT #23332]
|
||||
</li><li>
|
||||
In "make test" bin/tests/resolver, hold the socket manager lock
|
||||
while freeing the socket.
|
||||
[RT #23333]
|
||||
</li><li>
|
||||
If named encountered a CNAME instead of a DS record when walking
|
||||
the chain of trust down from the trust anchor, it incorrectly stopped
|
||||
validating. [RT #23338]
|
||||
</li><li>
|
||||
RRSIG records could have time stamps too far in the future.
|
||||
[RT #23356]
|
||||
</li><li>
|
||||
named stores cached data in an in-memory database and keeps track of
|
||||
how recently the data is used with a heap. The heap is stored within the
|
||||
cache's memory space. Under a sustained high query load and with a small
|
||||
cache size, this could lead to the heap exhausting the cache space. This
|
||||
would result in cache misses and SERVFAILs, with named never releasing
|
||||
the cache memory the heap used up and never recovering.
|
||||
|
||||
This fix removes the heap into its own memory space, preventing the heap
|
||||
from exhausting the cache space and allowing named to recover gracefully
|
||||
when the high query load abates. [RT #23371]
|
||||
</li><li>
|
||||
If "dnssec-lookaside auto" is turned on, named pulled in all keys
|
||||
defined in bind.keys, including the root key.
|
||||
named now only loads the desired keys.
|
||||
[RT #23372]
|
||||
</li><li>
|
||||
Fully separated key management on a per view basis. [RT #23419]
|
||||
</li><li>
|
||||
If running on a powerpc CPU and with atomic operations enabled,
|
||||
named could lock up. Added sync instructions to the end of atomic
|
||||
operations. [RT #23469]
|
||||
</li><li>
|
||||
If OpenSSL was built without engine support, named would have
|
||||
compile errors and fail to build.
|
||||
[RT #23473]
|
||||
</li><li>
|
||||
"rndc secroots" would abort on the first error
|
||||
and so could miss remaining views. [RT #23488]
|
||||
</li><li>
|
||||
Handle isc_event_allocate failures in t_tasks test.
|
||||
[RT #23572]
|
||||
</li><li>
|
||||
ixfr-from-differences {master|slave};
|
||||
failed to select the master/slave zones, resulting in on diff/journal
|
||||
file being created.
|
||||
[RT #23580]
|
||||
</li><li>
|
||||
If a DNAME substitution failed, named returned NOERROR. The correct
|
||||
response should be YXDOMAIN.
|
||||
[RT #23591]
|
||||
</li><li>
|
||||
dns_dnssec_findzonekeys{2} used a inconsistant
|
||||
timestamp when determining which keys are active. This could result in
|
||||
some RRsets not being signed/re-signed.
|
||||
[RT #23642]
|
||||
</li><li>
|
||||
Remove bin/tests/system/logfileconfig/ns1/named.conf and
|
||||
add setup.sh in order to resolve changing named.conf issue. [RT #23687]
|
||||
</li><li>
|
||||
NOTIFY messages were not being sent when generating
|
||||
a NSEC3 chain incrementally. [RT #23702]
|
||||
</li><li>
|
||||
Zones using automatic key maintenance could fail to check the key
|
||||
repository for updates. named now checks once per hour and the
|
||||
automatic check bug has been fixed. [RT #23744]
|
||||
</li><li>
|
||||
Signatures for records at the zone apex could go
|
||||
stale due to an incorrect timer setting. [RT #23769]
|
||||
</li><li>
|
||||
The autosign tests attempted to open ports within reserved ranges. Test
|
||||
now avoids those ports.
|
||||
[RT #23957]
|
||||
</li><li>
|
||||
named, acting as authoritative server for DLZ zones, was not correctly
|
||||
setting the authoritative (AA) bit.
|
||||
[RT #24146]
|
||||
</li><li>
|
||||
Clean up some cross-compiling issues and added two undocumented
|
||||
configure options, --with-gost and --with-rlimtype, to allow over-riding
|
||||
default settings (gost=no and rlimtype="long int") when cross-compiling.
|
||||
[RT #24367]
|
||||
</li><li>
|
||||
When trying sign with NSEC3, if dnssec-signzone couldn't find the
|
||||
KSK, it would give an incorrect error "NSEC3 iterations too big for
|
||||
weakest DNSKEY strength" rather than the correct "failed to find
|
||||
keys at the zone apex: not found" [RT #24369]
|
||||
</li><li>
|
||||
Improved consistency checks for dnssec-enable and
|
||||
dnssec-validation, added test cases to the
|
||||
checkconf system test. [RT #24398]
|
||||
</li><li>
|
||||
RT #23136 fixed a problem where named would delete old signatures even
|
||||
when the private key wasn't available to re-sign the zone, resulting in
|
||||
a zone with missing signatures. This fix (CHANGES 3114) did not
|
||||
completely fix all issues. [RT #24577]
|
||||
</li><li>
|
||||
nsupdate could dump core on shutdown when using SIG(0) keys. [RT #24604]
|
||||
</li><li>
|
||||
Named could fail to validate zones list in a DLV that validated insecure
|
||||
without using DLV and had DS records in the parent zone. [RT #24631]
|
||||
</li><li>
|
||||
A bug in FreeBSD kernels causes IPv6 UDP responses greater than
|
||||
1280 bytes to not fragment as they should. Until there is a kernel
|
||||
fix, named will work around this by setting IPV6_USE_MIN_MTU on a
|
||||
per packet basis. [RT #24950]
|
||||
</li><li>
|
||||
To avoid excessive startup time for configurations with large numbers
|
||||
of zones, an environment variable, BIND9_ZONE_TASKS_HINTS, may now
|
||||
be set prior to starting named. Divide your number of zones by 200
|
||||
to find the recommended setting for this environment variable (i.e.,
|
||||
if you have 200000 zones, set BIND9_ZONE_TASKS_HINTS to 1000 before
|
||||
starting named). [RT #25084]
|
||||
</li></ul></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3359538"></a>Known issues in this release</h2></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul type="disc"><li>
|
||||
None
|
||||
</li></ul></div>
|
||||
</div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3359961"></a>Thank You</h2></div></div></div>
|
||||
|
||||
<p>
|
||||
Thank you to everyone who assisted us in making this release possible.
|
||||
If you would like to contribute to ISC to assist us in continuing to make
|
||||
quality open source software, please visit our donations page at
|
||||
<a href="http://www.isc.org/supportisc" target="_top">http://www.isc.org/supportisc</a>.
|
||||
</p>
|
||||
</div>
|
||||
</div></body></html>
|
||||
Binary file not shown.
@@ -0,0 +1,229 @@
|
||||
__________________________________________________________________
|
||||
|
||||
Introduction
|
||||
|
||||
BIND 9.7.4 is the current production release of BIND 9.7.
|
||||
|
||||
This document summarizes changes from BIND 9.7.3 to BIND 9.7.4. Please
|
||||
see the CHANGES file in the source code release for a complete list of
|
||||
all changes.
|
||||
|
||||
Download
|
||||
|
||||
The latest version of BIND 9 software can always be found on our web
|
||||
site at http://www.isc.org/downloads/all. There you will find
|
||||
additional information about each release, source code, and some
|
||||
pre-compiled versions for certain operating systems.
|
||||
|
||||
Support
|
||||
|
||||
Product support information is available on
|
||||
http://www.isc.org/services/support for paid support options. Free
|
||||
support is provided by our user community via a mailing list.
|
||||
Information on all public email lists is available at
|
||||
https://lists.isc.org/mailman/listinfo.
|
||||
|
||||
New Features
|
||||
|
||||
9.7.4
|
||||
|
||||
* A new test has been added to check the apex NSEC3 records after
|
||||
DNSKEY records have been added via dynamic update. [RT #23229]
|
||||
* Added a tool able to generate malformed packets to allow testing of
|
||||
how named handles them. [RT #24096]
|
||||
|
||||
Security Fixes
|
||||
|
||||
9.7.4
|
||||
|
||||
* named, set up to be a caching resolver, is vulnerable to a user
|
||||
querying a domain with very large resource record sets (RRSets)
|
||||
when trying to negatively cache the response. Due to an off-by-one
|
||||
error, caching the response could cause named to crash. [RT #24650]
|
||||
[CVE-2011-1910]
|
||||
* Change #2912 (see CHANGES) exposed a latent bug in the DNS message
|
||||
processing code that could allow certain UPDATE requests to crash
|
||||
named. [RT #24777] [CVE-2011-2464]
|
||||
|
||||
Feature Changes
|
||||
|
||||
9.7.4
|
||||
|
||||
* Merged in the NetBSD ATF test framework (currently version 0.12)
|
||||
for development of future unit tests. Use configure --with-atf to
|
||||
build ATF internally or configure --with-atf=prefix to use an
|
||||
external copy. [RT #23209]
|
||||
* Added more verbose error reporting from DLZ LDAP. [RT #23402]
|
||||
* Replaced compile time constant with STDTIME_ON_32BITS. [RT #23587]
|
||||
|
||||
Bug Fixes
|
||||
|
||||
9.7.4
|
||||
|
||||
* During RFC5011 processing some journal write errors were not
|
||||
detected. This could lead to managed-keys changes being committed
|
||||
but not recorded in the journal files, causing potential
|
||||
inconsistencies during later processing. [RT #20256]
|
||||
A potential NULL pointer deference in the DNS64 code could cause
|
||||
named to terminate unexpectedly. [RT #20256]
|
||||
A state variable relating to DNSSEC could fail to be set during
|
||||
some infrequently-executed code paths, allowing it to be used
|
||||
whilst in an unitialized state during cache updates, with
|
||||
unpredictable results. [RT #20256]
|
||||
A potential NULL pointer deference in DNSSEC signing code could
|
||||
cause named to terminate unexpectedly [RT #20256]
|
||||
Several cosmetic code changes were made to silence warnings
|
||||
generated by a static code analysis tool. [RT #20256]
|
||||
* When using the -x (sign with only KSK) option on dnssec-signzone,
|
||||
it could incorrectly count the number of ZSKs in the zone. (And in
|
||||
9.9.0, some code cleanup and improved warning messages). [RT
|
||||
#20852]
|
||||
* When using _builtin in named.conf, named.conf changes were not
|
||||
found when reloading the config file. Now checks _builtin zone
|
||||
arguments to see if the zone is re-usable or not. [RT #21914]
|
||||
* After an "rndc reconfig", the refresh timer for managed-keys is
|
||||
ignored, resulting in managed-keys not being refreshed until named
|
||||
is restarted. [RT #22296]
|
||||
* Running dnssec-settime -f on an old-style key will now force the
|
||||
key to be rewritten to the new key format even if no other change
|
||||
has been specified, using "-P now -A now" as default values. [RT
|
||||
#22474]
|
||||
* After an external code review, a code cleanup was done. [RT #22521]
|
||||
* Cause named to terminate at startup or rndc reconfig reload to
|
||||
fail, if a log file specified in the conf file isn't a plain file.
|
||||
(RT #22771]
|
||||
* named now forces the ADB cache time for glue related data to zero
|
||||
instead of relying on TTL. This corrects problematic behavior in
|
||||
cases where a server was authoritative for the A record of a
|
||||
nameserver for a delegated zone and was queried to recursively
|
||||
resolve records within that zone. [RT #22842]
|
||||
* When a validating resolver got a NODATA response for DNSKEY, it was
|
||||
not caching the NODATA. Fixed and test added. [RT #22908]
|
||||
* Fixed a bug in which zone keys that were published and but not
|
||||
immediately activated, automatic signing could fail to trigger. [RT
|
||||
#22911]
|
||||
* Fixed a possible deadlock due to zone re-signing. [RT #22964]
|
||||
* Fixed precedence order bug with NS and DNAME records if both are
|
||||
present. (Also fixed timing of autosign test in 9.7+) [RT #23035]
|
||||
* When a DNSSEC signed dynamic zone's signatures need to be
|
||||
refreshed, named would first delete the old signatures in the zone.
|
||||
If a private key of the same algorithm isn't available to named,
|
||||
the signing would fail but the old signatures would already be
|
||||
deleted. named now checks if it can access the private key before
|
||||
deleting the old signatures and leaves the old signature if no
|
||||
private key is found. [RT #23136]
|
||||
* When using auto-dnssec and updating DNSKEY records, named did
|
||||
correctly update the zone. [RT #23232]
|
||||
* When using "auto-dnssec maintain" and rolling to a new key, a
|
||||
private-type record (only used internally by named) could be
|
||||
created and not marked as complete. [RT #23253]
|
||||
* If a slave initiates a TSIG signed AXFR from the master and the
|
||||
master fails to correctly TSIG sign the final message, the slave
|
||||
would be left with the zone in an unclean state. named detected
|
||||
this error too late and named would crash with an INSIST. The order
|
||||
dependancy has been fixed. [RT #23254]
|
||||
* Fixed last autosign test report. [RT #23256]
|
||||
* named didn't save gid at startup and later assumed gid 0. named now
|
||||
saves/restores the gid when creating creating named.pid at startup.
|
||||
[RT #23290]
|
||||
* If the server has an IPv6 address but does not have IPv6
|
||||
connectivity to the internet, dig +trace could fail attempting to
|
||||
use IPv6 addresses. [RT #23297]
|
||||
* If named is configured with managed zones, the managed key maint
|
||||
timer can exercise a race condition that can crash the server. [RT
|
||||
#23303]
|
||||
* Changing TTL did not cause dnssec-signzone to generate new
|
||||
signatures. [RT #23330]
|
||||
* Have the validating resolver use RRSIG original TTL to compute
|
||||
validated RRset and RRSIG TTL. [RT #23332]
|
||||
* In "make test" bin/tests/resolver, hold the socket manager lock
|
||||
while freeing the socket. [RT #23333]
|
||||
* If named encountered a CNAME instead of a DS record when walking
|
||||
the chain of trust down from the trust anchor, it incorrectly
|
||||
stopped validating. [RT #23338]
|
||||
* RRSIG records could have time stamps too far in the future. [RT
|
||||
#23356]
|
||||
* named stores cached data in an in-memory database and keeps track
|
||||
of how recently the data is used with a heap. The heap is stored
|
||||
within the cache's memory space. Under a sustained high query load
|
||||
and with a small cache size, this could lead to the heap exhausting
|
||||
the cache space. This would result in cache misses and SERVFAILs,
|
||||
with named never releasing the cache memory the heap used up and
|
||||
never recovering. This fix removes the heap into its own memory
|
||||
space, preventing the heap from exhausting the cache space and
|
||||
allowing named to recover gracefully when the high query load
|
||||
abates. [RT #23371]
|
||||
* If "dnssec-lookaside auto" is turned on, named pulled in all keys
|
||||
defined in bind.keys, including the root key. named now only loads
|
||||
the desired keys. [RT #23372]
|
||||
* Fully separated key management on a per view basis. [RT #23419]
|
||||
* If running on a powerpc CPU and with atomic operations enabled,
|
||||
named could lock up. Added sync instructions to the end of atomic
|
||||
operations. [RT #23469]
|
||||
* If OpenSSL was built without engine support, named would have
|
||||
compile errors and fail to build. [RT #23473]
|
||||
* "rndc secroots" would abort on the first error and so could miss
|
||||
remaining views. [RT #23488]
|
||||
* Handle isc_event_allocate failures in t_tasks test. [RT #23572]
|
||||
* ixfr-from-differences {master|slave}; failed to select the
|
||||
master/slave zones, resulting in on diff/journal file being
|
||||
created. [RT #23580]
|
||||
* If a DNAME substitution failed, named returned NOERROR. The correct
|
||||
response should be YXDOMAIN. [RT #23591]
|
||||
* dns_dnssec_findzonekeys{2} used a inconsistant timestamp when
|
||||
determining which keys are active. This could result in some RRsets
|
||||
not being signed/re-signed. [RT #23642]
|
||||
* Remove bin/tests/system/logfileconfig/ns1/named.conf and add
|
||||
setup.sh in order to resolve changing named.conf issue. [RT #23687]
|
||||
* NOTIFY messages were not being sent when generating a NSEC3 chain
|
||||
incrementally. [RT #23702]
|
||||
* Zones using automatic key maintenance could fail to check the key
|
||||
repository for updates. named now checks once per hour and the
|
||||
automatic check bug has been fixed. [RT #23744]
|
||||
* Signatures for records at the zone apex could go stale due to an
|
||||
incorrect timer setting. [RT #23769]
|
||||
* The autosign tests attempted to open ports within reserved ranges.
|
||||
Test now avoids those ports. [RT #23957]
|
||||
* named, acting as authoritative server for DLZ zones, was not
|
||||
correctly setting the authoritative (AA) bit. [RT #24146]
|
||||
* Clean up some cross-compiling issues and added two undocumented
|
||||
configure options, --with-gost and --with-rlimtype, to allow
|
||||
over-riding default settings (gost=no and rlimtype="long int") when
|
||||
cross-compiling. [RT #24367]
|
||||
* When trying sign with NSEC3, if dnssec-signzone couldn't find the
|
||||
KSK, it would give an incorrect error "NSEC3 iterations too big for
|
||||
weakest DNSKEY strength" rather than the correct "failed to find
|
||||
keys at the zone apex: not found" [RT #24369]
|
||||
* Improved consistency checks for dnssec-enable and
|
||||
dnssec-validation, added test cases to the checkconf system test.
|
||||
[RT #24398]
|
||||
* RT #23136 fixed a problem where named would delete old signatures
|
||||
even when the private key wasn't available to re-sign the zone,
|
||||
resulting in a zone with missing signatures. This fix (CHANGES
|
||||
3114) did not completely fix all issues. [RT #24577]
|
||||
* nsupdate could dump core on shutdown when using SIG(0) keys. [RT
|
||||
#24604]
|
||||
* Named could fail to validate zones list in a DLV that validated
|
||||
insecure without using DLV and had DS records in the parent zone.
|
||||
[RT #24631]
|
||||
* A bug in FreeBSD kernels causes IPv6 UDP responses greater than
|
||||
1280 bytes to not fragment as they should. Until there is a kernel
|
||||
fix, named will work around this by setting IPV6_USE_MIN_MTU on a
|
||||
per packet basis. [RT #24950]
|
||||
* To avoid excessive startup time for configurations with large
|
||||
numbers of zones, an environment variable, BIND9_ZONE_TASKS_HINTS,
|
||||
may now be set prior to starting named. Divide your number of zones
|
||||
by 200 to find the recommended setting for this environment
|
||||
variable (i.e., if you have 200000 zones, set
|
||||
BIND9_ZONE_TASKS_HINTS to 1000 before starting named). [RT #25084]
|
||||
|
||||
Known issues in this release
|
||||
|
||||
* None
|
||||
|
||||
Thank You
|
||||
|
||||
Thank you to everyone who assisted us in making this release possible.
|
||||
If you would like to contribute to ISC to assist us in continuing to
|
||||
make quality open source software, please visit our donations page at
|
||||
http://www.isc.org/supportisc.
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007, 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2009-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named-checkconf.c,v 1.51.4.3 2010/09/07 01:52:22 marka Exp $ */
|
||||
/* $Id: named-checkconf.c,v 1.51.4.5 2011/03/12 04:58:23 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -190,7 +190,7 @@ configure_zone(const char *vclass, const char *view,
|
||||
if (obj != NULL)
|
||||
maps[i++] = obj;
|
||||
}
|
||||
maps[i++] = NULL;
|
||||
maps[i] = NULL;
|
||||
|
||||
cfg_map_get(zoptions, "type", &typeobj);
|
||||
if (typeobj == NULL)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2009, 2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: ddns-confgen.c,v 1.9 2009/09/29 15:06:05 fdupont Exp $ */
|
||||
/* $Id: ddns-confgen.c,v 1.9.66.2 2011/03/12 04:58:23 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -160,6 +160,7 @@ main(int argc, char **argv) {
|
||||
|
||||
argc -= isc_commandline_index;
|
||||
argv += isc_commandline_index;
|
||||
POST(argv);
|
||||
|
||||
if (self_domain != NULL && zone != NULL)
|
||||
usage(1); /* -s and -z cannot coexist */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2007-2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001, 2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: rndc-confgen.c,v 1.5 2009/09/29 15:06:05 fdupont Exp $ */
|
||||
/* $Id: rndc-confgen.c,v 1.5.66.2 2011/03/12 04:58:23 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -200,6 +200,7 @@ main(int argc, char **argv) {
|
||||
|
||||
argc -= isc_commandline_index;
|
||||
argv += isc_commandline_index;
|
||||
POST(argv);
|
||||
|
||||
if (argc > 0)
|
||||
usage(1);
|
||||
|
||||
+3
-32
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dig.c,v 1.233.62.3 2010/05/13 00:42:26 marka Exp $ */
|
||||
/* $Id: dig.c,v 1.233.62.6 2011/03/11 07:11:51 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -44,8 +44,6 @@
|
||||
#include <dns/result.h>
|
||||
#include <dns/tsig.h>
|
||||
|
||||
#include <bind9/getaddresses.h>
|
||||
|
||||
#include <dig/dig.h>
|
||||
|
||||
#define ADD_STRING(b, s) { \
|
||||
@@ -474,8 +472,6 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
if (!query->lookup->comments)
|
||||
flags |= DNS_MESSAGETEXTFLAG_NOCOMMENTS;
|
||||
|
||||
result = ISC_R_SUCCESS;
|
||||
|
||||
result = isc_buffer_allocate(mctx, &buf, len);
|
||||
check_result(result, "isc_buffer_allocate");
|
||||
|
||||
@@ -1428,30 +1424,6 @@ preparse_args(int argc, char **argv) {
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
getaddresses(dig_lookup_t *lookup, const char *host) {
|
||||
isc_result_t result;
|
||||
isc_sockaddr_t sockaddrs[DIG_MAX_ADDRESSES];
|
||||
isc_netaddr_t netaddr;
|
||||
int count, i;
|
||||
dig_server_t *srv;
|
||||
char tmp[ISC_NETADDR_FORMATSIZE];
|
||||
|
||||
result = bind9_getaddresses(host, 0, sockaddrs,
|
||||
DIG_MAX_ADDRESSES, &count);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("couldn't get address for '%s': %s",
|
||||
host, isc_result_totext(result));
|
||||
|
||||
for (i = 0; i < count; i++) {
|
||||
isc_netaddr_fromsockaddr(&netaddr, &sockaddrs[i]);
|
||||
isc_netaddr_format(&netaddr, tmp, sizeof(tmp));
|
||||
srv = make_server(tmp, host);
|
||||
ISC_LIST_APPEND(lookup->my_server_list, srv, link);
|
||||
}
|
||||
addresscount = count;
|
||||
}
|
||||
|
||||
static void
|
||||
parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
int argc, char **argv) {
|
||||
@@ -1546,7 +1518,7 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
if (strncmp(rv[0], "%", 1) == 0)
|
||||
break;
|
||||
if (strncmp(rv[0], "@", 1) == 0) {
|
||||
getaddresses(lookup, &rv[0][1]);
|
||||
addresscount = getaddresses(lookup, &rv[0][1]);
|
||||
} else if (rv[0][0] == '+') {
|
||||
plus_option(&rv[0][1], is_batchfile,
|
||||
lookup);
|
||||
@@ -1583,7 +1555,6 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
(isc_textregion_t *)&tr);
|
||||
if (result == ISC_R_SUCCESS &&
|
||||
rdtype == dns_rdatatype_ixfr) {
|
||||
result = DNS_R_UNKNOWN;
|
||||
fprintf(stderr, ";; Warning, "
|
||||
"ixfr requires a "
|
||||
"serial number\n");
|
||||
|
||||
+44
-15
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dighost.c,v 1.328.22.6 2010/12/09 01:05:27 marka Exp $ */
|
||||
/* $Id: dighost.c,v 1.328.22.10 2011/03/11 07:11:51 marka Exp $ */
|
||||
|
||||
/*! \file
|
||||
* \note
|
||||
@@ -566,10 +566,8 @@ make_server(const char *servname, const char *userarg) {
|
||||
if (srv == NULL)
|
||||
fatal("memory allocation failure in %s:%d",
|
||||
__FILE__, __LINE__);
|
||||
strncpy(srv->servername, servname, MXNAME);
|
||||
strncpy(srv->userarg, userarg, MXNAME);
|
||||
srv->servername[MXNAME-1] = 0;
|
||||
srv->userarg[MXNAME-1] = 0;
|
||||
strlcpy(srv->servername, servname, MXNAME);
|
||||
strlcpy(srv->userarg, userarg, MXNAME);
|
||||
ISC_LINK_INIT(srv, link);
|
||||
return (srv);
|
||||
}
|
||||
@@ -1767,8 +1765,7 @@ followup_lookup(dns_message_t *msg, dig_query_t *query, dns_section_t section)
|
||||
dns_rdata_freestruct(&ns);
|
||||
|
||||
/* Initialize lookup if we've not yet */
|
||||
debug("found NS %d %s", numLookups, namestr);
|
||||
numLookups++;
|
||||
debug("found NS %s", namestr);
|
||||
if (!success) {
|
||||
success = ISC_TRUE;
|
||||
lookup_counter++;
|
||||
@@ -1790,9 +1787,8 @@ followup_lookup(dns_message_t *msg, dig_query_t *query, dns_section_t section)
|
||||
domain = dns_fixedname_name(&lookup->fdomain);
|
||||
dns_name_copy(name, domain, NULL);
|
||||
}
|
||||
srv = make_server(namestr, namestr);
|
||||
debug("adding server %s", srv->servername);
|
||||
ISC_LIST_APPEND(lookup->my_server_list, srv, link);
|
||||
debug("adding server %s", namestr);
|
||||
numLookups += getaddresses(lookup, namestr);
|
||||
dns_rdata_reset(&rdata);
|
||||
}
|
||||
}
|
||||
@@ -1808,17 +1804,25 @@ followup_lookup(dns_message_t *msg, dig_query_t *query, dns_section_t section)
|
||||
if (numLookups > 1) {
|
||||
isc_uint32_t i, j;
|
||||
dig_serverlist_t my_server_list;
|
||||
dig_server_t *next;
|
||||
|
||||
ISC_LIST_INIT(my_server_list);
|
||||
|
||||
for (i = numLookups; i > 0; i--) {
|
||||
i = numLookups;
|
||||
for (srv = ISC_LIST_HEAD(lookup->my_server_list);
|
||||
srv != NULL;
|
||||
srv = ISC_LIST_HEAD(lookup->my_server_list)) {
|
||||
INSIST(i > 0);
|
||||
isc_random_get(&j);
|
||||
j %= i;
|
||||
srv = ISC_LIST_HEAD(lookup->my_server_list);
|
||||
while (j-- > 0)
|
||||
srv = ISC_LIST_NEXT(srv, link);
|
||||
next = ISC_LIST_NEXT(srv, link);
|
||||
while (j-- > 0 && next != NULL) {
|
||||
srv = next;
|
||||
next = ISC_LIST_NEXT(srv, link);
|
||||
}
|
||||
ISC_LIST_DEQUEUE(lookup->my_server_list, srv, link);
|
||||
ISC_LIST_APPEND(my_server_list, srv, link);
|
||||
i--;
|
||||
}
|
||||
ISC_LIST_APPENDLIST(lookup->my_server_list,
|
||||
my_server_list, link);
|
||||
@@ -3541,6 +3545,31 @@ get_address(char *host, in_port_t port, isc_sockaddr_t *sockaddr) {
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
int
|
||||
getaddresses(dig_lookup_t *lookup, const char *host) {
|
||||
isc_result_t result;
|
||||
isc_sockaddr_t sockaddrs[DIG_MAX_ADDRESSES];
|
||||
isc_netaddr_t netaddr;
|
||||
int count, i;
|
||||
dig_server_t *srv;
|
||||
char tmp[ISC_NETADDR_FORMATSIZE];
|
||||
|
||||
result = bind9_getaddresses(host, 0, sockaddrs,
|
||||
DIG_MAX_ADDRESSES, &count);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("couldn't get address for '%s': %s",
|
||||
host, isc_result_totext(result));
|
||||
|
||||
for (i = 0; i < count; i++) {
|
||||
isc_netaddr_fromsockaddr(&netaddr, &sockaddrs[i]);
|
||||
isc_netaddr_format(&netaddr, tmp, sizeof(tmp));
|
||||
srv = make_server(tmp, host);
|
||||
ISC_LIST_APPEND(lookup->my_server_list, srv, link);
|
||||
}
|
||||
|
||||
return count;
|
||||
}
|
||||
|
||||
/*%
|
||||
* Initiate either a TCP or UDP lookup
|
||||
*/
|
||||
|
||||
+5
-4
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007, 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2009-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: host.c,v 1.120.66.2 2010/10/19 23:46:47 tbox Exp $ */
|
||||
/* $Id: host.c,v 1.120.66.5 2011/03/11 07:11:51 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -521,6 +521,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
if ((msg->flags & DNS_MESSAGEFLAG_CD) != 0) {
|
||||
printf("%scd", did_flag ? " " : "");
|
||||
did_flag = ISC_TRUE;
|
||||
POST(did_flag);
|
||||
}
|
||||
printf("; QUERY: %u, ANSWER: %u, "
|
||||
"AUTHORITY: %u, ADDITIONAL: %u\n",
|
||||
@@ -824,8 +825,8 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
|
||||
if (isc_commandline_index >= argc)
|
||||
show_usage();
|
||||
|
||||
strncpy(hostname, argv[isc_commandline_index], sizeof(hostname));
|
||||
hostname[sizeof(hostname)-1]=0;
|
||||
strlcpy(hostname, argv[isc_commandline_index], sizeof(hostname));
|
||||
|
||||
if (argc > isc_commandline_index + 1) {
|
||||
set_nameserver(argv[isc_commandline_index+1]);
|
||||
debug("server is %s", argv[isc_commandline_index+1]);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dig.h,v 1.111 2009/09/29 15:06:06 fdupont Exp $ */
|
||||
/* $Id: dig.h,v 1.111.66.2 2011/02/28 01:19:26 tbox Exp $ */
|
||||
|
||||
#ifndef DIG_H
|
||||
#define DIG_H
|
||||
@@ -288,6 +288,9 @@ extern int idnoptions;
|
||||
isc_result_t
|
||||
get_address(char *host, in_port_t port, isc_sockaddr_t *sockaddr);
|
||||
|
||||
int
|
||||
getaddresses(dig_lookup_t *lookup, const char *host);
|
||||
|
||||
isc_result_t
|
||||
get_reverse(char *reverse, size_t len, char *value, isc_boolean_t ip6_int,
|
||||
isc_boolean_t strict);
|
||||
|
||||
+14
-20
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: nslookup.c,v 1.124 2009/10/20 01:04:03 marka Exp $ */
|
||||
/* $Id: nslookup.c,v 1.124.40.2 2011/02/21 23:46:37 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -535,12 +535,6 @@ testclass(char *typetext) {
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
safecpy(char *dest, char *src, int size) {
|
||||
strncpy(dest, src, size);
|
||||
dest[size-1] = 0;
|
||||
}
|
||||
|
||||
static void
|
||||
set_port(const char *value) {
|
||||
isc_uint32_t n;
|
||||
@@ -571,34 +565,34 @@ setoption(char *opt) {
|
||||
show_settings(ISC_TRUE, ISC_FALSE);
|
||||
} else if (strncasecmp(opt, "class=", 6) == 0) {
|
||||
if (testclass(&opt[6]))
|
||||
safecpy(defclass, &opt[6], sizeof(defclass));
|
||||
strlcpy(defclass, &opt[6], sizeof(defclass));
|
||||
} else if (strncasecmp(opt, "cl=", 3) == 0) {
|
||||
if (testclass(&opt[3]))
|
||||
safecpy(defclass, &opt[3], sizeof(defclass));
|
||||
strlcpy(defclass, &opt[3], sizeof(defclass));
|
||||
} else if (strncasecmp(opt, "type=", 5) == 0) {
|
||||
if (testtype(&opt[5]))
|
||||
safecpy(deftype, &opt[5], sizeof(deftype));
|
||||
strlcpy(deftype, &opt[5], sizeof(deftype));
|
||||
} else if (strncasecmp(opt, "ty=", 3) == 0) {
|
||||
if (testtype(&opt[3]))
|
||||
safecpy(deftype, &opt[3], sizeof(deftype));
|
||||
strlcpy(deftype, &opt[3], sizeof(deftype));
|
||||
} else if (strncasecmp(opt, "querytype=", 10) == 0) {
|
||||
if (testtype(&opt[10]))
|
||||
safecpy(deftype, &opt[10], sizeof(deftype));
|
||||
strlcpy(deftype, &opt[10], sizeof(deftype));
|
||||
} else if (strncasecmp(opt, "query=", 6) == 0) {
|
||||
if (testtype(&opt[6]))
|
||||
safecpy(deftype, &opt[6], sizeof(deftype));
|
||||
strlcpy(deftype, &opt[6], sizeof(deftype));
|
||||
} else if (strncasecmp(opt, "qu=", 3) == 0) {
|
||||
if (testtype(&opt[3]))
|
||||
safecpy(deftype, &opt[3], sizeof(deftype));
|
||||
strlcpy(deftype, &opt[3], sizeof(deftype));
|
||||
} else if (strncasecmp(opt, "q=", 2) == 0) {
|
||||
if (testtype(&opt[2]))
|
||||
safecpy(deftype, &opt[2], sizeof(deftype));
|
||||
strlcpy(deftype, &opt[2], sizeof(deftype));
|
||||
} else if (strncasecmp(opt, "domain=", 7) == 0) {
|
||||
safecpy(domainopt, &opt[7], sizeof(domainopt));
|
||||
strlcpy(domainopt, &opt[7], sizeof(domainopt));
|
||||
set_search_domain(domainopt);
|
||||
usesearch = ISC_TRUE;
|
||||
} else if (strncasecmp(opt, "do=", 3) == 0) {
|
||||
safecpy(domainopt, &opt[3], sizeof(domainopt));
|
||||
strlcpy(domainopt, &opt[3], sizeof(domainopt));
|
||||
set_search_domain(domainopt);
|
||||
usesearch = ISC_TRUE;
|
||||
} else if (strncasecmp(opt, "port=", 5) == 0) {
|
||||
@@ -677,11 +671,11 @@ addlookup(char *opt) {
|
||||
lookup = make_empty_lookup();
|
||||
if (get_reverse(store, sizeof(store), opt, lookup->ip6_int, ISC_TRUE)
|
||||
== ISC_R_SUCCESS) {
|
||||
safecpy(lookup->textname, store, sizeof(lookup->textname));
|
||||
strlcpy(lookup->textname, store, sizeof(lookup->textname));
|
||||
lookup->rdtype = dns_rdatatype_ptr;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
} else {
|
||||
safecpy(lookup->textname, opt, sizeof(lookup->textname));
|
||||
strlcpy(lookup->textname, opt, sizeof(lookup->textname));
|
||||
lookup->rdtype = rdtype;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2007-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2007-2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-keyfromlabel.c,v 1.29.8.2 2010/01/19 23:48:12 tbox Exp $ */
|
||||
/* $Id: dnssec-keyfromlabel.c,v 1.29.8.4 2011/03/12 04:58:24 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -517,6 +517,9 @@ main(int argc, char **argv) {
|
||||
{
|
||||
isc_buffer_clear(&buf);
|
||||
ret = dst_key_buildfilename(key, 0, directory, &buf);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fatal("dst_key_buildfilename returned: %s\n",
|
||||
isc_result_totext(ret));
|
||||
if (exact)
|
||||
fatal("%s: %s already exists\n", program, filename);
|
||||
|
||||
@@ -541,6 +544,9 @@ main(int argc, char **argv) {
|
||||
|
||||
isc_buffer_clear(&buf);
|
||||
ret = dst_key_buildfilename(key, 0, NULL, &buf);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fatal("dst_key_buildfilename returned: %s\n",
|
||||
isc_result_totext(ret));
|
||||
printf("%s\n", filename);
|
||||
dst_key_free(&key);
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Portions Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -29,7 +29,7 @@
|
||||
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-keygen.c,v 1.108.8.6 2010/08/16 23:46:30 tbox Exp $ */
|
||||
/* $Id: dnssec-keygen.c,v 1.108.8.8 2011/03/12 04:58:24 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -969,12 +969,15 @@ main(int argc, char **argv) {
|
||||
|
||||
if (verbose > 0) {
|
||||
isc_buffer_clear(&buf);
|
||||
dst_key_buildfilename(key, 0, directory, &buf);
|
||||
fprintf(stderr,
|
||||
"%s: %s already exists, or might "
|
||||
"collide with another key upon "
|
||||
"revokation. Generating a new key\n",
|
||||
program, filename);
|
||||
ret = dst_key_buildfilename(key, 0,
|
||||
directory, &buf);
|
||||
if (ret == ISC_R_SUCCESS)
|
||||
fprintf(stderr,
|
||||
"%s: %s already exists, or "
|
||||
"might collide with another "
|
||||
"key upon revokation. "
|
||||
"Generating a new key\n",
|
||||
program, filename);
|
||||
}
|
||||
|
||||
dst_key_free(&key);
|
||||
@@ -995,6 +998,9 @@ main(int argc, char **argv) {
|
||||
|
||||
isc_buffer_clear(&buf);
|
||||
ret = dst_key_buildfilename(key, 0, NULL, &buf);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fatal("dst_key_buildfilename returned: %s\n",
|
||||
isc_result_totext(ret));
|
||||
printf("%s\n", filename);
|
||||
dst_key_free(&key);
|
||||
if (prevkey != NULL)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2009-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and/or distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -12,7 +12,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: dnssec-settime.8,v 1.9.24.6 2010/08/17 00:08:22 tbox Exp $
|
||||
.\" $Id: dnssec-settime.8,v 1.9.24.7 2011/03/22 02:10:54 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -59,7 +59,7 @@ and
|
||||
.RS 4
|
||||
Force an update of an old\-format key with no metadata fields. Without this option,
|
||||
\fBdnssec\-settime\fR
|
||||
will fail when attempting to update a legacy key. With this option, the key will be recreated in the new format, but with the original key data retained. The key's creation date will be set to the present time.
|
||||
will fail when attempting to update a legacy key. With this option, the key will be recreated in the new format, but with the original key data retained. The key's creation date will be set to the present time. If no other values are specified, then the key's publication and activation dates will also be set to the present time.
|
||||
.RE
|
||||
.PP
|
||||
\-K \fIdirectory\fR
|
||||
@@ -162,5 +162,5 @@ RFC 5011.
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2009\-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2009-2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-settime.c,v 1.19.34.9 2010/12/19 07:27:23 each Exp $ */
|
||||
/* $Id: dnssec-settime.c,v 1.19.34.12 2011/06/02 20:23:48 each Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -81,8 +81,7 @@ usage(void) {
|
||||
"deletion date\n");
|
||||
fprintf(stderr, "Printing options:\n");
|
||||
fprintf(stderr, " -p C/P/A/R/I/D/all: print a particular time "
|
||||
"value or values "
|
||||
"[default: all]\n");
|
||||
"value or values\n");
|
||||
fprintf(stderr, " -u: print times in unix epoch "
|
||||
"format\n");
|
||||
fprintf(stderr, "Output:\n");
|
||||
@@ -513,6 +512,16 @@ main(int argc, char **argv) {
|
||||
else if (unsetdel)
|
||||
dst_key_unsettime(key, DST_TIME_DELETE);
|
||||
|
||||
/*
|
||||
* No metadata changes were made but we're forcing an upgrade
|
||||
* to the new format anyway: use "-P now -A now" as the default
|
||||
*/
|
||||
if (force && !changed) {
|
||||
dst_key_settime(key, DST_TIME_PUBLISH, now);
|
||||
dst_key_settime(key, DST_TIME_ACTIVATE, now);
|
||||
changed = ISC_TRUE;
|
||||
}
|
||||
|
||||
/*
|
||||
* Print out time values, if -p was used.
|
||||
*/
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2009-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -17,7 +17,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: dnssec-settime.docbook,v 1.7.24.4 2010/08/16 22:27:16 marka Exp $ -->
|
||||
<!-- $Id: dnssec-settime.docbook,v 1.7.24.6 2011/03/21 23:46:28 tbox Exp $ -->
|
||||
<refentry id="man.dnssec-settime">
|
||||
<refentryinfo>
|
||||
<date>July 15, 2009</date>
|
||||
@@ -38,6 +38,7 @@
|
||||
<copyright>
|
||||
<year>2009</year>
|
||||
<year>2010</year>
|
||||
<year>2011</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
</docinfo>
|
||||
@@ -98,7 +99,9 @@
|
||||
fail when attempting to update a legacy key. With this option,
|
||||
the key will be recreated in the new format, but with the
|
||||
original key data retained. The key's creation date will be
|
||||
set to the present time.
|
||||
set to the present time. If no other values are specified,
|
||||
then the key's publication and activation dates will also
|
||||
be set to the present time.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2009-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,7 +13,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: dnssec-settime.html,v 1.9.24.6 2010/08/17 00:08:21 tbox Exp $ -->
|
||||
<!-- $Id: dnssec-settime.html,v 1.9.24.7 2011/03/22 02:10:55 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -31,7 +31,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-settime</code> [<code class="option">-f</code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-A <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-R <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-I <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-h</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] {keyfile}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543419"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543422"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">dnssec-settime</strong></span>
|
||||
reads a DNSSEC private key file and sets the key timing metadata
|
||||
as specified by the <code class="option">-P</code>, <code class="option">-A</code>,
|
||||
@@ -56,7 +56,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543467"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543470"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-f</span></dt>
|
||||
<dd><p>
|
||||
@@ -65,7 +65,9 @@
|
||||
fail when attempting to update a legacy key. With this option,
|
||||
the key will be recreated in the new format, but with the
|
||||
original key data retained. The key's creation date will be
|
||||
set to the present time.
|
||||
set to the present time. If no other values are specified,
|
||||
then the key's publication and activation dates will also
|
||||
be set to the present time.
|
||||
</p></dd>
|
||||
<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
|
||||
<dd><p>
|
||||
@@ -87,7 +89,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543559"></a><h2>TIMING OPTIONS</h2>
|
||||
<a name="id2543562"></a><h2>TIMING OPTIONS</h2>
|
||||
<p>
|
||||
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
|
||||
If the argument begins with a '+' or '-', it is interpreted as
|
||||
@@ -166,7 +168,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543698"></a><h2>PRINTING OPTIONS</h2>
|
||||
<a name="id2543701"></a><h2>PRINTING OPTIONS</h2>
|
||||
<p>
|
||||
<span><strong class="command">dnssec-settime</strong></span> can also be used to print the
|
||||
timing metadata associated with a key.
|
||||
@@ -192,7 +194,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543912"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2543915"></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>,
|
||||
@@ -200,7 +202,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543945"></a><h2>AUTHOR</h2>
|
||||
<a name="id2543948"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Portions Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -29,7 +29,7 @@
|
||||
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-signzone.c,v 1.258.4.4 2010/06/03 23:49:23 tbox Exp $ */
|
||||
/* $Id: dnssec-signzone.c,v 1.258.4.11 2011/05/07 00:24:13 each Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -338,7 +338,7 @@ keythatsigned(dns_rdata_rrsig_t *rrsig) {
|
||||
} else {
|
||||
dns_dnsseckey_create(mctx, &pubkey, &key);
|
||||
}
|
||||
key->force_publish = ISC_TRUE;
|
||||
key->force_publish = ISC_FALSE;
|
||||
key->force_sign = ISC_FALSE;
|
||||
ISC_LIST_APPEND(keylist, key, link);
|
||||
|
||||
@@ -486,32 +486,32 @@ signset(dns_diff_t *del, dns_diff_t *add, dns_dbnode_t *node, dns_name_t *name,
|
||||
if (!expired)
|
||||
keep = ISC_TRUE;
|
||||
} else if (issigningkey(key)) {
|
||||
if (!expired && setverifies(name, set, key->key,
|
||||
&sigrdata)) {
|
||||
if (!expired && rrsig.originalttl == set->ttl &&
|
||||
setverifies(name, set, key->key, &sigrdata)) {
|
||||
vbprintf(2, "\trrsig by %s retained\n", sigstr);
|
||||
keep = ISC_TRUE;
|
||||
wassignedby[key->index] = ISC_TRUE;
|
||||
nowsignedby[key->index] = ISC_TRUE;
|
||||
} else {
|
||||
vbprintf(2, "\trrsig by %s dropped - %s\n",
|
||||
sigstr,
|
||||
expired ? "expired" :
|
||||
"failed to verify");
|
||||
sigstr, expired ? "expired" :
|
||||
rrsig.originalttl != set->ttl ?
|
||||
"ttl change" : "failed to verify");
|
||||
wassignedby[key->index] = ISC_TRUE;
|
||||
resign = ISC_TRUE;
|
||||
}
|
||||
} else if (iszonekey(key)) {
|
||||
if (!expired && setverifies(name, set, key->key,
|
||||
&sigrdata)) {
|
||||
if (!expired && rrsig.originalttl == set->ttl &&
|
||||
setverifies(name, set, key->key, &sigrdata)) {
|
||||
vbprintf(2, "\trrsig by %s retained\n", sigstr);
|
||||
keep = ISC_TRUE;
|
||||
wassignedby[key->index] = ISC_TRUE;
|
||||
nowsignedby[key->index] = ISC_TRUE;
|
||||
} else {
|
||||
vbprintf(2, "\trrsig by %s dropped - %s\n",
|
||||
sigstr,
|
||||
expired ? "expired" :
|
||||
"failed to verify");
|
||||
sigstr, expired ? "expired" :
|
||||
rrsig.originalttl != set->ttl ?
|
||||
"ttl change" : "failed to verify");
|
||||
wassignedby[key->index] = ISC_TRUE;
|
||||
}
|
||||
} else if (!expired) {
|
||||
@@ -522,7 +522,8 @@ signset(dns_diff_t *del, dns_diff_t *add, dns_dbnode_t *node, dns_name_t *name,
|
||||
}
|
||||
|
||||
if (keep) {
|
||||
nowsignedby[key->index] = ISC_TRUE;
|
||||
if (key != NULL)
|
||||
nowsignedby[key->index] = ISC_TRUE;
|
||||
INCSTAT(nretained);
|
||||
if (sigset.ttl != ttl) {
|
||||
vbprintf(2, "\tfixing ttl %s\n", sigstr);
|
||||
@@ -1387,6 +1388,13 @@ verifyset(dns_rdataset_t *rdataset, dns_name_t *name, dns_dbnode_t *node,
|
||||
|
||||
dns_rdataset_current(&sigrdataset, &rdata);
|
||||
dns_rdata_tostruct(&rdata, &sig, NULL);
|
||||
if (rdataset->ttl != sig.originalttl) {
|
||||
dns_name_format(name, namebuf, sizeof(namebuf));
|
||||
type_format(rdataset->type, typebuf, sizeof(typebuf));
|
||||
fprintf(stderr, "TTL mismatch for %s %s keytag %u\n",
|
||||
namebuf, typebuf, sig.keyid);
|
||||
continue;
|
||||
}
|
||||
if ((set_algorithms[sig.algorithm] != 0) ||
|
||||
(ksk_algorithms[sig.algorithm] == 0))
|
||||
continue;
|
||||
@@ -1443,14 +1451,14 @@ verifynode(dns_name_t *name, dns_dbnode_t *node, isc_boolean_t delegation,
|
||||
/*%
|
||||
* Verify that certain things are sane:
|
||||
*
|
||||
* The apex has a DNSKEY record with at least one KSK, and at least
|
||||
* The apex has a DNSKEY RRset with at least one KSK, and at least
|
||||
* one ZSK if the -x flag was not used.
|
||||
*
|
||||
* The DNSKEY record was signed with at least one of the KSKs in this
|
||||
* set.
|
||||
* The DNSKEY record was signed with at least one of the KSKs in
|
||||
* the DNSKEY RRset.
|
||||
*
|
||||
* The rest of the zone was signed with at least one of the ZSKs
|
||||
* present in the DNSKEY RRSET.
|
||||
* present in the DNSKEY RRset.
|
||||
*/
|
||||
static void
|
||||
verifyzone(void) {
|
||||
@@ -1461,13 +1469,12 @@ verifyzone(void) {
|
||||
dns_name_t *name, *nextname, *zonecut;
|
||||
dns_rdata_dnskey_t dnskey;
|
||||
dns_rdata_t rdata = DNS_RDATA_INIT;
|
||||
dns_rdataset_t rdataset;
|
||||
dns_rdataset_t sigrdataset;
|
||||
dns_rdataset_t keyset, soaset;
|
||||
dns_rdataset_t keysigs, soasigs;
|
||||
int i;
|
||||
isc_boolean_t done = ISC_FALSE;
|
||||
isc_boolean_t first = ISC_TRUE;
|
||||
isc_boolean_t goodksk = ISC_FALSE;
|
||||
isc_boolean_t goodzsk = ISC_FALSE;
|
||||
isc_result_t result;
|
||||
unsigned char revoked_ksk[256];
|
||||
unsigned char revoked_zsk[256];
|
||||
@@ -1489,18 +1496,30 @@ verifyzone(void) {
|
||||
fatal("failed to find the zone's origin: %s",
|
||||
isc_result_totext(result));
|
||||
|
||||
dns_rdataset_init(&rdataset);
|
||||
dns_rdataset_init(&sigrdataset);
|
||||
dns_rdataset_init(&keyset);
|
||||
dns_rdataset_init(&keysigs);
|
||||
dns_rdataset_init(&soaset);
|
||||
dns_rdataset_init(&soasigs);
|
||||
|
||||
result = dns_db_findrdataset(gdb, node, gversion,
|
||||
dns_rdatatype_dnskey,
|
||||
0, 0, &rdataset, &sigrdataset);
|
||||
dns_db_detachnode(gdb, &node);
|
||||
0, 0, &keyset, &keysigs);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("cannot find DNSKEY rrset\n");
|
||||
|
||||
if (!dns_rdataset_isassociated(&sigrdataset))
|
||||
result = dns_db_findrdataset(gdb, node, gversion,
|
||||
dns_rdatatype_soa,
|
||||
0, 0, &soaset, &soasigs);
|
||||
dns_db_detachnode(gdb, &node);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("cannot find SOA rrset\n");
|
||||
|
||||
if (!dns_rdataset_isassociated(&keysigs))
|
||||
fatal("cannot find DNSKEY RRSIGs\n");
|
||||
|
||||
if (!dns_rdataset_isassociated(&soasigs))
|
||||
fatal("cannot find SOA RRSIGs\n");
|
||||
|
||||
memset(revoked_ksk, 0, sizeof(revoked_ksk));
|
||||
memset(revoked_zsk, 0, sizeof(revoked_zsk));
|
||||
memset(standby_ksk, 0, sizeof(standby_ksk));
|
||||
@@ -1517,10 +1536,10 @@ verifyzone(void) {
|
||||
* and one ZSK per algorithm in it (or, if -x was used, one
|
||||
* self-signing KSK).
|
||||
*/
|
||||
for (result = dns_rdataset_first(&rdataset);
|
||||
for (result = dns_rdataset_first(&keyset);
|
||||
result == ISC_R_SUCCESS;
|
||||
result = dns_rdataset_next(&rdataset)) {
|
||||
dns_rdataset_current(&rdataset, &rdata);
|
||||
result = dns_rdataset_next(&keyset)) {
|
||||
dns_rdataset_current(&keyset, &rdata);
|
||||
result = dns_rdata_tostruct(&rdata, &dnskey, NULL);
|
||||
check_result(result, "dns_rdata_tostruct");
|
||||
|
||||
@@ -1528,8 +1547,8 @@ verifyzone(void) {
|
||||
;
|
||||
else if ((dnskey.flags & DNS_KEYFLAG_REVOKE) != 0) {
|
||||
if ((dnskey.flags & DNS_KEYFLAG_KSK) != 0 &&
|
||||
!dns_dnssec_selfsigns(&rdata, gorigin, &rdataset,
|
||||
&sigrdataset, ISC_FALSE,
|
||||
!dns_dnssec_selfsigns(&rdata, gorigin, &keyset,
|
||||
&keysigs, ISC_FALSE,
|
||||
mctx)) {
|
||||
char namebuf[DNS_NAME_FORMATSIZE];
|
||||
char buffer[1024];
|
||||
@@ -1551,8 +1570,8 @@ verifyzone(void) {
|
||||
revoked_zsk[dnskey.algorithm] != 255)
|
||||
revoked_zsk[dnskey.algorithm]++;
|
||||
} else if ((dnskey.flags & DNS_KEYFLAG_KSK) != 0) {
|
||||
if (dns_dnssec_selfsigns(&rdata, gorigin, &rdataset,
|
||||
&sigrdataset, ISC_FALSE, mctx)) {
|
||||
if (dns_dnssec_selfsigns(&rdata, gorigin, &keyset,
|
||||
&keysigs, ISC_FALSE, mctx)) {
|
||||
if (ksk_algorithms[dnskey.algorithm] != 255)
|
||||
ksk_algorithms[dnskey.algorithm]++;
|
||||
goodksk = ISC_TRUE;
|
||||
@@ -1560,8 +1579,8 @@ verifyzone(void) {
|
||||
if (standby_ksk[dnskey.algorithm] != 255)
|
||||
standby_ksk[dnskey.algorithm]++;
|
||||
}
|
||||
} else if (dns_dnssec_selfsigns(&rdata, gorigin, &rdataset,
|
||||
&sigrdataset, ISC_FALSE,
|
||||
} else if (dns_dnssec_selfsigns(&rdata, gorigin, &keyset,
|
||||
&keysigs, ISC_FALSE,
|
||||
mctx)) {
|
||||
#ifdef ALLOW_KSKLESS_ZONES
|
||||
if (self_algorithms[dnskey.algorithm] != 255)
|
||||
@@ -1569,7 +1588,10 @@ verifyzone(void) {
|
||||
#endif
|
||||
if (zsk_algorithms[dnskey.algorithm] != 255)
|
||||
zsk_algorithms[dnskey.algorithm]++;
|
||||
goodzsk = ISC_TRUE;
|
||||
} else if (dns_dnssec_signs(&rdata, gorigin, &soaset,
|
||||
&soasigs, ISC_FALSE, mctx)) {
|
||||
if (zsk_algorithms[dnskey.algorithm] != 255)
|
||||
zsk_algorithms[dnskey.algorithm]++;
|
||||
} else {
|
||||
if (standby_zsk[dnskey.algorithm] != 255)
|
||||
standby_zsk[dnskey.algorithm]++;
|
||||
@@ -1580,7 +1602,9 @@ verifyzone(void) {
|
||||
dns_rdata_freestruct(&dnskey);
|
||||
dns_rdata_reset(&rdata);
|
||||
}
|
||||
dns_rdataset_disassociate(&sigrdataset);
|
||||
dns_rdataset_disassociate(&keysigs);
|
||||
dns_rdataset_disassociate(&soaset);
|
||||
dns_rdataset_disassociate(&soasigs);
|
||||
|
||||
#ifdef ALLOW_KSKLESS_ZONES
|
||||
if (!goodksk) {
|
||||
@@ -1595,7 +1619,7 @@ verifyzone(void) {
|
||||
}
|
||||
#else
|
||||
if (!goodksk) {
|
||||
fatal("no self signed KSK's found");
|
||||
fatal("No self signed KSK's found");
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -1669,7 +1693,7 @@ verifyzone(void) {
|
||||
dns_name_copy(name, zonecut, NULL);
|
||||
isdelegation = ISC_TRUE;
|
||||
}
|
||||
verifynode(name, node, isdelegation, &rdataset,
|
||||
verifynode(name, node, isdelegation, &keyset,
|
||||
ksk_algorithms, bad_algorithms);
|
||||
result = dns_dbiterator_next(dbiter);
|
||||
nextnode = NULL;
|
||||
@@ -1706,13 +1730,13 @@ verifyzone(void) {
|
||||
result = dns_dbiterator_next(dbiter) ) {
|
||||
result = dns_dbiterator_current(dbiter, &node, name);
|
||||
check_dns_dbiterator_current(result);
|
||||
verifynode(name, node, ISC_FALSE, &rdataset,
|
||||
verifynode(name, node, ISC_FALSE, &keyset,
|
||||
ksk_algorithms, bad_algorithms);
|
||||
dns_db_detachnode(gdb, &node);
|
||||
}
|
||||
dns_dbiterator_destroy(&dbiter);
|
||||
|
||||
dns_rdataset_disassociate(&rdataset);
|
||||
dns_rdataset_disassociate(&keyset);
|
||||
|
||||
/*
|
||||
* If we made it this far, we have what we consider a properly signed
|
||||
@@ -2192,6 +2216,7 @@ addnsec3param(const unsigned char *salt, size_t salt_length,
|
||||
result = dns_rdata_fromstruct(&rdata, gclass,
|
||||
dns_rdatatype_nsec3param,
|
||||
&nsec3param, &b);
|
||||
check_result(result, "dns_rdata_fromstruct()");
|
||||
rdatalist.rdclass = rdata.rdclass;
|
||||
rdatalist.type = rdata.type;
|
||||
rdatalist.covers = 0;
|
||||
@@ -2801,7 +2826,7 @@ loadzonekeys(isc_boolean_t preserve_keys, isc_boolean_t load_public) {
|
||||
}
|
||||
keyttl = rdataset.ttl;
|
||||
|
||||
/* Load keys corresponding to the existing DNSKEY RRset */
|
||||
/* Load keys corresponding to the existing DNSKEY RRset. */
|
||||
result = dns_dnssec_keylistfromrdataset(gorigin, directory, mctx,
|
||||
&rdataset, &keysigs, &soasigs,
|
||||
preserve_keys, load_public,
|
||||
@@ -3805,6 +3830,8 @@ main(int argc, char *argv[]) {
|
||||
nokeys = ISC_TRUE;
|
||||
}
|
||||
|
||||
warnifallksk(gdb);
|
||||
|
||||
if (IS_NSEC3) {
|
||||
unsigned int max;
|
||||
result = dns_nsec3_maxiterations(gdb, NULL, mctx, &max);
|
||||
@@ -3814,8 +3841,6 @@ main(int argc, char *argv[]) {
|
||||
"strength. Maximum iterations allowed %u.", max);
|
||||
}
|
||||
|
||||
warnifallksk(gdb);
|
||||
|
||||
gversion = NULL;
|
||||
result = dns_db_newversion(gdb, &gversion);
|
||||
check_result(result, "dns_db_newversion()");
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by bindkeys.pl 1.3.104.2 2010/06/20 23:46:24 tbox Exp
|
||||
* From bind.keys 1.5.42.2 2011/01/04 19:14:48 each Exp
|
||||
* Generated by bindkeys.pl 1.3.104.2 2010-06-20 23:46:24 tbox Exp
|
||||
* From bind.keys 1.5.42.3 2011-03-25 17:46:40 each Exp
|
||||
*/
|
||||
#define TRUSTED_KEYS "\
|
||||
# The bind.keys file is used to override built-in DNSSEC trust anchors\n\
|
||||
@@ -41,8 +41,8 @@ trusted-keys {\n\
|
||||
\n\
|
||||
# ROOT KEY: See https://data.iana.org/root-anchors/root-anchors.xml\n\
|
||||
# for current trust anchor information.\n\
|
||||
# NOTE: This key is activated by setting \"dnssec-validation auto;\"\n\
|
||||
# in named.conf.\n\
|
||||
# NOTE: This key not active; to use it, copy it into a managed-keys\n\
|
||||
# statement in named.conf\n\
|
||||
. initial-key 257 3 8 \"AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF\n\
|
||||
FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX\n\
|
||||
bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD\n\
|
||||
@@ -92,8 +92,8 @@ managed-keys {\n\
|
||||
\n\
|
||||
# ROOT KEY: See https://data.iana.org/root-anchors/root-anchors.xml\n\
|
||||
# for current trust anchor information.\n\
|
||||
# NOTE: This key is activated by setting \"dnssec-validation auto;\"\n\
|
||||
# in named.conf.\n\
|
||||
# NOTE: This key not active; to use it, copy it into a managed-keys\n\
|
||||
# statement in named.conf\n\
|
||||
. initial-key 257 3 8 \"AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF\n\
|
||||
FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX\n\
|
||||
bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD\n\
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by convertxsl.pl 1.14 2008/07/17 23:43:26 jinmei Exp
|
||||
* From bind9.xsl 1.21 2009/01/27 23:47:54 tbox Exp
|
||||
* Generated by convertxsl.pl 1.14 2008-07-17 23:43:26 jinmei Exp
|
||||
* From bind9.xsl 1.21 2009-01-27 23:47:54 tbox Exp
|
||||
*/
|
||||
static char xslmsg[] =
|
||||
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
|
||||
@@ -20,7 +20,7 @@ static char xslmsg[] =
|
||||
" - PERFORMANCE OF THIS SOFTWARE.\n"
|
||||
"-->\n"
|
||||
"\n"
|
||||
"<!-- \045Id: bind9.xsl,v 1.21 2009/01/27 23:47:54 tbox Exp \045 -->\n"
|
||||
"<!-- \045Id: bind9.xsl,v 1.21 2009-01-27 23:47:54 tbox Exp \045 -->\n"
|
||||
"\n"
|
||||
"<xsl:stylesheet version=\"1.0\"\n"
|
||||
" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\"\n"
|
||||
|
||||
+4
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: client.c,v 1.266.36.2 2010/09/24 08:30:58 tbox Exp $ */
|
||||
/* $Id: client.c,v 1.266.36.4 2011/05/06 23:46:35 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -633,6 +633,7 @@ ns_client_endrequest(ns_client_t *client) {
|
||||
dns_message_puttemprdataset(client->message, &client->opt);
|
||||
}
|
||||
|
||||
client->signer = NULL;
|
||||
client->udpsize = 512;
|
||||
client->extflags = 0;
|
||||
client->ednsversion = -1;
|
||||
@@ -2093,6 +2094,7 @@ client_create(ns_clientmgr_t *manager, ns_client_t **clientp) {
|
||||
client->next = NULL;
|
||||
client->shutdown = NULL;
|
||||
client->shutdown_arg = NULL;
|
||||
client->signer = NULL;
|
||||
dns_name_init(&client->signername, NULL);
|
||||
client->mortal = ISC_FALSE;
|
||||
client->tcpquota = NULL;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2008, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: controlconf.c,v 1.60 2008/07/23 23:27:54 marka Exp $ */
|
||||
/* $Id: controlconf.c,v 1.60.290.2 2011/03/12 04:58:24 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -859,7 +859,7 @@ get_rndckey(isc_mem_t *mctx, controlkeylist_t *keyids) {
|
||||
cfg_obj_log(key, ns_g_lctx, ISC_LOG_WARNING,
|
||||
"secret for key '%s' on command channel: %s",
|
||||
keyid->keyname, isc_result_totext(result));
|
||||
CHECK(result);
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
keyid->secret.length = isc_buffer_usedlength(&b);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: interfacemgr.c,v 1.95 2009/01/17 23:47:42 tbox Exp $ */
|
||||
/* $Id: interfacemgr.c,v 1.95.186.2 2011/03/12 04:58:24 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -379,7 +379,7 @@ ns_interface_setup(ns_interfacemgr_t *mgr, isc_sockaddr_t *addr,
|
||||
}
|
||||
}
|
||||
*ifpret = ifp;
|
||||
return (ISC_R_SUCCESS);
|
||||
return (result);
|
||||
|
||||
cleanup_interface:
|
||||
ISC_LIST_UNLINK(ifp->mgr->interfaces, ifp, link);
|
||||
@@ -964,7 +964,6 @@ isc_boolean_t
|
||||
ns_interfacemgr_listeningon(ns_interfacemgr_t *mgr, isc_sockaddr_t *addr) {
|
||||
isc_sockaddr_t *old;
|
||||
|
||||
old = ISC_LIST_HEAD(mgr->listenon);
|
||||
for (old = ISC_LIST_HEAD(mgr->listenon);
|
||||
old != NULL;
|
||||
old = ISC_LIST_NEXT(old, link))
|
||||
|
||||
+35
-22
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,12 +15,13 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: logconf.c,v 1.42 2007/06/19 23:46:59 tbox Exp $ */
|
||||
/* $Id: logconf.c,v 1.42.560.3 2011/03/05 23:51:37 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <isc/file.h>
|
||||
#include <isc/offset.h>
|
||||
#include <isc/result.h>
|
||||
#include <isc/stdio.h>
|
||||
@@ -130,7 +131,7 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
}
|
||||
|
||||
type = ISC_LOG_TONULL;
|
||||
|
||||
|
||||
if (fileobj != NULL) {
|
||||
const cfg_obj_t *pathobj = cfg_tuple_get(fileobj, "file");
|
||||
const cfg_obj_t *sizeobj = cfg_tuple_get(fileobj, "size");
|
||||
@@ -140,7 +141,7 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
isc_offset_t size = 0;
|
||||
|
||||
type = ISC_LOG_TOFILE;
|
||||
|
||||
|
||||
if (versionsobj != NULL && cfg_obj_isuint32(versionsobj))
|
||||
versions = cfg_obj_asuint32(versionsobj);
|
||||
if (versionsobj != NULL && cfg_obj_isstring(versionsobj) &&
|
||||
@@ -219,26 +220,38 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
|
||||
if (result == ISC_R_SUCCESS && type == ISC_LOG_TOFILE) {
|
||||
FILE *fp;
|
||||
|
||||
/*
|
||||
* Test that the file can be opened, since isc_log_open()
|
||||
* can't effectively report failures when called in
|
||||
* isc_log_doit().
|
||||
*/
|
||||
result = isc_stdio_open(dest.file.name, "a", &fp);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
isc_log_write(ns_g_lctx, CFG_LOGCATEGORY_CONFIG,
|
||||
NS_LOGMODULE_SERVER, ISC_LOG_ERROR,
|
||||
"logging channel '%s' file '%s': %s",
|
||||
channelname, dest.file.name,
|
||||
isc_result_totext(result));
|
||||
else
|
||||
(void)isc_stdio_close(fp);
|
||||
|
||||
/*
|
||||
* Allow named to continue by returning success.
|
||||
*/
|
||||
result = ISC_R_SUCCESS;
|
||||
* Test to make sure that file is a plain file.
|
||||
* Fix defect #22771
|
||||
*/
|
||||
result = isc_file_isplainfile(dest.file.name);
|
||||
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().
|
||||
*/
|
||||
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));
|
||||
fprintf(stderr,
|
||||
"isc_stdio_open '%s' failed: %s",
|
||||
dest.file.name,
|
||||
isc_result_totext(result));
|
||||
} else
|
||||
(void)isc_stdio_close(fp);
|
||||
} else {
|
||||
syslog(LOG_ERR, "isc_file_isplainfile '%s' failed: %s",
|
||||
dest.file.name, isc_result_totext(result));
|
||||
fprintf(stderr, "isc_file_isplainfile '%s' failed: %s",
|
||||
dest.file.name, isc_result_totext(result));
|
||||
}
|
||||
}
|
||||
|
||||
return (result);
|
||||
|
||||
+3
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: main.c,v 1.175.60.4 2010/09/15 12:10:53 marka Exp $ */
|
||||
/* $Id: main.c,v 1.175.60.6 2011/03/12 04:58:24 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -546,6 +546,7 @@ parse_command_line(int argc, char *argv[]) {
|
||||
|
||||
argc -= isc_commandline_index;
|
||||
argv += isc_commandline_index;
|
||||
POST(argv);
|
||||
|
||||
if (argc > 0) {
|
||||
usage();
|
||||
|
||||
+20
-21
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: query.c,v 1.335.8.11 2010/09/24 05:54:05 marka Exp $ */
|
||||
/* $Id: query.c,v 1.335.8.14.10.1 2011/11/16 09:37:44 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -1280,11 +1280,9 @@ query_addadditional(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
goto addname;
|
||||
if (result == DNS_R_NCACHENXRRSET) {
|
||||
dns_rdataset_disassociate(rdataset);
|
||||
/*
|
||||
* Negative cache entries don't have sigrdatasets.
|
||||
*/
|
||||
INSIST(sigrdataset == NULL ||
|
||||
! dns_rdataset_isassociated(sigrdataset));
|
||||
if (sigrdataset != NULL &&
|
||||
dns_rdataset_isassociated(sigrdataset))
|
||||
dns_rdataset_disassociate(sigrdataset);
|
||||
}
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
mname = NULL;
|
||||
@@ -1325,8 +1323,9 @@ query_addadditional(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
goto addname;
|
||||
if (result == DNS_R_NCACHENXRRSET) {
|
||||
dns_rdataset_disassociate(rdataset);
|
||||
INSIST(sigrdataset == NULL ||
|
||||
! dns_rdataset_isassociated(sigrdataset));
|
||||
if (sigrdataset != NULL &&
|
||||
dns_rdataset_isassociated(sigrdataset))
|
||||
dns_rdataset_disassociate(sigrdataset);
|
||||
}
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
mname = NULL;
|
||||
@@ -1511,6 +1510,7 @@ query_addadditional2(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
need_addname = ISC_FALSE;
|
||||
zone = NULL;
|
||||
needadditionalcache = ISC_FALSE;
|
||||
POST(needadditionalcache);
|
||||
additionaltype = dns_rdatasetadditional_fromauth;
|
||||
dns_name_init(&cfname, NULL);
|
||||
|
||||
@@ -1775,10 +1775,8 @@ query_addadditional2(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
goto setcache;
|
||||
if (result == DNS_R_NCACHENXRRSET) {
|
||||
dns_rdataset_disassociate(rdataset);
|
||||
/*
|
||||
* Negative cache entries don't have sigrdatasets.
|
||||
*/
|
||||
INSIST(! dns_rdataset_isassociated(sigrdataset));
|
||||
if (dns_rdataset_isassociated(sigrdataset))
|
||||
dns_rdataset_disassociate(sigrdataset);
|
||||
}
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
/* Remember the result as a cache */
|
||||
@@ -4603,18 +4601,19 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
goto cleanup;
|
||||
}
|
||||
result = dns_name_concatenate(prefix, tname, fname, NULL);
|
||||
|
||||
/*
|
||||
* RFC2672, section 4.1, subsection 3c says
|
||||
* we should return YXDOMAIN if the constructed
|
||||
* name would be too long.
|
||||
*/
|
||||
if (result == DNS_R_NAMETOOLONG)
|
||||
client->message->rcode = dns_rcode_yxdomain;
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
dns_message_puttempname(client->message, &tname);
|
||||
if (result == ISC_R_NOSPACE) {
|
||||
/*
|
||||
* RFC2672, section 4.1, subsection 3c says
|
||||
* we should return YXDOMAIN if the constructed
|
||||
* name would be too long.
|
||||
*/
|
||||
client->message->rcode = dns_rcode_yxdomain;
|
||||
}
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
query_keepname(client, fname, dbuf);
|
||||
/*
|
||||
* Synthesize a CNAME for this DNAME.
|
||||
|
||||
+70
-51
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: server.c,v 1.556.8.35 2011/02/03 00:28:08 each Exp $ */
|
||||
/* $Id: server.c,v 1.556.8.40 2011/03/11 07:11:52 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -601,7 +601,8 @@ dstkey_fromconfig(const cfg_obj_t *vconfig, const cfg_obj_t *key,
|
||||
|
||||
static isc_result_t
|
||||
load_view_keys(const cfg_obj_t *keys, const cfg_obj_t *vconfig,
|
||||
dns_view_t *view, isc_boolean_t managed, isc_mem_t *mctx)
|
||||
dns_view_t *view, isc_boolean_t managed,
|
||||
dns_name_t *keyname, isc_mem_t *mctx)
|
||||
{
|
||||
const cfg_listelt_t *elt, *elt2;
|
||||
const cfg_obj_t *key, *keylist;
|
||||
@@ -629,6 +630,16 @@ load_view_keys(const cfg_obj_t *keys, const cfg_obj_t *vconfig,
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto cleanup;
|
||||
|
||||
/*
|
||||
* If keyname was specified, we only add that key.
|
||||
*/
|
||||
if (keyname != NULL &&
|
||||
!dns_name_equal(keyname, dst_key_name(dstkey)))
|
||||
{
|
||||
dst_key_free(&dstkey);
|
||||
continue;
|
||||
}
|
||||
|
||||
CHECK(dns_keytable_add(secroots, managed, &dstkey));
|
||||
}
|
||||
}
|
||||
@@ -729,19 +740,22 @@ configure_view_dnsseckeys(dns_view_t *view, const cfg_obj_t *vconfig,
|
||||
|
||||
if (builtin_keys != NULL)
|
||||
CHECK(load_view_keys(builtin_keys, vconfig, view,
|
||||
ISC_FALSE, mctx));
|
||||
ISC_FALSE, view->dlv, mctx));
|
||||
if (builtin_managed_keys != NULL)
|
||||
CHECK(load_view_keys(builtin_managed_keys, vconfig,
|
||||
view, ISC_TRUE, mctx));
|
||||
view, ISC_TRUE, view->dlv, mctx));
|
||||
}
|
||||
|
||||
CHECK(load_view_keys(view_keys, vconfig, view, ISC_FALSE, mctx));
|
||||
CHECK(load_view_keys(view_managed_keys, vconfig, view, ISC_TRUE, mctx));
|
||||
CHECK(load_view_keys(view_keys, vconfig, view, ISC_FALSE,
|
||||
NULL, mctx));
|
||||
CHECK(load_view_keys(view_managed_keys, vconfig, view, ISC_TRUE,
|
||||
NULL, mctx));
|
||||
|
||||
if (view->rdclass == dns_rdataclass_in) {
|
||||
CHECK(load_view_keys(global_keys, vconfig, view, ISC_FALSE,
|
||||
mctx));
|
||||
NULL, mctx));
|
||||
CHECK(load_view_keys(global_managed_keys, vconfig, view,
|
||||
ISC_TRUE, mctx));
|
||||
ISC_TRUE, NULL, mctx));
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -796,18 +810,13 @@ get_view_querysource_dispatch(const cfg_obj_t **maps,
|
||||
int af, dns_dispatch_t **dispatchp,
|
||||
isc_boolean_t is_firstview)
|
||||
{
|
||||
isc_result_t result;
|
||||
isc_result_t result = ISC_R_FAILURE;
|
||||
dns_dispatch_t *disp;
|
||||
isc_sockaddr_t sa;
|
||||
unsigned int attrs, attrmask;
|
||||
const cfg_obj_t *obj = NULL;
|
||||
unsigned int maxdispatchbuffers;
|
||||
|
||||
/*
|
||||
* Make compiler happy.
|
||||
*/
|
||||
result = ISC_R_FAILURE;
|
||||
|
||||
switch (af) {
|
||||
case AF_INET:
|
||||
result = ns_config_get(maps, "query-source", &obj);
|
||||
@@ -1330,7 +1339,7 @@ configure_view(dns_view_t *view, cfg_parser_t* parser,
|
||||
isc_uint32_t lame_ttl;
|
||||
dns_tsig_keyring_t *ring = NULL;
|
||||
dns_view_t *pview = NULL; /* Production view */
|
||||
isc_mem_t *cmctx;
|
||||
isc_mem_t *cmctx = NULL, *hmctx = NULL;
|
||||
dns_dispatch_t *dispatch4 = NULL;
|
||||
dns_dispatch_t *dispatch6 = NULL;
|
||||
isc_boolean_t reused_cache = ISC_FALSE;
|
||||
@@ -1359,8 +1368,6 @@ configure_view(dns_view_t *view, cfg_parser_t* parser,
|
||||
|
||||
REQUIRE(DNS_VIEW_VALID(view));
|
||||
|
||||
cmctx = NULL;
|
||||
|
||||
if (config != NULL)
|
||||
(void)cfg_map_get(config, "options", &options);
|
||||
|
||||
@@ -1391,6 +1398,7 @@ configure_view(dns_view_t *view, cfg_parser_t* parser,
|
||||
sep = "";
|
||||
viewname = "";
|
||||
forview = "";
|
||||
POST(forview);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -1726,13 +1734,21 @@ configure_view(dns_view_t *view, cfg_parser_t* parser,
|
||||
* view but is not yet configured. If it is not the
|
||||
* view name but not a forward reference either, then it
|
||||
* is simply a named cache that is not shared.
|
||||
*
|
||||
* We use two separate memory contexts for the
|
||||
* cache, for the main cache memory and the heap
|
||||
* memory.
|
||||
*/
|
||||
CHECK(isc_mem_create(0, 0, &cmctx));
|
||||
isc_mem_setname(cmctx, "cache", NULL);
|
||||
CHECK(dns_cache_create2(cmctx, ns_g_taskmgr,
|
||||
CHECK(isc_mem_create(0, 0, &hmctx));
|
||||
isc_mem_setname(hmctx, "cache_heap", NULL);
|
||||
CHECK(dns_cache_create3(cmctx, hmctx, ns_g_taskmgr,
|
||||
ns_g_timermgr, view->rdclass,
|
||||
cachename, "rbt", 0, NULL,
|
||||
&cache));
|
||||
isc_mem_detach(&cmctx);
|
||||
isc_mem_detach(&hmctx);
|
||||
}
|
||||
nsc = isc_mem_get(mctx, sizeof(*nsc));
|
||||
if (nsc == NULL) {
|
||||
@@ -2534,6 +2550,8 @@ configure_view(dns_view_t *view, cfg_parser_t* parser,
|
||||
dns_order_detach(&order);
|
||||
if (cmctx != NULL)
|
||||
isc_mem_detach(&cmctx);
|
||||
if (hmctx != NULL)
|
||||
isc_mem_detach(&hmctx);
|
||||
|
||||
if (cache != NULL)
|
||||
dns_cache_detach(&cache);
|
||||
@@ -2771,6 +2789,7 @@ create_view(const cfg_obj_t *vconfig, dns_viewlist_t *viewlist,
|
||||
classobj = cfg_tuple_get(vconfig, "class");
|
||||
result = ns_config_getclass(classobj, dns_rdataclass_in,
|
||||
&viewclass);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
} else {
|
||||
viewname = "_default";
|
||||
viewclass = dns_rdataclass_in;
|
||||
@@ -3063,6 +3082,7 @@ add_keydata_zone(dns_view_t *view, const char *directory, isc_mem_t *mctx) {
|
||||
|
||||
if (pview != NULL && pview->managed_keys != NULL) {
|
||||
dns_zone_attach(pview->managed_keys, &view->managed_keys);
|
||||
dns_zone_setview(pview->managed_keys, view);
|
||||
dns_view_detach(&pview);
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
@@ -3836,7 +3856,7 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
if (result == ISC_R_SUCCESS)
|
||||
maps[i++] = options;
|
||||
maps[i++] = ns_g_defaults;
|
||||
maps[i++] = NULL;
|
||||
maps[i] = NULL;
|
||||
|
||||
/*
|
||||
* If bind.keys exists, load it. If "dnssec-lookaside auto"
|
||||
@@ -4062,11 +4082,10 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
if (options != NULL)
|
||||
(void)cfg_map_get(options, "listen-on", &clistenon);
|
||||
if (clistenon != NULL) {
|
||||
result = ns_listenlist_fromconfig(clistenon,
|
||||
config,
|
||||
&aclconfctx,
|
||||
ns_g_mctx,
|
||||
&listenon);
|
||||
/* check return code? */
|
||||
(void)ns_listenlist_fromconfig(clistenon, config,
|
||||
&aclconfctx, ns_g_mctx,
|
||||
&listenon);
|
||||
} else if (!ns_g_lwresdonly) {
|
||||
/*
|
||||
* Not specified, use default.
|
||||
@@ -4090,11 +4109,10 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
if (options != NULL)
|
||||
(void)cfg_map_get(options, "listen-on-v6", &clistenon);
|
||||
if (clistenon != NULL) {
|
||||
result = ns_listenlist_fromconfig(clistenon,
|
||||
config,
|
||||
&aclconfctx,
|
||||
ns_g_mctx,
|
||||
&listenon);
|
||||
/* check return code? */
|
||||
(void)ns_listenlist_fromconfig(clistenon, config,
|
||||
&aclconfctx, ns_g_mctx,
|
||||
&listenon);
|
||||
} else if (!ns_g_lwresdonly) {
|
||||
isc_boolean_t enable;
|
||||
/*
|
||||
@@ -4786,8 +4804,8 @@ shutdown_server(isc_task_t *task, isc_event_t *event) {
|
||||
void
|
||||
ns_server_create(isc_mem_t *mctx, ns_server_t **serverp) {
|
||||
isc_result_t result;
|
||||
|
||||
ns_server_t *server = isc_mem_get(mctx, sizeof(*server));
|
||||
|
||||
if (server == NULL)
|
||||
fatal("allocating server object", ISC_R_NOMEMORY);
|
||||
|
||||
@@ -5533,7 +5551,6 @@ ns_server_dumpstats(ns_server_t *server) {
|
||||
"could not open statistics dump file", server->statsfile);
|
||||
|
||||
result = ns_stats_dump(server, fp);
|
||||
CHECK(result);
|
||||
|
||||
cleanup:
|
||||
if (fp != NULL)
|
||||
@@ -5721,6 +5738,7 @@ dumpdone(void *arg, isc_result_t result) {
|
||||
fprintf(dctx->fp, "; %s\n",
|
||||
dns_result_totext(result));
|
||||
result = ISC_R_SUCCESS;
|
||||
POST(result);
|
||||
goto nextzone;
|
||||
}
|
||||
if (result != ISC_R_SUCCESS)
|
||||
@@ -5846,28 +5864,29 @@ ns_server_dumpsecroots(ns_server_t *server, char *args) {
|
||||
isc_time_formattimestamp(&now, tbuf, sizeof(tbuf));
|
||||
fprintf(fp, "%s\n", tbuf);
|
||||
|
||||
nextview:
|
||||
for (view = ISC_LIST_HEAD(server->viewlist);
|
||||
view != NULL;
|
||||
view = ISC_LIST_NEXT(view, link))
|
||||
{
|
||||
if (ptr != NULL && strcmp(view->name, ptr) != 0)
|
||||
continue;
|
||||
if (secroots != NULL)
|
||||
dns_keytable_detach(&secroots);
|
||||
result = dns_view_getsecroots(view, &secroots);
|
||||
if (result == ISC_R_NOTFOUND) {
|
||||
result = ISC_R_SUCCESS;
|
||||
continue;
|
||||
do {
|
||||
for (view = ISC_LIST_HEAD(server->viewlist);
|
||||
view != NULL;
|
||||
view = ISC_LIST_NEXT(view, link))
|
||||
{
|
||||
if (ptr != NULL && strcmp(view->name, ptr) != 0)
|
||||
continue;
|
||||
if (secroots != NULL)
|
||||
dns_keytable_detach(&secroots);
|
||||
result = dns_view_getsecroots(view, &secroots);
|
||||
if (result == ISC_R_NOTFOUND) {
|
||||
result = ISC_R_SUCCESS;
|
||||
continue;
|
||||
}
|
||||
fprintf(fp, "\n Start view %s\n\n", view->name);
|
||||
result = dns_keytable_dump(secroots, fp);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fprintf(fp, " dumpsecroots failed: %s\n",
|
||||
isc_result_totext(result));
|
||||
}
|
||||
fprintf(fp, "\n Start view %s\n\n", view->name);
|
||||
CHECK(dns_keytable_dump(secroots, fp));
|
||||
}
|
||||
if (ptr != NULL) {
|
||||
ptr = next_token(&args, " \t");
|
||||
if (ptr != NULL)
|
||||
goto nextview;
|
||||
}
|
||||
ptr = next_token(&args, " \t");
|
||||
} while (ptr != NULL);
|
||||
|
||||
cleanup:
|
||||
if (secroots != NULL)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2008-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2008-2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: statschannel.c,v 1.24.40.2 2010/02/04 23:48:30 tbox Exp $ */
|
||||
/* $Id: statschannel.c,v 1.24.40.4 2011/03/12 04:58:24 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -638,7 +638,7 @@ rdatasetstats_dump(dns_rdatastatstype_t type, isc_uint64_t val, void *arg) {
|
||||
|
||||
static void
|
||||
opcodestat_dump(dns_opcode_t code, isc_uint64_t val, void *arg) {
|
||||
FILE *fp = arg;
|
||||
FILE *fp;
|
||||
isc_buffer_t b;
|
||||
char codebuf[64];
|
||||
stats_dumparg_t *dumparg = arg;
|
||||
|
||||
+7
-4
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: os.c,v 1.101 2009/08/13 07:04:38 marka Exp $ */
|
||||
/* $Id: os.c,v 1.101.110.3 2011/03/02 00:05:11 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -790,6 +790,9 @@ ns_os_openfile(const char *filename, mode_t mode, isc_boolean_t switch_user) {
|
||||
free(f);
|
||||
|
||||
if (switch_user && runas_pw != NULL) {
|
||||
#ifndef HAVE_LINUXTHREADS
|
||||
gid_t oldgid = getgid();
|
||||
#endif
|
||||
/* Set UID/GID to the one we'll be running with eventually */
|
||||
setperms(runas_pw->pw_uid, runas_pw->pw_gid);
|
||||
|
||||
@@ -797,7 +800,7 @@ ns_os_openfile(const char *filename, mode_t mode, isc_boolean_t switch_user) {
|
||||
|
||||
#ifndef HAVE_LINUXTHREADS
|
||||
/* Restore UID/GID to root */
|
||||
setperms(0, 0);
|
||||
setperms(0, oldgid);
|
||||
#endif /* HAVE_LINUXTHREADS */
|
||||
|
||||
if (fd == -1) {
|
||||
@@ -950,7 +953,7 @@ ns_os_shutdownmsg(char *command, isc_buffer_t *text) {
|
||||
isc_buffer_availablelength(text),
|
||||
"pid: %ld", (long)pid);
|
||||
/* Only send a message if it is complete. */
|
||||
if (n < isc_buffer_availablelength(text))
|
||||
if (n > 0 && n < isc_buffer_availablelength(text))
|
||||
isc_buffer_add(text, n);
|
||||
}
|
||||
|
||||
|
||||
+4
-5
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: update.c,v 1.176.4.11 2011/02/03 12:17:22 tbox Exp $ */
|
||||
/* $Id: update.c,v 1.176.4.14 2011/03/25 23:54:33 each Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -1687,7 +1687,7 @@ next_active(ns_client_t *client, dns_zone_t *zone, dns_db_t *db,
|
||||
{
|
||||
isc_result_t result;
|
||||
dns_dbiterator_t *dbit = NULL;
|
||||
isc_boolean_t has_nsec;
|
||||
isc_boolean_t has_nsec = ISC_FALSE;
|
||||
unsigned int wraps = 0;
|
||||
isc_boolean_t secure = dns_db_issecure(db);
|
||||
|
||||
@@ -2390,7 +2390,7 @@ update_signatures(ns_client_t *client, dns_zone_t *zone, dns_db_t *db,
|
||||
name, diff));
|
||||
}
|
||||
CHECK(add_exposed_sigs(client, zone, db, newver, name,
|
||||
cut, diff, zone_keys, nkeys,
|
||||
cut, &sig_diff, zone_keys, nkeys,
|
||||
inception, expire, check_ksk,
|
||||
keyset_kskonly));
|
||||
}
|
||||
@@ -2549,7 +2549,7 @@ update_signatures(ns_client_t *client, dns_zone_t *zone, dns_db_t *db,
|
||||
privatetype, &nsec_diff));
|
||||
} else {
|
||||
CHECK(add_exposed_sigs(client, zone, db, newver, name,
|
||||
cut, diff, zone_keys, nkeys,
|
||||
cut, &sig_diff, zone_keys, nkeys,
|
||||
inception, expire, check_ksk,
|
||||
keyset_kskonly));
|
||||
CHECK(dns_nsec3_addnsec3sx(db, newver, name, nsecttl,
|
||||
@@ -3728,7 +3728,6 @@ update_action(isc_task_t *task, isc_event_t *event) {
|
||||
* Check Requestor's Permissions. It seems a bit silly to do this
|
||||
* only after prerequisite testing, but that is what RFC2136 says.
|
||||
*/
|
||||
result = ISC_R_SUCCESS;
|
||||
if (ssutable == NULL)
|
||||
CHECK(checkupdateacl(client, dns_zone_getupdateacl(zone),
|
||||
"update", zonename, ISC_FALSE, ISC_FALSE));
|
||||
|
||||
+47
-51
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: zoneconf.c,v 1.161.4.4 2010/09/15 03:36:41 marka Exp $ */
|
||||
/* $Id: zoneconf.c,v 1.161.4.8 2011/05/23 20:55:23 each Exp $ */
|
||||
|
||||
/*% */
|
||||
|
||||
@@ -121,7 +121,7 @@ configure_zone_acl(const cfg_obj_t *zconfig, const cfg_obj_t *vconfig,
|
||||
/* First check to see if ACL is defined within the zone */
|
||||
if (zconfig != NULL) {
|
||||
maps[0] = cfg_tuple_get(zconfig, "options");
|
||||
ns_config_get(maps, aclname, &aclobj);
|
||||
(void)ns_config_get(maps, aclname, &aclobj);
|
||||
if (aclobj != NULL) {
|
||||
aclp = NULL;
|
||||
goto parse_acl;
|
||||
@@ -149,7 +149,7 @@ configure_zone_acl(const cfg_obj_t *zconfig, const cfg_obj_t *vconfig,
|
||||
maps[i++] = ns_g_defaults;
|
||||
maps[i] = NULL;
|
||||
|
||||
result = ns_config_get(maps, aclname, &aclobj);
|
||||
(void)ns_config_get(maps, aclname, &aclobj);
|
||||
if (aclobj == NULL) {
|
||||
(*clearzacl)(zone);
|
||||
return (ISC_R_SUCCESS);
|
||||
@@ -389,7 +389,7 @@ zonetype_fromconfig(const cfg_obj_t *map) {
|
||||
isc_result_t result;
|
||||
|
||||
result = cfg_map_get(map, "type", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
return (ns_config_getzonetype(obj));
|
||||
}
|
||||
|
||||
@@ -453,7 +453,7 @@ checknames(dns_zonetype_t ztype, const cfg_obj_t **maps,
|
||||
INSIST(0);
|
||||
}
|
||||
result = ns_checknames_get(maps, zone, objp);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && objp != NULL && *objp != NULL);
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
@@ -507,7 +507,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
maps[i++] = options;
|
||||
}
|
||||
maps[i++] = ns_g_defaults;
|
||||
maps[i++] = NULL;
|
||||
maps[i] = NULL;
|
||||
|
||||
if (vconfig != NULL)
|
||||
RETERR(ns_config_getclass(cfg_tuple_get(vconfig, "class"),
|
||||
@@ -609,7 +609,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "dialup", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
if (cfg_obj_isboolean(obj)) {
|
||||
if (cfg_obj_asboolean(obj))
|
||||
dialup = dns_dialuptype_yes;
|
||||
@@ -632,7 +632,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "zone-statistics", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
zonestats_on = cfg_obj_asboolean(obj);
|
||||
zoneqrystats = NULL;
|
||||
if (zonestats_on) {
|
||||
@@ -651,7 +651,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
if (ztype != dns_zone_stub) {
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "notify", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
if (cfg_obj_isboolean(obj)) {
|
||||
if (cfg_obj_asboolean(obj))
|
||||
notifytype = dns_notifytype_yes;
|
||||
@@ -687,19 +687,19 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "notify-source", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
RETERR(dns_zone_setnotifysrc4(zone, cfg_obj_assockaddr(obj)));
|
||||
ns_add_reserved_dispatch(ns_g_server, cfg_obj_assockaddr(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "notify-source-v6", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
RETERR(dns_zone_setnotifysrc6(zone, cfg_obj_assockaddr(obj)));
|
||||
ns_add_reserved_dispatch(ns_g_server, cfg_obj_assockaddr(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "notify-to-soa", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_NOTIFYTOSOA,
|
||||
cfg_obj_asboolean(obj));
|
||||
|
||||
@@ -712,17 +712,17 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "max-transfer-time-out", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setmaxxfrout(zone, cfg_obj_asuint32(obj) * 60);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "max-transfer-idle-out", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setidleout(zone, cfg_obj_asuint32(obj) * 60);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "max-journal-size", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setjournalsize(zone, -1);
|
||||
if (cfg_obj_isstring(obj)) {
|
||||
const char *str = cfg_obj_asstring(obj);
|
||||
@@ -746,13 +746,13 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "ixfr-from-differences", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
if (cfg_obj_isboolean(obj))
|
||||
ixfrdiff = cfg_obj_asboolean(obj);
|
||||
else if (strcasecmp(cfg_obj_asstring(obj), "master") &&
|
||||
else if (!strcasecmp(cfg_obj_asstring(obj), "master") &&
|
||||
ztype == dns_zone_master)
|
||||
ixfrdiff = ISC_TRUE;
|
||||
else if (strcasecmp(cfg_obj_asstring(obj), "slave") &&
|
||||
else if (!strcasecmp(cfg_obj_asstring(obj), "slave") &&
|
||||
ztype == dns_zone_slave)
|
||||
ixfrdiff = ISC_TRUE;
|
||||
else
|
||||
@@ -775,23 +775,23 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "notify-delay", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setnotifydelay(zone, cfg_obj_asuint32(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "check-sibling", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_CHECKSIBLING,
|
||||
cfg_obj_asboolean(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "zero-no-soa-ttl", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setzeronosoattl(zone, cfg_obj_asboolean(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "nsec3-test-zone", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_NSEC3TESTZONE,
|
||||
cfg_obj_asboolean(obj));
|
||||
}
|
||||
@@ -820,7 +820,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "sig-validity-interval", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
{
|
||||
const cfg_obj_t *validity, *resign;
|
||||
|
||||
@@ -851,28 +851,28 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "sig-signing-signatures", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setsignatures(zone, cfg_obj_asuint32(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "sig-signing-nodes", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setnodes(zone, cfg_obj_asuint32(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "sig-signing-type", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setprivatetype(zone, cfg_obj_asuint32(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "update-check-ksk", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_UPDATECHECKKSK,
|
||||
cfg_obj_asboolean(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "dnssec-dnskey-kskonly", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_DNSKEYKSKONLY,
|
||||
cfg_obj_asboolean(obj));
|
||||
} else if (ztype == dns_zone_slave) {
|
||||
@@ -887,7 +887,6 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
*/
|
||||
if (ztype == dns_zone_master) {
|
||||
isc_boolean_t allow = ISC_FALSE, maint = ISC_FALSE;
|
||||
isc_boolean_t create = ISC_FALSE;
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "check-wildcard", &obj);
|
||||
@@ -899,7 +898,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "check-dup-records", &obj);
|
||||
INSIST(obj != NULL);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
if (strcasecmp(cfg_obj_asstring(obj), "warn") == 0) {
|
||||
fail = ISC_FALSE;
|
||||
check = ISC_TRUE;
|
||||
@@ -914,7 +913,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "check-mx", &obj);
|
||||
INSIST(obj != NULL);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
if (strcasecmp(cfg_obj_asstring(obj), "warn") == 0) {
|
||||
fail = ISC_FALSE;
|
||||
check = ISC_TRUE;
|
||||
@@ -929,13 +928,13 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "check-integrity", &obj);
|
||||
INSIST(obj != NULL);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_CHECKINTEGRITY,
|
||||
cfg_obj_asboolean(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "check-mx-cname", &obj);
|
||||
INSIST(obj != NULL);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
if (strcasecmp(cfg_obj_asstring(obj), "warn") == 0) {
|
||||
warn = ISC_TRUE;
|
||||
ignore = ISC_FALSE;
|
||||
@@ -950,7 +949,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "check-srv-cname", &obj);
|
||||
INSIST(obj != NULL);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
if (strcasecmp(cfg_obj_asstring(obj), "warn") == 0) {
|
||||
warn = ISC_TRUE;
|
||||
ignore = ISC_FALSE;
|
||||
@@ -965,7 +964,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "dnssec-secure-to-insecure", &obj);
|
||||
INSIST(obj != NULL);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_SECURETOINSECURE,
|
||||
cfg_obj_asboolean(obj));
|
||||
|
||||
@@ -977,15 +976,12 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
allow = ISC_TRUE;
|
||||
else if (strcasecmp(arg, "maintain") == 0)
|
||||
allow = maint = ISC_TRUE;
|
||||
else if (strcasecmp(arg, "create") == 0)
|
||||
allow = maint = create = ISC_TRUE;
|
||||
else if (strcasecmp(arg, "off") == 0)
|
||||
;
|
||||
else
|
||||
INSIST(0);
|
||||
dns_zone_setkeyopt(zone, DNS_ZONEKEY_ALLOW, allow);
|
||||
dns_zone_setkeyopt(zone, DNS_ZONEKEY_MAINTAIN, maint);
|
||||
dns_zone_setkeyopt(zone, DNS_ZONEKEY_CREATE, create);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -997,7 +993,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
case dns_zone_stub:
|
||||
count = 0;
|
||||
obj = NULL;
|
||||
result = cfg_map_get(zoptions, "masters", &obj);
|
||||
(void)cfg_map_get(zoptions, "masters", &obj);
|
||||
if (obj != NULL) {
|
||||
addrs = NULL;
|
||||
keynames = NULL;
|
||||
@@ -1016,61 +1012,61 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
if (count > 1) {
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "multi-master", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
multi = cfg_obj_asboolean(obj);
|
||||
}
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_MULTIMASTER, multi);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "max-transfer-time-in", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setmaxxfrin(zone, cfg_obj_asuint32(obj) * 60);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "max-transfer-idle-in", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setidlein(zone, cfg_obj_asuint32(obj) * 60);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "max-refresh-time", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setmaxrefreshtime(zone, cfg_obj_asuint32(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "min-refresh-time", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setminrefreshtime(zone, cfg_obj_asuint32(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "max-retry-time", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setmaxretrytime(zone, cfg_obj_asuint32(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "min-retry-time", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
dns_zone_setminretrytime(zone, cfg_obj_asuint32(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "transfer-source", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
RETERR(dns_zone_setxfrsource4(zone, cfg_obj_assockaddr(obj)));
|
||||
ns_add_reserved_dispatch(ns_g_server, cfg_obj_assockaddr(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "transfer-source-v6", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
RETERR(dns_zone_setxfrsource6(zone, cfg_obj_assockaddr(obj)));
|
||||
ns_add_reserved_dispatch(ns_g_server, cfg_obj_assockaddr(obj));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "alt-transfer-source", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
RETERR(dns_zone_setaltxfrsource4(zone, cfg_obj_assockaddr(obj)));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "alt-transfer-source-v6", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
RETERR(dns_zone_setaltxfrsource6(zone, cfg_obj_assockaddr(obj)));
|
||||
|
||||
obj = NULL;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: nsupdate.c,v 1.173.66.12 2010/12/09 04:31:30 tbox Exp $ */
|
||||
/* $Id: nsupdate.c,v 1.173.66.15 2011/05/23 22:23:05 each Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -694,8 +694,10 @@ setup_keyfile(isc_mem_t *mctx, isc_log_t *lctx) {
|
||||
keyfile, isc_result_totext(result));
|
||||
return;
|
||||
}
|
||||
} else
|
||||
} else {
|
||||
dst_key_attach(dstkey, &sig0key);
|
||||
dst_key_free(&dstkey);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -2259,6 +2261,7 @@ recvsoa(isc_task_t *task, isc_event_t *event) {
|
||||
}
|
||||
check_result(result, "dns_request_getresponse");
|
||||
section = DNS_SECTION_ANSWER;
|
||||
POST(section);
|
||||
if (debugging)
|
||||
show_message(stderr, rcvmsg, "Reply from SOA query:");
|
||||
|
||||
@@ -2817,6 +2820,9 @@ cleanup(void) {
|
||||
}
|
||||
#endif
|
||||
|
||||
if (sig0key != NULL)
|
||||
dst_key_free(&sig0key);
|
||||
|
||||
ddebug("Shutting down task manager");
|
||||
isc_taskmgr_destroy(&taskmgr);
|
||||
|
||||
|
||||
+18
-17
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2007, 2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: t_db.c,v 1.39 2009/09/01 00:22:25 jinmei Exp $ */
|
||||
/* $Id: t_db.c,v 1.39.104.2 2011/03/12 04:58:25 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -118,7 +118,6 @@ t_dns_db_load(char **av) {
|
||||
isc_result_t exp_load_result;
|
||||
isc_result_t exp_find_result;
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
db = NULL;
|
||||
mctx = NULL;
|
||||
ectx = NULL;
|
||||
@@ -292,8 +291,6 @@ t_dns_db_zc_x(char *filename, char *db_type, char *origin, char *class,
|
||||
isc_buffer_t origin_buffer;
|
||||
dns_fixedname_t dns_origin;
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
|
||||
db = NULL;
|
||||
mctx = NULL;
|
||||
ectx = NULL;
|
||||
@@ -769,8 +766,6 @@ t_dns_db_currentversion(char **av) {
|
||||
dns_dbversion_t *cversionp;
|
||||
dns_dbversion_t *nversionp;
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
|
||||
filename = T_ARG(0);
|
||||
db_type = T_ARG(1);
|
||||
origin = T_ARG(2);
|
||||
@@ -1050,8 +1045,6 @@ t_dns_db_newversion(char **av) {
|
||||
dns_dbversion_t *nversionp;
|
||||
dns_rdatalist_t rdatalist;
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
|
||||
filename = T_ARG(0);
|
||||
db_type = T_ARG(1);
|
||||
origin = T_ARG(2);
|
||||
@@ -1384,7 +1377,6 @@ t_dns_db_closeversion_1(char **av) {
|
||||
existing_type = T_ARG(8);
|
||||
|
||||
nfails = 0;
|
||||
result = T_UNRESOLVED;
|
||||
db = NULL;
|
||||
mctx = NULL;
|
||||
ectx = NULL;
|
||||
@@ -1796,7 +1788,6 @@ t_dns_db_closeversion_2(char **av) {
|
||||
existing_type = T_ARG(8);
|
||||
|
||||
nfails = 0;
|
||||
result = T_UNRESOLVED;
|
||||
db = NULL;
|
||||
mctx = NULL;
|
||||
ectx = NULL;
|
||||
@@ -2259,8 +2250,6 @@ t_dns_db_expirenode(char **av) {
|
||||
mctx = NULL;
|
||||
ectx = NULL;
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
|
||||
/*
|
||||
* Find a node, mark it as stale, do a dns_db_find on the name and
|
||||
* expect it to fail.
|
||||
@@ -2464,7 +2453,6 @@ t_dns_db_findnode_1(char **av) {
|
||||
db = NULL;
|
||||
mctx = NULL;
|
||||
ectx = NULL;
|
||||
result = T_UNRESOLVED;
|
||||
|
||||
t_info("testing using file %s and name %s\n", filename, find_name);
|
||||
|
||||
@@ -2526,6 +2514,13 @@ t_dns_db_findnode_1(char **av) {
|
||||
isc_buffer_add(&name_buffer, len);
|
||||
dns_result = dns_name_fromtext(dns_fixedname_name(&dns_name),
|
||||
&name_buffer, NULL, 0, NULL);
|
||||
if (dns_result != ISC_R_SUCCESS) {
|
||||
t_info("dns_name_fromtext failed %s\n",
|
||||
dns_result_totext(dns_result));
|
||||
dns_db_detach(&db);
|
||||
isc_mem_destroy(&mctx);
|
||||
return(T_UNRESOLVED);
|
||||
}
|
||||
|
||||
dns_result = dns_db_findnode(db, dns_fixedname_name(&dns_name),
|
||||
ISC_FALSE, &nodep);
|
||||
@@ -2623,7 +2618,6 @@ t_dns_db_findnode_2(char **av) {
|
||||
model = T_ARG(4);
|
||||
newname = T_ARG(5);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
db = NULL;
|
||||
mctx = NULL;
|
||||
ectx = NULL;
|
||||
@@ -2682,6 +2676,15 @@ t_dns_db_findnode_2(char **av) {
|
||||
isc_buffer_add(&name_buffer, len);
|
||||
dns_result = dns_name_fromtext(dns_fixedname_name(&dns_name),
|
||||
&name_buffer, NULL, 0, NULL);
|
||||
if (dns_result != ISC_R_SUCCESS) {
|
||||
t_info("dns_name_fromtext returned %s\n",
|
||||
dns_result_totext(dns_result));
|
||||
dns_db_detach(&db);
|
||||
isc_hash_destroy();
|
||||
isc_entropy_detach(&ectx);
|
||||
isc_mem_destroy(&mctx);
|
||||
return(T_UNRESOLVED);
|
||||
}
|
||||
|
||||
dns_result = dns_db_findnode(db, dns_fixedname_name(&dns_name),
|
||||
ISC_FALSE, &nodep);
|
||||
@@ -2816,8 +2819,6 @@ t_dns_db_find_x(char **av) {
|
||||
dns_rdatatype_t rdatatype;
|
||||
dns_dbversion_t *cversionp;
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
|
||||
dbfile = T_ARG(0);
|
||||
dbtype = T_ARG(1);
|
||||
dborigin = T_ARG(2);
|
||||
|
||||
+13
-13
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2006, 2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2006, 2007, 2009, 2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: gsstest.c,v 1.8 2009/09/02 23:48:01 tbox Exp $ */
|
||||
/* $Id: gsstest.c,v 1.8.104.2 2011/03/28 23:46:38 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -101,23 +101,23 @@ console(isc_task_t *task, isc_event_t *event)
|
||||
|
||||
isc_event_free(&event);
|
||||
|
||||
while(1) {
|
||||
for (;;) {
|
||||
printf("\nCommand => ");
|
||||
scanf("%s", buf);
|
||||
|
||||
if(strcmp(buf, "quit") == 0) {
|
||||
if (strcmp(buf, "quit") == 0) {
|
||||
isc_app_shutdown();
|
||||
return;
|
||||
}
|
||||
|
||||
if(strcmp(buf, "initctx") == 0) {
|
||||
if (strcmp(buf, "initctx") == 0) {
|
||||
ev = isc_event_allocate(mctx, (void *)1, 1, initctx1,
|
||||
NULL, sizeof(*event));
|
||||
isc_task_send(task, &ev);
|
||||
return;
|
||||
}
|
||||
|
||||
if(strcmp(buf, "query") == 0) {
|
||||
if (strcmp(buf, "query") == 0) {
|
||||
ev = isc_event_allocate(mctx, (void *)1, 1, sendquery,
|
||||
NULL, sizeof(*event));
|
||||
isc_task_send(task, &ev);
|
||||
@@ -314,7 +314,7 @@ initctx2(isc_task_t *task, isc_event_t *event) {
|
||||
rdataset = ISC_LIST_HEAD(question_name->list);
|
||||
INSIST(rdataset != NULL);
|
||||
qtype = rdataset->type;
|
||||
if(qtype == dns_rdatatype_tkey) {
|
||||
if (qtype == dns_rdatatype_tkey) {
|
||||
printf("Received TKEY response from server\n");
|
||||
printf("Context completed\n");
|
||||
} else {
|
||||
@@ -324,14 +324,14 @@ initctx2(isc_task_t *task, isc_event_t *event) {
|
||||
tsigkey = NULL;
|
||||
}
|
||||
|
||||
if(response)
|
||||
if (response)
|
||||
dns_message_destroy(&response);
|
||||
|
||||
end:
|
||||
if(query)
|
||||
if (query)
|
||||
dns_message_destroy(&query);
|
||||
|
||||
if(reqev->request)
|
||||
if (reqev->request)
|
||||
dns_request_destroy(&reqev->request);
|
||||
|
||||
isc_event_free(&event);
|
||||
@@ -410,11 +410,11 @@ setup(void)
|
||||
struct in_addr inaddr;
|
||||
int c;
|
||||
|
||||
while (1) {
|
||||
for (;;) {
|
||||
printf("Server IP => ");
|
||||
c = scanf("%s", serveraddress);
|
||||
|
||||
if(c == EOF || strcmp(serveraddress, "quit") == 0) {
|
||||
if (c == EOF || strcmp(serveraddress, "quit") == 0) {
|
||||
isc_app_shutdown();
|
||||
return;
|
||||
}
|
||||
@@ -424,7 +424,7 @@ setup(void)
|
||||
return;
|
||||
}
|
||||
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
int
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2007, 2009, 2011 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
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: t_master.c,v 1.39 2009/09/01 00:22:25 jinmei Exp $ */
|
||||
/* $Id: t_master.c,v 1.39.104.2 2011/03/12 04:58:25 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -77,7 +77,6 @@ test_master(char *testfile, char *origin, char *class, isc_result_t exp_result)
|
||||
dns_rdataclass_t rdataclass;
|
||||
isc_textregion_t textregion;
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
if (T1_mctx == NULL)
|
||||
isc_result = isc_mem_create(0, 0, &T1_mctx);
|
||||
else
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1998-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: t_names.c,v 1.50 2009/09/01 23:47:44 tbox Exp $ */
|
||||
/* $Id: t_names.c,v 1.50.104.2 2011/03/12 04:58:25 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -179,7 +179,6 @@ getmsg(char *datafile_name, unsigned char *buf, int buflen, isc_buffer_t *pbuf)
|
||||
int c;
|
||||
int len;
|
||||
int cnt;
|
||||
unsigned int val;
|
||||
unsigned char *p;
|
||||
FILE *fp;
|
||||
|
||||
@@ -192,8 +191,8 @@ getmsg(char *datafile_name, unsigned char *buf, int buflen, isc_buffer_t *pbuf)
|
||||
p = buf;
|
||||
cnt = 0;
|
||||
len = 0;
|
||||
val = 0;
|
||||
while ((c = getc(fp)) != EOF) {
|
||||
unsigned int val;
|
||||
if ( (c == ' ') || (c == '\t') ||
|
||||
(c == '\r') || (c == '\n'))
|
||||
continue;
|
||||
@@ -1678,8 +1677,6 @@ test_dns_name_fromtext(char *test_name1, char *test_name2, char *test_origin,
|
||||
isc_result_t dns_result;
|
||||
dns_namereln_t dns_namereln;
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
|
||||
t_info("testing %s %s %s\n", test_name1, test_name2, test_origin);
|
||||
|
||||
isc_buffer_init(&binbuf1, junk1, BUFLEN);
|
||||
@@ -1815,8 +1812,6 @@ test_dns_name_totext(char *test_name, isc_boolean_t omit_final) {
|
||||
isc_result_t dns_result;
|
||||
dns_namereln_t dns_namereln;
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
|
||||
t_info("testing %s\n", test_name);
|
||||
|
||||
len = strlen(test_name);
|
||||
@@ -1983,8 +1978,6 @@ test_dns_name_fromwire(char *datafile_name, int testname_offset, int downcase,
|
||||
dns_namereln_t dns_namereln;
|
||||
dns_decompress_t dctx;
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
|
||||
t_info("testing using %s\n", datafile_name);
|
||||
len = getmsg(datafile_name, buf1, BIGBUFLEN, &iscbuf1);
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2007, 2009, 2011 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
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: t_rbt.c,v 1.33 2009/09/01 00:22:25 jinmei Exp $ */
|
||||
/* $Id: t_rbt.c,v 1.33.104.2 2011/03/12 04:58:25 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -398,8 +398,7 @@ test_rbt_gen(char *filename, char *command, char *testname,
|
||||
result = T_FAIL;
|
||||
}
|
||||
} else {
|
||||
t_info("create_name failed %s\n",
|
||||
dns_result_totext(dns_result));
|
||||
t_info("create_name failed\n");
|
||||
result = T_UNRESOLVED;
|
||||
}
|
||||
} else if ((strcmp(command, "delete") == 0) ||
|
||||
@@ -1112,8 +1111,8 @@ t_dns_rbtnodechain_first(char *dbfile, char *expected_firstname,
|
||||
t_info("dns_rbtnodechain_first unexpectedly returned %s\n",
|
||||
dns_result_totext(dns_result));
|
||||
|
||||
nfails = t_namechk(dns_result, &dns_name, expected_firstname,
|
||||
&dns_origin, expected_firstorigin, DNS_R_NEWORIGIN);
|
||||
nfails += t_namechk(dns_result, &dns_name, expected_firstname,
|
||||
&dns_origin, expected_firstorigin, DNS_R_NEWORIGIN);
|
||||
|
||||
dns_fixedname_init(&dns_name);
|
||||
dns_result = dns_rbtnodechain_next(&chain,
|
||||
@@ -1303,8 +1302,8 @@ t_dns_rbtnodechain_last(char *dbfile, char *expected_lastname,
|
||||
t_info("dns_rbtnodechain_last unexpectedly returned %s\n",
|
||||
dns_result_totext(dns_result));
|
||||
}
|
||||
nfails = t_namechk(dns_result, &dns_name, expected_lastname,
|
||||
&dns_origin, expected_lastorigin, DNS_R_NEWORIGIN);
|
||||
nfails += t_namechk(dns_result, &dns_name, expected_lastname,
|
||||
&dns_origin, expected_lastorigin, DNS_R_NEWORIGIN);
|
||||
|
||||
t_info("testing for previous name of %s, origin of %s\n",
|
||||
expected_prevname, expected_prevorigin);
|
||||
|
||||
@@ -0,0 +1,393 @@
|
||||
#!/usr/bin/perl
|
||||
#
|
||||
# Copyright (C) 2011 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: ans.pl,v 1.2.4.4 2011/03/18 04:40:19 each Exp $
|
||||
|
||||
#
|
||||
# This is the name server from hell. It provides canned
|
||||
# responses based on pattern matching the queries, and
|
||||
# can be reprogrammed on-the-fly over a TCP connection.
|
||||
#
|
||||
# The server listens for control connections on port 5301.
|
||||
# A control connection is a TCP stream of lines like
|
||||
#
|
||||
# /pattern/
|
||||
# name ttl type rdata
|
||||
# name ttl type rdata
|
||||
# ...
|
||||
# /pattern/
|
||||
# name ttl type rdata
|
||||
# name ttl type rdata
|
||||
# ...
|
||||
#
|
||||
# There can be any number of patterns, each associated
|
||||
# with any number of response RRs. Each pattern is a
|
||||
# Perl regular expression.
|
||||
#
|
||||
# Each incoming query is converted into a string of the form
|
||||
# "qname qtype" (the printable query domain name, space,
|
||||
# printable query type) and matched against each pattern.
|
||||
#
|
||||
# The first pattern matching the query is selected, and
|
||||
# the RR following the pattern line are sent in the
|
||||
# answer section of the response.
|
||||
#
|
||||
# Each new control connection causes the current set of
|
||||
# patterns and responses to be cleared before adding new
|
||||
# ones.
|
||||
#
|
||||
# The server handles UDP and TCP queries. Zone transfer
|
||||
# responses work, but must fit in a single 64 k message.
|
||||
#
|
||||
# Now you can add TSIG, just specify key/key data with:
|
||||
#
|
||||
# /pattern <key> <key_data>/
|
||||
# name ttl type rdata
|
||||
# name ttl type rdata
|
||||
#
|
||||
# Note that this data will still be sent with any request for
|
||||
# pattern, only this data will be signed. Currently, this is only
|
||||
# done for TCP.
|
||||
|
||||
|
||||
use IO::File;
|
||||
use IO::Socket;
|
||||
use Data::Dumper;
|
||||
use Net::DNS;
|
||||
use Net::DNS::Packet;
|
||||
use strict;
|
||||
|
||||
# Ignore SIGPIPE so we won't fail if peer closes a TCP socket early
|
||||
local $SIG{PIPE} = 'IGNORE';
|
||||
|
||||
# Flush logged output after every line
|
||||
local $| = 1;
|
||||
|
||||
# We default to listening on 10.53.0.2 for historical reasons
|
||||
# XXX: we should also be able to specify IPv6
|
||||
my $server_addr = "10.53.0.2";
|
||||
if (@ARGV > 0) {
|
||||
$server_addr = @ARGV[0];
|
||||
}
|
||||
|
||||
# XXX: we should also be able to set the port numbers to listen on.
|
||||
my $ctlsock = IO::Socket::INET->new(LocalAddr => "$server_addr",
|
||||
LocalPort => 5301, Proto => "tcp", Listen => 5, Reuse => 1) or die "$!";
|
||||
|
||||
my $udpsock = IO::Socket::INET->new(LocalAddr => "$server_addr",
|
||||
LocalPort => 5300, Proto => "udp", Reuse => 1) or die "$!";
|
||||
|
||||
my $tcpsock = IO::Socket::INET->new(LocalAddr => "$server_addr",
|
||||
LocalPort => 5300, Proto => "tcp", Listen => 5, Reuse => 1) or die "$!";
|
||||
|
||||
print "listening on $server_addr:5300,5301.\n";
|
||||
|
||||
my $pidf = new IO::File "ans.pid", "w" or die "cannot open pid file: $!";
|
||||
print $pidf "$$\n" or die "cannot write pid file: $!";
|
||||
$pidf->close or die "cannot close pid file: $!";;
|
||||
sub rmpid { unlink "ans.pid"; exit 1; };
|
||||
|
||||
$SIG{INT} = \&rmpid;
|
||||
$SIG{TERM} = \&rmpid;
|
||||
|
||||
#my @answers = ();
|
||||
my @rules;
|
||||
sub handleUDP {
|
||||
my ($buf) = @_;
|
||||
|
||||
my ($packet, $err) = new Net::DNS::Packet(\$buf, 0);
|
||||
$err and die $err;
|
||||
|
||||
$packet->header->qr(1);
|
||||
$packet->header->aa(1);
|
||||
|
||||
my @questions = $packet->question;
|
||||
my $qname = $questions[0]->qname;
|
||||
my $qtype = $questions[0]->qtype;
|
||||
|
||||
# get the existing signature if any, and clear the additional section
|
||||
my $prev_tsig;
|
||||
while (my $rr = $packet->pop("additional")) {
|
||||
if ($rr->type eq "TSIG") {
|
||||
$prev_tsig = $rr;
|
||||
}
|
||||
}
|
||||
|
||||
my $r;
|
||||
foreach $r (@rules) {
|
||||
my $pattern = $r->{pattern};
|
||||
my($dbtype, $key_name, $key_data) = split(/ /,$pattern);
|
||||
print "[handleUDP] $dbtype, $key_name, $key_data \n";
|
||||
if ("$qname $qtype" =~ /$dbtype/) {
|
||||
my $a;
|
||||
foreach $a (@{$r->{answer}}) {
|
||||
$packet->push("answer", $a);
|
||||
}
|
||||
if(defined($key_name) && defined($key_data)) {
|
||||
# Sign the packet
|
||||
print " Signing the response with " .
|
||||
"$key_name/$key_data\n";
|
||||
my $tsig = Net::DNS::RR->
|
||||
new("$key_name TSIG $key_data");
|
||||
|
||||
# These kluges are necessary because Net::DNS
|
||||
# doesn't know how to sign responses. We
|
||||
# clear compnames so that the TSIG key and
|
||||
# algorithm name won't be compressed, and
|
||||
# add one to arcount because the signing
|
||||
# function will attempt to decrement it,
|
||||
# which is incorrect in a response. Finally
|
||||
# we set request_mac to the previous digest.
|
||||
$packet->{"compnames"} = {};
|
||||
$packet->{"header"}{"arcount"} += 1;
|
||||
if (defined($prev_tsig)) {
|
||||
my $rmac = pack('n H*',
|
||||
$prev_tsig->mac_size,
|
||||
$prev_tsig->mac);
|
||||
$tsig->{"request_mac"} =
|
||||
unpack("H*", $rmac);
|
||||
}
|
||||
|
||||
$packet->sign_tsig($tsig);
|
||||
}
|
||||
last;
|
||||
}
|
||||
}
|
||||
#$packet->print;
|
||||
|
||||
return $packet->data;
|
||||
}
|
||||
|
||||
# namelen:
|
||||
# given a stream of data, reads a DNS-formatted name and returns its
|
||||
# total length, thus making it possible to skip past it.
|
||||
sub namelen {
|
||||
my ($data) = @_;
|
||||
my $len = 0;
|
||||
my $label_len = 0;
|
||||
do {
|
||||
$label_len = unpack("c", $data);
|
||||
$data = substr($data, $label_len + 1);
|
||||
$len += $label_len + 1;
|
||||
} while ($label_len != 0);
|
||||
return ($len);
|
||||
}
|
||||
|
||||
# packetlen:
|
||||
# given a stream of data, reads a DNS wire-format packet and returns
|
||||
# its total length, making it possible to skip past it.
|
||||
sub packetlen {
|
||||
my ($data) = @_;
|
||||
my $q;
|
||||
my $rr;
|
||||
|
||||
my ($header, $offset) = Net::DNS::Header->parse(\$data);
|
||||
for (1 .. $header->qdcount) {
|
||||
($q, $offset) = Net::DNS::Question->parse(\$data, $offset);
|
||||
}
|
||||
for (1 .. $header->ancount) {
|
||||
($rr, $offset) = Net::DNS::RR->parse(\$data, $offset);
|
||||
}
|
||||
for (1 .. $header->nscount) {
|
||||
($rr, $offset) = Net::DNS::RR->parse(\$data, $offset);
|
||||
}
|
||||
for (1 .. $header->arcount) {
|
||||
($rr, $offset) = Net::DNS::RR->parse(\$data, $offset);
|
||||
}
|
||||
return $offset;
|
||||
}
|
||||
|
||||
# sign_tcp_continuation:
|
||||
# This is a hack to correct the problem that Net::DNS has no idea how
|
||||
# to sign multiple-message TCP responses. Several data that are included
|
||||
# in the digest when signing a query or the first message of a response are
|
||||
# omitted when signing subsequent messages in a TCP stream.
|
||||
#
|
||||
# Net::DNS::Packet->sign_tsig() has the ability to use a custom signing
|
||||
# function (specified by calling Packet->sign_func()). We use this
|
||||
# function as the signing function for TCP continuations, and it removes
|
||||
# the unwanted data from the digest before calling the default sign_hmac
|
||||
# function.
|
||||
sub sign_tcp_continuation {
|
||||
my ($key, $data) = @_;
|
||||
|
||||
# copy out first two bytes: size of the previous MAC
|
||||
my $rmacsize = unpack("n", $data);
|
||||
$data = substr($data, 2);
|
||||
|
||||
# copy out previous MAC
|
||||
my $rmac = substr($data, 0, $rmacsize);
|
||||
$data = substr($data, $rmacsize);
|
||||
|
||||
# try parsing out the packet information
|
||||
my $plen = packetlen($data);
|
||||
my $pdata = substr($data, 0, $plen);
|
||||
$data = substr($data, $plen);
|
||||
|
||||
# remove the keyname, ttl, class, and algorithm name
|
||||
$data = substr($data, namelen($data));
|
||||
$data = substr($data, 6);
|
||||
$data = substr($data, namelen($data));
|
||||
|
||||
# preserve the TSIG data
|
||||
my $tdata = substr($data, 0, 8);
|
||||
|
||||
# prepare a new digest and sign with it
|
||||
$data = pack("n", $rmacsize) . $rmac . $pdata . $tdata;
|
||||
return Net::DNS::RR::TSIG::sign_hmac($key, $data);
|
||||
}
|
||||
|
||||
sub handleTCP {
|
||||
my ($buf) = @_;
|
||||
|
||||
my ($packet, $err) = new Net::DNS::Packet(\$buf, 0);
|
||||
$err and die $err;
|
||||
|
||||
$packet->header->qr(1);
|
||||
$packet->header->aa(1);
|
||||
|
||||
my @questions = $packet->question;
|
||||
my $qname = $questions[0]->qname;
|
||||
my $qtype = $questions[0]->qtype;
|
||||
|
||||
# get the existing signature if any, and clear the additional section
|
||||
my $prev_tsig;
|
||||
my $signer;
|
||||
while (my $rr = $packet->pop("additional")) {
|
||||
if ($rr->type eq "TSIG") {
|
||||
$prev_tsig = $rr;
|
||||
}
|
||||
}
|
||||
|
||||
my @results = ();
|
||||
my $count_these = 0;
|
||||
|
||||
my $r;
|
||||
foreach $r (@rules) {
|
||||
my $pattern = $r->{pattern};
|
||||
my($dbtype, $key_name, $key_data) = split(/ /,$pattern);
|
||||
print "[handleTCP] $dbtype, $key_name, $key_data \n";
|
||||
if ("$qname $qtype" =~ /$dbtype/) {
|
||||
$count_these++;
|
||||
my $a;
|
||||
foreach $a (@{$r->{answer}}) {
|
||||
$packet->push("answer", $a);
|
||||
}
|
||||
if(defined($key_name) && defined($key_data)) {
|
||||
# sign the packet
|
||||
print " Signing the data with " .
|
||||
"$key_name/$key_data\n";
|
||||
|
||||
my $tsig = Net::DNS::RR->
|
||||
new("$key_name TSIG $key_data");
|
||||
|
||||
# These kluges are necessary because Net::DNS
|
||||
# doesn't know how to sign responses. We
|
||||
# clear compnames so that the TSIG key and
|
||||
# algorithm name won't be compressed, and
|
||||
# add one to arcount because the signing
|
||||
# function will attempt to decrement it,
|
||||
# which is incorrect in a response. Finally
|
||||
# we set request_mac to the previous digest.
|
||||
$packet->{"compnames"} = {};
|
||||
$packet->{"header"}{"arcount"} += 1;
|
||||
if (defined($prev_tsig)) {
|
||||
my $rmac = pack('n H*',
|
||||
$prev_tsig->mac_size,
|
||||
$prev_tsig->mac);
|
||||
$tsig->{"request_mac"} =
|
||||
unpack("H*", $rmac);
|
||||
}
|
||||
|
||||
$tsig->sign_func($signer) if defined($signer);
|
||||
$packet->sign_tsig($tsig);
|
||||
$signer = \&sign_tcp_continuation;
|
||||
|
||||
my $copy =
|
||||
Net::DNS::Packet->new(\($packet->data));
|
||||
$prev_tsig = $copy->pop("additional");
|
||||
}
|
||||
#$packet->print;
|
||||
push(@results,$packet->data);
|
||||
$packet = new Net::DNS::Packet(\$buf, 0);
|
||||
$packet->header->qr(1);
|
||||
$packet->header->aa(1);
|
||||
}
|
||||
}
|
||||
print " A total of $count_these patterns matched\n";
|
||||
return \@results;
|
||||
}
|
||||
|
||||
# Main
|
||||
my $rin;
|
||||
my $rout;
|
||||
for (;;) {
|
||||
$rin = '';
|
||||
vec($rin, fileno($ctlsock), 1) = 1;
|
||||
vec($rin, fileno($tcpsock), 1) = 1;
|
||||
vec($rin, fileno($udpsock), 1) = 1;
|
||||
|
||||
select($rout = $rin, undef, undef, undef);
|
||||
|
||||
if (vec($rout, fileno($ctlsock), 1)) {
|
||||
warn "ctl conn";
|
||||
my $conn = $ctlsock->accept;
|
||||
my $rule = ();
|
||||
@rules = ();
|
||||
while (my $line = $conn->getline) {
|
||||
chomp $line;
|
||||
if ($line =~ m!^/(.*)/$!) {
|
||||
$rule = { pattern => $1, answer => [] };
|
||||
push(@rules, $rule);
|
||||
} else {
|
||||
push(@{$rule->{answer}},
|
||||
new Net::DNS::RR($line));
|
||||
}
|
||||
}
|
||||
$conn->close;
|
||||
#print Dumper(@rules);
|
||||
#print "+=+=+ $rules[0]->{'pattern'}\n";
|
||||
#print "+=+=+ $rules[0]->{'answer'}->[0]->{'rname'}\n";
|
||||
#print "+=+=+ $rules[0]->{'answer'}->[0]\n";
|
||||
} elsif (vec($rout, fileno($udpsock), 1)) {
|
||||
printf "UDP request\n";
|
||||
my $buf;
|
||||
$udpsock->recv($buf, 512);
|
||||
my $result = handleUDP($buf);
|
||||
my $num_chars = $udpsock->send($result);
|
||||
print " Sent $num_chars bytes via UDP\n";
|
||||
} elsif (vec($rout, fileno($tcpsock), 1)) {
|
||||
my $conn = $tcpsock->accept;
|
||||
my $buf;
|
||||
for (;;) {
|
||||
my $lenbuf;
|
||||
my $n = $conn->sysread($lenbuf, 2);
|
||||
last unless $n == 2;
|
||||
my $len = unpack("n", $lenbuf);
|
||||
$n = $conn->sysread($buf, $len);
|
||||
last unless $n == $len;
|
||||
print "TCP request\n";
|
||||
my $result = handleTCP($buf);
|
||||
foreach my $response (@$result) {
|
||||
$len = length($response);
|
||||
$n = $conn->syswrite(pack("n", $len), 2);
|
||||
$n = $conn->syswrite($response, $len);
|
||||
print " Sent: $n chars via TCP\n";
|
||||
}
|
||||
}
|
||||
$conn->close;
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2009-2011 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
|
||||
@@ -14,11 +14,12 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: clean.sh,v 1.3.6.4 2010/12/18 02:15:17 each Exp $
|
||||
# $Id: clean.sh,v 1.3.6.7 2011/07/08 01:46:41 each Exp $
|
||||
|
||||
rm -f */K* */dsset-* */*.signed */trusted.conf */tmp* */*.jnl */*.bk
|
||||
rm -f active.key inact.key del.key unpub.key standby.key rev.key
|
||||
rm -f nopriv.key vanishing.key del1.key del2.key
|
||||
rm -f delayksk.key delayzsk.key missingzsk.key inactivezsk.key
|
||||
rm -f nsupdate.out
|
||||
rm -f */core
|
||||
rm -f */example.bk
|
||||
@@ -42,6 +43,7 @@ rm -f ns3/secure.example.db
|
||||
rm -f ns3/secure.nsec3.example.db
|
||||
rm -f ns3/secure.optout.example.db
|
||||
rm -f ns3/secure-to-insecure.example.db
|
||||
rm -f ns3/nozsk.example.db ns3/inaczsk.example.db
|
||||
rm -f ns3/prepub.example.db
|
||||
rm -f ns3/prepub.example.db.in
|
||||
rm -f ns3/secure-to-insecure2.example.db
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh -e
|
||||
#
|
||||
# Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2009-2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: keygen.sh,v 1.3.6.4 2010/06/07 04:47:26 marka Exp $
|
||||
# $Id: keygen.sh,v 1.3.6.6 2011/05/26 23:46:24 tbox Exp $
|
||||
|
||||
SYSTEMTESTTOP=../..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
@@ -57,5 +57,5 @@ for i in Xbar.+005+30676.key Xbar.+005+30804.key Xbar.+005+30676.private \
|
||||
do
|
||||
cp $i `echo $i | sed s/X/K/`
|
||||
done
|
||||
$KEYGEN -3 -q -r $RANDFILE $zone > /dev/null
|
||||
$KEYGEN -q -r $RANDFILE $zone > /dev/null
|
||||
$DSFROMKEY Kbar.+005+30804.key > dsset-bar.
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
; Copyright (C) 2011 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: delay.example.db,v 1.1.6.2 2011/03/26 01:09:22 each Exp $
|
||||
|
||||
$TTL 300 ; 5 minutes
|
||||
@ IN SOA mname1. . (
|
||||
2009102722 ; serial
|
||||
20 ; refresh (20 seconds)
|
||||
20 ; retry (20 seconds)
|
||||
1814400 ; expire (3 weeks)
|
||||
3600 ; minimum (1 hour)
|
||||
)
|
||||
NS ns
|
||||
ns A 10.53.0.3
|
||||
|
||||
a A 10.0.0.1
|
||||
b A 10.0.0.2
|
||||
d A 10.0.0.4
|
||||
x CNAME a
|
||||
@@ -0,0 +1,31 @@
|
||||
; Copyright (C) 2011 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: inaczsk.example.db.in,v 1.2.4.2 2011/07/08 01:46:41 each Exp $
|
||||
|
||||
$TTL 300 ; 5 minutes
|
||||
@ IN SOA mname1. . (
|
||||
1 ; serial
|
||||
20 ; refresh (20 seconds)
|
||||
20 ; retry (20 seconds)
|
||||
1814400 ; expire (3 weeks)
|
||||
3600 ; minimum (1 hour)
|
||||
)
|
||||
NS ns
|
||||
ns A 10.53.0.3
|
||||
|
||||
a A 10.0.0.1
|
||||
b A 10.0.0.2
|
||||
d A 10.0.0.4
|
||||
x CNAME a
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh -e
|
||||
#
|
||||
# Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2009-2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: keygen.sh,v 1.3.6.5 2010/12/15 18:44:16 each Exp $
|
||||
# $Id: keygen.sh,v 1.3.6.8 2011/07/08 01:46:41 each Exp $
|
||||
|
||||
SYSTEMTESTTOP=../..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
@@ -205,3 +205,37 @@ zonefile="${zone}.db"
|
||||
$KEYGEN -3 -q -r $RANDFILE -fk $zone > /dev/null
|
||||
$KEYGEN -3 -q -r $RANDFILE $zone > /dev/null
|
||||
$SIGNER -S -3 beef -o $zone -f $zonefile $infile > /dev/null 2>&1
|
||||
|
||||
#
|
||||
# A zone with a DNSKEY RRset that is published before it's activated
|
||||
#
|
||||
zone=delay.example
|
||||
zonefile="${zone}.db"
|
||||
ksk=`$KEYGEN -G -q -3 -r $RANDFILE -fk $zone`
|
||||
echo $ksk > ../delayksk.key
|
||||
zsk=`$KEYGEN -G -q -3 -r $RANDFILE $zone`
|
||||
echo $zsk > ../delayzsk.key
|
||||
|
||||
#
|
||||
# A zone with signatures that are already expired, and the private ZSK
|
||||
# is missing.
|
||||
#
|
||||
zone=nozsk.example
|
||||
zonefile="${zone}.db"
|
||||
$KEYGEN -q -3 -r $RANDFILE -fk $zone > /dev/null
|
||||
zsk=`$KEYGEN -q -3 -r $RANDFILE $zone`
|
||||
$SIGNER -S -P -s now-1mo -e now-1mi -o $zone -f $zonefile ${zonefile}.in > /dev/null 2>&1
|
||||
echo $zsk > ../missingzsk.key
|
||||
rm -f ${zsk}.private
|
||||
|
||||
#
|
||||
# A zone with signatures that are already expired, and the private ZSK
|
||||
# is inactive.
|
||||
#
|
||||
zone=inaczsk.example
|
||||
zonefile="${zone}.db"
|
||||
$KEYGEN -q -3 -r $RANDFILE -fk $zone > /dev/null
|
||||
zsk=`$KEYGEN -q -3 -r $RANDFILE $zone`
|
||||
$SIGNER -S -P -s now-1mo -e now-1mi -o $zone -f $zonefile ${zonefile}.in > /dev/null 2>&1
|
||||
echo $zsk > ../inactivezsk.key
|
||||
$SETTIME -I now $zsk > /dev/null
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2009-2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.3.6.4 2010/12/15 18:44:16 each Exp $ */
|
||||
/* $Id: named.conf,v 1.3.6.7 2011/07/08 01:46:41 each Exp $ */
|
||||
|
||||
// NS3
|
||||
|
||||
@@ -185,4 +185,24 @@ zone "prepub.example" {
|
||||
auto-dnssec maintain;
|
||||
};
|
||||
|
||||
zone "delay.example" {
|
||||
type master;
|
||||
file "delay.example.db";
|
||||
allow-update { any; };
|
||||
auto-dnssec maintain;
|
||||
};
|
||||
|
||||
zone "nozsk.example" {
|
||||
type master;
|
||||
file "nozsk.example.db";
|
||||
allow-update { any; };
|
||||
auto-dnssec maintain;
|
||||
};
|
||||
|
||||
zone "inaczsk.example" {
|
||||
type master;
|
||||
file "inaczsk.example.db";
|
||||
allow-update { any; };
|
||||
auto-dnssec maintain;
|
||||
};
|
||||
include "trusted.conf";
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
; Copyright (C) 2011 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: nozsk.example.db.in,v 1.2.4.2 2011/07/08 01:46:41 each Exp $
|
||||
|
||||
$TTL 300 ; 5 minutes
|
||||
@ IN SOA mname1. . (
|
||||
1 ; serial
|
||||
20 ; refresh (20 seconds)
|
||||
20 ; retry (20 seconds)
|
||||
1814400 ; expire (3 weeks)
|
||||
3600 ; minimum (1 hour)
|
||||
)
|
||||
NS ns
|
||||
ns A 10.53.0.3
|
||||
|
||||
a A 10.0.0.1
|
||||
b A 10.0.0.2
|
||||
d A 10.0.0.4
|
||||
x CNAME a
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2009-2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: tests.sh,v 1.4.6.8 2010/12/15 18:44:16 each Exp $
|
||||
# $Id: tests.sh,v 1.4.6.22 2011/07/08 01:46:41 each Exp $
|
||||
|
||||
SYSTEMTESTTOP=..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
@@ -26,6 +26,34 @@ n=0
|
||||
|
||||
DIGOPTS="+tcp +noadd +nosea +nostat +nocmd +dnssec -p 5300"
|
||||
|
||||
# convert private-type records to readable form
|
||||
showprivate () {
|
||||
echo "-- $@ --"
|
||||
$DIG $DIGOPTS +nodnssec +short @$2 -t type65534 $1 | cut -f3 -d' ' |
|
||||
while read record; do
|
||||
perl -e 'my $rdata = pack("H*", @ARGV[0]);
|
||||
die "invalid record" unless length($rdata) == 5;
|
||||
my ($alg, $key, $remove, $complete) = unpack("CnCC", $rdata);
|
||||
my $action = "signing";
|
||||
$action = "removing" if $remove;
|
||||
my $state = " (incomplete)";
|
||||
$state = " (complete)" if $complete;
|
||||
print ("$action: alg: $alg, key: $key$state\n");' $record
|
||||
done
|
||||
}
|
||||
|
||||
# check that signing records are marked as complete
|
||||
checkprivate () {
|
||||
ret=0
|
||||
x=`showprivate "$@"`
|
||||
echo $x | grep incomplete >&- 2>&- && ret=1
|
||||
[ $ret = 1 ] && {
|
||||
echo "$x"
|
||||
echo "I:failed"
|
||||
}
|
||||
return $ret
|
||||
}
|
||||
|
||||
#
|
||||
# The NSEC record at the apex of the zone and its RRSIG records are
|
||||
# added as part of the last step in signing a zone. We wait for the
|
||||
@@ -37,14 +65,24 @@ i=0
|
||||
while [ $i -lt 30 ]
|
||||
do
|
||||
ret=0
|
||||
for z in bar example private.secure.example
|
||||
#
|
||||
# Wait for the root DNSKEY RRset to be fully signed.
|
||||
#
|
||||
$DIG $DIGOPTS . @10.53.0.1 dnskey > dig.out.ns1.test$n || ret=1
|
||||
grep "ANSWER: 10," dig.out.ns1.test$n > /dev/null || ret=1
|
||||
for z in .
|
||||
do
|
||||
$DIG $DIGOPTS $z. @10.53.0.2 nsec > dig.out.ns2.test$n || ret=1
|
||||
$DIG $DIGOPTS $z @10.53.0.1 nsec > dig.out.ns1.test$n || ret=1
|
||||
grep "NS SOA" dig.out.ns1.test$n > /dev/null || ret=1
|
||||
done
|
||||
for z in bar. example. private.secure.example.
|
||||
do
|
||||
$DIG $DIGOPTS $z @10.53.0.2 nsec > dig.out.ns2.test$n || ret=1
|
||||
grep "NS SOA" dig.out.ns2.test$n > /dev/null || ret=1
|
||||
done
|
||||
for z in bar example
|
||||
for z in bar. example.
|
||||
do
|
||||
$DIG $DIGOPTS $z. @10.53.0.3 nsec > dig.out.ns3.test$n || ret=1
|
||||
$DIG $DIGOPTS $z @10.53.0.3 nsec > dig.out.ns3.test$n || ret=1
|
||||
grep "NS SOA" dig.out.ns3.test$n > /dev/null || ret=1
|
||||
done
|
||||
i=`expr $i + 1`
|
||||
@@ -118,6 +156,42 @@ END
|
||||
echo "I:waiting for change to take effect"
|
||||
sleep 3
|
||||
|
||||
echo "I:checking that expired RRSIGs from missing key are not deleted ($n)"
|
||||
ret=0
|
||||
missing=`sed 's/^K.*+007+0*\([0-9]\)/\1/' < missingzsk.key`
|
||||
$JOURNALPRINT ns3/nozsk.example.db.jnl | \
|
||||
awk '{if ($1 == "del" && $5 == "RRSIG" && $12 == id) {exit 1}} END {exit 0}' id=$missing || ret=1
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking that expired RRSIGs from inactive key are not deleted ($n)"
|
||||
ret=0
|
||||
inactive=`sed 's/^K.*+007+0*\([0-9]\)/\1/' < inactivezsk.key`
|
||||
$JOURNALPRINT ns3/inaczsk.example.db.jnl | \
|
||||
awk '{if ($1 == "del" && $5 == "RRSIG" && $12 == id) {exit 1}} END {exit 0}' id=$inactive || ret=1
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking that non-replaceable RRSIGs are logged only once ($n)"
|
||||
ret=0
|
||||
loglines=`grep "Key nozsk.example/NSEC3RSASHA1/$missing .* retaining signatures" ns3/named.run | wc -l`
|
||||
[ "$loglines" -eq 1 ] || ret=1
|
||||
loglines=`grep "Key inaczsk.example/NSEC3RSASHA1/$missing .* retaining signatures" ns3/named.run | wc -l`
|
||||
[ "$loglines" -eq 1 ] || ret=1
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
# This test is above the rndc freeze/thaw calls because the apex node
|
||||
# will be resigned on thaw, increasing the serial number again.
|
||||
echo "I:checking serial is not incremented when signatures are unchanged ($n)"
|
||||
ret=0
|
||||
newserial=`$DIG $DIGOPTS +short soa nozsk.example @10.53.0.3 | awk '$0 !~ /SOA/ {print $3}'`
|
||||
[ "$newserial" -eq 2 ] || ret=1
|
||||
newserial=`$DIG $DIGOPTS +short soa inaczsk.example @10.53.0.3 | awk '$0 !~ /SOA/ {print $3}'`
|
||||
[ "$newserial" -eq 2 ] || ret=1
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
# Send rndc freeze command to ns1, ns2 and ns3, to force the dynamically
|
||||
# signed zones to be dumped to their zone files
|
||||
echo "I:dumping zone files"
|
||||
@@ -560,7 +634,7 @@ status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking that revoked key is present ($n)"
|
||||
ret=0
|
||||
id=`sed 's/^K.+007+0*//' < rev.key`
|
||||
id=`sed 's/^K.+007+0*\([0-9]\)/\1/' < rev.key`
|
||||
id=`expr $id + 128 % 65536`
|
||||
$DIG $DIGOPTS +multi dnskey . @10.53.0.1 > dig.out.ns1.test$n || ret=1
|
||||
grep '; key id = '"$id"'$' dig.out.ns1.test$n > /dev/null || ret=1
|
||||
@@ -570,7 +644,7 @@ status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking that revoked key self-signs ($n)"
|
||||
ret=0
|
||||
id=`sed 's/^K.+007+0*//' < rev.key`
|
||||
id=`sed 's/^K.+007+0*\([0-9]\)/\1/' < rev.key`
|
||||
id=`expr $id + 128 % 65536`
|
||||
$DIG $DIGOPTS dnskey . @10.53.0.1 > dig.out.ns1.test$n || ret=1
|
||||
grep 'RRSIG.*'" $id "'\. ' dig.out.ns1.test$n > /dev/null || ret=1
|
||||
@@ -580,7 +654,7 @@ status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking for unpublished key ($n)"
|
||||
ret=0
|
||||
id=`sed 's/^K.+007+0*//' < unpub.key`
|
||||
id=`sed 's/^K.+007+0*\([0-9]\)/\1/' < unpub.key`
|
||||
$DIG $DIGOPTS +multi dnskey . @10.53.0.1 > dig.out.ns1.test$n || ret=1
|
||||
grep '; key id = '"$id"'$' dig.out.ns1.test$n > /dev/null && ret=1
|
||||
n=`expr $n + 1`
|
||||
@@ -589,7 +663,7 @@ status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking that standby key does not sign records ($n)"
|
||||
ret=0
|
||||
ed=`sed 's/^K.+007+0*//' < standby.key`
|
||||
ed=`sed 's/^K.+007+0*\([0-9]\)/\1/' < standby.key`
|
||||
$DIG $DIGOPTS dnskey . @10.53.0.1 > dig.out.ns1.test$n || ret=1
|
||||
grep 'RRSIG.*'" $id "'\. ' dig.out.ns1.test$n > /dev/null && ret=1
|
||||
n=`expr $n + 1`
|
||||
@@ -598,7 +672,7 @@ status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking that deactivated key does not sign records ($n)"
|
||||
ret=0
|
||||
id=`sed 's/^K.+007+0*//' < inact.key`
|
||||
id=`sed 's/^K.+007+0*\([0-9]\)/\1/' < inact.key`
|
||||
$DIG $DIGOPTS dnskey . @10.53.0.1 > dig.out.ns1.test$n || ret=1
|
||||
grep 'RRSIG.*'" $id "'\. ' dig.out.ns1.test$n > /dev/null && ret=1
|
||||
n=`expr $n + 1`
|
||||
@@ -607,7 +681,7 @@ status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking insertion of public-only key ($n)"
|
||||
ret=0
|
||||
id=`sed 's/^K.+007+0*//' < nopriv.key`
|
||||
id=`sed 's/^K.+007+0*\([0-9]\)/\1/' < nopriv.key`
|
||||
file="ns1/`cat nopriv.key`.key"
|
||||
keydata=`grep DNSKEY $file`
|
||||
$NSUPDATE > /dev/null 2>&1 <<END || status=1
|
||||
@@ -626,7 +700,7 @@ status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking key deletion ($n)"
|
||||
ret=0
|
||||
id=`sed 's/^K.+007+0*//' < del.key`
|
||||
id=`sed 's/^K.+007+0*\([0-9]\)/\1/' < del.key`
|
||||
$DIG $DIGOPTS +multi dnskey . @10.53.0.1 > dig.out.ns1.test$n || ret=1
|
||||
grep '; key id = '"$id"'$' dig.out.ns1.test$n > /dev/null && ret=1
|
||||
n=`expr $n + 1`
|
||||
@@ -642,7 +716,7 @@ send
|
||||
END
|
||||
sleep 2
|
||||
$DIG $DIGOPTS axfr secure-to-insecure.example @10.53.0.3 > dig.out.ns3.test$n || ret=1
|
||||
egrep 'RRSIG.*'" $newid "'\. ' dig.out.ns3.test$n > /dev/null && ret=1
|
||||
egrep 'RRSIG' dig.out.ns3.test$n > /dev/null && ret=1
|
||||
egrep '(DNSKEY|NSEC)' dig.out.ns3.test$n > /dev/null && ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
@@ -656,7 +730,7 @@ $SETTIME -I now -D now $file > /dev/null
|
||||
$RNDC -c ../common/rndc.conf -s 10.53.0.3 -p 9953 sign secure-to-insecure2.example. 2>&1 | sed 's/^/I:ns3 /'
|
||||
sleep 2
|
||||
$DIG $DIGOPTS axfr secure-to-insecure2.example @10.53.0.3 > dig.out.ns3.test$n || ret=1
|
||||
egrep 'RRSIG.*'" $newid "'\. ' dig.out.ns3.test$n > /dev/null && ret=1
|
||||
egrep 'RRSIG' dig.out.ns3.test$n > /dev/null && ret=1
|
||||
egrep '(DNSKEY|NSEC3)' dig.out.ns3.test$n > /dev/null && ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
@@ -694,17 +768,19 @@ file="ns1/`cat vanishing.key`.private"
|
||||
rm -f $file
|
||||
|
||||
echo "I:preparing ZSK roll"
|
||||
starttime=`$PERL -e 'print time(), "\n";'`
|
||||
oldfile=`cat active.key`
|
||||
oldid=`sed 's/^K.+007+0*//' < active.key`
|
||||
oldid=`sed 's/^K.+007+0*\([0-9]\)/\1/' < active.key`
|
||||
newfile=`cat standby.key`
|
||||
newid=`sed 's/^K.+007+0*//' < standby.key`
|
||||
$SETTIME -K ns1 -I now -D now+15 $oldfile > /dev/null
|
||||
newid=`sed 's/^K.+007+0*\([0-9]\)/\1/' < standby.key`
|
||||
$SETTIME -K ns1 -I now+2s -D now+25 $oldfile > /dev/null
|
||||
$SETTIME -K ns1 -i 0 -S $oldfile $newfile > /dev/null
|
||||
|
||||
# note previous zone serial number
|
||||
oldserial=`$DIG $DIGOPTS +short soa . @10.53.0.1 | awk '{print $3}'`
|
||||
|
||||
$RNDC -c ../common/rndc.conf -s 10.53.0.1 -p 9953 loadkeys . 2>&1 | sed 's/^/I:ns1 /'
|
||||
sleep 4
|
||||
|
||||
echo "I:revoking key to duplicated key ID"
|
||||
$SETTIME -R now -K ns2 Kbar.+005+30676.key > /dev/null
|
||||
@@ -731,6 +807,36 @@ n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking that signing records have been marked as complete ($n)"
|
||||
ret=0
|
||||
checkprivate . 10.53.0.1 || ret=1
|
||||
checkprivate bar 10.53.0.2 || ret=1
|
||||
checkprivate example 10.53.0.2 || ret=1
|
||||
checkprivate private.secure.example 10.53.0.3 || ret=1
|
||||
checkprivate nsec3.example 10.53.0.3 || ret=1
|
||||
checkprivate nsec3.nsec3.example 10.53.0.3 || ret=1
|
||||
checkprivate nsec3.optout.example 10.53.0.3 || ret=1
|
||||
checkprivate nsec3-to-nsec.example 10.53.0.3 || ret=1
|
||||
checkprivate nsec.example 10.53.0.3 || ret=1
|
||||
checkprivate oldsigs.example 10.53.0.3 || ret=1
|
||||
checkprivate optout.example 10.53.0.3 || ret=1
|
||||
checkprivate optout.nsec3.example 10.53.0.3 || ret=1
|
||||
checkprivate optout.optout.example 10.53.0.3 || ret=1
|
||||
checkprivate prepub.example 10.53.0.3 || ret=1
|
||||
checkprivate rsasha256.example 10.53.0.3 || ret=1
|
||||
checkprivate rsasha512.example 10.53.0.3 || ret=1
|
||||
checkprivate secure.example 10.53.0.3 || ret=1
|
||||
checkprivate secure.nsec3.example 10.53.0.3 || ret=1
|
||||
checkprivate secure.optout.example 10.53.0.3 || ret=1
|
||||
checkprivate secure-to-insecure2.example 10.53.0.3 || ret=1
|
||||
checkprivate secure-to-insecure.example 10.53.0.3 || ret=1
|
||||
checkprivate ttl1.example 10.53.0.3 || ret=1
|
||||
checkprivate ttl2.example 10.53.0.3 || ret=1
|
||||
checkprivate ttl3.example 10.53.0.3 || ret=1
|
||||
checkprivate ttl4.example 10.53.0.3 || ret=1
|
||||
n=`expr $n + 1`
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:forcing full sign"
|
||||
$RNDC -c ../common/rndc.conf -s 10.53.0.1 -p 9953 sign . 2>&1 | sed 's/^/I:ns1 /'
|
||||
|
||||
@@ -754,10 +860,72 @@ n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:waiting for former active key to be removed"
|
||||
sleep 10
|
||||
echo "I:checking delayed key publication/activation ($n)"
|
||||
ret=0
|
||||
zsk=`cat delayzsk.key`
|
||||
ksk=`cat delayksk.key`
|
||||
# publication and activation times should be unset
|
||||
$SETTIME -K ns3 -pA -pP $zsk | grep -v UNSET > /dev/null 2>&1 && ret=1
|
||||
$SETTIME -K ns3 -pA -pP $ksk | grep -v UNSET > /dev/null 2>&1 && ret=1
|
||||
$DIG $DIGOPTS +noall +answer dnskey delay.example. @10.53.0.3 > dig.out.ns3.test$n || ret=1
|
||||
# DNSKEY not expected:
|
||||
awk 'BEGIN {r=1} $4=="DNSKEY" {r=0} END {exit r}' dig.out.ns3.test$n && ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking key was removed ($n)"
|
||||
echo "I:checking scheduled key publication, not activation ($n)"
|
||||
ret=0
|
||||
$SETTIME -K ns3 -P now+3s -A none $zsk > /dev/null 2>&1
|
||||
$SETTIME -K ns3 -P now+3s -A none $ksk > /dev/null 2>&1
|
||||
$RNDC -c ../common/rndc.conf -s 10.53.0.3 -p 9953 loadkeys delay.example. 2>&1 | sed 's/^/I:ns2 /'
|
||||
|
||||
echo "I:waiting for changes to take effect"
|
||||
sleep 5
|
||||
|
||||
$DIG $DIGOPTS +noall +answer dnskey delay.example. @10.53.0.3 > dig.out.ns3.test$n || ret=1
|
||||
# DNSKEY expected:
|
||||
awk 'BEGIN {r=1} $4=="DNSKEY" {r=0} END {exit r}' dig.out.ns3.test$n || ret=1
|
||||
# RRSIG not expected:
|
||||
awk 'BEGIN {r=1} $4=="RRSIG" {r=0} END {exit r}' dig.out.ns3.test$n && ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking scheduled key activation ($n)"
|
||||
ret=0
|
||||
$SETTIME -K ns3 -A now+3s $zsk > /dev/null 2>&1
|
||||
$SETTIME -K ns3 -A now+3s $ksk > /dev/null 2>&1
|
||||
$RNDC -c ../common/rndc.conf -s 10.53.0.3 -p 9953 loadkeys delay.example. 2>&1 | sed 's/^/I:ns2 /'
|
||||
|
||||
echo "I:waiting for changes to take effect"
|
||||
sleep 5
|
||||
|
||||
$DIG $DIGOPTS +noall +answer dnskey delay.example. @10.53.0.3 > dig.out.ns3.1.test$n || ret=1
|
||||
# DNSKEY expected:
|
||||
awk 'BEGIN {r=1} $4=="DNSKEY" {r=0} END {exit r}' dig.out.ns3.1.test$n || ret=1
|
||||
# RRSIG expected:
|
||||
awk 'BEGIN {r=1} $4=="RRSIG" {r=0} END {exit r}' dig.out.ns3.1.test$n || ret=1
|
||||
$DIG $DIGOPTS +noall +answer a a.delay.example. @10.53.0.3 > dig.out.ns3.2.test$n || ret=1
|
||||
# A expected:
|
||||
awk 'BEGIN {r=1} $4=="A" {r=0} END {exit r}' dig.out.ns3.2.test$n || ret=1
|
||||
# RRSIG expected:
|
||||
awk 'BEGIN {r=1} $4=="RRSIG" {r=0} END {exit r}' dig.out.ns3.2.test$n || ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking former active key was removed ($n)"
|
||||
#
|
||||
# Work out how long we need to sleep. Allow 4 seconds for the records
|
||||
# to be removed.
|
||||
#
|
||||
now=`$PERL -e 'print time(), "\n";'`
|
||||
sleep=`expr $starttime + 29 - $now`
|
||||
case $sleep in
|
||||
-*|0);;
|
||||
*) echo "I:waiting for timer to have activated"; sleep $sleep;;
|
||||
esac
|
||||
ret=0
|
||||
$DIG $DIGOPTS +multi dnskey . @10.53.0.1 > dig.out.ns1.test$n || ret=1
|
||||
grep '; key id =.*'"$oldid"'$' dig.out.ns1.test$n > /dev/null && ret=1
|
||||
@@ -767,7 +935,7 @@ status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking private key file removal caused no immediate harm ($n)"
|
||||
ret=0
|
||||
id=`sed 's/^K.+007+0*//' < vanishing.key`
|
||||
id=`sed 's/^K.+007+0*\([0-9]\)/\1/' < vanishing.key`
|
||||
$DIG $DIGOPTS dnskey . @10.53.0.1 > dig.out.ns1.test$n || ret=1
|
||||
grep 'RRSIG.*'" $id "'\. ' dig.out.ns1.test$n > /dev/null || ret=1
|
||||
n=`expr $n + 1`
|
||||
@@ -778,11 +946,56 @@ echo "I:checking revoked key with duplicate key ID (failure expected) ($n)"
|
||||
lret=0
|
||||
id=30676
|
||||
$DIG $DIGOPTS +multi dnskey bar @10.53.0.2 > dig.out.ns2.test$n || lret=1
|
||||
grep '; key id =.*'"$id"'$' dig.out.ns2.test$n || lret=1
|
||||
grep '; key id =.*'"$id"'$' dig.out.ns2.test$n > /dev/null || lret=1
|
||||
$DIG $DIGOPTS dnskey bar @10.53.0.4 > dig.out.ns4.test$n || lret=1
|
||||
grep "flags:.*ad.*QUERY" dig.out.ns4.test$n > /dev/null || lret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $lret != 0 ]; then echo "I:failed"; fi
|
||||
if [ $lret != 0 ]; then echo "I:not yet implemented"; fi
|
||||
|
||||
echo "I:checking key event timers are always set ($n)"
|
||||
# this is a regression test for a bug in which the next key event could
|
||||
# be scheduled for the present moment, and then never fire. check for
|
||||
# visible evidence of this error in the logs:
|
||||
awk '/next key event/ {if ($1 == $8 && $2 == $9) exit 1}' */named.run || ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
# this confirms that key events are never scheduled more than
|
||||
# a given number of seconds into the future, and that the last
|
||||
# event scheduled is precisely that far in the future.
|
||||
check_interval () {
|
||||
awk '/next key event/ {print $2 ":" $9}' $1/named.run |
|
||||
sed 's/\.//g' |
|
||||
awk -F: '
|
||||
{
|
||||
x = ($6+ $5*60000 + $4*3600000) - ($3+ $2*60000 + $1*3600000);
|
||||
# abs(x) < 500 ms treat as 'now'
|
||||
if (x < 500 && x > -500)
|
||||
x = 0;
|
||||
# convert to seconds
|
||||
x = x/1000;
|
||||
# handle end of day roll over
|
||||
if (x < 0)
|
||||
x = x + 24*3600;
|
||||
# handle log timestamp being a few milliseconds later
|
||||
if (x != int(x))
|
||||
x = int(x + 1);
|
||||
if (int(x) > int(interval))
|
||||
exit (1);
|
||||
}
|
||||
END { if (int(x) != int(interval)) exit(1) }' interval=$2
|
||||
return $?
|
||||
}
|
||||
|
||||
echo "I:checking automatic key reloading interval ($n)"
|
||||
ret=0
|
||||
check_interval ns1 3600 || ret=1
|
||||
check_interval ns2 3600 || ret=1
|
||||
check_interval ns3 3600 || ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:exit status: $status"
|
||||
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2011 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: clean.sh,v 1.1.4.2 2011/05/07 05:52:58 each Exp $
|
||||
|
||||
rm -f good.conf.in good.conf.out
|
||||
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* Copyright (C) 2011 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: dnssec.1,v 1.1.4.4 2011/05/08 07:05:12 marka Exp $ */
|
||||
|
||||
options {
|
||||
dnssec-validation yes;
|
||||
dnssec-enable no;
|
||||
};
|
||||
@@ -0,0 +1,26 @@
|
||||
/*
|
||||
* Copyright (C) 2011 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: dnssec.2,v 1.1.4.4 2011/05/08 07:05:12 marka Exp $ */
|
||||
|
||||
options {
|
||||
dnssec-validation yes;
|
||||
};
|
||||
|
||||
view view1 {
|
||||
match-clients { any; };
|
||||
dnssec-enable no;
|
||||
};
|
||||
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* Copyright (C) 2011 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: dnssec.3,v 1.1.4.4 2011/05/08 07:05:12 marka Exp $ */
|
||||
|
||||
options {
|
||||
dnssec-validation yes;
|
||||
dnssec-enable yes;
|
||||
};
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2005, 2007, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2005, 2007, 2010, 2011 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
|
||||
@@ -14,18 +14,25 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: good.conf,v 1.4.558.2 2010/06/02 01:27:20 tbox Exp $ */
|
||||
/* $Id: good.conf,v 1.4.558.4 2011/05/07 23:46:35 tbox Exp $ */
|
||||
|
||||
/*
|
||||
* This is just a random selection of configuration options.
|
||||
*/
|
||||
|
||||
/* cut here */
|
||||
options {
|
||||
avoid-v4-udp-ports { 100; };
|
||||
avoid-v6-udp-ports { 100; };
|
||||
blackhole { 10.0.0.0/8; };
|
||||
coresize 1G;
|
||||
datasize 100M;
|
||||
avoid-v4-udp-ports {
|
||||
100;
|
||||
};
|
||||
avoid-v6-udp-ports {
|
||||
100;
|
||||
};
|
||||
blackhole {
|
||||
10.0.0.0/8;
|
||||
};
|
||||
coresize 1073741824;
|
||||
datasize 104857600;
|
||||
deallocate-on-exit yes;
|
||||
directory ".";
|
||||
dump-file "named_dumpdb";
|
||||
@@ -37,9 +44,15 @@ options {
|
||||
host-statistics-max 100;
|
||||
hostname none;
|
||||
interface-interval 30;
|
||||
listen-on port 90 { any; };
|
||||
listen-on port 100 { 127.0.0.1; };
|
||||
listen-on-v6 port 53 { none; };
|
||||
listen-on port 90 {
|
||||
"any";
|
||||
};
|
||||
listen-on port 100 {
|
||||
127.0.0.1/32;
|
||||
};
|
||||
listen-on-v6 port 53 {
|
||||
"none";
|
||||
};
|
||||
match-mapped-addresses yes;
|
||||
memstatistics-file "named.memstats";
|
||||
multiple-cnames no;
|
||||
@@ -54,9 +67,27 @@ options {
|
||||
serial-query-rate 100;
|
||||
server-id none;
|
||||
};
|
||||
|
||||
zone "example1" {
|
||||
type master;
|
||||
file "xxx";
|
||||
update-policy local;
|
||||
view "first" {
|
||||
match-clients {
|
||||
"none";
|
||||
};
|
||||
zone "example1" {
|
||||
type master;
|
||||
file "xxx";
|
||||
update-policy local;
|
||||
};
|
||||
dnssec-lookaside auto;
|
||||
dnssec-validation yes;
|
||||
};
|
||||
view "second" {
|
||||
match-clients {
|
||||
"any";
|
||||
};
|
||||
zone "example1" {
|
||||
type master;
|
||||
file "yyy";
|
||||
update-policy local;
|
||||
};
|
||||
dnssec-lookaside "." trust-anchor "dlv.isc.org.";
|
||||
dnssec-validation yes;
|
||||
};
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2005, 2007, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2005, 2007, 2010, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
# purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -12,7 +12,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: tests.sh,v 1.3.558.2 2010/06/02 01:27:20 tbox Exp $
|
||||
# $Id: tests.sh,v 1.3.558.4 2011/05/07 23:46:35 tbox Exp $
|
||||
|
||||
SYSTEMTESTTOP=..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
@@ -20,7 +20,6 @@ SYSTEMTESTTOP=..
|
||||
status=0
|
||||
|
||||
echo "I: checking that named-checkconf handles a known good config"
|
||||
|
||||
ret=0
|
||||
$CHECKCONF good.conf > /dev/null 2>&1 || ret=1
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
@@ -28,13 +27,25 @@ status=`expr $status + $ret`
|
||||
|
||||
echo "I: checking that named-checkconf prints a known good config"
|
||||
ret=0
|
||||
$CHECKCONF -p good.conf > /dev/null 2>&1 || ret=1
|
||||
awk 'BEGIN { ok = 0; } /cut here/ { ok = 1; getline } ok == 1 { print }' good.conf > good.conf.in
|
||||
[ -s good.conf.in ] || ret=1
|
||||
$CHECKCONF -p good.conf.in | grep -v '^good.conf.in:' > good.conf.out 2>&1 || ret=1
|
||||
cmp good.conf.in good.conf.out || ret=1
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
echo "I: checking that named-checkconf handles a known bad config"
|
||||
|
||||
ret=1
|
||||
$CHECKCONF bad.conf > /dev/null 2>&1 || ret=0
|
||||
echo "I: checking that named-checkconf handles a known bad config"
|
||||
ret=0
|
||||
$CHECKCONF bad.conf > /dev/null 2>&1 && ret=1
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I: checking named-checkconf dnssec warnings"
|
||||
ret=0
|
||||
$CHECKCONF dnssec.1 2>&1 | grep 'validation yes.*enable no' > /dev/null || ret=1
|
||||
$CHECKCONF dnssec.2 2>&1 | grep 'validation yes.*enable no' > /dev/null || ret=1
|
||||
# this one should have no warnings
|
||||
$CHECKCONF dnssec.3 2>&1 | grep '.*' && ret=1
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
# Copyright (C) 2011 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: clean.sh,v 1.2.4.2 2011/03/02 04:30:52 marka Exp $
|
||||
|
||||
rm -f test.out.*
|
||||
@@ -0,0 +1,33 @@
|
||||
# Copyright (C) 2011 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: tests.sh,v 1.2.4.2 2011/03/02 04:30:53 marka Exp $
|
||||
|
||||
SYSTEMTESTTOP=..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
|
||||
status=0
|
||||
n=1
|
||||
|
||||
for db in zones/good*.db
|
||||
do
|
||||
echo "I:checking $db ($n)"
|
||||
ret=0
|
||||
$CHECKZONE example $db > test.out.$n 2>&1 || ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
done
|
||||
|
||||
exit $status
|
||||
@@ -0,0 +1,25 @@
|
||||
; Copyright (C) 2011 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: good1.db,v 1.2.4.2 2011/03/02 04:30:53 marka Exp $
|
||||
|
||||
|
||||
$TTL 600
|
||||
@ SOA ns hostmaster 2011012708 3600 1200 604800 1200
|
||||
NS ns
|
||||
ns A 192.0.2.1
|
||||
|
||||
ns-and-dname NS ns.ns-and-dname
|
||||
DNAME example.com.
|
||||
ns.ns-and-dname A 203.178.141.207
|
||||
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* Copyright (C) 2011 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: rndc.key,v 1.2.4.3 2011/03/12 04:58:25 tbox Exp $ */
|
||||
|
||||
key rndc_key {
|
||||
secret "1234abcd8765";
|
||||
algorithm hmac-md5;
|
||||
};
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: conf.sh.in,v 1.43.8.10 2010/12/07 03:01:37 marka Exp $
|
||||
# $Id: conf.sh.in,v 1.43.8.19 2011/04/19 22:32:23 each Exp $
|
||||
|
||||
#
|
||||
# Common configuration data for system tests, to be sourced into
|
||||
@@ -52,11 +52,12 @@ JOURNALPRINT=$TOP/bin/tools/named-journalprint
|
||||
# The "stress" test is not run by default since it creates enough
|
||||
# load on the machine to make it unusable to other users.
|
||||
# v6synth
|
||||
SUBDIRS="acl allow_query addzone autosign cacheclean checkconf checknames
|
||||
dlv @DLZ_SYSTEM_TEST@ dnssec forward glue ixfr limits lwresd
|
||||
masterfile masterformat metadata notify nsupdate pending pkcs11
|
||||
resolver rrsetorder sortlist smartsign stub tkey unknown upforwd
|
||||
views xfer xferquota zonechecks"
|
||||
SUBDIRS="acl allow_query addzone autosign cacheclean checkconf
|
||||
checknames checkzone database dlv dlvauto dlz
|
||||
dname dnssec forward glue ixfr limits logfileconfig lwresd
|
||||
masterfile masterformat metadata notify nsupdate pending
|
||||
pkcs11 resolver rrsetorder sortlist smartsign stub tkey
|
||||
unknown upforwd views xfer xferquota zonechecks"
|
||||
|
||||
# PERL will be an empty string if no perl interpreter was found.
|
||||
PERL=@PERL@
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2011 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: clean.sh,v 1.2.4.3 2011/02/28 01:19:27 tbox Exp $
|
||||
|
||||
rm -f ns1/named.conf ns1/named.run ns1/named.memstats
|
||||
rm -f dig.out.*
|
||||
@@ -0,0 +1,47 @@
|
||||
/*
|
||||
* Copyright (C) 2011 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.conf1,v 1.2.4.3 2011/02/28 01:19:27 tbox Exp $ */
|
||||
|
||||
// NS1
|
||||
|
||||
key rndc_key {
|
||||
secret "1234abcd8765";
|
||||
algorithm hmac-md5;
|
||||
};
|
||||
|
||||
controls {
|
||||
inet 10.53.0.1 port 9953 allow { any; } keys { rndc_key; };
|
||||
};
|
||||
|
||||
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;
|
||||
notify yes;
|
||||
dnssec-enable yes;
|
||||
dnssec-validation yes;
|
||||
};
|
||||
|
||||
zone "database" {
|
||||
type master;
|
||||
database "_builtin empty localhost. hostmaster.isc.org.";
|
||||
};
|
||||
@@ -0,0 +1,47 @@
|
||||
/*
|
||||
* Copyright (C) 2011 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.conf2,v 1.2.4.3 2011/02/28 01:19:27 tbox Exp $ */
|
||||
|
||||
// NS1
|
||||
|
||||
key rndc_key {
|
||||
secret "1234abcd8765";
|
||||
algorithm hmac-md5;
|
||||
};
|
||||
|
||||
controls {
|
||||
inet 10.53.0.1 port 9953 allow { any; } keys { rndc_key; };
|
||||
};
|
||||
|
||||
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;
|
||||
notify yes;
|
||||
dnssec-enable yes;
|
||||
dnssec-validation yes;
|
||||
};
|
||||
|
||||
zone "database" {
|
||||
type master;
|
||||
database "_builtin empty localhost. marka.isc.org.";
|
||||
};
|
||||
@@ -0,0 +1,19 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2011 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: setup.sh,v 1.2.4.3 2011/02/28 01:19:27 tbox Exp $
|
||||
|
||||
cp ns1/named.conf1 ns1/named.conf
|
||||
@@ -0,0 +1,60 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2011 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: tests.sh,v 1.2.4.3 2011/02/28 01:19:27 tbox Exp $
|
||||
|
||||
SYSTEMTESTTOP=..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
|
||||
status=0
|
||||
n=0
|
||||
|
||||
rm -f dig.out.*
|
||||
|
||||
DIGOPTS="+tcp +noadd +nosea +nostat +nocmd +dnssec -p 5300"
|
||||
RNDCCMD="$RNDC -s 10.53.0.1 -p 9953 -c ../common/rndc.conf"
|
||||
|
||||
# Check the example. domain
|
||||
|
||||
echo "I:checking pre reload zone ($n)"
|
||||
ret=0
|
||||
$DIG $DIGOPTS soa database. @10.53.0.1 > dig.out.ns1.test$n || ret=1
|
||||
grep "hostmaster\.isc\.org" dig.out.ns1.test$n > /dev/null || ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
cp ns1/named.conf2 ns1/named.conf
|
||||
$RNDCCMD reload 2>&1 >/dev/null
|
||||
|
||||
echo "I:checking post reload zone ($n)"
|
||||
ret=1
|
||||
try=0
|
||||
while test $try -lt 6
|
||||
do
|
||||
sleep 1
|
||||
ret=0
|
||||
$DIG $DIGOPTS soa database. @10.53.0.1 > dig.out.ns1.test$n || ret=1
|
||||
grep "marka\.isc\.org" dig.out.ns1.test$n > /dev/null || ret=1
|
||||
try=`expr $try + 1`
|
||||
test $ret -eq 0 && break
|
||||
done
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:exit status: $status"
|
||||
exit $status
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2004, 2007, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004, 2007, 2010, 2011 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
|
||||
@@ -14,17 +14,30 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: clean.sh,v 1.5.476.2 2010/05/27 23:49:55 tbox Exp $
|
||||
# $Id: clean.sh,v 1.5.476.4 2011/05/26 23:46:24 tbox Exp $
|
||||
|
||||
rm -f random.data
|
||||
rm -f ns*/named.run
|
||||
rm -f ns1/K*
|
||||
rm -f ns1/dsset-*
|
||||
rm -f ns1/*.signed
|
||||
rm -f ns1/signer.err
|
||||
rm -f ns1/root.db
|
||||
rm -f ns2/K*
|
||||
rm -f ns2/dlvset-*
|
||||
rm -f ns2/dsset-*
|
||||
rm -f ns2/*.signed
|
||||
rm -f ns2/*.pre
|
||||
rm -f ns2/signer.err
|
||||
rm -f ns2/druz.db
|
||||
rm -f ns3/K*
|
||||
rm -f ns3/*.db
|
||||
rm -f ns3/*.signed
|
||||
rm -f ns3/dlvset-*
|
||||
rm -f ns3/dsset-*
|
||||
rm -f ns3/keyset-*
|
||||
rm -f ns3/trusted.conf ns5/trusted.conf
|
||||
rm -f ns1/trusted.conf ns5/trusted.conf
|
||||
rm -f ns3/trusted-dlv.conf ns5/trusted-dlv.conf
|
||||
rm -f ns3/signer.err
|
||||
rm -f ns6/K*
|
||||
rm -f ns6/*.db
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2007, 2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.4 2007/06/19 23:47:02 tbox Exp $ */
|
||||
/* $Id: named.conf,v 1.4.558.2 2011/05/26 23:46:24 tbox Exp $ */
|
||||
|
||||
controls { /* empty */ };
|
||||
|
||||
@@ -28,8 +28,8 @@ options {
|
||||
listen-on-v6 { none; };
|
||||
recursion no;
|
||||
notify yes;
|
||||
dnssec-enable no;
|
||||
dnssec-enable yes;
|
||||
};
|
||||
|
||||
zone "." { type master; file "root.db"; };
|
||||
zone "." { type master; file "root.signed"; };
|
||||
zone "rootservers.utld" { type master; file "rootservers.utld.db"; };
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
; Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
; Copyright (C) 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
;
|
||||
; Permission to use, copy, modify, and/or distribute this software for any
|
||||
; purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -12,7 +12,7 @@
|
||||
; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
; PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
; $Id: root.db,v 1.4 2007/06/19 23:47:02 tbox Exp $
|
||||
; $Id: root.db.in,v 1.2.6.3 2011/05/26 23:46:24 tbox Exp $
|
||||
|
||||
$TTL 120
|
||||
@ SOA ns.rootservers.utld hostmaster.ns.rootservers.utld (
|
||||
@@ -22,3 +22,5 @@ ns A 10.53.0.1
|
||||
;
|
||||
utld NS ns.utld
|
||||
ns.utld A 10.53.0.2
|
||||
druz NS ns.druz
|
||||
ns.druz A 10.53.0.2
|
||||
Executable
+52
@@ -0,0 +1,52 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2011 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: sign.sh,v 1.2.6.3 2011/05/26 23:46:24 tbox Exp $
|
||||
|
||||
(cd ../ns2 && sh -e ./sign.sh || exit 1)
|
||||
|
||||
echo "I:dlv/ns1/sign.sh"
|
||||
|
||||
SYSTEMTESTTOP=../..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
|
||||
RANDFILE=../random.data
|
||||
|
||||
zone=.
|
||||
infile=root.db.in
|
||||
zonefile=root.db
|
||||
outfile=root.signed
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -r $RANDFILE -g -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
|
||||
echo "I: signed $zone"
|
||||
|
||||
grep -v '^;' $keyname2.key | $PERL -n -e '
|
||||
local ($dn, $class, $type, $flags, $proto, $alg, @rest) = split;
|
||||
local $key = join("", @rest);
|
||||
print <<EOF
|
||||
trusted-keys {
|
||||
"$dn" $flags $proto $alg "$key";
|
||||
};
|
||||
EOF
|
||||
' > trusted.conf
|
||||
cp trusted.conf ../ns5
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
; Copyright (C) 2011 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: druz.db.in,v 1.3.6.3 2011/05/26 23:46:24 tbox Exp $
|
||||
|
||||
$TTL 120
|
||||
@ SOA ns hostmaster.ns 1 3600 1200 604800 60
|
||||
@ NS ns
|
||||
ns A 10.53.0.2
|
||||
;
|
||||
rootservers NS ns.rootservers
|
||||
ns.rootservers A 10.53.0.1
|
||||
;
|
||||
;
|
||||
child1 NS ns.child1
|
||||
ns.child1 A 10.53.0.3
|
||||
;
|
||||
child2 NS ns.child2
|
||||
ns.child2 A 10.53.0.4
|
||||
;
|
||||
child3 NS ns.child3
|
||||
ns.child3 A 10.53.0.3
|
||||
;
|
||||
child4 NS ns.child4
|
||||
ns.child4 A 10.53.0.3
|
||||
;
|
||||
child5 NS ns.child5
|
||||
ns.child5 A 10.53.0.3
|
||||
;
|
||||
child6 NS ns.child6
|
||||
ns.child6 A 10.53.0.4
|
||||
;
|
||||
child7 NS ns.child7
|
||||
ns.child7 A 10.53.0.3
|
||||
;
|
||||
child8 NS ns.child8
|
||||
ns.child8 A 10.53.0.3
|
||||
;
|
||||
child9 NS ns.child9
|
||||
ns.child9 A 10.53.0.3
|
||||
;
|
||||
child10 NS ns.child10
|
||||
ns.child10 A 10.53.0.3
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2007, 2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.4 2007/06/19 23:47:02 tbox Exp $ */
|
||||
/* $Id: named.conf,v 1.4.558.2 2011/05/26 23:46:24 tbox Exp $ */
|
||||
|
||||
controls { /* empty */ };
|
||||
|
||||
@@ -28,8 +28,9 @@ options {
|
||||
listen-on-v6 { none; };
|
||||
recursion no;
|
||||
notify yes;
|
||||
dnssec-enable no;
|
||||
dnssec-enable yes;
|
||||
};
|
||||
|
||||
zone "." { type hint; file "hints"; };
|
||||
zone "utld" { type master; file "utld.db"; };
|
||||
zone "druz" { type master; file "druz.signed"; };
|
||||
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2011 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: sign.sh,v 1.2.6.3 2011/05/26 23:46:24 tbox Exp $
|
||||
|
||||
(cd ../ns3 && sh -e ./sign.sh || exit 1)
|
||||
|
||||
echo "I:dlv/ns2/sign.sh"
|
||||
|
||||
SYSTEMTESTTOP=../..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
|
||||
RANDFILE=../random.data
|
||||
|
||||
zone=druz.
|
||||
infile=druz.db.in
|
||||
zonefile=druz.db
|
||||
outfile=druz.pre
|
||||
dlvzone=utld.
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -g -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
|
||||
$CHECKZONE -q -D -i none druz druz.pre |
|
||||
sed '/IN DNSKEY/s/\([a-z0-9A-Z/]\{10\}\)[a-z0-9A-Z/]\{16\}/\1XXXXXXXXXXXXXXXX/'> druz.signed
|
||||
|
||||
echo "I: signed $zone"
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2007, 2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.4 2007/06/19 23:47:02 tbox Exp $ */
|
||||
/* $Id: named.conf,v 1.4.558.2 2011/05/26 23:46:25 tbox Exp $ */
|
||||
|
||||
controls { /* empty */ };
|
||||
|
||||
@@ -41,3 +41,11 @@ zone "child7.utld" { type master; file "child7.signed"; }; // no dlv
|
||||
zone "child8.utld" { type master; file "child8.signed"; }; // no dlv
|
||||
zone "child9.utld" { type master; file "child9.signed"; }; // dlv
|
||||
zone "child10.utld" { type master; file "child.db.in"; }; // dlv unsigned
|
||||
zone "child1.druz" { type master; file "child1.druz.signed"; }; // dlv
|
||||
zone "child3.druz" { type master; file "child3.druz.signed"; }; // dlv
|
||||
zone "child4.druz" { type master; file "child4.druz.signed"; }; // dlv
|
||||
zone "child5.druz" { type master; file "child5.druz.signed"; }; // dlv
|
||||
zone "child7.druz" { type master; file "child7.druz.signed"; }; // no dlv
|
||||
zone "child8.druz" { type master; file "child8.druz.signed"; }; // no dlv
|
||||
zone "child9.druz" { type master; file "child9.druz.signed"; }; // dlv
|
||||
zone "child10.druz" { type master; file "child.db.in"; }; // dlv unsigned
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2004, 2007, 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004, 2007, 2009-2011 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
|
||||
@@ -14,21 +14,24 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: sign.sh,v 1.6.32.3 2010/05/27 23:49:55 tbox Exp $
|
||||
# $Id: sign.sh,v 1.6.32.5 2011/05/26 23:46:25 tbox Exp $
|
||||
|
||||
(cd ../ns6 && sh -e ./sign.sh)
|
||||
|
||||
echo "I:dlv/ns3/sign.sh"
|
||||
|
||||
SYSTEMTESTTOP=../..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
|
||||
RANDFILE=../random.data
|
||||
dlvzone=dlv.utld.
|
||||
dlvsets=
|
||||
dssets=
|
||||
|
||||
zone=child1.utld.
|
||||
infile=child.db.in
|
||||
zonefile=child1.utld.db
|
||||
outfile=child1.signed
|
||||
dlvzone=dlv.utld.
|
||||
dlvsets="$dlvsets dlvset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
@@ -44,7 +47,6 @@ zone=child3.utld.
|
||||
infile=child.db.in
|
||||
zonefile=child3.utld.db
|
||||
outfile=child3.signed
|
||||
dlvzone=dlv.utld.
|
||||
dlvsets="$dlvsets dlvset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
@@ -60,7 +62,6 @@ zone=child4.utld.
|
||||
infile=child.db.in
|
||||
zonefile=child4.utld.db
|
||||
outfile=child4.signed
|
||||
dlvzone=dlv.utld.
|
||||
dlvsets="$dlvsets dlvset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
@@ -76,7 +77,6 @@ zone=child5.utld.
|
||||
infile=child.db.in
|
||||
zonefile=child5.utld.db
|
||||
outfile=child5.signed
|
||||
dlvzone=dlv.utld.
|
||||
dlvsets="$dlvsets dlvset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
@@ -92,7 +92,6 @@ zone=child7.utld.
|
||||
infile=child.db.in
|
||||
zonefile=child7.utld.db
|
||||
outfile=child7.signed
|
||||
dlvzone=dlv.utld.
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
@@ -107,7 +106,6 @@ zone=child8.utld.
|
||||
infile=child.db.in
|
||||
zonefile=child8.utld.db
|
||||
outfile=child8.signed
|
||||
dlvzone=dlv.utld.
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
@@ -122,7 +120,6 @@ zone=child9.utld.
|
||||
infile=child.db.in
|
||||
zonefile=child9.utld.db
|
||||
outfile=child9.signed
|
||||
dlvzone=dlv.utld.
|
||||
dlvsets="$dlvsets dlvset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
@@ -137,7 +134,6 @@ zone=child10.utld.
|
||||
infile=child.db.in
|
||||
zonefile=child10.utld.db
|
||||
outfile=child10.signed
|
||||
dlvzone=dlv.utld.
|
||||
dlvsets="$dlvsets dlvset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
@@ -148,12 +144,133 @@ cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
zone=child1.druz.
|
||||
infile=child.db.in
|
||||
zonefile=child1.druz.db
|
||||
outfile=child1.druz.signed
|
||||
dlvsets="$dlvsets dlvset-$zone"
|
||||
dssets="$dssets dsset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key ../ns6/dsset-grand.$zone >$zonefile
|
||||
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=child3.druz.
|
||||
infile=child.db.in
|
||||
zonefile=child3.druz.db
|
||||
outfile=child3.druz.signed
|
||||
dlvsets="$dlvsets dlvset-$zone"
|
||||
dssets="$dssets dsset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key ../ns6/dsset-grand.$zone >$zonefile
|
||||
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=child4.druz.
|
||||
infile=child.db.in
|
||||
zonefile=child4.druz.db
|
||||
outfile=child4.druz.signed
|
||||
dlvsets="$dlvsets dlvset-$zone"
|
||||
dssets="$dssets dsset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=child5.druz.
|
||||
infile=child.db.in
|
||||
zonefile=child5.druz.db
|
||||
outfile=child5.druz.signed
|
||||
dlvsets="$dlvsets dlvset-$zone"
|
||||
dssets="$dssets dsset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key ../ns6/dsset-grand.$zone >$zonefile
|
||||
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=child7.druz.
|
||||
infile=child.db.in
|
||||
zonefile=child7.druz.db
|
||||
outfile=child7.druz.signed
|
||||
dssets="$dssets dsset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key ../ns6/dsset-grand.$zone >$zonefile
|
||||
|
||||
$SIGNER -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=child8.druz.
|
||||
infile=child.db.in
|
||||
zonefile=child8.druz.db
|
||||
outfile=child8.druz.signed
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=child9.druz.
|
||||
infile=child.db.in
|
||||
zonefile=child9.druz.db
|
||||
outfile=child9.druz.signed
|
||||
dlvsets="$dlvsets dlvset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
zone=child10.druz.
|
||||
infile=child.db.in
|
||||
zonefile=child10.druz.db
|
||||
outfile=child10.druz.signed
|
||||
dlvsets="$dlvsets dlvset-$zone"
|
||||
dssets="$dssets dsset-$zone"
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=dlv.utld.
|
||||
infile=dlv.db.in
|
||||
zonefile=dlv.utld.db
|
||||
outfile=dlv.signed
|
||||
dlvzone=dlv.utld.
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
@@ -172,5 +289,7 @@ trusted-keys {
|
||||
"$dn" $flags $proto $alg "$key";
|
||||
};
|
||||
EOF
|
||||
' > trusted.conf
|
||||
cp trusted.conf ../ns5
|
||||
' > trusted-dlv.conf
|
||||
cp trusted-dlv.conf ../ns5
|
||||
|
||||
cp $dssets ../ns2
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2006, 2007, 2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.8 2007/06/18 23:47:28 tbox Exp $ */
|
||||
/* $Id: named.conf,v 1.8.558.2 2011/05/26 23:46:25 tbox Exp $ */
|
||||
|
||||
/*
|
||||
* Choose a keyname that is unlikely to clash with any real key names.
|
||||
@@ -46,6 +46,7 @@ controls {
|
||||
};
|
||||
|
||||
include "trusted.conf";
|
||||
include "trusted-dlv.conf";
|
||||
|
||||
options {
|
||||
query-source address 10.53.0.5;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2010, 2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.2.2.3 2010/07/11 01:18:17 each Exp $ */
|
||||
/* $Id: named.conf,v 1.2.2.5 2011/05/26 23:46:25 tbox Exp $ */
|
||||
|
||||
controls { /* empty */ };
|
||||
|
||||
@@ -40,3 +40,11 @@ zone "grand.child7.utld" { type master; file "grand.child7.signed"; };
|
||||
zone "grand.child8.utld" { type master; file "grand.child8.signed"; };
|
||||
zone "grand.child9.utld" { type master; file "grand.child9.signed"; };
|
||||
zone "grand.child10.utld" { type master; file "grand.child10.signed"; };
|
||||
zone "grand.child1.druz" { type master; file "grand.child1.druz.signed"; };
|
||||
zone "grand.child3.druz" { type master; file "grand.child3.druz.signed"; };
|
||||
zone "grand.child4.druz" { type master; file "grand.child4.druz.signed"; };
|
||||
zone "grand.child5.druz" { type master; file "grand.child5.druz.signed"; };
|
||||
zone "grand.child7.druz" { type master; file "grand.child7.druz.signed"; };
|
||||
zone "grand.child8.druz" { type master; file "grand.child8.druz.signed"; };
|
||||
zone "grand.child9.druz" { type master; file "grand.child9.druz.signed"; };
|
||||
zone "grand.child10.druz" { type master; file "grand.child10.druz.signed"; };
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2010, 2011 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
|
||||
@@ -14,11 +14,13 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: sign.sh,v 1.2.2.2 2010/05/27 23:49:55 tbox Exp $
|
||||
# $Id: sign.sh,v 1.2.2.4 2011/05/26 23:46:25 tbox Exp $
|
||||
|
||||
SYSTEMTESTTOP=../..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
|
||||
echo "I:dlv/ns6/sign.sh"
|
||||
|
||||
RANDFILE=../random.data
|
||||
|
||||
zone=grand.child1.utld.
|
||||
@@ -137,3 +139,120 @@ cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
zone=grand.child1.druz.
|
||||
infile=child.db.in
|
||||
zonefile=grand.child1.druz.db
|
||||
outfile=grand.child1.druz.signed
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=grand.child3.druz.
|
||||
infile=child.db.in
|
||||
zonefile=grand.child3.druz.db
|
||||
outfile=grand.child3.druz.signed
|
||||
dlvzone=dlv.druz.
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=grand.child4.druz.
|
||||
infile=child.db.in
|
||||
zonefile=grand.child4.druz.db
|
||||
outfile=grand.child4.druz.signed
|
||||
dlvzone=dlv.druz.
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=grand.child5.druz.
|
||||
infile=child.db.in
|
||||
zonefile=grand.child5.druz.db
|
||||
outfile=grand.child5.druz.signed
|
||||
dlvzone=dlv.druz.
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=grand.child7.druz.
|
||||
infile=child.db.in
|
||||
zonefile=grand.child7.druz.db
|
||||
outfile=grand.child7.druz.signed
|
||||
dlvzone=dlv.druz.
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=grand.child8.druz.
|
||||
infile=child.db.in
|
||||
zonefile=grand.child8.druz.db
|
||||
outfile=grand.child8.druz.signed
|
||||
dlvzone=dlv.druz.
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
zone=grand.child9.druz.
|
||||
infile=child.db.in
|
||||
zonefile=grand.child9.druz.db
|
||||
outfile=grand.child9.druz.signed
|
||||
dlvzone=dlv.druz.
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
zone=grand.child10.druz.
|
||||
infile=child.db.in
|
||||
zonefile=grand.child10.druz.db
|
||||
outfile=grand.child10.druz.signed
|
||||
dlvzone=dlv.druz.
|
||||
|
||||
keyname1=`$KEYGEN -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $zone 2> /dev/null`
|
||||
|
||||
cat $infile $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2004, 2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004, 2007, 2009, 2011 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
|
||||
@@ -14,8 +14,8 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: setup.sh,v 1.6 2009/03/02 23:47:43 tbox Exp $
|
||||
# $Id: setup.sh,v 1.6.154.2 2011/05/26 23:46:24 tbox Exp $
|
||||
|
||||
../../../tools/genrandom 400 random.data
|
||||
|
||||
(cd ns3 && sh -e sign.sh)
|
||||
(cd ns1 && sh -e sign.sh)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2004, 2007, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004, 2007, 2010, 2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: tests.sh,v 1.4.558.2 2010/05/27 23:49:55 tbox Exp $
|
||||
# $Id: tests.sh,v 1.4.558.4 2011/05/26 23:46:24 tbox Exp $
|
||||
|
||||
SYSTEMTESTTOP=..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
@@ -42,5 +42,21 @@ n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking that SOA reference by DLV in a DRUZ with DS validates as secure ($n)"
|
||||
ret=0
|
||||
$DIG $DIGOPTS child1.druz soa @10.53.0.5 > dig.out.ns5.test$n || ret=1
|
||||
grep "flags:.*ad.*QUERY" dig.out.ns5.test$n > /dev/null || ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:checking that child SOA reference by DLV in a DRUZ with DS validates as secure ($n)"
|
||||
ret=0
|
||||
$DIG $DIGOPTS grand.child1.druz soa @10.53.0.5 > dig.out.ns5.test$n || ret=1
|
||||
grep "flags:.*ad.*QUERY" dig.out.ns5.test$n > /dev/null || ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo "I:exit status: $status"
|
||||
exit $status
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
# Copyright (C) 2011 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: clean.sh,v 1.2.4.3 2011/03/03 16:19:29 each Exp $
|
||||
|
||||
rm -f random.data
|
||||
rm -f ns1/K*
|
||||
rm -f ns1/*.signed
|
||||
rm -f ns1/*.db
|
||||
rm -f ns1/bind.keys
|
||||
rm -f ns1/*.mkeys.jnl
|
||||
rm -f ns1/*.mkeys
|
||||
rm -f */named.run
|
||||
rm -f */named.memstats
|
||||
rm -f ns1/dsset-*.
|
||||
rm -f ns2/*.mkeys
|
||||
rm -f ns2/*.mkeys.jnl
|
||||
rm -f dig.out.ns?.test*
|
||||
rm -f ns2/named.secroots
|
||||
@@ -0,0 +1,25 @@
|
||||
; Copyright (C) 2011 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: dlv.isc.org.db.in,v 1.2.4.2 2011/03/01 23:22:42 marka Exp $
|
||||
|
||||
$TTL 300
|
||||
@ IN SOA a.root-servers.nil. hostmaster.isc.org. (
|
||||
2000042100 ; serial
|
||||
600 ; refresh
|
||||
600 ; retry
|
||||
1200 ; expire
|
||||
600 ; minimum
|
||||
)
|
||||
@ NS a.root-servers.nil.
|
||||
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
* Copyright (C) 2011 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.2.4.2 2011/03/01 23:22:42 marka Exp $ */
|
||||
|
||||
// NS1
|
||||
|
||||
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;
|
||||
notify yes;
|
||||
dnssec-enable yes;
|
||||
dnssec-validation yes;
|
||||
};
|
||||
|
||||
zone "." {
|
||||
type master;
|
||||
file "root.db";
|
||||
};
|
||||
|
||||
zone "dlv.isc.org" {
|
||||
type master;
|
||||
file "dlv.isc.org.db.signed";
|
||||
};
|
||||
@@ -0,0 +1,28 @@
|
||||
; Copyright (C) 2011 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: root.db.in,v 1.2.4.2 2011/03/01 23:22:42 marka Exp $
|
||||
|
||||
$TTL 300
|
||||
. IN SOA gson.nominum.com. a.root.servers.nil. (
|
||||
2000042100 ; serial
|
||||
600 ; refresh
|
||||
600 ; retry
|
||||
1200 ; expire
|
||||
600 ; minimum
|
||||
)
|
||||
. NS a.root-servers.nil.
|
||||
a.root-servers.nil. A 10.53.0.1
|
||||
|
||||
dlv.isc.org. NS a.root-servers.nil.
|
||||
@@ -0,0 +1,56 @@
|
||||
#!/bin/sh -e
|
||||
#
|
||||
# Copyright (C) 2011 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: sign.sh,v 1.2.4.3 2011/03/03 16:19:29 each Exp $
|
||||
|
||||
SYSTEMTESTTOP=../..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
|
||||
RANDFILE=../random.data
|
||||
|
||||
zone=dlv.isc.org
|
||||
infile=dlv.isc.org.db.in
|
||||
zonefile=dlv.isc.org.db
|
||||
|
||||
dlvkey=`$KEYGEN -q -r $RANDFILE -a RSAMD5 -b 768 -n zone $zone`
|
||||
cat $infile $dlvkey.key > $zonefile
|
||||
$SIGNER -P -g -r $RANDFILE -o $zone $zonefile > /dev/null
|
||||
|
||||
zone=.
|
||||
infile=root.db.in
|
||||
zonefile=root.db
|
||||
|
||||
rootkey=`$KEYGEN -q -r $RANDFILE -a RSAMD5 -b 768 -n zone $zone`
|
||||
cat $infile $rootkey.key > $zonefile
|
||||
$SIGNER -P -g -r $RANDFILE -o $zone $zonefile > /dev/null
|
||||
|
||||
# Create bind.keys file for the use of the resolving server
|
||||
echo "managed-keys {" > bind.keys
|
||||
cat $dlvkey.key | grep -v '^; ' | $PERL -n -e '
|
||||
local ($dn, $class, $type, $flags, $proto, $alg, @rest) = split;
|
||||
local $key = join("", @rest);
|
||||
print <<EOF
|
||||
"$dn" initial-key $flags $proto $alg "$key";
|
||||
EOF
|
||||
' >> bind.keys
|
||||
cat $rootkey.key | grep -v '^; ' | $PERL -n -e '
|
||||
local ($dn, $class, $type, $flags, $proto, $alg, @rest) = split;
|
||||
local $key = join("", @rest);
|
||||
print <<EOF
|
||||
"$dn" initial-key $flags $proto $alg "$key";
|
||||
EOF
|
||||
' >> bind.keys
|
||||
echo "};" >> bind.keys
|
||||
@@ -0,0 +1,61 @@
|
||||
/*
|
||||
* Copyright (C) 2011 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.2.4.3 2011/03/03 16:19:29 each Exp $ */
|
||||
|
||||
// NS2
|
||||
|
||||
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; };
|
||||
notify no;
|
||||
dnssec-enable yes;
|
||||
dnssec-validation yes;
|
||||
bindkeys-file "../ns1/bind.keys";
|
||||
dnssec-lookaside "auto";
|
||||
};
|
||||
|
||||
key rndc_key {
|
||||
secret "1234abcd8765";
|
||||
algorithm hmac-md5;
|
||||
};
|
||||
|
||||
controls {
|
||||
inet 10.53.0.2 port 9953 allow { any; } keys { rndc_key; };
|
||||
};
|
||||
|
||||
view "in" {
|
||||
recursion yes;
|
||||
zone "." {
|
||||
type hint;
|
||||
file "../../common/root.hint";
|
||||
};
|
||||
};
|
||||
|
||||
view "ch" ch {
|
||||
match-clients { 127.0.0.1; };
|
||||
};
|
||||
|
||||
view "unused" {
|
||||
match-clients { none; };
|
||||
};
|
||||
@@ -0,0 +1,23 @@
|
||||
#!/bin/sh -e
|
||||
#
|
||||
# Copyright (C) 2011 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: setup.sh,v 1.2.4.2 2011/03/01 23:22:41 marka Exp $
|
||||
|
||||
sh clean.sh
|
||||
|
||||
../../../tools/genrandom 400 random.data
|
||||
|
||||
cd ns1 && sh sign.sh
|
||||
@@ -0,0 +1,59 @@
|
||||
# Copyright (C) 2011 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: tests.sh,v 1.2.4.3 2011/03/03 16:19:29 each Exp $
|
||||
|
||||
SYSTEMTESTTOP=..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
|
||||
DIGOPTS="+tcp +noadd +nosea +nostat +nocmd +dnssec -p 5300"
|
||||
|
||||
status=0
|
||||
n=1
|
||||
|
||||
#
|
||||
# When this was initialy reported there was a REQUIRE failure on restarting.
|
||||
#
|
||||
echo "I:checking dnssec-lookaside "'"auto"'"; with views of multiple classes ($n)"
|
||||
if [ -s ns2/named.pid ]
|
||||
then
|
||||
ret=0
|
||||
kill -TERM `cat ns2/named.pid`
|
||||
sleep 1
|
||||
(cd ns2; $NAMED -f -d 100 -c named.conf >> named.run 2>&1 & )
|
||||
sleep 2
|
||||
$DIG $DIGOPTS soa . @10.53.0.2 > dig.out.ns2.test$n || ret=1
|
||||
grep "status: NOERROR" dig.out.ns2.test$n > /dev/null || ret=1
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
else
|
||||
echo "I:failed"
|
||||
status=1
|
||||
fi
|
||||
|
||||
n=`expr $n + 1`
|
||||
echo "I:checking that only the DLV key was imported from bind.keys ($n)"
|
||||
ret=0
|
||||
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 secroots 2>&1 | sed 's/^/I:ns2 /'
|
||||
linecount=`grep "\./RSAMD5/.* ; managed" ns2/named.secroots | wc -l`
|
||||
[ "$linecount" -eq 0 ] || ret=1
|
||||
linecount=`grep "dlv.isc.org/RSAMD5/.* ; managed" ns2/named.secroots | wc -l`
|
||||
[ "$linecount" -eq 2 ] || ret=1
|
||||
linecount=`cat ns2/named.secroots | wc -l`
|
||||
[ "$linecount" -eq 13 ] || ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
exit $status
|
||||
@@ -0,0 +1,25 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2011 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: prereq.sh.in,v 1.2.4.2 2011/04/19 22:32:23 each Exp $
|
||||
|
||||
TOP=${SYSTEMTESTTOP:=.}/../../../..
|
||||
|
||||
if [ "@DLZ_SYSTEM_TEST@" != "filesystem" ]; then
|
||||
echo "I:DLZ filesystem driver not supported"
|
||||
exit 255
|
||||
fi
|
||||
exit 0
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2010, 2011 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
|
||||
@@ -14,7 +14,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: tests.sh,v 1.2.2.2 2010/08/16 05:14:14 marka Exp $
|
||||
# $Id: tests.sh,v 1.2.2.4 2011/04/19 23:47:01 tbox Exp $
|
||||
|
||||
SYSTEMTESTTOP=..
|
||||
. $SYSTEMTESTTOP/conf.sh
|
||||
@@ -35,6 +35,7 @@ $DIG $DIGOPTS +norec foo.example.com. \
|
||||
grep "status: NOERROR" dig.out.ns1.test$n > /dev/null || ret=1
|
||||
grep "example.com..*DNAME.*example.net." dig.out.ns1.test$n > /dev/null || ret=1
|
||||
grep "foo.example.com..*CNAME.*foo.example.net." dig.out.ns1.test$n > /dev/null || ret=1
|
||||
grep "flags:[^;]* aa[ ;]" dig.out.ns1.test$n > /dev/null || ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2011 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: clean.sh,v 1.2.4.2 2011/03/18 21:37:09 fdupont Exp $
|
||||
|
||||
#
|
||||
# Clean up after resolver tests.
|
||||
#
|
||||
rm -f */named.memstats
|
||||
rm -f dig.out.*
|
||||
@@ -0,0 +1,38 @@
|
||||
/*
|
||||
* Copyright (C) 2011 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.2.4.2 2011/03/18 21:37:09 fdupont Exp $ */
|
||||
|
||||
// NS1
|
||||
|
||||
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;
|
||||
notify yes;
|
||||
};
|
||||
|
||||
zone "." {
|
||||
type master;
|
||||
file "root.db";
|
||||
};
|
||||
@@ -0,0 +1,29 @@
|
||||
; Copyright (C) 2011 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: root.db,v 1.2.4.2 2011/03/18 21:37:09 fdupont Exp $
|
||||
|
||||
$TTL 300
|
||||
. IN SOA gson.nominum.com. a.root.servers.nil. (
|
||||
2000042100 ; serial
|
||||
600 ; refresh
|
||||
600 ; retry
|
||||
1200 ; expire
|
||||
600 ; minimum
|
||||
)
|
||||
. NS a.root-servers.nil.
|
||||
a.root-servers.nil. A 10.53.0.1
|
||||
|
||||
example. NS ns2.example.
|
||||
ns2.example. A 10.53.0.2
|
||||
@@ -0,0 +1,32 @@
|
||||
; Copyright (C) 2011 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: example.db,v 1.2.4.2 2011/03/18 21:37:09 fdupont Exp $
|
||||
|
||||
$TTL 300 ; 5 minutes
|
||||
@ IN SOA mname1. . (
|
||||
2000042407 ; serial
|
||||
20 ; refresh (20 seconds)
|
||||
20 ; retry (20 seconds)
|
||||
1814400 ; expire (3 weeks)
|
||||
3600 ; minimum (1 hour)
|
||||
)
|
||||
NS ns2
|
||||
ns2 A 10.53.0.2
|
||||
|
||||
a.short A 10.0.0.1
|
||||
short-dname DNAME short
|
||||
a.longlonglonglonglonglonglonglonglonglonglonglonglong A 10.0.0.2
|
||||
long-dname DNAME longlonglonglonglonglonglonglonglonglonglonglonglong
|
||||
;
|
||||
@@ -0,0 +1,44 @@
|
||||
/*
|
||||
* Copyright (C) 2011 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.2.4.2 2011/03/18 21:37:09 fdupont Exp $ */
|
||||
|
||||
// NS2
|
||||
|
||||
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;
|
||||
};
|
||||
|
||||
zone "." {
|
||||
type hint;
|
||||
file "../../common/root.hint";
|
||||
};
|
||||
|
||||
zone "example" {
|
||||
type master;
|
||||
file "example.db";
|
||||
allow-update { any; };
|
||||
};
|
||||
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* Copyright (C) 2011 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.2.4.2 2011/03/18 21:37:09 fdupont Exp $ */
|
||||
|
||||
// NS4
|
||||
|
||||
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 yes;
|
||||
};
|
||||
|
||||
zone "." {
|
||||
type hint;
|
||||
file "../../common/root.hint";
|
||||
};
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user