Compare commits
834
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3c4a5faf6f | ||
|
|
13a46b7a19 | ||
|
|
154b0052a5 | ||
|
|
0449d7c0a4 | ||
|
|
c8820d00ee | ||
|
|
4272e47460 | ||
|
|
cd7907fea0 | ||
|
|
e25e67f697 | ||
|
|
3a858bcec6 | ||
|
|
9c47018c54 | ||
|
|
21cd1b0adb | ||
|
|
0a8497c60e | ||
|
|
08d2806f65 | ||
|
|
63d736a9f7 | ||
|
|
71efe3c0ae | ||
|
|
e10ccd44a4 | ||
|
|
69baa9d558 | ||
|
|
0d6b72e48f | ||
|
|
cf52682227 | ||
|
|
47b9b9b60f | ||
|
|
ef7a482027 | ||
|
|
aca00183c9 | ||
|
|
caf04e03fc | ||
|
|
b1a208f778 | ||
|
|
74863cc261 | ||
|
|
9f72af9027 | ||
|
|
bd20fadbff | ||
|
|
0ef4e1045f | ||
|
|
36e1b5456a | ||
|
|
6abdd2fb9b | ||
|
|
66c87a450a | ||
|
|
a44b023ce1 | ||
|
|
b7c1b09453 | ||
|
|
d51edb3341 | ||
|
|
076d288331 | ||
|
|
cd4bdeefcb | ||
|
|
0df807f2dc | ||
|
|
578816d78a | ||
|
|
05ec24e39e | ||
|
|
62a07f7efa | ||
|
|
c31cb8c86c | ||
|
|
0816175c91 | ||
|
|
a732d0e1be | ||
|
|
8adaaeb4c9 | ||
|
|
c103ae99b3 | ||
|
|
0cecfd4c56 | ||
|
|
5786d9d46e | ||
|
|
3b4af1bfd8 | ||
|
|
51c9119e6d | ||
|
|
4cde91f904 | ||
|
|
4db9faf40e | ||
|
|
6492c66bc8 | ||
|
|
4df3e6d099 | ||
|
|
37739b94dd | ||
|
|
736577d271 | ||
|
|
2daa873177 | ||
|
|
168b025654 | ||
|
|
731709c161 | ||
|
|
cf567f0a40 | ||
|
|
f9f74db7c5 | ||
|
|
f1fdbf0a85 | ||
|
|
58a9b748a1 | ||
|
|
8544639fe9 | ||
|
|
5c227ff8cd | ||
|
|
7a65656485 | ||
|
|
252f77d125 | ||
|
|
dcbccdc2f5 | ||
|
|
631a05c126 | ||
|
|
85730ce2e3 | ||
|
|
fef037696a | ||
|
|
542b5ee592 | ||
|
|
b818d55a93 | ||
|
|
9c612b4849 | ||
|
|
cdd50f38ec | ||
|
|
879f2d02c6 | ||
|
|
57ac78598a | ||
|
|
b9f0f66a2b | ||
|
|
18daaa26b4 | ||
|
|
d3df01045b | ||
|
|
1bf2397362 | ||
|
|
d465a88725 | ||
|
|
b3ca8dadbb | ||
|
|
d2cd67a209 | ||
|
|
7de200aebf | ||
|
|
61a557a820 | ||
|
|
d3b7f20e65 | ||
|
|
501f27ae80 | ||
|
|
d59ca75cd5 | ||
|
|
46e1817569 | ||
|
|
2920b140f1 | ||
|
|
9f3931a5f8 | ||
|
|
d340cfafd2 | ||
|
|
a291800164 | ||
|
|
e4da0ac6e2 | ||
|
|
857e555cc7 | ||
|
|
366407af39 | ||
|
|
b05af6601c | ||
|
|
8d105e3b91 | ||
|
|
902a80de5d | ||
|
|
89010ef5e4 | ||
|
|
c74d350d5e | ||
|
|
be53751f9a | ||
|
|
ad8f635baa | ||
|
|
202316357f | ||
|
|
a1148b69d7 | ||
|
|
9c99c45d99 | ||
|
|
c510b2f818 | ||
|
|
ae619a4b0a | ||
|
|
5a2ba30058 | ||
|
|
1557b0bed8 | ||
|
|
b90b39f274 | ||
|
|
40163cc01b | ||
|
|
40d4eac309 | ||
|
|
e3e0f873fc | ||
|
|
1c5996f7b5 | ||
|
|
7139334653 | ||
|
|
587a148af1 | ||
|
|
13719148c9 | ||
|
|
9414c5bfb2 | ||
|
|
fc9e669f22 | ||
|
|
d0cc47cef9 | ||
|
|
9fe7f5ece7 | ||
|
|
c2119e0353 | ||
|
|
fb42ccb669 | ||
|
|
1b19bd1e91 | ||
|
|
c36f33dccf | ||
|
|
2a7394a249 | ||
|
|
aff9352637 | ||
|
|
c8dbb86527 | ||
|
|
a7d2224145 | ||
|
|
b8c394e3c1 | ||
|
|
864efed762 | ||
|
|
8529d720fe | ||
|
|
6397bd2052 | ||
|
|
107eccce7e | ||
|
|
c335ad72b8 | ||
|
|
10f9deb9b2 | ||
|
|
d45ae64a4e | ||
|
|
aadace0897 | ||
|
|
6c4933f959 | ||
|
|
8cbeafe635 | ||
|
|
5f84043a3e | ||
|
|
b1be6b9273 | ||
|
|
80d55b2f5c | ||
|
|
5a08f5b486 | ||
|
|
11b8a4afdf | ||
|
|
60645048f4 | ||
|
|
999c1000fb | ||
|
|
14b79547b9 | ||
|
|
901427ae62 | ||
|
|
920650f048 | ||
|
|
92dd2efdc2 | ||
|
|
071f362c6a | ||
|
|
3f3b99dfce | ||
|
|
b90ed94672 | ||
|
|
53b36fa67f | ||
|
|
cdc4991874 | ||
|
|
a8fdb85512 | ||
|
|
b33bc3495f | ||
|
|
50e9e87f65 | ||
|
|
ad384e2912 | ||
|
|
f341ca1d51 | ||
|
|
2531ef9979 | ||
|
|
0c472a54c1 | ||
|
|
aa0a56c62d | ||
|
|
1a920e0f6a | ||
|
|
dd1bd24d08 | ||
|
|
dcb696583a | ||
|
|
a07568b1f5 | ||
|
|
136ee1782b | ||
|
|
5ac23b74ac | ||
|
|
8691060ac8 | ||
|
|
ff512d652d | ||
|
|
576cae3b1e | ||
|
|
8f54f94c23 | ||
|
|
b04c974f67 | ||
|
|
171188fc06 | ||
|
|
ba185c8215 | ||
|
|
d243170158 | ||
|
|
7860592fbe | ||
|
|
75f23d2b3b | ||
|
|
1d52149b4f | ||
|
|
0f7581c54a | ||
|
|
a6cae4d373 | ||
|
|
7e091759ad | ||
|
|
ba88437f43 | ||
|
|
13cbaca1a7 | ||
|
|
51d39db4ab | ||
|
|
bcdc2a86c9 | ||
|
|
ada39963fd | ||
|
|
e08edd5ea4 | ||
|
|
32a72d8d7d | ||
|
|
383d1b29ea | ||
|
|
04edcb637f | ||
|
|
7d9635f938 | ||
|
|
dbe9ece285 | ||
|
|
bbac4157e5 | ||
|
|
20c8d7e3e3 | ||
|
|
533b584e56 | ||
|
|
62087d6662 | ||
|
|
845baabb7c | ||
|
|
5770cef756 | ||
|
|
4ff8895925 | ||
|
|
8ab8b99193 | ||
|
|
1dfb563662 | ||
|
|
79f3e95be9 | ||
|
|
762d06d0b4 | ||
|
|
3a66e0f68c | ||
|
|
9422f406f9 | ||
|
|
d5e5c8d8f7 | ||
|
|
5d51096644 | ||
|
|
29cc20bd79 | ||
|
|
f067658513 | ||
|
|
648cc13bd9 | ||
|
|
cf065ab76e | ||
|
|
4ebdedf925 | ||
|
|
09065d8286 | ||
|
|
4f9711d61e | ||
|
|
f5b4ce0ca0 | ||
|
|
b78658f143 | ||
|
|
13da26c5e1 | ||
|
|
a407ead333 | ||
|
|
a9c555038b | ||
|
|
d601031022 | ||
|
|
8a24363e29 | ||
|
|
98172e6c3f | ||
|
|
78579cb427 | ||
|
|
03ca2e97ed | ||
|
|
d56cb6aead | ||
|
|
2b63bb22ad | ||
|
|
b35d42c270 | ||
|
|
a011b44e82 | ||
|
|
dd9a10bcaf | ||
|
|
7245a76211 | ||
|
|
e96e6e8077 | ||
|
|
43a1ec8d9f | ||
|
|
8945be769b | ||
|
|
17a382ffd1 | ||
|
|
c497feaa1a | ||
|
|
f9ca74559c | ||
|
|
776eb07d6c | ||
|
|
6ed026d693 | ||
|
|
5c7dc6cb1c | ||
|
|
060b142de5 | ||
|
|
daea80cacc | ||
|
|
39fbd994ea | ||
|
|
c8d28cab70 | ||
|
|
24f50af4e1 | ||
|
|
0aebf81706 | ||
|
|
30ba99b873 | ||
|
|
a3bbca20b7 | ||
|
|
38f9494cb6 | ||
|
|
832849c859 | ||
|
|
0ec7ab9831 | ||
|
|
3865e46fc2 | ||
|
|
cad9e1ff1f | ||
|
|
ef7164bf8c | ||
|
|
ca37d5b596 | ||
|
|
e3f8bda6eb | ||
|
|
08b7bd7aff | ||
|
|
2ea9870a14 | ||
|
|
7b67408765 | ||
|
|
50c16aea9c | ||
|
|
b45951a046 | ||
|
|
10174b45f4 | ||
|
|
5c7be0bf56 | ||
|
|
562623286d | ||
|
|
8310668e43 | ||
|
|
e13ddb04e6 | ||
|
|
09225b4f0b | ||
|
|
69ab3b60f8 | ||
|
|
a0815c9994 | ||
|
|
ae5e6652a1 | ||
|
|
6f0bf87ea9 | ||
|
|
6c82c34716 | ||
|
|
5b2f3a8029 | ||
|
|
9efbf1ec98 | ||
|
|
bda132bcaf | ||
|
|
014447851e | ||
|
|
f96f3755d6 | ||
|
|
1a677bc3f7 | ||
|
|
eb12f97615 | ||
|
|
69f08429fe | ||
|
|
0cd3b8cc3e | ||
|
|
7d36018674 | ||
|
|
248b9ab0b0 | ||
|
|
2c35fdceff | ||
|
|
48b36fa08b | ||
|
|
ff4b3adaa4 | ||
|
|
3718c6396e | ||
|
|
2f34efede1 | ||
|
|
529f589a83 | ||
|
|
051dec6fb7 | ||
|
|
8e22c73f3e | ||
|
|
9fa39c73fc | ||
|
|
c177980194 | ||
|
|
00f1c3f453 | ||
|
|
b4c6ce22d0 | ||
|
|
e27d55e3ee | ||
|
|
74040af06f | ||
|
|
0a960506d0 | ||
|
|
36025dc74f | ||
|
|
2cde638aa9 | ||
|
|
973c0609a2 | ||
|
|
7d9be933d7 | ||
|
|
9ba7b9cd1f | ||
|
|
02e8b3e120 | ||
|
|
abb239e7fc | ||
|
|
15c961a1dd | ||
|
|
19dbf2e20d | ||
|
|
1969b8c679 | ||
|
|
5ae2eac4c1 | ||
|
|
0b610fdb6e | ||
|
|
5b02fc32d6 | ||
|
|
b667946fa5 | ||
|
|
492cae1877 | ||
|
|
bef75d63d7 | ||
|
|
c3e2e3b317 | ||
|
|
59d000d7ec | ||
|
|
3ab6f6505b | ||
|
|
32f985bcf4 | ||
|
|
5928877cd0 | ||
|
|
6ffc3748d9 | ||
|
|
ed30e0358b | ||
|
|
d8624c1f19 | ||
|
|
cebadbc797 | ||
|
|
78f3ed4bc2 | ||
|
|
e5d4f0c9e2 | ||
|
|
4dd3ec797d | ||
|
|
d7a77415c1 | ||
|
|
a35d309d39 | ||
|
|
98744b5111 | ||
|
|
8d31dd9ab6 | ||
|
|
4201914311 | ||
|
|
e1263b4b9c | ||
|
|
6d58400178 | ||
|
|
7ac162ea7e | ||
|
|
d0f5f4f46e | ||
|
|
bd5842db3d | ||
|
|
4d95e549ed | ||
|
|
112f416309 | ||
|
|
c9c7fc6a01 | ||
|
|
cbf3cd3bc2 | ||
|
|
3ec79bbc03 | ||
|
|
7e621e1c51 | ||
|
|
0284e57b9b | ||
|
|
d7d098e901 | ||
|
|
515c7f3c43 | ||
|
|
c453a50776 | ||
|
|
cb5e85be18 | ||
|
|
9ba22e3716 | ||
|
|
dc64df4479 | ||
|
|
462d82f8e5 | ||
|
|
778a01b1aa | ||
|
|
44f175a90a | ||
|
|
d2dd525033 | ||
|
|
21991bd14e | ||
|
|
e2350edd17 | ||
|
|
1e6032fe39 | ||
|
|
73120f904b | ||
|
|
b335299322 | ||
|
|
b7bcdb3eaa | ||
|
|
04161382a2 | ||
|
|
4d781d52a7 | ||
|
|
ff5c52617e | ||
|
|
a7094451a0 | ||
|
|
e12030c433 | ||
|
|
49560ac770 | ||
|
|
448d93c5e8 | ||
|
|
e18c62b1da | ||
|
|
7a1448aa57 | ||
|
|
8a636ee86b | ||
|
|
21d9ee0d73 | ||
|
|
5c40acf215 | ||
|
|
5666e005bd | ||
|
|
cc912064ce | ||
|
|
70e41f6536 | ||
|
|
8b7d3aeda2 | ||
|
|
7f87e0c4c7 | ||
|
|
f083a44415 | ||
|
|
d2cd030d1b | ||
|
|
5f0ef7761c | ||
|
|
b72434ce64 | ||
|
|
108300f7f1 | ||
|
|
74cfabb955 | ||
|
|
2fca4a3321 | ||
|
|
43a0c58e70 | ||
|
|
ee4335edaf | ||
|
|
a955420bed | ||
|
|
6ffd34dcf0 | ||
|
|
99cf5f50e9 | ||
|
|
f52d9bc6f9 | ||
|
|
c4ceb2fb0c | ||
|
|
078580a74d | ||
|
|
121f783b66 | ||
|
|
36b08488a1 | ||
|
|
d3798f2bff | ||
|
|
08e3b67977 | ||
|
|
4526d04e04 | ||
|
|
f2ae969065 | ||
|
|
9d9805c096 | ||
|
|
707d9fbd86 | ||
|
|
abe0aa7baa | ||
|
|
fbfdea68e4 | ||
|
|
b1dff14a06 | ||
|
|
1acd60951d | ||
|
|
bb9298e008 | ||
|
|
a6e12d97a4 | ||
|
|
db28b5db67 | ||
|
|
8fc1064130 | ||
|
|
b98844704e | ||
|
|
7b9099f4f2 | ||
|
|
72d4d83e2a | ||
|
|
6ab18ae52c | ||
|
|
97137e17ff | ||
|
|
1df2b7edfe | ||
|
|
0932d830f0 | ||
|
|
ed2fa6ce1b | ||
|
|
0098207a9a | ||
|
|
21c0dce246 | ||
|
|
fd95cc0da9 | ||
|
|
ac897ce3b9 | ||
|
|
34bb4bfe2c | ||
|
|
af9bcac6c5 | ||
|
|
bb6d33103e | ||
|
|
426848b63c | ||
|
|
cc6d67469c | ||
|
|
0f980b0250 | ||
|
|
294d4ecf16 | ||
|
|
592a269a64 | ||
|
|
b7d8c679b3 | ||
|
|
7fb2b51201 | ||
|
|
f6034c5012 | ||
|
|
0a199807e7 | ||
|
|
644973f327 | ||
|
|
fe28c38a24 | ||
|
|
0c23dd6c9c | ||
|
|
804754e626 | ||
|
|
1e9848fb2b | ||
|
|
7ac3315851 | ||
|
|
b008ad3de2 | ||
|
|
f603422ae3 | ||
|
|
71dc0e9e72 | ||
|
|
c45d848e2a | ||
|
|
bf766b1599 | ||
|
|
0abd3cca60 | ||
|
|
e77e6219d3 | ||
|
|
ee0be9c2a0 | ||
|
|
73b2849f2a | ||
|
|
7dc38ccd52 | ||
|
|
97118b9653 | ||
|
|
2507f39f8d | ||
|
|
95a5f28754 | ||
|
|
127e1bde3a | ||
|
|
8f1b19fb7e | ||
|
|
93afb677c0 | ||
|
|
ce164dbd9c | ||
|
|
a821347c7f | ||
|
|
bcd3f57ab4 | ||
|
|
c854efc784 | ||
|
|
fdb544b336 | ||
|
|
33497e72d0 | ||
|
|
f15cde2b63 | ||
|
|
2178b22c8f | ||
|
|
c2020d90fb | ||
|
|
c6217b2899 | ||
|
|
86077a2e87 | ||
|
|
1b88e475da | ||
|
|
d0bcfab89f | ||
|
|
b254e67fd1 | ||
|
|
4cd8350768 | ||
|
|
2c6198111f | ||
|
|
ada2e77c0d | ||
|
|
0b75db38ed | ||
|
|
35baf2aace | ||
|
|
37e02c9abe | ||
|
|
c94f40fc0a | ||
|
|
af090ae702 | ||
|
|
e098fd8eae | ||
|
|
8391ea7dd9 | ||
|
|
b8d036c434 | ||
|
|
42e0b30356 | ||
|
|
b1fa56e8da | ||
|
|
24a27fc3e4 | ||
|
|
a6b6482e1f | ||
|
|
ce7c7cb24d | ||
|
|
43152c0b07 | ||
|
|
26351a2c19 | ||
|
|
d862c289f2 | ||
|
|
125a6afaec | ||
|
|
0e38f474fc | ||
|
|
b448c168e6 | ||
|
|
8d02d21009 | ||
|
|
b24330955a | ||
|
|
e2c5a3e25b | ||
|
|
7da0a5ddc6 | ||
|
|
bb43709356 | ||
|
|
8997cd5560 | ||
|
|
c4e59874fb | ||
|
|
003fd2f720 | ||
|
|
1ef202408e | ||
|
|
b0d55c2695 | ||
|
|
e63dcf7530 | ||
|
|
daa021383a | ||
|
|
477120039e | ||
|
|
49eadb2f98 | ||
|
|
873dc64585 | ||
|
|
8f3a7f332a | ||
|
|
230987e819 | ||
|
|
957a8884fb | ||
|
|
bf685734ec | ||
|
|
d32a806351 | ||
|
|
a80d26914a | ||
|
|
c19f322914 | ||
|
|
ff9301990d | ||
|
|
f3c46d66e3 | ||
|
|
fa2cb8d61d | ||
|
|
d24d074ee4 | ||
|
|
08fb52ec8c | ||
|
|
b9df4728f1 | ||
|
|
8da33254f4 | ||
|
|
9537e40e79 | ||
|
|
58416c69a3 | ||
|
|
83f43b00a5 | ||
|
|
7354bb18cf | ||
|
|
3767befe3a | ||
|
|
58be84825d | ||
|
|
27eb2ffd3b | ||
|
|
64c43af4f4 | ||
|
|
c5259c013b | ||
|
|
86004357b7 | ||
|
|
5fc3ea8558 | ||
|
|
3f42eeb121 | ||
|
|
a03b4b3bee | ||
|
|
39158a4c93 | ||
|
|
2c244f981f | ||
|
|
0a1d6361d8 | ||
|
|
b12035d190 | ||
|
|
44c5f7fe76 | ||
|
|
ce0a4906ad | ||
|
|
637a4234fa | ||
|
|
a5c06c85fa | ||
|
|
5e95cf76e4 | ||
|
|
690a5f9158 | ||
|
|
6c8a888822 | ||
|
|
5488182a69 | ||
|
|
4d42b714be | ||
|
|
129090f0f6 | ||
|
|
4db00f967f | ||
|
|
22c4126ba5 | ||
|
|
017032bb4b | ||
|
|
56c2c3835f | ||
|
|
fa291c34fb | ||
|
|
b1003ace6f | ||
|
|
d8c9997a13 | ||
|
|
92348098eb | ||
|
|
5388178e8a | ||
|
|
d1a5fdc34a | ||
|
|
2e20dea9fc | ||
|
|
13396661f4 | ||
|
|
56becfac3a | ||
|
|
c3582936b1 | ||
|
|
4692e05150 | ||
|
|
ddab8bd093 | ||
|
|
f16199c056 | ||
|
|
5a98b14723 | ||
|
|
b8cfef5271 | ||
|
|
38b5cf788f | ||
|
|
08a2391dcd | ||
|
|
fe5f0e6d28 | ||
|
|
3083bd21de | ||
|
|
465cb9f2ed | ||
|
|
6f8edd57ae | ||
|
|
c76ae1723f | ||
|
|
31f3215162 | ||
|
|
ac8049a75a | ||
|
|
49ff861e30 | ||
|
|
ae905b0ae1 | ||
|
|
08ded61df0 | ||
|
|
ac0680e9eb | ||
|
|
84df960bf7 | ||
|
|
4424ecdf32 | ||
|
|
66eaef0227 | ||
|
|
81d5c662e3 | ||
|
|
d5011e93d8 | ||
|
|
2b5eae2b09 | ||
|
|
1630c8cb91 | ||
|
|
cc9ed75dd9 | ||
|
|
e95ab03354 | ||
|
|
bf9b61c790 | ||
|
|
00243c6eae | ||
|
|
13c1b482dd | ||
|
|
a30601f338 | ||
|
|
ac89fac641 | ||
|
|
96769258cb | ||
|
|
4023b02e46 | ||
|
|
64f8608ed6 | ||
|
|
eae05d761c | ||
|
|
f4b095c42e | ||
|
|
6c56db0b5b | ||
|
|
b6a3b10da7 | ||
|
|
8b026a66fd | ||
|
|
7788acb1ab | ||
|
|
20c68c9993 | ||
|
|
49853562e2 | ||
|
|
f5d0b9895b | ||
|
|
bd2b08d5a3 | ||
|
|
233f603cc1 | ||
|
|
0cae66577c | ||
|
|
cfda0f3b8e | ||
|
|
6efc335ec0 | ||
|
|
dea0471d46 | ||
|
|
776945b3c4 | ||
|
|
efa22d3d71 | ||
|
|
5bb04c0a69 | ||
|
|
a273d3ff34 | ||
|
|
6b5ba346d0 | ||
|
|
4fe2017db7 | ||
|
|
3ab7336ea7 | ||
|
|
43048c7f74 | ||
|
|
680033ce4d | ||
|
|
397feff56e | ||
|
|
8077efca7d | ||
|
|
693c4232df | ||
|
|
aa38b0b73b | ||
|
|
d3cbd6b05c | ||
|
|
312a3b089d | ||
|
|
f56be26f60 | ||
|
|
5cdb6c40d9 | ||
|
|
1b60022ff0 | ||
|
|
d3bf64ad4b | ||
|
|
bd4ccb0441 | ||
|
|
62ab12711f | ||
|
|
0ea5b77ae0 | ||
|
|
89293b3233 | ||
|
|
4129583cb6 | ||
|
|
4f851bb08c | ||
|
|
79464adea1 | ||
|
|
4722228b86 | ||
|
|
6b92b96bb2 | ||
|
|
21a5f882a1 | ||
|
|
0eec014e5d | ||
|
|
46da311781 | ||
|
|
36c043703a | ||
|
|
52bf33a5bc | ||
|
|
3541946aed | ||
|
|
44feb9a567 | ||
|
|
00a673b03c | ||
|
|
6f1b350c3a | ||
|
|
9a83aa49de | ||
|
|
73aa4c1671 | ||
|
|
b497531c76 | ||
|
|
995eaa289b | ||
|
|
3a28f0dc73 | ||
|
|
139cedabf9 | ||
|
|
e047f16684 | ||
|
|
44d0f0256f | ||
|
|
8ac908b38a | ||
|
|
db95cc18d8 | ||
|
|
f1c89cb4f5 | ||
|
|
418cc93231 | ||
|
|
c696c12cff | ||
|
|
e83e226e08 | ||
|
|
0b24b2d3c4 | ||
|
|
c060401781 | ||
|
|
dcfca6f18d | ||
|
|
06d38550f3 | ||
|
|
aad3d15976 | ||
|
|
c2e3270948 | ||
|
|
ebaf977ecf | ||
|
|
834a31a021 | ||
|
|
b43febe8c3 | ||
|
|
8a7f5ae9a9 | ||
|
|
140cf92b3b | ||
|
|
68ea797082 | ||
|
|
78d46b371f | ||
|
|
19a62c240d | ||
|
|
e8f796f8a6 | ||
|
|
36f9773b90 | ||
|
|
4a5d8786ed | ||
|
|
fd3a378353 | ||
|
|
3ae6ec7ef6 | ||
|
|
327c37def7 | ||
|
|
0185a9358c | ||
|
|
a9a7e2f270 | ||
|
|
b2accdbe92 | ||
|
|
c46b6864af | ||
|
|
da4a8c89a8 | ||
|
|
d7a76aea32 | ||
|
|
e87e7b378a | ||
|
|
56334ccb2d | ||
|
|
6bb16fca28 | ||
|
|
0967014a4f | ||
|
|
ce9d53c23f | ||
|
|
5703894dc5 | ||
|
|
abd765c32d | ||
|
|
cd0aa2d941 | ||
|
|
d9b107aefa | ||
|
|
9a13c65344 | ||
|
|
9d86a2e1c1 | ||
|
|
e0172b5a62 | ||
|
|
77fdd17568 | ||
|
|
b0d4c367b6 | ||
|
|
9f7aa45f53 | ||
|
|
fd44e17ffb | ||
|
|
4075946cf1 | ||
|
|
76db3da75f | ||
|
|
1b6d223aef | ||
|
|
e8d4ecf2fd | ||
|
|
a7af0f3847 | ||
|
|
d88ec94a81 | ||
|
|
f4405a6c1a | ||
|
|
d2442bfeae | ||
|
|
1167fc7904 | ||
|
|
c790dbe913 | ||
|
|
ff41f9d2e0 | ||
|
|
da5eebe19f | ||
|
|
6e59a4acaa | ||
|
|
a3416b0a1b | ||
|
|
7c9928441f | ||
|
|
ca4e44ebe8 | ||
|
|
0c39b3ed94 | ||
|
|
de0c543c00 | ||
|
|
8a198fa776 | ||
|
|
1aa8830b74 | ||
|
|
ecde9a1cd5 | ||
|
|
0c4cfa742e | ||
|
|
3aeaafebd8 | ||
|
|
7615a5ba43 | ||
|
|
b11b534925 | ||
|
|
2426105366 | ||
|
|
c5262939c4 | ||
|
|
6bb1560124 | ||
|
|
ff8ec39ce4 | ||
|
|
7fad221106 | ||
|
|
cf487f8e37 | ||
|
|
e11a0c114c | ||
|
|
f78fe6d8a9 | ||
|
|
83be7c484c | ||
|
|
4dea9e5971 | ||
|
|
5264a22671 | ||
|
|
20f2d1d74b | ||
|
|
831f79c431 | ||
|
|
2963539c15 | ||
|
|
d0b9be4fb9 | ||
|
|
4025076ca2 | ||
|
|
664635ce65 | ||
|
|
b47d410f84 | ||
|
|
b4b534f1ee | ||
|
|
798323e52e | ||
|
|
5bdf8cd3c2 | ||
|
|
b109432c3a | ||
|
|
0a01f5cd3e | ||
|
|
6ff7cd9fa5 | ||
|
|
83cb3e7624 | ||
|
|
20624f43c3 | ||
|
|
b7c624e2d9 | ||
|
|
f77148e029 | ||
|
|
b3990d04da | ||
|
|
a06b00a998 | ||
|
|
51512910da | ||
|
|
8576a40424 | ||
|
|
8c6328ab58 | ||
|
|
d481cfdab5 | ||
|
|
e706356783 | ||
|
|
65d1486535 | ||
|
|
b1265b5a06 | ||
|
|
1a1c6062db | ||
|
|
95e4241902 | ||
|
|
a91029a00e | ||
|
|
36399b2e4a | ||
|
|
125da90ced | ||
|
|
5c17ed36b3 | ||
|
|
469aa83442 | ||
|
|
b871a3e0cd | ||
|
|
68824177e5 | ||
|
|
a88b32777c | ||
|
|
a11b959529 | ||
|
|
05b1ab91a6 | ||
|
|
9c0089177f | ||
|
|
a26d73a734 | ||
|
|
f6030c2ad1 | ||
|
|
4e887c5b98 | ||
|
|
49644c0c8f | ||
|
|
b05b66d498 | ||
|
|
57c21001f1 | ||
|
|
0094f4294c | ||
|
|
3072385d81 | ||
|
|
03e5afa4c0 | ||
|
|
ef3c8caac4 | ||
|
|
fdd80e9a55 | ||
|
|
948e39419a | ||
|
|
df8b539ccf | ||
|
|
a30c7003af | ||
|
|
8f7aff9340 | ||
|
|
f9119ad8f6 | ||
|
|
30b978f75d | ||
|
|
47f74b8c33 | ||
|
|
dee1a91739 | ||
|
|
0f66aced26 | ||
|
|
da42475564 | ||
|
|
8ebf67b7f0 | ||
|
|
7c25b5f311 | ||
|
|
fbae39e299 | ||
|
|
e4cb322618 | ||
|
|
8997313968 | ||
|
|
9300b13653 | ||
|
|
597642c0ba | ||
|
|
4715754ba9 | ||
|
|
247f299fb0 | ||
|
|
b29e5c56eb | ||
|
|
76e65f9151 | ||
|
|
b1fbf2a4db | ||
|
|
f977f347f0 | ||
|
|
3ee1371212 | ||
|
|
0977f3f39e | ||
|
|
0261624e84 | ||
|
|
f9205dd2ef | ||
|
|
564d687132 | ||
|
|
fa0736a341 | ||
|
|
842920c7db | ||
|
|
205c10066a | ||
|
|
9ee9011747 | ||
|
|
d3a6cd7c7e | ||
|
|
845bb3195a | ||
|
|
7549cd6daa | ||
|
|
32b105a341 | ||
|
|
400615c294 | ||
|
|
51ae9cb9f8 | ||
|
|
6473a5d888 | ||
|
|
4698bf7f37 | ||
|
|
75f83bc01d | ||
|
|
59721b321d | ||
|
|
9745e98876 |
@@ -1,17 +1,440 @@
|
||||
--- 9.4.3-P2 released ---
|
||||
--- 9.4-ESV-R5 released ---
|
||||
|
||||
3135. [port] FreeBSD: workaround broken IPV6_USE_MIN_MTU processing.
|
||||
See http://www.freebsd.org/cgi/query-pr.cgi?pr=158307
|
||||
[RT #24950]
|
||||
|
||||
3023. [bug] Named could be left in an inconsistent state when
|
||||
receiving multiple AXFR response messages that were
|
||||
not all TSIG-signed. [RT #23254]
|
||||
|
||||
--- 9.4-ESV-R5rc1 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]
|
||||
|
||||
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 list in a DLV
|
||||
that validated insecure without using DLV and had
|
||||
DS records in the parent zone. [RT #24631]
|
||||
|
||||
3113. [doc] Document the relationship between serial-query-rate
|
||||
and NOTIFY messages.
|
||||
|
||||
--- 9.4-ESV-R5b1 released ---
|
||||
|
||||
3095. [bug] Handle isolated reserved ports in the port range.
|
||||
[RT #23957]
|
||||
|
||||
3088. [bug] Remove bin/tests/system/logfileconfig/ns1/named.conf
|
||||
and add setup.sh in order to resolve changing
|
||||
named.conf issue. [RT #23687]
|
||||
|
||||
3071. [bug] has_nsec could be used unintialised in
|
||||
update.c:next_active. [RT #20256]
|
||||
|
||||
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]
|
||||
|
||||
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]
|
||||
|
||||
3051. [bug] NS records obsure DNAME records at the bottom of the
|
||||
zone if both are present. [RT #23035]
|
||||
|
||||
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.
|
||||
|
||||
3014. [bug] Fix the zonechecks system test to match expected
|
||||
behaviour for 9.4 and to fail on error. [RT #22905]
|
||||
|
||||
3009. [bug] clients-per-query code didn't work as expected with
|
||||
particular query patterns. [RT #22972]
|
||||
|
||||
3007. [bug] Named failed to preserve the case of domain names in
|
||||
rdata which is not compressible when writing master
|
||||
files. [RT #22863]
|
||||
|
||||
2996. [security] Temporarily disable SO_ACCEPTFILTER support.
|
||||
[RT #22589]
|
||||
|
||||
--- 9.4-ESV-R4 released ---
|
||||
|
||||
2970. [security] Adding a NO DATA negative cache entry failed to clear
|
||||
any matching RRSIG records. A subsequent lookup of
|
||||
of NO DATA cache entry could trigger a INSIST when the
|
||||
unexpected RRSIG was also returned with the NO DATA
|
||||
cache entry.
|
||||
|
||||
CVE-2010-3613, VU#706148. [RT #22288]
|
||||
|
||||
2968. [security] Named could fail to prove a data set was insecure
|
||||
before marking it as insecure. One set of conditions
|
||||
that can trigger this occurs naturally when rolling
|
||||
DNSKEY algorithms.
|
||||
|
||||
CVE-2010-3614, VU#837744. [RT #22309]
|
||||
|
||||
2966. [bug] isc_print_vsnprintf() failed to check if there was
|
||||
space available in the buffer when adding a left
|
||||
justified character with a non zero width,
|
||||
(e.g. "%-1c"). [RT #22270]
|
||||
|
||||
2962. [port] win32: add more dependancies to BINDBuild.dsw.
|
||||
[RT #22062]
|
||||
|
||||
2786. [bug] Additional could be promoted to answer. [RT #20663]
|
||||
|
||||
--- 9.4-ESV-R3 released ---
|
||||
|
||||
2925. [bug] Named failed to accept uncachable negative responses
|
||||
from insecure zones. [RT# 21555]
|
||||
|
||||
2921. [bug] The resolver could attempt to destroy a fetch context
|
||||
too soon. [RT #19878]
|
||||
|
||||
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]
|
||||
|
||||
2900. [bug] The placeholder negative caching element was not
|
||||
properly constructed triggering a INSIST in
|
||||
dns_ncache_towire(). [RT #21346]
|
||||
|
||||
2890. [bug] Handle the introduction of new trusted-keys and
|
||||
DS, DLV RRsets better. [RT #21097]
|
||||
|
||||
2869. [bug] Fix arguments to dns_keytable_findnextkeynode() call.
|
||||
[RT #20877]
|
||||
|
||||
2678. [func] Treat DS queries as if "minimal-response yes;"
|
||||
was set. [RT #20258]
|
||||
|
||||
2427. [func] Treat DNSKEY queries as if "minimal-response yes;"
|
||||
was set. [RT #18528]
|
||||
|
||||
--- 9.4-ESV-R2 released ---
|
||||
|
||||
2876. [bug] Named could return SERVFAIL for negative responses
|
||||
from unsigned zones. [RT #21131]
|
||||
|
||||
--- 9.4-ESV-R1 released ---
|
||||
|
||||
2852. [bug] Handle broken DNSSEC trust chains better. [RT #15619]
|
||||
|
||||
--- 9.4-ESV released ---
|
||||
|
||||
2831. [security] Do not attempt to validate or cache
|
||||
out-of-bailiwick data returned with a secure
|
||||
answer; it must be re-fetched from its original
|
||||
source and validated in that context. [RT #20819]
|
||||
|
||||
2828. [security] Cached CNAME or DNAME RR could be returned to clients
|
||||
without DNSSEC validation. [RT #20737]
|
||||
|
||||
2827. [security] Bogus NXDOMAIN could be cached as if valid. [RT #20712]
|
||||
|
||||
2797. [bug] Don't decrement the dispatch manager's maxbuffers.
|
||||
[RT #20613]
|
||||
|
||||
2790. [bug] Handle DS queries to stub zones. [RT #20440]
|
||||
|
||||
2772. [security] When validating, track whether pending data was from
|
||||
the additional section or not and only return it if
|
||||
validates as secure. [RT #20438]
|
||||
|
||||
--- 9.4-ESVb1 released ---
|
||||
|
||||
2698. [cleanup] configure --enable-libbind is deprecated. [RT #20090]
|
||||
|
||||
2697. [port] win32: ensure that S_IFMT, S_IFDIR, S_IFCHR and
|
||||
S_IFREG are defined after including <isc/stat.h>.
|
||||
[RT #20309]
|
||||
|
||||
2690. [bug] win32: fix isc_thread_key_getspecific() prototype.
|
||||
[RT #20315]
|
||||
|
||||
2689. [bug] Correctly handle snprintf result. [RT #20306]
|
||||
|
||||
2688. [bug] Use INTERFACE_F_POINTTOPOINT, not IFF_POINTOPOINT,
|
||||
to decide to fetch the destination address. [RT #20305]
|
||||
|
||||
2681. [bug] IPSECKEY RR of gateway type 3 was not correctly
|
||||
decoded. [RT #20269]
|
||||
|
||||
2672. [bug] Don't enable searching in 'host' when doing reverse
|
||||
lookups. [RT #20218]
|
||||
|
||||
2525. [experimental] New logging category "query-errors" to provide detailed
|
||||
internal information about query failures, especially
|
||||
about server failures. (backported as a special
|
||||
exception to the general policy) [RT #19027]
|
||||
|
||||
2670. [bug] Unexpected connect failures failed to log enough
|
||||
information to be useful. [RT #20205]
|
||||
|
||||
2649. [bug] Set the domain for forward only zones. [RT #19944]
|
||||
|
||||
2648. [port] win32: isc_time_seconds() was broken. [RT #19900]
|
||||
|
||||
2646. [bug] Incorrect cleanup on error in socket.c. [RT #19987]
|
||||
|
||||
2642. [bug] nsupdate could dump core on solaris when reading
|
||||
improperly formatted key files. [RT #20015]
|
||||
|
||||
2640. [security] A specially crafted update packet will cause named
|
||||
to exit. [RT #20000]
|
||||
|
||||
2637. [func] Rationalize dnssec-signzone's signwithkey() calling.
|
||||
[RT #19959]
|
||||
|
||||
2635. [bug] isc_inet_ntop() incorrectly handled 0.0/16 addresses.
|
||||
[RT #19716]
|
||||
|
||||
2633. [bug] Handle 15 bit rand() functions. [RT #19783]
|
||||
|
||||
2632. [func] util/kit.sh: warn if documentation appears to be out of
|
||||
date. [RT #19922]
|
||||
|
||||
2623. [bug] Named started seaches for DS non-optimally. [RT #19915]
|
||||
|
||||
2621. [doc] Made copyright boilterplate consistent. [RT #19833]
|
||||
|
||||
2920. [bug] Delay thawing the zone until the reload of it has
|
||||
completed successfully. [RT #19750]
|
||||
|
||||
2618. [bug] The sdb and sdlz db_interator_seek() methods could
|
||||
loop infinitely. [RT #19847]
|
||||
|
||||
2617. [bug] ifconfig.sh failed to emit an error message when
|
||||
run from the wrong location. [RT #19375]
|
||||
|
||||
2616. [bug] 'host' used the nameservers from resolv.conf even
|
||||
when a explicit nameserver was specified. [RT #19852]
|
||||
|
||||
2615. [bug] "__attribute__((unused))" was in the wrong place
|
||||
for ia64 gcc builds. [RT #19854]
|
||||
|
||||
2614. [port] win32: 'named -v' should automatically be executed
|
||||
in the foreground. [RT #19844]
|
||||
|
||||
2610. [port] sunos: Change #2363 was not complete. [RT #19796]
|
||||
|
||||
2606. [bug] "delegation-only" was not being accepted in
|
||||
delegation-only type zones. [RT #19717]
|
||||
|
||||
2605. [bug] Accept DS responses from delegation only zones.
|
||||
[RT # 19296]
|
||||
|
||||
2603. [port] win32: handle .exe extension of named-checkzone and
|
||||
named-comilezone argv[0] names under windows.
|
||||
[RT #19767]
|
||||
|
||||
2602. [port] win32: fix debugging command line build of libisccfg.
|
||||
[RT #19767]
|
||||
|
||||
2599. [bug] Address rapid memory growth when validation fails.
|
||||
[RT #19654]
|
||||
|
||||
2595. [bug] Fix unknown extended rcodes in dig. [RT #19625]
|
||||
|
||||
2592. [bug] Treat "any" as a type in nsupdate. [RT #19455]
|
||||
|
||||
2591. [bug] named could die when processing a update in
|
||||
removed_orphaned_ds(). [RT #19507]
|
||||
|
||||
2589. [bug] dns_db_unregister() failed to clear '*dbimp'.
|
||||
[RT #19626]
|
||||
|
||||
2586. [bug] Missing cleanup of SIG rdataset in searching a DLZ DB
|
||||
or SDB. [RT #19577]
|
||||
|
||||
2584. [bug] alpha: gcc optimization could break atomic operations.
|
||||
[RT #19227]
|
||||
|
||||
2583. [port] netbsd: provide a control to not add the compile
|
||||
date to the version string, -DNO_VERSION_DATE.
|
||||
|
||||
2582. [bug] Don't emit warning log message when we attempt to
|
||||
remove non-existant journal. [RT #19516]
|
||||
|
||||
2581. [contrib] dlz/mysql set MYSQL_OPT_RECONNECT option on connection.
|
||||
Requires MySQL 5.0.19 or later. [RT #19084]
|
||||
|
||||
2579. [bug] DNSSEC lookaside validation failed to handle unknown
|
||||
algorithms. [RT #19479]
|
||||
|
||||
--- 9.4.3-P1 released ---
|
||||
2573. [bug] Replacing a non-CNAME record with a CNAME record in a
|
||||
single transaction in a signed zone failed. [RT #19397]
|
||||
|
||||
2568. [bug] Report when the write to indicate a otherwise
|
||||
successful start fails. [RT #19360]
|
||||
|
||||
2567. [bug] dst__privstruct_writefile() could miss write errors.
|
||||
write_public_key() could miss write errors.
|
||||
[RT #19360]
|
||||
|
||||
2564. [bug] Only take EDNS fallback steps when processing timeouts.
|
||||
[RT #19405]
|
||||
|
||||
2563. [bug] Dig could leak a socket causing it to wait forever
|
||||
to exit. [RT #19359]
|
||||
|
||||
2562. [doc] ARM: miscellaneous improvements, reorganization,
|
||||
and some new content.
|
||||
|
||||
2561. [doc] Add isc-config.sh(1) man page. [RT #16378]
|
||||
|
||||
2557. [cleanup] PCI compliance:
|
||||
* new libisc log module file
|
||||
* isc_dir_chroot() now also changes the working
|
||||
directory to "/".
|
||||
* additional INSISTs
|
||||
* additional logging when files can't be removed.
|
||||
|
||||
2553. [bug] Reference leak on DNSSEC validation errors. [RT #19291]
|
||||
|
||||
2552. [bug] zero-no-soa-ttl-cache was not being honoured.
|
||||
[RT #19340]
|
||||
|
||||
2551. [bug] Potential Reference leak on return. [RT #19341]
|
||||
|
||||
2550. [bug] Check --with-openssl=<path> finds <openssl/opensslv.h>.
|
||||
[RT #19343]
|
||||
|
||||
2549. [port] linux: define NR_OPEN if not currently defined.
|
||||
[RT #19344]
|
||||
|
||||
2547. [bug] openssl_link.c:mem_realloc() could reference an
|
||||
out-of-range area of the source buffer. New public
|
||||
function isc_mem_reallocate() was introduced to address
|
||||
this bug. [RT #19313]
|
||||
|
||||
2545. [doc] ARM: Legal hostname checking (check-names) is
|
||||
for SRV RDATA too. [RT #19304]
|
||||
|
||||
2544. [cleanup] Removed unused structure members in adb.c. [RT #19225]
|
||||
|
||||
2542. [doc] Update the description of dig +adflag. [RT #19290]
|
||||
|
||||
2539. [security] Update the interaction between recursion, allow-query,
|
||||
allow-query-cache and allow-recursion. [RT #19198]
|
||||
|
||||
2536. [cleanup] Silence some warnings when -Werror=format-security is
|
||||
specified. [RT #19083]
|
||||
|
||||
2535. [bug] dig +showsearch and +trace interacted badly. [RT #19091]
|
||||
|
||||
2532. [bug] dig: check the question section of the response to
|
||||
see if it matches the asked question. [RT #18495]
|
||||
|
||||
2531. [bug] Change #2207 was incomplete. [RT #19098]
|
||||
|
||||
2529. [cleanup] Upgrade libtool to silence complaints from recent
|
||||
version of autoconf. [RT #18657]
|
||||
|
||||
2528. [cleanup] Silence spurious configure warning about
|
||||
--datarootdir [RT #19096]
|
||||
|
||||
2527. [bug] named could reuse cache on reload with
|
||||
enabling/disabling validation. [RT #19119]
|
||||
|
||||
2523. [bug] Random type rdata freed by dns_nsec_typepresent().
|
||||
[RT #19112]
|
||||
|
||||
2522. [security] Handle -1 from DSA_do_verify().
|
||||
|
||||
2521. [bug] Improve epoll cross compilation support. [RT #19047]
|
||||
|
||||
2519. [bug] dig/host with -4 or -6 didn't work if more than two
|
||||
nameserver addresses of the excluded address family
|
||||
preceded in resolv.conf. [RT #19081]
|
||||
|
||||
2517. [bug] dig +trace with -4 or -6 failed when it chose a
|
||||
nameserver address of the excluded address type.
|
||||
[RT #18843]
|
||||
|
||||
2516. [bug] glue sort for responses was performed even when not
|
||||
needed. [RT #19039]
|
||||
|
||||
2514. [bug] dig/host failed with -4 or -6 when resolv.conf contains
|
||||
a nameserver of the excluded address family.
|
||||
[RT #18848]
|
||||
|
||||
2511. [cleanup] dns_rdata_tofmttext() add const to linebreak.
|
||||
[RT #18885]
|
||||
|
||||
2510. [bug] "dig +sigchase" could trigger REQUIRE failures.
|
||||
[RT #19033]
|
||||
|
||||
2509. [bug] Specifying a fixed query source port was broken.
|
||||
[RT #19051]
|
||||
|
||||
2506. [port] solaris: Check at configure time if
|
||||
hack_shutup_pthreadonceinit is needed. [RT #19037]
|
||||
|
||||
2505. [port] Treat amd64 similarly to x86_64 when determining
|
||||
atomic operation support. [RT #19031]
|
||||
|
||||
2504. [bug] Address race condition in the socket code. [RT #18899]
|
||||
|
||||
2503. [port] linux: improve compatibility with Linux Standard
|
||||
Base. [RT #18793]
|
||||
|
||||
2500. [contrib] contrib/sdb/pgsql/zonetodb.c called non-existent
|
||||
function. [RT #18582]
|
||||
|
||||
2499. [port] solaris: lib/lwres/getaddrinfo.c namespace clash.
|
||||
[RT #18837]
|
||||
|
||||
2498. [bug] Removed a bogus function argument used with
|
||||
ISC_SOCKET_USE_POLLWATCH: it could cause compiler
|
||||
warning or crash named with the debug 1 level
|
||||
of logging. [RT #18917]
|
||||
|
||||
2495. [bug] Tighten RRSIG checks. [RT #18795]
|
||||
|
||||
2494. [bug] dns/sdlz.h and dns/dlz.h were not being installed.
|
||||
[RT #18826]
|
||||
|
||||
2487. [bug] Give TCP connections longer to complete. [RT #18675]
|
||||
|
||||
2485. [bug] Change update's the handling of obscured RRSIG
|
||||
records. Not all orphand DS records were being
|
||||
removed. [RT #18828]
|
||||
|
||||
2479. [bug] xfrout:covers was not properly initalized. [RT #18801]
|
||||
|
||||
2478. [bug] 'addresses' could be used uninitalized in
|
||||
configure_forward(). [RT #18800]
|
||||
|
||||
2476. [doc] ARM: improve documentation for max-journal-size and
|
||||
ixfr-from-differences. [RT #15909] [RT #18541]
|
||||
|
||||
2400. [bug] Log if kqueue()/epoll_create()/open(/dev/poll) fails.
|
||||
[RT #18297]
|
||||
|
||||
--- 9.4.3 released ---
|
||||
|
||||
2490. [port] aix: work around a kernel bug where IPV6_RECVPKTINFO
|
||||
@@ -27,7 +450,7 @@
|
||||
|
||||
2473. [port] linux: raise the limit on open files to the possible
|
||||
maximum value before spawning threads; 'files'
|
||||
specified in named.conf doesn't seem to work with
|
||||
specified in named.conf doesn't seem to work with
|
||||
threads as expected. [RT #18784]
|
||||
|
||||
2472. [port] linux: check the number of available cpu's before
|
||||
@@ -50,10 +473,11 @@
|
||||
2465. [bug] Adb's handling of lame addresses was different
|
||||
for IPv4 and IPv6. [RT #18738]
|
||||
|
||||
2463. [port] linux: POSIX doesn't include the IPv6 Advanced Socket
|
||||
2463. [port] linux: POSIX doesn't include the IPv6 Advanced Socket
|
||||
API and glibc hides parts of the IPv6 Advanced Socket
|
||||
API as a result. This is stupid as it breaks how the
|
||||
two halves (Basic and Advanced) of the IPv6 Socket API were designed to be used but we have to live with it.
|
||||
two halves (Basic and Advanced) of the IPv6 Socket API
|
||||
were designed to be used but we have to live with it.
|
||||
Define _GNU_SOURCE to pull in the IPv6 Advanced Socket
|
||||
API. [RT #18388]
|
||||
|
||||
@@ -159,6 +583,10 @@
|
||||
for select(). To enable this, set ISC_SOCKET_MAXSOCKETS
|
||||
at compilation time. [RT #18433]
|
||||
|
||||
Note: with changes #2469 and #2421 above, there is no
|
||||
need to tweak ISC_SOCKET_MAXSOCKETS at compilation time
|
||||
any more.
|
||||
|
||||
2410. [bug] Correctly delete m_versionInfo. [RT #18432]
|
||||
|
||||
2408. [bug] A duplicate TCP dispatch event could be sent, which
|
||||
@@ -230,7 +658,7 @@
|
||||
2380. [bug] dns_view_find() was not returning NXDOMAIN/NXRRSET
|
||||
proofs which, in turn, caused validation failures
|
||||
for insecure zones immediately below a secure zone
|
||||
the server was authoritative for. [RT #18112]
|
||||
the server was authoritative for. [RT #18112]
|
||||
|
||||
2379. [contrib] queryperf/gen-data-queryperf.py: removed redundant
|
||||
TLDs and supported RRs with TTLs [RT #17972]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright (C) 1996-2003 Internet Software Consortium.
|
||||
|
||||
Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -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.9.18.5 2008/01/02 23:46:02 tbox Exp $
|
||||
$Id: COPYRIGHT,v 1.9.18.9 2011/02/22 06:45:07 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.
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
Frequently Asked Questions about BIND 9
|
||||
|
||||
Copyright © 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright © 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
|
||||
Copyright © 2000-2003 Internet Software Consortium.
|
||||
|
||||
@@ -153,24 +153,29 @@ A: BIND 9.3 and later: Use TSIG to select the appropriate view.
|
||||
|
||||
Master 10.0.1.1:
|
||||
key "external" {
|
||||
algorithm hmac-md5;
|
||||
secret "xxxxxxxx";
|
||||
algorithm hmac-sha256;
|
||||
secret "xxxxxxxxxxxxxxxxxxxxxxxx";
|
||||
};
|
||||
view "internal" {
|
||||
match-clients { !key external; 10.0.1/24; };
|
||||
match-clients { !key external; // reject message ment for the
|
||||
// external view.
|
||||
10.0.1/24; }; // accept from these addresses.
|
||||
...
|
||||
};
|
||||
view "external" {
|
||||
match-clients { key external; any; };
|
||||
server 10.0.1.2 { keys external; };
|
||||
server 10.0.1.2 { keys external; }; // tag messages from the
|
||||
// external view to the
|
||||
// other servers for the
|
||||
// view.
|
||||
recursion no;
|
||||
...
|
||||
};
|
||||
|
||||
Slave 10.0.1.2:
|
||||
key "external" {
|
||||
algorithm hmac-md5;
|
||||
secret "xxxxxxxx";
|
||||
algorithm hmac-sha256;
|
||||
secret "xxxxxxxxxxxxxxxxxxxxxxxx";
|
||||
};
|
||||
view "internal" {
|
||||
match-clients { !key external; 10.0.1/24; };
|
||||
@@ -220,13 +225,13 @@ A: You choose one view to be master and the second a slave and transfer
|
||||
|
||||
Master 10.0.1.1:
|
||||
key "external" {
|
||||
algorithm hmac-md5;
|
||||
secret "xxxxxxxx";
|
||||
algorithm hmac-sha256;
|
||||
secret "xxxxxxxxxxxxxxxxxxxxxxxx";
|
||||
};
|
||||
|
||||
key "mykey" {
|
||||
algorithm hmac-md5;
|
||||
secret "yyyyyyyy";
|
||||
algorithm hmac-sha256;
|
||||
secret "yyyyyyyyyyyyyyyyyyyyyyyy";
|
||||
};
|
||||
|
||||
view "internal" {
|
||||
@@ -600,7 +605,7 @@ Q: Why do queries for NSEC3 records fail to return the NSEC3 record?
|
||||
|
||||
A: NSEC3 records are strictly meta data and can only be returned in the
|
||||
authority section. This is done so that signing the zone using NSEC3
|
||||
records does not bring names into existance that do not exist in the
|
||||
records does not bring names into existence that do not exist in the
|
||||
unsigned version of the zone.
|
||||
|
||||
5. Operating-System Specific Questions
|
||||
@@ -825,7 +830,6 @@ A: /dev/random is not configured. Use rndcontrol(8) to tell the kernel to
|
||||
use certain interrupts as a source of random events. You can make this
|
||||
permanent by setting rand_irqs in /etc/rc.conf.
|
||||
|
||||
/etc/rc.conf
|
||||
rand_irqs="3 14 15"
|
||||
|
||||
See also <http://people.freebsd.org/~dougb/randomness.html>.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" []>
|
||||
<!--
|
||||
- Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -17,7 +17,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: FAQ.xml,v 1.4.4.24 2008/09/10 01:32:25 tbox Exp $ -->
|
||||
<!-- $Id: FAQ.xml,v 1.4.4.29 2009/10/06 01:33:54 tbox Exp $ -->
|
||||
|
||||
<article class="faq">
|
||||
<title>Frequently Asked Questions about BIND 9</title>
|
||||
@@ -28,6 +28,7 @@
|
||||
<year>2006</year>
|
||||
<year>2007</year>
|
||||
<year>2008</year>
|
||||
<year>2009</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
@@ -318,24 +319,29 @@ Slave: 10.0.1.3 (internal), 10.0.1.4 (external, IP alias)
|
||||
<programlisting>
|
||||
Master 10.0.1.1:
|
||||
key "external" {
|
||||
algorithm hmac-md5;
|
||||
secret "xxxxxxxx";
|
||||
algorithm hmac-sha256;
|
||||
secret "xxxxxxxxxxxxxxxxxxxxxxxx";
|
||||
};
|
||||
view "internal" {
|
||||
match-clients { !key external; 10.0.1/24; };
|
||||
match-clients { !key external; // reject message ment for the
|
||||
// external view.
|
||||
10.0.1/24; }; // accept from these addresses.
|
||||
...
|
||||
};
|
||||
view "external" {
|
||||
match-clients { key external; any; };
|
||||
server 10.0.1.2 { keys external; };
|
||||
server 10.0.1.2 { keys external; }; // tag messages from the
|
||||
// external view to the
|
||||
// other servers for the
|
||||
// view.
|
||||
recursion no;
|
||||
...
|
||||
};
|
||||
|
||||
Slave 10.0.1.2:
|
||||
key "external" {
|
||||
algorithm hmac-md5;
|
||||
secret "xxxxxxxx";
|
||||
algorithm hmac-sha256;
|
||||
secret "xxxxxxxxxxxxxxxxxxxxxxxx";
|
||||
};
|
||||
view "internal" {
|
||||
match-clients { !key external; 10.0.1/24; };
|
||||
@@ -423,13 +429,13 @@ named-checkzone example.com tmp</programlisting>
|
||||
<programlisting>
|
||||
Master 10.0.1.1:
|
||||
key "external" {
|
||||
algorithm hmac-md5;
|
||||
secret "xxxxxxxx";
|
||||
algorithm hmac-sha256;
|
||||
secret "xxxxxxxxxxxxxxxxxxxxxxxx";
|
||||
};
|
||||
|
||||
key "mykey" {
|
||||
algorithm hmac-md5;
|
||||
secret "yyyyyyyy";
|
||||
algorithm hmac-sha256;
|
||||
secret "yyyyyyyyyyyyyyyyyyyyyyyy";
|
||||
};
|
||||
|
||||
view "internal" {
|
||||
@@ -1067,7 +1073,7 @@ empty:
|
||||
NSEC3 records are strictly meta data and can only be
|
||||
returned in the authority section. This is done so that
|
||||
signing the zone using NSEC3 records does not bring names
|
||||
into existance that do not exist in the unsigned version
|
||||
into existence that do not exist in the unsigned version
|
||||
of the zone.
|
||||
</para>
|
||||
</answer>
|
||||
@@ -1470,7 +1476,6 @@ options {
|
||||
</para>
|
||||
<informalexample>
|
||||
<programlisting>
|
||||
/etc/rc.conf
|
||||
rand_irqs="3 14 15"</programlisting>
|
||||
</informalexample>
|
||||
<para>
|
||||
|
||||
+15
-2
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004-2007, 2009 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.43.18.6 2007/09/03 23:46:21 tbox Exp $
|
||||
# $Id: Makefile.in,v 1.43.18.8 2009/02/20 23:46:01 tbox Exp $
|
||||
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
@@ -24,6 +24,12 @@ top_srcdir = @top_srcdir@
|
||||
SUBDIRS = make lib bin doc @LIBBIND@
|
||||
TARGETS =
|
||||
|
||||
MANPAGES = isc-config.sh.1
|
||||
|
||||
HTMLPAGES = isc-config.sh.html
|
||||
|
||||
MANOBJS = ${MANPAGES} ${HTMLPAGES}
|
||||
|
||||
@BIND9_MAKE_RULES@
|
||||
|
||||
distclean::
|
||||
@@ -43,12 +49,19 @@ distclean::
|
||||
maintainer-clean::
|
||||
rm -f configure
|
||||
|
||||
docclean manclean maintainer-clean::
|
||||
rm -f ${MANOBJS}
|
||||
|
||||
doc man:: ${MANOBJS}
|
||||
|
||||
installdirs:
|
||||
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${bindir} \
|
||||
${DESTDIR}${localstatedir}/run ${DESTDIR}${sysconfdir}
|
||||
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${mandir}/man1
|
||||
|
||||
install:: isc-config.sh installdirs
|
||||
${INSTALL_SCRIPT} isc-config.sh ${DESTDIR}${bindir}
|
||||
${INSTALL_DATA} ${srcdir}/isc-config.sh.1 ${DESTDIR}${mandir}/man1
|
||||
|
||||
tags:
|
||||
rm -f TAGS
|
||||
|
||||
@@ -27,8 +27,8 @@ BIND 9
|
||||
- Improved Portability Architecture
|
||||
|
||||
|
||||
BIND version 9 development has been underwritten by the following
|
||||
organizations:
|
||||
BIND version 9 development has been under written by the following
|
||||
organisations:
|
||||
|
||||
Sun Microsystems, Inc.
|
||||
Hewlett Packard
|
||||
@@ -42,6 +42,20 @@ BIND 9
|
||||
Stichting NLnet - NLnet Foundation
|
||||
Nominum, Inc.
|
||||
|
||||
BIND 9.4-ESV-R5 (Extended Support Version)
|
||||
|
||||
BIND 9.4-ESV-R5 is expected to be the last release in the 9.4
|
||||
series.
|
||||
|
||||
BIND 9.4-ESV (Extended Support Version)
|
||||
|
||||
BIND 9.4-ESV is the Extended Support Version of BIND 9.4
|
||||
and incorporates the final maintenance release fixing bugs
|
||||
in BIND 9.4.3.
|
||||
|
||||
BIND 9.4-ESV will be supported until May 31, 2011, at which
|
||||
time you will need to upgrade to the current release of BIND.
|
||||
|
||||
BIND 9.4.3
|
||||
|
||||
BIND 9.4.3 is a maintenance release, fixing bugs in 9.4.2.
|
||||
@@ -67,7 +81,7 @@ BIND 9.4.0
|
||||
Implemented "additional section caching" (or "acache"), an
|
||||
internal cache framework for additional section content to
|
||||
improve response performance. Several configuration options
|
||||
were provided to control the behavior.
|
||||
were provided to control the behaviour.
|
||||
|
||||
New notify type 'master-only'. Enable notify for master
|
||||
zones only.
|
||||
@@ -76,13 +90,14 @@ BIND 9.4.0
|
||||
|
||||
rndc now allows addresses to be set in the server clauses.
|
||||
|
||||
New option "allow-query-cache". This lets allow-query be
|
||||
used to specify the default zone access level rather than
|
||||
having to have every zone override the global value.
|
||||
allow-query-cache can be set at both the options and view
|
||||
levels. If allow-query-cache is not set then allow-recursion
|
||||
is used if set, otherwise allow-query is used if set, otherwise
|
||||
the default (localhost; localnets;) is used.
|
||||
New option "allow-query-cache". This lets "allow-query"
|
||||
be used to specify the default zone access level rather
|
||||
than having to have every zone override the global value.
|
||||
"allow-query-cache" can be set at both the options and view
|
||||
levels. If "allow-query-cache" is not set then "allow-recursion"
|
||||
is used if set, otherwise "allow-query" is used if set
|
||||
unless "recursion no;" is set in which case "none;" is used,
|
||||
otherwise the default (localhost; localnets;) is used.
|
||||
|
||||
rndc: the source address can now be specified.
|
||||
|
||||
@@ -150,12 +165,12 @@ BIND 9.4.0
|
||||
options for dnssec-signzone specify the input and output
|
||||
formats.
|
||||
|
||||
dnssec-signzone can now randomize signature end times
|
||||
dnssec-signzone can now randomise signature end times
|
||||
(dnssec-signzone -j jitter).
|
||||
|
||||
Add support for CH A record.
|
||||
|
||||
Add additional zone data consistancy checks. named-checkzone
|
||||
Add additional zone data consistency checks. named-checkzone
|
||||
has extended checking of NS, MX and SRV record and the hosts
|
||||
they reference. named has extended post zone load checks.
|
||||
New zone options: check-mx and integrity-check.
|
||||
|
||||
+4
-4
@@ -55,7 +55,7 @@ at least specify `--with-idn' option to enable IDN support.
|
||||
|
||||
`--with-libiconv' assumes that your C compiler has `-R'
|
||||
option, and that the option adds the specified run-time path
|
||||
to an exacutable binary. If `-R' option of your compiler has
|
||||
to an executable binary. If `-R' option of your compiler has
|
||||
different meaning, or your compiler lacks the option, you
|
||||
should use `--with-iconv' option instead. Binary command
|
||||
without run-time path information might be unexecutable.
|
||||
@@ -68,7 +68,7 @@ at least specify `--with-idn' option to enable IDN support.
|
||||
specified, `--with-iconv' is prior to `--with-libiconv'.
|
||||
|
||||
--with-iconv=ICONV_LIBSPEC
|
||||
If your libc doens't provide iconv(), you need to specify the
|
||||
If your libc doesn't provide iconv(), you need to specify the
|
||||
library containing iconv() with this option. `ICONV_LIBSPEC'
|
||||
is the argument(s) to `cc' or `ld' to link the library, for
|
||||
example, `--with-iconv="-L/usr/local/lib -liconv"'.
|
||||
@@ -82,7 +82,7 @@ at least specify `--with-idn' option to enable IDN support.
|
||||
this option is not specified, `-L${PREFIX}/lib -lidnkit' is
|
||||
assumed, where ${PREFIX} is the installation prefix specified
|
||||
with `--with-idn' option above. You may need to use this
|
||||
option to specify extra argments, for example,
|
||||
option to specify extra arguments, for example,
|
||||
`--with-idnlib="-L/usr/local/lib -R/usr/local/lib -lidnkit"'.
|
||||
|
||||
Please consult `README' for other configuration options.
|
||||
@@ -109,4 +109,4 @@ about idnkit and this patch.
|
||||
Bug reports and comments on this kit should be sent to
|
||||
mdnkit-bugs@nic.ad.jp and idn-cmt@nic.ad.jp, respectively.
|
||||
|
||||
; $Id: README.idnkit,v 1.2.2.2 2005/09/12 02:12:08 marka Exp $
|
||||
; $Id: README.idnkit,v 1.2.2.3 2009/01/19 00:36:25 marka Exp $
|
||||
|
||||
@@ -0,0 +1,203 @@
|
||||
<?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) 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
|
||||
- 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.4-ESV.html,v 1.1.2.12 2011/07/24 08:05:11 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="id3359578"></a>Introduction</h2></div></div></div>
|
||||
|
||||
<p>
|
||||
BIND 9.4-ESV-R5 is the current production release
|
||||
of BIND 9.4.
|
||||
</p>
|
||||
<p>
|
||||
This document summarizes changes from BIND 9.4-ESV-R4 to BIND 9.4-ESV-R5.
|
||||
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="id3358597"></a>Download</h2></div></div></div>
|
||||
|
||||
<p>
|
||||
The latest release 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="id3358630"></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="id3358679"></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="id3358720"></a>9.4-ESV-R5</h3></div></div></div>
|
||||
|
||||
<p>None.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3358748"></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="id3358768"></a>9.4-ESV-R5</h3></div></div></div>
|
||||
|
||||
<p>None.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id3358796"></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="id3358816"></a>9.4-ESV-R5</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul type="disc"><li>
|
||||
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>
|
||||
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. This was fixed by disambiguating internal database representation
|
||||
vs DNS wire format data. [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="id3358855"></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="id3358861"></a>9.4-ESV-R5</h3></div></div></div>
|
||||
|
||||
<div class="itemizedlist"><ul type="disc"><li>
|
||||
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>
|
||||
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>
|
||||
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>
|
||||
Prior to this fix, when named was was writing a zone to disk (as slave,
|
||||
when resigning, etc.), it might not correctly preserve the case of domain
|
||||
name labels within RDATA, if the RDATA was not compressible. The result
|
||||
is that when reloading the zone from disk would, named could serve data
|
||||
that did not match the RRSIG for that data, due to case mismatch. named
|
||||
now correctly preserves case. After upgrading to fixed code, the operator
|
||||
should either resign the data (on the master) or delete the disk file
|
||||
on the slave and reload the zone. [RT #22863]
|
||||
</li><li>
|
||||
Fix the zonechecks system test to fail on error (warning in 9.6,
|
||||
fatal in 9.7) to match behaviour for 9.4. [RT #22905]
|
||||
</li><li>
|
||||
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>
|
||||
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 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>
|
||||
Changing TTL did not cause dnssec-signzone to generate new signatures.
|
||||
[RT #23330]
|
||||
</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>
|
||||
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>
|
||||
ixfr-from-differences {master|slave};
|
||||
failed to select the master/slave zones, resulting in on diff/journal
|
||||
file being created.
|
||||
[RT #23580]
|
||||
</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>
|
||||
The autosign tests attempted to open ports within reserved ranges. Test
|
||||
now avoids those ports.
|
||||
[RT #23957]
|
||||
</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></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="id3359002"></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,129 @@
|
||||
__________________________________________________________________
|
||||
|
||||
Introduction
|
||||
|
||||
BIND 9.4-ESV-R5 is the current production release of BIND 9.4.
|
||||
|
||||
This document summarizes changes from BIND 9.4-ESV-R4 to BIND
|
||||
9.4-ESV-R5. Please see the CHANGES file in the source code release for
|
||||
a complete list of all changes.
|
||||
|
||||
Download
|
||||
|
||||
The latest release 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.4-ESV-R5
|
||||
|
||||
None.
|
||||
|
||||
Feature Changes
|
||||
|
||||
9.4-ESV-R5
|
||||
|
||||
None.
|
||||
|
||||
Security Fixes
|
||||
|
||||
9.4-ESV-R5
|
||||
|
||||
* 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]
|
||||
* 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. This was fixed by disambiguating internal database
|
||||
representation vs DNS wire format data. [RT #24777] [CVE-2011-2464]
|
||||
|
||||
Bug Fixes
|
||||
|
||||
9.4-ESV-R5
|
||||
|
||||
* 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]
|
||||
* 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]
|
||||
* Prior to this fix, when named was was writing a zone to disk (as
|
||||
slave, when resigning, etc.), it might not correctly preserve the
|
||||
case of domain name labels within RDATA, if the RDATA was not
|
||||
compressible. The result is that when reloading the zone from disk
|
||||
would, named could serve data that did not match the RRSIG for that
|
||||
data, due to case mismatch. named now correctly preserves case.
|
||||
After upgrading to fixed code, the operator should either resign
|
||||
the data (on the master) or delete the disk file on the slave and
|
||||
reload the zone. [RT #22863]
|
||||
* Fix the zonechecks system test to fail on error (warning in 9.6,
|
||||
fatal in 9.7) to match behaviour for 9.4. [RT #22905]
|
||||
* 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]
|
||||
* 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 precedence order bug with NS and DNAME records if both are
|
||||
present. (Also fixed timing of autosign test in 9.7+) [RT #23035]
|
||||
* Changing TTL did not cause dnssec-signzone to generate new
|
||||
signatures. [RT #23330]
|
||||
* 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]
|
||||
* 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]
|
||||
* ixfr-from-differences {master|slave}; failed to select the
|
||||
master/slave zones, resulting in on diff/journal file being
|
||||
created. [RT #23580]
|
||||
* Remove bin/tests/system/logfileconfig/ns1/named.conf and add
|
||||
setup.sh in order to resolve changing named.conf issue. [RT #23687]
|
||||
* The autosign tests attempted to open ports within reserved ranges.
|
||||
Test now avoids those ports. [RT #23957]
|
||||
* 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]
|
||||
|
||||
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.
|
||||
+4
-10
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: acconfig.h,v 1.44.18.5 2005/04/29 00:15:20 marka Exp $ */
|
||||
/* $Id: acconfig.h,v 1.44.18.7 2008/12/01 23:45:56 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -25,9 +25,6 @@
|
||||
***/
|
||||
@TOP@
|
||||
|
||||
/** define to `int' if <sys/types.h> doesn't define. */
|
||||
#undef ssize_t
|
||||
|
||||
/** define on DEC OSF to enable 4.4BSD style sa_len support */
|
||||
#undef _SOCKADDR_LEN
|
||||
|
||||
@@ -61,9 +58,6 @@
|
||||
/** define if you have the NET_RT_IFLIST sysctl variable and sys/sysctl.h */
|
||||
#undef HAVE_IFLIST_SYSCTL
|
||||
|
||||
/** define if chroot() is available */
|
||||
#undef HAVE_CHROOT
|
||||
|
||||
/** define if tzset() is available */
|
||||
#undef HAVE_TZSET
|
||||
|
||||
@@ -115,7 +109,7 @@ int sigwait(const unsigned int *set, int *sig);
|
||||
* The silly continuation line is to keep configure from
|
||||
* commenting out the #undef.
|
||||
*/
|
||||
|
||||
|
||||
#undef \
|
||||
va_start
|
||||
#define va_start(ap, last) \
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-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: check-tool.c,v 1.10.18.20 2008/10/24 01:43:17 tbox Exp $ */
|
||||
/* $Id: check-tool.c,v 1.10.18.23 2009/09/24 21:38:50 jinmei Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -105,6 +105,7 @@ static isc_logcategory_t categories[] = {
|
||||
{ "queries", 0 },
|
||||
{ "unmatched", 0 },
|
||||
{ "update-security", 0 },
|
||||
{ "query-errors", 0 },
|
||||
{ NULL, 0 }
|
||||
};
|
||||
|
||||
@@ -156,7 +157,7 @@ checkns(dns_zone_t *zone, dns_name_t *name, dns_name_t *owner,
|
||||
cur->ai_next != NULL)
|
||||
cur = cur->ai_next;
|
||||
if (cur != NULL && cur->ai_canonname != NULL &&
|
||||
strcasecmp(ai->ai_canonname, namebuf) != 0) {
|
||||
strcasecmp(cur->ai_canonname, namebuf) != 0) {
|
||||
dns_zone_log(zone, ISC_LOG_ERROR,
|
||||
"%s/NS '%s' (out of zone) "
|
||||
"is a CNAME (illegal)",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -13,7 +13,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: named-checkconf.8,v 1.16.18.13 2007/06/20 02:26:58 marka Exp $
|
||||
.\" $Id: named-checkconf.8,v 1.16.18.14 2009/07/11 01:31:43 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
+13
-19
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2009 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.28.18.16 2007/11/26 23:46:18 tbox Exp $ */
|
||||
/* $Id: named-checkconf.c,v 1.28.18.18 2009/02/16 23:46:03 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -59,9 +59,9 @@ isc_log_t *logc = NULL;
|
||||
/*% usage */
|
||||
static void
|
||||
usage(void) {
|
||||
fprintf(stderr, "usage: named-checkconf [-j] [-v] [-z] [-t directory] "
|
||||
fprintf(stderr, "usage: named-checkconf [-j] [-v] [-z] [-t directory] "
|
||||
"[named.conf]\n");
|
||||
exit(1);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/*% directory callback */
|
||||
@@ -171,9 +171,9 @@ configure_zone(const char *vclass, const char *view,
|
||||
|
||||
zname = cfg_obj_asstring(cfg_tuple_get(zconfig, "name"));
|
||||
classobj = cfg_tuple_get(zconfig, "class");
|
||||
if (!cfg_obj_isstring(classobj))
|
||||
zclass = vclass;
|
||||
else
|
||||
if (!cfg_obj_isstring(classobj))
|
||||
zclass = vclass;
|
||||
else
|
||||
zclass = cfg_obj_asstring(classobj);
|
||||
|
||||
zoptions = cfg_tuple_get(zconfig, "options");
|
||||
@@ -192,9 +192,9 @@ configure_zone(const char *vclass, const char *view,
|
||||
return (ISC_R_FAILURE);
|
||||
if (strcasecmp(cfg_obj_asstring(typeobj), "master") != 0)
|
||||
return (ISC_R_SUCCESS);
|
||||
cfg_map_get(zoptions, "database", &dbobj);
|
||||
if (dbobj != NULL)
|
||||
return (ISC_R_SUCCESS);
|
||||
cfg_map_get(zoptions, "database", &dbobj);
|
||||
if (dbobj != NULL)
|
||||
return (ISC_R_SUCCESS);
|
||||
cfg_map_get(zoptions, "file", &fileobj);
|
||||
if (fileobj == NULL)
|
||||
return (ISC_R_FAILURE);
|
||||
@@ -285,8 +285,8 @@ configure_zone(const char *vclass, const char *view,
|
||||
} else
|
||||
INSIST(0);
|
||||
} else {
|
||||
zone_options |= DNS_ZONEOPT_CHECKNAMES;
|
||||
zone_options |= DNS_ZONEOPT_CHECKNAMESFAIL;
|
||||
zone_options |= DNS_ZONEOPT_CHECKNAMES;
|
||||
zone_options |= DNS_ZONEOPT_CHECKNAMESFAIL;
|
||||
}
|
||||
|
||||
masterformat = dns_masterformat_text;
|
||||
@@ -397,7 +397,7 @@ main(int argc, char **argv) {
|
||||
int exit_status = 0;
|
||||
isc_entropy_t *ectx = NULL;
|
||||
isc_boolean_t load_zones = ISC_FALSE;
|
||||
|
||||
|
||||
while ((c = isc_commandline_parse(argc, argv, "djt:vz")) != EOF) {
|
||||
switch (c) {
|
||||
case 'd':
|
||||
@@ -415,12 +415,6 @@ main(int argc, char **argv) {
|
||||
isc_result_totext(result));
|
||||
exit(1);
|
||||
}
|
||||
result = isc_dir_chdir("/");
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
fprintf(stderr, "isc_dir_chdir: %s\n",
|
||||
isc_result_totext(result));
|
||||
exit(1);
|
||||
}
|
||||
break;
|
||||
|
||||
case 'v':
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -14,7 +14,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: named-checkconf.html,v 1.9.18.20 2007/06/20 02:26:58 marka Exp $ -->
|
||||
<!-- $Id: named-checkconf.html,v 1.9.18.21 2009/07/11 01:31:43 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
.\" Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004-2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -13,7 +13,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: named-checkzone.8,v 1.18.18.23 2007/06/20 02:26:58 marka Exp $
|
||||
.\" $Id: named-checkzone.8,v 1.18.18.25 2009/07/11 01:31:43 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -77,7 +77,7 @@ When loading the zone file read the journal if it exists.
|
||||
.PP
|
||||
\-c \fIclass\fR
|
||||
.RS 4
|
||||
Specify the class of the zone. If not specified "IN" is assumed.
|
||||
Specify the class of the zone. If not specified, "IN" is assumed.
|
||||
.RE
|
||||
.PP
|
||||
\-i \fImode\fR
|
||||
@@ -263,7 +263,7 @@ BIND 9 Administrator Reference Manual.
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004\-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2004\-2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000\-2002 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009 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: named-checkzone.c,v 1.29.18.21 2008/10/24 01:43:17 tbox Exp $ */
|
||||
/* $Id: named-checkzone.c,v 1.29.18.24 2009/05/29 02:19:20 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -122,9 +122,13 @@ main(int argc, char **argv) {
|
||||
*/
|
||||
if (strncmp(prog_name, "lt-", 3) == 0)
|
||||
prog_name += 3;
|
||||
if (strcmp(prog_name, "named-checkzone") == 0)
|
||||
|
||||
#define PROGCMP(X) \
|
||||
(strcasecmp(prog_name, X) == 0 || strcasecmp(prog_name, X ".exe") == 0)
|
||||
|
||||
if (PROGCMP("named-checkzone"))
|
||||
progmode = progmode_check;
|
||||
else if (strcmp(prog_name, "named-compilezone") == 0)
|
||||
else if (PROGCMP("named-compilezone"))
|
||||
progmode = progmode_compile;
|
||||
else
|
||||
INSIST(0);
|
||||
@@ -265,12 +269,6 @@ main(int argc, char **argv) {
|
||||
isc_result_totext(result));
|
||||
exit(1);
|
||||
}
|
||||
result = isc_dir_chdir("/");
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
fprintf(stderr, "isc_dir_chdir: %s\n",
|
||||
isc_result_totext(result));
|
||||
exit(1);
|
||||
}
|
||||
break;
|
||||
|
||||
case 's':
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004-2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: named-checkzone.docbook,v 1.11.18.21 2007/08/28 07:19:55 tbox Exp $ -->
|
||||
<!-- $Id: named-checkzone.docbook,v 1.11.18.23 2009/01/22 23:45:59 tbox Exp $ -->
|
||||
<refentry id="man.named-checkzone">
|
||||
<refentryinfo>
|
||||
<date>June 13, 2000</date>
|
||||
@@ -36,6 +36,7 @@
|
||||
<year>2005</year>
|
||||
<year>2006</year>
|
||||
<year>2007</year>
|
||||
<year>2009</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
@@ -168,7 +169,7 @@
|
||||
<term>-c <replaceable class="parameter">class</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Specify the class of the zone. If not specified "IN" is assumed.
|
||||
Specify the class of the zone. If not specified, "IN" is assumed.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004-2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -14,7 +14,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: named-checkzone.html,v 1.11.18.30 2007/06/20 02:26:58 marka Exp $ -->
|
||||
<!-- $Id: named-checkzone.html,v 1.11.18.32 2009/07/11 01:31:43 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -33,7 +33,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">named-compilezone</code> [<code class="option">-d</code>] [<code class="option">-j</code>] [<code class="option">-q</code>] [<code class="option">-v</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-C <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-f <em class="replaceable"><code>format</code></em></code>] [<code class="option">-F <em class="replaceable"><code>format</code></em></code>] [<code class="option">-i <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-k <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-m <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-n <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-o <em class="replaceable"><code>filename</code></em></code>] [<code class="option">-s <em class="replaceable"><code>style</code></em></code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-w <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-D</code>] [<code class="option">-W <em class="replaceable"><code>mode</code></em></code>] {zonename} {filename}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543665"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543668"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">named-checkzone</strong></span>
|
||||
checks the syntax and integrity of a zone file. It performs the
|
||||
same checks as <span><strong class="command">named</strong></span> does when loading a
|
||||
@@ -53,7 +53,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543700"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543703"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-d</span></dt>
|
||||
<dd><p>
|
||||
@@ -74,7 +74,7 @@
|
||||
</p></dd>
|
||||
<dt><span class="term">-c <em class="replaceable"><code>class</code></em></span></dt>
|
||||
<dd><p>
|
||||
Specify the class of the zone. If not specified "IN" is assumed.
|
||||
Specify the class of the zone. If not specified, "IN" is assumed.
|
||||
</p></dd>
|
||||
<dt><span class="term">-i <em class="replaceable"><code>mode</code></em></span></dt>
|
||||
<dd>
|
||||
@@ -233,14 +233,14 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544299"></a><h2>RETURN VALUES</h2>
|
||||
<a name="id2544302"></a><h2>RETURN VALUES</h2>
|
||||
<p><span><strong class="command">named-checkzone</strong></span>
|
||||
returns an exit status of 1 if
|
||||
errors were detected and 0 otherwise.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544311"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2544314"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named-checkconf</span>(8)</span>,
|
||||
<em class="citetitle">RFC 1035</em>,
|
||||
@@ -248,7 +248,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544344"></a><h2>AUTHOR</h2>
|
||||
<a name="id2544347"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
+6
-6
@@ -1,7 +1,7 @@
|
||||
.\" Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -13,7 +13,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: dig.1,v 1.23.18.24 2008/10/14 01:30:11 tbox Exp $
|
||||
.\" $Id: dig.1,v 1.23.18.27 2009/07/11 01:31:43 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -291,7 +291,7 @@ A synonym for
|
||||
.PP
|
||||
\fB+[no]adflag\fR
|
||||
.RS 4
|
||||
Set [do not set] the AD (authentic data) bit in the query. The AD bit currently has a standard meaning only in responses, not in queries, but the ability to set the bit in the query is provided for completeness.
|
||||
Set [do not set] the AD (authentic data) bit in the query. This requests the server to return whether all of the answer and authority sections have all been validated as secure according to the security policy of the server. AD=1 indicates that all records have been validated as secure and the answer is not from a OPT\-OUT range. AD=0 indicate that some part of the answer was insecure or not validated.
|
||||
.RE
|
||||
.PP
|
||||
\fB+[no]cdflag\fR
|
||||
@@ -480,7 +480,7 @@ Chase DNSSEC signature chains. Requires dig be compiled with \-DDIG_SIGCHASE.
|
||||
Specifies a file containing trusted keys to be used with
|
||||
\fB+sigchase\fR. Each DNSKEY record must be on its own line.
|
||||
.sp
|
||||
If not specified
|
||||
If not specified,
|
||||
\fBdig\fR
|
||||
will look for
|
||||
\fI/etc/trusted\-key.key\fR
|
||||
@@ -557,7 +557,7 @@ RFC1035.
|
||||
.PP
|
||||
There are probably too many query options.
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004\-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2004\-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000\-2003 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
+34
-8
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009 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.186.18.33 2008/10/15 02:19:18 marka Exp $ */
|
||||
/* $Id: dig.c,v 1.186.18.37 2009/05/06 10:21:00 fdupont Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -111,6 +111,24 @@ static const char * const rcodetext[] = {
|
||||
"BADVERS"
|
||||
};
|
||||
|
||||
/*% safe rcodetext[] */
|
||||
static char *
|
||||
rcode_totext(dns_rcode_t rcode)
|
||||
{
|
||||
static char buf[sizeof("?65535")];
|
||||
union {
|
||||
const char *consttext;
|
||||
char *deconsttext;
|
||||
} totext;
|
||||
|
||||
if (rcode >= (sizeof(rcodetext)/sizeof(rcodetext[0]))) {
|
||||
snprintf(buf, sizeof(buf), "?%u", rcode);
|
||||
totext.deconsttext = buf;
|
||||
} else
|
||||
totext.consttext = rcodetext[rcode];
|
||||
return totext.deconsttext;
|
||||
}
|
||||
|
||||
/*% print usage */
|
||||
static void
|
||||
print_usage(FILE *fp) {
|
||||
@@ -468,7 +486,8 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
if (headers) {
|
||||
printf(";; ->>HEADER<<- opcode: %s, status: %s, "
|
||||
"id: %u\n",
|
||||
opcodetext[msg->opcode], rcodetext[msg->rcode],
|
||||
opcodetext[msg->opcode],
|
||||
rcode_totext(msg->rcode),
|
||||
msg->id);
|
||||
printf(";; flags:");
|
||||
if ((msg->flags & DNS_MESSAGEFLAG_QR) != 0)
|
||||
@@ -800,7 +819,9 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
switch (cmd[1]) {
|
||||
case 'e': /* defname */
|
||||
FULLCHECK("defname");
|
||||
usesearch = state;
|
||||
if (!lookup->trace) {
|
||||
usesearch = state;
|
||||
}
|
||||
break;
|
||||
case 'n': /* dnssec */
|
||||
FULLCHECK("dnssec");
|
||||
@@ -842,7 +863,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
lookup->identify = state;
|
||||
break;
|
||||
case 'g': /* ignore */
|
||||
default: /* Inherets default for compatibility */
|
||||
default: /* Inherits default for compatibility */
|
||||
FULLCHECK("ignore");
|
||||
lookup->ignore = ISC_TRUE;
|
||||
}
|
||||
@@ -928,7 +949,9 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
switch (cmd[1]) {
|
||||
case 'e': /* search */
|
||||
FULLCHECK("search");
|
||||
usesearch = state;
|
||||
if (!lookup->trace) {
|
||||
usesearch = state;
|
||||
}
|
||||
break;
|
||||
case 'h':
|
||||
if (cmd[2] != 'o')
|
||||
@@ -949,8 +972,10 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
break;
|
||||
case 'w': /* showsearch */
|
||||
FULLCHECK("showsearch");
|
||||
showsearch = state;
|
||||
usesearch = state;
|
||||
if (!lookup->trace) {
|
||||
showsearch = state;
|
||||
usesearch = state;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
goto invalid_option;
|
||||
@@ -1009,6 +1034,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
lookup->section_additional = ISC_FALSE;
|
||||
lookup->section_authority = ISC_TRUE;
|
||||
lookup->section_question = ISC_FALSE;
|
||||
usesearch = ISC_FALSE;
|
||||
}
|
||||
break;
|
||||
case 'i': /* tries */
|
||||
|
||||
+17
-14
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: dig.docbook,v 1.17.18.24 2008/10/14 00:54:40 marka Exp $ -->
|
||||
<!-- $Id: dig.docbook,v 1.17.18.27 2009/02/02 04:45:22 marka Exp $ -->
|
||||
<refentry id="man.dig">
|
||||
|
||||
<refentryinfo>
|
||||
@@ -43,6 +43,7 @@
|
||||
<year>2006</year>
|
||||
<year>2007</year>
|
||||
<year>2008</year>
|
||||
<year>2009</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
@@ -449,17 +450,19 @@
|
||||
|
||||
<varlistentry>
|
||||
<term><option>+[no]adflag</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Set [do not set] the AD (authentic data) bit in the query. The
|
||||
AD bit
|
||||
currently has a standard meaning only in responses, not in
|
||||
queries,
|
||||
but the ability to set the bit in the query is provided for
|
||||
completeness.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem>
|
||||
<para>
|
||||
Set [do not set] the AD (authentic data) bit in the
|
||||
query. This requests the server to return whether
|
||||
all of the answer and authority sections have all
|
||||
been validated as secure according to the security
|
||||
policy of the server. AD=1 indicates that all records
|
||||
have been validated as secure and the answer is not
|
||||
from a OPT-OUT range. AD=0 indicate that some part
|
||||
of the answer was insecure or not validated.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>+[no]cdflag</option></term>
|
||||
@@ -816,7 +819,7 @@
|
||||
on its own line.
|
||||
</para>
|
||||
<para>
|
||||
If not specified <command>dig</command> will look for
|
||||
If not specified, <command>dig</command> will look for
|
||||
<filename>/etc/trusted-key.key</filename> then
|
||||
<filename>trusted-key.key</filename> in the current directory.
|
||||
</para>
|
||||
|
||||
+22
-20
@@ -1,8 +1,8 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -14,7 +14,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: dig.html,v 1.13.18.30 2008/10/14 01:30:11 tbox Exp $ -->
|
||||
<!-- $Id: dig.html,v 1.13.18.33 2009/07/11 01:31:44 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -34,7 +34,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">dig</code> [global-queryopt...] [query...]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543515"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543518"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">dig</strong></span>
|
||||
(domain information groper) is a flexible tool
|
||||
for interrogating DNS name servers. It performs DNS lookups and
|
||||
@@ -80,7 +80,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543589"></a><h2>SIMPLE USAGE</h2>
|
||||
<a name="id2543592"></a><h2>SIMPLE USAGE</h2>
|
||||
<p>
|
||||
A typical invocation of <span><strong class="command">dig</strong></span> looks like:
|
||||
</p>
|
||||
@@ -126,7 +126,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543680"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543683"></a><h2>OPTIONS</h2>
|
||||
<p>
|
||||
The <code class="option">-b</code> option sets the source IP address of the query
|
||||
to <em class="parameter"><code>address</code></em>. This must be a valid
|
||||
@@ -230,7 +230,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544028"></a><h2>QUERY OPTIONS</h2>
|
||||
<a name="id2544032"></a><h2>QUERY OPTIONS</h2>
|
||||
<p><span><strong class="command">dig</strong></span>
|
||||
provides a number of query options which affect
|
||||
the way in which lookups are made and the results displayed. Some of
|
||||
@@ -308,13 +308,15 @@
|
||||
</p></dd>
|
||||
<dt><span class="term"><code class="option">+[no]adflag</code></span></dt>
|
||||
<dd><p>
|
||||
Set [do not set] the AD (authentic data) bit in the query. The
|
||||
AD bit
|
||||
currently has a standard meaning only in responses, not in
|
||||
queries,
|
||||
but the ability to set the bit in the query is provided for
|
||||
completeness.
|
||||
</p></dd>
|
||||
Set [do not set] the AD (authentic data) bit in the
|
||||
query. This requests the server to return whether
|
||||
all of the answer and authority sections have all
|
||||
been validated as secure according to the security
|
||||
policy of the server. AD=1 indicates that all records
|
||||
have been validated as secure and the answer is not
|
||||
from a OPT-OUT range. AD=0 indicate that some part
|
||||
of the answer was insecure or not validated.
|
||||
</p></dd>
|
||||
<dt><span class="term"><code class="option">+[no]cdflag</code></span></dt>
|
||||
<dd><p>
|
||||
Set [do not set] the CD (checking disabled) bit in the query.
|
||||
@@ -529,7 +531,7 @@
|
||||
on its own line.
|
||||
</p>
|
||||
<p>
|
||||
If not specified <span><strong class="command">dig</strong></span> will look for
|
||||
If not specified, <span><strong class="command">dig</strong></span> will look for
|
||||
<code class="filename">/etc/trusted-key.key</code> then
|
||||
<code class="filename">trusted-key.key</code> in the current directory.
|
||||
</p>
|
||||
@@ -549,7 +551,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545149"></a><h2>MULTIPLE QUERIES</h2>
|
||||
<a name="id2545153"></a><h2>MULTIPLE QUERIES</h2>
|
||||
<p>
|
||||
The BIND 9 implementation of <span><strong class="command">dig </strong></span>
|
||||
supports
|
||||
@@ -595,7 +597,7 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545211"></a><h2>IDN SUPPORT</h2>
|
||||
<a name="id2545214"></a><h2>IDN SUPPORT</h2>
|
||||
<p>
|
||||
If <span><strong class="command">dig</strong></span> has been built with IDN (internationalized
|
||||
domain name) support, it can accept and display non-ASCII domain names.
|
||||
@@ -609,14 +611,14 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545234"></a><h2>FILES</h2>
|
||||
<a name="id2545237"></a><h2>FILES</h2>
|
||||
<p><code class="filename">/etc/resolv.conf</code>
|
||||
</p>
|
||||
<p><code class="filename">${HOME}/.digrc</code>
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545251"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2545322"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">host</span>(1)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
|
||||
@@ -624,7 +626,7 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545356"></a><h2>BUGS</h2>
|
||||
<a name="id2545360"></a><h2>BUGS</h2>
|
||||
<p>
|
||||
There are probably too many query options.
|
||||
</p>
|
||||
|
||||
+150
-48
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009 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.259.18.49 2008/07/23 23:33:02 marka Exp $ */
|
||||
/* $Id: dighost.c,v 1.259.18.58 2009/06/24 03:44:52 marka Exp $ */
|
||||
|
||||
/*! \file
|
||||
* \note
|
||||
@@ -583,6 +583,11 @@ copy_server_list(lwres_conf_t *confdata, dig_serverlist_t *dest) {
|
||||
for (i = 0; i < confdata->nsnext; i++) {
|
||||
af = addr2af(confdata->nameservers[i].family);
|
||||
|
||||
if (af == AF_INET && !have_ipv4)
|
||||
continue;
|
||||
if (af == AF_INET6 && !have_ipv6)
|
||||
continue;
|
||||
|
||||
lwres_net_ntop(af, confdata->nameservers[i].address,
|
||||
tmp, sizeof(tmp));
|
||||
newsrv = make_server(tmp, tmp);
|
||||
@@ -770,7 +775,7 @@ make_empty_lookup(void) {
|
||||
* the query list, since it will be regenerated by the setup_lookup()
|
||||
* function, nor does it queue up the new lookup for processing.
|
||||
* Caution: If you don't clone the servers, you MUST clone the server
|
||||
* list seperately from somewhere else, or construct it by hand.
|
||||
* list separately from somewhere else, or construct it by hand.
|
||||
*/
|
||||
dig_lookup_t *
|
||||
clone_lookup(dig_lookup_t *lookold, isc_boolean_t servers) {
|
||||
@@ -1004,10 +1009,18 @@ void
|
||||
setup_system(void) {
|
||||
dig_searchlist_t *domain = NULL;
|
||||
lwres_result_t lwresult;
|
||||
unsigned int lwresflags;
|
||||
|
||||
debug("setup_system()");
|
||||
|
||||
lwresult = lwres_context_create(&lwctx, mctx, mem_alloc, mem_free, 1);
|
||||
lwresflags = LWRES_CONTEXT_SERVERMODE;
|
||||
if (have_ipv4)
|
||||
lwresflags |= LWRES_CONTEXT_USEIPV4;
|
||||
if (have_ipv6)
|
||||
lwresflags |= LWRES_CONTEXT_USEIPV6;
|
||||
|
||||
lwresult = lwres_context_create(&lwctx, mctx, mem_alloc, mem_free,
|
||||
lwresflags);
|
||||
if (lwresult != LWRES_R_SUCCESS)
|
||||
fatal("lwres_context_create failed");
|
||||
|
||||
@@ -1033,8 +1046,12 @@ setup_system(void) {
|
||||
debug("ndots is %d.", ndots);
|
||||
}
|
||||
|
||||
/* If user doesn't specify server use nameservers from resolv.conf. */
|
||||
if (ISC_LIST_EMPTY(server_list))
|
||||
copy_server_list(lwconf, &server_list);
|
||||
|
||||
/* If we don't find a nameserver fall back to localhost */
|
||||
if (lwconf->nsnext == 0) {
|
||||
if (ISC_LIST_EMPTY(server_list)) {
|
||||
if (have_ipv4) {
|
||||
lwresult = add_nameserver(lwconf, "127.0.0.1", AF_INET);
|
||||
if (lwresult != ISC_R_SUCCESS)
|
||||
@@ -1045,10 +1062,9 @@ setup_system(void) {
|
||||
if (lwresult != ISC_R_SUCCESS)
|
||||
fatal("add_nameserver failed");
|
||||
}
|
||||
}
|
||||
|
||||
if (ISC_LIST_EMPTY(server_list))
|
||||
copy_server_list(lwconf, &server_list);
|
||||
}
|
||||
|
||||
#ifdef WITH_IDN
|
||||
initialize_idn();
|
||||
@@ -1387,7 +1403,7 @@ start_lookup(void) {
|
||||
key_name) == ISC_TRUE)
|
||||
trustedkey = tk_list.key[i];
|
||||
/*
|
||||
* Verifier que la temp est bien la plus basse
|
||||
* Verify temp is really the lowest
|
||||
* WARNING
|
||||
*/
|
||||
}
|
||||
@@ -2174,6 +2190,21 @@ bringup_timer(dig_query_t *query, unsigned int default_timeout) {
|
||||
check_result(result, "isc_timer_create");
|
||||
}
|
||||
|
||||
static void
|
||||
force_timeout(dig_lookup_t *l, dig_query_t *query) {
|
||||
isc_event_t *event;
|
||||
|
||||
event = isc_event_allocate(mctx, query, ISC_TIMEREVENT_IDLE,
|
||||
connect_timeout, l,
|
||||
sizeof(isc_event_t));
|
||||
if (event == NULL) {
|
||||
fatal("isc_event_allocate: %s",
|
||||
isc_result_totext(ISC_R_NOMEMORY));
|
||||
}
|
||||
isc_task_send(global_task, &event);
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
connect_done(isc_task_t *task, isc_event_t *event);
|
||||
|
||||
@@ -2193,7 +2224,16 @@ send_tcp_connect(dig_query_t *query) {
|
||||
l = query->lookup;
|
||||
query->waiting_connect = ISC_TRUE;
|
||||
query->lookup->current_query = query;
|
||||
get_address(query->servname, port, &query->sockaddr);
|
||||
result = get_address(query->servname, port, &query->sockaddr);
|
||||
if (result == ISC_R_NOTFOUND) {
|
||||
/*
|
||||
* This servname doesn't have an address. Try the next server
|
||||
* by triggering an immediate 'timeout' (we lie, but the effect
|
||||
* is the same).
|
||||
*/
|
||||
force_timeout(l, query);
|
||||
return;
|
||||
}
|
||||
|
||||
if (specified_source &&
|
||||
(isc_sockaddr_pf(&query->sockaddr) !=
|
||||
@@ -2266,7 +2306,12 @@ send_udp(dig_query_t *query) {
|
||||
if (!query->recv_made) {
|
||||
/* XXX Check the sense of this, need assertion? */
|
||||
query->waiting_connect = ISC_FALSE;
|
||||
get_address(query->servname, port, &query->sockaddr);
|
||||
result = get_address(query->servname, port, &query->sockaddr);
|
||||
if (result == ISC_R_NOTFOUND) {
|
||||
/* This servname doesn't have an address. */
|
||||
force_timeout(l, query);
|
||||
return;
|
||||
}
|
||||
|
||||
result = isc_socket_create(socketmgr,
|
||||
isc_sockaddr_pf(&query->sockaddr),
|
||||
@@ -2337,8 +2382,14 @@ connect_timeout(isc_task_t *task, isc_event_t *event) {
|
||||
cq = query->lookup->current_query;
|
||||
if (!l->tcp_mode)
|
||||
send_udp(ISC_LIST_NEXT(cq, link));
|
||||
else
|
||||
else {
|
||||
isc_socket_cancel(query->sock, NULL,
|
||||
ISC_SOCKCANCEL_ALL);
|
||||
isc_socket_detach(&query->sock);
|
||||
sockcount--;
|
||||
debug("sockcount=%d", sockcount);
|
||||
send_tcp_connect(ISC_LIST_NEXT(cq, link));
|
||||
}
|
||||
UNLOCK_LOOKUP;
|
||||
return;
|
||||
}
|
||||
@@ -2892,18 +2943,8 @@ recv_done(isc_task_t *task, isc_event_t *event) {
|
||||
if (result == ISC_R_SUCCESS && (msgflags & DNS_MESSAGEFLAG_QR) == 0)
|
||||
printf(";; Warning: query response not set\n");
|
||||
|
||||
if (!match) {
|
||||
isc_buffer_invalidate(&query->recvbuf);
|
||||
isc_buffer_init(&query->recvbuf, query->recvspace, COMMSIZE);
|
||||
ISC_LIST_ENQUEUE(query->recvlist, &query->recvbuf, link);
|
||||
result = isc_socket_recvv(query->sock, &query->recvlist, 1,
|
||||
global_task, recv_done, query);
|
||||
check_result(result, "isc_socket_recvv");
|
||||
recvcount++;
|
||||
isc_event_free(&event);
|
||||
UNLOCK_LOOKUP;
|
||||
return;
|
||||
}
|
||||
if (!match)
|
||||
goto udp_mismatch;
|
||||
|
||||
result = dns_message_create(mctx, DNS_MESSAGE_INTENTPARSE, &msg);
|
||||
check_result(result, "dns_message_create");
|
||||
@@ -2958,6 +2999,52 @@ recv_done(isc_task_t *task, isc_event_t *event) {
|
||||
UNLOCK_LOOKUP;
|
||||
return;
|
||||
}
|
||||
if (msg->counts[DNS_SECTION_QUESTION] != 0) {
|
||||
match = ISC_TRUE;
|
||||
for (result = dns_message_firstname(msg, DNS_SECTION_QUESTION);
|
||||
result == ISC_R_SUCCESS && match;
|
||||
result = dns_message_nextname(msg, DNS_SECTION_QUESTION)) {
|
||||
dns_name_t *name = NULL;
|
||||
dns_rdataset_t *rdataset;
|
||||
|
||||
dns_message_currentname(msg, DNS_SECTION_QUESTION,
|
||||
&name);
|
||||
for (rdataset = ISC_LIST_HEAD(name->list);
|
||||
rdataset != NULL;
|
||||
rdataset = ISC_LIST_NEXT(rdataset, link)) {
|
||||
if (l->rdtype != rdataset->type ||
|
||||
l->rdclass != rdataset->rdclass ||
|
||||
!dns_name_equal(l->name, name)) {
|
||||
char namestr[DNS_NAME_FORMATSIZE];
|
||||
char typebuf[DNS_RDATATYPE_FORMATSIZE];
|
||||
char classbuf[DNS_RDATACLASS_FORMATSIZE];
|
||||
dns_name_format(name, namestr,
|
||||
sizeof(namestr));
|
||||
dns_rdatatype_format(rdataset->type,
|
||||
typebuf,
|
||||
sizeof(typebuf));
|
||||
dns_rdataclass_format(rdataset->rdclass,
|
||||
classbuf,
|
||||
sizeof(classbuf));
|
||||
printf(";; Question section mismatch: "
|
||||
"got %s/%s/%s\n",
|
||||
namestr, typebuf, classbuf);
|
||||
match = ISC_FALSE;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!match) {
|
||||
dns_message_destroy(&msg);
|
||||
if (l->tcp_mode) {
|
||||
isc_event_free(&event);
|
||||
clear_query(query);
|
||||
check_next_lookup(l);
|
||||
UNLOCK_LOOKUP;
|
||||
return;
|
||||
} else
|
||||
goto udp_mismatch;
|
||||
}
|
||||
}
|
||||
if ((msg->flags & DNS_MESSAGEFLAG_TC) != 0 &&
|
||||
!l->ignore && !l->tcp_mode) {
|
||||
printf(";; Truncated, retrying in TCP mode.\n");
|
||||
@@ -3212,6 +3299,19 @@ recv_done(isc_task_t *task, isc_event_t *event) {
|
||||
}
|
||||
isc_event_free(&event);
|
||||
UNLOCK_LOOKUP;
|
||||
return;
|
||||
|
||||
udp_mismatch:
|
||||
isc_buffer_invalidate(&query->recvbuf);
|
||||
isc_buffer_init(&query->recvbuf, query->recvspace, COMMSIZE);
|
||||
ISC_LIST_ENQUEUE(query->recvlist, &query->recvbuf, link);
|
||||
result = isc_socket_recvv(query->sock, &query->recvlist, 1,
|
||||
global_task, recv_done, query);
|
||||
check_result(result, "isc_socket_recvv");
|
||||
recvcount++;
|
||||
isc_event_free(&event);
|
||||
UNLOCK_LOOKUP;
|
||||
return;
|
||||
}
|
||||
|
||||
/*%
|
||||
@@ -3219,7 +3319,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
|
||||
* used in looking up server names, etc... and needs to use system-supplied
|
||||
* routines, since they may be using a non-DNS system for these lookups.
|
||||
*/
|
||||
void
|
||||
isc_result_t
|
||||
get_address(char *host, in_port_t port, isc_sockaddr_t *sockaddr) {
|
||||
int count;
|
||||
isc_result_t result;
|
||||
@@ -3228,9 +3328,11 @@ get_address(char *host, in_port_t port, isc_sockaddr_t *sockaddr) {
|
||||
result = bind9_getaddresses(host, port, sockaddr, 1, &count);
|
||||
isc_app_unblock();
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("couldn't get address for '%s': %s",
|
||||
host, isc_result_totext(result));
|
||||
return (result);
|
||||
|
||||
INSIST(count == 1);
|
||||
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
/*%
|
||||
@@ -3284,7 +3386,7 @@ cancel_all(void) {
|
||||
isc_timer_detach(¤t_lookup->timer);
|
||||
q = ISC_LIST_HEAD(current_lookup->q);
|
||||
while (q != NULL) {
|
||||
debug("cancelling query %p, belonging to %p",
|
||||
debug("canceling query %p, belonging to %p",
|
||||
q, current_lookup);
|
||||
nq = ISC_LIST_NEXT(q, link);
|
||||
if (q->sock != NULL) {
|
||||
@@ -3600,7 +3702,7 @@ dns_rdataset_t *
|
||||
search_type(dns_name_t *name, dns_rdatatype_t type, dns_rdatatype_t covers) {
|
||||
dns_rdataset_t *rdataset;
|
||||
dns_rdata_sig_t siginfo;
|
||||
dns_rdata_t sigrdata;
|
||||
dns_rdata_t sigrdata = DNS_RDATA_INIT;
|
||||
isc_result_t result;
|
||||
|
||||
for (rdataset = ISC_LIST_HEAD(name->list); rdataset != NULL;
|
||||
@@ -3610,7 +3712,6 @@ search_type(dns_name_t *name, dns_rdatatype_t type, dns_rdatatype_t covers) {
|
||||
return (rdataset);
|
||||
} else if ((type == dns_rdatatype_rrsig) &&
|
||||
(rdataset->type == dns_rdatatype_rrsig)) {
|
||||
dns_rdata_init(&sigrdata);
|
||||
result = dns_rdataset_first(rdataset);
|
||||
check_result(result, "empty rdataset");
|
||||
dns_rdataset_current(rdataset, &sigrdata);
|
||||
@@ -4133,7 +4234,7 @@ isc_result_t
|
||||
grandfather_pb_test(dns_name_t *zone_name, dns_rdataset_t *sigrdataset)
|
||||
{
|
||||
isc_result_t result;
|
||||
dns_rdata_t sigrdata;
|
||||
dns_rdata_t sigrdata = DNS_RDATA_INIT;
|
||||
dns_rdata_sig_t siginfo;
|
||||
|
||||
result = dns_rdataset_first(sigrdataset);
|
||||
@@ -4153,6 +4254,7 @@ grandfather_pb_test(dns_name_t *zone_name, dns_rdataset_t *sigrdataset)
|
||||
}
|
||||
|
||||
dns_rdata_freestruct(&siginfo);
|
||||
dns_rdata_reset(&sigrdata);
|
||||
|
||||
} while (dns_rdataset_next(chase_sigkeyrdataset) == ISC_R_SUCCESS);
|
||||
|
||||
@@ -4239,7 +4341,7 @@ contains_trusted_key(dns_name_t *name, dns_rdataset_t *rdataset,
|
||||
isc_mem_t *mctx)
|
||||
{
|
||||
isc_result_t result;
|
||||
dns_rdata_t rdata;
|
||||
dns_rdata_t rdata = DNS_RDATA_INIT;
|
||||
dst_key_t *trustedKey = NULL;
|
||||
dst_key_t *dnsseckey = NULL;
|
||||
int i;
|
||||
@@ -4249,7 +4351,6 @@ contains_trusted_key(dns_name_t *name, dns_rdataset_t *rdataset,
|
||||
|
||||
result = dns_rdataset_first(rdataset);
|
||||
check_result(result, "empty rdataset");
|
||||
dns_rdata_init(&rdata);
|
||||
|
||||
do {
|
||||
dns_rdataset_current(rdataset, &rdata);
|
||||
@@ -4299,7 +4400,7 @@ sigchase_verify_sig(dns_name_t *name, dns_rdataset_t *rdataset,
|
||||
isc_mem_t *mctx)
|
||||
{
|
||||
isc_result_t result;
|
||||
dns_rdata_t keyrdata;
|
||||
dns_rdata_t keyrdata = DNS_RDATA_INIT;
|
||||
dst_key_t *dnsseckey = NULL;
|
||||
|
||||
result = dns_rdataset_first(keyrdataset);
|
||||
@@ -4322,6 +4423,7 @@ sigchase_verify_sig(dns_name_t *name, dns_rdataset_t *rdataset,
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
dst_key_free(&dnsseckey);
|
||||
dns_rdata_reset(&keyrdata);
|
||||
} while (dns_rdataset_next(chase_keyrdataset) == ISC_R_SUCCESS);
|
||||
|
||||
dns_rdata_reset(&keyrdata);
|
||||
@@ -4335,7 +4437,7 @@ sigchase_verify_sig_key(dns_name_t *name, dns_rdataset_t *rdataset,
|
||||
isc_mem_t *mctx)
|
||||
{
|
||||
isc_result_t result;
|
||||
dns_rdata_t sigrdata;
|
||||
dns_rdata_t sigrdata = DNS_RDATA_INIT;
|
||||
dns_rdata_sig_t siginfo;
|
||||
|
||||
result = dns_rdataset_first(sigrdataset);
|
||||
@@ -4373,6 +4475,7 @@ sigchase_verify_sig_key(dns_name_t *name, dns_rdataset_t *rdataset,
|
||||
}
|
||||
}
|
||||
dns_rdata_freestruct(&siginfo);
|
||||
dns_rdata_reset(&sigrdata);
|
||||
|
||||
} while (dns_rdataset_next(chase_sigkeyrdataset) == ISC_R_SUCCESS);
|
||||
|
||||
@@ -4387,25 +4490,23 @@ sigchase_verify_ds(dns_name_t *name, dns_rdataset_t *keyrdataset,
|
||||
dns_rdataset_t *dsrdataset, isc_mem_t *mctx)
|
||||
{
|
||||
isc_result_t result;
|
||||
dns_rdata_t keyrdata;
|
||||
dns_rdata_t newdsrdata;
|
||||
dns_rdata_t dsrdata;
|
||||
dns_rdata_t keyrdata = DNS_RDATA_INIT;
|
||||
dns_rdata_t newdsrdata = DNS_RDATA_INIT;
|
||||
dns_rdata_t dsrdata = DNS_RDATA_INIT;
|
||||
dns_rdata_ds_t dsinfo;
|
||||
dst_key_t *dnsseckey = NULL;
|
||||
unsigned char dsbuf[DNS_DS_BUFFERSIZE];
|
||||
|
||||
result = dns_rdataset_first(dsrdataset);
|
||||
check_result(result, "empty DSset dataset");
|
||||
dns_rdata_init(&dsrdata);
|
||||
do {
|
||||
dns_rdataset_current(dsrdataset, &dsrdata);
|
||||
|
||||
result = dns_rdata_tostruct(&dsrdata, &dsinfo, NULL);
|
||||
check_result(result, "dns_rdata_tostruct for DS");
|
||||
check_result(result, "dns_rdata_tostruct for DS");
|
||||
|
||||
result = dns_rdataset_first(keyrdataset);
|
||||
check_result(result, "empty KEY dataset");
|
||||
dns_rdata_init(&keyrdata);
|
||||
|
||||
do {
|
||||
dns_rdataset_current(keyrdataset, &keyrdata);
|
||||
@@ -4420,7 +4521,6 @@ sigchase_verify_ds(dns_name_t *name, dns_rdataset_t *keyrdataset,
|
||||
* id of DNSKEY referenced by the DS
|
||||
*/
|
||||
if (dsinfo.key_tag == dst_key_id(dnsseckey)) {
|
||||
dns_rdata_init(&newdsrdata);
|
||||
|
||||
result = dns_ds_buildrdata(name, &keyrdata,
|
||||
dsinfo.digest_type,
|
||||
@@ -4468,14 +4568,16 @@ sigchase_verify_ds(dns_name_t *name, dns_rdataset_t *keyrdataset,
|
||||
dns_rdata_reset(&newdsrdata);
|
||||
}
|
||||
dst_key_free(&dnsseckey);
|
||||
dns_rdata_reset(&keyrdata);
|
||||
dnsseckey = NULL;
|
||||
} while (dns_rdataset_next(chase_keyrdataset) == ISC_R_SUCCESS);
|
||||
dns_rdata_reset(&keyrdata);
|
||||
dns_rdata_reset(&dsrdata);
|
||||
|
||||
} while (dns_rdataset_next(chase_dsrdataset) == ISC_R_SUCCESS);
|
||||
#if 0
|
||||
dns_rdata_reset(&dsrdata); WARNING
|
||||
#endif
|
||||
|
||||
dns_rdata_reset(&keyrdata);
|
||||
dns_rdata_reset(&newdsrdata);
|
||||
dns_rdata_reset(&dsrdata);
|
||||
|
||||
return (ISC_R_NOTFOUND);
|
||||
}
|
||||
@@ -4868,7 +4970,7 @@ getneededrr(dns_message_t *msg)
|
||||
{
|
||||
isc_result_t result;
|
||||
dns_name_t *name = NULL;
|
||||
dns_rdata_t sigrdata;
|
||||
dns_rdata_t sigrdata = DNS_RDATA_INIT;
|
||||
dns_rdata_sig_t siginfo;
|
||||
isc_boolean_t true = ISC_TRUE;
|
||||
|
||||
@@ -4922,7 +5024,6 @@ getneededrr(dns_message_t *msg)
|
||||
/* first find the DNSKEY name */
|
||||
result = dns_rdataset_first(chase_sigrdataset);
|
||||
check_result(result, "empty RRSIG dataset");
|
||||
dns_rdata_init(&sigrdata);
|
||||
dns_rdataset_current(chase_sigrdataset, &sigrdata);
|
||||
result = dns_rdata_tostruct(&sigrdata, &siginfo, NULL);
|
||||
check_result(result, "sigrdata tostruct siginfo");
|
||||
@@ -5300,6 +5401,7 @@ prove_nx_domain(dns_message_t *msg,
|
||||
}
|
||||
|
||||
dns_rdata_freestruct(&nsecstruct);
|
||||
dns_rdata_reset(&nsec);
|
||||
}
|
||||
} while (dns_message_nextname(msg, DNS_SECTION_AUTHORITY)
|
||||
== ISC_R_SUCCESS);
|
||||
@@ -5367,7 +5469,7 @@ prove_nx(dns_message_t *msg, dns_name_t *name, dns_rdataclass_t class,
|
||||
isc_result_t ret;
|
||||
dns_rdataset_t *nsecset = NULL;
|
||||
|
||||
printf("We want to prove the non-existance of a type of rdata %d"
|
||||
printf("We want to prove the non-existence of a type of rdata %d"
|
||||
" or of the zone: \n", type);
|
||||
|
||||
if ((ret = dns_message_firstname(msg, DNS_SECTION_AUTHORITY))
|
||||
|
||||
+6
-6
@@ -1,7 +1,7 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004, 2005, 2007-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -13,7 +13,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: host.1,v 1.14.18.16 2008/04/06 01:31:04 tbox Exp $
|
||||
.\" $Id: host.1,v 1.14.18.18 2009/07/11 01:31:44 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -132,7 +132,7 @@ option enables
|
||||
\fBhost\fR
|
||||
to mimic the behavior of a name server by making non\-recursive queries and expecting to receive answers to those queries that are usually referrals to other name servers.
|
||||
.PP
|
||||
By default
|
||||
By default,
|
||||
\fBhost\fR
|
||||
uses UDP when making queries. The
|
||||
\fB\-T\fR
|
||||
@@ -154,7 +154,7 @@ option is used to select the query type.
|
||||
\fItype\fR
|
||||
can be any recognized query type: CNAME, NS, SOA, SIG, KEY, AXFR, etc. When no query type is specified,
|
||||
\fBhost\fR
|
||||
automatically selects an appropriate query type. By default it looks for A, AAAA, and MX records, but if the
|
||||
automatically selects an appropriate query type. By default, it looks for A, AAAA, and MX records, but if the
|
||||
\fB\-C\fR
|
||||
option was given, queries will be made for SOA records, and if
|
||||
\fIname\fR
|
||||
@@ -213,7 +213,7 @@ runs.
|
||||
\fBdig\fR(1),
|
||||
\fBnamed\fR(8).
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004, 2005, 2007, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2004, 2005, 2007\-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000\-2002 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
+28
-12
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2009 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.94.18.19 2007/08/28 07:19:55 tbox Exp $ */
|
||||
/* $Id: host.c,v 1.94.18.22 2009/09/08 23:29:03 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -124,6 +124,23 @@ struct rtype rtypes[] = {
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
static char *
|
||||
rcode_totext(dns_rcode_t rcode)
|
||||
{
|
||||
static char buf[sizeof("?65535")];
|
||||
union {
|
||||
const char *consttext;
|
||||
char *deconsttext;
|
||||
} totext;
|
||||
|
||||
if (rcode >= (sizeof(rcodetext)/sizeof(rcodetext[0]))) {
|
||||
snprintf(buf, sizeof(buf), "?%u", rcode);
|
||||
totext.deconsttext = buf;
|
||||
} else
|
||||
totext.consttext = rcodetext[rcode];
|
||||
return totext.deconsttext;
|
||||
}
|
||||
|
||||
static void
|
||||
show_usage(void) {
|
||||
fputs(
|
||||
@@ -270,10 +287,10 @@ printsection(dns_message_t *msg, dns_section_t sectionid,
|
||||
if (query->lookup->rdtype == dns_rdatatype_axfr &&
|
||||
!((!list_addresses &&
|
||||
(list_type == dns_rdatatype_any ||
|
||||
rdataset->type == list_type)) ||
|
||||
rdataset->type == list_type)) ||
|
||||
(list_addresses &&
|
||||
(rdataset->type == dns_rdatatype_a ||
|
||||
rdataset->type == dns_rdatatype_aaaa ||
|
||||
rdataset->type == dns_rdatatype_aaaa ||
|
||||
rdataset->type == dns_rdatatype_ns ||
|
||||
rdataset->type == dns_rdatatype_ptr))))
|
||||
continue;
|
||||
@@ -377,7 +394,7 @@ chase_cnamechain(dns_message_t *msg, dns_name_t *qname) {
|
||||
dns_rdata_t rdata = DNS_RDATA_INIT;
|
||||
unsigned int i = msg->counts[DNS_SECTION_ANSWER];
|
||||
|
||||
while (i-- > 0) {
|
||||
while (i-- > 0) {
|
||||
rdataset = NULL;
|
||||
result = dns_message_findname(msg, DNS_SECTION_ANSWER, qname,
|
||||
dns_rdatatype_cname, 0, NULL,
|
||||
@@ -429,7 +446,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
printf("Host %s not found: %d(%s)\n",
|
||||
(msg->rcode != dns_rcode_nxdomain) ? namestr :
|
||||
query->lookup->textname, msg->rcode,
|
||||
rcodetext[msg->rcode]);
|
||||
rcode_totext(msg->rcode));
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
@@ -451,7 +468,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
sizeof(lookup->textname));
|
||||
lookup->textname[sizeof(lookup->textname)-1] = 0;
|
||||
lookup->rdtype = dns_rdatatype_aaaa;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->origin = NULL;
|
||||
lookup->retries = tries;
|
||||
ISC_LIST_APPEND(lookup_list, lookup, link);
|
||||
@@ -462,7 +479,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
sizeof(lookup->textname));
|
||||
lookup->textname[sizeof(lookup->textname)-1] = 0;
|
||||
lookup->rdtype = dns_rdatatype_mx;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->origin = NULL;
|
||||
lookup->retries = tries;
|
||||
ISC_LIST_APPEND(lookup_list, lookup, link);
|
||||
@@ -471,7 +488,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
|
||||
if (!short_form) {
|
||||
printf(";; ->>HEADER<<- opcode: %s, status: %s, id: %u\n",
|
||||
opcodetext[msg->opcode], rcodetext[msg->rcode],
|
||||
opcodetext[msg->opcode], rcode_totext(msg->rcode),
|
||||
msg->id);
|
||||
printf(";; flags: ");
|
||||
if ((msg->flags & DNS_MESSAGEFLAG_QR) != 0) {
|
||||
@@ -821,11 +838,10 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
|
||||
} else {
|
||||
strncpy(lookup->textname, hostname, sizeof(lookup->textname));
|
||||
lookup->textname[sizeof(lookup->textname)-1]=0;
|
||||
usesearch = ISC_TRUE;
|
||||
}
|
||||
lookup->new_search = ISC_TRUE;
|
||||
ISC_LIST_APPEND(lookup_list, lookup, link);
|
||||
|
||||
usesearch = ISC_TRUE;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -837,7 +853,7 @@ main(int argc, char **argv) {
|
||||
ISC_LIST_INIT(lookup_list);
|
||||
ISC_LIST_INIT(server_list);
|
||||
ISC_LIST_INIT(search_list);
|
||||
|
||||
|
||||
fatalexit = 1;
|
||||
#ifdef WITH_IDN
|
||||
idnoptions = IDN_ASCCHECK;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005, 2007-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: host.docbook,v 1.5.18.13 2008/04/05 23:46:04 tbox Exp $ -->
|
||||
<!-- $Id: host.docbook,v 1.5.18.15 2009/01/22 23:46:00 tbox Exp $ -->
|
||||
<refentry id="man.host">
|
||||
|
||||
<refentryinfo>
|
||||
@@ -42,6 +42,7 @@
|
||||
<year>2005</year>
|
||||
<year>2007</year>
|
||||
<year>2008</year>
|
||||
<year>2009</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
@@ -180,7 +181,7 @@
|
||||
</para>
|
||||
|
||||
<para>
|
||||
By default <command>host</command> uses UDP when making
|
||||
By default, <command>host</command> uses UDP when making
|
||||
queries. The
|
||||
<option>-T</option> option makes it use a TCP connection when querying
|
||||
the name server. TCP will be automatically selected for queries that
|
||||
@@ -200,7 +201,7 @@
|
||||
NS, SOA, SIG, KEY, AXFR, etc. When no query type is specified,
|
||||
<command>host</command> automatically selects an appropriate
|
||||
query
|
||||
type. By default it looks for A, AAAA, and MX records, but if the
|
||||
type. By default, it looks for A, AAAA, and MX records, but if the
|
||||
<option>-C</option> option was given, queries will be made for SOA
|
||||
records, and if <parameter>name</parameter> is a
|
||||
dotted-decimal IPv4
|
||||
|
||||
+9
-9
@@ -1,8 +1,8 @@
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005, 2007-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -14,7 +14,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: host.html,v 1.7.18.22 2008/04/06 01:31:04 tbox Exp $ -->
|
||||
<!-- $Id: host.html,v 1.7.18.24 2009/07/11 01:31:44 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -32,7 +32,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">host</code> [<code class="option">-aCdlnrsTwv</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-N <em class="replaceable"><code>ndots</code></em></code>] [<code class="option">-R <em class="replaceable"><code>number</code></em></code>] [<code class="option">-t <em class="replaceable"><code>type</code></em></code>] [<code class="option">-W <em class="replaceable"><code>wait</code></em></code>] [<code class="option">-m <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-4</code>] [<code class="option">-6</code>] {name} [server]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543431"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543434"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">host</strong></span>
|
||||
is a simple utility for performing DNS lookups.
|
||||
It is normally used to convert names to IP addresses and vice versa.
|
||||
@@ -130,7 +130,7 @@
|
||||
referrals to other name servers.
|
||||
</p>
|
||||
<p>
|
||||
By default <span><strong class="command">host</strong></span> uses UDP when making
|
||||
By default, <span><strong class="command">host</strong></span> uses UDP when making
|
||||
queries. The
|
||||
<code class="option">-T</code> option makes it use a TCP connection when querying
|
||||
the name server. TCP will be automatically selected for queries that
|
||||
@@ -148,7 +148,7 @@
|
||||
NS, SOA, SIG, KEY, AXFR, etc. When no query type is specified,
|
||||
<span><strong class="command">host</strong></span> automatically selects an appropriate
|
||||
query
|
||||
type. By default it looks for A, AAAA, and MX records, but if the
|
||||
type. By default, it looks for A, AAAA, and MX records, but if the
|
||||
<code class="option">-C</code> option was given, queries will be made for SOA
|
||||
records, and if <em class="parameter"><code>name</code></em> is a
|
||||
dotted-decimal IPv4
|
||||
@@ -184,7 +184,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543797"></a><h2>IDN SUPPORT</h2>
|
||||
<a name="id2543800"></a><h2>IDN SUPPORT</h2>
|
||||
<p>
|
||||
If <span><strong class="command">host</strong></span> has been built with IDN (internationalized
|
||||
domain name) support, it can accept and display non-ASCII domain names.
|
||||
@@ -198,12 +198,12 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543819"></a><h2>FILES</h2>
|
||||
<a name="id2543822"></a><h2>FILES</h2>
|
||||
<p><code class="filename">/etc/resolv.conf</code>
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543831"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2543834"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">dig</span>(1)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>.
|
||||
</p>
|
||||
|
||||
+15
-15
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2008 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.82.18.23 2007/08/28 07:19:55 tbox Exp $ */
|
||||
/* $Id: dig.h,v 1.82.18.25 2008/12/16 23:46:02 tbox Exp $ */
|
||||
|
||||
#ifndef DIG_H
|
||||
#define DIG_H
|
||||
@@ -102,7 +102,7 @@ typedef struct dig_searchlist dig_searchlist_t;
|
||||
/*% The dig_lookup structure */
|
||||
struct dig_lookup {
|
||||
isc_boolean_t
|
||||
pending, /*%< Pending a successful answer */
|
||||
pending, /*%< Pending a successful answer */
|
||||
waiting_connect,
|
||||
doing_xfr,
|
||||
ns_search_only, /*%< dig +nssearch, host -C */
|
||||
@@ -133,23 +133,23 @@ struct dig_lookup {
|
||||
#ifdef DIG_SIGCHASE
|
||||
isc_boolean_t sigchase;
|
||||
#if DIG_SIGCHASE_TD
|
||||
isc_boolean_t do_topdown,
|
||||
trace_root_sigchase,
|
||||
rdtype_sigchaseset,
|
||||
rdclass_sigchaseset;
|
||||
isc_boolean_t do_topdown,
|
||||
trace_root_sigchase,
|
||||
rdtype_sigchaseset,
|
||||
rdclass_sigchaseset;
|
||||
/* Name we are going to validate RRset */
|
||||
char textnamesigchase[MXNAME];
|
||||
char textnamesigchase[MXNAME];
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
char textname[MXNAME]; /*% Name we're going to be looking up */
|
||||
char cmdline[MXNAME];
|
||||
dns_rdatatype_t rdtype;
|
||||
dns_rdatatype_t qrdtype;
|
||||
#if DIG_SIGCHASE_TD
|
||||
dns_rdatatype_t rdtype_sigchase;
|
||||
dns_rdatatype_t qrdtype_sigchase;
|
||||
dns_rdataclass_t rdclass_sigchase;
|
||||
dns_rdatatype_t rdtype_sigchase;
|
||||
dns_rdatatype_t qrdtype_sigchase;
|
||||
dns_rdataclass_t rdclass_sigchase;
|
||||
#endif
|
||||
dns_rdataclass_t rdclass;
|
||||
isc_boolean_t rdtypeset;
|
||||
@@ -231,7 +231,7 @@ struct dig_searchlist {
|
||||
};
|
||||
#ifdef DIG_SIGCHASE
|
||||
struct dig_message {
|
||||
dns_message_t *msg;
|
||||
dns_message_t *msg;
|
||||
ISC_LINK(dig_message_t) link;
|
||||
};
|
||||
#endif
|
||||
@@ -249,7 +249,7 @@ extern dig_searchlistlist_t search_list;
|
||||
extern unsigned int extrabytes;
|
||||
|
||||
extern isc_boolean_t check_ra, have_ipv4, have_ipv6, specified_source,
|
||||
usesearch, showsearch, qr;
|
||||
usesearch, showsearch, qr;
|
||||
extern in_port_t port;
|
||||
extern unsigned int timeout;
|
||||
extern isc_mem_t *mctx;
|
||||
@@ -284,7 +284,7 @@ extern int idnoptions;
|
||||
/*
|
||||
* Routines in dighost.c.
|
||||
*/
|
||||
void
|
||||
isc_result_t
|
||||
get_address(char *host, in_port_t port, isc_sockaddr_t *sockaddr);
|
||||
|
||||
isc_result_t
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
.\" Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -12,7 +12,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: nslookup.1,v 1.1.10.14 2007/05/16 06:11:27 marka Exp $
|
||||
.\" $Id: nslookup.1,v 1.1.10.15 2009/07/11 01:31:44 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
+34
-13
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009 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.101.18.15 2007/08/28 07:19:55 tbox Exp $ */
|
||||
/* $Id: nslookup.c,v 1.101.18.20 2009/05/06 23:45:59 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
#include <isc/commandline.h>
|
||||
#include <isc/event.h>
|
||||
#include <isc/parseint.h>
|
||||
#include <isc/print.h>
|
||||
#include <isc/string.h>
|
||||
#include <isc/timer.h>
|
||||
#include <isc/util.h>
|
||||
@@ -129,6 +130,23 @@ static const char *rtypetext[] = {
|
||||
static void flush_lookup_list(void);
|
||||
static void getinput(isc_task_t *task, isc_event_t *event);
|
||||
|
||||
static char *
|
||||
rcode_totext(dns_rcode_t rcode)
|
||||
{
|
||||
static char buf[sizeof("?65535")];
|
||||
union {
|
||||
const char *consttext;
|
||||
char *deconsttext;
|
||||
} totext;
|
||||
|
||||
if (rcode >= (sizeof(rcodetext)/sizeof(rcodetext[0]))) {
|
||||
snprintf(buf, sizeof(buf), "?%u", rcode);
|
||||
totext.deconsttext = buf;
|
||||
} else
|
||||
totext.consttext = rcodetext[rcode];
|
||||
return totext.deconsttext;
|
||||
}
|
||||
|
||||
void
|
||||
dighost_shutdown(void) {
|
||||
isc_event_t *event = global_event;
|
||||
@@ -385,14 +403,14 @@ trying(char *frm, dig_lookup_t *lookup) {
|
||||
|
||||
isc_result_t
|
||||
printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
char servtext[ISC_SOCKADDR_FORMATSIZE];
|
||||
char servtext[ISC_SOCKADDR_FORMATSIZE];
|
||||
|
||||
debug("printmessage()");
|
||||
|
||||
isc_sockaddr_format(&query->sockaddr, servtext, sizeof(servtext));
|
||||
printf("Server:\t\t%s\n", query->userarg);
|
||||
printf("Address:\t%s\n", servtext);
|
||||
|
||||
|
||||
puts("");
|
||||
|
||||
if (!short_form) {
|
||||
@@ -412,7 +430,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
nametext, sizeof(nametext));
|
||||
printf("** server can't find %s: %s\n",
|
||||
(msg->rcode != dns_rcode_nxdomain) ? nametext :
|
||||
query->lookup->textname, rcodetext[msg->rcode]);
|
||||
query->lookup->textname, rcode_totext(msg->rcode));
|
||||
debug("returning with rcode == 0");
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
@@ -441,13 +459,16 @@ show_settings(isc_boolean_t full, isc_boolean_t serv_only) {
|
||||
dig_server_t *srv;
|
||||
isc_sockaddr_t sockaddr;
|
||||
dig_searchlist_t *listent;
|
||||
isc_result_t result;
|
||||
|
||||
srv = ISC_LIST_HEAD(server_list);
|
||||
|
||||
while (srv != NULL) {
|
||||
char sockstr[ISC_SOCKADDR_FORMATSIZE];
|
||||
|
||||
get_address(srv->servername, port, &sockaddr);
|
||||
result = get_address(srv->servername, port, &sockaddr);
|
||||
check_result(result, "get_address");
|
||||
|
||||
isc_sockaddr_format(&sockaddr, sockstr, sizeof(sockstr));
|
||||
printf("Default server: %s\nAddress: %s\n",
|
||||
srv->userarg, sockstr);
|
||||
@@ -505,7 +526,7 @@ testclass(char *typetext) {
|
||||
tr.base = typetext;
|
||||
tr.length = strlen(typetext);
|
||||
result = dns_rdataclass_fromtext(&rdclass, &tr);
|
||||
if (result == ISC_R_SUCCESS)
|
||||
if (result == ISC_R_SUCCESS)
|
||||
return (ISC_TRUE);
|
||||
else {
|
||||
printf("unknown query class: %s\n", typetext);
|
||||
@@ -603,7 +624,7 @@ setoption(char *opt) {
|
||||
set_timeout(&opt[8]);
|
||||
} else if (strncasecmp(opt, "t=", 2) == 0) {
|
||||
set_timeout(&opt[2]);
|
||||
} else if (strncasecmp(opt, "rec", 3) == 0) {
|
||||
} else if (strncasecmp(opt, "rec", 3) == 0) {
|
||||
recurse = ISC_TRUE;
|
||||
} else if (strncasecmp(opt, "norec", 5) == 0) {
|
||||
recurse = ISC_FALSE;
|
||||
@@ -611,21 +632,21 @@ setoption(char *opt) {
|
||||
set_tries(&opt[6]);
|
||||
} else if (strncasecmp(opt, "ret=", 4) == 0) {
|
||||
set_tries(&opt[4]);
|
||||
} else if (strncasecmp(opt, "def", 3) == 0) {
|
||||
} else if (strncasecmp(opt, "def", 3) == 0) {
|
||||
usesearch = ISC_TRUE;
|
||||
} else if (strncasecmp(opt, "nodef", 5) == 0) {
|
||||
usesearch = ISC_FALSE;
|
||||
} else if (strncasecmp(opt, "vc", 3) == 0) {
|
||||
} else if (strncasecmp(opt, "vc", 3) == 0) {
|
||||
tcpmode = ISC_TRUE;
|
||||
} else if (strncasecmp(opt, "novc", 5) == 0) {
|
||||
tcpmode = ISC_FALSE;
|
||||
} else if (strncasecmp(opt, "deb", 3) == 0) {
|
||||
} else if (strncasecmp(opt, "deb", 3) == 0) {
|
||||
short_form = ISC_FALSE;
|
||||
showsearch = ISC_TRUE;
|
||||
} else if (strncasecmp(opt, "nodeb", 5) == 0) {
|
||||
short_form = ISC_TRUE;
|
||||
showsearch = ISC_FALSE;
|
||||
} else if (strncasecmp(opt, "d2", 2) == 0) {
|
||||
} else if (strncasecmp(opt, "d2", 2) == 0) {
|
||||
debugging = ISC_TRUE;
|
||||
} else if (strncasecmp(opt, "nod2", 4) == 0) {
|
||||
debugging = ISC_FALSE;
|
||||
@@ -640,7 +661,7 @@ setoption(char *opt) {
|
||||
} else if (strncasecmp(opt, "nofail", 3) == 0) {
|
||||
nofail=ISC_TRUE;
|
||||
} else {
|
||||
printf("*** Invalid option: %s\n", opt);
|
||||
printf("*** Invalid option: %s\n", opt);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -13,7 +13,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: nslookup.html,v 1.1.10.21 2007/05/16 06:11:27 marka Exp $ -->
|
||||
<!-- $Id: nslookup.html,v 1.1.10.22 2009/07/11 01:31:44 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -13,7 +13,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: dnssec-keygen.8,v 1.23.18.16 2008/10/16 01:29:40 tbox Exp $
|
||||
.\" $Id: dnssec-keygen.8,v 1.23.18.17 2009/07/11 01:31:44 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
- Copyright (C) 2004, 2005, 2007, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -14,7 +14,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: dnssec-keygen.html,v 1.9.18.22 2008/10/16 01:29:40 tbox Exp $ -->
|
||||
<!-- $Id: dnssec-keygen.html,v 1.9.18.23 2009/07/11 01:31:44 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
.\" Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -13,7 +13,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: dnssec-signzone.8,v 1.28.18.19 2008/10/16 01:29:40 tbox Exp $
|
||||
.\" $Id: dnssec-signzone.8,v 1.28.18.20 2009/07/11 01:31:44 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Portions Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 2004-2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
* Portions Copyright (C) 1995-2000 by Network Associates, Inc.
|
||||
*
|
||||
@@ -16,7 +16,7 @@
|
||||
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-signzone.c,v 1.177.18.26 2008/06/02 23:46:01 tbox Exp $ */
|
||||
/* $Id: dnssec-signzone.c,v 1.177.18.31 2011/02/27 23:45:14 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -194,16 +194,30 @@ newkeystruct(dst_key_t *dstkey, isc_boolean_t signwithkey) {
|
||||
return (key);
|
||||
}
|
||||
|
||||
/*%
|
||||
* Sign the given RRset with given key, and add the signature record to the
|
||||
* given tuple.
|
||||
*/
|
||||
|
||||
static void
|
||||
signwithkey(dns_name_t *name, dns_rdataset_t *rdataset, dns_rdata_t *rdata,
|
||||
dst_key_t *key, isc_buffer_t *b)
|
||||
signwithkey(dns_name_t *name, dns_rdataset_t *rdataset, dst_key_t *key,
|
||||
dns_ttl_t ttl, dns_diff_t *add, const char *logmsg)
|
||||
{
|
||||
isc_result_t result;
|
||||
isc_stdtime_t jendtime;
|
||||
char keystr[KEY_FORMATSIZE];
|
||||
dns_rdata_t trdata = DNS_RDATA_INIT;
|
||||
unsigned char array[BUFSIZE];
|
||||
isc_buffer_t b;
|
||||
dns_difftuple_t *tuple;
|
||||
|
||||
key_format(key, keystr, sizeof(keystr));
|
||||
vbprintf(1, "\t%s %s\n", logmsg, keystr);
|
||||
|
||||
jendtime = (jitter != 0) ? isc_random_jitter(endtime, jitter) : endtime;
|
||||
isc_buffer_init(&b, array, sizeof(array));
|
||||
result = dns_dnssec_sign(name, rdataset, key, &starttime, &jendtime,
|
||||
mctx, b, rdata);
|
||||
mctx, &b, &trdata);
|
||||
isc_entropy_stopcallbacksources(ectx);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
char keystr[KEY_FORMATSIZE];
|
||||
@@ -215,7 +229,7 @@ signwithkey(dns_name_t *name, dns_rdataset_t *rdataset, dns_rdata_t *rdata,
|
||||
|
||||
if (tryverify) {
|
||||
result = dns_dnssec_verify(name, rdataset, key,
|
||||
ISC_TRUE, mctx, rdata);
|
||||
ISC_TRUE, mctx, &trdata);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
vbprintf(3, "\tsignature verified\n");
|
||||
INCSTAT(nverified);
|
||||
@@ -224,6 +238,12 @@ signwithkey(dns_name_t *name, dns_rdataset_t *rdataset, dns_rdata_t *rdata,
|
||||
INCSTAT(nverifyfailed);
|
||||
}
|
||||
}
|
||||
|
||||
tuple = NULL;
|
||||
result = dns_difftuple_create(mctx, DNS_DIFFOP_ADD, name, ttl, &trdata,
|
||||
&tuple);
|
||||
check_result(result, "dns_difftuple_create");
|
||||
dns_diff_append(add, &tuple);
|
||||
}
|
||||
|
||||
static inline isc_boolean_t
|
||||
@@ -415,32 +435,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, &sigrdata))
|
||||
{
|
||||
if (!expired && rrsig.originalttl == set->ttl &&
|
||||
setverifies(name, set, key, &sigrdata)) {
|
||||
vbprintf(2, "\trrsig by %s retained\n", sigstr);
|
||||
keep = ISC_TRUE;
|
||||
wassignedby[key->position] = ISC_TRUE;
|
||||
nowsignedby[key->position] = 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->position] = ISC_TRUE;
|
||||
resign = ISC_TRUE;
|
||||
}
|
||||
} else if (iszonekey(key)) {
|
||||
if (!expired && setverifies(name, set, key, &sigrdata))
|
||||
{
|
||||
if (!expired && rrsig.originalttl == set->ttl &&
|
||||
setverifies(name, set, key, &sigrdata)) {
|
||||
vbprintf(2, "\trrsig by %s retained\n", sigstr);
|
||||
keep = ISC_TRUE;
|
||||
wassignedby[key->position] = ISC_TRUE;
|
||||
nowsignedby[key->position] = 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->position] = ISC_TRUE;
|
||||
}
|
||||
} else if (!expired) {
|
||||
@@ -482,24 +502,11 @@ signset(dns_diff_t *del, dns_diff_t *add, dns_dbnode_t *node, dns_name_t *name,
|
||||
}
|
||||
|
||||
if (resign) {
|
||||
isc_buffer_t b;
|
||||
dns_rdata_t trdata = DNS_RDATA_INIT;
|
||||
unsigned char array[BUFSIZE];
|
||||
char keystr[KEY_FORMATSIZE];
|
||||
|
||||
INSIST(!keep);
|
||||
|
||||
key_format(key->key, keystr, sizeof(keystr));
|
||||
vbprintf(1, "\tresigning with dnskey %s\n", keystr);
|
||||
isc_buffer_init(&b, array, sizeof(array));
|
||||
signwithkey(name, set, &trdata, key->key, &b);
|
||||
signwithkey(name, set, key->key, ttl, add,
|
||||
"resigning with dnskey");
|
||||
nowsignedby[key->position] = ISC_TRUE;
|
||||
tuple = NULL;
|
||||
result = dns_difftuple_create(mctx, DNS_DIFFOP_ADD,
|
||||
name, ttl, &trdata,
|
||||
&tuple);
|
||||
check_result(result, "dns_difftuple_create");
|
||||
dns_diff_append(add, &tuple);
|
||||
}
|
||||
|
||||
dns_rdata_reset(&sigrdata);
|
||||
@@ -517,11 +524,6 @@ signset(dns_diff_t *del, dns_diff_t *add, dns_dbnode_t *node, dns_name_t *name,
|
||||
key != NULL;
|
||||
key = ISC_LIST_NEXT(key, link))
|
||||
{
|
||||
isc_buffer_t b;
|
||||
dns_rdata_t trdata;
|
||||
unsigned char array[BUFSIZE];
|
||||
char keystr[KEY_FORMATSIZE];
|
||||
|
||||
if (nowsignedby[key->position])
|
||||
continue;
|
||||
|
||||
@@ -533,16 +535,8 @@ signset(dns_diff_t *del, dns_diff_t *add, dns_dbnode_t *node, dns_name_t *name,
|
||||
dns_name_equal(name, gorigin))))
|
||||
continue;
|
||||
|
||||
key_format(key->key, keystr, sizeof(keystr));
|
||||
vbprintf(1, "\tsigning with dnskey %s\n", keystr);
|
||||
dns_rdata_init(&trdata);
|
||||
isc_buffer_init(&b, array, sizeof(array));
|
||||
signwithkey(name, set, &trdata, key->key, &b);
|
||||
tuple = NULL;
|
||||
result = dns_difftuple_create(mctx, DNS_DIFFOP_ADD, name,
|
||||
ttl, &trdata, &tuple);
|
||||
check_result(result, "dns_difftuple_create");
|
||||
dns_diff_append(add, &tuple);
|
||||
signwithkey(name, set, key->key, ttl, add,
|
||||
"signing with dnskey");
|
||||
}
|
||||
|
||||
isc_mem_put(mctx, wassignedby, arraysize * sizeof(isc_boolean_t));
|
||||
@@ -2106,6 +2100,9 @@ main(int argc, char *argv[]) {
|
||||
fatal("cannot load dnskey %s: %s", argv[i],
|
||||
isc_result_totext(result));
|
||||
|
||||
if (!dns_name_equal(gorigin, dst_key_name(newkey)))
|
||||
fatal("key %s not at origin\n", argv[i]);
|
||||
|
||||
key = ISC_LIST_HEAD(keylist);
|
||||
while (key != NULL) {
|
||||
dst_key_t *dkey = key->key;
|
||||
@@ -2143,6 +2140,9 @@ main(int argc, char *argv[]) {
|
||||
fatal("cannot load dnskey %s: %s", dskeyfile[i],
|
||||
isc_result_totext(result));
|
||||
|
||||
if (!dns_name_equal(gorigin, dst_key_name(newkey)))
|
||||
fatal("key %s not at origin\n", dskeyfile[i]);
|
||||
|
||||
key = ISC_LIST_HEAD(keylist);
|
||||
while (key != NULL) {
|
||||
dst_key_t *dkey = key->key;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
- Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -14,7 +14,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: dnssec-signzone.html,v 1.8.18.25 2008/10/16 01:29:40 tbox Exp $ -->
|
||||
<!-- $Id: dnssec-signzone.html,v 1.8.18.26 2009/07/11 01:31:44 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
|
||||
+6
-4
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 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.219.18.31 2008/05/22 23:46:03 tbox Exp $ */
|
||||
/* $Id: client.c,v 1.219.18.35 2011/05/06 23:45:18 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -619,6 +619,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;
|
||||
@@ -1218,7 +1219,7 @@ allowed(isc_netaddr_t *addr, dns_name_t *signer, dns_acl_t *acl) {
|
||||
* delivered to 'myview'.
|
||||
*
|
||||
* We run this unlocked as both the view list and the interface list
|
||||
* are updated when the approprite task has exclusivity.
|
||||
* are updated when the appropriate task has exclusivity.
|
||||
*/
|
||||
isc_boolean_t
|
||||
ns_client_isself(dns_view_t *myview, dns_tsigkey_t *mykey,
|
||||
@@ -1934,6 +1935,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;
|
||||
@@ -2115,7 +2117,7 @@ client_newconn(isc_task_t *task, isc_event_t *event) {
|
||||
* Let a new client take our place immediately, before
|
||||
* we wait for a request packet. If we don't,
|
||||
* telnetting to port 53 (once per CPU) will
|
||||
* deny service to legititmate TCP clients.
|
||||
* deny service to legitimate TCP clients.
|
||||
*/
|
||||
result = isc_quota_attach(&ns_g_server->tcpquota,
|
||||
&client->tcpquota);
|
||||
|
||||
+7
-5
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2009 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: control.c,v 1.20.10.10 2007/09/13 23:46:26 tbox Exp $ */
|
||||
/* $Id: control.c,v 1.20.10.12 2009/07/11 23:46:06 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -56,7 +56,7 @@ command_compare(const char *text, const char *command) {
|
||||
|
||||
/*%
|
||||
* This function is called to process the incoming command
|
||||
* when a control channel message is received.
|
||||
* when a control channel message is received.
|
||||
*/
|
||||
isc_result_t
|
||||
ns_control_docommand(isccc_sexpr_t *message, isc_buffer_t *text) {
|
||||
@@ -159,10 +159,12 @@ ns_control_docommand(isccc_sexpr_t *message, isc_buffer_t *text) {
|
||||
} else if (command_compare(command, NS_COMMAND_STATUS)) {
|
||||
result = ns_server_status(ns_g_server, text);
|
||||
} else if (command_compare(command, NS_COMMAND_FREEZE)) {
|
||||
result = ns_server_freeze(ns_g_server, ISC_TRUE, command);
|
||||
result = ns_server_freeze(ns_g_server, ISC_TRUE, command,
|
||||
text);
|
||||
} else if (command_compare(command, NS_COMMAND_UNFREEZE) ||
|
||||
command_compare(command, NS_COMMAND_THAW)) {
|
||||
result = ns_server_freeze(ns_g_server, ISC_FALSE, command);
|
||||
result = ns_server_freeze(ns_g_server, ISC_FALSE, command,
|
||||
text);
|
||||
} else if (command_compare(command, NS_COMMAND_RECURSING)) {
|
||||
result = ns_server_dumprecursing(ns_g_server);
|
||||
} else if (command_compare(command, NS_COMMAND_TIMERPOKE)) {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2006, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: client.h,v 1.69.18.9 2006/06/06 00:11:41 marka Exp $ */
|
||||
/* $Id: client.h,v 1.69.18.11 2009/01/19 23:46:14 tbox Exp $ */
|
||||
|
||||
#ifndef NAMED_CLIENT_H
|
||||
#define NAMED_CLIENT_H 1
|
||||
@@ -24,7 +24,7 @@
|
||||
***** Module Info
|
||||
*****/
|
||||
|
||||
/*! \file
|
||||
/*! \file
|
||||
* \brief
|
||||
* This module defines two objects, ns_client_t and ns_clientmgr_t.
|
||||
*
|
||||
@@ -155,7 +155,7 @@ struct ns_client {
|
||||
#define NS_CLIENT_VALID(c) ISC_MAGIC_VALID(c, NS_CLIENT_MAGIC)
|
||||
|
||||
#define NS_CLIENTATTR_TCP 0x01
|
||||
#define NS_CLIENTATTR_RA 0x02 /*%< Client gets recusive service */
|
||||
#define NS_CLIENTATTR_RA 0x02 /*%< Client gets recursive service */
|
||||
#define NS_CLIENTATTR_PKTINFO 0x04 /*%< pktinfo is valid */
|
||||
#define NS_CLIENTATTR_MULTICAST 0x08 /*%< recv'd from multicast */
|
||||
#define NS_CLIENTATTR_WANTDNSSEC 0x10 /*%< include dnssec records */
|
||||
@@ -352,8 +352,8 @@ ns_client_qnamereplace(ns_client_t *client, dns_name_t *name);
|
||||
|
||||
isc_boolean_t
|
||||
ns_client_isself(dns_view_t *myview, dns_tsigkey_t *mykey,
|
||||
isc_sockaddr_t *srcaddr, isc_sockaddr_t *destaddr,
|
||||
dns_rdataclass_t rdclass, void *arg);
|
||||
isc_sockaddr_t *srcaddr, isc_sockaddr_t *destaddr,
|
||||
dns_rdataclass_t rdclass, void *arg);
|
||||
/*%
|
||||
* Isself callback.
|
||||
*/
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: log.h,v 1.21.18.2 2005/04/29 00:15:35 marka Exp $ */
|
||||
/* $Id: log.h,v 1.21.18.4 2009/09/24 23:46:06 tbox Exp $ */
|
||||
|
||||
#ifndef NAMED_LOG_H
|
||||
#define NAMED_LOG_H 1
|
||||
@@ -36,6 +36,7 @@
|
||||
#define NS_LOGCATEGORY_QUERIES (&ns_g_categories[4])
|
||||
#define NS_LOGCATEGORY_UNMATCHED (&ns_g_categories[5])
|
||||
#define NS_LOGCATEGORY_UPDATE_SECURITY (&ns_g_categories[6])
|
||||
#define NS_LOGCATEGORY_QUERY_EERRORS (&ns_g_categories[7])
|
||||
|
||||
/*
|
||||
* Backwards compatibility.
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: lwdclient.h,v 1.14.18.2 2005/04/29 00:15:36 marka Exp $ */
|
||||
/* $Id: lwdclient.h,v 1.14.18.4 2009/01/19 23:46:14 tbox Exp $ */
|
||||
|
||||
#ifndef NAMED_LWDCLIENT_H
|
||||
#define NAMED_LWDCLIENT_H 1
|
||||
@@ -39,7 +39,7 @@
|
||||
|
||||
#define LWRD_SHUTDOWN (LWRD_EVENTCLASS + 0x0001)
|
||||
|
||||
/*% Lighweight Resolver Daemon Client */
|
||||
/*% Lightweight Resolver Daemon Client */
|
||||
struct ns_lwdclient {
|
||||
isc_sockaddr_t address; /*%< where to reply */
|
||||
struct in6_pktinfo pktinfo;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: notify.h,v 1.10.18.2 2005/04/29 00:15:37 marka Exp $ */
|
||||
/* $Id: notify.h,v 1.10.18.4 2009/01/19 23:46:14 tbox Exp $ */
|
||||
|
||||
#ifndef NAMED_NOTIFY_H
|
||||
#define NAMED_NOTIFY_H 1
|
||||
@@ -41,7 +41,7 @@ void
|
||||
ns_notify_start(ns_client_t *client);
|
||||
|
||||
/*%<
|
||||
* Examines the incoming message to determine apporiate zone.
|
||||
* Examines the incoming message to determine appropriate zone.
|
||||
* Returns FORMERR if there is not exactly one question.
|
||||
* Returns REFUSED if we do not serve the listed zone.
|
||||
* Pass the message to the zone module for processing
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2006, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: server.h,v 1.73.18.8 2006/03/09 23:46:20 marka Exp $ */
|
||||
/* $Id: server.h,v 1.73.18.10 2009/07/11 23:46:06 tbox Exp $ */
|
||||
|
||||
#ifndef NAMED_SERVER_H
|
||||
#define NAMED_SERVER_H 1
|
||||
@@ -62,7 +62,7 @@ struct ns_server {
|
||||
isc_boolean_t server_usehostname;
|
||||
char * server_id; /*%< User-specified server id */
|
||||
|
||||
/*%
|
||||
/*%
|
||||
* Current ACL environment. This defines the
|
||||
* current values of the localhost and localnets
|
||||
* ACLs.
|
||||
@@ -207,7 +207,8 @@ ns_server_status(ns_server_t *server, isc_buffer_t *text);
|
||||
* Enable or disable updates for a zone.
|
||||
*/
|
||||
isc_result_t
|
||||
ns_server_freeze(ns_server_t *server, isc_boolean_t freeze, char *args);
|
||||
ns_server_freeze(ns_server_t *server, isc_boolean_t freeze, char *args,
|
||||
isc_buffer_t *text);
|
||||
|
||||
/*%
|
||||
* Dump the current recursive queries.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2006, 2008, 2009 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.76.18.11 2008/07/23 23:33:02 marka Exp $ */
|
||||
/* $Id: interfacemgr.c,v 1.76.18.13 2009/01/19 23:46:14 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -522,7 +522,7 @@ setup_locals(ns_interfacemgr_t *mgr, isc_interface_t *interface) {
|
||||
result = isc_netaddr_masktoprefixlen(&interface->netmask,
|
||||
&prefixlen);
|
||||
|
||||
/* Non contigious netmasks not allowed by IPv6 arch. */
|
||||
/* Non contiguous netmasks not allowed by IPv6 arch. */
|
||||
if (result != ISC_R_SUCCESS && family == AF_INET6)
|
||||
return (result);
|
||||
|
||||
|
||||
+5
-4
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2006, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: log.c,v 1.37.18.6 2006/06/09 00:54:08 marka Exp $ */
|
||||
/* $Id: log.c,v 1.37.18.9 2009/09/24 21:38:50 jinmei Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -44,6 +44,7 @@ static isc_logcategory_t categories[] = {
|
||||
{ "queries", 0 },
|
||||
{ "unmatched", 0 },
|
||||
{ "update-security", 0 },
|
||||
{ "query-errors", 0 },
|
||||
{ NULL, 0 }
|
||||
};
|
||||
|
||||
@@ -120,7 +121,7 @@ ns_log_setdefaultchannels(isc_logconfig_t *lcfg) {
|
||||
/*
|
||||
* By default, the logging library makes "default_debug" log to
|
||||
* stderr. In BIND, we want to override this and log to named.run
|
||||
* instead, unless the the -g option was given.
|
||||
* instead, unless the -g option was given.
|
||||
*/
|
||||
if (! ns_g_logstderr) {
|
||||
destination.file.stream = NULL;
|
||||
|
||||
+36
-23
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2006, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,12 +15,13 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: logconf.c,v 1.35.18.5 2006/03/02 00:37:21 marka Exp $ */
|
||||
/* $Id: logconf.c,v 1.35.18.8 2011/03/06 01:46:22 marka 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);
|
||||
|
||||
+5
-5
@@ -1,7 +1,7 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004, 2005, 2007-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -13,7 +13,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: lwresd.8,v 1.15.18.13 2008/10/17 01:29:23 tbox Exp $
|
||||
.\" $Id: lwresd.8,v 1.15.18.15 2009/07/11 01:31:44 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -42,7 +42,7 @@ is the daemon providing name lookup services to clients that use the BIND 9 ligh
|
||||
\fBlwresd\fR
|
||||
listens for resolver queries on a UDP port on the IPv4 loopback interface, 127.0.0.1. This means that
|
||||
\fBlwresd\fR
|
||||
can only be used by processes running on the local machine. By default UDP port number 921 is used for lightweight resolver requests and responses.
|
||||
can only be used by processes running on the local machine. By default, UDP port number 921 is used for lightweight resolver requests and responses.
|
||||
.PP
|
||||
Incoming lightweight resolver requests are decoded by the server which then resolves them using the DNS protocol. When the DNS lookup completes,
|
||||
\fBlwresd\fR
|
||||
@@ -217,7 +217,7 @@ The default process\-id file.
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004, 2005, 2007, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2004, 2005, 2007\-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000, 2001 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005, 2007-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: lwresd.docbook,v 1.7.18.10 2008/10/16 23:46:00 tbox Exp $ -->
|
||||
<!-- $Id: lwresd.docbook,v 1.7.18.12 2009/01/22 23:46:00 tbox Exp $ -->
|
||||
<refentry>
|
||||
<refentryinfo>
|
||||
<date>June 30, 2000</date>
|
||||
@@ -41,6 +41,7 @@
|
||||
<year>2005</year>
|
||||
<year>2007</year>
|
||||
<year>2008</year>
|
||||
<year>2009</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
@@ -87,7 +88,7 @@
|
||||
listens for resolver queries on a
|
||||
UDP port on the IPv4 loopback interface, 127.0.0.1. This
|
||||
means that <command>lwresd</command> can only be used by
|
||||
processes running on the local machine. By default UDP port
|
||||
processes running on the local machine. By default, UDP port
|
||||
number 921 is used for lightweight resolver requests and
|
||||
responses.
|
||||
</para>
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005, 2007-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -14,7 +14,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: lwresd.html,v 1.5.18.19 2008/10/17 01:29:23 tbox Exp $ -->
|
||||
<!-- $Id: lwresd.html,v 1.5.18.21 2009/07/11 01:31:45 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -32,7 +32,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">lwresd</code> [<code class="option">-c <em class="replaceable"><code>config-file</code></em></code>] [<code class="option">-C <em class="replaceable"><code>config-file</code></em></code>] [<code class="option">-d <em class="replaceable"><code>debug-level</code></em></code>] [<code class="option">-f</code>] [<code class="option">-g</code>] [<code class="option">-i <em class="replaceable"><code>pid-file</code></em></code>] [<code class="option">-m <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-n <em class="replaceable"><code>#cpus</code></em></code>] [<code class="option">-P <em class="replaceable"><code>port</code></em></code>] [<code class="option">-p <em class="replaceable"><code>port</code></em></code>] [<code class="option">-s</code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-u <em class="replaceable"><code>user</code></em></code>] [<code class="option">-v</code>] [<code class="option">-4</code>] [<code class="option">-6</code>]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543464"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543467"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">lwresd</strong></span>
|
||||
is the daemon providing name lookup
|
||||
services to clients that use the BIND 9 lightweight resolver
|
||||
@@ -44,7 +44,7 @@
|
||||
listens for resolver queries on a
|
||||
UDP port on the IPv4 loopback interface, 127.0.0.1. This
|
||||
means that <span><strong class="command">lwresd</strong></span> can only be used by
|
||||
processes running on the local machine. By default UDP port
|
||||
processes running on the local machine. By default, UDP port
|
||||
number 921 is used for lightweight resolver requests and
|
||||
responses.
|
||||
</p>
|
||||
@@ -67,7 +67,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543511"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543514"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-4</span></dt>
|
||||
<dd><p>
|
||||
@@ -197,7 +197,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543928"></a><h2>FILES</h2>
|
||||
<a name="id2543931"></a><h2>FILES</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><code class="filename">/etc/resolv.conf</code></span></dt>
|
||||
<dd><p>
|
||||
@@ -210,14 +210,14 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543968"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2543971"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">lwres</span>(3)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">resolver</span>(5)</span>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544002"></a><h2>AUTHOR</h2>
|
||||
<a name="id2544005"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
+7
-7
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2006, 2008, 2009 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.136.18.21 2008/10/24 01:28:08 marka Exp $ */
|
||||
/* $Id: main.c,v 1.136.18.24 2009/04/03 20:17:59 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -139,7 +139,7 @@ assertion_failed(const char *file, int line, isc_assertiontype_t type,
|
||||
|
||||
if (ns_g_lctx != NULL) {
|
||||
/*
|
||||
* Reset the assetion callback in case it is the log
|
||||
* Reset the assertion callback in case it is the log
|
||||
* routines causing the assertion.
|
||||
*/
|
||||
isc_assertion_setcallback(NULL);
|
||||
@@ -719,7 +719,7 @@ setup(void) {
|
||||
|
||||
#ifdef DLZ
|
||||
/*
|
||||
* Registyer any DLZ drivers.
|
||||
* Register any DLZ drivers.
|
||||
*/
|
||||
result = dlz_drivers_init();
|
||||
if (result != ISC_R_SUCCESS)
|
||||
@@ -851,10 +851,10 @@ main(int argc, char *argv[]) {
|
||||
* strings named.core | grep "named version:"
|
||||
*/
|
||||
strlcat(version,
|
||||
#ifdef __DATE__
|
||||
"named version: BIND " VERSION " (" __DATE__ ")",
|
||||
#else
|
||||
#if defined(NO_VERSION_DATE) || !defined(__DATE__)
|
||||
"named version: BIND " VERSION,
|
||||
#else
|
||||
"named version: BIND " VERSION " (" __DATE__ ")",
|
||||
#endif
|
||||
sizeof(version));
|
||||
result = isc_file_progname(*argv, program_name, sizeof(program_name));
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
.\" Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000, 2001, 2003 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -13,7 +13,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: named.8,v 1.20.18.16 2008/09/01 02:29:00 tbox Exp $
|
||||
.\" $Id: named.8,v 1.20.18.17 2009/07/11 01:31:44 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
.\" Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -12,7 +12,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: named.conf.5,v 1.1.2.27 2008/09/05 01:32:08 tbox Exp $
|
||||
.\" $Id: named.conf.5,v 1.1.2.28 2009/07/11 01:31:45 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -13,7 +13,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: named.conf.html,v 1.1.2.36 2008/09/05 01:32:08 tbox Exp $ -->
|
||||
<!-- $Id: named.conf.html,v 1.1.2.37 2009/07/11 01:31:45 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
- Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000, 2001, 2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -14,7 +14,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: named.html,v 1.6.18.22 2008/09/01 02:29:00 tbox Exp $ -->
|
||||
<!-- $Id: named.html,v 1.6.18.23 2009/07/11 01:31:45 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
|
||||
+137
-42
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2010 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.257.18.46 2008/10/15 22:33:01 marka Exp $ */
|
||||
/* $Id: query.c,v 1.257.18.56 2010/11/17 10:21:01 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -109,18 +109,23 @@
|
||||
#define DNS_GETDB_NOLOG 0x02U
|
||||
#define DNS_GETDB_PARTIAL 0x04U
|
||||
|
||||
#define PENDINGOK(x) (((x) & DNS_DBFIND_PENDINGOK) != 0)
|
||||
|
||||
typedef struct client_additionalctx {
|
||||
ns_client_t *client;
|
||||
dns_rdataset_t *rdataset;
|
||||
} client_additionalctx_t;
|
||||
|
||||
static void
|
||||
static isc_result_t
|
||||
query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype);
|
||||
|
||||
static isc_boolean_t
|
||||
validate(ns_client_t *client, dns_db_t *db, dns_name_t *name,
|
||||
dns_rdataset_t *rdataset, dns_rdataset_t *sigrdataset);
|
||||
|
||||
static inline void
|
||||
log_queryerror(ns_client_t *client, isc_result_t result, int line, int level);
|
||||
|
||||
/*%
|
||||
* Increment query statistics counters.
|
||||
*/
|
||||
@@ -163,8 +168,14 @@ query_send(ns_client_t *client) {
|
||||
}
|
||||
|
||||
static void
|
||||
query_error(ns_client_t *client, isc_result_t result) {
|
||||
query_error(ns_client_t *client, isc_result_t result, int line) {
|
||||
int loglevel = ISC_LOG_DEBUG(3);
|
||||
|
||||
if (result == DNS_R_SERVFAIL)
|
||||
loglevel = ISC_LOG_DEBUG(1);
|
||||
|
||||
inc_stats(client, dns_statscounter_failure);
|
||||
log_queryerror(client, result, line, loglevel);
|
||||
ns_client_error(client, result);
|
||||
}
|
||||
|
||||
@@ -940,7 +951,7 @@ query_getdb(ns_client_t *client, dns_name_t *name, dns_rdatatype_t qtype,
|
||||
zonep, dbp, versionp);
|
||||
#endif
|
||||
|
||||
/* If successfull, Transfer ownership of zone. */
|
||||
/* If successful, Transfer ownership of zone. */
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
#ifdef DLZ
|
||||
*zonep = zone;
|
||||
@@ -1118,7 +1129,8 @@ query_addadditional(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
goto cleanup;
|
||||
}
|
||||
result = dns_db_find(db, name, version, type,
|
||||
client->query.dboptions | DNS_DBFIND_GLUEOK,
|
||||
client->query.dboptions |
|
||||
DNS_DBFIND_GLUEOK | DNS_DBFIND_ADDITIONALOK,
|
||||
client->now, &node, fname, rdataset,
|
||||
sigrdataset);
|
||||
if (result == DNS_R_GLUE &&
|
||||
@@ -1157,7 +1169,7 @@ query_addadditional(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
goto cleanup;
|
||||
|
||||
/*
|
||||
* Don't poision caches using the bailiwick protection model.
|
||||
* Don't poison caches using the bailiwick protection model.
|
||||
*/
|
||||
if (!dns_name_issubdomain(name, dns_db_origin(client->query.gluedb)))
|
||||
goto cleanup;
|
||||
@@ -1603,7 +1615,8 @@ query_addadditional2(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
goto try_glue;
|
||||
|
||||
result = dns_db_find(db, name, version, type,
|
||||
client->query.dboptions | DNS_DBFIND_GLUEOK,
|
||||
client->query.dboptions |
|
||||
DNS_DBFIND_GLUEOK | DNS_DBFIND_ADDITIONALOK,
|
||||
client->now, &node, fname, NULL, NULL);
|
||||
if (result == ISC_R_SUCCESS)
|
||||
goto found;
|
||||
@@ -1631,7 +1644,7 @@ query_addadditional2(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
goto cleanup;
|
||||
|
||||
/*
|
||||
* Don't poision caches using the bailiwick protection model.
|
||||
* Don't poison caches using the bailiwick protection model.
|
||||
*/
|
||||
if (!dns_name_issubdomain(name, dns_db_origin(client->query.gluedb)))
|
||||
goto cleanup;
|
||||
@@ -1721,8 +1734,8 @@ query_addadditional2(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
*/
|
||||
if (result == ISC_R_SUCCESS &&
|
||||
additionaltype == dns_rdatasetadditional_fromcache &&
|
||||
(rdataset->trust == dns_trust_pending ||
|
||||
rdataset->trust == dns_trust_glue) &&
|
||||
(DNS_TRUST_PENDING(rdataset->trust) ||
|
||||
DNS_TRUST_GLUE(rdataset->trust)) &&
|
||||
!validate(client, db, fname, rdataset, sigrdataset)) {
|
||||
dns_rdataset_disassociate(rdataset);
|
||||
if (dns_rdataset_isassociated(sigrdataset))
|
||||
@@ -1761,8 +1774,8 @@ query_addadditional2(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
*/
|
||||
if (result == ISC_R_SUCCESS &&
|
||||
additionaltype == dns_rdatasetadditional_fromcache &&
|
||||
(rdataset->trust == dns_trust_pending ||
|
||||
rdataset->trust == dns_trust_glue) &&
|
||||
(DNS_TRUST_PENDING(rdataset->trust) ||
|
||||
DNS_TRUST_GLUE(rdataset->trust)) &&
|
||||
!validate(client, db, fname, rdataset, sigrdataset)) {
|
||||
dns_rdataset_disassociate(rdataset);
|
||||
if (dns_rdataset_isassociated(sigrdataset))
|
||||
@@ -2291,7 +2304,7 @@ mark_secure(ns_client_t *client, dns_db_t *db, dns_name_t *name,
|
||||
|
||||
/*
|
||||
* Find the secure key that corresponds to rrsig.
|
||||
* Note: 'keyrdataset' maintains state between sucessive calls,
|
||||
* Note: 'keyrdataset' maintains state between successive calls,
|
||||
* there may be multiple keys with the same keyid.
|
||||
* Return ISC_FALSE if we have exhausted all the possible keys.
|
||||
*/
|
||||
@@ -2547,14 +2560,14 @@ query_addbestns(ns_client_t *client) {
|
||||
/*
|
||||
* Attempt to validate RRsets that are pending or that are glue.
|
||||
*/
|
||||
if ((rdataset->trust == dns_trust_pending ||
|
||||
(sigrdataset != NULL && sigrdataset->trust == dns_trust_pending))
|
||||
if ((DNS_TRUST_PENDING(rdataset->trust) ||
|
||||
(sigrdataset != NULL && DNS_TRUST_PENDING(sigrdataset->trust)))
|
||||
&& !validate(client, db, fname, rdataset, sigrdataset) &&
|
||||
(client->query.dboptions & DNS_DBFIND_PENDINGOK) == 0)
|
||||
!PENDINGOK(client->query.dboptions))
|
||||
goto cleanup;
|
||||
|
||||
if ((rdataset->trust == dns_trust_glue ||
|
||||
(sigrdataset != NULL && sigrdataset->trust == dns_trust_glue)) &&
|
||||
if ((DNS_TRUST_GLUE(rdataset->trust) ||
|
||||
(sigrdataset != NULL && DNS_TRUST_GLUE(sigrdataset->trust))) &&
|
||||
!validate(client, db, fname, rdataset, sigrdataset) &&
|
||||
SECURE(client) && WANTDNSSEC(client))
|
||||
goto cleanup;
|
||||
@@ -2683,7 +2696,7 @@ query_addwildcardproof(ns_client_t *client, dns_db_t *db,
|
||||
node = NULL;
|
||||
|
||||
/*
|
||||
* Get the NOQNAME proof then if !ispositve
|
||||
* Get the NOQNAME proof then if !ispositive
|
||||
* get the NOWILDCARD proof.
|
||||
*
|
||||
* DNS_DBFIND_NOWILD finds the NSEC records that covers the
|
||||
@@ -2862,8 +2875,12 @@ query_addnxrrsetnsec(ns_client_t *client, dns_db_t *db,
|
||||
static void
|
||||
query_resume(isc_task_t *task, isc_event_t *event) {
|
||||
dns_fetchevent_t *devent = (dns_fetchevent_t *)event;
|
||||
dns_fetch_t *fetch;
|
||||
ns_client_t *client;
|
||||
isc_boolean_t fetch_cancelled, client_shuttingdown;
|
||||
isc_boolean_t fetch_canceled, client_shuttingdown;
|
||||
isc_result_t result;
|
||||
isc_logcategory_t *logcategory = NS_LOGCATEGORY_QUERY_EERRORS;
|
||||
int errorloglevel;
|
||||
|
||||
/*
|
||||
* Resume a query after recursion.
|
||||
@@ -2884,30 +2901,31 @@ query_resume(isc_task_t *task, isc_event_t *event) {
|
||||
*/
|
||||
INSIST(devent->fetch == client->query.fetch);
|
||||
client->query.fetch = NULL;
|
||||
fetch_cancelled = ISC_FALSE;
|
||||
fetch_canceled = ISC_FALSE;
|
||||
/*
|
||||
* Update client->now.
|
||||
*/
|
||||
isc_stdtime_get(&client->now);
|
||||
} else {
|
||||
/*
|
||||
* This is a fetch completion event for a cancelled fetch.
|
||||
* This is a fetch completion event for a canceled fetch.
|
||||
* Clean up and don't resume the find.
|
||||
*/
|
||||
fetch_cancelled = ISC_TRUE;
|
||||
fetch_canceled = ISC_TRUE;
|
||||
}
|
||||
UNLOCK(&client->query.fetchlock);
|
||||
INSIST(client->query.fetch == NULL);
|
||||
|
||||
client->query.attributes &= ~NS_QUERYATTR_RECURSING;
|
||||
dns_resolver_destroyfetch(&devent->fetch);
|
||||
fetch = devent->fetch;
|
||||
devent->fetch = NULL;
|
||||
|
||||
/*
|
||||
* If this client is shutting down, or this transaction
|
||||
* has timed out, do not resume the find.
|
||||
*/
|
||||
client_shuttingdown = ns_client_shuttingdown(client);
|
||||
if (fetch_cancelled || client_shuttingdown) {
|
||||
if (fetch_canceled || client_shuttingdown) {
|
||||
if (devent->node != NULL)
|
||||
dns_db_detachnode(devent->db, &devent->node);
|
||||
if (devent->db != NULL)
|
||||
@@ -2916,8 +2934,8 @@ query_resume(isc_task_t *task, isc_event_t *event) {
|
||||
if (devent->sigrdataset != NULL)
|
||||
query_putrdataset(client, &devent->sigrdataset);
|
||||
isc_event_free(&event);
|
||||
if (fetch_cancelled)
|
||||
query_error(client, DNS_R_SERVFAIL);
|
||||
if (fetch_canceled)
|
||||
query_error(client, DNS_R_SERVFAIL, __LINE__);
|
||||
else
|
||||
query_next(client, ISC_R_CANCELED);
|
||||
/*
|
||||
@@ -2925,8 +2943,22 @@ query_resume(isc_task_t *task, isc_event_t *event) {
|
||||
*/
|
||||
ns_client_detach(&client);
|
||||
} else {
|
||||
query_find(client, devent, 0);
|
||||
result = query_find(client, devent, 0);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
if (result == DNS_R_SERVFAIL)
|
||||
errorloglevel = ISC_LOG_DEBUG(2);
|
||||
else
|
||||
errorloglevel = ISC_LOG_DEBUG(4);
|
||||
if (isc_log_wouldlog(ns_g_lctx, errorloglevel)) {
|
||||
dns_resolver_logfetch(fetch, ns_g_lctx,
|
||||
logcategory,
|
||||
NS_LOGMODULE_QUERY,
|
||||
errorloglevel, ISC_FALSE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dns_resolver_destroyfetch(&fetch);
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
@@ -3053,6 +3085,7 @@ query_recurse(ns_client_t *client, dns_rdatatype_t qtype, dns_name_t *qdomain,
|
||||
do { \
|
||||
eresult = r; \
|
||||
want_restart = ISC_FALSE; \
|
||||
line = __LINE__; \
|
||||
} while (0)
|
||||
|
||||
/*
|
||||
@@ -3292,8 +3325,7 @@ warn_rfc1918(ns_client_t *client, dns_name_t *fname, dns_rdataset_t *rdataset) {
|
||||
RUNTIME_CHECK(result == ISC_R_SUCCESS);
|
||||
dns_rdataset_current(&found, &rdata);
|
||||
result = dns_rdata_tostruct(&rdata, &soa, NULL);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return;
|
||||
RUNTIME_CHECK(result == ISC_R_SUCCESS);
|
||||
if (dns_name_equal(&soa.origin, &prisoner) &&
|
||||
dns_name_equal(&soa.contact, &hostmaster)) {
|
||||
char buf[DNS_NAME_FORMATSIZE];
|
||||
@@ -3315,7 +3347,7 @@ warn_rfc1918(ns_client_t *client, dns_name_t *fname, dns_rdataset_t *rdataset) {
|
||||
* If 'event' is non-NULL, we are returning from recursion and 'qtype'
|
||||
* is ignored. Otherwise, 'qtype' is the query type.
|
||||
*/
|
||||
static void
|
||||
static isc_result_t
|
||||
query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
{
|
||||
dns_db_t *db, *zdb;
|
||||
@@ -3344,6 +3376,7 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
isc_boolean_t empty_wild;
|
||||
dns_rdataset_t *noqname;
|
||||
isc_boolean_t resuming;
|
||||
int line = -1;
|
||||
|
||||
CTRACE("query_find");
|
||||
|
||||
@@ -4388,7 +4421,8 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
* or if the client requested recursion and thus wanted
|
||||
* the complete answer, send an error response.
|
||||
*/
|
||||
query_error(client, eresult);
|
||||
INSIST(line >= 0);
|
||||
query_error(client, eresult, line);
|
||||
}
|
||||
ns_client_detach(&client);
|
||||
} else if (!RECURSING(client)) {
|
||||
@@ -4405,7 +4439,7 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
* is in the glue sort it to the start of the additional
|
||||
* section.
|
||||
*/
|
||||
if (client->message->counts[DNS_SECTION_ANSWER] == 0 &&
|
||||
if (ISC_LIST_EMPTY(client->message->sections[DNS_SECTION_ANSWER]) &&
|
||||
client->message->rcode == dns_rcode_noerror &&
|
||||
(qtype == dns_rdatatype_a || qtype == dns_rdatatype_aaaa))
|
||||
answer_in_glue(client, qtype);
|
||||
@@ -4414,10 +4448,22 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
client->view->auth_nxdomain == ISC_TRUE)
|
||||
client->message->flags |= DNS_MESSAGEFLAG_AA;
|
||||
|
||||
/*
|
||||
* If the response is somehow unexpected for the client and this
|
||||
* is a result of recursion, return an error to the caller
|
||||
* to indicate it may need to be logged.
|
||||
*/
|
||||
if (resuming &&
|
||||
(ISC_LIST_EMPTY(client->message->sections[DNS_SECTION_ANSWER]) ||
|
||||
client->message->rcode != dns_rcode_noerror))
|
||||
eresult = ISC_R_FAILURE;
|
||||
|
||||
query_send(client);
|
||||
ns_client_detach(&client);
|
||||
}
|
||||
CTRACE("query_find: done");
|
||||
|
||||
return (eresult);
|
||||
}
|
||||
|
||||
static inline void
|
||||
@@ -4444,6 +4490,48 @@ log_query(ns_client_t *client) {
|
||||
(client->opt != NULL) ? "E" : "");
|
||||
}
|
||||
|
||||
static inline void
|
||||
log_queryerror(ns_client_t *client, isc_result_t result, int line, int level) {
|
||||
char namebuf[DNS_NAME_FORMATSIZE];
|
||||
char typename[DNS_RDATATYPE_FORMATSIZE];
|
||||
char classname[DNS_RDATACLASS_FORMATSIZE];
|
||||
const char *namep, *typep, *classp, *sep1, *sep2;
|
||||
dns_rdataset_t *rdataset;
|
||||
|
||||
if (!isc_log_wouldlog(ns_g_lctx, level))
|
||||
return;
|
||||
|
||||
namep = typep = classp = sep1 = sep2 = "";
|
||||
|
||||
/*
|
||||
* Query errors can happen for various reasons. In some cases we cannot
|
||||
* even assume the query contains a valid question section, so we should
|
||||
* expect exceptional cases.
|
||||
*/
|
||||
if (client->query.origqname != NULL) {
|
||||
dns_name_format(client->query.origqname, namebuf,
|
||||
sizeof(namebuf));
|
||||
namep = namebuf;
|
||||
sep1 = " for ";
|
||||
|
||||
rdataset = ISC_LIST_HEAD(client->query.origqname->list);
|
||||
if (rdataset != NULL) {
|
||||
dns_rdataclass_format(rdataset->rdclass, classname,
|
||||
sizeof(classname));
|
||||
classp = classname;
|
||||
dns_rdatatype_format(rdataset->type, typename,
|
||||
sizeof(typename));
|
||||
typep = typename;
|
||||
sep2 = "/";
|
||||
}
|
||||
}
|
||||
|
||||
ns_client_log(client, NS_LOGCATEGORY_QUERY_EERRORS, NS_LOGMODULE_QUERY,
|
||||
level, "query failed (%s)%s%s%s%s%s%s at %s:%d",
|
||||
isc_result_totext(result), sep1, namep, sep2,
|
||||
classp, sep2, typep, __FILE__, line);
|
||||
}
|
||||
|
||||
void
|
||||
ns_query_start(ns_client_t *client) {
|
||||
isc_result_t result;
|
||||
@@ -4504,7 +4592,7 @@ ns_query_start(ns_client_t *client) {
|
||||
*/
|
||||
result = dns_message_firstname(message, DNS_SECTION_QUESTION);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
query_error(client, result);
|
||||
query_error(client, result, __LINE__);
|
||||
return;
|
||||
}
|
||||
dns_message_currentname(message, DNS_SECTION_QUESTION,
|
||||
@@ -4517,9 +4605,9 @@ ns_query_start(ns_client_t *client) {
|
||||
* There's more than one QNAME in the question
|
||||
* section.
|
||||
*/
|
||||
query_error(client, DNS_R_FORMERR);
|
||||
query_error(client, DNS_R_FORMERR, __LINE__);
|
||||
} else
|
||||
query_error(client, result);
|
||||
query_error(client, result, __LINE__);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -4530,7 +4618,7 @@ ns_query_start(ns_client_t *client) {
|
||||
* Check for multiple question queries, since edns1 is dead.
|
||||
*/
|
||||
if (message->counts[DNS_SECTION_QUESTION] > 1) {
|
||||
query_error(client, DNS_R_FORMERR);
|
||||
query_error(client, DNS_R_FORMERR, __LINE__);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -4550,7 +4638,7 @@ ns_query_start(ns_client_t *client) {
|
||||
return;
|
||||
case dns_rdatatype_maila:
|
||||
case dns_rdatatype_mailb:
|
||||
query_error(client, DNS_R_NOTIMP);
|
||||
query_error(client, DNS_R_NOTIMP, __LINE__);
|
||||
return;
|
||||
case dns_rdatatype_tkey:
|
||||
result = dns_tkey_processquery(client->message,
|
||||
@@ -4559,14 +4647,21 @@ ns_query_start(ns_client_t *client) {
|
||||
if (result == ISC_R_SUCCESS)
|
||||
query_send(client);
|
||||
else
|
||||
query_error(client, result);
|
||||
query_error(client, result, __LINE__);
|
||||
return;
|
||||
default: /* TSIG, etc. */
|
||||
query_error(client, DNS_R_FORMERR);
|
||||
query_error(client, DNS_R_FORMERR, __LINE__);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Turn on minimal response for DNSKEY and DS queries.
|
||||
*/
|
||||
if (qtype == dns_rdatatype_dnskey || qtype == dns_rdatatype_ds)
|
||||
client->query.attributes |= (NS_QUERYATTR_NOAUTHORITY |
|
||||
NS_QUERYATTR_NOADDITIONAL);
|
||||
|
||||
/*
|
||||
* If the client has requested that DNSSEC checking be disabled,
|
||||
* allow lookups to return pending data and instruct the resolver
|
||||
@@ -4623,5 +4718,5 @@ ns_query_start(ns_client_t *client) {
|
||||
|
||||
qclient = NULL;
|
||||
ns_client_attach(client, &qclient);
|
||||
query_find(qclient, NULL, qtype);
|
||||
(void)query_find(qclient, NULL, qtype);
|
||||
}
|
||||
|
||||
+140
-56
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2010 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: server.c,v 1.419.18.68 2008/09/04 23:46:08 tbox Exp $ */
|
||||
/* $Id: server.c,v 1.419.18.77 2010/02/26 23:46:32 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -209,7 +209,7 @@ static const struct {
|
||||
/* Local IPv6 Unicast Addresses */
|
||||
{ "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA", ISC_FALSE },
|
||||
{ "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA", ISC_FALSE },
|
||||
/* LOCALLY ASSIGNED LOCAL ADDRES S SCOPE */
|
||||
/* LOCALLY ASSIGNED LOCAL ADDRESS SCOPE */
|
||||
{ "D.F.IP6.ARPA", ISC_FALSE },
|
||||
{ "8.E.F.IP6.ARPA", ISC_FALSE }, /* LINK LOCAL */
|
||||
{ "9.E.F.IP6.ARPA", ISC_FALSE }, /* LINK LOCAL */
|
||||
@@ -251,9 +251,8 @@ static void
|
||||
end_reserved_dispatches(ns_server_t *server, isc_boolean_t all);
|
||||
|
||||
/*%
|
||||
* Configure a single view ACL at '*aclp'. Get its configuration by
|
||||
* calling 'getvcacl' (for per-view configuration) and maybe 'getscacl'
|
||||
* (for a global default).
|
||||
* Configure a single view ACL at '*aclp'. Get its configuration from
|
||||
* 'vconfig' (for per-view configuration) and maybe from 'config'
|
||||
*/
|
||||
static isc_result_t
|
||||
configure_view_acl(const cfg_obj_t *vconfig, const cfg_obj_t *config,
|
||||
@@ -902,6 +901,23 @@ check_dbtype(dns_zone_t **zonep, unsigned int dbtypec, const char **dbargv,
|
||||
}
|
||||
|
||||
|
||||
static isc_boolean_t
|
||||
cache_reusable(dns_view_t *originview, dns_view_t *view,
|
||||
isc_boolean_t new_zero_no_soattl)
|
||||
{
|
||||
if (originview->checknames != view->checknames ||
|
||||
dns_resolver_getzeronosoattl(originview->resolver) !=
|
||||
new_zero_no_soattl ||
|
||||
originview->acceptexpired != view->acceptexpired ||
|
||||
originview->enablevalidation != view->enablevalidation ||
|
||||
originview->maxcachettl != view->maxcachettl ||
|
||||
originview->maxncachettl != view->maxncachettl) {
|
||||
return (ISC_FALSE);
|
||||
}
|
||||
|
||||
return (ISC_TRUE);
|
||||
}
|
||||
|
||||
/*
|
||||
* Configure 'view' according to 'vconfig', taking defaults from 'config'
|
||||
* where values are missing in 'vconfig'.
|
||||
@@ -956,6 +972,7 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
isc_boolean_t rfc1918;
|
||||
isc_boolean_t empty_zones_enable;
|
||||
const cfg_obj_t *disablelist = NULL;
|
||||
isc_boolean_t zero_no_soattl;
|
||||
|
||||
REQUIRE(DNS_VIEW_VALID(view));
|
||||
|
||||
@@ -1095,6 +1112,55 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Obtain configuration parameters that affect the decision of whether
|
||||
* we can reuse/share an existing cache.
|
||||
*/
|
||||
/* Check-names. */
|
||||
obj = NULL;
|
||||
result = ns_checknames_get(maps, "response", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
|
||||
str = cfg_obj_asstring(obj);
|
||||
if (strcasecmp(str, "fail") == 0) {
|
||||
check |= DNS_RESOLVER_CHECKNAMES |
|
||||
DNS_RESOLVER_CHECKNAMESFAIL;
|
||||
view->checknames = ISC_TRUE;
|
||||
} else if (strcasecmp(str, "warn") == 0) {
|
||||
check |= DNS_RESOLVER_CHECKNAMES;
|
||||
view->checknames = ISC_FALSE;
|
||||
} else if (strcasecmp(str, "ignore") == 0) {
|
||||
view->checknames = ISC_FALSE;
|
||||
} else
|
||||
INSIST(0);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "zero-no-soa-ttl-cache", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
zero_no_soattl = cfg_obj_asboolean(obj);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "dnssec-accept-expired", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
view->acceptexpired = cfg_obj_asboolean(obj);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "dnssec-validation", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
view->enablevalidation = cfg_obj_asboolean(obj);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "max-cache-ttl", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
view->maxcachettl = cfg_obj_asuint32(obj);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "max-ncache-ttl", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
view->maxncachettl = cfg_obj_asuint32(obj);
|
||||
if (view->maxncachettl > 7 * 24 * 3600)
|
||||
view->maxncachettl = 7 * 24 * 3600;
|
||||
|
||||
/*
|
||||
* Configure the view's cache. Try to reuse an existing
|
||||
* cache if possible, otherwise create a new cache.
|
||||
@@ -1114,14 +1180,23 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
if (result != ISC_R_NOTFOUND && result != ISC_R_SUCCESS)
|
||||
goto cleanup;
|
||||
if (pview != NULL) {
|
||||
INSIST(pview->cache != NULL);
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL,
|
||||
NS_LOGMODULE_SERVER, ISC_LOG_DEBUG(3),
|
||||
"reusing existing cache");
|
||||
reused_cache = ISC_TRUE;
|
||||
dns_cache_attach(pview->cache, &cache);
|
||||
if (cache_reusable(pview, view, zero_no_soattl)) {
|
||||
INSIST(pview->cache != NULL);
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL,
|
||||
NS_LOGMODULE_SERVER, ISC_LOG_DEBUG(3),
|
||||
"reusing existing cache");
|
||||
reused_cache = ISC_TRUE;
|
||||
dns_cache_attach(pview->cache, &cache);
|
||||
} else {
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL,
|
||||
NS_LOGMODULE_SERVER, ISC_LOG_DEBUG(1),
|
||||
"cache cannot be reused for view %s "
|
||||
"due to configuration parameter mismatch",
|
||||
view->name);
|
||||
}
|
||||
dns_view_detach(&pview);
|
||||
} else {
|
||||
}
|
||||
if (cache == NULL) {
|
||||
CHECK(isc_mem_create(0, 0, &cmctx));
|
||||
CHECK(dns_cache_create(cmctx, ns_g_taskmgr, ns_g_timermgr,
|
||||
view->rdclass, "rbt", 0, NULL, &cache));
|
||||
@@ -1235,11 +1310,6 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
lame_ttl = 1800;
|
||||
dns_resolver_setlamettl(view->resolver, lame_ttl);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "zero-no-soa-ttl-cache", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
dns_resolver_setzeronosoattl(view->resolver, cfg_obj_asboolean(obj));
|
||||
|
||||
/*
|
||||
* Set the resolver's EDNS UDP size.
|
||||
*/
|
||||
@@ -1491,10 +1561,11 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
*/
|
||||
if (view->queryacl == NULL && view->recursionacl != NULL)
|
||||
dns_acl_attach(view->recursionacl, &view->queryacl);
|
||||
if (view->queryacl == NULL)
|
||||
if (view->queryacl == NULL && view->recursion)
|
||||
CHECK(configure_view_acl(vconfig, config, "allow-query",
|
||||
actx, ns_g_mctx, &view->queryacl));
|
||||
if (view->recursionacl == NULL && view->queryacl != NULL)
|
||||
if (view->recursion &&
|
||||
view->recursionacl == NULL && view->queryacl != NULL)
|
||||
dns_acl_attach(view->queryacl, &view->recursionacl);
|
||||
|
||||
/*
|
||||
@@ -1503,10 +1574,18 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
if (view->recursionacl == NULL && view->recursion)
|
||||
CHECK(configure_view_acl(NULL, ns_g_config, "allow-recursion",
|
||||
actx, ns_g_mctx, &view->recursionacl));
|
||||
if (view->queryacl == NULL)
|
||||
CHECK(configure_view_acl(NULL, ns_g_config,
|
||||
"allow-query-cache", actx,
|
||||
ns_g_mctx, &view->queryacl));
|
||||
if (view->queryacl == NULL) {
|
||||
if (view->recursion)
|
||||
CHECK(configure_view_acl(NULL, ns_g_config,
|
||||
"allow-query-cache", actx,
|
||||
ns_g_mctx, &view->queryacl));
|
||||
else {
|
||||
if (view->queryacl != NULL)
|
||||
dns_acl_detach(&view->queryacl);
|
||||
CHECK(dns_acl_none(ns_g_mctx, &view->queryacl));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
CHECK(configure_view_acl(vconfig, config, "sortlist",
|
||||
actx, ns_g_mctx, &view->sortlist));
|
||||
@@ -1538,16 +1617,6 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
view->enablednssec = cfg_obj_asboolean(obj);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "dnssec-accept-expired", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
view->acceptexpired = cfg_obj_asboolean(obj);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "dnssec-validation", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
view->enablevalidation = cfg_obj_asboolean(obj);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "dnssec-lookaside", &obj);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
@@ -1602,18 +1671,6 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
if (result == ISC_R_SUCCESS)
|
||||
CHECK(mustbesecure(obj, view->resolver));
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "max-cache-ttl", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
view->maxcachettl = cfg_obj_asuint32(obj);
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "max-ncache-ttl", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
view->maxncachettl = cfg_obj_asuint32(obj);
|
||||
if (view->maxncachettl > 7 * 24 * 3600)
|
||||
view->maxncachettl = 7 * 24 * 3600;
|
||||
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "preferred-glue", &obj);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
@@ -1959,6 +2016,8 @@ configure_forward(const cfg_obj_t *config, dns_view_t *view, dns_name_t *origin,
|
||||
isc_result_t result;
|
||||
in_port_t port;
|
||||
|
||||
ISC_LIST_INIT(addresses);
|
||||
|
||||
/*
|
||||
* Determine which port to send forwarded requests to.
|
||||
*/
|
||||
@@ -1984,8 +2043,6 @@ configure_forward(const cfg_obj_t *config, dns_view_t *view, dns_name_t *origin,
|
||||
if (forwarders != NULL)
|
||||
faddresses = cfg_tuple_get(forwarders, "addresses");
|
||||
|
||||
ISC_LIST_INIT(addresses);
|
||||
|
||||
for (element = cfg_list_first(faddresses);
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
@@ -4506,6 +4563,8 @@ dumpdone(void *arg, isc_result_t result) {
|
||||
}
|
||||
if (dctx->cache != NULL) {
|
||||
dns_adb_dump(dctx->view->view->adb, dctx->fp);
|
||||
dns_resolver_printbadcache(dctx->view->view->resolver,
|
||||
dctx->fp);
|
||||
dns_db_detach(&dctx->cache);
|
||||
}
|
||||
if (dctx->dumpzones) {
|
||||
@@ -4884,7 +4943,9 @@ ns_server_status(ns_server_t *server, isc_buffer_t *text) {
|
||||
* Act on a "freeze" or "thaw" command from the command channel.
|
||||
*/
|
||||
isc_result_t
|
||||
ns_server_freeze(ns_server_t *server, isc_boolean_t freeze, char *args) {
|
||||
ns_server_freeze(ns_server_t *server, isc_boolean_t freeze, char *args,
|
||||
isc_buffer_t *text)
|
||||
{
|
||||
isc_result_t result, tresult;
|
||||
dns_zone_t *zone = NULL;
|
||||
dns_zonetype_t type;
|
||||
@@ -4894,6 +4955,7 @@ ns_server_freeze(ns_server_t *server, isc_boolean_t freeze, char *args) {
|
||||
char *journal;
|
||||
const char *vname, *sep;
|
||||
isc_boolean_t frozen;
|
||||
const char *msg = NULL;
|
||||
|
||||
result = zone_from_args(server, args, &zone);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
@@ -4926,25 +4988,47 @@ ns_server_freeze(ns_server_t *server, isc_boolean_t freeze, char *args) {
|
||||
|
||||
frozen = dns_zone_getupdatedisabled(zone);
|
||||
if (freeze) {
|
||||
if (frozen)
|
||||
if (frozen) {
|
||||
msg = "WARNING: The zone was already frozen.\n"
|
||||
"Someone else may be editing it or "
|
||||
"it may still be re-loading.";
|
||||
result = DNS_R_FROZEN;
|
||||
if (result == ISC_R_SUCCESS)
|
||||
}
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
result = dns_zone_flush(zone);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
msg = "Flushing the zone updates to "
|
||||
"disk failed.";
|
||||
}
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
journal = dns_zone_getjournal(zone);
|
||||
if (journal != NULL)
|
||||
(void)isc_file_remove(journal);
|
||||
}
|
||||
if (result == ISC_R_SUCCESS)
|
||||
dns_zone_setupdatedisabled(zone, freeze);
|
||||
} else {
|
||||
if (frozen) {
|
||||
result = dns_zone_load(zone);
|
||||
if (result == DNS_R_CONTINUE ||
|
||||
result == DNS_R_UPTODATE)
|
||||
result = dns_zone_loadandthaw(zone);
|
||||
switch (result) {
|
||||
case ISC_R_SUCCESS:
|
||||
case DNS_R_UPTODATE:
|
||||
msg = "The zone reload and thaw was "
|
||||
"successful.";
|
||||
result = ISC_R_SUCCESS;
|
||||
break;
|
||||
case DNS_R_CONTINUE:
|
||||
msg = "A zone reload and thaw was started.\n"
|
||||
"Check the logs to see the result.";
|
||||
result = ISC_R_SUCCESS;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (result == ISC_R_SUCCESS)
|
||||
dns_zone_setupdatedisabled(zone, freeze);
|
||||
|
||||
if (msg != NULL && strlen(msg) < isc_buffer_availablelength(text))
|
||||
isc_buffer_putmem(text, (const unsigned char *)msg,
|
||||
strlen(msg) + 1);
|
||||
|
||||
view = dns_zone_getview(zone);
|
||||
if (strcmp(view->name, "_bind") == 0 ||
|
||||
|
||||
+16
-6
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2006, 2008, 2009 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.66.18.17 2008/10/24 01:43:17 tbox Exp $ */
|
||||
/* $Id: os.c,v 1.66.18.21 2009/03/02 03:06:25 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -405,10 +405,12 @@ ns_os_started(void) {
|
||||
char buf = 0;
|
||||
|
||||
/*
|
||||
* Signal to the parent that we stated successfully.
|
||||
* Signal to the parent that we started successfully.
|
||||
*/
|
||||
if (dfd[0] != -1 && dfd[1] != -1) {
|
||||
write(dfd[1], &buf, 1);
|
||||
if (write(dfd[1], &buf, 1) != 1)
|
||||
ns_main_earlyfatal("unable to signal parent that we "
|
||||
"otherwise started successfully.");
|
||||
close(dfd[1]);
|
||||
dfd[0] = dfd[1] = -1;
|
||||
}
|
||||
@@ -448,10 +450,14 @@ ns_os_chroot(const char *root) {
|
||||
ns_smf_chroot = 0;
|
||||
#endif
|
||||
if (root != NULL) {
|
||||
#ifdef HAVE_CHROOT
|
||||
if (chroot(root) < 0) {
|
||||
isc__strerror(errno, strbuf, sizeof(strbuf));
|
||||
ns_main_earlyfatal("chroot(): %s", strbuf);
|
||||
}
|
||||
#else
|
||||
ns_main_earlyfatal("chroot(): disabled");
|
||||
#endif
|
||||
if (chdir("/") < 0) {
|
||||
isc__strerror(errno, strbuf, sizeof(strbuf));
|
||||
ns_main_earlyfatal("chdir(/): %s", strbuf);
|
||||
@@ -584,7 +590,8 @@ safe_open(const char *filename, isc_boolean_t append) {
|
||||
fd = open(filename, O_WRONLY|O_CREAT|O_APPEND,
|
||||
S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH);
|
||||
else {
|
||||
(void)unlink(filename);
|
||||
if (unlink(filename) < 0 && errno != ENOENT)
|
||||
return (-1);
|
||||
fd = open(filename, O_WRONLY|O_CREAT|O_EXCL,
|
||||
S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH);
|
||||
}
|
||||
@@ -593,8 +600,11 @@ safe_open(const char *filename, isc_boolean_t append) {
|
||||
|
||||
static void
|
||||
cleanup_pidfile(void) {
|
||||
int n;
|
||||
if (pidfile != NULL) {
|
||||
(void)unlink(pidfile);
|
||||
n = unlink(pidfile);
|
||||
if (n == -1 && errno != ENOENT)
|
||||
ns_main_earlywarning("unlink '%s': failed", pidfile);
|
||||
free(pidfile);
|
||||
}
|
||||
pidfile = NULL;
|
||||
|
||||
+207
-43
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 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: update.c,v 1.109.18.27 2008/02/07 03:16:08 marka Exp $ */
|
||||
/* $Id: update.c,v 1.109.18.35 2011/03/12 04:56:41 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -619,6 +619,45 @@ rrset_exists(dns_db_t *db, dns_dbversion_t *ver,
|
||||
RETURN_EXISTENCE_FLAG;
|
||||
}
|
||||
|
||||
/*%
|
||||
* Set '*visible' to true if the RRset exists and is part of the
|
||||
* visible zone. Otherwise '*visible' is set to false unless a
|
||||
* error occurs.
|
||||
*/
|
||||
static isc_result_t
|
||||
rrset_visible(dns_db_t *db, dns_dbversion_t *ver, dns_name_t *name,
|
||||
dns_rdatatype_t type, isc_boolean_t *visible)
|
||||
{
|
||||
isc_result_t result;
|
||||
dns_fixedname_t fixed;
|
||||
|
||||
dns_fixedname_init(&fixed);
|
||||
result = dns_db_find(db, name, ver, type, DNS_DBFIND_NOWILD,
|
||||
(isc_stdtime_t) 0, NULL,
|
||||
dns_fixedname_name(&fixed), NULL, NULL);
|
||||
switch (result) {
|
||||
case ISC_R_SUCCESS:
|
||||
*visible = ISC_TRUE;
|
||||
break;
|
||||
/*
|
||||
* Glue, obscured, deleted or replaced records.
|
||||
*/
|
||||
case DNS_R_DELEGATION:
|
||||
case DNS_R_DNAME:
|
||||
case DNS_R_CNAME:
|
||||
case DNS_R_NXDOMAIN:
|
||||
case DNS_R_NXRRSET:
|
||||
case DNS_R_EMPTYNAME:
|
||||
case DNS_R_COVERINGNSEC:
|
||||
*visible = ISC_FALSE;
|
||||
result = ISC_R_SUCCESS;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return (result);
|
||||
}
|
||||
|
||||
/*%
|
||||
* Helper function for cname_incompatible_rrset_exists.
|
||||
*/
|
||||
@@ -738,8 +777,8 @@ ssu_checkall(dns_db_t *db, dns_dbversion_t *ver, dns_name_t *name,
|
||||
* In the RFC2136 section 3.2.5, this is the pseudocode involving
|
||||
* a variable called "temp", a mapping of <name, type> tuples to rrsets.
|
||||
*
|
||||
* Here, we represent the "temp" data structure as (non-minimial) "dns_diff_t"
|
||||
* where each typle has op==DNS_DIFFOP_EXISTS.
|
||||
* Here, we represent the "temp" data structure as (non-minimal) "dns_diff_t"
|
||||
* where each tuple has op==DNS_DIFFOP_EXISTS.
|
||||
*/
|
||||
|
||||
|
||||
@@ -865,7 +904,11 @@ temp_check(isc_mem_t *mctx, dns_diff_t *temp, dns_db_t *db,
|
||||
if (type == dns_rdatatype_rrsig ||
|
||||
type == dns_rdatatype_sig)
|
||||
covers = dns_rdata_covers(&t->rdata);
|
||||
else
|
||||
else if (type == dns_rdatatype_any) {
|
||||
dns_db_detachnode(db, &node);
|
||||
dns_diff_clear(&trash);
|
||||
return (DNS_R_NXRRSET);
|
||||
} else
|
||||
covers = 0;
|
||||
|
||||
/*
|
||||
@@ -1007,6 +1050,16 @@ true_p(dns_rdata_t *update_rr, dns_rdata_t *db_rr) {
|
||||
return (ISC_TRUE);
|
||||
}
|
||||
|
||||
/*%
|
||||
* Return true if the record is a RRSIG.
|
||||
*/
|
||||
static isc_boolean_t
|
||||
rrsig_p(dns_rdata_t *update_rr, dns_rdata_t *db_rr) {
|
||||
UNUSED(update_rr);
|
||||
return ((db_rr->type == dns_rdatatype_rrsig) ?
|
||||
ISC_TRUE : ISC_FALSE);
|
||||
}
|
||||
|
||||
/*%
|
||||
* Return true iff the two RRs have identical rdata.
|
||||
*/
|
||||
@@ -1425,10 +1478,9 @@ uniqify_name_list(dns_diff_t *list) {
|
||||
return (result);
|
||||
}
|
||||
|
||||
|
||||
static isc_result_t
|
||||
is_glue(dns_db_t *db, dns_dbversion_t *ver, dns_name_t *name,
|
||||
isc_boolean_t *flag)
|
||||
is_active(dns_db_t *db, dns_dbversion_t *ver, dns_name_t *name,
|
||||
isc_boolean_t *flag, isc_boolean_t *cut, isc_boolean_t *unsecure)
|
||||
{
|
||||
isc_result_t result;
|
||||
dns_fixedname_t foundname;
|
||||
@@ -1438,8 +1490,11 @@ is_glue(dns_db_t *db, dns_dbversion_t *ver, dns_name_t *name,
|
||||
(isc_stdtime_t) 0, NULL,
|
||||
dns_fixedname_name(&foundname),
|
||||
NULL, NULL);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
if (result == ISC_R_SUCCESS || result == DNS_R_EMPTYNAME) {
|
||||
*flag = ISC_FALSE;
|
||||
*cut = ISC_FALSE;
|
||||
if (unsecure != NULL)
|
||||
*unsecure = ISC_FALSE;
|
||||
return (ISC_R_SUCCESS);
|
||||
} else if (result == DNS_R_ZONECUT) {
|
||||
/*
|
||||
@@ -1447,11 +1502,36 @@ is_glue(dns_db_t *db, dns_dbversion_t *ver, dns_name_t *name,
|
||||
* non-delegation will be omitted from the type bit map.
|
||||
*/
|
||||
*flag = ISC_FALSE;
|
||||
*cut = ISC_TRUE;
|
||||
if (unsecure != NULL) {
|
||||
/*
|
||||
* We are at the zonecut. Check to see if there
|
||||
* is a DS RRset.
|
||||
*/
|
||||
if (dns_db_find(db, name, ver, dns_rdatatype_ds, 0,
|
||||
(isc_stdtime_t) 0, NULL,
|
||||
dns_fixedname_name(&foundname),
|
||||
NULL, NULL) == DNS_R_NXRRSET)
|
||||
*unsecure = ISC_TRUE;
|
||||
else
|
||||
*unsecure = ISC_FALSE;
|
||||
}
|
||||
return (ISC_R_SUCCESS);
|
||||
} else if (result == DNS_R_GLUE || result == DNS_R_DNAME) {
|
||||
*flag = ISC_TRUE;
|
||||
} else if (result == DNS_R_GLUE || result == DNS_R_DNAME ||
|
||||
result == DNS_R_DELEGATION || result == DNS_R_NXDOMAIN) {
|
||||
*flag = ISC_FALSE;
|
||||
*cut = ISC_FALSE;
|
||||
if (unsecure != NULL)
|
||||
*unsecure = ISC_FALSE;
|
||||
return (ISC_R_SUCCESS);
|
||||
} else {
|
||||
/*
|
||||
* Silence compiler.
|
||||
*/
|
||||
*flag = ISC_FALSE;
|
||||
*cut = ISC_FALSE;
|
||||
if (unsecure != NULL)
|
||||
*unsecure = ISC_FALSE;
|
||||
return (result);
|
||||
}
|
||||
}
|
||||
@@ -1469,7 +1549,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;
|
||||
|
||||
CHECK(dns_db_createiterator(db, ISC_FALSE, &dbit));
|
||||
@@ -1655,7 +1735,7 @@ static isc_result_t
|
||||
add_sigs(ns_client_t *client, dns_zone_t *zone, dns_db_t *db,
|
||||
dns_dbversion_t *ver, dns_name_t *name, dns_rdatatype_t type,
|
||||
dns_diff_t *diff, dst_key_t **keys, unsigned int nkeys,
|
||||
isc_mem_t *mctx, isc_stdtime_t inception, isc_stdtime_t expire,
|
||||
isc_stdtime_t inception, isc_stdtime_t expire,
|
||||
isc_boolean_t check_ksk)
|
||||
{
|
||||
isc_result_t result;
|
||||
@@ -1666,6 +1746,7 @@ add_sigs(ns_client_t *client, dns_zone_t *zone, dns_db_t *db,
|
||||
unsigned char data[1024]; /* XXX */
|
||||
unsigned int i;
|
||||
isc_boolean_t added_sig = ISC_FALSE;
|
||||
isc_mem_t *mctx = client->mctx;
|
||||
|
||||
dns_rdataset_init(&rdataset);
|
||||
isc_buffer_init(&buffer, data, sizeof(data));
|
||||
@@ -1713,9 +1794,76 @@ add_sigs(ns_client_t *client, dns_zone_t *zone, dns_db_t *db,
|
||||
return (result);
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
add_exposed_sigs(ns_client_t *client, dns_zone_t *zone, dns_db_t *db,
|
||||
dns_dbversion_t *ver, dns_name_t *name, isc_boolean_t cut,
|
||||
dns_diff_t *diff, dst_key_t **keys, unsigned int nkeys,
|
||||
isc_stdtime_t inception, isc_stdtime_t expire,
|
||||
isc_boolean_t check_ksk)
|
||||
{
|
||||
isc_result_t result;
|
||||
dns_dbnode_t *node;
|
||||
dns_rdatasetiter_t *iter;
|
||||
|
||||
node = NULL;
|
||||
result = dns_db_findnode(db, name, ISC_FALSE, &node);
|
||||
if (result == ISC_R_NOTFOUND)
|
||||
return (ISC_R_SUCCESS);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
|
||||
iter = NULL;
|
||||
result = dns_db_allrdatasets(db, node, ver,
|
||||
(isc_stdtime_t) 0, &iter);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto cleanup_node;
|
||||
|
||||
for (result = dns_rdatasetiter_first(iter);
|
||||
result == ISC_R_SUCCESS;
|
||||
result = dns_rdatasetiter_next(iter))
|
||||
{
|
||||
dns_rdataset_t rdataset;
|
||||
dns_rdatatype_t type;
|
||||
isc_boolean_t flag;
|
||||
|
||||
dns_rdataset_init(&rdataset);
|
||||
dns_rdatasetiter_current(iter, &rdataset);
|
||||
type = rdataset.type;
|
||||
dns_rdataset_disassociate(&rdataset);
|
||||
|
||||
/*
|
||||
* We don't need to sign unsigned NSEC records at the cut
|
||||
* as they are handled elsewhere.
|
||||
*/
|
||||
if ((type == dns_rdatatype_rrsig) ||
|
||||
(cut && type != dns_rdatatype_ds))
|
||||
continue;
|
||||
result = rrset_exists(db, ver, name, dns_rdatatype_rrsig,
|
||||
type, &flag);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto cleanup_iterator;
|
||||
if (flag)
|
||||
continue;;
|
||||
result = add_sigs(client, zone, db, ver, name, type, diff,
|
||||
keys, nkeys, inception, expire, check_ksk);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto cleanup_iterator;
|
||||
}
|
||||
if (result == ISC_R_NOMORE)
|
||||
result = ISC_R_SUCCESS;
|
||||
|
||||
cleanup_iterator:
|
||||
dns_rdatasetiter_destroy(&iter);
|
||||
|
||||
cleanup_node:
|
||||
dns_db_detachnode(db, &node);
|
||||
|
||||
return (result);
|
||||
}
|
||||
|
||||
/*%
|
||||
* Update RRSIG and NSEC records affected by an update. The original
|
||||
* update, including the SOA serial update but exluding the RRSIG & NSEC
|
||||
* update, including the SOA serial update but excluding the RRSIG & NSEC
|
||||
* changes, is in "diff" and has already been applied to "newver" of "db".
|
||||
* The database version prior to the update is "oldver".
|
||||
*
|
||||
@@ -1747,6 +1895,7 @@ update_signatures(ns_client_t *client, dns_zone_t *zone, dns_db_t *db,
|
||||
dns_rdataset_t rdataset;
|
||||
dns_dbnode_t *node = NULL;
|
||||
isc_boolean_t check_ksk;
|
||||
isc_boolean_t cut;
|
||||
|
||||
dns_diff_init(client->mctx, &diffnames);
|
||||
dns_diff_init(client->mctx, &affected);
|
||||
@@ -1770,7 +1919,7 @@ update_signatures(ns_client_t *client, dns_zone_t *zone, dns_db_t *db,
|
||||
/*
|
||||
* Do we look at the KSK flag on the DNSKEY to determining which
|
||||
* keys sign which RRsets? First check the zone option then
|
||||
* check the keys flags to make sure atleast one has a ksk set
|
||||
* check the keys flags to make sure at least one has a ksk set
|
||||
* and one doesn't.
|
||||
*/
|
||||
check_ksk = ISC_TF((dns_zone_getoptions(zone) &
|
||||
@@ -1829,15 +1978,15 @@ update_signatures(ns_client_t *client, dns_zone_t *zone, dns_db_t *db,
|
||||
NULL, &sig_diff));
|
||||
|
||||
/*
|
||||
* If this RRset still exists after the update,
|
||||
* If this RRset is still visible after the update,
|
||||
* add a new signature for it.
|
||||
*/
|
||||
CHECK(rrset_exists(db, newver, name, type, 0, &flag));
|
||||
CHECK(rrset_visible(db, newver, name, type, &flag));
|
||||
if (flag) {
|
||||
CHECK(add_sigs(client, zone, db, newver, name,
|
||||
type, &sig_diff, zone_keys,
|
||||
nkeys, client->mctx, inception,
|
||||
expire, check_ksk));
|
||||
nkeys, inception, expire,
|
||||
check_ksk));
|
||||
}
|
||||
skip:
|
||||
/* Skip any other updates to the same RRset. */
|
||||
@@ -1944,27 +2093,34 @@ update_signatures(ns_client_t *client, dns_zone_t *zone, dns_db_t *db,
|
||||
t = ISC_LIST_NEXT(t, link))
|
||||
{
|
||||
isc_boolean_t exists;
|
||||
CHECK(name_exists(db, newver, &t->name, &exists));
|
||||
dns_name_t *name = &t->name;
|
||||
|
||||
CHECK(name_exists(db, newver, name, &exists));
|
||||
if (! exists)
|
||||
continue;
|
||||
CHECK(is_glue(db, newver, &t->name, &flag));
|
||||
if (flag) {
|
||||
CHECK(is_active(db, newver, name, &flag, &cut, NULL));
|
||||
if (!flag) {
|
||||
/*
|
||||
* This name is obscured. Delete any
|
||||
* existing NSEC record.
|
||||
*/
|
||||
CHECK(delete_if(true_p, db, newver, &t->name,
|
||||
CHECK(delete_if(true_p, db, newver, name,
|
||||
dns_rdatatype_nsec, 0,
|
||||
NULL, &nsec_diff));
|
||||
CHECK(delete_if(rrsig_p, db, newver, name,
|
||||
dns_rdatatype_any, 0, NULL, diff));
|
||||
} else {
|
||||
/*
|
||||
* This name is not obscured. It should have a NSEC.
|
||||
*/
|
||||
CHECK(rrset_exists(db, newver, &t->name,
|
||||
CHECK(rrset_exists(db, newver, name,
|
||||
dns_rdatatype_nsec, 0, &flag));
|
||||
if (! flag)
|
||||
CHECK(add_placeholder_nsec(db, newver, &t->name,
|
||||
diff));
|
||||
CHECK(add_exposed_sigs(client, zone, db, newver, name,
|
||||
cut, diff, zone_keys, nkeys,
|
||||
inception, expire, check_ksk));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2022,8 +2178,8 @@ update_signatures(ns_client_t *client, dns_zone_t *zone, dns_db_t *db,
|
||||
} else if (t->op == DNS_DIFFOP_ADD) {
|
||||
CHECK(add_sigs(client, zone, db, newver, &t->name,
|
||||
dns_rdatatype_nsec, &sig_diff,
|
||||
zone_keys, nkeys, client->mctx,
|
||||
inception, expire, check_ksk));
|
||||
zone_keys, nkeys, inception, expire,
|
||||
check_ksk));
|
||||
} else {
|
||||
INSIST(0);
|
||||
}
|
||||
@@ -2197,29 +2353,37 @@ ns_update_start(ns_client_t *client, isc_result_t sigresult) {
|
||||
static isc_result_t
|
||||
remove_orphaned_ds(dns_db_t *db, dns_dbversion_t *newver, dns_diff_t *diff) {
|
||||
isc_result_t result;
|
||||
isc_boolean_t ns_exists, ds_exists;
|
||||
dns_difftuple_t *t;
|
||||
isc_boolean_t ns_exists;
|
||||
dns_difftuple_t *tupple;
|
||||
dns_diff_t temp_diff;
|
||||
|
||||
for (t = ISC_LIST_HEAD(diff->tuples);
|
||||
t != NULL;
|
||||
t = ISC_LIST_NEXT(t, link)) {
|
||||
if (t->op != DNS_DIFFOP_ADD ||
|
||||
t->rdata.type != dns_rdatatype_ns)
|
||||
dns_diff_init(diff->mctx, &temp_diff);
|
||||
|
||||
for (tupple = ISC_LIST_HEAD(diff->tuples);
|
||||
tupple != NULL;
|
||||
tupple = ISC_LIST_NEXT(tupple, link)) {
|
||||
if (!((tupple->op == DNS_DIFFOP_DEL &&
|
||||
tupple->rdata.type == dns_rdatatype_ns) ||
|
||||
(tupple->op == DNS_DIFFOP_ADD &&
|
||||
tupple->rdata.type == dns_rdatatype_ds)))
|
||||
continue;
|
||||
CHECK(rrset_exists(db, newver, &t->name, dns_rdatatype_ns, 0,
|
||||
&ns_exists));
|
||||
if (ns_exists)
|
||||
CHECK(rrset_exists(db, newver, &tupple->name,
|
||||
dns_rdatatype_ns, 0, &ns_exists));
|
||||
if (ns_exists &&
|
||||
!dns_name_equal(&tupple->name, dns_db_origin(db)))
|
||||
continue;
|
||||
CHECK(rrset_exists(db, newver, &t->name, dns_rdatatype_ds, 0,
|
||||
&ds_exists));
|
||||
if (!ds_exists)
|
||||
continue;
|
||||
CHECK(delete_if(true_p, db, newver, &t->name,
|
||||
dns_rdatatype_ds, 0, NULL, diff));
|
||||
CHECK(delete_if(true_p, db, newver, &tupple->name,
|
||||
dns_rdatatype_ds, 0, NULL, &temp_diff));
|
||||
}
|
||||
return (ISC_R_SUCCESS);
|
||||
result = ISC_R_SUCCESS;
|
||||
|
||||
failure:
|
||||
for (tupple = ISC_LIST_HEAD(temp_diff.tuples);
|
||||
tupple != NULL;
|
||||
tupple = ISC_LIST_HEAD(temp_diff.tuples)) {
|
||||
ISC_LIST_UNLINK(temp_diff.tuples, tupple, link);
|
||||
dns_diff_appendminimal(diff, &tupple);
|
||||
}
|
||||
return (result);
|
||||
}
|
||||
|
||||
|
||||
+17
-14
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: ntservice.c,v 1.8 2004/03/05 04:58:08 marka Exp $ */
|
||||
/* $Id: ntservice.c,v 1.8.18.2 2009/06/23 23:46:03 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
@@ -47,7 +47,7 @@ int main(int, char *[], char *[]); /* From ns_main.c */
|
||||
#pragma comment(linker, "/entry:bindmain")
|
||||
|
||||
/*
|
||||
* This is the entry point for the executable
|
||||
* This is the entry point for the executable
|
||||
* We can now call main() explicitly or via StartServiceCtrlDispatcher()
|
||||
* as we need to.
|
||||
*/
|
||||
@@ -65,9 +65,12 @@ int bindmain()
|
||||
*/
|
||||
GetArgs(&argc, &argv, &envp);
|
||||
|
||||
/* Command line users should put -f in the options */
|
||||
/* Command line users should put -f in the options. */
|
||||
/* XXXMPA should use isc_commandline_parse() here. */
|
||||
while (argv[i]) {
|
||||
if (!strcmp(argv[i], "-f") || !strcmp(argv[i], "-g")) {
|
||||
if (!strcmp(argv[i], "-f") ||
|
||||
!strcmp(argv[i], "-g") ||
|
||||
!strcmp(argv[i], "-v")) {
|
||||
foreground = TRUE;
|
||||
break;
|
||||
}
|
||||
@@ -129,7 +132,7 @@ BOOL
|
||||
ntservice_isservice() {
|
||||
return(!foreground);
|
||||
}
|
||||
/*
|
||||
/*
|
||||
* ServiceControl(): Handles requests from the SCM and passes them on
|
||||
* to named.
|
||||
*/
|
||||
@@ -137,17 +140,17 @@ void
|
||||
ServiceControl(DWORD dwCtrlCode) {
|
||||
/* Handle the requested control code */
|
||||
switch(dwCtrlCode) {
|
||||
case SERVICE_CONTROL_INTERROGATE:
|
||||
case SERVICE_CONTROL_INTERROGATE:
|
||||
UpdateSCM(0);
|
||||
break;
|
||||
|
||||
case SERVICE_CONTROL_SHUTDOWN:
|
||||
case SERVICE_CONTROL_STOP:
|
||||
case SERVICE_CONTROL_SHUTDOWN:
|
||||
case SERVICE_CONTROL_STOP:
|
||||
ns_server_flushonshutdown(ns_g_server, ISC_TRUE);
|
||||
isc_app_shutdown();
|
||||
UpdateSCM(SERVICE_STOPPED);
|
||||
break;
|
||||
default:
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -185,7 +188,7 @@ void UpdateSCM(DWORD state) {
|
||||
* get argv, argc, envp.
|
||||
*/
|
||||
|
||||
typedef struct
|
||||
typedef struct
|
||||
{
|
||||
int newmode;
|
||||
} _startupinfo;
|
||||
@@ -218,13 +221,13 @@ extern _CRTIMP char **__initenv;
|
||||
void GetArgs(int *argc, char ***argv, char ***envp)
|
||||
{
|
||||
_startupinfo startinfo;
|
||||
|
||||
|
||||
/*
|
||||
* Set the app type to Console (check CRT/SRC/INTERNAL.H:
|
||||
* #define _CONSOLE_APP 1)
|
||||
*/
|
||||
__set_app_type(1);
|
||||
|
||||
|
||||
/* Mark this module as an EXE file */
|
||||
__onexitbegin = __onexitend = (_PVFV *)(-1);
|
||||
|
||||
|
||||
+44
-34
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2006, 2008, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: xfrout.c,v 1.115.18.8 2006/03/05 23:58:51 marka Exp $ */
|
||||
/* $Id: xfrout.c,v 1.115.18.13 2009/01/19 00:36:26 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
#include <named/server.h>
|
||||
#include <named/xfrout.h>
|
||||
|
||||
/*! \file
|
||||
/*! \file
|
||||
* \brief
|
||||
* Outgoing AXFR and IXFR.
|
||||
*/
|
||||
@@ -86,7 +86,7 @@
|
||||
ns_client_log(client, DNS_LOGCATEGORY_XFER_OUT, \
|
||||
NS_LOGMODULE_XFER_OUT, ISC_LOG_INFO, \
|
||||
"bad zone transfer request: %s (%s)", \
|
||||
msg, isc_result_totext(code)); \
|
||||
msg, isc_result_totext(code)); \
|
||||
if (result != ISC_R_SUCCESS) goto failure; \
|
||||
} while (0)
|
||||
|
||||
@@ -100,12 +100,12 @@
|
||||
ns_client_log(client, DNS_LOGCATEGORY_XFER_OUT, \
|
||||
NS_LOGMODULE_XFER_OUT, ISC_LOG_INFO, \
|
||||
"bad zone transfer request: '%s/%s': %s (%s)", \
|
||||
_buf1, _buf2, msg, isc_result_totext(code)); \
|
||||
_buf1, _buf2, msg, isc_result_totext(code)); \
|
||||
if (result != ISC_R_SUCCESS) goto failure; \
|
||||
} while (0)
|
||||
|
||||
#define CHECK(op) \
|
||||
do { result = (op); \
|
||||
do { result = (op); \
|
||||
if (result != ISC_R_SUCCESS) goto failure; \
|
||||
} while (0)
|
||||
|
||||
@@ -121,12 +121,12 @@ typedef struct db_rr_iterator db_rr_iterator_t;
|
||||
struct db_rr_iterator {
|
||||
isc_result_t result;
|
||||
dns_db_t *db;
|
||||
dns_dbiterator_t *dbit;
|
||||
dns_dbiterator_t *dbit;
|
||||
dns_dbversion_t *ver;
|
||||
isc_stdtime_t now;
|
||||
dns_dbnode_t *node;
|
||||
dns_fixedname_t fixedname;
|
||||
dns_rdatasetiter_t *rdatasetit;
|
||||
dns_rdatasetiter_t *rdatasetit;
|
||||
dns_rdataset_t rdataset;
|
||||
dns_rdata_t rdata;
|
||||
};
|
||||
@@ -303,6 +303,11 @@ log_rr(dns_name_t *name, dns_rdata_t *rdata, isc_uint32_t ttl) {
|
||||
rdl.type = rdata->type;
|
||||
rdl.rdclass = rdata->rdclass;
|
||||
rdl.ttl = ttl;
|
||||
if (rdata->type == dns_rdatatype_sig ||
|
||||
rdata->type == dns_rdatatype_rrsig)
|
||||
rdl.covers = dns_rdata_covers(rdata);
|
||||
else
|
||||
rdl.covers = dns_rdatatype_none;
|
||||
ISC_LIST_INIT(rdl.rdata);
|
||||
ISC_LINK_INIT(&rdl, link);
|
||||
dns_rdataset_init(&rds);
|
||||
@@ -326,7 +331,7 @@ log_rr(dns_name_t *name, dns_rdata_t *rdata, isc_uint32_t ttl) {
|
||||
INSIST(buf.used >= 1 &&
|
||||
((char *) buf.base)[buf.used - 1] == '\n');
|
||||
buf.used--;
|
||||
|
||||
|
||||
isc_log_write(XFROUT_RR_LOGARGS, "%.*s",
|
||||
(int)isc_buffer_usedlength(&buf),
|
||||
(char *)isc_buffer_base(&buf));
|
||||
@@ -969,7 +974,7 @@ ns_xfr_start(ns_client_t *client, dns_rdatatype_t reqtype) {
|
||||
/*
|
||||
* Normal zone table does not have a match. Try the DLZ database
|
||||
*/
|
||||
if (client->view->dlzdatabase != NULL) {
|
||||
if (client->view->dlzdatabase != NULL) {
|
||||
result = dns_dlzallowzonexfr(client->view,
|
||||
question_name, &client->peeraddr,
|
||||
&db);
|
||||
@@ -1006,7 +1011,7 @@ ns_xfr_start(ns_client_t *client, dns_rdatatype_t reqtype) {
|
||||
|
||||
} else {
|
||||
/*
|
||||
* not DLZ and not in normal zone table, we are
|
||||
* not DLZ and not in normal zone table, we are
|
||||
* not authoritative
|
||||
*/
|
||||
FAILQ(DNS_R_NOTAUTH, "non-authoritative zone",
|
||||
@@ -1191,7 +1196,7 @@ ns_xfr_start(ns_client_t *client, dns_rdatatype_t reqtype) {
|
||||
}
|
||||
|
||||
/*
|
||||
* Bracket the the data stream with SOAs.
|
||||
* Bracket the data stream with SOAs.
|
||||
*/
|
||||
CHECK(soa_rrstream_create(mctx, db, ver, &soa_stream));
|
||||
CHECK(compound_rrstream_create(mctx, &soa_stream, &data_stream,
|
||||
@@ -1210,26 +1215,26 @@ ns_xfr_start(ns_client_t *client, dns_rdatatype_t reqtype) {
|
||||
|
||||
#ifdef DLZ
|
||||
if (is_dlz)
|
||||
CHECK(xfrout_ctx_create(mctx, client, request->id, question_name,
|
||||
reqtype, question_class, db, ver, quota,
|
||||
stream, dns_message_gettsigkey(request),
|
||||
tsigbuf,
|
||||
3600,
|
||||
3600,
|
||||
(format == dns_many_answers) ?
|
||||
ISC_TRUE : ISC_FALSE,
|
||||
&xfr));
|
||||
else
|
||||
CHECK(xfrout_ctx_create(mctx, client, request->id, question_name,
|
||||
reqtype, question_class, db, ver, quota,
|
||||
stream, dns_message_gettsigkey(request),
|
||||
tsigbuf,
|
||||
3600,
|
||||
3600,
|
||||
(format == dns_many_answers) ?
|
||||
ISC_TRUE : ISC_FALSE,
|
||||
&xfr));
|
||||
else
|
||||
#endif
|
||||
CHECK(xfrout_ctx_create(mctx, client, request->id, question_name,
|
||||
reqtype, question_class, db, ver, quota,
|
||||
stream, dns_message_gettsigkey(request),
|
||||
tsigbuf,
|
||||
dns_zone_getmaxxfrout(zone),
|
||||
dns_zone_getidleout(zone),
|
||||
(format == dns_many_answers) ?
|
||||
ISC_TRUE : ISC_FALSE,
|
||||
&xfr));
|
||||
CHECK(xfrout_ctx_create(mctx, client, request->id, question_name,
|
||||
reqtype, question_class, db, ver, quota,
|
||||
stream, dns_message_gettsigkey(request),
|
||||
tsigbuf,
|
||||
dns_zone_getmaxxfrout(zone),
|
||||
dns_zone_getidleout(zone),
|
||||
(format == dns_many_answers) ?
|
||||
ISC_TRUE : ISC_FALSE,
|
||||
&xfr));
|
||||
|
||||
xfr->mnemonic = mnemonic;
|
||||
stream = NULL;
|
||||
@@ -1399,7 +1404,7 @@ failure:
|
||||
*
|
||||
* Requires:
|
||||
* The stream iterator is initialized and points at an RR,
|
||||
* or possiby at the end of the stream (that is, the
|
||||
* or possibly at the end of the stream (that is, the
|
||||
* _first method of the iterator has been called).
|
||||
*/
|
||||
static void
|
||||
@@ -1573,6 +1578,11 @@ sendstream(xfrout_ctx_t *xfr) {
|
||||
msgrdl->type = rdata->type;
|
||||
msgrdl->rdclass = rdata->rdclass;
|
||||
msgrdl->ttl = ttl;
|
||||
if (rdata->type == dns_rdatatype_sig ||
|
||||
rdata->type == dns_rdatatype_rrsig)
|
||||
msgrdl->covers = dns_rdata_covers(rdata);
|
||||
else
|
||||
msgrdl->covers = dns_rdatatype_none;
|
||||
ISC_LINK_INIT(msgrdl, link);
|
||||
ISC_LIST_INIT(msgrdl->rdata);
|
||||
ISC_LIST_APPEND(msgrdl->rdata, msgrdata, link);
|
||||
@@ -1663,7 +1673,7 @@ sendstream(xfrout_ctx_t *xfr) {
|
||||
* iterators before returning from the event handler.
|
||||
*/
|
||||
xfr->stream->methods->pause(xfr->stream);
|
||||
|
||||
|
||||
if (result == ISC_R_SUCCESS)
|
||||
return;
|
||||
|
||||
|
||||
+15
-15
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2006, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: zoneconf.c,v 1.110.18.23 2006/05/16 03:39:57 marka Exp $ */
|
||||
/* $Id: zoneconf.c,v 1.110.18.25 2011/03/12 04:56:41 tbox Exp $ */
|
||||
|
||||
/*% */
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
static isc_result_t
|
||||
configure_zone_acl(const cfg_obj_t *zconfig, const cfg_obj_t *vconfig,
|
||||
const cfg_obj_t *config, const char *aclname,
|
||||
cfg_aclconfctx_t *actx, dns_zone_t *zone,
|
||||
cfg_aclconfctx_t *actx, dns_zone_t *zone,
|
||||
void (*setzacl)(dns_zone_t *, dns_acl_t *),
|
||||
void (*clearzacl)(dns_zone_t *))
|
||||
{
|
||||
@@ -264,11 +264,11 @@ strtoargvsub(isc_mem_t *mctx, char *s, unsigned int *argcp,
|
||||
char ***argvp, unsigned int n)
|
||||
{
|
||||
isc_result_t result;
|
||||
|
||||
|
||||
/* Discard leading whitespace. */
|
||||
while (*s == ' ' || *s == '\t')
|
||||
s++;
|
||||
|
||||
|
||||
if (*s == '\0') {
|
||||
/* We have reached the end of the string. */
|
||||
*argcp = n;
|
||||
@@ -582,10 +582,10 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
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
|
||||
@@ -614,7 +614,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "check-sibling", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_CHECKSIBLING,
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_CHECKSIBLING,
|
||||
cfg_obj_asboolean(obj));
|
||||
|
||||
obj = NULL;
|
||||
@@ -633,7 +633,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
"allow-update", ac, zone,
|
||||
dns_zone_setupdateacl,
|
||||
dns_zone_clearupdateacl));
|
||||
|
||||
|
||||
updateacl = dns_zone_getupdateacl(zone);
|
||||
if (updateacl != NULL && dns_acl_isinsecure(updateacl))
|
||||
isc_log_write(ns_g_lctx, DNS_LOGCATEGORY_SECURITY,
|
||||
@@ -641,7 +641,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
"zone '%s' allows updates by IP "
|
||||
"address, which is insecure",
|
||||
zname);
|
||||
|
||||
|
||||
RETERR(configure_zone_ssutable(zoptions, zone));
|
||||
|
||||
obj = NULL;
|
||||
@@ -689,7 +689,7 @@ 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);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_CHECKINTEGRITY,
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_CHECKINTEGRITY,
|
||||
cfg_obj_asboolean(obj));
|
||||
|
||||
obj = NULL;
|
||||
@@ -725,7 +725,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
obj = NULL;
|
||||
result = ns_config_get(maps, "update-check-ksk", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_UPDATECHECKKSK,
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_UPDATECHECKKSK,
|
||||
cfg_obj_asboolean(obj));
|
||||
}
|
||||
|
||||
@@ -739,7 +739,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
"allow-update", ac, zone,
|
||||
dns_zone_setupdateacl,
|
||||
dns_zone_clearupdateacl));
|
||||
|
||||
|
||||
updateacl = dns_zone_getupdateacl(zone);
|
||||
if (updateacl != NULL && dns_acl_isinsecure(updateacl))
|
||||
isc_log_write(ns_g_lctx, DNS_LOGCATEGORY_SECURITY,
|
||||
@@ -747,7 +747,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
"zone '%s' allows updates by IP "
|
||||
"address, which is insecure",
|
||||
zname);
|
||||
|
||||
|
||||
RETERR(configure_zone_ssutable(zoptions, zone));
|
||||
|
||||
obj = NULL;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
.\" Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -13,7 +13,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: nsupdate.1,v 1.1.4.2 2008/09/01 02:29:00 tbox Exp $
|
||||
.\" $Id: nsupdate.1,v 1.1.4.4 2009/07/11 01:31:45 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -96,7 +96,7 @@ The
|
||||
\fB\-k\fR
|
||||
may also be used to specify a SIG(0) key used to authenticate Dynamic DNS update requests. In this case, the key specified is not an HMAC\-MD5 key.
|
||||
.PP
|
||||
By default
|
||||
By default,
|
||||
\fBnsupdate\fR
|
||||
uses UDP to send update requests to the name server unless they are too large to fit in a UDP request in which case TCP will be used. The
|
||||
\fB\-v\fR
|
||||
@@ -342,7 +342,7 @@ base\-64 encoding of HMAC\-MD5 key created by
|
||||
.PP
|
||||
The TSIG key is redundantly stored in two separate files. This is a consequence of nsupdate using the DST library for its cryptographic operations, and may change in future releases.
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004\-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2004\-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000\-2003 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009 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.130.18.22 2008/01/17 23:45:58 tbox Exp $ */
|
||||
/* $Id: nsupdate.c,v 1.130.18.24 2009/04/30 23:46:03 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -1328,8 +1328,9 @@ update_addordelete(char *cmdline, isc_boolean_t isdelete) {
|
||||
}
|
||||
region.base = word;
|
||||
region.length = strlen(word);
|
||||
rdataclass = dns_rdataclass_any;
|
||||
result = dns_rdataclass_fromtext(&rdataclass, ®ion);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
if (result == ISC_R_SUCCESS && rdataclass != dns_rdataclass_any) {
|
||||
if (!setzoneclass(rdataclass)) {
|
||||
fprintf(stderr, "class mismatch: %s\n", word);
|
||||
goto failure;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: nsupdate.docbook,v 1.18.18.12 2008/08/29 23:46:16 tbox Exp $ -->
|
||||
<!-- $Id: nsupdate.docbook,v 1.18.18.14 2009/01/22 23:46:00 tbox Exp $ -->
|
||||
<refentry>
|
||||
<refentryinfo>
|
||||
<date>Jun 30, 2000</date>
|
||||
@@ -40,6 +40,7 @@
|
||||
<year>2006</year>
|
||||
<year>2007</year>
|
||||
<year>2008</year>
|
||||
<year>2009</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
@@ -159,7 +160,7 @@
|
||||
specified is not an HMAC-MD5 key.
|
||||
</para>
|
||||
<para>
|
||||
By default
|
||||
By default,
|
||||
<command>nsupdate</command>
|
||||
uses UDP to send update requests to the name server unless they are too
|
||||
large to fit in a UDP request in which case TCP will be used.
|
||||
|
||||
+10
-10
@@ -1,8 +1,8 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -14,7 +14,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: nsupdate.html,v 1.14.18.23 2008/09/01 02:29:00 tbox Exp $ -->
|
||||
<!-- $Id: nsupdate.html,v 1.14.18.25 2009/07/11 01:31:45 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -32,7 +32,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">nsupdate</code> [<code class="option">-d</code>] [[<code class="option">-y <em class="replaceable"><code>[<span class="optional">hmac:</span>]keyname:secret</code></em></code>] | [<code class="option">-k <em class="replaceable"><code>keyfile</code></em></code>]] [<code class="option">-t <em class="replaceable"><code>timeout</code></em></code>] [<code class="option">-u <em class="replaceable"><code>udptimeout</code></em></code>] [<code class="option">-r <em class="replaceable"><code>udpretries</code></em></code>] [<code class="option">-v</code>] [filename]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543420"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543424"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">nsupdate</strong></span>
|
||||
is used to submit Dynamic DNS Update requests as defined in RFC2136
|
||||
to a name server.
|
||||
@@ -121,7 +121,7 @@
|
||||
specified is not an HMAC-MD5 key.
|
||||
</p>
|
||||
<p>
|
||||
By default
|
||||
By default,
|
||||
<span><strong class="command">nsupdate</strong></span>
|
||||
uses UDP to send update requests to the name server unless they are too
|
||||
large to fit in a UDP request in which case TCP will be used.
|
||||
@@ -153,7 +153,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543649"></a><h2>INPUT FORMAT</h2>
|
||||
<a name="id2543652"></a><h2>INPUT FORMAT</h2>
|
||||
<p><span><strong class="command">nsupdate</strong></span>
|
||||
reads input from
|
||||
<em class="parameter"><code>filename</code></em>
|
||||
@@ -402,7 +402,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544446"></a><h2>EXAMPLES</h2>
|
||||
<a name="id2544450"></a><h2>EXAMPLES</h2>
|
||||
<p>
|
||||
The examples below show how
|
||||
<span><strong class="command">nsupdate</strong></span>
|
||||
@@ -456,7 +456,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544490"></a><h2>FILES</h2>
|
||||
<a name="id2544493"></a><h2>FILES</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><code class="constant">/etc/resolv.conf</code></span></dt>
|
||||
<dd><p>
|
||||
@@ -475,7 +475,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544560"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2544563"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">RFC2136</span></span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">RFC3007</span></span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">RFC2104</span></span>,
|
||||
@@ -488,7 +488,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2542172"></a><h2>BUGS</h2>
|
||||
<a name="id2542176"></a><h2>BUGS</h2>
|
||||
<p>
|
||||
The TSIG key is redundantly stored in two separate files.
|
||||
This is a consequence of nsupdate using the DST library
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: os.h,v 1.5.18.2 2005/04/29 00:15:41 marka Exp $ */
|
||||
/* $Id: os.h,v 1.5.18.4 2009/01/19 23:46:14 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -35,7 +35,7 @@ FILE *safe_create(const char *filename);
|
||||
|
||||
int set_user(FILE *fd, const char *user);
|
||||
/*%<
|
||||
* Set the owner of the file refernced by 'fd' to 'user'.
|
||||
* Set the owner of the file referenced by 'fd' to 'user'.
|
||||
* Returns:
|
||||
* 0 success
|
||||
* -1 insufficient permissions, or 'user' does not exist.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2001, 2003 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -13,7 +13,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: rndc-confgen.8,v 1.9.18.11 2007/01/30 00:23:44 marka Exp $
|
||||
.\" $Id: rndc-confgen.8,v 1.9.18.12 2009/07/11 01:31:45 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2001, 2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -14,7 +14,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: rndc-confgen.html,v 1.8.18.17 2007/01/30 00:23:44 marka Exp $ -->
|
||||
<!-- $Id: rndc-confgen.html,v 1.8.18.18 2009/07/11 01:31:45 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -13,7 +13,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: rndc.8,v 1.26.18.16 2007/12/14 22:37:16 marka Exp $
|
||||
.\" $Id: rndc.8,v 1.26.18.17 2009/07/11 01:31:45 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
+4
-4
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2006, 2008, 2009 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: rndc.c,v 1.96.18.21 2008/10/15 03:07:19 marka Exp $ */
|
||||
/* $Id: rndc.c,v 1.96.18.23 2009/01/19 23:46:14 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -200,7 +200,7 @@ rndc_recvdone(isc_task_t *task, isc_event_t *event) {
|
||||
"* the remote server is using an older version of"
|
||||
" the command protocol,\n"
|
||||
"* this host is not authorized to connect,\n"
|
||||
"* the clocks are not syncronized, or\n"
|
||||
"* the clocks are not synchronized, or\n"
|
||||
"* the key is invalid.");
|
||||
|
||||
if (ccmsg.result != ISC_R_SUCCESS)
|
||||
@@ -263,7 +263,7 @@ rndc_recvnonce(isc_task_t *task, isc_event_t *event) {
|
||||
"* the remote server is using an older version of"
|
||||
" the command protocol,\n"
|
||||
"* this host is not authorized to connect,\n"
|
||||
"* the clocks are not syncronized, or\n"
|
||||
"* the clocks are not synchronized, or\n"
|
||||
"* the key is invalid.");
|
||||
|
||||
if (ccmsg.result != ISC_R_SUCCESS)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" 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.
|
||||
.\"
|
||||
@@ -13,7 +13,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: rndc.conf.5,v 1.23.18.15 2007/05/09 13:35:47 marka Exp $
|
||||
.\" $Id: rndc.conf.5,v 1.23.18.16 2009/07/11 01:31:45 tbox Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -14,7 +14,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: rndc.conf.html,v 1.6.18.23 2007/05/09 13:35:47 marka Exp $ -->
|
||||
<!-- $Id: rndc.conf.html,v 1.6.18.24 2009/07/11 01:31:45 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
|
||||
+2
-2
@@ -2,7 +2,7 @@
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- 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.
|
||||
-
|
||||
@@ -14,7 +14,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: rndc.html,v 1.8.18.23 2007/12/14 22:37:16 marka Exp $ -->
|
||||
<!-- $Id: rndc.html,v 1.8.18.24 2009/07/11 01:31:45 tbox Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
|
||||
+11
-6
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001, 2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: cfg_test.c,v 1.15.18.2 2005/04/29 00:15:43 marka Exp $ */
|
||||
/* $Id: cfg_test.c,v 1.15.18.4 2009/03/02 23:45:58 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -70,7 +70,7 @@ main(int argc, char **argv) {
|
||||
cfg_obj_t *cfg = NULL;
|
||||
cfg_type_t *type = NULL;
|
||||
isc_boolean_t grammar = ISC_FALSE;
|
||||
isc_boolean_t memstats = ISC_FALSE;
|
||||
isc_boolean_t memstats = ISC_FALSE;
|
||||
char *filename = NULL;
|
||||
|
||||
RUNTIME_CHECK(isc_mem_create(0, 0, &mctx) == ISC_R_SUCCESS);
|
||||
@@ -116,7 +116,7 @@ main(int argc, char **argv) {
|
||||
} else {
|
||||
filename = argv[1];
|
||||
}
|
||||
argv++, argc--;
|
||||
argv++, argc--;
|
||||
}
|
||||
|
||||
if (grammar) {
|
||||
@@ -147,5 +147,10 @@ main(int argc, char **argv) {
|
||||
isc_mem_stats(mctx, stderr);
|
||||
isc_mem_destroy(&mctx);
|
||||
|
||||
return (0);
|
||||
fflush(stdout);
|
||||
if (ferror(stdout)) {
|
||||
fprintf(stderr, "write error\n");
|
||||
return (1);
|
||||
} else
|
||||
return (0);
|
||||
}
|
||||
|
||||
+28
-28
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: t_db.c,v 1.31.18.3 2005/11/30 23:52:53 marka Exp $ */
|
||||
/* $Id: t_db.c,v 1.31.18.5 2009/01/22 23:46:00 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -265,7 +265,7 @@ static void
|
||||
t1(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_load", 1, T_REQUIRED, a1);
|
||||
t_assert("dns_db_load", 1, T_REQUIRED, "%s", a1);
|
||||
result = t_eval("dns_db_load_data", t_dns_db_load, 9);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -451,7 +451,7 @@ static void
|
||||
t2(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_iscache", 2, T_REQUIRED, a2);
|
||||
t_assert("dns_db_iscache", 2, T_REQUIRED, "%s", a2);
|
||||
result = test_dns_db_zc_x("dns_db_iscache_1_data",
|
||||
dns_dbtype_cache, dns_db_iscache, ISC_TRUE);
|
||||
t_result(result);
|
||||
@@ -467,7 +467,7 @@ static void
|
||||
t3(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_iscache", 3, T_REQUIRED, a3);
|
||||
t_assert("dns_db_iscache", 3, T_REQUIRED, "%s", a3);
|
||||
result = test_dns_db_zc_x("dns_db_iscache_2_data",
|
||||
dns_dbtype_zone, dns_db_iscache, ISC_FALSE);
|
||||
t_result(result);
|
||||
@@ -483,7 +483,7 @@ static void
|
||||
t4(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_iszone", 4, T_REQUIRED, a4);
|
||||
t_assert("dns_db_iszone", 4, T_REQUIRED, "%s", a4);
|
||||
result = test_dns_db_zc_x("dns_db_iszone_1_data",
|
||||
dns_dbtype_zone, dns_db_iszone, ISC_TRUE);
|
||||
t_result(result);
|
||||
@@ -498,7 +498,7 @@ static void
|
||||
t5(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_iszone", 5, T_REQUIRED, a5);
|
||||
t_assert("dns_db_iszone", 5, T_REQUIRED, "%s", a5);
|
||||
result = test_dns_db_zc_x("dns_db_iszone_2_data",
|
||||
dns_dbtype_cache, dns_db_iszone, ISC_FALSE);
|
||||
t_result(result);
|
||||
@@ -618,7 +618,7 @@ static void
|
||||
t6(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_origin", 6, T_REQUIRED, a6);
|
||||
t_assert("dns_db_origin", 6, T_REQUIRED, "%s", a6);
|
||||
result = t_eval("dns_db_origin_data", t_dns_db_origin, 2);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -732,7 +732,7 @@ static void
|
||||
t7(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_class", 7, T_REQUIRED, a7);
|
||||
t_assert("dns_db_class", 7, T_REQUIRED, "%s", a7);
|
||||
result = t_eval("dns_db_class_data", t_dns_db_class, 2);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -1005,7 +1005,7 @@ static void
|
||||
t8(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_currentversion", 8, T_REQUIRED, a8);
|
||||
t_assert("dns_db_currentversion", 8, T_REQUIRED, "%s", a8);
|
||||
result = t_eval("dns_db_currentversion_data",
|
||||
t_dns_db_currentversion, 7);
|
||||
t_result(result);
|
||||
@@ -1323,7 +1323,7 @@ static void
|
||||
t9(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_newversion", 9, T_REQUIRED, a9);
|
||||
t_assert("dns_db_newversion", 9, T_REQUIRED, "%s", a9);
|
||||
result = t_eval("dns_db_newversion_data", t_dns_db_newversion, 7);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -1734,7 +1734,7 @@ static void
|
||||
t10(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_closeversion", 10, T_REQUIRED, a10);
|
||||
t_assert("dns_db_closeversion", 10, T_REQUIRED, "%s", a10);
|
||||
result = t_eval("dns_db_closeversion_1_data",
|
||||
t_dns_db_closeversion_1, 9);
|
||||
t_result(result);
|
||||
@@ -2209,7 +2209,7 @@ static void
|
||||
t11(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_closeversion", 11, T_REQUIRED, a11);
|
||||
t_assert("dns_db_closeversion", 11, T_REQUIRED, "%s", a11);
|
||||
result = t_eval("dns_db_closeversion_2_data",
|
||||
t_dns_db_closeversion_2, 9);
|
||||
t_result(result);
|
||||
@@ -2414,7 +2414,7 @@ static void
|
||||
t12(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_expirenode", 12, T_REQUIRED, a12);
|
||||
t_assert("dns_db_expirenode", 12, T_REQUIRED, "%s", a12);
|
||||
result = t_eval("dns_db_expirenode_data", t_dns_db_expirenode, 8);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -2580,7 +2580,7 @@ static void
|
||||
t13(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_findnode", 13, T_REQUIRED, a13);
|
||||
t_assert("dns_db_findnode", 13, T_REQUIRED, "%s", a13);
|
||||
result = t_eval("dns_db_findnode_1_data", t_dns_db_findnode_1, 8);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -2778,7 +2778,7 @@ static void
|
||||
t14(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_findnode", 14, T_REQUIRED, a14);
|
||||
t_assert("dns_db_findnode", 14, T_REQUIRED, "%s", a14);
|
||||
result = t_eval("dns_db_findnode_2_data", t_dns_db_findnode_2, 6);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -2977,7 +2977,7 @@ static void
|
||||
t15(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_find", 15, T_REQUIRED, a15);
|
||||
t_assert("dns_db_find", 15, T_REQUIRED, "%s", a15);
|
||||
result = t_eval("dns_db_find_1_data", t_dns_db_find_x, 10);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -2993,7 +2993,7 @@ static void
|
||||
t16(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_find", 16, T_REQUIRED, a16);
|
||||
t_assert("dns_db_find", 16, T_REQUIRED, "%s", a16);
|
||||
result = t_eval("dns_db_find_2_data", t_dns_db_find_x, 10);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -3006,7 +3006,7 @@ static void
|
||||
t17(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_find", 17, T_REQUIRED, a17);
|
||||
t_assert("dns_db_find", 17, T_REQUIRED, "%s", a17);
|
||||
result = t_eval("dns_db_find_3_data", t_dns_db_find_x, 10);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -3019,7 +3019,7 @@ static void
|
||||
t18(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_find", 18, T_REQUIRED, a18);
|
||||
t_assert("dns_db_find", 18, T_REQUIRED, "%s", a18);
|
||||
result = t_eval("dns_db_find_4_data", t_dns_db_find_x, 10);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -3032,7 +3032,7 @@ static void
|
||||
t19(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_find", 19, T_REQUIRED, a19);
|
||||
t_assert("dns_db_find", 19, T_REQUIRED, "%s", a19);
|
||||
result = t_eval("dns_db_find_5_data", t_dns_db_find_x, 10);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -3045,7 +3045,7 @@ static void
|
||||
t20(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_find", 20, T_REQUIRED, a20);
|
||||
t_assert("dns_db_find", 20, T_REQUIRED, "%s", a20);
|
||||
result = t_eval("dns_db_find_6_data", t_dns_db_find_x, 10);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -3058,7 +3058,7 @@ static void
|
||||
t21(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_find", 21, T_REQUIRED, a21);
|
||||
t_assert("dns_db_find", 21, T_REQUIRED, "%s", a21);
|
||||
result = t_eval("dns_db_find_7_data", t_dns_db_find_x, 10);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -3071,7 +3071,7 @@ static void
|
||||
t22(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_find", 22, T_REQUIRED, a22);
|
||||
t_assert("dns_db_find", 22, T_REQUIRED, "%s", a22);
|
||||
result = t_eval("dns_db_find_8_data", t_dns_db_find_x, 10);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -3085,7 +3085,7 @@ static void
|
||||
t23(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_find", 23, T_REQUIRED, a23);
|
||||
t_assert("dns_db_find", 23, T_REQUIRED, "%s", a23);
|
||||
result = t_eval("dns_db_find_9_data", t_dns_db_find_x, 10);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -3098,7 +3098,7 @@ static void
|
||||
t24(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_find", 24, T_REQUIRED, a24);
|
||||
t_assert("dns_db_find", 24, T_REQUIRED, "%s", a24);
|
||||
result = t_eval("dns_db_find_10_data", t_dns_db_find_x, 10);
|
||||
t_result(result);
|
||||
}
|
||||
@@ -3111,7 +3111,7 @@ static void
|
||||
t25(void) {
|
||||
int result;
|
||||
|
||||
t_assert("dns_db_load", 25, T_REQUIRED, a25);
|
||||
t_assert("dns_db_load", 25, T_REQUIRED, "%s", a25);
|
||||
result = t_eval("dns_db_load_soa_not_top", t_dns_db_load, 9);
|
||||
t_result(result);
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dst_test.c,v 1.38.18.3 2005/11/30 23:52:53 marka Exp $ */
|
||||
/* $Id: dst_test.c,v 1.38.18.5 2009/03/02 23:45:58 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -245,7 +245,10 @@ main(void) {
|
||||
current = isc_mem_get(mctx, 256);
|
||||
if (current == NULL)
|
||||
return (1);
|
||||
getcwd(current, 256);
|
||||
if (getcwd(current, 256) == NULL) {
|
||||
perror("getcwd");
|
||||
return (1);
|
||||
}
|
||||
|
||||
dns_result_register();
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2008, 2009 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_dst.c,v 1.48.18.5 2008/01/12 23:46:06 tbox Exp $ */
|
||||
/* $Id: t_dst.c,v 1.48.18.7 2009/01/22 23:46:00 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -357,7 +357,7 @@ t1(void) {
|
||||
dns_name_t *name;
|
||||
isc_buffer_t b;
|
||||
|
||||
t_assert("dst", 1, T_REQUIRED, a1);
|
||||
t_assert("dst", 1, T_REQUIRED, "%s", a1);
|
||||
|
||||
nfails = 0;
|
||||
nprobs = 0;
|
||||
@@ -920,7 +920,7 @@ t2_vfy(char **av) {
|
||||
static void
|
||||
t2(void) {
|
||||
int result;
|
||||
t_assert("dst", 2, T_REQUIRED, a2);
|
||||
t_assert("dst", 2, T_REQUIRED, "%s", a2);
|
||||
result = t_eval("dst_2_data", t2_vfy, 6);
|
||||
t_result(result);
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: log_test.c,v 1.24 2004/03/05 04:58:38 marka Exp $ */
|
||||
/* $Id: log_test.c,v 1.24.18.2 2011/01/14 00:49:54 tbox Exp $ */
|
||||
|
||||
/* Principal Authors: DCL */
|
||||
|
||||
@@ -306,16 +306,16 @@ main(int argc, char **argv) {
|
||||
isc_log_write1(lctx, DNS_LOGCATEGORY_GENERAL, DNS_LOGMODULE_RBTDB,
|
||||
ISC_LOG_CRITICAL, "%s", message);
|
||||
isc_log_write1(lctx, DNS_LOGCATEGORY_GENERAL, DNS_LOGMODULE_RBTDB,
|
||||
ISC_LOG_CRITICAL, message);
|
||||
ISC_LOG_CRITICAL, "%s", message);
|
||||
|
||||
isc_log_setduplicateinterval(lcfg, 1);
|
||||
message = "This message should appear twice on stderr";
|
||||
|
||||
isc_log_write1(lctx, DNS_LOGCATEGORY_GENERAL, DNS_LOGMODULE_RBTDB,
|
||||
ISC_LOG_CRITICAL, message);
|
||||
ISC_LOG_CRITICAL, "%s", message);
|
||||
sleep(2);
|
||||
isc_log_write1(lctx, DNS_LOGCATEGORY_GENERAL, DNS_LOGMODULE_RBTDB,
|
||||
ISC_LOG_CRITICAL, message);
|
||||
ISC_LOG_CRITICAL, "%s", message);
|
||||
|
||||
/*
|
||||
* Review where everything went.
|
||||
|
||||
+14
-14
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1998-2001, 2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: t_master.c,v 1.32.18.2 2005/11/30 23:52:53 marka Exp $ */
|
||||
/* $Id: t_master.c,v 1.32.18.4 2009/01/22 23:46:00 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -185,7 +185,7 @@ static const char *a1 = "dns_master_loadfile loads a valid master file and "
|
||||
static void
|
||||
t1(void) {
|
||||
int result;
|
||||
t_assert("dns_master_loadfile", 1, T_REQUIRED, a1);
|
||||
t_assert("dns_master_loadfile", 1, T_REQUIRED, "%s", a1);
|
||||
result = test_master_x("dns_master_load_1_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -197,7 +197,7 @@ static const char *a2 =
|
||||
static void
|
||||
t2(void) {
|
||||
int result;
|
||||
t_assert("dns_master_loadfile", 2, T_REQUIRED, a2);
|
||||
t_assert("dns_master_loadfile", 2, T_REQUIRED, "%s", a2);
|
||||
result = test_master_x("dns_master_load_2_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -208,7 +208,7 @@ static const char *a3 = "dns_master_loadfile returns DNS_R_NOOWNER when the "
|
||||
static void
|
||||
t3() {
|
||||
int result;
|
||||
t_assert("dns_master_loadfile", 3, T_REQUIRED, a3);
|
||||
t_assert("dns_master_loadfile", 3, T_REQUIRED, "%s", a3);
|
||||
result = test_master_x("dns_master_load_3_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -220,7 +220,7 @@ static const char *a4 = "dns_master_loadfile accepts broken zone files "
|
||||
static void
|
||||
t4() {
|
||||
int result;
|
||||
t_assert("dns_master_loadfile", 4, T_REQUIRED, a4);
|
||||
t_assert("dns_master_loadfile", 4, T_REQUIRED, "%s", a4);
|
||||
result = test_master_x("dns_master_load_4_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -232,7 +232,7 @@ static void
|
||||
t5() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_master_loadfile", 5, T_REQUIRED, a5);
|
||||
t_assert("dns_master_loadfile", 5, T_REQUIRED, "%s", a5);
|
||||
result = test_master_x("dns_master_load_5_data");
|
||||
|
||||
t_result(result);
|
||||
@@ -246,7 +246,7 @@ static void
|
||||
t6() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_master_loadfile", 6, T_REQUIRED, a6);
|
||||
t_assert("dns_master_loadfile", 6, T_REQUIRED, "%s", a6);
|
||||
result = test_master_x("dns_master_load_6_data");
|
||||
|
||||
t_result(result);
|
||||
@@ -260,7 +260,7 @@ static void
|
||||
t7() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_master_loadfile", 7, T_REQUIRED, a7);
|
||||
t_assert("dns_master_loadfile", 7, T_REQUIRED, "%s", a7);
|
||||
result = test_master_x("dns_master_load_7_data");
|
||||
|
||||
t_result(result);
|
||||
@@ -273,7 +273,7 @@ static void
|
||||
t8() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_master_loadfile", 8, T_REQUIRED, a8);
|
||||
t_assert("dns_master_loadfile", 8, T_REQUIRED, "%s", a8);
|
||||
result = test_master_x("dns_master_load_8_data");
|
||||
|
||||
t_result(result);
|
||||
@@ -286,7 +286,7 @@ static void
|
||||
t9() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_master_loadfile", 9, T_REQUIRED, a9);
|
||||
t_assert("dns_master_loadfile", 9, T_REQUIRED, "%s", a9);
|
||||
result = test_master_x("dns_master_load_9_data");
|
||||
|
||||
t_result(result);
|
||||
@@ -299,7 +299,7 @@ static void
|
||||
t10() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_master_loadfile", 10, T_REQUIRED, a10);
|
||||
t_assert("dns_master_loadfile", 10, T_REQUIRED, "%s", a10);
|
||||
result = test_master_x("dns_master_load_10_data");
|
||||
|
||||
t_result(result);
|
||||
@@ -312,7 +312,7 @@ static void
|
||||
t11() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_master_loadfile", 11, T_REQUIRED, a11);
|
||||
t_assert("dns_master_loadfile", 11, T_REQUIRED, "%s", a11);
|
||||
result = test_master_x("dns_master_load_11_data");
|
||||
|
||||
t_result(result);
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: t_mem.c,v 1.11 2004/03/05 04:58:53 marka Exp $ */
|
||||
/* $Id: t_mem.c,v 1.11.18.2 2009/01/22 23:46:00 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -190,7 +190,7 @@ t1(void) {
|
||||
int rval;
|
||||
int result;
|
||||
|
||||
t_assert("mem", 1, T_REQUIRED, a1);
|
||||
t_assert("mem", 1, T_REQUIRED, "%s", a1);
|
||||
|
||||
rval = memtest();
|
||||
|
||||
|
||||
+30
-30
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2006, 2008, 2009 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.36.18.8 2008/01/17 23:45:58 tbox Exp $ */
|
||||
/* $Id: t_names.c,v 1.36.18.10 2009/01/22 23:46:00 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -366,7 +366,7 @@ t_dns_name_init(void) {
|
||||
unsigned char offsets[1];
|
||||
|
||||
rval = 0;
|
||||
t_assert("dns_name_init", 1, T_REQUIRED, a3);
|
||||
t_assert("dns_name_init", 1, T_REQUIRED, "%s", a3);
|
||||
|
||||
dns_name_init(&name, offsets);
|
||||
/* magic is hidden in name.c ...
|
||||
@@ -416,7 +416,7 @@ t_dns_name_invalidate(void) {
|
||||
dns_name_t name;
|
||||
unsigned char offsets[1];
|
||||
|
||||
t_assert("dns_name_invalidate", 1, T_REQUIRED, a4);
|
||||
t_assert("dns_name_invalidate", 1, T_REQUIRED, "%s", a4);
|
||||
|
||||
rval = 0;
|
||||
dns_name_init(&name, offsets);
|
||||
@@ -470,7 +470,7 @@ t_dns_name_setbuffer(void) {
|
||||
dns_name_t name;
|
||||
isc_buffer_t buffer;
|
||||
|
||||
t_assert("dns_name_setbuffer", 1, T_REQUIRED, a5);
|
||||
t_assert("dns_name_setbuffer", 1, T_REQUIRED, "%s", a5);
|
||||
|
||||
isc_buffer_init(&buffer, junk, BUFLEN);
|
||||
dns_name_init(&name, NULL);
|
||||
@@ -494,7 +494,7 @@ t_dns_name_hasbuffer(void) {
|
||||
dns_name_t name;
|
||||
isc_buffer_t buffer;
|
||||
|
||||
t_assert("dns_name_hasbuffer", 1, T_REQUIRED, a6);
|
||||
t_assert("dns_name_hasbuffer", 1, T_REQUIRED, "%s", a6);
|
||||
|
||||
rval = 0;
|
||||
isc_buffer_init(&buffer, junk, BUFLEN);
|
||||
@@ -557,7 +557,7 @@ t_dns_name_isabsolute(void) {
|
||||
char *p;
|
||||
FILE *fp;
|
||||
|
||||
t_assert("dns_name_isabsolute", 1, T_REQUIRED, a7);
|
||||
t_assert("dns_name_isabsolute", 1, T_REQUIRED, "%s", a7);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_isabsolute_data", "r");
|
||||
@@ -670,7 +670,7 @@ t_dns_name_hash(void) {
|
||||
char *p;
|
||||
FILE *fp;
|
||||
|
||||
t_assert("dns_name_hash", 1, T_REQUIRED, a8);
|
||||
t_assert("dns_name_hash", 1, T_REQUIRED, "%s", a8);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_hash_data", "r");
|
||||
@@ -826,7 +826,7 @@ t_dns_name_fullcompare(void) {
|
||||
FILE *fp;
|
||||
dns_namereln_t reln;
|
||||
|
||||
t_assert("dns_name_fullcompare", 1, T_REQUIRED, a10);
|
||||
t_assert("dns_name_fullcompare", 1, T_REQUIRED, "%s", a10);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_fullcompare_data", "r");
|
||||
@@ -946,7 +946,7 @@ t_dns_name_compare(void) {
|
||||
char *p;
|
||||
FILE *fp;
|
||||
|
||||
t_assert("dns_name_compare", 1, T_REQUIRED, a23);
|
||||
t_assert("dns_name_compare", 1, T_REQUIRED, "%s", a23);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_compare_data", "r");
|
||||
@@ -1048,7 +1048,7 @@ t_dns_name_rdatacompare(void) {
|
||||
char *p;
|
||||
FILE *fp;
|
||||
|
||||
t_assert("dns_name_rdatacompare", 1, T_REQUIRED, a30);
|
||||
t_assert("dns_name_rdatacompare", 1, T_REQUIRED, "%s", a30);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_rdatacompare_data", "r");
|
||||
@@ -1146,7 +1146,7 @@ t_dns_name_issubdomain(void) {
|
||||
char *p;
|
||||
FILE *fp;
|
||||
|
||||
t_assert("dns_name_issubdomain", 1, T_REQUIRED, a33);
|
||||
t_assert("dns_name_issubdomain", 1, T_REQUIRED, "%s", a33);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_issubdomain_data", "r");
|
||||
@@ -1229,7 +1229,7 @@ t_dns_name_countlabels(void) {
|
||||
char *p;
|
||||
FILE *fp;
|
||||
|
||||
t_assert("dns_name_countlabels", 1, T_REQUIRED, a35);
|
||||
t_assert("dns_name_countlabels", 1, T_REQUIRED, "%s", a35);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_countlabels_data", "r");
|
||||
@@ -1341,7 +1341,7 @@ t_dns_name_getlabel(void) {
|
||||
char *p;
|
||||
FILE *fp;
|
||||
|
||||
t_assert("dns_name_getlabel", 1, T_REQUIRED, a36);
|
||||
t_assert("dns_name_getlabel", 1, T_REQUIRED, "%s", a36);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_getlabel_data", "r");
|
||||
@@ -1471,7 +1471,7 @@ t_dns_name_getlabelsequence(void) {
|
||||
char *p;
|
||||
FILE *fp;
|
||||
|
||||
t_assert("dns_name_getlabelsequence", 1, T_REQUIRED, a37);
|
||||
t_assert("dns_name_getlabelsequence", 1, T_REQUIRED, "%s", a37);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_getlabelsequence_data", "r");
|
||||
@@ -1561,7 +1561,7 @@ t_dns_name_fromregion(void) {
|
||||
char *p;
|
||||
FILE *fp;
|
||||
|
||||
t_assert("dns_name_fromregion", 1, T_REQUIRED, a38);
|
||||
t_assert("dns_name_fromregion", 1, T_REQUIRED, "%s", a38);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_fromregion_data", "r");
|
||||
@@ -1611,7 +1611,7 @@ t_dns_name_toregion(void) {
|
||||
char *p;
|
||||
FILE *fp;
|
||||
|
||||
t_assert("dns_name_toregion", 1, T_REQUIRED, a39);
|
||||
t_assert("dns_name_toregion", 1, T_REQUIRED, "%s", a39);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_toregion_data", "r");
|
||||
@@ -1748,7 +1748,7 @@ t_dns_name_fromtext(void) {
|
||||
char *p;
|
||||
FILE *fp;
|
||||
|
||||
t_assert("dns_name_fromtext", 1, T_REQUIRED, a40);
|
||||
t_assert("dns_name_fromtext", 1, T_REQUIRED, "%s", a40);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_fromtext_data", "r");
|
||||
@@ -1884,7 +1884,7 @@ t_dns_name_totext(void) {
|
||||
char *p;
|
||||
FILE *fp;
|
||||
|
||||
t_assert("dns_name_totext", 1, T_REQUIRED, a41);
|
||||
t_assert("dns_name_totext", 1, T_REQUIRED, "%s", a41);
|
||||
|
||||
result = T_UNRESOLVED;
|
||||
fp = fopen("dns_name_totext_data", "r");
|
||||
@@ -2118,7 +2118,7 @@ t_dns_name_fromwire_x(const char *testfile, size_t buflen) {
|
||||
|
||||
static void
|
||||
t_dns_name_fromwire(void) {
|
||||
t_assert("dns_name_fromwire", 1, T_REQUIRED, a42);
|
||||
t_assert("dns_name_fromwire", 1, T_REQUIRED, "%s", a42);
|
||||
t_dns_name_fromwire_x("dns_name_fromwire_1_data", BUFLEN);
|
||||
|
||||
#if 0
|
||||
@@ -2126,26 +2126,26 @@ t_dns_name_fromwire(void) {
|
||||
* XXXRTH these tests appear to be broken, so I have
|
||||
* disabled them.
|
||||
*/
|
||||
t_assert("dns_name_fromwire", 2, T_REQUIRED, a43);
|
||||
t_assert("dns_name_fromwire", 2, T_REQUIRED, "%s", a43);
|
||||
t_dns_name_fromwire_x("dns_name_fromwire_2_data", BUFLEN);
|
||||
|
||||
t_assert("dns_name_fromwire", 3, T_REQUIRED, a44);
|
||||
t_assert("dns_name_fromwire", 3, T_REQUIRED, "%s", a44);
|
||||
t_dns_name_fromwire_x("dns_name_fromwire_3_data", BUFLEN);
|
||||
#endif
|
||||
|
||||
t_assert("dns_name_fromwire", 4, T_REQUIRED, a45);
|
||||
t_assert("dns_name_fromwire", 4, T_REQUIRED, "%s", a45);
|
||||
t_dns_name_fromwire_x("dns_name_fromwire_4_data", BUFLEN);
|
||||
|
||||
t_assert("dns_name_fromwire", 5, T_REQUIRED, a46);
|
||||
t_assert("dns_name_fromwire", 5, T_REQUIRED, "%s", a46);
|
||||
t_dns_name_fromwire_x("dns_name_fromwire_5_data", BUFLEN);
|
||||
|
||||
t_assert("dns_name_fromwire", 6, T_REQUIRED, a47);
|
||||
t_assert("dns_name_fromwire", 6, T_REQUIRED, "%s", a47);
|
||||
t_dns_name_fromwire_x("dns_name_fromwire_6_data", BUFLEN);
|
||||
|
||||
t_assert("dns_name_fromwire", 7, T_REQUIRED, a48);
|
||||
t_assert("dns_name_fromwire", 7, T_REQUIRED, "%s", a48);
|
||||
t_dns_name_fromwire_x("dns_name_fromwire_7_data", BUFLEN);
|
||||
|
||||
t_assert("dns_name_fromwire", 9, T_REQUIRED, a49);
|
||||
t_assert("dns_name_fromwire", 9, T_REQUIRED, "%s", a49);
|
||||
t_dns_name_fromwire_x("dns_name_fromwire_8_data", 2);
|
||||
}
|
||||
|
||||
@@ -2284,13 +2284,13 @@ t_dns_name_towire_x(const char *testfile, size_t buflen) {
|
||||
|
||||
static void
|
||||
t_dns_name_towire_1(void) {
|
||||
t_assert("dns_name_towire", 1, T_REQUIRED, a51);
|
||||
t_assert("dns_name_towire", 1, T_REQUIRED, "%s", a51);
|
||||
t_dns_name_towire_x("dns_name_towire_1_data", BUFLEN);
|
||||
}
|
||||
|
||||
static void
|
||||
t_dns_name_towire_2(void) {
|
||||
t_assert("dns_name_towire", 2, T_REQUIRED, a52);
|
||||
t_assert("dns_name_towire", 2, T_REQUIRED, "%s", a52);
|
||||
t_dns_name_towire_x("dns_name_towire_2_data", 2);
|
||||
}
|
||||
|
||||
@@ -2311,7 +2311,7 @@ static const char *a53 =
|
||||
|
||||
static void
|
||||
t_dns_name_concatenate(void) {
|
||||
t_assert("dns_name_concatenate", 1, T_REQUIRED, a53);
|
||||
t_assert("dns_name_concatenate", 1, T_REQUIRED, "%s", a53);
|
||||
t_result(T_UNTESTED);
|
||||
}
|
||||
#endif
|
||||
|
||||
+19
-19
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1998-2001, 2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: t_rbt.c,v 1.25.18.3 2005/11/30 23:52:53 marka Exp $ */
|
||||
/* $Id: t_rbt.c,v 1.25.18.5 2009/01/22 23:46:00 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -194,7 +194,7 @@ t1_add(char *name, dns_rbt_t *rbt, isc_mem_t *mctx, isc_result_t *dns_result) {
|
||||
if (*dns_result != ISC_R_SUCCESS) {
|
||||
delete_name(dns_name, mctx);
|
||||
t_info("dns_rbt_addname failed %s\n",
|
||||
dns_result_totext(*dns_result));
|
||||
dns_result_totext(*dns_result));
|
||||
++nprobs;
|
||||
}
|
||||
} else {
|
||||
@@ -275,7 +275,7 @@ rbt_init(char *filename, dns_rbt_t **rbt, isc_mem_t *mctx) {
|
||||
dns_result = dns_rbt_create(mctx, delete_name, mctx, rbt);
|
||||
if (dns_result != ISC_R_SUCCESS) {
|
||||
t_info("dns_rbt_create failed %s\n",
|
||||
dns_result_totext(dns_result));
|
||||
dns_result_totext(dns_result));
|
||||
fclose(fp);
|
||||
return(1);
|
||||
}
|
||||
@@ -517,7 +517,7 @@ static void
|
||||
t1() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbt_create", 1, T_REQUIRED, a1);
|
||||
t_assert("dns_rbt_create", 1, T_REQUIRED, "%s", a1);
|
||||
result = test_dns_rbt_x("dns_rbt_create_1_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -529,7 +529,7 @@ static void
|
||||
t2() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbt_addname", 2, T_REQUIRED, a2);
|
||||
t_assert("dns_rbt_addname", 2, T_REQUIRED, "%s", a2);
|
||||
result = test_dns_rbt_x("dns_rbt_addname_1_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -541,7 +541,7 @@ static void
|
||||
t3() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbt_addname", 3, T_REQUIRED, a3);
|
||||
t_assert("dns_rbt_addname", 3, T_REQUIRED, "%s", a3);
|
||||
result = test_dns_rbt_x("dns_rbt_addname_2_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -553,7 +553,7 @@ static void
|
||||
t4() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbt_deletename", 4, T_REQUIRED, a4);
|
||||
t_assert("dns_rbt_deletename", 4, T_REQUIRED, "%s", a4);
|
||||
result = test_dns_rbt_x("dns_rbt_deletename_1_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -564,7 +564,7 @@ static void
|
||||
t5() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbt_deletename", 5, T_REQUIRED, a5);
|
||||
t_assert("dns_rbt_deletename", 5, T_REQUIRED, "%s", a5);
|
||||
result = test_dns_rbt_x("dns_rbt_deletename_2_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -576,7 +576,7 @@ static void
|
||||
t6() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbt_findname", 6, T_REQUIRED, a6);
|
||||
t_assert("dns_rbt_findname", 6, T_REQUIRED, "%s", a6);
|
||||
result = test_dns_rbt_x("dns_rbt_findname_1_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -588,7 +588,7 @@ static void
|
||||
t7() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbt_findname", 7, T_REQUIRED, a7);
|
||||
t_assert("dns_rbt_findname", 7, T_REQUIRED, "%s", a7);
|
||||
result = test_dns_rbt_x("dns_rbt_findname_2_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -600,7 +600,7 @@ static void
|
||||
t8() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbt_findname", 8, T_REQUIRED, a8);
|
||||
t_assert("dns_rbt_findname", 8, T_REQUIRED, "%s", a8);
|
||||
result = test_dns_rbt_x("dns_rbt_findname_3_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -684,7 +684,7 @@ t9_walkchain(dns_rbtnodechain_t *chain, dns_rbt_t *rbt) {
|
||||
dns_result = dns_name_concatenate(
|
||||
dns_fixedname_name(&name),
|
||||
dns_name_isabsolute(dns_fixedname_name(&name)) ?
|
||||
NULL : dns_fixedname_name(&origin),
|
||||
NULL : dns_fixedname_name(&origin),
|
||||
dns_fixedname_name(&fullname2), NULL);
|
||||
if (dns_result != ISC_R_SUCCESS) {
|
||||
t_info("dns_name_concatenate failed %s\n",
|
||||
@@ -1034,7 +1034,7 @@ static void
|
||||
t9() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbtnodechain_init", 9, T_REQUIRED, a9);
|
||||
t_assert("dns_rbtnodechain_init", 9, T_REQUIRED, "%s", a9);
|
||||
result = test_dns_rbtnodechain_init("dns_rbtnodechain_init_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -1224,7 +1224,7 @@ static void
|
||||
t10() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbtnodechain_first", 10, T_REQUIRED, a10);
|
||||
t_assert("dns_rbtnodechain_first", 10, T_REQUIRED, "%s", a10);
|
||||
result = test_dns_rbtnodechain_first("dns_rbtnodechain_first_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -1417,7 +1417,7 @@ static void
|
||||
t11() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbtnodechain_last", 11, T_REQUIRED, a11);
|
||||
t_assert("dns_rbtnodechain_last", 11, T_REQUIRED, "%s", a11);
|
||||
result = test_dns_rbtnodechain_last("dns_rbtnodechain_last_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -1625,7 +1625,7 @@ static void
|
||||
t12() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbtnodechain_next", 12, T_REQUIRED, a12);
|
||||
t_assert("dns_rbtnodechain_next", 12, T_REQUIRED, "%s", a12);
|
||||
result = test_dns_rbtnodechain_next("dns_rbtnodechain_next_data");
|
||||
t_result(result);
|
||||
}
|
||||
@@ -1831,7 +1831,7 @@ static void
|
||||
t13() {
|
||||
int result;
|
||||
|
||||
t_assert("dns_rbtnodechain_prev", 13, T_REQUIRED, a13);
|
||||
t_assert("dns_rbtnodechain_prev", 13, T_REQUIRED, "%s", a13);
|
||||
result = test_dns_rbtnodechain_prev("dns_rbtnodechain_prev_data");
|
||||
t_result(result);
|
||||
}
|
||||
|
||||
@@ -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.8.2 2011/03/02 04:41:35 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.8.2 2011/03/02 04:41:35 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.8.2 2011/03/02 04:41:36 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.8.3 2011/03/12 04:56:41 tbox Exp $ */
|
||||
|
||||
key rndc_key {
|
||||
secret "1234abcd8765";
|
||||
algorithm hmac-md5;
|
||||
};
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2004-2006, 2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004-2006, 2008-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.27.18.10 2008/01/11 23:45:59 tbox Exp $
|
||||
# $Id: conf.sh.in,v 1.27.18.17 2011/03/04 17:12:18 smann Exp $
|
||||
|
||||
#
|
||||
# Common configuration data for system tests, to be sourced into
|
||||
@@ -43,9 +43,10 @@ CHECKCONF=$TOP/bin/check/named-checkconf
|
||||
# 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 cacheclean checkconf checknames dnssec forward glue ixfr limits
|
||||
lwresd masterfile masterformat notify nsupdate resolver rrsetorder
|
||||
sortlist stub tkey unknown upforwd views xfer xferquota zonechecks"
|
||||
SUBDIRS="acl cacheclean checkconf checknames checkzone dlv dnssec forward
|
||||
glue ixfr limits logfileconfig lwresd masterfile masterformat notify
|
||||
nsupdate pending resolver rrsetorder sortlist stub tkey unknown
|
||||
upforwd views xfer xferquota zonechecks"
|
||||
|
||||
# PERL will be an empty string if no perl interpreter was found.
|
||||
PERL=@PERL@
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004, 2010, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
#
|
||||
# Permission to use, copy, modify, and distribute this software for any
|
||||
# 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.
|
||||
#
|
||||
@@ -14,14 +14,38 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: clean.sh,v 1.2 2004/05/14 04:58:18 marka Exp $
|
||||
# $Id: clean.sh,v 1.2.2.5 2011/05/27 23:48:54 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 ns1/keyset-*
|
||||
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 ns2/keyset-*
|
||||
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
|
||||
rm -f ns6/*.signed
|
||||
rm -f ns6/dsset-*
|
||||
rm -f ns6/signer.err
|
||||
rm -f ns6/keyset-*
|
||||
rm -f */named.memstats
|
||||
rm -f dig.out.ns*.test*
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.2 2004/05/14 04:58:20 marka Exp $ */
|
||||
/* $Id: named.conf,v 1.2.2.3 2011/05/27 23:48:56 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,6 +1,6 @@
|
||||
; Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
; Copyright (C) 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
;
|
||||
; Permission to use, copy, modify, and distribute this software for any
|
||||
; 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.
|
||||
;
|
||||
@@ -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.2 2004/05/14 04:58:20 marka Exp $
|
||||
; $Id: root.db.in,v 1.3.10.3 2011/05/27 23:48:57 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.3.10.3 2011/05/27 23:48:58 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.4.10.3 2011/05/27 23:48:59 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,7 +1,7 @@
|
||||
/*
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.2 2004/05/14 04:58:21 marka Exp $ */
|
||||
/* $Id: named.conf,v 1.2.2.3 2011/05/27 23:49:00 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.3.10.3 2011/05/27 23:49:00 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,6 +1,6 @@
|
||||
; Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
; Copyright (C) 2004, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
;
|
||||
; Permission to use, copy, modify, and distribute this software for any
|
||||
; 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.
|
||||
;
|
||||
@@ -12,7 +12,7 @@
|
||||
; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
; PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
; $Id: child.db.in,v 1.2 2004/05/14 04:58:21 marka Exp $
|
||||
; $Id: child.db.in,v 1.2.2.3 2010/06/04 23:46:02 tbox Exp $
|
||||
|
||||
$TTL 120
|
||||
@ SOA ns hostmaster.ns 1 3600 1200 604800 60
|
||||
@@ -20,3 +20,5 @@ $TTL 120
|
||||
ns A 10.53.0.3
|
||||
foo TXT foo
|
||||
bar TXT bar
|
||||
grand NS ns.grand
|
||||
ns.grand A 10.53.0.6
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* 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.
|
||||
*
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named.conf,v 1.2 2004/05/14 04:58:22 marka Exp $ */
|
||||
/* $Id: named.conf,v 1.2.2.3 2011/05/27 23:49:01 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,8 +1,8 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004, 2010, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
#
|
||||
# Permission to use, copy, modify, and distribute this software for any
|
||||
# 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.
|
||||
#
|
||||
@@ -14,27 +14,32 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: sign.sh,v 1.2 2004/05/14 04:58:22 marka Exp $
|
||||
# $Id: sign.sh,v 1.2.2.5 2011/05/27 23:49:02 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`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $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
|
||||
cat $infile $keyname1.key $keyname2.key ../ns6/dsset-grand.$zone >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
@@ -42,15 +47,14 @@ 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`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $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
|
||||
cat $infile $keyname1.key $keyname2.key ../ns6/dsset-grand.$zone >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
@@ -58,15 +62,14 @@ 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`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $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 -g -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
@@ -74,15 +77,14 @@ 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`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $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 -g -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
@@ -90,14 +92,13 @@ 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`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $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
|
||||
cat $infile $keyname1.key $keyname2.key ../ns6/dsset-grand.$zone >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null
|
||||
$SIGNER -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
@@ -105,14 +106,13 @@ 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`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $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 -g -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
@@ -120,30 +120,150 @@ 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`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $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 -g -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null
|
||||
$SIGNER -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.er
|
||||
echo "I: signed $zone"
|
||||
|
||||
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`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $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=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 -g -r $RANDFILE -l $dlvzone -o $zone -f $outfile $zonefile > /dev/null
|
||||
$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"
|
||||
|
||||
|
||||
@@ -151,14 +271,13 @@ 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`
|
||||
keyname2=`$KEYGEN -f KSK -r $RANDFILE -a DSA -b 768 -n zone $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 $dlvsets $keyname1.key $keyname2.key >$zonefile
|
||||
|
||||
$SIGNER -g -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null
|
||||
$SIGNER -r $RANDFILE -o $zone -f $outfile $zonefile > /dev/null 2> signer.err || cat signer.err
|
||||
echo "I: signed $zone"
|
||||
|
||||
|
||||
@@ -170,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.2.2.7 2007/08/28 07:20:02 tbox Exp $ */
|
||||
/* $Id: named.conf,v 1.2.2.9 2011/05/27 23:49:03 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;
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
; Copyright (C) 2010 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: child.db.in,v 1.2 2010/05/26 06:28:00 marka Exp $
|
||||
|
||||
$TTL 120
|
||||
@ SOA ns hostmaster.ns6 1 3600 1200 604800 60
|
||||
@ NS ns
|
||||
ns A 10.53.0.6
|
||||
foo TXT foo
|
||||
bar TXT bar
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user