Compare commits
2372
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6af32d4dbd | ||
|
|
88c28974d4 | ||
|
|
c74e3b798e | ||
|
|
0c7c87d863 | ||
|
|
f656c66f6b | ||
|
|
8a9a87cc6f | ||
|
|
5598a19cfd | ||
|
|
386c7fdcb7 | ||
|
|
397a8687dc | ||
|
|
a55edf69ec | ||
|
|
8c76e3e793 | ||
|
|
f78b5ea128 | ||
|
|
0b36ba206e | ||
|
|
bb3240f943 | ||
|
|
b34a14edc6 | ||
|
|
51519d9e40 | ||
|
|
15e9ffe1da | ||
|
|
918f79d1df | ||
|
|
32d2ce0e3f | ||
|
|
d349f2ace4 | ||
|
|
e981a3f3aa | ||
|
|
25e14da142 | ||
|
|
d1dfff5a10 | ||
|
|
571e22543a | ||
|
|
ab92476e5b | ||
|
|
45a82933fa | ||
|
|
71032bebe7 | ||
|
|
9caadde54a | ||
|
|
540a7fd3ae | ||
|
|
019498b927 | ||
|
|
3f1219875c | ||
|
|
2500fe2623 | ||
|
|
1ddbd81785 | ||
|
|
9e08c6c01a | ||
|
|
364ecf0e5d | ||
|
|
204ef887fc | ||
|
|
4e33277893 | ||
|
|
7eb3f4ff63 | ||
|
|
45ce811e27 | ||
|
|
c651aebe6d | ||
|
|
57cb8b4b1a | ||
|
|
32ff30bdf2 | ||
|
|
61523c6ccf | ||
|
|
8537f44d0b | ||
|
|
198a3725ac | ||
|
|
adf53c11c1 | ||
|
|
657fd642e7 | ||
|
|
5940594202 | ||
|
|
ace3dd051b | ||
|
|
3250763f2c | ||
|
|
a4c1f732af | ||
|
|
950750b351 | ||
|
|
fae3caaf6f | ||
|
|
16ab9b2264 | ||
|
|
2a093995dc | ||
|
|
7053dc8ca6 | ||
|
|
b788890749 | ||
|
|
b4d196ed98 | ||
|
|
af574a9b39 | ||
|
|
209ddebc12 | ||
|
|
3d2bd4f6de | ||
|
|
a799359c80 | ||
|
|
ff45852f7f | ||
|
|
e3645e4036 | ||
|
|
d43de520e4 | ||
|
|
76bd8ea3a8 | ||
|
|
b4697b6ab1 | ||
|
|
54f7502add | ||
|
|
4cd6dee154 | ||
|
|
689f866a90 | ||
|
|
b703dba08c | ||
|
|
3fc4b6dd1b | ||
|
|
876b708618 | ||
|
|
ab58a069b3 | ||
|
|
8824ef7cfa | ||
|
|
ebaac2c8a9 | ||
|
|
bdd14b654e | ||
|
|
f792aba03b | ||
|
|
5664b2197e | ||
|
|
77ab5a2f2f | ||
|
|
49c32327eb | ||
|
|
b30a42ef87 | ||
|
|
cc0157667f | ||
|
|
a93d8a7764 | ||
|
|
7e9d377011 | ||
|
|
8eb453b890 | ||
|
|
23024252f2 | ||
|
|
c51467315e | ||
|
|
37d9a05a87 | ||
|
|
0879e883b3 | ||
|
|
7c884ecbde | ||
|
|
d81a1b7915 | ||
|
|
b629b52294 | ||
|
|
5096ee1241 | ||
|
|
8d5ae2f842 | ||
|
|
015ae1eb11 | ||
|
|
bc0652a6cb | ||
|
|
d4d7137ecb | ||
|
|
b5e5077d49 | ||
|
|
e632029acf | ||
|
|
5520c45e9b | ||
|
|
fdfd260c4e | ||
|
|
6a23051978 | ||
|
|
0f86ac46ae | ||
|
|
5bd6be8ab7 | ||
|
|
78269d150c | ||
|
|
48e12b656f | ||
|
|
607926d9bc | ||
|
|
09949f91a3 | ||
|
|
50b57d6ce7 | ||
|
|
c9fc66db89 | ||
|
|
f1e4967452 | ||
|
|
7ae60699fe | ||
|
|
3cb6fd179f | ||
|
|
353b500254 | ||
|
|
6451a2bd14 | ||
|
|
9c103e049f | ||
|
|
9bea888217 | ||
|
|
53dda396ac | ||
|
|
3b9b39fa01 | ||
|
|
cbbcb9014f | ||
|
|
cd58d9797d | ||
|
|
7b54fc89fc | ||
|
|
0b4920b006 | ||
|
|
b1b5fb4fb1 | ||
|
|
085e87e610 | ||
|
|
d02e34a045 | ||
|
|
004c0dd6b5 | ||
|
|
6e9e81453d | ||
|
|
e957d3c530 | ||
|
|
257d5b037f | ||
|
|
87ce2b1060 | ||
|
|
04962afb5b | ||
|
|
7b0791f572 | ||
|
|
50a07c343c | ||
|
|
5eecfba890 | ||
|
|
f981c07ba7 | ||
|
|
8030fbee3f | ||
|
|
eb808158ad | ||
|
|
4719e6364f | ||
|
|
1c642c6c67 | ||
|
|
8ca68065c4 | ||
|
|
9f3756cecb | ||
|
|
40958c0b73 | ||
|
|
f4631471a2 | ||
|
|
8eb07cce40 | ||
|
|
20e8335651 | ||
|
|
7307ca6554 | ||
|
|
533616d860 | ||
|
|
42bbb73b03 | ||
|
|
d9a2c650d9 | ||
|
|
8e94cc841f | ||
|
|
547a22e6f8 | ||
|
|
5c7898c148 | ||
|
|
c22f2e4093 | ||
|
|
67c6ea848a | ||
|
|
f11f15ecee | ||
|
|
dc570048ad | ||
|
|
589e86f99f | ||
|
|
69819d676a | ||
|
|
6c6d0c3ef7 | ||
|
|
d8a403a8be | ||
|
|
ed89ac0465 | ||
|
|
f6911c31f9 | ||
|
|
948776dde0 | ||
|
|
3a03cd5d4e | ||
|
|
0d0e1a21ec | ||
|
|
09e21676fa | ||
|
|
a8b49a7815 | ||
|
|
867247f863 | ||
|
|
df9c39975e | ||
|
|
1314ae3759 | ||
|
|
d63246add2 | ||
|
|
a4bd85a009 | ||
|
|
fd1fe00183 | ||
|
|
f64c09ba65 | ||
|
|
33c841f9fc | ||
|
|
7970ae49a6 | ||
|
|
0ff6113261 | ||
|
|
cce57cf062 | ||
|
|
77142dfe71 | ||
|
|
d0caa3dc46 | ||
|
|
71308f34bf | ||
|
|
0798c610fa | ||
|
|
2de11cf2a1 | ||
|
|
c4cdad183b | ||
|
|
9d3faf1448 | ||
|
|
5ce3bf669f | ||
|
|
f2b12cb713 | ||
|
|
6b720b9fb1 | ||
|
|
872c6c261d | ||
|
|
9b1685861b | ||
|
|
03c6cf9998 | ||
|
|
11354ff372 | ||
|
|
2d713a2aa0 | ||
|
|
15e252ef94 | ||
|
|
c6fca95cd0 | ||
|
|
e0ddc1b3e9 | ||
|
|
bd6f1082ec | ||
|
|
b6da642566 | ||
|
|
5dafbe5013 | ||
|
|
101eba57a3 | ||
|
|
360510a440 | ||
|
|
b9cb28effc | ||
|
|
f0aead1abf | ||
|
|
034a483d14 | ||
|
|
24610e18df | ||
|
|
925f84ce92 | ||
|
|
c43d080209 | ||
|
|
ada21070d2 | ||
|
|
a6be3a184f | ||
|
|
40652dd244 | ||
|
|
763362074e | ||
|
|
27e1e9ff4b | ||
|
|
14bfdd5145 | ||
|
|
fcaa745a42 | ||
|
|
7e96cc4696 | ||
|
|
ca7cb7b53f | ||
|
|
9e16bfe80e | ||
|
|
c8f644fe92 | ||
|
|
09a1be1f01 | ||
|
|
7a5f5ec2af | ||
|
|
b9693520fe | ||
|
|
4b5175c834 | ||
|
|
3981c0af39 | ||
|
|
9bf892ead1 | ||
|
|
1cff9801d1 | ||
|
|
2c67878d34 | ||
|
|
32934cecb0 | ||
|
|
75e452a4d0 | ||
|
|
45c11d8755 | ||
|
|
4e41c936d3 | ||
|
|
ea48b4f38b | ||
|
|
b6a74ff1b1 | ||
|
|
46c442835d | ||
|
|
a8a972cc64 | ||
|
|
37235e8ffd | ||
|
|
64cf48df53 | ||
|
|
d0cdabd43d | ||
|
|
fd13b03113 | ||
|
|
f11290cbd7 | ||
|
|
79a3ae39cc | ||
|
|
cb02609903 | ||
|
|
1e9273edba | ||
|
|
d3f7f61cf9 | ||
|
|
86c4f0e78e | ||
|
|
9526a1e08d | ||
|
|
631c3fc123 | ||
|
|
348a297124 | ||
|
|
45ca673a76 | ||
|
|
3e3cd90fe3 | ||
|
|
e256523bd6 | ||
|
|
5adce2b966 | ||
|
|
cc31c8e443 | ||
|
|
4f101fd179 | ||
|
|
a490cb1c51 | ||
|
|
c2bb6225a9 | ||
|
|
6ec3dfd2af | ||
|
|
f30154be76 | ||
|
|
c586565250 | ||
|
|
d5a9b459de | ||
|
|
7eca2b230a | ||
|
|
b62558ef4f | ||
|
|
f2ee0f85cb | ||
|
|
16be45a7f4 | ||
|
|
70f565b977 | ||
|
|
eba040d9c6 | ||
|
|
558d81f11d | ||
|
|
eaeaf4f46f | ||
|
|
9eee9c6409 | ||
|
|
974dd2e224 | ||
|
|
b1b38b22bc | ||
|
|
e7c7209af8 | ||
|
|
43d8ee6dc4 | ||
|
|
17befb55bd | ||
|
|
534a885953 | ||
|
|
edf805b185 | ||
|
|
2b0333407e | ||
|
|
abbde5e2fe | ||
|
|
23e61654ac | ||
|
|
36b36dc9e5 | ||
|
|
47588cbdf1 | ||
|
|
3f26cd737a | ||
|
|
b9b70d4a4d | ||
|
|
327500822e | ||
|
|
fbeaef0fb0 | ||
|
|
858187ff3b | ||
|
|
75e772b59d | ||
|
|
7b42babfea | ||
|
|
0b21f45431 | ||
|
|
2ad64370fd | ||
|
|
2e9d59dd15 | ||
|
|
beb6f16a99 | ||
|
|
6e6f86392f | ||
|
|
149bd39bf0 | ||
|
|
95bef6b2cf | ||
|
|
6dd3684961 | ||
|
|
1f85102b2a | ||
|
|
d665ddbf70 | ||
|
|
7dd768823b | ||
|
|
8795fecbbe | ||
|
|
c072541ca0 | ||
|
|
a54a5fd60e | ||
|
|
246a5586f1 | ||
|
|
b1f59e4606 | ||
|
|
4a462bd067 | ||
|
|
ec541505fa | ||
|
|
d51b7acff3 | ||
|
|
be93322111 | ||
|
|
9811bf1c7d | ||
|
|
f5d894d721 | ||
|
|
36bee53b91 | ||
|
|
68761692d6 | ||
|
|
bdc16544b1 | ||
|
|
39d9d41200 | ||
|
|
968368a0b5 | ||
|
|
c58246a801 | ||
|
|
72d20be848 | ||
|
|
1632c5931b | ||
|
|
31f782b605 | ||
|
|
6af78d13a0 | ||
|
|
59259b9f38 | ||
|
|
5b7b4fa54b | ||
|
|
70e0923710 | ||
|
|
fb843dc96a | ||
|
|
53ae43cea1 | ||
|
|
b6768c488c | ||
|
|
1c5c9f592a | ||
|
|
ba411bf0c9 | ||
|
|
a0bde96546 | ||
|
|
d84309ef74 | ||
|
|
64e10ec5f6 | ||
|
|
bf6690596b | ||
|
|
4583255b24 | ||
|
|
2082485a73 | ||
|
|
2beec845b4 | ||
|
|
269318dff9 | ||
|
|
9ab048a866 | ||
|
|
e2de4e760c | ||
|
|
6d0a5841ce | ||
|
|
599775372a | ||
|
|
5de3c05b17 | ||
|
|
4c887ecd0e | ||
|
|
a3dbde27f4 | ||
|
|
ac2ac81731 | ||
|
|
ce8cc06b6f | ||
|
|
321e7ff4b8 | ||
|
|
41a085f283 | ||
|
|
2c9698f360 | ||
|
|
1a3632db69 | ||
|
|
5372026f4e | ||
|
|
0dad651086 | ||
|
|
0398af52fa | ||
|
|
a01a37def3 | ||
|
|
b8c4aca1b7 | ||
|
|
03a93e269f | ||
|
|
f8e2c32d29 | ||
|
|
1ec2d7e807 | ||
|
|
65fb9b21f5 | ||
|
|
f310b3dce5 | ||
|
|
cb27330e5c | ||
|
|
f49ff4a82c | ||
|
|
7deeb1a9d2 | ||
|
|
ff15771dee | ||
|
|
665cfabe88 | ||
|
|
2171488708 | ||
|
|
b8072cb4bc | ||
|
|
7f4214fd1a | ||
|
|
42150579ae | ||
|
|
291f63ced1 | ||
|
|
e8c02bdafc | ||
|
|
58a2d0aa43 | ||
|
|
08c44d5e4d | ||
|
|
b6f29c6d01 | ||
|
|
79650d87c6 | ||
|
|
8968554786 | ||
|
|
683a27fd16 | ||
|
|
9de47c3e20 | ||
|
|
0d26ffb398 | ||
|
|
581cbb04c8 | ||
|
|
0b62ea07dd | ||
|
|
a10d82634c | ||
|
|
32ff3f4b78 | ||
|
|
10de7852bd | ||
|
|
398aa77a34 | ||
|
|
24d8da4f0f | ||
|
|
2e28ce5da6 | ||
|
|
9df9ea7daa | ||
|
|
a955cdf5b5 | ||
|
|
c9aab81abd | ||
|
|
3ac569ccdb | ||
|
|
8e3192c38d | ||
|
|
77d4febaa9 | ||
|
|
41c2a7b1e7 | ||
|
|
9788b328d0 | ||
|
|
c23d30fe02 | ||
|
|
33f72fe9f7 | ||
|
|
01e5800d6b | ||
|
|
6365b4eaae | ||
|
|
61877a80eb | ||
|
|
f47f684fb1 | ||
|
|
3dfa0a6ee8 | ||
|
|
9d3085883b | ||
|
|
2cd401dfb6 | ||
|
|
c22f3a66c7 | ||
|
|
c845e4a307 | ||
|
|
7ac2b23c54 | ||
|
|
a0853471cd | ||
|
|
78ffe3652b | ||
|
|
970215fe11 | ||
|
|
df786cc25c | ||
|
|
4c1eb76521 | ||
|
|
42fa16c074 | ||
|
|
f076be3f00 | ||
|
|
652b1e8834 | ||
|
|
f8c31fd158 | ||
|
|
f6a185d135 | ||
|
|
2bf0663118 | ||
|
|
a777002cad | ||
|
|
bb148d6903 | ||
|
|
25ec2a4109 | ||
|
|
081231b5eb | ||
|
|
ca65205b3f | ||
|
|
682db59b71 | ||
|
|
90ee0e12bd | ||
|
|
3a3671332d | ||
|
|
0e1e93c385 | ||
|
|
8c1109d5bf | ||
|
|
d94602779b | ||
|
|
cc8baeb284 | ||
|
|
c682238906 | ||
|
|
7f06b20a83 | ||
|
|
52ca8590dc | ||
|
|
04c34ec06b | ||
|
|
4bbc08f9a8 | ||
|
|
93c19f7621 | ||
|
|
74a0f19645 | ||
|
|
701606a1d0 | ||
|
|
df9b583547 | ||
|
|
8c7ba5a7f8 | ||
|
|
5ffb0573bd | ||
|
|
fc91c2c300 | ||
|
|
601cdb5f7d | ||
|
|
f02f4b6a6f | ||
|
|
3984718a9e | ||
|
|
edc78a0f1b | ||
|
|
b04446fa5f | ||
|
|
2342724b72 | ||
|
|
f36d5f257f | ||
|
|
ac255047aa | ||
|
|
eb2a2f2770 | ||
|
|
6a2bfeed4a | ||
|
|
e8d0069146 | ||
|
|
2d46c5fd9c | ||
|
|
754ddedcfd | ||
|
|
8eb14452d6 | ||
|
|
836e227e8e | ||
|
|
17820c59a5 | ||
|
|
95b0663467 | ||
|
|
2b92da1288 | ||
|
|
a937e32c70 | ||
|
|
0f5d05610e | ||
|
|
673cc90d4b | ||
|
|
c6897c35e4 | ||
|
|
b5b8e9569a | ||
|
|
c285df25e0 | ||
|
|
ab507a4e06 | ||
|
|
fcb7624340 | ||
|
|
4c8de525fa | ||
|
|
977b7ac162 | ||
|
|
b1bb8a9e51 | ||
|
|
dd9e257800 | ||
|
|
62f14d5826 | ||
|
|
76e0ae847a | ||
|
|
81269541d2 | ||
|
|
573eb75e0f | ||
|
|
229892a099 | ||
|
|
962c241c43 | ||
|
|
17271f13a6 | ||
|
|
8fc65d1f05 | ||
|
|
3628f04492 | ||
|
|
51ae34b0c8 | ||
|
|
89af8f9be3 | ||
|
|
3a0ff7fca7 | ||
|
|
0d374582db | ||
|
|
6453c5315b | ||
|
|
2592dc5de7 | ||
|
|
66b64c3fce | ||
|
|
1b5d6c5450 | ||
|
|
e8da1d8078 | ||
|
|
5231c6a26c | ||
|
|
c4d6a78f38 | ||
|
|
ea660b0770 | ||
|
|
4afeb31498 | ||
|
|
cc4569d518 | ||
|
|
8ab3b4e7c7 | ||
|
|
32f6a22e89 | ||
|
|
257b8a080c | ||
|
|
531e809a1d | ||
|
|
b192d13a5a | ||
|
|
db2cb7eaae | ||
|
|
6a8119e46d | ||
|
|
6751efae8d | ||
|
|
40f6436384 | ||
|
|
f06f816ec9 | ||
|
|
f33395b687 | ||
|
|
b5ff9e5b3d | ||
|
|
581d77363d | ||
|
|
3335f10b81 | ||
|
|
929e50bfe0 | ||
|
|
93b52e00f9 | ||
|
|
a790c8d8a6 | ||
|
|
39b1eee8cf | ||
|
|
dedff3528e | ||
|
|
fe5f32b812 | ||
|
|
67c71db8b3 | ||
|
|
db9126fe69 | ||
|
|
2871055d09 | ||
|
|
61c8049230 | ||
|
|
0d7aa181e1 | ||
|
|
1a02cf771e | ||
|
|
71ad25ba17 | ||
|
|
fd1a0b559b | ||
|
|
dd13cbb093 | ||
|
|
c89e5fd4c8 | ||
|
|
9530453877 | ||
|
|
08620bad8a | ||
|
|
039f179f7e | ||
|
|
6f3d8d9dbb | ||
|
|
dda6a063a2 | ||
|
|
95a62b6747 | ||
|
|
3edc4dba34 | ||
|
|
7a14a22434 | ||
|
|
49f4392f32 | ||
|
|
4ed74e6600 | ||
|
|
8feff2ab3c | ||
|
|
134088b1e9 | ||
|
|
ad4090df9e | ||
|
|
d5a4201f36 | ||
|
|
61201a7a3e | ||
|
|
a371376de9 | ||
|
|
a22db1268c | ||
|
|
a6aff319f0 | ||
|
|
fcd518304a | ||
|
|
cf8f0db28b | ||
|
|
cb3ccbe4da | ||
|
|
6fcfecea15 | ||
|
|
74cfe49e38 | ||
|
|
29a9728c08 | ||
|
|
a416e52fb7 | ||
|
|
f0f91dfa7f | ||
|
|
ef1cc6ebd7 | ||
|
|
ce4ea46dd3 | ||
|
|
546c311c66 | ||
|
|
069fa1eb10 | ||
|
|
465e37a68c | ||
|
|
71bebb88b6 | ||
|
|
b4daf94423 | ||
|
|
ea582b291f | ||
|
|
e02ba543db | ||
|
|
bd9aa58852 | ||
|
|
3992adce1d | ||
|
|
a4a309f65b | ||
|
|
83cac3fd35 | ||
|
|
ca7b9f18da | ||
|
|
1692740692 | ||
|
|
5e62f59109 | ||
|
|
67d3024936 | ||
|
|
29cadafdb8 | ||
|
|
4a8ee6dc04 | ||
|
|
1c6a9c6bd8 | ||
|
|
9253108001 | ||
|
|
70c9938c8b | ||
|
|
ce9a9ac5d5 | ||
|
|
8a6f58e42b | ||
|
|
4ee39d50ef | ||
|
|
ef96028e7c | ||
|
|
9781ffef82 | ||
|
|
c580f18a41 | ||
|
|
fd20faa237 | ||
|
|
52ca456df6 | ||
|
|
441bd60bb8 | ||
|
|
4ca55f0eb6 | ||
|
|
6e91d9a41b | ||
|
|
b4f150ede2 | ||
|
|
b0843937e8 | ||
|
|
65fdd59d4c | ||
|
|
82b95385ef | ||
|
|
4503f9e859 | ||
|
|
4c63c71cbb | ||
|
|
a99c7533ee | ||
|
|
8558d6300e | ||
|
|
b29b68213c | ||
|
|
c84b3cfb02 | ||
|
|
dc102ed192 | ||
|
|
b7955c9c28 | ||
|
|
afc268ebb8 | ||
|
|
3f23634f0e | ||
|
|
e2603103fe | ||
|
|
7613e9e7cb | ||
|
|
cf781cc854 | ||
|
|
9a36ef794e | ||
|
|
b51999faf8 | ||
|
|
fd5449f4f8 | ||
|
|
691d1d2c86 | ||
|
|
a8533305a2 | ||
|
|
8c6d81740b | ||
|
|
11a3eab225 | ||
|
|
6595f581bf | ||
|
|
a2b4901925 | ||
|
|
e8cc0e173c | ||
|
|
82b4a7b73e | ||
|
|
32bd2f5d3c | ||
|
|
05e2dd6a15 | ||
|
|
1a3fb98614 | ||
|
|
37e0b1bcbd | ||
|
|
918555fc4a | ||
|
|
81a53300ee | ||
|
|
f240cd7599 | ||
|
|
783468308e | ||
|
|
3ec4216b58 | ||
|
|
a55a9cf494 | ||
|
|
c282d8a75b | ||
|
|
acbd22483c | ||
|
|
d148bf327f | ||
|
|
d0cf4c7802 | ||
|
|
a2b9c707aa | ||
|
|
d3c395f4db | ||
|
|
70a9f173bb | ||
|
|
23dd98b032 | ||
|
|
31ef8a7413 | ||
|
|
f0cc58ba10 | ||
|
|
612e5be76a | ||
|
|
b33c04170d | ||
|
|
c94694bfd7 | ||
|
|
7a6f43b11e | ||
|
|
fbdb4098b0 | ||
|
|
4739c6bad9 | ||
|
|
eb788c2447 | ||
|
|
572d70e02e | ||
|
|
65fec4fa4b | ||
|
|
687bb8ca0e | ||
|
|
5781c9f608 | ||
|
|
a4eea6b1ca | ||
|
|
e86f92fc9f | ||
|
|
38c6b289f9 | ||
|
|
11ab9abc93 | ||
|
|
871e091d33 | ||
|
|
d8674d3810 | ||
|
|
9ba8f65e98 | ||
|
|
5717db8dad | ||
|
|
d38338fd85 | ||
|
|
07a0a4dedb | ||
|
|
8398bf3d13 | ||
|
|
2632325ab1 | ||
|
|
40eaf6ebae | ||
|
|
1e112f85f6 | ||
|
|
9713618f1d | ||
|
|
7ac24b68f7 | ||
|
|
688cf68c1f | ||
|
|
29cc00edb7 | ||
|
|
455fff78cf | ||
|
|
28b603e094 | ||
|
|
62ccc1a14c | ||
|
|
0fda82b42b | ||
|
|
f5965ba439 | ||
|
|
48819570a4 | ||
|
|
e90c12aa1a | ||
|
|
e1389d0fc0 | ||
|
|
7ac50d49b3 | ||
|
|
78b2b685f5 | ||
|
|
8b9ce3a945 | ||
|
|
d2f6d12a22 | ||
|
|
45ed7563d3 | ||
|
|
bb989de483 | ||
|
|
12cc8e4b55 | ||
|
|
494956367e | ||
|
|
3c35c14f4a | ||
|
|
22e3009f38 | ||
|
|
2b3faeab85 | ||
|
|
97f56425ad | ||
|
|
a793e659f5 | ||
|
|
c6825bef82 | ||
|
|
6a24616ccf | ||
|
|
d2262312eb | ||
|
|
d6bc7dc77c | ||
|
|
db68945438 | ||
|
|
dc9823fb8a | ||
|
|
14e26c0959 | ||
|
|
7e2c785e5e | ||
|
|
7f687c254f | ||
|
|
1d445ba9c6 | ||
|
|
d7ae34d839 | ||
|
|
fd4c85061a | ||
|
|
85119d84b9 | ||
|
|
7467b14c0c | ||
|
|
62b55f2813 | ||
|
|
2dccf11e3a | ||
|
|
4c697150a3 | ||
|
|
847cdc2372 | ||
|
|
d34e308213 | ||
|
|
45d403032d | ||
|
|
3f4ba1fa54 | ||
|
|
3169fab89f | ||
|
|
605095f7e0 | ||
|
|
b1fdb5273a | ||
|
|
c29205c329 | ||
|
|
15a75bf608 | ||
|
|
e9dfa90049 | ||
|
|
6fd741539a | ||
|
|
48a46376cc | ||
|
|
3f91210cb6 | ||
|
|
a7af4a545b | ||
|
|
41d335872e | ||
|
|
4dd839d8e2 | ||
|
|
1b5c297c2d | ||
|
|
b6e1726eac | ||
|
|
f5611188f2 | ||
|
|
f25f2b207c | ||
|
|
bf4134c520 | ||
|
|
bd6d1e72b3 | ||
|
|
0fa710047e | ||
|
|
5c17396f5c | ||
|
|
809adc90e9 | ||
|
|
9ecd6ad01d | ||
|
|
063e8ae6cd | ||
|
|
85855bd04a | ||
|
|
f6ce33c392 | ||
|
|
fdcf4e9a88 | ||
|
|
73f6bc3ebb | ||
|
|
915155738e | ||
|
|
2cb9555c26 | ||
|
|
ebd1cb38cb | ||
|
|
5046eb9e1a | ||
|
|
35973584f3 | ||
|
|
20737d23f6 | ||
|
|
674e2cd3c8 | ||
|
|
cad1ee5fde | ||
|
|
c5d451695e | ||
|
|
22fe67981e | ||
|
|
5b5b2e5e6c | ||
|
|
e4b4f2ed77 | ||
|
|
340265ed8a | ||
|
|
da45cf7d9f | ||
|
|
265454279b | ||
|
|
8a57d5e942 | ||
|
|
1b35f8454b | ||
|
|
ded997a823 | ||
|
|
9af7e3b726 | ||
|
|
bf99944cd3 | ||
|
|
bf157cf5f4 | ||
|
|
69a1852134 | ||
|
|
9634848023 | ||
|
|
3365971166 | ||
|
|
cb896a6507 | ||
|
|
83f4f1c61b | ||
|
|
7558285577 | ||
|
|
2533514b8b | ||
|
|
ee34af0d10 | ||
|
|
c935b96e9c | ||
|
|
5b1d5028da | ||
|
|
82b403ea73 | ||
|
|
6a7faae8cc | ||
|
|
0dbb98778e | ||
|
|
2d3535112d | ||
|
|
b99ebe6c92 | ||
|
|
d800ae7802 | ||
|
|
31ed5789d1 | ||
|
|
0cd7b779d3 | ||
|
|
3a41396c3b | ||
|
|
bbd11f9c74 | ||
|
|
c069179cab | ||
|
|
3b444759a8 | ||
|
|
172f4853b7 | ||
|
|
77c23033c8 | ||
|
|
43d6b173bc | ||
|
|
6e3f51505e | ||
|
|
d261593e81 | ||
|
|
9533ace890 | ||
|
|
555d3a5f64 | ||
|
|
785944ebd1 | ||
|
|
b9576c1a55 | ||
|
|
110fd066b2 | ||
|
|
9455840478 | ||
|
|
33412a6755 | ||
|
|
100ceaf76e | ||
|
|
5be5c9dd6c | ||
|
|
c3b1a39f38 | ||
|
|
cbf8f049ea | ||
|
|
48d17ac717 | ||
|
|
4733ef3db6 | ||
|
|
3b9a2e08f8 | ||
|
|
fa79b32d9e | ||
|
|
1a4be1e7c3 | ||
|
|
bddfc920b0 | ||
|
|
0ff5d479be | ||
|
|
82ed23194e | ||
|
|
9ad02d655e | ||
|
|
2b0bbc0f21 | ||
|
|
a9341a82f1 | ||
|
|
d0d0200ad6 | ||
|
|
3bb6385d0e | ||
|
|
621d2e0204 | ||
|
|
15cc67ef12 | ||
|
|
fd15b7aae4 | ||
|
|
e29f472f80 | ||
|
|
99162dd8fa | ||
|
|
c49683433b | ||
|
|
669aed2158 | ||
|
|
f47f63e541 | ||
|
|
1698f6c929 | ||
|
|
65232ec5fa | ||
|
|
b396825615 | ||
|
|
154d3adcbc | ||
|
|
e734a20ff0 | ||
|
|
1addc7c818 | ||
|
|
a60c4bb0c8 | ||
|
|
3b5fbbf5fe | ||
|
|
ef7186adef | ||
|
|
7387ca7a82 | ||
|
|
ca31f9bf14 | ||
|
|
dc6ecfde62 | ||
|
|
adbb626636 | ||
|
|
d865e14494 | ||
|
|
d003a234cf | ||
|
|
991aecda47 | ||
|
|
11fc4e9d94 | ||
|
|
e45d820cf6 | ||
|
|
77351922c5 | ||
|
|
6b1cb71807 | ||
|
|
e4bcbf4a4e | ||
|
|
4120ec8591 | ||
|
|
789547be22 | ||
|
|
1090746b55 | ||
|
|
e15400ccec | ||
|
|
acfc813fe3 | ||
|
|
c0f1383f02 | ||
|
|
2233651298 | ||
|
|
77d878b630 | ||
|
|
b7be8695c2 | ||
|
|
62f4976ba2 | ||
|
|
d78521d0f1 | ||
|
|
7060c33697 | ||
|
|
895e90d967 | ||
|
|
016b20872a | ||
|
|
6185a29b3e | ||
|
|
87ec3cc5e0 | ||
|
|
7e67387531 | ||
|
|
473461077d | ||
|
|
d7ffccecc0 | ||
|
|
78b5fca661 | ||
|
|
8cf8ec5c40 | ||
|
|
a8b440c1a1 | ||
|
|
d762a9808d | ||
|
|
38aa6b80f4 | ||
|
|
0f20ac1514 | ||
|
|
59a1d41ca9 | ||
|
|
7bcd1bf151 | ||
|
|
be69f7e809 | ||
|
|
d814fa446b | ||
|
|
cd8571aa95 | ||
|
|
c1d6d061c1 | ||
|
|
aceb10d783 | ||
|
|
d6b2dca644 | ||
|
|
c8ba3fc75d | ||
|
|
8116f2b24d | ||
|
|
7b4713a02e | ||
|
|
e8f1b1213d | ||
|
|
379e2ac37f | ||
|
|
ed9e1d0fa6 | ||
|
|
bf094b5cca | ||
|
|
c313719d03 | ||
|
|
f246dfbfdf | ||
|
|
dde140cb6f | ||
|
|
b737488df5 | ||
|
|
1999760f5d | ||
|
|
2f809da8bc | ||
|
|
064a2bea35 | ||
|
|
84644c3f38 | ||
|
|
cafd42ef9d | ||
|
|
d96dfb6b2a | ||
|
|
dfefcdbc5d | ||
|
|
1ad60cdae7 | ||
|
|
54b07e13d5 | ||
|
|
2bc71862f6 | ||
|
|
e965f61466 | ||
|
|
4c74c25bf5 | ||
|
|
15641b74aa | ||
|
|
85f91f6416 | ||
|
|
f4064f6488 | ||
|
|
025933687a | ||
|
|
d575c37a64 | ||
|
|
51b7bdb802 | ||
|
|
13ec66ef56 | ||
|
|
8cd861021b | ||
|
|
6d511577b0 | ||
|
|
fc966bc8b7 | ||
|
|
83da3b502c | ||
|
|
d14f0bc8dd | ||
|
|
f463c3611b | ||
|
|
417a6e5ce9 | ||
|
|
8b1aabd2a7 | ||
|
|
06de2249b5 | ||
|
|
7c56a5fa65 | ||
|
|
60383f3479 | ||
|
|
0d16ffbb38 | ||
|
|
376b338da4 | ||
|
|
0b619c6751 | ||
|
|
fba67c8aef | ||
|
|
f79d8d3e0a | ||
|
|
b7ae61a21b | ||
|
|
66040ff693 | ||
|
|
bf31eeeee8 | ||
|
|
19286de949 | ||
|
|
159b4147ae | ||
|
|
2adf1074e4 | ||
|
|
f6ad003ecf | ||
|
|
ff8dbeaea2 | ||
|
|
414b674e7c | ||
|
|
c5548964bf | ||
|
|
e946c1762a | ||
|
|
4d1b079ac6 | ||
|
|
fe3ce1da2b | ||
|
|
41ca3ff801 | ||
|
|
77f4a19e4e | ||
|
|
89645a2265 | ||
|
|
851bccc5a1 | ||
|
|
2b24897c64 | ||
|
|
011f157473 | ||
|
|
b3efdb08bd | ||
|
|
38dfbc0462 | ||
|
|
96936dcdab | ||
|
|
d61efe262b | ||
|
|
b55dbfdc1e | ||
|
|
2327cb8332 | ||
|
|
2c50f32188 | ||
|
|
bc6393b238 | ||
|
|
015872cba9 | ||
|
|
40fa732370 | ||
|
|
37b7f9ed76 | ||
|
|
5773bce67f | ||
|
|
4c0de19d1b | ||
|
|
2358a7881c | ||
|
|
593f1e35d7 | ||
|
|
863a0dbd20 | ||
|
|
0a3856d2c4 | ||
|
|
64a1132d74 | ||
|
|
7a0ca2b0c7 | ||
|
|
c057a9b862 | ||
|
|
6fc5dc883e | ||
|
|
d44cb7d304 | ||
|
|
e51b6ade48 | ||
|
|
babe8e1954 | ||
|
|
b6d8f4bcf7 | ||
|
|
4a2abf6faa | ||
|
|
419ef16980 | ||
|
|
8f9cf97d96 | ||
|
|
6dd373ebab | ||
|
|
fc5f2e310e | ||
|
|
7000688bfc | ||
|
|
35e6e7bfe9 | ||
|
|
5d900d5216 | ||
|
|
0f862dd540 | ||
|
|
5dd7596365 | ||
|
|
1bf261f075 | ||
|
|
63aaf0dba0 | ||
|
|
53f747143d | ||
|
|
ea155b7f8b | ||
|
|
8a2c86ea10 | ||
|
|
c02a729605 | ||
|
|
0b53de22db | ||
|
|
86039977b2 | ||
|
|
62bffa3ef0 | ||
|
|
5f01b84397 | ||
|
|
12f0fa2a6a | ||
|
|
905b16ef04 | ||
|
|
3267c08327 | ||
|
|
4b7c993dc2 | ||
|
|
7a9bb15a3c | ||
|
|
68e2731590 | ||
|
|
3602d7ba6a | ||
|
|
203987b1f6 | ||
|
|
ea2b2d9b49 | ||
|
|
28d84645bb | ||
|
|
94a0e96ade | ||
|
|
480c85c467 | ||
|
|
d9e9d845a5 | ||
|
|
f0903fa41f | ||
|
|
f12b694d74 | ||
|
|
1a035f7c01 | ||
|
|
b8be986508 | ||
|
|
3967e289ce | ||
|
|
1f6eacb5f2 | ||
|
|
fd10c6096f | ||
|
|
a7ff07d136 | ||
|
|
efb73dcab3 | ||
|
|
4621e0afc1 | ||
|
|
4d05c5e4c3 | ||
|
|
b3059b496a | ||
|
|
c5dc89ae15 | ||
|
|
e080b58ad2 | ||
|
|
063f6cb1f6 | ||
|
|
368f38ff7e | ||
|
|
30e201af17 | ||
|
|
7fbd853c14 | ||
|
|
e496dc109f | ||
|
|
47b7602b32 | ||
|
|
52d14ab8a0 | ||
|
|
88cc2316d2 | ||
|
|
932d1ded69 | ||
|
|
dae8f07882 | ||
|
|
d2d4121e41 | ||
|
|
1ba011353f | ||
|
|
d6ed4b9543 | ||
|
|
77e391dcf0 | ||
|
|
7361f7b44e | ||
|
|
a1b85f0dc5 | ||
|
|
d2ec48155a | ||
|
|
032b797c12 | ||
|
|
030c95db8b | ||
|
|
d396fa4d7b | ||
|
|
23a90cc905 | ||
|
|
2a15134ad8 | ||
|
|
49c2c7f047 | ||
|
|
70098b1589 | ||
|
|
4f0ae1f09f | ||
|
|
5bfdeeb223 | ||
|
|
c828da6fd2 | ||
|
|
47181231d7 | ||
|
|
f4bf81792a | ||
|
|
9f0648fcdb | ||
|
|
836542c79d | ||
|
|
a6213e6566 | ||
|
|
5b14ab9dc9 | ||
|
|
50e99b5431 | ||
|
|
a6c4c2e290 | ||
|
|
524fb791e1 | ||
|
|
a680251f6b | ||
|
|
1216351b41 | ||
|
|
c4135d6b8e | ||
|
|
391b853668 | ||
|
|
881c1a4e65 | ||
|
|
eddebea2b4 | ||
|
|
d1e2909418 | ||
|
|
7db4c7b5b5 | ||
|
|
d8c4983127 | ||
|
|
2b6899f41f | ||
|
|
232eb5b99c | ||
|
|
f034123382 | ||
|
|
bbc2f43f5f | ||
|
|
ed6abf57cb | ||
|
|
2f19fa2364 | ||
|
|
745452dd8d | ||
|
|
751e78699c | ||
|
|
6fac8250fe | ||
|
|
882ab80d57 | ||
|
|
e89954332f | ||
|
|
c6b94cea88 | ||
|
|
bd3d28a0e1 | ||
|
|
19ad23141e | ||
|
|
4db1370d72 | ||
|
|
4ebf39bfb0 | ||
|
|
0ac301ced6 | ||
|
|
88633933a0 | ||
|
|
9032c19495 | ||
|
|
c802ba3785 | ||
|
|
89beaff53c | ||
|
|
0fa725f3bf | ||
|
|
4d555ab24a | ||
|
|
91a4d82324 | ||
|
|
1ddd383a5c | ||
|
|
8d21fb1375 | ||
|
|
1dfe15d60e | ||
|
|
05fccbb44f | ||
|
|
452a20766e | ||
|
|
bb4175dc30 | ||
|
|
513eac3fa9 | ||
|
|
a7580c035f | ||
|
|
d9d1c24e08 | ||
|
|
ebd1736e8f | ||
|
|
0ffe6373a5 | ||
|
|
05bec7caf8 | ||
|
|
2fbf06bcc8 | ||
|
|
07fc520149 | ||
|
|
f3b8d1f983 | ||
|
|
a407a2a647 | ||
|
|
ffec7b548a | ||
|
|
2a55bd28af | ||
|
|
7d27e29272 | ||
|
|
0f4fb51b1f | ||
|
|
29c4e473a5 | ||
|
|
659792d80a | ||
|
|
0910a0b9fb | ||
|
|
46da8e1665 | ||
|
|
7cda99b512 | ||
|
|
793c8a025a | ||
|
|
5564fe84c5 | ||
|
|
0b693c3cc3 | ||
|
|
da97d91bbf | ||
|
|
2ac13a1d85 | ||
|
|
aeac83f581 | ||
|
|
c0f4d881ad | ||
|
|
c5f5e28dcd | ||
|
|
00b2212e0d | ||
|
|
08ac7f3da1 | ||
|
|
0a58ce1677 | ||
|
|
874d107342 | ||
|
|
9548421f81 | ||
|
|
d96510b789 | ||
|
|
33e22751d5 | ||
|
|
1c0426be14 | ||
|
|
de9953980e | ||
|
|
a1daec7a10 | ||
|
|
199727a752 | ||
|
|
a5607f268d | ||
|
|
84ddf924f1 | ||
|
|
f9cc7d28c5 | ||
|
|
6b658869ba | ||
|
|
0a2a4750b3 | ||
|
|
a9fb68beb3 | ||
|
|
a9eff2fe00 | ||
|
|
fd4f29edf2 | ||
|
|
22e77ee039 | ||
|
|
2ca671d4d2 | ||
|
|
e3d0f21f53 | ||
|
|
1e98c82a59 | ||
|
|
b0e27f785a | ||
|
|
8850c3eb35 | ||
|
|
04b5e1489a | ||
|
|
a75a475780 | ||
|
|
160d5cb860 | ||
|
|
ad385e3aaa | ||
|
|
585530bce3 | ||
|
|
975203a88d | ||
|
|
9f3efdacd0 | ||
|
|
7a6c7b4622 | ||
|
|
53d275bcf7 | ||
|
|
41810688a1 | ||
|
|
8c6e8dd6c1 | ||
|
|
1151904454 | ||
|
|
abcb1ed6e5 | ||
|
|
ed677aad5b | ||
|
|
44eb0b53da | ||
|
|
b61ea69aa3 | ||
|
|
b8f0ed1a12 | ||
|
|
18103754d2 | ||
|
|
44da510c99 | ||
|
|
3a403b358a | ||
|
|
89a68a7d46 | ||
|
|
9a9a197636 | ||
|
|
19c5764f41 | ||
|
|
f0c059899e | ||
|
|
6605a0132b | ||
|
|
ce1eb06d2a | ||
|
|
aa9637307b | ||
|
|
13f7fc506f | ||
|
|
f48478f001 | ||
|
|
5a4f843d3e | ||
|
|
8a5052e802 | ||
|
|
ed04eeab8a | ||
|
|
9a5a8bc9dd | ||
|
|
db1c68a9c1 | ||
|
|
2faa53af39 | ||
|
|
9a350f520a | ||
|
|
c1b270ae40 | ||
|
|
d6b5a7bd1b | ||
|
|
f54fe6f19c | ||
|
|
f5933d79ca | ||
|
|
b134097b24 | ||
|
|
0e54a77925 | ||
|
|
88a65863a5 | ||
|
|
5675d2de03 | ||
|
|
c071a6581e | ||
|
|
b89e028c05 | ||
|
|
5c15917576 | ||
|
|
3c3d03e138 | ||
|
|
b08b711e2a | ||
|
|
ec9d326340 | ||
|
|
7a178c0287 | ||
|
|
a49c3566a7 | ||
|
|
5b8794da73 | ||
|
|
d29938ee0d | ||
|
|
526b51ec93 | ||
|
|
bbc6cb37ae | ||
|
|
b44a3cb109 | ||
|
|
8e4c7e687f | ||
|
|
0d4ec7d9ac | ||
|
|
d7112a033e | ||
|
|
aa691f6fb4 | ||
|
|
c653b35f51 | ||
|
|
c4f131dce9 | ||
|
|
11941bb7c6 | ||
|
|
857a10c5ac | ||
|
|
7c8c5acdcf | ||
|
|
496d013619 | ||
|
|
c4c7fdf98e | ||
|
|
7a3e203b2d | ||
|
|
c81992af09 | ||
|
|
9285be523f | ||
|
|
1d276ca824 | ||
|
|
9996a31fcb | ||
|
|
20d459121d | ||
|
|
b7601f1e78 | ||
|
|
258b3ae519 | ||
|
|
0b80655d1b | ||
|
|
438e0483b7 | ||
|
|
5d72579040 | ||
|
|
9a99e3c47e | ||
|
|
db11e9d7be | ||
|
|
73027787e1 | ||
|
|
3d0d33a56e | ||
|
|
652333b000 | ||
|
|
29baaada1d | ||
|
|
7c704b42da | ||
|
|
871a3ebc69 | ||
|
|
20a5f2b794 | ||
|
|
d41be7b849 | ||
|
|
1d6b2871c2 | ||
|
|
bcea85a562 | ||
|
|
83032e39d7 | ||
|
|
1105a4fcfc | ||
|
|
ff349e3d68 | ||
|
|
1e9a6f3e14 | ||
|
|
47e040c48e | ||
|
|
4c80eea432 | ||
|
|
607c35a5c1 | ||
|
|
71986a4364 | ||
|
|
f324e5035a | ||
|
|
b5906d8cf0 | ||
|
|
17d466904b | ||
|
|
2e19f9ff58 | ||
|
|
445adcb95d | ||
|
|
e28efdcf09 | ||
|
|
69c1260911 | ||
|
|
d50a91b4b5 | ||
|
|
3db330edf8 | ||
|
|
6c0d104d75 | ||
|
|
538e4f74bf | ||
|
|
d1288b14be | ||
|
|
2d032cd20f | ||
|
|
31474958ea | ||
|
|
c05a5e1d73 | ||
|
|
031da3eb0c | ||
|
|
a45a2e965c | ||
|
|
f00527a575 | ||
|
|
a9a775cdda | ||
|
|
377cb850d2 | ||
|
|
b6effcfad3 | ||
|
|
932edca56d | ||
|
|
2fb9f87ccc | ||
|
|
af8a702ffa | ||
|
|
bed2bf2ec7 | ||
|
|
e385b3f9b9 | ||
|
|
e77ffda2f2 | ||
|
|
453e098b25 | ||
|
|
b05158a67d | ||
|
|
f3214d80cc | ||
|
|
5b4db46db2 | ||
|
|
676ee9185a | ||
|
|
cbf9f32246 | ||
|
|
69dfa864d5 | ||
|
|
6a33380ecf | ||
|
|
98ec74d568 | ||
|
|
3abc7a1f90 | ||
|
|
fc7e537b45 | ||
|
|
ca6dd4b475 | ||
|
|
a8ab505429 | ||
|
|
ef1fd9eb5e | ||
|
|
cf5edf83ec | ||
|
|
c1bf2a2775 | ||
|
|
448e2663ac | ||
|
|
83e6c42cdd | ||
|
|
c177dec7c5 | ||
|
|
cc80af09cd | ||
|
|
fcf1934be8 | ||
|
|
bfdef2abaf | ||
|
|
ecb10f595d | ||
|
|
fb2888c3a5 | ||
|
|
081a9dc448 | ||
|
|
0f1c24fec6 | ||
|
|
3ba7bb9664 | ||
|
|
92fd5d1b25 | ||
|
|
ada7ae72c3 | ||
|
|
cf1ddc33ee | ||
|
|
33cd4d9181 | ||
|
|
743770f874 | ||
|
|
33ae0e092b | ||
|
|
d89c1b9466 | ||
|
|
64bbd43587 | ||
|
|
f560610eff | ||
|
|
e0c92f8713 | ||
|
|
d7372aa85b | ||
|
|
078cef089c | ||
|
|
de3940d1ea | ||
|
|
d63b8ea4d0 | ||
|
|
4e272d5a1c | ||
|
|
720b0c0d51 | ||
|
|
4e3697a06e | ||
|
|
d1828d831e | ||
|
|
35949f9ac8 | ||
|
|
e9755e2570 | ||
|
|
bd27d0df2b | ||
|
|
4ef5f38576 | ||
|
|
e009a9de75 | ||
|
|
d967b49681 | ||
|
|
e0c03c4a8c | ||
|
|
95194a972c | ||
|
|
3617d02264 | ||
|
|
7c290f0115 | ||
|
|
70e4b82cd9 | ||
|
|
d1bd7d654f | ||
|
|
253ed9c697 | ||
|
|
5ce02fb8f5 | ||
|
|
e4cf833007 | ||
|
|
2c352f5b03 | ||
|
|
3184f5e1a8 | ||
|
|
02bf1aae84 | ||
|
|
cbc7936c23 | ||
|
|
5651d4d917 | ||
|
|
65e40464b9 | ||
|
|
f2e926483f | ||
|
|
0d50d3b07f | ||
|
|
d05f92796b | ||
|
|
2cc17e1b1c | ||
|
|
7e1e879d56 | ||
|
|
1fd69a8213 | ||
|
|
7a18159352 | ||
|
|
a364df15a9 | ||
|
|
a9c551e555 | ||
|
|
8572954ead | ||
|
|
9cf990271f | ||
|
|
346b91444e | ||
|
|
87519dfd8f | ||
|
|
0cae8f10b7 | ||
|
|
5936aeafed | ||
|
|
e49d73b94b | ||
|
|
10684df873 | ||
|
|
378dbacd83 | ||
|
|
7b4467366d | ||
|
|
631758bd3a | ||
|
|
2ec8ca31c0 | ||
|
|
c3b2b710be | ||
|
|
5468d7a070 | ||
|
|
4d1a4aadbb | ||
|
|
e754375df7 | ||
|
|
e4dcfc0e1e | ||
|
|
a0e5d39d03 | ||
|
|
6b57edb1ab | ||
|
|
1b2692a5b9 | ||
|
|
8c97518725 | ||
|
|
bf79880554 | ||
|
|
9e1b196510 | ||
|
|
d006ab34d2 | ||
|
|
f02cc38da0 | ||
|
|
21996d3904 | ||
|
|
dace425c59 | ||
|
|
aae4d811bc | ||
|
|
d5e086f492 | ||
|
|
b456d81fba | ||
|
|
7734aca6a1 | ||
|
|
92442341b6 | ||
|
|
44f8595983 | ||
|
|
0321a1fd00 | ||
|
|
17db42659c | ||
|
|
6af1573bdb | ||
|
|
5bf955196b | ||
|
|
3cc252d992 | ||
|
|
ca193080b8 | ||
|
|
8bc362cc47 | ||
|
|
db23bb6075 | ||
|
|
3e277745be | ||
|
|
8e76a261e4 | ||
|
|
efbab336ac | ||
|
|
fa253950d9 | ||
|
|
bc7aed2a6b | ||
|
|
0b034daf8e | ||
|
|
eb19518256 | ||
|
|
efdac14a77 | ||
|
|
af17ccb8e5 | ||
|
|
8b9d13a3c1 | ||
|
|
8ce32752e6 | ||
|
|
7c644b7bf5 | ||
|
|
f2af5e6496 | ||
|
|
5c64e82dd6 | ||
|
|
7644620ee7 | ||
|
|
7c051497fa | ||
|
|
c58e05413c | ||
|
|
94d633f808 | ||
|
|
3524472293 | ||
|
|
2dec8208b9 | ||
|
|
e0cb2d799b | ||
|
|
2e977649df | ||
|
|
e33315f886 | ||
|
|
b628c1221e | ||
|
|
24a73837dd | ||
|
|
d165d9ba2d | ||
|
|
7e10c4f8c5 | ||
|
|
70725073a9 | ||
|
|
690d5cd519 | ||
|
|
f7bf1751e5 | ||
|
|
e638dbf10c | ||
|
|
b0c5373e6c | ||
|
|
e3201af06f | ||
|
|
b4fa6115f0 | ||
|
|
3d2f774d23 | ||
|
|
dbc8f28aa4 | ||
|
|
9937ce8e73 | ||
|
|
50f29e14b4 | ||
|
|
b5251afe9b | ||
|
|
7726fff532 | ||
|
|
955ee4992d | ||
|
|
1fd0d83a38 | ||
|
|
1ac91b4140 | ||
|
|
f5199566db | ||
|
|
a244965075 | ||
|
|
7bc44cccc1 | ||
|
|
bdea0ea015 | ||
|
|
2109456871 | ||
|
|
03fbf41ea8 | ||
|
|
f76bf38ff6 | ||
|
|
8f89bb0c54 | ||
|
|
0fc328e58e | ||
|
|
d97a30ec77 | ||
|
|
f0cd6e4f2c | ||
|
|
ba91cab8d2 | ||
|
|
a14975ce0c | ||
|
|
54a51ed666 | ||
|
|
1e6579f325 | ||
|
|
c74524f856 | ||
|
|
db90edaeaa | ||
|
|
1eacb4b9e4 | ||
|
|
3c2e0ad5b3 | ||
|
|
00e2b9d750 | ||
|
|
032bed7f96 | ||
|
|
9c2f4c2fdc | ||
|
|
6d12a64fe5 | ||
|
|
76be4e69ee | ||
|
|
3f4f076701 | ||
|
|
74d29b18ad | ||
|
|
303fd2fb85 | ||
|
|
b656ab5ead | ||
|
|
3207a16d0d | ||
|
|
c097e59568 | ||
|
|
29e5061922 | ||
|
|
71155af8fc | ||
|
|
a0ad3116d2 | ||
|
|
60774ae636 | ||
|
|
7ee7aa860b | ||
|
|
a94f717d71 | ||
|
|
2bf23735a3 | ||
|
|
b11c4861bb | ||
|
|
3918f862a0 | ||
|
|
ecc25fbd15 | ||
|
|
28f47481cc | ||
|
|
ecb78c1a40 | ||
|
|
7d2b1dfede | ||
|
|
310390c8b8 | ||
|
|
54b0110b75 | ||
|
|
6de9bf2601 | ||
|
|
0f8ca600f1 | ||
|
|
c151a9588b | ||
|
|
4a83846ddd | ||
|
|
83c70e073b | ||
|
|
92f198ef9d | ||
|
|
07b49d7453 | ||
|
|
a8c55a41d5 | ||
|
|
38c6c10ac9 | ||
|
|
23ae36911c | ||
|
|
b7055d7988 | ||
|
|
48e7dcf0d2 | ||
|
|
f4a29a0750 | ||
|
|
6d6a3a820a | ||
|
|
5c82ca42b3 | ||
|
|
465d41bd1c | ||
|
|
7ea5188c2d | ||
|
|
8ab0fa49c7 | ||
|
|
59dbcb0b0a | ||
|
|
774cbd433a | ||
|
|
5addd0b6cd | ||
|
|
87ebc102ad | ||
|
|
093dc899d3 | ||
|
|
b5b9469b27 | ||
|
|
390213c7e4 | ||
|
|
23f81e6d93 | ||
|
|
7035aa0ee2 | ||
|
|
b27e8b331c | ||
|
|
9164ae2297 | ||
|
|
b972f8e3a2 | ||
|
|
388eb181d6 | ||
|
|
93b433d299 | ||
|
|
8f541851f4 | ||
|
|
39ba8c7737 | ||
|
|
3892831333 | ||
|
|
4409333f34 | ||
|
|
e69bed0b94 | ||
|
|
a1c04a4f16 | ||
|
|
4dc228da3d | ||
|
|
f3e8fd8e4a | ||
|
|
4bcdedcf07 | ||
|
|
8a5c01f19e | ||
|
|
e6aee23f88 | ||
|
|
ac84e86dd8 | ||
|
|
e652cd7642 | ||
|
|
b1627aebb8 | ||
|
|
c35cd8f3a0 | ||
|
|
2cb64871bb | ||
|
|
d41b478b81 | ||
|
|
00eb58ff9c | ||
|
|
a783af3e86 | ||
|
|
a4aef00d65 | ||
|
|
6db4de888e | ||
|
|
5480ae18d3 | ||
|
|
853a83725f | ||
|
|
1517558cd3 | ||
|
|
d6b3b3507f | ||
|
|
ffb4d9e0ba | ||
|
|
e7ca8c91ec | ||
|
|
da92bed4d5 | ||
|
|
7f2d8ae5da | ||
|
|
13a08d776f | ||
|
|
14f8d8220c | ||
|
|
3aa81ceb1c | ||
|
|
7a86f936b8 | ||
|
|
f72883c6ae | ||
|
|
e9c45e3dbf | ||
|
|
0c97e821ee | ||
|
|
d27cd59a97 | ||
|
|
9eea2d2964 | ||
|
|
1f897c49f1 | ||
|
|
0676d1377a | ||
|
|
c1a94681f2 | ||
|
|
6539c8dd1b | ||
|
|
2dbcb34643 | ||
|
|
e013e99c1c | ||
|
|
46f6e09b51 | ||
|
|
97c708294d | ||
|
|
d77da4225c | ||
|
|
3e612906f4 | ||
|
|
636785e7eb | ||
|
|
7afdd95114 | ||
|
|
a53c04f050 | ||
|
|
5165085bfb | ||
|
|
2d77ffe6bb | ||
|
|
8f110ca521 | ||
|
|
944f9271ac | ||
|
|
75636f9b01 | ||
|
|
8bdc865433 | ||
|
|
383ca63dee | ||
|
|
5465641352 | ||
|
|
2464e106df | ||
|
|
e8bff09ffb | ||
|
|
ae1a01ff3d | ||
|
|
bc2014dbbe | ||
|
|
feb6270d6f | ||
|
|
c209a20108 | ||
|
|
913562f0d3 | ||
|
|
ebfeba4f78 | ||
|
|
a9a62db641 | ||
|
|
4161a9a0e5 | ||
|
|
795b23217b | ||
|
|
49f7dba060 | ||
|
|
93f3b0ddba | ||
|
|
9822caa29b | ||
|
|
47edbd3c53 | ||
|
|
fd56caffe6 | ||
|
|
76365d5f86 | ||
|
|
409886d852 | ||
|
|
f225d11b53 | ||
|
|
553a2acba8 | ||
|
|
affc5a912e | ||
|
|
309173748f | ||
|
|
a78ef43fe3 | ||
|
|
dc856c0bcf | ||
|
|
b74a3907a5 | ||
|
|
0a2897853b | ||
|
|
444d3d9f97 | ||
|
|
177931360d | ||
|
|
d356572dda | ||
|
|
ce5fc01c92 | ||
|
|
daf3551b86 | ||
|
|
9960be0a54 | ||
|
|
5a16eacf6f | ||
|
|
b1a6907e81 | ||
|
|
9f5cecf887 | ||
|
|
6d7a4c30a2 | ||
|
|
fdf81716b4 | ||
|
|
e69b2928cf | ||
|
|
1872751420 | ||
|
|
355ac59256 | ||
|
|
3f9371b30c | ||
|
|
5557ac8a6f | ||
|
|
311f97e2d4 | ||
|
|
fea199b0ce | ||
|
|
623d40c98e | ||
|
|
d3b9504e44 | ||
|
|
910ceb6004 | ||
|
|
e5052c8526 | ||
|
|
81537dce5b | ||
|
|
933b976829 | ||
|
|
d46865e1e9 | ||
|
|
91f92550dc | ||
|
|
da68f57b1c | ||
|
|
68d2587454 | ||
|
|
738c82a017 | ||
|
|
ff1a145792 | ||
|
|
ad8fd9b034 | ||
|
|
76d886a4e3 | ||
|
|
26c738828f | ||
|
|
6f15e1a200 | ||
|
|
1cbe92ed8c | ||
|
|
430cc35151 | ||
|
|
6ee56d59da | ||
|
|
ed09ec058a | ||
|
|
6b524e41e5 | ||
|
|
dc797e5833 | ||
|
|
dafa96c13e | ||
|
|
448b6882f6 | ||
|
|
14d41c9db7 | ||
|
|
2ba7551844 | ||
|
|
36e7d4808c | ||
|
|
4ebc7953b1 | ||
|
|
5a51c60f58 | ||
|
|
0cdec93645 | ||
|
|
14dfb38385 | ||
|
|
06201ee79d | ||
|
|
67a781e65c | ||
|
|
696be5b2ee | ||
|
|
2ca6b13626 | ||
|
|
845eb1f0ed | ||
|
|
8c19a64364 | ||
|
|
a2f7b8a534 | ||
|
|
63b93f0682 | ||
|
|
cd7d1b6d68 | ||
|
|
bea9285506 | ||
|
|
82580033db | ||
|
|
20990845d8 | ||
|
|
704e4daff8 | ||
|
|
98a3748577 | ||
|
|
4e5d7e4fff | ||
|
|
5db09e69de | ||
|
|
b45ded3b33 | ||
|
|
93472ba538 | ||
|
|
0a583f82eb | ||
|
|
5d98af56f2 | ||
|
|
65f2bd61ae | ||
|
|
91a8c60f0e | ||
|
|
4facc02671 | ||
|
|
05ceebcb1b | ||
|
|
30579c29be | ||
|
|
d7c212118e | ||
|
|
4d5ef757af | ||
|
|
42783352fc | ||
|
|
ff2047b685 | ||
|
|
b16a1e6c07 | ||
|
|
770279e013 | ||
|
|
1ab0c02604 | ||
|
|
61ed35e09c | ||
|
|
fe359f7a21 | ||
|
|
f2080c6915 | ||
|
|
71e5c19636 | ||
|
|
188bd721a5 | ||
|
|
50874e9ec7 | ||
|
|
4eef79de8a | ||
|
|
38113dbdb1 | ||
|
|
db77363f8c | ||
|
|
085c5a5d9b | ||
|
|
97e69e38a6 | ||
|
|
95787a5532 | ||
|
|
289fd68776 | ||
|
|
b1b6267a8a | ||
|
|
50b789e229 | ||
|
|
c0c9f5afd6 | ||
|
|
ed4eee1e51 | ||
|
|
1f802e5618 | ||
|
|
a64888719c | ||
|
|
971a043b47 | ||
|
|
8c3613e29f | ||
|
|
879dcb926c | ||
|
|
797af0ae2d | ||
|
|
0658d99891 | ||
|
|
31d7f00538 | ||
|
|
444deec2a0 | ||
|
|
36345eaba4 | ||
|
|
867b6769fe | ||
|
|
c4cd50192d | ||
|
|
7a6894cb7f | ||
|
|
a3fb29404e | ||
|
|
e05fe79dd3 | ||
|
|
a10c0cd87c | ||
|
|
76e6cf505e | ||
|
|
5ac5be4ca9 | ||
|
|
ead09b5724 | ||
|
|
58ec718890 | ||
|
|
0154c3b77b | ||
|
|
6fbb344271 | ||
|
|
22076c62a1 | ||
|
|
fdc65eb9ec | ||
|
|
03db30d50e | ||
|
|
74373ce898 | ||
|
|
11f8ef90da | ||
|
|
dfcaadf673 | ||
|
|
01d404c4ad | ||
|
|
9b681678ee | ||
|
|
e5c3961bf6 | ||
|
|
494617bce2 | ||
|
|
d647b53008 | ||
|
|
ae61729064 | ||
|
|
9891a60571 | ||
|
|
589cf29b85 | ||
|
|
832c2e6b68 | ||
|
|
569a2c2b5f | ||
|
|
4b186490dd | ||
|
|
d0c7cc3abe | ||
|
|
ae7644fbdc | ||
|
|
8756f35d48 | ||
|
|
6a009a5e2c | ||
|
|
cb39d9525b | ||
|
|
7c80f7895f | ||
|
|
cc738d9655 | ||
|
|
8bc0b080dc | ||
|
|
d4fb9a4b93 | ||
|
|
b7e31c54f2 | ||
|
|
bb11721d68 | ||
|
|
2b19800425 | ||
|
|
046bc782ab | ||
|
|
99b2fa2479 | ||
|
|
f5a2086f1f | ||
|
|
542d079eb1 | ||
|
|
31eb153edb | ||
|
|
92f39ccb5b | ||
|
|
e2f3912e14 | ||
|
|
523d1871dc | ||
|
|
29ef7aeb04 | ||
|
|
98afc1a6dd | ||
|
|
1bb3dd1911 | ||
|
|
a7f6945b12 | ||
|
|
59c9c71f36 | ||
|
|
c41e161d06 | ||
|
|
0b04e719ae | ||
|
|
7bcbe0f387 | ||
|
|
de6d4c73d2 | ||
|
|
f562d83ce6 | ||
|
|
3f56f26766 | ||
|
|
139c403ce5 | ||
|
|
956206dda4 | ||
|
|
ece11c796a | ||
|
|
8bce19c1ea | ||
|
|
bc8f6178e7 | ||
|
|
356005f612 | ||
|
|
5a21c108fe | ||
|
|
ca5b25ad68 | ||
|
|
88b6cb8b8b | ||
|
|
63118d1444 | ||
|
|
4fe6e5b494 | ||
|
|
d49cd04515 | ||
|
|
0128b3dcd6 | ||
|
|
f0eda70e86 | ||
|
|
b07c1edbba | ||
|
|
677b20a94c | ||
|
|
f7540a5483 | ||
|
|
2c38bd4799 | ||
|
|
a386cb22a0 | ||
|
|
80ba794a42 | ||
|
|
5a7f05ee3c | ||
|
|
c65ab74d31 | ||
|
|
c2dde474aa | ||
|
|
1cca07d601 | ||
|
|
653b008950 | ||
|
|
1386155331 | ||
|
|
9777316c64 | ||
|
|
5f57c9f71c | ||
|
|
9b8836481d | ||
|
|
fe012b4db4 | ||
|
|
12eb4bc93c | ||
|
|
5b17e46285 | ||
|
|
f8d7bb61a8 | ||
|
|
65cc2ab6a5 | ||
|
|
728ee05d45 | ||
|
|
b9e3320bf4 | ||
|
|
3ebd394165 | ||
|
|
128b7183fd | ||
|
|
aaa0b7a55e | ||
|
|
0ab62f7ab9 | ||
|
|
773efb00d2 | ||
|
|
f4440dd30a | ||
|
|
275c562ce7 | ||
|
|
d845cb6745 | ||
|
|
28b4db7239 | ||
|
|
a86f1249ee | ||
|
|
6a51d9b6de | ||
|
|
a797df31d7 | ||
|
|
13ce1be5d3 | ||
|
|
d5400f7e7d | ||
|
|
2eb5511c39 | ||
|
|
2ce9908f2d | ||
|
|
5a74ff52c2 | ||
|
|
3022504c0b | ||
|
|
262ed7420f | ||
|
|
fc77335828 | ||
|
|
c0e2300901 | ||
|
|
19dd51b6ab | ||
|
|
92a43c0ead | ||
|
|
b7ba53e732 | ||
|
|
a7b7c601a5 | ||
|
|
6cac6ea83b | ||
|
|
9c6a6f9134 | ||
|
|
37cb6b93fd | ||
|
|
72b349b75c | ||
|
|
f276cf10c8 | ||
|
|
5040108c31 | ||
|
|
55d21ef131 | ||
|
|
e035fcc62a | ||
|
|
21879ffd57 | ||
|
|
bf1eb3b85d | ||
|
|
b2cc42052f | ||
|
|
aa4d04e680 | ||
|
|
2b48d4ec91 | ||
|
|
e2edd40cb4 | ||
|
|
b5fb6892fe | ||
|
|
1365b51c71 | ||
|
|
399e2fd233 | ||
|
|
17560312bb | ||
|
|
b7b65b35b6 | ||
|
|
86bdb760d7 | ||
|
|
f3a548988c | ||
|
|
ec5fcd0136 | ||
|
|
a6cde7c0f6 | ||
|
|
fe3bf8f43e | ||
|
|
5f8a100d65 | ||
|
|
a3d418e155 | ||
|
|
08d50931b6 | ||
|
|
d12037b665 | ||
|
|
24b4cd45a2 | ||
|
|
7c5699736b | ||
|
|
3fa4e557e0 | ||
|
|
5c24ec251e | ||
|
|
3999dda5a5 | ||
|
|
1c75aa99a1 | ||
|
|
02bd4cd4b4 | ||
|
|
07510d963a | ||
|
|
8b99611ece | ||
|
|
3703129570 | ||
|
|
a5840f0a32 | ||
|
|
3ca4e5d7e1 | ||
|
|
4cff55249c | ||
|
|
e23b840d9e | ||
|
|
c733ede7c7 | ||
|
|
d80c2f805e | ||
|
|
0036997ea6 | ||
|
|
55fe737bf7 | ||
|
|
11d477b0ce | ||
|
|
94e718f9cb | ||
|
|
1cc4291e10 | ||
|
|
98886b12f1 | ||
|
|
5b13795dbe | ||
|
|
db8dce00b0 | ||
|
|
23df967ec2 | ||
|
|
eb19109585 | ||
|
|
2b631b5d6f | ||
|
|
784332dee8 | ||
|
|
4a885f26a0 | ||
|
|
3056f9d0d5 | ||
|
|
2ef4d30f72 | ||
|
|
6894f7e981 | ||
|
|
d018916728 | ||
|
|
02d7775718 | ||
|
|
be0f31ad9f | ||
|
|
61ccf5b46b | ||
|
|
44cab72e7e | ||
|
|
07b05ade91 | ||
|
|
3b239c7b3b | ||
|
|
0c1a5f0a1a | ||
|
|
bd2b0c9ae5 | ||
|
|
b42093b971 | ||
|
|
6146308cc3 | ||
|
|
838ae5b351 | ||
|
|
6404ecd08d | ||
|
|
82404f5aef | ||
|
|
cf6c9f9005 | ||
|
|
8302431386 | ||
|
|
a4003c3c4b | ||
|
|
a2cb929b48 | ||
|
|
a2c8607929 | ||
|
|
8e187acb28 | ||
|
|
db3ae6b658 | ||
|
|
9db86b94c3 | ||
|
|
789515c1d0 | ||
|
|
7a01ff0136 | ||
|
|
5b02faec3c | ||
|
|
68d79f2a0f | ||
|
|
e68aa47d4c | ||
|
|
269a35ff01 | ||
|
|
0329504246 | ||
|
|
0f82d123cf | ||
|
|
6875da69bb | ||
|
|
5cb766e596 | ||
|
|
e5d6b3ba09 | ||
|
|
b8612502e2 | ||
|
|
6420e53c12 | ||
|
|
810048c754 | ||
|
|
57cb4281fa | ||
|
|
491d1d3463 | ||
|
|
d544482827 | ||
|
|
00f7383ab0 | ||
|
|
2d0accdb56 | ||
|
|
637427aed9 | ||
|
|
3fea8ab161 | ||
|
|
43641877ac | ||
|
|
0d013d4f2e | ||
|
|
d2761fe281 | ||
|
|
3cbd3a3f36 | ||
|
|
c4700949e7 | ||
|
|
8b96e18c96 | ||
|
|
0dc9c323d2 | ||
|
|
2aec4cb735 | ||
|
|
2e023d9a29 | ||
|
|
63fe01ab22 | ||
|
|
37eeb883b6 | ||
|
|
40be22dada | ||
|
|
756f9eb63a | ||
|
|
3bb935c499 | ||
|
|
3b56f0f090 | ||
|
|
da00b95e55 | ||
|
|
bf80fd4841 | ||
|
|
facf31bace | ||
|
|
e9d613fa9d | ||
|
|
8438d8e0b4 | ||
|
|
eaf0bd1fd7 | ||
|
|
1d32fae40d | ||
|
|
3f12adb3f0 | ||
|
|
400b8856c9 | ||
|
|
7fad6b61d2 | ||
|
|
a64f7707cc | ||
|
|
1edd0adfcc | ||
|
|
37db859ba3 | ||
|
|
1bf082f6da | ||
|
|
1af8f0c951 | ||
|
|
e08a20aa98 | ||
|
|
0f51e50b08 | ||
|
|
6be22e19ef | ||
|
|
11bbddd195 | ||
|
|
c687d21e23 | ||
|
|
721c4a65f3 | ||
|
|
0517d21ebd | ||
|
|
507aef0c77 | ||
|
|
78f9a0a2b8 | ||
|
|
777d3c3963 | ||
|
|
9abc3592ad | ||
|
|
ee980f5002 | ||
|
|
53835b8fd8 | ||
|
|
6285ade4fb | ||
|
|
c385687ce6 | ||
|
|
6e3cd11729 | ||
|
|
e6bc9ed3b0 | ||
|
|
a1bfc38679 | ||
|
|
fa3174b8f1 | ||
|
|
b4159c080b | ||
|
|
71324ae046 | ||
|
|
4d4be2e895 | ||
|
|
9f91506fed | ||
|
|
61215a0d76 | ||
|
|
8fe68ee01c | ||
|
|
812b6d8d11 | ||
|
|
d133eb632a | ||
|
|
286bbb3ca4 | ||
|
|
b756b7d22f | ||
|
|
db2113fd6b | ||
|
|
e6e37613eb | ||
|
|
78f8d31dc6 | ||
|
|
4deef8a463 | ||
|
|
0463ffd804 | ||
|
|
5a77c5e18e | ||
|
|
928ec8b49a | ||
|
|
06da8b9b9a | ||
|
|
84108b14a2 | ||
|
|
bd72d2c9fc | ||
|
|
8d5279c34e | ||
|
|
2dbcecfaaa | ||
|
|
f93222ee85 | ||
|
|
064dac4abe | ||
|
|
92a7fc7c7c | ||
|
|
7625198d01 | ||
|
|
c466590f32 | ||
|
|
3fc5a9f930 | ||
|
|
711d4218c4 | ||
|
|
6c0e2269be | ||
|
|
fe3db97ee9 | ||
|
|
30165893f7 | ||
|
|
8f295da232 | ||
|
|
d9025d3f48 | ||
|
|
a6d76b4886 | ||
|
|
0391c5c44f | ||
|
|
bb828e2c51 | ||
|
|
2cb4e94838 | ||
|
|
efc6a99370 | ||
|
|
d3d4428652 | ||
|
|
056f9c917a | ||
|
|
d779f5e15d | ||
|
|
8ba4364153 | ||
|
|
435add4fdd | ||
|
|
6b2090a39f | ||
|
|
5faf500982 | ||
|
|
a3eae83762 | ||
|
|
3fd5ddfd6a | ||
|
|
1c21efedfe | ||
|
|
09eff142e8 | ||
|
|
ea069464d5 | ||
|
|
2b76d22baf | ||
|
|
a5796bf961 | ||
|
|
b780afe5f7 | ||
|
|
70e94a99a6 | ||
|
|
5d43557478 | ||
|
|
01206bd597 | ||
|
|
0958becf7e | ||
|
|
ed840b1045 | ||
|
|
9100c2db3b | ||
|
|
63412b419b | ||
|
|
3f95fa336e | ||
|
|
ebc813c9cf | ||
|
|
05addc4e62 | ||
|
|
cf4f3cbdaa | ||
|
|
7005c5aa84 | ||
|
|
70c8087f2d | ||
|
|
428539b1c9 | ||
|
|
7b63825d03 | ||
|
|
414302b95c | ||
|
|
421abc0d01 | ||
|
|
03d50bfec1 | ||
|
|
3b1372a22b | ||
|
|
e104ca4071 | ||
|
|
58394f5b6f | ||
|
|
bc4ffe7eaf | ||
|
|
16fb327e1b | ||
|
|
4bb846d522 | ||
|
|
253087fcaa | ||
|
|
247488ff07 | ||
|
|
ef4f584745 | ||
|
|
80ef7645ff | ||
|
|
fadff54087 | ||
|
|
aff1c988a4 | ||
|
|
6d30079412 | ||
|
|
c6704835aa | ||
|
|
55b4b92b8f | ||
|
|
1b4ca70d35 | ||
|
|
4a9cce26cd | ||
|
|
3e0c546e3b | ||
|
|
85465e7616 | ||
|
|
1b47e4478f | ||
|
|
8b0294d5fe | ||
|
|
c449fbf343 | ||
|
|
c89c2619cb | ||
|
|
f952eb45cc | ||
|
|
ee034830da | ||
|
|
91bcd9e3a0 | ||
|
|
1b9ebde1c3 | ||
|
|
e9e30a8196 | ||
|
|
666abd5c09 | ||
|
|
cf582b8729 | ||
|
|
54d78b4325 | ||
|
|
2e790f9762 | ||
|
|
314b6614cb | ||
|
|
54bfb51dd8 | ||
|
|
51ed1b13d3 | ||
|
|
efc9a1d6db | ||
|
|
d5c454aff6 | ||
|
|
c2014ab592 | ||
|
|
bde4e0e663 | ||
|
|
62e9bef633 | ||
|
|
2e908bf62a | ||
|
|
b0f519e7a8 | ||
|
|
106ff8cce0 | ||
|
|
80db127967 | ||
|
|
f666841997 | ||
|
|
533d473b7d | ||
|
|
0e52c6229b | ||
|
|
2ec7565474 | ||
|
|
5f17ed0d9b | ||
|
|
b2f0fad78f | ||
|
|
3fe2c091cc | ||
|
|
acdcd2b694 | ||
|
|
3e48ba0dbc | ||
|
|
7f3d57dda8 | ||
|
|
c08a0ebc07 | ||
|
|
0ee3a9dadd | ||
|
|
4be2f76938 | ||
|
|
02d3754d1e | ||
|
|
659826ba3e | ||
|
|
e6ab0dd2ca | ||
|
|
f6e4558074 | ||
|
|
7b2366db70 | ||
|
|
9c511a0dc7 | ||
|
|
f383f03df7 | ||
|
|
239618e700 | ||
|
|
2f884b27c2 | ||
|
|
247daab1a7 | ||
|
|
d938014328 | ||
|
|
261995c57e | ||
|
|
7bf3739b88 | ||
|
|
f4d60f891f | ||
|
|
b0e6be3355 | ||
|
|
99da34a4bf | ||
|
|
ba4f254aa9 | ||
|
|
cec94b0eeb | ||
|
|
da32ac49ce | ||
|
|
3942243c5d | ||
|
|
44012dd60d | ||
|
|
f51de9fb15 | ||
|
|
2351787aa6 | ||
|
|
8d90748586 | ||
|
|
40b08512c4 | ||
|
|
71d4ae3fd0 | ||
|
|
bc12bc0a1f | ||
|
|
850e3057ed | ||
|
|
a3c95f281a | ||
|
|
bf54a8b514 | ||
|
|
2473968416 | ||
|
|
f7033a3346 | ||
|
|
41094cee0b | ||
|
|
0f2d3b866b | ||
|
|
2b7197054f | ||
|
|
ad0a222ec0 | ||
|
|
6e08e9d982 | ||
|
|
02e9bb7bf8 | ||
|
|
69c3b7fd9d | ||
|
|
d7f6bf262e | ||
|
|
bea427cebd | ||
|
|
9e057920ce | ||
|
|
7a671773f2 | ||
|
|
87d4ee6113 | ||
|
|
e474b9e989 | ||
|
|
01ded85842 | ||
|
|
b1416abab6 | ||
|
|
a179df7937 | ||
|
|
71b0add384 | ||
|
|
db8b916444 | ||
|
|
46ef4ef03a | ||
|
|
d1f2b629d4 | ||
|
|
330d764d3b | ||
|
|
2cd05e5976 | ||
|
|
3cea95052a | ||
|
|
ac7ef3ec32 | ||
|
|
e1bd9f2ed3 | ||
|
|
2fad51aae1 | ||
|
|
9745e31cb8 | ||
|
|
8ce46dbe07 | ||
|
|
8a98023414 | ||
|
|
507806f969 | ||
|
|
8f79637669 | ||
|
|
026483186a | ||
|
|
906effb54f | ||
|
|
9544bc192d | ||
|
|
23beef88a9 | ||
|
|
1c5db966aa | ||
|
|
6ad40b3a85 | ||
|
|
b469d5cc62 | ||
|
|
aef8f792fb | ||
|
|
e8474de3ea | ||
|
|
53ff7d91a8 | ||
|
|
77c3728447 | ||
|
|
aa356e53b8 | ||
|
|
d956434b59 | ||
|
|
9a27cf1e9d | ||
|
|
b846bbd819 | ||
|
|
f7eb6b70fb | ||
|
|
4c54be504c | ||
|
|
b1f36f06ca | ||
|
|
e49bcccfb1 | ||
|
|
d7097d666b | ||
|
|
975f01067b | ||
|
|
92d0305964 | ||
|
|
7da62bfb79 | ||
|
|
e5bc7669fd | ||
|
|
df7774663c | ||
|
|
e83e8d39d7 | ||
|
|
ea5cfc962a | ||
|
|
e4d9adbd71 | ||
|
|
72f771ef45 | ||
|
|
a4b427d4c3 | ||
|
|
627987d8ff | ||
|
|
08d64f0387 | ||
|
|
13e2c6d8e1 | ||
|
|
55690c7b8d | ||
|
|
d90a737187 | ||
|
|
701f97890a | ||
|
|
89600e8dd6 | ||
|
|
e690855bc3 | ||
|
|
fecec879a7 | ||
|
|
8a29ed59df | ||
|
|
da45568ba3 | ||
|
|
fc819d0bd9 | ||
|
|
63f9161f72 | ||
|
|
734033a05f | ||
|
|
157ef67688 | ||
|
|
6a2827695a | ||
|
|
9ade382800 | ||
|
|
7d47e3d387 | ||
|
|
8b061d7ed2 | ||
|
|
91bb55c45d | ||
|
|
aa52ab8208 | ||
|
|
f4e0a6b968 | ||
|
|
85166e0140 | ||
|
|
02973df5f2 | ||
|
|
17b58ef7ea | ||
|
|
d0fd036e37 | ||
|
|
46b40010ae | ||
|
|
63328d4091 | ||
|
|
36f7ffd0c9 | ||
|
|
36b044f81e | ||
|
|
5968779f4b | ||
|
|
41866eed87 | ||
|
|
63171ebb07 | ||
|
|
a56df93f31 | ||
|
|
875be659a1 | ||
|
|
6c2b739c53 | ||
|
|
5201210bae | ||
|
|
6467699ca4 | ||
|
|
6fb11c619a | ||
|
|
133d92da58 | ||
|
|
285891821e | ||
|
|
78b50680bf | ||
|
|
26fdab9f62 | ||
|
|
555cb2023e | ||
|
|
2c359c823a | ||
|
|
03204fe981 | ||
|
|
06d6d609e9 | ||
|
|
fd27016277 | ||
|
|
3bb5ec2ec4 | ||
|
|
70a4034545 | ||
|
|
6f6ce3e15e | ||
|
|
9461949887 | ||
|
|
a2abfeec45 | ||
|
|
b0bff0ec59 | ||
|
|
e741e91a38 | ||
|
|
857e0c56a1 | ||
|
|
f4128a2bc4 | ||
|
|
898d4a8c50 | ||
|
|
fb50cc51e2 | ||
|
|
f309806149 | ||
|
|
b5a1dfc657 | ||
|
|
113b6fd437 | ||
|
|
0b42f0597f | ||
|
|
d8cad7eb9c | ||
|
|
ba2ed45376 | ||
|
|
4b1444ac27 | ||
|
|
c46039e461 | ||
|
|
451cd3395a | ||
|
|
c8baa76ab6 | ||
|
|
375cb82aa0 | ||
|
|
3c7ee580d8 | ||
|
|
85048189fc | ||
|
|
64bd53e675 | ||
|
|
5cd5eceba0 | ||
|
|
cf4e5a73a5 | ||
|
|
76c48ffb86 | ||
|
|
00e6819f3a | ||
|
|
b54b7ef659 | ||
|
|
d1a69b8e99 | ||
|
|
79070290f1 | ||
|
|
9a5123bdfe | ||
|
|
7c6fa1d589 | ||
|
|
c57721f304 | ||
|
|
e2366995bf | ||
|
|
469cc67d39 | ||
|
|
74f601e769 | ||
|
|
cb3485b672 | ||
|
|
82e967e5e6 | ||
|
|
29ea3caf10 | ||
|
|
f4693db3a3 | ||
|
|
96c51eadc9 | ||
|
|
7a3c23d482 | ||
|
|
2462656853 | ||
|
|
afc0c883e0 | ||
|
|
6454378247 | ||
|
|
5a51487062 | ||
|
|
9457b2ef4e | ||
|
|
3f818a717b | ||
|
|
68f56798c5 | ||
|
|
d71c9f3056 | ||
|
|
5373ea378a | ||
|
|
1088aae3c3 | ||
|
|
d01d2952a0 | ||
|
|
64f0e92b83 | ||
|
|
1773c53c87 | ||
|
|
c520aae568 | ||
|
|
ed0fd28aff | ||
|
|
9d870f3900 | ||
|
|
f9a4707b26 | ||
|
|
592adf7dc2 | ||
|
|
946191fb80 | ||
|
|
c8f7f7feee | ||
|
|
b916fd3d7f | ||
|
|
a02373df1a | ||
|
|
49dd142346 | ||
|
|
e50d57f3b7 | ||
|
|
cf00dcb23a | ||
|
|
51833b980c | ||
|
|
57ab797a83 | ||
|
|
f9d193397a | ||
|
|
aaf6b0ef6c | ||
|
|
f98cc67e50 | ||
|
|
5337c00cbb | ||
|
|
8f329840b8 | ||
|
|
0d12fdeb7c | ||
|
|
54b5e3f7de | ||
|
|
8efd3e6a29 | ||
|
|
bd41f944d4 | ||
|
|
b705006b6b | ||
|
|
cd389dbb98 | ||
|
|
7af9efa0b0 | ||
|
|
b42eb96ae6 | ||
|
|
e1585bf0f0 | ||
|
|
0b06e0cc38 | ||
|
|
d77cb489ba | ||
|
|
8bd217efdb | ||
|
|
3a075f9426 | ||
|
|
14227f1a02 | ||
|
|
6ca6cc975f | ||
|
|
dc978e394a | ||
|
|
36c5366045 | ||
|
|
a2ba550880 | ||
|
|
533ac81c01 | ||
|
|
831bfda9d2 | ||
|
|
ab70e4fd6d | ||
|
|
4d82d73a06 | ||
|
|
724411ac1c | ||
|
|
2d27aa1355 | ||
|
|
2b662f27f6 | ||
|
|
f2e78f2bb5 | ||
|
|
9301f52243 | ||
|
|
f87bcba303 | ||
|
|
c99979af3d | ||
|
|
96b762793c | ||
|
|
8bcd348638 | ||
|
|
7db461dccb | ||
|
|
3bccb39bb9 | ||
|
|
95b0994713 | ||
|
|
5f7159f897 | ||
|
|
244386a257 | ||
|
|
b4df2f48c7 | ||
|
|
84c9c592f8 | ||
|
|
4f3cf2cfb8 | ||
|
|
5a33ab5d65 | ||
|
|
920f5e254d | ||
|
|
50c4837d55 | ||
|
|
0f6cf9cc29 | ||
|
|
929667cf18 | ||
|
|
47ad87ecbf | ||
|
|
5db6b77754 | ||
|
|
483417a75b | ||
|
|
5470afd66b | ||
|
|
3da9b962c3 | ||
|
|
26d9f26bd8 | ||
|
|
7290687619 | ||
|
|
ad7b27283d | ||
|
|
8d002e0930 | ||
|
|
b1bc808468 | ||
|
|
d1ebdb2de9 | ||
|
|
4ff617cd85 | ||
|
|
7994d42e88 | ||
|
|
867c6d55e0 | ||
|
|
42f75ef047 | ||
|
|
e7bd87c468 | ||
|
|
c33415db62 | ||
|
|
559c387477 | ||
|
|
5f7cebc478 | ||
|
|
c6e8d40905 | ||
|
|
2b32144429 | ||
|
|
a13f708bb6 | ||
|
|
2049d24199 | ||
|
|
c2f923f320 | ||
|
|
1528f83532 | ||
|
|
e8074841e9 |
@@ -1,9 +0,0 @@
|
||||
Makefile
|
||||
config.log
|
||||
config.h
|
||||
config.cache
|
||||
config.status
|
||||
libtool
|
||||
isc-config.sh
|
||||
configure.lineno
|
||||
autom4te.cache
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
Makefile
|
||||
config.log
|
||||
config.h
|
||||
config.cache
|
||||
config.status
|
||||
libtool
|
||||
isc-config.sh
|
||||
configure.lineno
|
||||
autom4te.cache
|
||||
*.o
|
||||
*.lo
|
||||
*.so
|
||||
*.a
|
||||
*.la
|
||||
*_test
|
||||
timestamp
|
||||
named.run
|
||||
gen.dSYM/
|
||||
.libs/
|
||||
.deps/
|
||||
.dirstamp
|
||||
unit/atf-src/atf-c++/atf-c++.pc
|
||||
unit/atf-src/atf-c/atf-c.pc
|
||||
unit/atf-src/atf-c/defs.h
|
||||
unit/atf-src/atf-c/detail/process_helpers
|
||||
unit/atf-src/atf-config/atf-config
|
||||
unit/atf-src/atf-report/atf-report
|
||||
unit/atf-src/atf-report/fail_helper
|
||||
unit/atf-src/atf-report/misc_helpers
|
||||
unit/atf-src/atf-report/pass_helper
|
||||
unit/atf-src/atf-run/atf-run
|
||||
unit/atf-src/atf-run/bad_metadata_helper
|
||||
unit/atf-src/atf-run/expect_helpers
|
||||
unit/atf-src/atf-run/misc_helpers
|
||||
unit/atf-src/atf-run/pass_helper
|
||||
unit/atf-src/atf-run/several_tcs_helper
|
||||
unit/atf-src/atf-run/zero_tcs_helper
|
||||
unit/atf-src/atf-sh/atf-check
|
||||
unit/atf-src/atf-sh/atf-sh
|
||||
unit/atf-src/atf-sh/misc_helpers
|
||||
unit/atf-src/atf-version/atf-version
|
||||
unit/atf-src/atf-version/revision.h
|
||||
unit/atf-src/atf-version/revision.h.stamp
|
||||
unit/atf-src/bconfig.h
|
||||
unit/atf-src/bootstrap/atconfig
|
||||
unit/atf-src/doc/atf.7
|
||||
unit/atf-src/stamp-h1
|
||||
unit/atf-src/test-programs/c_helpers
|
||||
unit/atf-src/test-programs/cpp_helpers
|
||||
unit/atf-src/test-programs/sh_helpers
|
||||
@@ -0,0 +1,5 @@
|
||||
Content-Type: application/X-atf-atffile; version="1"
|
||||
|
||||
prop: test-suite = bind9
|
||||
|
||||
tp: lib
|
||||
@@ -1,4 +1,4 @@
|
||||
Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright (C) 2004-2012 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.16 2010/01/04 23:48:51 tbox Exp $
|
||||
$Id: COPYRIGHT,v 1.15.188.4 2012/01/04 23:45:52 tbox 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.
|
||||
|
||||
|
||||
@@ -0,0 +1,255 @@
|
||||
3312. [bug] named-checkconf didn't detect a bad dns64 clients acl.
|
||||
[RT #27631]
|
||||
|
||||
3306. [bug] Improve DNS64 reverse zone performance. [RT #28563]
|
||||
|
||||
3305. [func] Add wire format lookup method to sdb. [RT #28563]
|
||||
|
||||
3303. [bug] named could die when reloading. [RT #28606]
|
||||
|
||||
3296. [bug] Named could die with a INSIST failure in
|
||||
client.c:exit_check. [RT #28346]
|
||||
|
||||
3289. [bug] 'rndc retransfer' failed for inline zones. [RT #28036]
|
||||
|
||||
3288. [bug] dlz_destroy() function wasn't correctly registered
|
||||
by the DLZ dlopen driver. [RT #28056]
|
||||
|
||||
3280. [bug] Potential double free of a rdataset on out of memory
|
||||
with DNS64. [RT #27762]
|
||||
|
||||
3279. [bug] Hold a internal reference to the zone while performing
|
||||
a asynchronous load. Address potential memory leak
|
||||
if the asynchronous is cancelled. [RT #27750]
|
||||
|
||||
3277. [bug] win32: isc_socket_dup is not implemented. [RT #27696]
|
||||
|
||||
3275. [bug] Corrected rndc -h output; the 'rndc sync -clean'
|
||||
option had been misspelled as '-clear'. (To avoid
|
||||
future confusion, both options now work.) [RT #27173]
|
||||
|
||||
3270. [bug] "rndc reload" didn't reuse existing zones correctly
|
||||
when inline-signing was in use. [RT #27650]
|
||||
|
||||
3269. [port] darwin 11 and later now built threaded by default.
|
||||
|
||||
3265. [bug] Address lock order reversal with inline-signing
|
||||
support. [27557]
|
||||
|
||||
3265. [bug] Address lock order reversal with inline-signing
|
||||
support. [27557]
|
||||
|
||||
3264. [bug] Automatic regeneration of signatures in an
|
||||
inline-signing zone could stall when the server
|
||||
was restarted. [RT #27344]
|
||||
|
||||
3263. [bug] "rndc sync" did not affect the unsigned side of an
|
||||
inline-signing zone. [RT #27337]
|
||||
|
||||
3262. [bug] Signed responses were handled incorrectly by RPZ.
|
||||
[RT #27316]
|
||||
|
||||
3252. [bug] When master zones using inline-signing were
|
||||
updated while the server was offline, the source
|
||||
zone could fall out of sync with the signed
|
||||
copy. They can now resynchronize. [RT #26676]
|
||||
|
||||
3246. [bug] Named failed to start with a empty also-notify list.
|
||||
[RT #27087]
|
||||
|
||||
3245. [bug] Don't report a error unchanged serials unless there
|
||||
were other changes when thawing a zone with
|
||||
ixfr-fromdifferences. [RT #26845]
|
||||
|
||||
3243. [port] freebsd,netbsd,bsdi: the thread defaults were not
|
||||
being properly set.
|
||||
|
||||
3236. [bug] Backed out changes #3182 and #3202, related to
|
||||
EDNS(0) fallback behavior. [RT #26416]
|
||||
|
||||
3233. [bug] 'rndc freeze/thaw' didn't work for inline zones.
|
||||
[RT #26632]
|
||||
|
||||
3225. [bug] Silence spurious "setsockopt(517, IPV6_V6ONLY) failed"
|
||||
messages. [RT #26507]
|
||||
|
||||
3224. [bug] 'rndc signing' argument parsing was broken. [RT #26684]
|
||||
|
||||
3223. [bug] 'task_test privilege_drop' generated false positives.
|
||||
[RT #26766]
|
||||
|
||||
3222. [cleanup] Replace dns_journal_{get,set}_bitws with
|
||||
dns_journal_{get,set}_sourceserial. [RT #26634]
|
||||
|
||||
3220. [bug] Change #3186 was incomplete; dns_db_rpz_findips()
|
||||
could fail to set the database version correctly,
|
||||
causing an assertion failure. [RT #26180]
|
||||
3219. [bug] Disable NOEDNS caching following a timeout.
|
||||
|
||||
3217. [cleanup] Fix build problem with --disable-static. [RT #26476]
|
||||
|
||||
3215. [bug] 'rndc recursing' could cause a core dump. [RT #26495]
|
||||
|
||||
3210. [bug] Canceling the oldest query due to recursive-client
|
||||
overload could trigger an assertion failure. [RT #26463]
|
||||
|
||||
3202. [bug] NOEDNS caching on timeout was too agressive.
|
||||
[RT #26416]
|
||||
|
||||
3186. [bug] Version/db mis-match in rpz code. [RT #26180]
|
||||
|
||||
3184. [bug] named had excessive cpu usage when a redirect zone was
|
||||
configured. [RT #26013]
|
||||
|
||||
3183. [bug] Added RTLD_GLOBAL flag to dlopen call. [RT #26301]
|
||||
|
||||
3182. [bug] Auth servers behind firewalls which block packets
|
||||
greater than 512 bytes may cause other servers to
|
||||
perform poorly. Now, adb retains edns information
|
||||
and caches noedns servers. [RT #23392/24964]
|
||||
|
||||
3178. [bug] A race condition introduced by change #3163 could
|
||||
cause an assertion failure on shutdown. [RT #26271]
|
||||
|
||||
3176. [doc] Corrected example code and added a README to the
|
||||
sample external DLZ module in contrib/dlz/example.
|
||||
[RT #26215]
|
||||
|
||||
3172. [port] darwin 10.* and freebsd [89] are now built threaded by
|
||||
default.
|
||||
|
||||
3168. [bug] Nxdomain redirection could trigger an assert with
|
||||
a ANY query. [RT #26017]
|
||||
|
||||
3166. [bug] Upgrading a zone to support inline-signing failed.
|
||||
[RT #26014]
|
||||
|
||||
3165. [bug] dnssec-signzone could generate new signatures when
|
||||
resigning, even when valid signatures were already
|
||||
present. [RT #26025]
|
||||
|
||||
3163. [bug] Use finer-grained locking in client.c to address
|
||||
concurrency problems with large numbers of threads.
|
||||
[RT #26044]
|
||||
|
||||
3160. [bug] When printing out a NSEC3 record in multiline form
|
||||
the newline was not being printed causing type codes
|
||||
to be run together. [RT #25873]
|
||||
|
||||
3159. [bug] On some platforms, named could assert on startup
|
||||
when running in a chrooted environment without
|
||||
/proc. [RT #25863]
|
||||
|
||||
3158. [bug] Recursive servers would prefer a particular UDP
|
||||
socket instead of using all available sockets.
|
||||
[RT #26038]
|
||||
|
||||
3155. [bug] Fixed a build failure when using contrib DLZ
|
||||
drivers (e.g., mysql, postgresql, etc). [RT #25710]
|
||||
|
||||
3142. [bug] NAPTR is class agnostic. [RT #25429]
|
||||
|
||||
3131. [tuning] Improve scalability by allocating one zone task
|
||||
per 100 zones at startup time, rather than using a
|
||||
fixed-size task table. [RT #24406]
|
||||
|
||||
3127. [bug] 'rndc thaw' will now remove a zone's journal file
|
||||
if the zone serial number has been changed and
|
||||
ixfr-from-differences is not in use. [RT #24687]
|
||||
|
||||
3126. [security] Using DNAME record to generate replacements caused
|
||||
RPZ to exit with a assertion failure. [RT #24766]
|
||||
|
||||
3125. [security] Using wildcard CNAME records as a replacement with
|
||||
RPZ caused named to exit with a assertion failure.
|
||||
[RT #24715]
|
||||
|
||||
3115. [bug] Named could fail to return requested data when
|
||||
following a CNAME that points into the same zone.
|
||||
[RT #24455]
|
||||
|
||||
3108. [cleanup] dnssec-signzone: Clarified some error and
|
||||
warning messages; removed #ifdef ALLOW_KSKLESS_ZONES
|
||||
code (use -P instead). [RT #20852]
|
||||
|
||||
3105. [bug] GOST support can be suppressed by "configure
|
||||
--without-gost" [RT #24367]
|
||||
|
||||
3103. [bug] Configuring 'dnssec-validation auto' in a view
|
||||
instead of in the options statement could trigger
|
||||
an assertion failure in named-checkconf. [RT #24382]
|
||||
|
||||
3100. [security] Certain response policy zone configurations could
|
||||
trigger an INSIST when receiving a query of type
|
||||
RRSIG. [RT #24280]
|
||||
|
||||
3098. [bug] DLZ zones were answering without setting the AA bit.
|
||||
[RT #24146]
|
||||
|
||||
3096. [bug] Set KRB5_KTNAME before calling log_cred() in
|
||||
dst_gssapi_acceptctx(). [RT #24004]
|
||||
|
||||
3094. [doc] Expand dns64 documentation.
|
||||
|
||||
3093. [bug] Fix gssapi/kerberos dependencies [RT #23836]
|
||||
|
||||
3087. [bug] DDNS updates using SIG(0) with update-policy match
|
||||
type "external" could cause a crash. [RT #23735]
|
||||
|
||||
3082. [port] strtok_r is threads only. [RT #23747]
|
||||
|
||||
3072. [bug] dns_dns64_aaaaok() potential NULL pointer dereference.
|
||||
[RT #20256]
|
||||
|
||||
3054. [bug] Added elliptic curve support check in
|
||||
GOST OpenSSL engine detection. [RT #23485]
|
||||
|
||||
3045. [removed] Replaced by change #3050.
|
||||
|
||||
3038. [bug] Install <dns/rpz.h>. [RT #23342]
|
||||
|
||||
3022. [bug] Fixed rpz SERVFAILs after failed zone transfers
|
||||
[RT #23246]
|
||||
|
||||
3013. [bug] The DNS64 ttl was not always being set as expected.
|
||||
[RT #23034]
|
||||
|
||||
|
||||
3005. [port] Solaris: Work around the lack of
|
||||
gsskrb5_register_acceptor_identity() by setting
|
||||
the KRB5_KTNAME environment variable to the
|
||||
contents of tkey-gssapi-keytab. Also fixed
|
||||
test errors on MacOSX. [RT #22853]
|
||||
|
||||
3003. [experimental] Added update-policy match type "external",
|
||||
enabling named to defer the decision of whether to
|
||||
allow a dynamic update to an external daemon.
|
||||
(Contributed by Andrew Tridgell.) [RT #22758]
|
||||
|
||||
3000. [bug] More TKEY/GSS fixes:
|
||||
- nsupdate can now get the default realm from
|
||||
the user's Kerberos principal
|
||||
- corrected gsstest compilation flags
|
||||
- improved documentation
|
||||
- fixed some NULL dereferences
|
||||
[RT #22795]
|
||||
|
||||
2992. [contrib] contrib/check-secure-delegation.pl: A simple tool
|
||||
for looking at a secure delegation. [RT #22059]
|
||||
|
||||
2991. [contrib] contrib/zone-edit.sh: A simple zone editing tool for
|
||||
dynamic zones. [RT #22365]
|
||||
|
||||
2988. [experimental] Added a "dlopen" DLZ driver, allowing the creation
|
||||
of external DLZ drivers that can be loaded as
|
||||
shared objects at runtime rather than linked with
|
||||
named. Currently this is switched on via a
|
||||
compile-time option, "configure --with-dlz-dlopen".
|
||||
Note: the syntax for configuring DLZ zones
|
||||
is likely to be refined in future releases.
|
||||
(Contributed by Andrew Tridgell of the Samba
|
||||
project.) [RT #22629]
|
||||
|
||||
2948. [port] MacOS: provide a mechanism to configure the test
|
||||
interfaces at reboot. See bin/tests/system/README
|
||||
for details.
|
||||
@@ -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-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004-2010, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -30,6 +30,7 @@
|
||||
<year>2008</year>
|
||||
<year>2009</year>
|
||||
<year>2010</year>
|
||||
<year>2012</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
|
||||
+7
-4
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004-2009, 2011, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 1998-2002 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -13,7 +13,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: Makefile.in,v 1.58 2009/11/26 20:52:44 marka Exp $
|
||||
# $Id: Makefile.in,v 1.58.8.4 2011/09/06 04:05:37 marka Exp $
|
||||
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
@@ -21,7 +21,7 @@ top_srcdir = @top_srcdir@
|
||||
|
||||
@BIND9_VERSION@
|
||||
|
||||
SUBDIRS = make lib bin doc @LIBEXPORT@
|
||||
SUBDIRS = make unit lib bin doc @LIBEXPORT@
|
||||
TARGETS =
|
||||
|
||||
MANPAGES = isc-config.sh.1
|
||||
@@ -64,7 +64,10 @@ tags:
|
||||
check: test
|
||||
|
||||
test:
|
||||
(cd bin/tests && ${MAKE} ${MAKEDEFS} test)
|
||||
status=0; \
|
||||
(cd bin/tests && ${MAKE} ${MAKEDEFS} test) || status=1; \
|
||||
(test -f unit/unittest.sh && $(SHELL) unit/unittest.sh) || status=1; \
|
||||
exit $$status
|
||||
|
||||
FAQ: FAQ.xml
|
||||
${XSLTPROC} doc/xsl/isc-docbook-text.xsl FAQ.xml | \
|
||||
|
||||
@@ -48,6 +48,58 @@ BIND 9
|
||||
For a detailed list of user-visible changes from
|
||||
previous releases, see the CHANGES file.
|
||||
|
||||
For up-to-date release notes and errata, see
|
||||
http://www.isc.org/software/bind9/releasenotes
|
||||
|
||||
BIND 9.7.7
|
||||
|
||||
BIND 9.7.7 includes several bug fixes and patches security
|
||||
flaws described in CVE-2012-1667 and CVE-2012-3817.
|
||||
|
||||
BIND 9.7.6
|
||||
|
||||
BIND 9.7.6 is a maintenance release, fixing bugs in 9.7.5.
|
||||
|
||||
BIND 9.7.5
|
||||
|
||||
BIND 9.7.5 includes a number of bug fixes and prevents a security
|
||||
problem described in CVE-2011-4313
|
||||
|
||||
BIND 9.7.4
|
||||
|
||||
BIND 9.7.4 is a maintenance release, fixing bugs in 9.7.3.
|
||||
|
||||
BIND 9.7.3
|
||||
|
||||
BIND 9.7.3 is a maintenance release, fixing bugs in 9.7.2.
|
||||
|
||||
BIND 9.7.2
|
||||
|
||||
BIND 9.7.2 will address bugs in 9.7.1, and also introduces
|
||||
some new functionality:
|
||||
|
||||
- "rndc loadkeys" to allow new keys to be added to a managed
|
||||
zone without having them sign the content immediately.
|
||||
- "rndc addzone" and "rndc delzone" allow adding and deleting
|
||||
zones at runtime. This requires the view to have the
|
||||
"new-zone-file" option set to a filename. Zone configuration
|
||||
information for new zones is specified in the 'rndc addzone'
|
||||
command line, and is stored in that file. To make new
|
||||
zones persist after a restart, "include" the file
|
||||
into named.conf in the appropriate view. (Note:
|
||||
This feature is not yet documented, and its syntax
|
||||
is expected to change.)
|
||||
- "rndc secroots" dumps a list of the current trusted and
|
||||
managed DNSSEC keys for each view.
|
||||
- "filter-aaaa-on-v4" can now be applied selectively to
|
||||
some IPv4 clients but not others, using the "filter-aaaa"
|
||||
ACL. (This feature requires BIND 9 to be built with
|
||||
the --enable-filter-aaaa configure option.)
|
||||
|
||||
BIND 9.7.1
|
||||
|
||||
BIND 9.7.1 is a maintenance release, fixing bugs in 9.7.0.
|
||||
|
||||
BIND 9.7.0
|
||||
|
||||
BIND 9.7.0 includes a number of changes from BIND 9.6 and earlier
|
||||
@@ -79,6 +131,17 @@ BIND 9.7.0
|
||||
|
||||
Known issues in this release:
|
||||
|
||||
- A validating resolver that has been incorrectly configured with
|
||||
an invalid trust anchor will be unable to resolve names covered
|
||||
by that trust anchor. In all current versions of BIND 9, such a
|
||||
resolver will also generate significant unnecessary DNS traffic
|
||||
while trying to validate. The latter problem will be addressed
|
||||
in future BIND 9 releases. In the meantime, to avoid these
|
||||
problems, exercise caution when configuring "trusted-keys":
|
||||
make sure all keys are correct and current when you add them,
|
||||
and update your configuration in a timely manner when keys
|
||||
roll over.
|
||||
|
||||
- In rare cases, DNSSEC validation can leak memory. When this
|
||||
happens, it will cause an assertion failure when named exits,
|
||||
but is otherwise harmless. A fix exists, but was too late for
|
||||
@@ -132,9 +195,9 @@ Building
|
||||
Ubuntu 7.04, 7.10
|
||||
Windows XP/2003/2008
|
||||
|
||||
NOTE: As of BIND 9.5.1, 9.4.3, and 9.3.6, older versions of
|
||||
Windows, including Windows NT and Windows 2000, are no longer
|
||||
supported.
|
||||
NOTE: As of BIND 9.5.1, 9.4.3, and 9.3.6, older versions of
|
||||
Windows, including Windows NT and Windows 2000, are no longer
|
||||
supported.
|
||||
|
||||
We have recent reports from the user community that a supported
|
||||
version of BIND will build and run on the following systems:
|
||||
@@ -234,10 +297,10 @@ Building
|
||||
on the configure command line. The default is operating
|
||||
system dependent.
|
||||
|
||||
Support for the "fixed" rrset-order option can be enabled
|
||||
or disabled by specifying "--enable-fixed-rrset" or
|
||||
"--disable-fixed-rrset" on the configure command line.
|
||||
The default is "disabled", to reduce memory footprint.
|
||||
Support for the "fixed" rrset-order option can be enabled
|
||||
or disabled by specifying "--enable-fixed-rrset" or
|
||||
"--disable-fixed-rrset" on the configure command line.
|
||||
The default is "disabled", to reduce memory footprint.
|
||||
|
||||
If your operating system has integrated support for IPv6, it
|
||||
will be used automatically. If you have installed KAME IPv6
|
||||
@@ -303,8 +366,50 @@ Documentation
|
||||
Frequently asked questions and their answers can be found in
|
||||
FAQ.
|
||||
|
||||
Additional information on various subjects can be found
|
||||
in the other README files.
|
||||
Additional information on various subjects can be found
|
||||
in the other README files.
|
||||
|
||||
|
||||
Change Log
|
||||
|
||||
A detailed list of all changes to BIND 9 is included in the
|
||||
file CHANGES, with the most recent changes listed first.
|
||||
Change notes include tags indicating the category of the
|
||||
change that was made; these categories are:
|
||||
|
||||
[func] New feature
|
||||
|
||||
[bug] General bug fix
|
||||
|
||||
[security] Fix for a significant security flaw
|
||||
|
||||
[experimental] Used for new features when the syntax
|
||||
or other aspects of the design are still
|
||||
in flux and may change
|
||||
|
||||
[port] Portability enhancement
|
||||
|
||||
[maint] Updates to built-in data such as root
|
||||
server addresses and keys
|
||||
|
||||
[tuning] Changes to built-in configuration defaults
|
||||
and constants to improve performanceo
|
||||
|
||||
[protocol] Updates to the DNS protocol such as new
|
||||
RR types
|
||||
|
||||
[test] Changes to the automatic tests, not
|
||||
affecting server functionality
|
||||
|
||||
[cleanup] Minor corrections and refactoring
|
||||
|
||||
[doc] Documentation
|
||||
|
||||
In general, [func] and [experimental] tags will only appear
|
||||
in new-feature releases (i.e., those with version numbers
|
||||
ending in zero). Some new functionality may be backported to
|
||||
older releases on a case-by-case basis. All other change
|
||||
types may be applied to all currently-supported releases.
|
||||
|
||||
|
||||
Bug Reports and Mailing Lists
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
Makefile
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004, 2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004, 2007, 2009, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 1998-2001 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
Makefile
|
||||
.libs
|
||||
*.la
|
||||
*.lo
|
||||
named-checkconf
|
||||
named-checkzone
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004-2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004-2007, 2009, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
|
||||
+29
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2010 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.39 2009/09/01 00:22:24 jinmei Exp $ */
|
||||
/* $Id: check-tool.c,v 1.39.104.2 2010/09/07 23:46:37 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -23,6 +23,10 @@
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#ifdef _WIN32
|
||||
#include <Winsock2.h>
|
||||
#endif
|
||||
|
||||
#include "check-tool.h"
|
||||
#include <isc/buffer.h>
|
||||
#include <isc/log.h>
|
||||
@@ -661,3 +665,26 @@ dump_zone(const char *zonename, dns_zone_t *zone, const char *filename,
|
||||
|
||||
return (result);
|
||||
}
|
||||
|
||||
#ifdef _WIN32
|
||||
void
|
||||
InitSockets(void) {
|
||||
WORD wVersionRequested;
|
||||
WSADATA wsaData;
|
||||
int err;
|
||||
|
||||
wVersionRequested = MAKEWORD(2, 0);
|
||||
|
||||
err = WSAStartup( wVersionRequested, &wsaData );
|
||||
if (err != 0) {
|
||||
fprintf(stderr, "WSAStartup() failed: %d\n", err);
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
DestroySockets(void) {
|
||||
WSACleanup();
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2007, 2010 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.h,v 1.14 2007/06/18 23:47:17 tbox Exp $ */
|
||||
/* $Id: check-tool.h,v 1.14.560.2 2010/09/07 23:46:37 tbox Exp $ */
|
||||
|
||||
#ifndef CHECK_TOOL_H
|
||||
#define CHECK_TOOL_H
|
||||
@@ -43,6 +43,11 @@ isc_result_t
|
||||
dump_zone(const char *zonename, dns_zone_t *zone, const char *filename,
|
||||
dns_masterformat_t fileformat, const dns_master_style_t *style);
|
||||
|
||||
#ifdef _WIN32
|
||||
void InitSockets(void);
|
||||
void DestroySockets(void);
|
||||
#endif
|
||||
|
||||
extern int debug;
|
||||
extern isc_boolean_t nomerge;
|
||||
extern isc_boolean_t docheckmx;
|
||||
|
||||
@@ -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.33 2009/12/29 01:14:03 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007, 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2009-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named-checkconf.c,v 1.53 2010/03/09 23:51:06 tbox Exp $ */
|
||||
/* $Id: named-checkconf.c,v 1.51.4.5 2011/03/12 04:58:23 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -190,7 +190,7 @@ configure_zone(const char *vclass, const char *view,
|
||||
if (obj != NULL)
|
||||
maps[i++] = obj;
|
||||
}
|
||||
maps[i++] = NULL;
|
||||
maps[i] = NULL;
|
||||
|
||||
cfg_map_get(zoptions, "type", &typeobj);
|
||||
if (typeobj == NULL)
|
||||
@@ -488,6 +488,10 @@ main(int argc, char **argv) {
|
||||
if (conffile == NULL || conffile[0] == '\0')
|
||||
conffile = NAMED_CONFFILE;
|
||||
|
||||
#ifdef _WIN32
|
||||
InitSockets();
|
||||
#endif
|
||||
|
||||
RUNTIME_CHECK(isc_mem_create(0, 0, &mctx) == ISC_R_SUCCESS);
|
||||
|
||||
RUNTIME_CHECK(setup_logging(mctx, stdout, &logc) == ISC_R_SUCCESS);
|
||||
@@ -531,5 +535,9 @@ main(int argc, char **argv) {
|
||||
|
||||
isc_mem_destroy(&mctx);
|
||||
|
||||
#ifdef _WIN32
|
||||
DestroySockets();
|
||||
#endif
|
||||
|
||||
return (exit_status);
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: named-checkconf.docbook,v 1.22 2009/12/28 23:21:16 each Exp $ -->
|
||||
<!-- $Id: named-checkconf.docbook,v 1.21.126.1 2009/12/28 23:21:44 each Exp $ -->
|
||||
<refentry id="man.named-checkconf">
|
||||
<refentryinfo>
|
||||
<date>June 14, 2000</date>
|
||||
|
||||
@@ -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.33 2009/12/29 01:14:03 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<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">named-checkconf</code> [<code class="option">-h</code>] [<code class="option">-v</code>] [<code class="option">-j</code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] {filename} [<code class="option">-p</code>] [<code class="option">-z</code>]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543395"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543396"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">named-checkconf</strong></span>
|
||||
checks the syntax, but not the semantics, of a
|
||||
<span><strong class="command">named</strong></span> configuration file. The file is parsed
|
||||
@@ -52,7 +52,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543444"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543445"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-h</span></dt>
|
||||
<dd><p>
|
||||
@@ -91,21 +91,21 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543568"></a><h2>RETURN VALUES</h2>
|
||||
<a name="id2543569"></a><h2>RETURN VALUES</h2>
|
||||
<p><span><strong class="command">named-checkconf</strong></span>
|
||||
returns an exit status of 1 if
|
||||
errors were detected and 0 otherwise.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543579"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2543580"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named-checkzone</span>(8)</span>,
|
||||
<em class="citetitle">BIND 9 Administrator Reference Manual</em>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543609"></a><h2>AUTHOR</h2>
|
||||
<a name="id2543610"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2004-2007, 2009, 2010 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
|
||||
@@ -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.47 2010/01/17 01:14:02 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -33,9 +33,9 @@
|
||||
named\-checkzone, named\-compilezone \- zone file validity checking or converting tool
|
||||
.SH "SYNOPSIS"
|
||||
.HP 16
|
||||
\fBnamed\-checkzone\fR [\fB\-d\fR] [\fB\-h\fR] [\fB\-j\fR] [\fB\-q\fR] [\fB\-v\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-f\ \fR\fB\fIformat\fR\fR] [\fB\-F\ \fR\fB\fIformat\fR\fR] [\fB\-i\ \fR\fB\fImode\fR\fR] [\fB\-k\ \fR\fB\fImode\fR\fR] [\fB\-m\ \fR\fB\fImode\fR\fR] [\fB\-M\ \fR\fB\fImode\fR\fR] [\fB\-n\ \fR\fB\fImode\fR\fR] [\fB\-o\ \fR\fB\fIfilename\fR\fR] [\fB\-r\ \fR\fB\fImode\fR\fR] [\fB\-s\ \fR\fB\fIstyle\fR\fR] [\fB\-S\ \fR\fB\fImode\fR\fR] [\fB\-t\ \fR\fB\fIdirectory\fR\fR] [\fB\-w\ \fR\fB\fIdirectory\fR\fR] [\fB\-D\fR] [\fB\-W\ \fR\fB\fImode\fR\fR] {zonename} {filename}
|
||||
\fBnamed\-checkzone\fR [\fB\-d\fR] [\fB\-h\fR] [\fB\-j\fR] [\fB\-q\fR] [\fB\-v\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-f\ \fR\fB\fIformat\fR\fR] [\fB\-F\ \fR\fB\fIformat\fR\fR] [\fB\-i\ \fR\fB\fImode\fR\fR] [\fB\-k\ \fR\fB\fImode\fR\fR] [\fB\-m\ \fR\fB\fImode\fR\fR] [\fB\-M\ \fR\fB\fImode\fR\fR] [\fB\-n\ \fR\fB\fImode\fR\fR] [\fB\-r\ \fR\fB\fImode\fR\fR] [\fB\-s\ \fR\fB\fIstyle\fR\fR] [\fB\-S\ \fR\fB\fImode\fR\fR] [\fB\-t\ \fR\fB\fIdirectory\fR\fR] [\fB\-w\ \fR\fB\fIdirectory\fR\fR] [\fB\-D\fR] [\fB\-W\ \fR\fB\fImode\fR\fR] {zonename} {filename}
|
||||
.HP 18
|
||||
\fBnamed\-compilezone\fR [\fB\-d\fR] [\fB\-j\fR] [\fB\-q\fR] [\fB\-v\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-C\ \fR\fB\fImode\fR\fR] [\fB\-f\ \fR\fB\fIformat\fR\fR] [\fB\-F\ \fR\fB\fIformat\fR\fR] [\fB\-i\ \fR\fB\fImode\fR\fR] [\fB\-k\ \fR\fB\fImode\fR\fR] [\fB\-m\ \fR\fB\fImode\fR\fR] [\fB\-n\ \fR\fB\fImode\fR\fR] [\fB\-r\ \fR\fB\fImode\fR\fR] [\fB\-s\ \fR\fB\fIstyle\fR\fR] [\fB\-t\ \fR\fB\fIdirectory\fR\fR] [\fB\-w\ \fR\fB\fIdirectory\fR\fR] [\fB\-D\fR] [\fB\-W\ \fR\fB\fImode\fR\fR] {\fB\-o\ \fR\fB\fIfilename\fR\fR} {zonename} {filename}
|
||||
\fBnamed\-compilezone\fR [\fB\-d\fR] [\fB\-j\fR] [\fB\-q\fR] [\fB\-v\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-C\ \fR\fB\fImode\fR\fR] [\fB\-f\ \fR\fB\fIformat\fR\fR] [\fB\-F\ \fR\fB\fIformat\fR\fR] [\fB\-i\ \fR\fB\fImode\fR\fR] [\fB\-k\ \fR\fB\fImode\fR\fR] [\fB\-m\ \fR\fB\fImode\fR\fR] [\fB\-n\ \fR\fB\fImode\fR\fR] [\fB\-o\ \fR\fB\fIfilename\fR\fR] [\fB\-r\ \fR\fB\fImode\fR\fR] [\fB\-s\ \fR\fB\fIstyle\fR\fR] [\fB\-t\ \fR\fB\fIdirectory\fR\fR] [\fB\-w\ \fR\fB\fIdirectory\fR\fR] [\fB\-D\fR] [\fB\-W\ \fR\fB\fImode\fR\fR] {\fB\-o\ \fR\fB\fIfilename\fR\fR} {zonename} {filename}
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBnamed\-checkzone\fR
|
||||
@@ -281,7 +281,7 @@ BIND 9 Administrator Reference Manual.
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004\-2007, 2009, 2010 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-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named-checkzone.c,v 1.59 2009/12/04 22:06:37 tbox Exp $ */
|
||||
/* $Id: named-checkzone.c,v 1.59.4.4 2011/12/22 23:45:33 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -112,6 +112,7 @@ main(int argc, char **argv) {
|
||||
const char *outputformatstr = NULL;
|
||||
dns_masterformat_t inputformat = dns_masterformat_text;
|
||||
dns_masterformat_t outputformat = dns_masterformat_text;
|
||||
isc_boolean_t logdump = ISC_FALSE;
|
||||
FILE *errout = stdout;
|
||||
|
||||
outputstyle = &dns_master_style_full;
|
||||
@@ -418,6 +419,7 @@ main(int argc, char **argv) {
|
||||
|
||||
if (progmode == progmode_compile) {
|
||||
dumpzone = 1; /* always dump */
|
||||
logdump = !quiet;
|
||||
if (output_filename == NULL) {
|
||||
fprintf(stderr,
|
||||
"output file required, but not specified\n");
|
||||
@@ -436,12 +438,18 @@ main(int argc, char **argv) {
|
||||
(output_filename == NULL ||
|
||||
strcmp(output_filename, "-") == 0 ||
|
||||
strcmp(output_filename, "/dev/fd/1") == 0 ||
|
||||
strcmp(output_filename, "/dev/stdout") == 0))
|
||||
strcmp(output_filename, "/dev/stdout") == 0)) {
|
||||
errout = stderr;
|
||||
logdump = ISC_FALSE;
|
||||
}
|
||||
|
||||
if (isc_commandline_index + 2 != argc)
|
||||
usage();
|
||||
|
||||
#ifdef _WIN32
|
||||
InitSockets();
|
||||
#endif
|
||||
|
||||
RUNTIME_CHECK(isc_mem_create(0, 0, &mctx) == ISC_R_SUCCESS);
|
||||
if (!quiet)
|
||||
RUNTIME_CHECK(setup_logging(mctx, errout, &lctx)
|
||||
@@ -458,13 +466,13 @@ main(int argc, char **argv) {
|
||||
&zone);
|
||||
|
||||
if (result == ISC_R_SUCCESS && dumpzone) {
|
||||
if (!quiet && progmode == progmode_compile) {
|
||||
if (logdump) {
|
||||
fprintf(errout, "dump zone to %s...", output_filename);
|
||||
fflush(errout);
|
||||
}
|
||||
result = dump_zone(origin, zone, output_filename,
|
||||
outputformat, outputstyle);
|
||||
if (!quiet && progmode == progmode_compile)
|
||||
if (logdump)
|
||||
fprintf(errout, "done\n");
|
||||
}
|
||||
|
||||
@@ -476,5 +484,8 @@ main(int argc, char **argv) {
|
||||
isc_hash_destroy();
|
||||
isc_entropy_detach(&ectx);
|
||||
isc_mem_destroy(&mctx);
|
||||
#ifdef _WIN32
|
||||
DestroySockets();
|
||||
#endif
|
||||
return ((result == ISC_R_SUCCESS) ? 0 : 1);
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004-2007, 2009, 2010 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.40 2010/01/16 23:48:15 tbox Exp $ -->
|
||||
<!-- $Id: named-checkzone.docbook,v 1.38 2009/12/04 21:09:32 marka Exp $ -->
|
||||
<refentry id="man.named-checkzone">
|
||||
<refentryinfo>
|
||||
<date>June 13, 2000</date>
|
||||
@@ -37,7 +37,6 @@
|
||||
<year>2006</year>
|
||||
<year>2007</year>
|
||||
<year>2009</year>
|
||||
<year>2010</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
@@ -70,7 +69,6 @@
|
||||
<arg><option>-m <replaceable class="parameter">mode</replaceable></option></arg>
|
||||
<arg><option>-M <replaceable class="parameter">mode</replaceable></option></arg>
|
||||
<arg><option>-n <replaceable class="parameter">mode</replaceable></option></arg>
|
||||
<arg><option>-o <replaceable class="parameter">filename</replaceable></option></arg>
|
||||
<arg><option>-r <replaceable class="parameter">mode</replaceable></option></arg>
|
||||
<arg><option>-s <replaceable class="parameter">style</replaceable></option></arg>
|
||||
<arg><option>-S <replaceable class="parameter">mode</replaceable></option></arg>
|
||||
@@ -95,6 +93,7 @@
|
||||
<arg><option>-k <replaceable class="parameter">mode</replaceable></option></arg>
|
||||
<arg><option>-m <replaceable class="parameter">mode</replaceable></option></arg>
|
||||
<arg><option>-n <replaceable class="parameter">mode</replaceable></option></arg>
|
||||
<arg><option>-o <replaceable class="parameter">filename</replaceable></option></arg>
|
||||
<arg><option>-r <replaceable class="parameter">mode</replaceable></option></arg>
|
||||
<arg><option>-s <replaceable class="parameter">style</replaceable></option></arg>
|
||||
<arg><option>-t <replaceable class="parameter">directory</replaceable></option></arg>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2007, 2009, 2010 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
|
||||
@@ -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.47 2010/01/17 01:14:02 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -29,11 +29,11 @@
|
||||
</div>
|
||||
<div class="refsynopsisdiv">
|
||||
<h2>Synopsis</h2>
|
||||
<div class="cmdsynopsis"><p><code class="command">named-checkzone</code> [<code class="option">-d</code>] [<code class="option">-h</code>] [<code class="option">-j</code>] [<code class="option">-q</code>] [<code class="option">-v</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-f <em class="replaceable"><code>format</code></em></code>] [<code class="option">-F <em class="replaceable"><code>format</code></em></code>] [<code class="option">-i <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-k <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-m <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-M <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-n <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-o <em class="replaceable"><code>filename</code></em></code>] [<code class="option">-r <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-s <em class="replaceable"><code>style</code></em></code>] [<code class="option">-S <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-w <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-D</code>] [<code class="option">-W <em class="replaceable"><code>mode</code></em></code>] {zonename} {filename}</p></div>
|
||||
<div class="cmdsynopsis"><p><code class="command">named-compilezone</code> [<code class="option">-d</code>] [<code class="option">-j</code>] [<code class="option">-q</code>] [<code class="option">-v</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-C <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-f <em class="replaceable"><code>format</code></em></code>] [<code class="option">-F <em class="replaceable"><code>format</code></em></code>] [<code class="option">-i <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-k <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-m <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-n <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-r <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-s <em class="replaceable"><code>style</code></em></code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-w <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-D</code>] [<code class="option">-W <em class="replaceable"><code>mode</code></em></code>] {<code class="option">-o <em class="replaceable"><code>filename</code></em></code>} {zonename} {filename}</p></div>
|
||||
<div class="cmdsynopsis"><p><code class="command">named-checkzone</code> [<code class="option">-d</code>] [<code class="option">-h</code>] [<code class="option">-j</code>] [<code class="option">-q</code>] [<code class="option">-v</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-f <em class="replaceable"><code>format</code></em></code>] [<code class="option">-F <em class="replaceable"><code>format</code></em></code>] [<code class="option">-i <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-k <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-m <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-M <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-n <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-r <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-s <em class="replaceable"><code>style</code></em></code>] [<code class="option">-S <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-w <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-D</code>] [<code class="option">-W <em class="replaceable"><code>mode</code></em></code>] {zonename} {filename}</p></div>
|
||||
<div class="cmdsynopsis"><p><code class="command">named-compilezone</code> [<code class="option">-d</code>] [<code class="option">-j</code>] [<code class="option">-q</code>] [<code class="option">-v</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-C <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-f <em class="replaceable"><code>format</code></em></code>] [<code class="option">-F <em class="replaceable"><code>format</code></em></code>] [<code class="option">-i <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-k <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-m <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-n <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-o <em class="replaceable"><code>filename</code></em></code>] [<code class="option">-r <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-s <em class="replaceable"><code>style</code></em></code>] [<code class="option">-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>] {<code class="option">-o <em class="replaceable"><code>filename</code></em></code>} {zonename} {filename}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543694"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543692"></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="id2543730"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543728"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-d</span></dt>
|
||||
<dd><p>
|
||||
@@ -247,14 +247,14 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544377"></a><h2>RETURN VALUES</h2>
|
||||
<a name="id2544443"></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="id2544389"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2544455"></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>,
|
||||
@@ -262,7 +262,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544422"></a><h2>AUTHOR</h2>
|
||||
<a name="id2544488"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
Makefile
|
||||
ddns-confgen
|
||||
rndc-confgen
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2009, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
# purpose with or without fee is hereby granted, provided that the above
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: ddns-confgen.8,v 1.10 2009/09/19 01:14:52 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: ddns-confgen.c,v 1.9 2009/09/29 15:06:05 fdupont Exp $ */
|
||||
/* $Id: ddns-confgen.c,v 1.9.66.2 2011/03/12 04:58:23 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -160,6 +160,7 @@ main(int argc, char **argv) {
|
||||
|
||||
argc -= isc_commandline_index;
|
||||
argv += isc_commandline_index;
|
||||
POST(argv);
|
||||
|
||||
if (self_domain != NULL && zone != NULL)
|
||||
usage(1); /* -s and -z cannot coexist */
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: ddns-confgen.html,v 1.10 2009/09/19 01:14:52 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -31,7 +31,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">ddns-confgen</code> [<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>] [<code class="option">-h</code>] [<code class="option">-k <em class="replaceable"><code>keyname</code></em></code>] [<code class="option">-r <em class="replaceable"><code>randomfile</code></em></code>] [ -s <em class="replaceable"><code>name</code></em> | -z <em class="replaceable"><code>zone</code></em> ] [<code class="option">-q</code>] [name]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543395"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543396"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">ddns-confgen</strong></span>
|
||||
generates a key for use by <span><strong class="command">nsupdate</strong></span>
|
||||
and <span><strong class="command">named</strong></span>. It simplifies configuration
|
||||
@@ -58,7 +58,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543454"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543456"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
|
||||
<dd><p>
|
||||
@@ -125,7 +125,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543642"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2543643"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">nsupdate</span>(1)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named.conf</span>(5)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
@@ -133,7 +133,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543681"></a><h2>AUTHOR</h2>
|
||||
<a name="id2543682"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -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.7 2009/07/11 01:12:45 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2007-2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001, 2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: rndc-confgen.c,v 1.5 2009/09/29 15:06:05 fdupont Exp $ */
|
||||
/* $Id: rndc-confgen.c,v 1.5.66.2 2011/03/12 04:58:23 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -200,6 +200,7 @@ main(int argc, char **argv) {
|
||||
|
||||
argc -= isc_commandline_index;
|
||||
argv += isc_commandline_index;
|
||||
POST(argv);
|
||||
|
||||
if (argc > 0)
|
||||
usage(1);
|
||||
|
||||
@@ -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.7 2009/07/11 01:12:45 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<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">rndc-confgen</code> [<code class="option">-a</code>] [<code class="option">-b <em class="replaceable"><code>keysize</code></em></code>] [<code class="option">-c <em class="replaceable"><code>keyfile</code></em></code>] [<code class="option">-h</code>] [<code class="option">-k <em class="replaceable"><code>keyname</code></em></code>] [<code class="option">-p <em class="replaceable"><code>port</code></em></code>] [<code class="option">-r <em class="replaceable"><code>randomfile</code></em></code>] [<code class="option">-s <em class="replaceable"><code>address</code></em></code>] [<code class="option">-t <em class="replaceable"><code>chrootdir</code></em></code>] [<code class="option">-u <em class="replaceable"><code>user</code></em></code>]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543432"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543433"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">rndc-confgen</strong></span>
|
||||
generates configuration files
|
||||
for <span><strong class="command">rndc</strong></span>. It can be used as a
|
||||
@@ -48,7 +48,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543477"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543478"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-a</span></dt>
|
||||
<dd>
|
||||
@@ -155,7 +155,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543790"></a><h2>EXAMPLES</h2>
|
||||
<a name="id2543792"></a><h2>EXAMPLES</h2>
|
||||
<p>
|
||||
To allow <span><strong class="command">rndc</strong></span> to be used with
|
||||
no manual configuration, run
|
||||
@@ -172,7 +172,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543832"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2543833"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">rndc</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">rndc.conf</span>(5)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
@@ -180,7 +180,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543870"></a><h2>AUTHOR</h2>
|
||||
<a name="id2543872"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2009, 2012 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
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
Makefile
|
||||
dig
|
||||
host
|
||||
nslookup
|
||||
*.lo
|
||||
.libs
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004, 2005, 2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004, 2005, 2007, 2009, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
|
||||
+3
-8
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2004-2010 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
|
||||
@@ -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.54 2010/03/05 01:14:15 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -455,11 +455,6 @@ Print records like the SOA records in a verbose multi\-line format with human\-r
|
||||
output.
|
||||
.RE
|
||||
.PP
|
||||
\fB+[no]onesoa\fR
|
||||
.RS 4
|
||||
Print only one (starting) SOA record when performing an AXFR. The default is to print both the starting and ending SOA records.
|
||||
.RE
|
||||
.PP
|
||||
\fB+[no]fail\fR
|
||||
.RS 4
|
||||
Do not try the next server if you receive a SERVFAIL. The default is to not try the next server which is the reverse of normal stub resolver behavior.
|
||||
@@ -567,7 +562,7 @@ RFC1035.
|
||||
.PP
|
||||
There are probably too many query options.
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004\-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2004\-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000\-2003 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
+4
-42
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dig.c,v 1.237 2010/05/13 00:40:46 marka Exp $ */
|
||||
/* $Id: dig.c,v 1.233.62.7 2011/12/07 17:24:25 each Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -44,8 +44,6 @@
|
||||
#include <dns/result.h>
|
||||
#include <dns/tsig.h>
|
||||
|
||||
#include <bind9/getaddresses.h>
|
||||
|
||||
#include <dig/dig.h>
|
||||
|
||||
#define ADD_STRING(b, s) { \
|
||||
@@ -68,8 +66,7 @@ static char domainopt[DNS_NAME_MAXTEXT];
|
||||
|
||||
static isc_boolean_t short_form = ISC_FALSE, printcmd = ISC_TRUE,
|
||||
ip6_int = ISC_FALSE, plusquest = ISC_FALSE, pluscomm = ISC_FALSE,
|
||||
multiline = ISC_FALSE, nottl = ISC_FALSE, noclass = ISC_FALSE,
|
||||
onesoa = ISC_FALSE;
|
||||
multiline = ISC_FALSE, nottl = ISC_FALSE, noclass = ISC_FALSE;
|
||||
|
||||
/*% opcode text */
|
||||
static const char * const opcodetext[] = {
|
||||
@@ -226,7 +223,6 @@ help(void) {
|
||||
#endif
|
||||
#endif
|
||||
" +[no]multiline (Print records in an expanded format)\n"
|
||||
" +[no]onesoa (AXFR prints only one soa record)\n"
|
||||
" global d-opts and servers (before host name) affect all queries.\n"
|
||||
" local d-opts and servers (after host name) affect only that lookup.\n"
|
||||
" -h (print help and exit)\n"
|
||||
@@ -473,14 +469,9 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
flags |= DNS_MESSAGETEXTFLAG_NOHEADERS;
|
||||
flags |= DNS_MESSAGETEXTFLAG_NOCOMMENTS;
|
||||
}
|
||||
if (onesoa && query->lookup->rdtype == dns_rdatatype_axfr)
|
||||
flags |= (query->msg_count == 0) ? DNS_MESSAGETEXTFLAG_ONESOA :
|
||||
DNS_MESSAGETEXTFLAG_OMITSOA;
|
||||
if (!query->lookup->comments)
|
||||
flags |= DNS_MESSAGETEXTFLAG_NOCOMMENTS;
|
||||
|
||||
result = ISC_R_SUCCESS;
|
||||
|
||||
result = isc_buffer_allocate(mctx, &buf, len);
|
||||
check_result(result, "isc_buffer_allocate");
|
||||
|
||||
@@ -932,10 +923,6 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
goto invalid_option;
|
||||
}
|
||||
break;
|
||||
case 'o':
|
||||
FULLCHECK("onesoa");
|
||||
onesoa = state;
|
||||
break;
|
||||
case 'q':
|
||||
switch (cmd[1]) {
|
||||
case 'r': /* qr */
|
||||
@@ -1437,30 +1424,6 @@ preparse_args(int argc, char **argv) {
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
getaddresses(dig_lookup_t *lookup, const char *host) {
|
||||
isc_result_t result;
|
||||
isc_sockaddr_t sockaddrs[DIG_MAX_ADDRESSES];
|
||||
isc_netaddr_t netaddr;
|
||||
int count, i;
|
||||
dig_server_t *srv;
|
||||
char tmp[ISC_NETADDR_FORMATSIZE];
|
||||
|
||||
result = bind9_getaddresses(host, 0, sockaddrs,
|
||||
DIG_MAX_ADDRESSES, &count);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("couldn't get address for '%s': %s",
|
||||
host, isc_result_totext(result));
|
||||
|
||||
for (i = 0; i < count; i++) {
|
||||
isc_netaddr_fromsockaddr(&netaddr, &sockaddrs[i]);
|
||||
isc_netaddr_format(&netaddr, tmp, sizeof(tmp));
|
||||
srv = make_server(tmp, host);
|
||||
ISC_LIST_APPEND(lookup->my_server_list, srv, link);
|
||||
}
|
||||
addresscount = count;
|
||||
}
|
||||
|
||||
static void
|
||||
parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
int argc, char **argv) {
|
||||
@@ -1555,7 +1518,7 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
if (strncmp(rv[0], "%", 1) == 0)
|
||||
break;
|
||||
if (strncmp(rv[0], "@", 1) == 0) {
|
||||
getaddresses(lookup, &rv[0][1]);
|
||||
addresscount = getaddresses(lookup, &rv[0][1], NULL);
|
||||
} else if (rv[0][0] == '+') {
|
||||
plus_option(&rv[0][1], is_batchfile,
|
||||
lookup);
|
||||
@@ -1592,7 +1555,6 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
(isc_textregion_t *)&tr);
|
||||
if (result == ISC_R_SUCCESS &&
|
||||
rdtype == dns_rdatatype_ixfr) {
|
||||
result = DNS_R_UNKNOWN;
|
||||
fprintf(stderr, ";; Warning, "
|
||||
"ixfr requires a "
|
||||
"serial number\n");
|
||||
|
||||
+2
-14
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004-2010 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.47 2010/03/04 23:50:34 tbox Exp $ -->
|
||||
<!-- $Id: dig.docbook,v 1.45 2009/02/02 04:41:28 marka Exp $ -->
|
||||
<refentry id="man.dig">
|
||||
|
||||
<refentryinfo>
|
||||
@@ -44,7 +44,6 @@
|
||||
<year>2007</year>
|
||||
<year>2008</year>
|
||||
<year>2009</year>
|
||||
<year>2010</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
@@ -767,17 +766,6 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>+[no]onesoa</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Print only one (starting) SOA record when performing
|
||||
an AXFR. The default is to print both the starting and
|
||||
ending SOA records.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>+[no]fail</option></term>
|
||||
<listitem>
|
||||
|
||||
+11
-17
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2010 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
|
||||
@@ -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.49 2010/03/05 01:14:15 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<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="id2543522"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543521"></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="id2543595"></a><h2>SIMPLE USAGE</h2>
|
||||
<a name="id2543594"></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="id2543686"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543685"></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="id2544035"></a><h2>QUERY OPTIONS</h2>
|
||||
<a name="id2544034"></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
|
||||
@@ -499,12 +499,6 @@
|
||||
each record on a single line, to facilitate machine parsing
|
||||
of the <span><strong class="command">dig</strong></span> output.
|
||||
</p></dd>
|
||||
<dt><span class="term"><code class="option">+[no]onesoa</code></span></dt>
|
||||
<dd><p>
|
||||
Print only one (starting) SOA record when performing
|
||||
an AXFR. The default is to print both the starting and
|
||||
ending SOA records.
|
||||
</p></dd>
|
||||
<dt><span class="term"><code class="option">+[no]fail</code></span></dt>
|
||||
<dd><p>
|
||||
Do not try the next server if you receive a SERVFAIL. The
|
||||
@@ -561,7 +555,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545184"></a><h2>MULTIPLE QUERIES</h2>
|
||||
<a name="id2545169"></a><h2>MULTIPLE QUERIES</h2>
|
||||
<p>
|
||||
The BIND 9 implementation of <span><strong class="command">dig </strong></span>
|
||||
supports
|
||||
@@ -607,7 +601,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="id2545245"></a><h2>IDN SUPPORT</h2>
|
||||
<a name="id2545230"></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.
|
||||
@@ -621,14 +615,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="id2545336"></a><h2>FILES</h2>
|
||||
<a name="id2545253"></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="id2545353"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2545338"></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>,
|
||||
@@ -636,7 +630,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="id2545390"></a><h2>BUGS</h2>
|
||||
<a name="id2545376"></a><h2>BUGS</h2>
|
||||
<p>
|
||||
There are probably too many query options.
|
||||
</p>
|
||||
|
||||
+121
-57
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dighost.c,v 1.330 2010/05/18 02:38:10 tbox Exp $ */
|
||||
/* $Id: dighost.c,v 1.328.22.15 2011/12/07 17:24:25 each Exp $ */
|
||||
|
||||
/*! \file
|
||||
* \note
|
||||
@@ -66,6 +66,7 @@
|
||||
#include <dns/tsig.h>
|
||||
|
||||
#include <dst/dst.h>
|
||||
#include <dst/result.h>
|
||||
|
||||
#include <isc/app.h>
|
||||
#include <isc/base64.h>
|
||||
@@ -81,6 +82,7 @@
|
||||
#include <isc/print.h>
|
||||
#include <isc/random.h>
|
||||
#include <isc/result.h>
|
||||
#include <isc/serial.h>
|
||||
#include <isc/string.h>
|
||||
#include <isc/task.h>
|
||||
#include <isc/timer.h>
|
||||
@@ -252,7 +254,7 @@ isc_result_t opentmpkey(isc_mem_t *mctx, const char *file,
|
||||
char **tempp, FILE **fp);
|
||||
isc_result_t removetmpkey(isc_mem_t *mctx, const char *file);
|
||||
void clean_trustedkey(void);
|
||||
void insert_trustedkey(dst_key_t * key);
|
||||
void insert_trustedkey(dst_key_t **key);
|
||||
#if DIG_SIGCHASE_BU
|
||||
isc_result_t getneededrr(dns_message_t *msg);
|
||||
void sigchase_bottom_up(dns_message_t *msg);
|
||||
@@ -566,10 +568,8 @@ make_server(const char *servname, const char *userarg) {
|
||||
if (srv == NULL)
|
||||
fatal("memory allocation failure in %s:%d",
|
||||
__FILE__, __LINE__);
|
||||
strncpy(srv->servername, servname, MXNAME);
|
||||
strncpy(srv->userarg, userarg, MXNAME);
|
||||
srv->servername[MXNAME-1] = 0;
|
||||
srv->userarg[MXNAME-1] = 0;
|
||||
strlcpy(srv->servername, servname, MXNAME);
|
||||
strlcpy(srv->userarg, userarg, MXNAME);
|
||||
ISC_LINK_INIT(srv, link);
|
||||
return (srv);
|
||||
}
|
||||
@@ -744,7 +744,7 @@ make_empty_lookup(void) {
|
||||
looknew->xfr_q = NULL;
|
||||
looknew->current_query = NULL;
|
||||
looknew->doing_xfr = ISC_FALSE;
|
||||
looknew->ixfr_serial = ISC_FALSE;
|
||||
looknew->ixfr_serial = 0;
|
||||
looknew->trace = ISC_FALSE;
|
||||
looknew->trace_root = ISC_FALSE;
|
||||
looknew->identify = ISC_FALSE;
|
||||
@@ -927,6 +927,11 @@ setup_text_key(void) {
|
||||
|
||||
secretsize = isc_buffer_usedlength(&secretbuf);
|
||||
|
||||
if (hmacname == NULL) {
|
||||
result = DST_R_UNSUPPORTEDALG;
|
||||
goto failure;
|
||||
}
|
||||
|
||||
result = dns_name_fromtext(&keyname, namebuf, dns_rootname, 0, namebuf);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto failure;
|
||||
@@ -1142,7 +1147,6 @@ setup_file_key(void) {
|
||||
keynametext, isc_result_totext(result));
|
||||
goto failure;
|
||||
}
|
||||
dstkey = NULL;
|
||||
failure:
|
||||
if (dstkey != NULL)
|
||||
dst_key_free(&dstkey);
|
||||
@@ -1386,14 +1390,15 @@ add_opt(dns_message_t *msg, isc_uint16_t udpsize, isc_uint16_t edns,
|
||||
if (dnssec)
|
||||
rdatalist->ttl |= DNS_MESSAGEEXTFLAG_DO;
|
||||
if (nsid) {
|
||||
unsigned char data[4];
|
||||
isc_buffer_t buf;
|
||||
isc_buffer_t *b = NULL;
|
||||
|
||||
isc_buffer_init(&buf, data, sizeof(data));
|
||||
isc_buffer_putuint16(&buf, DNS_OPT_NSID);
|
||||
isc_buffer_putuint16(&buf, 0);
|
||||
rdata->data = data;
|
||||
rdata->length = sizeof(data);
|
||||
result = isc_buffer_allocate(mctx, &b, 4);
|
||||
check_result(result, "isc_buffer_allocate");
|
||||
isc_buffer_putuint16(b, DNS_OPT_NSID);
|
||||
isc_buffer_putuint16(b, 0);
|
||||
rdata->data = isc_buffer_base(b);
|
||||
rdata->length = isc_buffer_usedlength(b);
|
||||
dns_message_takebuffer(msg, &b);
|
||||
} else {
|
||||
rdata->data = NULL;
|
||||
rdata->length = 0;
|
||||
@@ -1700,6 +1705,9 @@ followup_lookup(dns_message_t *msg, dig_query_t *query, dns_section_t section)
|
||||
isc_result_t result;
|
||||
isc_boolean_t success = ISC_FALSE;
|
||||
int numLookups = 0;
|
||||
int num;
|
||||
isc_result_t lresult, addresses_result;
|
||||
char bad_namestr[DNS_NAME_FORMATSIZE];
|
||||
dns_name_t *domain;
|
||||
isc_boolean_t horizontal = ISC_FALSE, bad = ISC_FALSE;
|
||||
|
||||
@@ -1707,6 +1715,8 @@ followup_lookup(dns_message_t *msg, dig_query_t *query, dns_section_t section)
|
||||
|
||||
debug("following up %s", query->lookup->textname);
|
||||
|
||||
addresses_result = ISC_R_SUCCESS;
|
||||
bad_namestr[0] = '\0';
|
||||
for (result = dns_message_firstname(msg, section);
|
||||
result == ISC_R_SUCCESS;
|
||||
result = dns_message_nextname(msg, section)) {
|
||||
@@ -1767,8 +1777,7 @@ followup_lookup(dns_message_t *msg, dig_query_t *query, dns_section_t section)
|
||||
dns_rdata_freestruct(&ns);
|
||||
|
||||
/* Initialize lookup if we've not yet */
|
||||
debug("found NS %d %s", numLookups, namestr);
|
||||
numLookups++;
|
||||
debug("found NS %s", namestr);
|
||||
if (!success) {
|
||||
success = ISC_TRUE;
|
||||
lookup_counter++;
|
||||
@@ -1790,12 +1799,24 @@ followup_lookup(dns_message_t *msg, dig_query_t *query, dns_section_t section)
|
||||
domain = dns_fixedname_name(&lookup->fdomain);
|
||||
dns_name_copy(name, domain, NULL);
|
||||
}
|
||||
srv = make_server(namestr, namestr);
|
||||
debug("adding server %s", srv->servername);
|
||||
ISC_LIST_APPEND(lookup->my_server_list, srv, link);
|
||||
debug("adding server %s", namestr);
|
||||
num = getaddresses(lookup, namestr, &lresult);
|
||||
if (lresult != ISC_R_SUCCESS) {
|
||||
debug("couldn't get address for '%s': %s",
|
||||
namestr, isc_result_totext(lresult));
|
||||
if (addresses_result == ISC_R_SUCCESS) {
|
||||
addresses_result = lresult;
|
||||
strcpy(bad_namestr, namestr);
|
||||
}
|
||||
}
|
||||
numLookups += num;
|
||||
dns_rdata_reset(&rdata);
|
||||
}
|
||||
}
|
||||
if (numLookups == 0 && addresses_result != ISC_R_SUCCESS) {
|
||||
fatal("couldn't get address for '%s': %s",
|
||||
bad_namestr, isc_result_totext(result));
|
||||
}
|
||||
|
||||
if (lookup == NULL &&
|
||||
section == DNS_SECTION_ANSWER &&
|
||||
@@ -1808,17 +1829,25 @@ followup_lookup(dns_message_t *msg, dig_query_t *query, dns_section_t section)
|
||||
if (numLookups > 1) {
|
||||
isc_uint32_t i, j;
|
||||
dig_serverlist_t my_server_list;
|
||||
dig_server_t *next;
|
||||
|
||||
ISC_LIST_INIT(my_server_list);
|
||||
|
||||
for (i = numLookups; i > 0; i--) {
|
||||
i = numLookups;
|
||||
for (srv = ISC_LIST_HEAD(lookup->my_server_list);
|
||||
srv != NULL;
|
||||
srv = ISC_LIST_HEAD(lookup->my_server_list)) {
|
||||
INSIST(i > 0);
|
||||
isc_random_get(&j);
|
||||
j %= i;
|
||||
srv = ISC_LIST_HEAD(lookup->my_server_list);
|
||||
while (j-- > 0)
|
||||
srv = ISC_LIST_NEXT(srv, link);
|
||||
next = ISC_LIST_NEXT(srv, link);
|
||||
while (j-- > 0 && next != NULL) {
|
||||
srv = next;
|
||||
next = ISC_LIST_NEXT(srv, link);
|
||||
}
|
||||
ISC_LIST_DEQUEUE(lookup->my_server_list, srv, link);
|
||||
ISC_LIST_APPEND(my_server_list, srv, link);
|
||||
i--;
|
||||
}
|
||||
ISC_LIST_APPENDLIST(lookup->my_server_list,
|
||||
my_server_list, link);
|
||||
@@ -1834,12 +1863,10 @@ followup_lookup(dns_message_t *msg, dig_query_t *query, dns_section_t section)
|
||||
* Return ISC_TRUE iff there was another searchlist entry.
|
||||
*/
|
||||
static isc_boolean_t
|
||||
next_origin(dns_message_t *msg, dig_query_t *query) {
|
||||
next_origin(dig_query_t *query) {
|
||||
dig_lookup_t *lookup;
|
||||
dig_searchlist_t *search;
|
||||
|
||||
UNUSED(msg);
|
||||
|
||||
INSIST(!free_now);
|
||||
|
||||
debug("next_origin()");
|
||||
@@ -2401,6 +2428,15 @@ force_timeout(dig_lookup_t *l, dig_query_t *query) {
|
||||
isc_result_totext(ISC_R_NOMEMORY));
|
||||
}
|
||||
isc_task_send(global_task, &event);
|
||||
|
||||
/*
|
||||
* The timer may have expired if, for example, get_address() takes
|
||||
* long time and the timer was running on a different thread.
|
||||
* We need to cancel the possible timeout event not to confuse
|
||||
* ourselves due to the duplicate events.
|
||||
*/
|
||||
if (l->timer != NULL)
|
||||
isc_timer_detach(&l->timer);
|
||||
}
|
||||
|
||||
|
||||
@@ -2424,7 +2460,7 @@ send_tcp_connect(dig_query_t *query) {
|
||||
query->waiting_connect = ISC_TRUE;
|
||||
query->lookup->current_query = query;
|
||||
result = get_address(query->servname, port, &query->sockaddr);
|
||||
if (result == ISC_R_NOTFOUND) {
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
/*
|
||||
* This servname doesn't have an address. Try the next server
|
||||
* by triggering an immediate 'timeout' (we lie, but the effect
|
||||
@@ -2506,7 +2542,7 @@ send_udp(dig_query_t *query) {
|
||||
/* XXX Check the sense of this, need assertion? */
|
||||
query->waiting_connect = ISC_FALSE;
|
||||
result = get_address(query->servname, port, &query->sockaddr);
|
||||
if (result == ISC_R_NOTFOUND) {
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
/* This servname doesn't have an address. */
|
||||
force_timeout(l, query);
|
||||
return;
|
||||
@@ -2852,8 +2888,10 @@ check_for_more_data(dig_query_t *query, dns_message_t *msg,
|
||||
dns_rdataset_t *rdataset = NULL;
|
||||
dns_rdata_t rdata = DNS_RDATA_INIT;
|
||||
dns_rdata_soa_t soa;
|
||||
isc_uint32_t serial;
|
||||
isc_uint32_t ixfr_serial = query->lookup->ixfr_serial, serial;
|
||||
isc_result_t result;
|
||||
isc_boolean_t ixfr = query->lookup->rdtype == dns_rdatatype_ixfr;
|
||||
isc_boolean_t axfr = query->lookup->rdtype == dns_rdatatype_axfr;
|
||||
|
||||
debug("check_for_more_data()");
|
||||
|
||||
@@ -2903,6 +2941,7 @@ check_for_more_data(dig_query_t *query, dns_message_t *msg,
|
||||
query->second_rr_rcvd = ISC_TRUE;
|
||||
query->second_rr_serial = 0;
|
||||
debug("got the second rr as nonsoa");
|
||||
axfr = ISC_TRUE;
|
||||
goto next_rdata;
|
||||
}
|
||||
|
||||
@@ -2912,6 +2951,7 @@ check_for_more_data(dig_query_t *query, dns_message_t *msg,
|
||||
*/
|
||||
if (rdata.type != dns_rdatatype_soa)
|
||||
goto next_rdata;
|
||||
|
||||
/* Now we have an SOA. Work with it. */
|
||||
debug("got an SOA");
|
||||
result = dns_rdata_tostruct(&rdata, &soa, NULL);
|
||||
@@ -2921,15 +2961,17 @@ check_for_more_data(dig_query_t *query, dns_message_t *msg,
|
||||
if (!query->first_soa_rcvd) {
|
||||
query->first_soa_rcvd = ISC_TRUE;
|
||||
query->first_rr_serial = serial;
|
||||
debug("this is the first %d",
|
||||
query->lookup->ixfr_serial);
|
||||
if (query->lookup->ixfr_serial >=
|
||||
serial)
|
||||
debug("this is the first serial %u",
|
||||
serial);
|
||||
if (ixfr && isc_serial_ge(ixfr_serial,
|
||||
serial)) {
|
||||
debug("got up to date "
|
||||
"response");
|
||||
goto doexit;
|
||||
}
|
||||
goto next_rdata;
|
||||
}
|
||||
if (query->lookup->rdtype ==
|
||||
dns_rdatatype_axfr) {
|
||||
if (axfr) {
|
||||
debug("doing axfr, got second SOA");
|
||||
goto doexit;
|
||||
}
|
||||
@@ -2939,22 +2981,12 @@ check_for_more_data(dig_query_t *query, dns_message_t *msg,
|
||||
"empty zone");
|
||||
goto doexit;
|
||||
}
|
||||
debug("this is the second %d",
|
||||
query->lookup->ixfr_serial);
|
||||
debug("this is the second serial %u",
|
||||
serial);
|
||||
query->second_rr_rcvd = ISC_TRUE;
|
||||
query->second_rr_serial = serial;
|
||||
goto next_rdata;
|
||||
}
|
||||
if (query->second_rr_serial == 0) {
|
||||
/*
|
||||
* If the second RR was a non-SOA
|
||||
* record, and we're getting any
|
||||
* other SOA, then this is an
|
||||
* AXFR, and we're done.
|
||||
*/
|
||||
debug("done, since axfr");
|
||||
goto doexit;
|
||||
}
|
||||
/*
|
||||
* If we get to this point, we're doing an
|
||||
* IXFR and have to start really looking
|
||||
@@ -2970,7 +3002,7 @@ check_for_more_data(dig_query_t *query, dns_message_t *msg,
|
||||
debug("done with ixfr");
|
||||
goto doexit;
|
||||
}
|
||||
debug("meaningless soa %d", serial);
|
||||
debug("meaningless soa %u", serial);
|
||||
next_rdata:
|
||||
result = dns_rdataset_next(rdataset);
|
||||
} while (result == ISC_R_SUCCESS);
|
||||
@@ -3347,7 +3379,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
|
||||
if (!l->doing_xfr || l->xfr_q == query) {
|
||||
if (msg->rcode != dns_rcode_noerror &&
|
||||
(l->origin != NULL || l->need_search)) {
|
||||
if (!next_origin(msg, query) || showsearch) {
|
||||
if (!next_origin(query) || showsearch) {
|
||||
printmessage(query, msg, ISC_TRUE);
|
||||
received(b->used, &sevent->address, query);
|
||||
}
|
||||
@@ -3532,6 +3564,36 @@ get_address(char *host, in_port_t port, isc_sockaddr_t *sockaddr) {
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
int
|
||||
getaddresses(dig_lookup_t *lookup, const char *host, isc_result_t *resultp) {
|
||||
isc_result_t result;
|
||||
isc_sockaddr_t sockaddrs[DIG_MAX_ADDRESSES];
|
||||
isc_netaddr_t netaddr;
|
||||
int count, i;
|
||||
dig_server_t *srv;
|
||||
char tmp[ISC_NETADDR_FORMATSIZE];
|
||||
|
||||
result = bind9_getaddresses(host, 0, sockaddrs,
|
||||
DIG_MAX_ADDRESSES, &count);
|
||||
if (resultp != NULL)
|
||||
*resultp = result;
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
if (resultp == NULL)
|
||||
fatal("couldn't get address for '%s': %s",
|
||||
host, isc_result_totext(result));
|
||||
return 0;
|
||||
}
|
||||
|
||||
for (i = 0; i < count; i++) {
|
||||
isc_netaddr_fromsockaddr(&netaddr, &sockaddrs[i]);
|
||||
isc_netaddr_format(&netaddr, tmp, sizeof(tmp));
|
||||
srv = make_server(tmp, host);
|
||||
ISC_LIST_APPEND(lookup->my_server_list, srv, link);
|
||||
}
|
||||
|
||||
return count;
|
||||
}
|
||||
|
||||
/*%
|
||||
* Initiate either a TCP or UDP lookup
|
||||
*/
|
||||
@@ -4043,14 +4105,15 @@ sigchase_scanname(dns_rdatatype_t type, dns_rdatatype_t covers,
|
||||
}
|
||||
|
||||
void
|
||||
insert_trustedkey(dst_key_t * key)
|
||||
insert_trustedkey(dst_key_t **keyp)
|
||||
{
|
||||
if (key == NULL)
|
||||
if (*keyp == NULL)
|
||||
return;
|
||||
if (tk_list.nb_tk >= MAX_TRUSTED_KEY)
|
||||
return;
|
||||
|
||||
tk_list.key[tk_list.nb_tk++] = key;
|
||||
tk_list.key[tk_list.nb_tk++] = *keyp;
|
||||
*keyp = NULL;
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -4169,7 +4232,6 @@ opentmpkey(isc_mem_t *mctx, const char *file, char **tempp, FILE **fp) {
|
||||
return (result);
|
||||
}
|
||||
|
||||
|
||||
isc_result_t
|
||||
get_trusted_key(isc_mem_t *mctx)
|
||||
{
|
||||
@@ -4224,12 +4286,14 @@ get_trusted_key(isc_mem_t *mctx)
|
||||
fclose(fp);
|
||||
return (ISC_R_FAILURE);
|
||||
}
|
||||
insert_trustedkey(key);
|
||||
#if 0
|
||||
dst_key_tofile(key, DST_TYPE_PUBLIC,"/tmp");
|
||||
#endif
|
||||
key = NULL;
|
||||
insert_trustedkey(&key);
|
||||
if (key != NULL)
|
||||
dst_key_free(&key);
|
||||
}
|
||||
fclose(fp);
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -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.31 2009/07/11 01:12:45 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
+9
-6
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2009-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: host.c,v 1.120 2009/09/29 15:06:05 fdupont Exp $ */
|
||||
/* $Id: host.c,v 1.120.66.5 2011/03/11 07:11:51 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -521,6 +521,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
if ((msg->flags & DNS_MESSAGEFLAG_CD) != 0) {
|
||||
printf("%scd", did_flag ? " " : "");
|
||||
did_flag = ISC_TRUE;
|
||||
POST(did_flag);
|
||||
}
|
||||
printf("; QUERY: %u, ANSWER: %u, "
|
||||
"AUTHORITY: %u, ADDITIONAL: %u\n",
|
||||
@@ -628,7 +629,9 @@ pre_parse_args(int argc, char **argv) {
|
||||
case 'v': break;
|
||||
case 'w': break;
|
||||
case 'C': break;
|
||||
case 'D': break;
|
||||
case 'D':
|
||||
debugging = ISC_TRUE;
|
||||
break;
|
||||
case 'N': break;
|
||||
case 'R': break;
|
||||
case 'T': break;
|
||||
@@ -795,7 +798,7 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
|
||||
ndots = atoi(isc_commandline_argument);
|
||||
break;
|
||||
case 'D':
|
||||
debugging = ISC_TRUE;
|
||||
/* Handled by pre_parse_args(). */
|
||||
break;
|
||||
case '4':
|
||||
if (have_ipv4) {
|
||||
@@ -822,8 +825,8 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
|
||||
if (isc_commandline_index >= argc)
|
||||
show_usage();
|
||||
|
||||
strncpy(hostname, argv[isc_commandline_index], sizeof(hostname));
|
||||
hostname[sizeof(hostname)-1]=0;
|
||||
strlcpy(hostname, argv[isc_commandline_index], sizeof(hostname));
|
||||
|
||||
if (argc > isc_commandline_index + 1) {
|
||||
set_nameserver(argv[isc_commandline_index+1]);
|
||||
debug("server is %s", argv[isc_commandline_index+1]);
|
||||
|
||||
+5
-5
@@ -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.30 2009/07/11 01:12:45 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<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="id2543434"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543436"></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.
|
||||
@@ -184,7 +184,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543800"></a><h2>IDN SUPPORT</h2>
|
||||
<a name="id2543802"></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="id2543822"></a><h2>FILES</h2>
|
||||
<a name="id2543825"></a><h2>FILES</h2>
|
||||
<p><code class="filename">/etc/resolv.conf</code>
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543834"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2543836"></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>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dig.h,v 1.111 2009/09/29 15:06:06 fdupont Exp $ */
|
||||
/* $Id: dig.h,v 1.111.66.3 2011/12/07 17:24:25 each Exp $ */
|
||||
|
||||
#ifndef DIG_H
|
||||
#define DIG_H
|
||||
@@ -288,6 +288,9 @@ extern int idnoptions;
|
||||
isc_result_t
|
||||
get_address(char *host, in_port_t port, isc_sockaddr_t *sockaddr);
|
||||
|
||||
int
|
||||
getaddresses(dig_lookup_t *lookup, const char *host, isc_result_t *resultp);
|
||||
|
||||
isc_result_t
|
||||
get_reverse(char *reverse, size_t len, char *value, isc_boolean_t ip6_int,
|
||||
isc_boolean_t strict);
|
||||
|
||||
+1
-1
@@ -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.16 2010/02/23 01:14:31 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
+22
-21
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 2011, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: nslookup.c,v 1.124 2009/10/20 01:04:03 marka Exp $ */
|
||||
/* $Id: nslookup.c,v 1.124.40.2 2011/02/21 23:46:37 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -57,6 +57,7 @@ static isc_boolean_t in_use = ISC_FALSE;
|
||||
static char defclass[MXRD] = "IN";
|
||||
static char deftype[MXRD] = "A";
|
||||
static isc_event_t *global_event = NULL;
|
||||
static int query_error = 1, print_error = 0;
|
||||
|
||||
static char domainopt[DNS_NAME_MAXTEXT];
|
||||
|
||||
@@ -406,6 +407,9 @@ isc_result_t
|
||||
printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
char servtext[ISC_SOCKADDR_FORMATSIZE];
|
||||
|
||||
/* I've we've gotten this far, we've reached a server. */
|
||||
query_error = 0;
|
||||
|
||||
debug("printmessage()");
|
||||
|
||||
isc_sockaddr_format(&query->sockaddr, servtext, sizeof(servtext));
|
||||
@@ -433,6 +437,9 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
(msg->rcode != dns_rcode_nxdomain) ? nametext :
|
||||
query->lookup->textname, rcode_totext(msg->rcode));
|
||||
debug("returning with rcode == 0");
|
||||
|
||||
/* the lookup failed */
|
||||
print_error |= 1;
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
@@ -535,12 +542,6 @@ testclass(char *typetext) {
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
safecpy(char *dest, char *src, int size) {
|
||||
strncpy(dest, src, size);
|
||||
dest[size-1] = 0;
|
||||
}
|
||||
|
||||
static void
|
||||
set_port(const char *value) {
|
||||
isc_uint32_t n;
|
||||
@@ -571,34 +572,34 @@ setoption(char *opt) {
|
||||
show_settings(ISC_TRUE, ISC_FALSE);
|
||||
} else if (strncasecmp(opt, "class=", 6) == 0) {
|
||||
if (testclass(&opt[6]))
|
||||
safecpy(defclass, &opt[6], sizeof(defclass));
|
||||
strlcpy(defclass, &opt[6], sizeof(defclass));
|
||||
} else if (strncasecmp(opt, "cl=", 3) == 0) {
|
||||
if (testclass(&opt[3]))
|
||||
safecpy(defclass, &opt[3], sizeof(defclass));
|
||||
strlcpy(defclass, &opt[3], sizeof(defclass));
|
||||
} else if (strncasecmp(opt, "type=", 5) == 0) {
|
||||
if (testtype(&opt[5]))
|
||||
safecpy(deftype, &opt[5], sizeof(deftype));
|
||||
strlcpy(deftype, &opt[5], sizeof(deftype));
|
||||
} else if (strncasecmp(opt, "ty=", 3) == 0) {
|
||||
if (testtype(&opt[3]))
|
||||
safecpy(deftype, &opt[3], sizeof(deftype));
|
||||
strlcpy(deftype, &opt[3], sizeof(deftype));
|
||||
} else if (strncasecmp(opt, "querytype=", 10) == 0) {
|
||||
if (testtype(&opt[10]))
|
||||
safecpy(deftype, &opt[10], sizeof(deftype));
|
||||
strlcpy(deftype, &opt[10], sizeof(deftype));
|
||||
} else if (strncasecmp(opt, "query=", 6) == 0) {
|
||||
if (testtype(&opt[6]))
|
||||
safecpy(deftype, &opt[6], sizeof(deftype));
|
||||
strlcpy(deftype, &opt[6], sizeof(deftype));
|
||||
} else if (strncasecmp(opt, "qu=", 3) == 0) {
|
||||
if (testtype(&opt[3]))
|
||||
safecpy(deftype, &opt[3], sizeof(deftype));
|
||||
strlcpy(deftype, &opt[3], sizeof(deftype));
|
||||
} else if (strncasecmp(opt, "q=", 2) == 0) {
|
||||
if (testtype(&opt[2]))
|
||||
safecpy(deftype, &opt[2], sizeof(deftype));
|
||||
strlcpy(deftype, &opt[2], sizeof(deftype));
|
||||
} else if (strncasecmp(opt, "domain=", 7) == 0) {
|
||||
safecpy(domainopt, &opt[7], sizeof(domainopt));
|
||||
strlcpy(domainopt, &opt[7], sizeof(domainopt));
|
||||
set_search_domain(domainopt);
|
||||
usesearch = ISC_TRUE;
|
||||
} else if (strncasecmp(opt, "do=", 3) == 0) {
|
||||
safecpy(domainopt, &opt[3], sizeof(domainopt));
|
||||
strlcpy(domainopt, &opt[3], sizeof(domainopt));
|
||||
set_search_domain(domainopt);
|
||||
usesearch = ISC_TRUE;
|
||||
} else if (strncasecmp(opt, "port=", 5) == 0) {
|
||||
@@ -677,11 +678,11 @@ addlookup(char *opt) {
|
||||
lookup = make_empty_lookup();
|
||||
if (get_reverse(store, sizeof(store), opt, lookup->ip6_int, ISC_TRUE)
|
||||
== ISC_R_SUCCESS) {
|
||||
safecpy(lookup->textname, store, sizeof(lookup->textname));
|
||||
strlcpy(lookup->textname, store, sizeof(lookup->textname));
|
||||
lookup->rdtype = dns_rdatatype_ptr;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
} else {
|
||||
safecpy(lookup->textname, opt, sizeof(lookup->textname));
|
||||
strlcpy(lookup->textname, opt, sizeof(lookup->textname));
|
||||
lookup->rdtype = rdtype;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
}
|
||||
@@ -893,5 +894,5 @@ main(int argc, char **argv) {
|
||||
destroy_libs();
|
||||
isc_app_finish();
|
||||
|
||||
return (0);
|
||||
return (query_error | print_error);
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: nslookup.docbook,v 1.18 2010/02/22 23:49:11 tbox Exp $ -->
|
||||
<!-- $Id: nslookup.docbook,v 1.16.560.2 2010/02/22 23:48:29 tbox Exp $ -->
|
||||
<!--
|
||||
- Copyright (c) 1985, 1989
|
||||
- The Regents of the University of California. All rights reserved.
|
||||
|
||||
@@ -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.23 2010/02/23 01:14:31 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -31,7 +31,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">nslookup</code> [<code class="option">-option</code>] [name | -] [server]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543358"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543360"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">Nslookup</strong></span>
|
||||
is a program to query Internet domain name servers. <span><strong class="command">Nslookup</strong></span>
|
||||
has two modes: interactive and non-interactive. Interactive mode allows
|
||||
@@ -43,7 +43,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543374"></a><h2>ARGUMENTS</h2>
|
||||
<a name="id2543376"></a><h2>ARGUMENTS</h2>
|
||||
<p>
|
||||
Interactive mode is entered in the following cases:
|
||||
</p>
|
||||
@@ -78,7 +78,7 @@ nslookup -query=hinfo -timeout=10
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543418"></a><h2>INTERACTIVE COMMANDS</h2>
|
||||
<a name="id2543419"></a><h2>INTERACTIVE COMMANDS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><code class="constant">host</code> [<span class="optional">server</span>]</span></dt>
|
||||
<dd>
|
||||
@@ -288,19 +288,19 @@ nslookup -query=hinfo -timeout=10
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2546284"></a><h2>FILES</h2>
|
||||
<a name="id2546354"></a><h2>FILES</h2>
|
||||
<p><code class="filename">/etc/resolv.conf</code>
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2546296"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2546365"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">dig</span>(1)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">host</span>(1)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2546330"></a><h2>Author</h2>
|
||||
<a name="id2546400"></a><h2>Author</h2>
|
||||
<p>
|
||||
Andrew Cherenson
|
||||
</p>
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
Makefile
|
||||
dnssec-dsfromkey
|
||||
dnssec-keyfromlabel
|
||||
dnssec-keygen
|
||||
@@ -7,5 +6,4 @@ dnssec-revoke
|
||||
dnssec-settime
|
||||
dnssec-signkey
|
||||
dnssec-signzone
|
||||
*.lo
|
||||
.libs
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004, 2005, 2007-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004, 2005, 2007-2009, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: dnssec-dsfromkey.8,v 1.12 2010/05/19 01:14:14 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2008-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2008-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-dsfromkey.c,v 1.18 2010/01/11 23:48:37 tbox Exp $ */
|
||||
/* $Id: dnssec-dsfromkey.c,v 1.16.50.4 2011/09/03 05:52:55 each Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -265,12 +265,10 @@ emit(unsigned int dtype, isc_boolean_t showall, char *lookaside,
|
||||
fatal("can't print class");
|
||||
|
||||
isc_buffer_usedregion(&nameb, &r);
|
||||
isc_util_fwrite(r.base, 1, r.length, stdout);
|
||||
|
||||
putchar(' ');
|
||||
printf("%.*s ", (int)r.length, r.base);
|
||||
|
||||
isc_buffer_usedregion(&classb, &r);
|
||||
isc_util_fwrite(r.base, 1, r.length, stdout);
|
||||
printf("%.*s", (int)r.length, r.base);
|
||||
|
||||
if (lookaside == NULL)
|
||||
printf(" DS ");
|
||||
@@ -278,8 +276,7 @@ emit(unsigned int dtype, isc_boolean_t showall, char *lookaside,
|
||||
printf(" DLV ");
|
||||
|
||||
isc_buffer_usedregion(&textb, &r);
|
||||
isc_util_fwrite(r.base, 1, r.length, stdout);
|
||||
putchar('\n');
|
||||
printf("%.*s\n", (int)r.length, r.base);
|
||||
}
|
||||
|
||||
ISC_PLATFORM_NORETURN_PRE static void
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: dnssec-dsfromkey.html,v 1.12 2010/05/19 01:14:14 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -32,14 +32,14 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-dsfromkey</code> {-s} [<code class="option">-1</code>] [<code class="option">-2</code>] [<code class="option">-a <em class="replaceable"><code>alg</code></em></code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-l <em class="replaceable"><code>domain</code></em></code>] [<code class="option">-s</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-f <em class="replaceable"><code>file</code></em></code>] [<code class="option">-A</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] {dnsname}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543461"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543462"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">dnssec-dsfromkey</strong></span>
|
||||
outputs the Delegation Signer (DS) resource record (RR), as defined in
|
||||
RFC 3658 and RFC 4509, for the given key(s).
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543473"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543474"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-1</span></dt>
|
||||
<dd><p>
|
||||
@@ -100,7 +100,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543659"></a><h2>EXAMPLE</h2>
|
||||
<a name="id2543660"></a><h2>EXAMPLE</h2>
|
||||
<p>
|
||||
To build the SHA-256 DS RR from the
|
||||
<strong class="userinput"><code>Kexample.com.+003+26160</code></strong>
|
||||
@@ -115,7 +115,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543689"></a><h2>FILES</h2>
|
||||
<a name="id2543690"></a><h2>FILES</h2>
|
||||
<p>
|
||||
The keyfile can be designed by the key identification
|
||||
<code class="filename">Knnnn.+aaa+iiiii</code> or the full file name
|
||||
@@ -129,13 +129,13 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543724"></a><h2>CAVEAT</h2>
|
||||
<a name="id2543725"></a><h2>CAVEAT</h2>
|
||||
<p>
|
||||
A keyfile error can give a "file not found" even if the file exists.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543734"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2543735"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
|
||||
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
|
||||
@@ -145,7 +145,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543773"></a><h2>AUTHOR</h2>
|
||||
<a name="id2543774"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2008-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2008-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and/or distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -12,7 +12,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: dnssec-keyfromlabel.8,v 1.17 2010/01/20 01:14:19 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -162,7 +162,7 @@ Sets the date on which the key is to be activated. After that date, the key will
|
||||
Sets the date on which the key is to be revoked. After that date, the key will be flagged as revoked. It will be included in the zone and will be used to sign it.
|
||||
.RE
|
||||
.PP
|
||||
\-U \fIdate/offset\fR
|
||||
\-I \fIdate/offset\fR
|
||||
.RS 4
|
||||
Sets the date on which the key is to be retired. After that date, the key will still be included in the zone, but it will not be used to sign it.
|
||||
.RE
|
||||
@@ -215,5 +215,5 @@ RFC 4034.
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2008\-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2008\-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2007-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2007-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-keyfromlabel.c,v 1.31 2010/01/19 23:48:55 tbox Exp $ */
|
||||
/* $Id: dnssec-keyfromlabel.c,v 1.29.8.6 2011/11/30 00:53:34 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -110,7 +110,8 @@ usage(void) {
|
||||
|
||||
int
|
||||
main(int argc, char **argv) {
|
||||
char *algname = NULL, *nametype = NULL, *type = NULL;
|
||||
char *algname = NULL, *freeit = NULL;
|
||||
char *nametype = NULL, *type = NULL;
|
||||
const char *directory = NULL;
|
||||
#ifdef USE_PKCS11
|
||||
const char *engine = "pkcs11";
|
||||
@@ -342,6 +343,9 @@ main(int argc, char **argv) {
|
||||
algname = strdup(DEFAULT_NSEC3_ALGORITHM);
|
||||
else
|
||||
algname = strdup(DEFAULT_ALGORITHM);
|
||||
if (algname == NULL)
|
||||
fatal("strdup failed");
|
||||
freeit = algname;
|
||||
if (verbose > 0)
|
||||
fprintf(stderr, "no algorithm specified; "
|
||||
"defaulting to %s\n", algname);
|
||||
@@ -513,10 +517,12 @@ main(int argc, char **argv) {
|
||||
* is a risk of ID collision due to this key or another key
|
||||
* being revoked.
|
||||
*/
|
||||
if (key_collision(dst_key_id(key), name, directory, alg, mctx, &exact))
|
||||
{
|
||||
if (key_collision(key, name, directory, mctx, &exact)) {
|
||||
isc_buffer_clear(&buf);
|
||||
ret = dst_key_buildfilename(key, 0, directory, &buf);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fatal("dst_key_buildfilename returned: %s\n",
|
||||
isc_result_totext(ret));
|
||||
if (exact)
|
||||
fatal("%s: %s already exists\n", program, filename);
|
||||
|
||||
@@ -541,6 +547,9 @@ main(int argc, char **argv) {
|
||||
|
||||
isc_buffer_clear(&buf);
|
||||
ret = dst_key_buildfilename(key, 0, NULL, &buf);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fatal("dst_key_buildfilename returned: %s\n",
|
||||
isc_result_totext(ret));
|
||||
printf("%s\n", filename);
|
||||
dst_key_free(&key);
|
||||
|
||||
@@ -553,5 +562,8 @@ main(int argc, char **argv) {
|
||||
isc_mem_free(mctx, label);
|
||||
isc_mem_destroy(&mctx);
|
||||
|
||||
if (freeit != NULL)
|
||||
free(freeit);
|
||||
|
||||
return (0);
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2008-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2008-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -17,7 +17,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: dnssec-keyfromlabel.docbook,v 1.17 2010/01/19 23:48:55 tbox Exp $ -->
|
||||
<!-- $Id: dnssec-keyfromlabel.docbook,v 1.15.24.4 2011/02/03 12:17:22 tbox Exp $ -->
|
||||
<refentry id="man.dnssec-keyfromlabel">
|
||||
<refentryinfo>
|
||||
<date>February 8, 2008</date>
|
||||
@@ -39,6 +39,7 @@
|
||||
<year>2008</year>
|
||||
<year>2009</year>
|
||||
<year>2010</year>
|
||||
<year>2011</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
</docinfo>
|
||||
@@ -333,7 +334,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>-U <replaceable class="parameter">date/offset</replaceable></term>
|
||||
<term>-I <replaceable class="parameter">date/offset</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Sets the date on which the key is to be retired. After that
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2008-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2008-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,7 +13,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: dnssec-keyfromlabel.html,v 1.16 2010/01/20 01:14:19 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -31,7 +31,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-keyfromlabel</code> {-l <em class="replaceable"><code>label</code></em>} [<code class="option">-3</code>] [<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>] [<code class="option">-A <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] [<code class="option">-f <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-G</code>] [<code class="option">-I <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-k</code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-n <em class="replaceable"><code>nametype</code></em></code>] [<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-p <em class="replaceable"><code>protocol</code></em></code>] [<code class="option">-R <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-t <em class="replaceable"><code>type</code></em></code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-y</code>] {name}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543491"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543495"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">dnssec-keyfromlabel</strong></span>
|
||||
gets keys with the given label from a crypto hardware and builds
|
||||
key files for DNSSEC (Secure DNS), as defined in RFC 2535
|
||||
@@ -44,7 +44,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543509"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543513"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
|
||||
<dd>
|
||||
@@ -163,7 +163,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543873"></a><h2>TIMING OPTIONS</h2>
|
||||
<a name="id2543877"></a><h2>TIMING OPTIONS</h2>
|
||||
<p>
|
||||
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
|
||||
If the argument begins with a '+' or '-', it is interpreted as
|
||||
@@ -195,7 +195,7 @@
|
||||
date, the key will be flagged as revoked. It will be included
|
||||
in the zone and will be used to sign it.
|
||||
</p></dd>
|
||||
<dt><span class="term">-U <em class="replaceable"><code>date/offset</code></em></span></dt>
|
||||
<dt><span class="term">-I <em class="replaceable"><code>date/offset</code></em></span></dt>
|
||||
<dd><p>
|
||||
Sets the date on which the key is to be retired. After that
|
||||
date, the key will still be included in the zone, but it
|
||||
@@ -210,7 +210,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544039"></a><h2>GENERATED KEY FILES</h2>
|
||||
<a name="id2544043"></a><h2>GENERATED KEY FILES</h2>
|
||||
<p>
|
||||
When <span><strong class="command">dnssec-keyfromlabel</strong></span> completes
|
||||
successfully,
|
||||
@@ -249,7 +249,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544112"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2544116"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
|
||||
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
|
||||
@@ -257,7 +257,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544145"></a><h2>AUTHOR</h2>
|
||||
<a name="id2544149"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004, 2005, 2007-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -13,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.53 2009/11/03 21:58:30 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -33,7 +33,7 @@
|
||||
dnssec\-keygen \- DNSSEC key generation tool
|
||||
.SH "SYNOPSIS"
|
||||
.HP 14
|
||||
\fBdnssec\-keygen\fR [\fB\-a\ \fR\fB\fIalgorithm\fR\fR] [\fB\-b\ \fR\fB\fIkeysize\fR\fR] [\fB\-n\ \fR\fB\fInametype\fR\fR] [\fB\-3\fR] [\fB\-A\ \fR\fB\fIdate/offset\fR\fR] [\fB\-C\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-D\ \fR\fB\fIdate/offset\fR\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] [\fB\-e\fR] [\fB\-f\ \fR\fB\fIflag\fR\fR] [\fB\-G\fR] [\fB\-g\ \fR\fB\fIgenerator\fR\fR] [\fB\-h\fR] [\fB\-I\ \fR\fB\fIdate/offset\fR\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-k\fR] [\fB\-P\ \fR\fB\fIdate/offset\fR\fR] [\fB\-p\ \fR\fB\fIprotocol\fR\fR] [\fB\-q\fR] [\fB\-R\ \fR\fB\fIdate/offset\fR\fR] [\fB\-r\ \fR\fB\fIrandomdev\fR\fR] [\fB\-s\ \fR\fB\fIstrength\fR\fR] [\fB\-t\ \fR\fB\fItype\fR\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-z\fR] {name}
|
||||
\fBdnssec\-keygen\fR [\fB\-a\ \fR\fB\fIalgorithm\fR\fR] [\fB\-b\ \fR\fB\fIkeysize\fR\fR] [\fB\-n\ \fR\fB\fInametype\fR\fR] [\fB\-3\fR] [\fB\-A\ \fR\fB\fIdate/offset\fR\fR] [\fB\-C\fR] [\fB\-c\ \fR\fB\fIclass\fR\fR] [\fB\-D\ \fR\fB\fIdate/offset\fR\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] [\fB\-e\fR] [\fB\-f\ \fR\fB\fIflag\fR\fR] [\fB\-G\fR] [\fB\-g\ \fR\fB\fIgenerator\fR\fR] [\fB\-h\fR] [\fB\-I\ \fR\fB\fIdate/offset\fR\fR] [\fB\-i\ \fR\fB\fIinterval\fR\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-k\fR] [\fB\-P\ \fR\fB\fIdate/offset\fR\fR] [\fB\-p\ \fR\fB\fIprotocol\fR\fR] [\fB\-q\fR] [\fB\-R\ \fR\fB\fIdate/offset\fR\fR] [\fB\-r\ \fR\fB\fIrandomdev\fR\fR] [\fB\-S\ \fR\fB\fIkey\fR\fR] [\fB\-s\ \fR\fB\fIstrength\fR\fR] [\fB\-t\ \fR\fB\fItype\fR\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-z\fR] {name}
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBdnssec\-keygen\fR
|
||||
@@ -164,6 +164,11 @@ specifies the name of a character device or file containing random data to be us
|
||||
indicates that keyboard input should be used.
|
||||
.RE
|
||||
.PP
|
||||
\-S \fIkey\fR
|
||||
.RS 4
|
||||
Create a new key which is an explicit successor to an existing key. The name, algorithm, size, and type of the key will be set to match the existing key. The activation date of the new key will be set to the inactivation date of the existing one. The publication date will be set to the activation date minus the prepublication interval, which defaults to 30 days.
|
||||
.RE
|
||||
.PP
|
||||
\-s \fIstrength\fR
|
||||
.RS 4
|
||||
Specifies the strength value of the key. The strength is a number between 0 and 15, and currently has no defined purpose in DNSSEC.
|
||||
@@ -216,6 +221,15 @@ Sets the date on which the key is to be retired. After that date, the key will s
|
||||
.RS 4
|
||||
Sets the date on which the key is to be deleted. After that date, the key will no longer be included in the zone. (It may remain in the key repository, however.)
|
||||
.RE
|
||||
.PP
|
||||
\-i \fIinterval\fR
|
||||
.RS 4
|
||||
Sets the prepublication interval for a key. If set, then the publication and activation dates must be separated by at least this much time. If the activation date is specified but the publication date isn't, then the publication date will default to this much time before the activation date; conversely, if the publication date is specified but activation date isn't, then activation will be set to this much time after publication.
|
||||
.sp
|
||||
If the key is being created as an explicit successor to another key, then the default prepublication interval is 30 days; otherwise it is zero.
|
||||
.sp
|
||||
As with date offsets, if the argument is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the interval is measured in years, months, weeks, days, hours, or minutes, respectively. Without a suffix, the interval is measured in seconds.
|
||||
.RE
|
||||
.SH "GENERATED KEYS"
|
||||
.PP
|
||||
When
|
||||
@@ -284,7 +298,7 @@ RFC 4034.
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004, 2005, 2007\-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2004, 2005, 2007\-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000\-2003 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
+267
-116
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Portions Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -29,7 +29,7 @@
|
||||
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-keygen.c,v 1.112 2010/01/19 23:48:55 tbox Exp $ */
|
||||
/* $Id: dnssec-keygen.c,v 1.108.8.10 2011/11/30 00:53:34 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -92,27 +92,27 @@ usage(void) {
|
||||
"NSEC3RSASHA1 if using -3)\n");
|
||||
fprintf(stderr, " -3: use NSEC3-capable algorithm\n");
|
||||
fprintf(stderr, " -b <key size in bits>:\n");
|
||||
fprintf(stderr, " RSAMD5:\t[512..%d]\n", MAX_RSA);
|
||||
fprintf(stderr, " RSASHA1:\t[512..%d]\n", MAX_RSA);
|
||||
fprintf(stderr, " NSEC3RSASHA1:\t[512..%d]\n", MAX_RSA);
|
||||
fprintf(stderr, " RSASHA256:\t[512..%d]\n", MAX_RSA);
|
||||
fprintf(stderr, " RSASHA512:\t[1024..%d]\n", MAX_RSA);
|
||||
fprintf(stderr, " DH:\t\t[128..4096]\n");
|
||||
fprintf(stderr, " DSA:\t\t[512..1024] and divisible by 64\n");
|
||||
fprintf(stderr, " NSEC3DSA:\t[512..1024] and divisible "
|
||||
fprintf(stderr, " RSAMD5:\t[512..%d]\n", MAX_RSA);
|
||||
fprintf(stderr, " RSASHA1:\t[512..%d]\n", MAX_RSA);
|
||||
fprintf(stderr, " NSEC3RSASHA1:\t[512..%d]\n", MAX_RSA);
|
||||
fprintf(stderr, " RSASHA256:\t[512..%d]\n", MAX_RSA);
|
||||
fprintf(stderr, " RSASHA512:\t[1024..%d]\n", MAX_RSA);
|
||||
fprintf(stderr, " DH:\t\t[128..4096]\n");
|
||||
fprintf(stderr, " DSA:\t\t[512..1024] and divisible by 64\n");
|
||||
fprintf(stderr, " NSEC3DSA:\t[512..1024] and divisible "
|
||||
"by 64\n");
|
||||
fprintf(stderr, " HMAC-MD5:\t[1..512]\n");
|
||||
fprintf(stderr, " HMAC-SHA1:\t[1..160]\n");
|
||||
fprintf(stderr, " HMAC-SHA224:\t[1..224]\n");
|
||||
fprintf(stderr, " HMAC-SHA256:\t[1..256]\n");
|
||||
fprintf(stderr, " HMAC-SHA384:\t[1..384]\n");
|
||||
fprintf(stderr, " HMAC-SHA512:\t[1..512]\n");
|
||||
fprintf(stderr, " HMAC-MD5:\t[1..512]\n");
|
||||
fprintf(stderr, " HMAC-SHA1:\t[1..160]\n");
|
||||
fprintf(stderr, " HMAC-SHA224:\t[1..224]\n");
|
||||
fprintf(stderr, " HMAC-SHA256:\t[1..256]\n");
|
||||
fprintf(stderr, " HMAC-SHA384:\t[1..384]\n");
|
||||
fprintf(stderr, " HMAC-SHA512:\t[1..512]\n");
|
||||
fprintf(stderr, " (if using the default algorithm, key size\n"
|
||||
" defaults to 2048 for KSK, or 1024 for all "
|
||||
"others)\n");
|
||||
fprintf(stderr, " -n <nametype>: ZONE | HOST | ENTITY | "
|
||||
"USER | OTHER\n");
|
||||
fprintf(stderr, " (DNSKEY generation defaults to ZONE)\n");
|
||||
fprintf(stderr, " (DNSKEY generation defaults to ZONE)\n");
|
||||
fprintf(stderr, " -c <class>: (default: IN)\n");
|
||||
fprintf(stderr, " -d <digest bits> (0 => max, default)\n");
|
||||
#ifdef USE_PKCS11
|
||||
@@ -136,7 +136,7 @@ usage(void) {
|
||||
|
||||
fprintf(stderr, " -h: print usage and exit\n");
|
||||
fprintf(stderr, " -m <memory debugging mode>:\n");
|
||||
fprintf(stderr, " usage | trace | record | size | mctx\n");
|
||||
fprintf(stderr, " usage | trace | record | size | mctx\n");
|
||||
fprintf(stderr, " -v <level>: set verbosity level (0 - 10)\n");
|
||||
fprintf(stderr, "Timing options:\n");
|
||||
fprintf(stderr, " -P date/[+-]offset/none: set key publication date "
|
||||
@@ -151,6 +151,11 @@ usage(void) {
|
||||
fprintf(stderr, " -G: generate key only; do not set -P or -A\n");
|
||||
fprintf(stderr, " -C: generate a backward-compatible key, omitting "
|
||||
"all dates\n");
|
||||
fprintf(stderr, " -S <key>: generate a successor to an existing "
|
||||
"key\n");
|
||||
fprintf(stderr, " -i <interval>: prepublication interval for "
|
||||
"successor key "
|
||||
"(default: 30 days)\n");
|
||||
fprintf(stderr, "Output:\n");
|
||||
fprintf(stderr, " K<name>+<alg>+<id>.key, "
|
||||
"K<name>+<alg>+<id>.private\n");
|
||||
@@ -190,7 +195,8 @@ progress(int p)
|
||||
|
||||
int
|
||||
main(int argc, char **argv) {
|
||||
char *algname = NULL, *nametype = NULL, *type = NULL;
|
||||
char *algname = NULL, *freeit = NULL;
|
||||
char *nametype = NULL, *type = NULL;
|
||||
char *classname = NULL;
|
||||
char *endp;
|
||||
dst_key_t *key = NULL;
|
||||
@@ -207,6 +213,8 @@ main(int argc, char **argv) {
|
||||
isc_textregion_t r;
|
||||
char filename[255];
|
||||
const char *directory = NULL;
|
||||
const char *predecessor = NULL;
|
||||
dst_key_t *prevkey = NULL;
|
||||
isc_buffer_t buf;
|
||||
isc_log_t *log = NULL;
|
||||
isc_entropy_t *ectx = NULL;
|
||||
@@ -222,6 +230,7 @@ main(int argc, char **argv) {
|
||||
isc_stdtime_t publish = 0, activate = 0, revoke = 0;
|
||||
isc_stdtime_t inactive = 0, delete = 0;
|
||||
isc_stdtime_t now;
|
||||
int prepub = -1;
|
||||
isc_boolean_t setpub = ISC_FALSE, setact = ISC_FALSE;
|
||||
isc_boolean_t setrev = ISC_FALSE, setinact = ISC_FALSE;
|
||||
isc_boolean_t setdel = ISC_FALSE;
|
||||
@@ -243,7 +252,7 @@ main(int argc, char **argv) {
|
||||
/*
|
||||
* Process memory debugging argument first.
|
||||
*/
|
||||
#define CMDLINE_FLAGS "3a:b:Cc:d:E:eFf:g:K:km:n:p:qr:s:T:t:v:hGP:A:R:I:D:"
|
||||
#define CMDLINE_FLAGS "3A:a:b:Cc:D:d:E:eFf:Gg:hI:i:K:km:n:P:p:qR:r:S:s:T:t:v:"
|
||||
while ((ch = isc_commandline_parse(argc, argv, CMDLINE_FLAGS)) != -1) {
|
||||
switch (ch) {
|
||||
case 'm':
|
||||
@@ -436,6 +445,12 @@ main(int argc, char **argv) {
|
||||
unsetdel = ISC_TRUE;
|
||||
}
|
||||
break;
|
||||
case 'S':
|
||||
predecessor = isc_commandline_argument;
|
||||
break;
|
||||
case 'i':
|
||||
prepub = strtottl(isc_commandline_argument);
|
||||
break;
|
||||
case 'F':
|
||||
/* Reserved for FIPS mode */
|
||||
/* FALLTHROUGH */
|
||||
@@ -467,87 +482,208 @@ main(int argc, char **argv) {
|
||||
|
||||
setup_logging(verbose, mctx, &log);
|
||||
|
||||
if (argc < isc_commandline_index + 1)
|
||||
fatal("the key name was not specified");
|
||||
if (argc > isc_commandline_index + 1)
|
||||
fatal("extraneous arguments");
|
||||
if (predecessor == NULL) {
|
||||
if (prepub == -1)
|
||||
prepub = 0;
|
||||
|
||||
if (algname == NULL) {
|
||||
use_default = ISC_TRUE;
|
||||
if (use_nsec3)
|
||||
algname = strdup(DEFAULT_NSEC3_ALGORITHM);
|
||||
else
|
||||
algname = strdup(DEFAULT_ALGORITHM);
|
||||
if (verbose > 0)
|
||||
fprintf(stderr, "no algorithm specified; "
|
||||
"defaulting to %s\n", algname);
|
||||
}
|
||||
if (argc < isc_commandline_index + 1)
|
||||
fatal("the key name was not specified");
|
||||
if (argc > isc_commandline_index + 1)
|
||||
fatal("extraneous arguments");
|
||||
|
||||
if (strcasecmp(algname, "RSA") == 0) {
|
||||
fprintf(stderr, "The use of RSA (RSAMD5) is not recommended.\n"
|
||||
"If you still wish to use RSA (RSAMD5) please "
|
||||
"specify \"-a RSAMD5\"\n");
|
||||
return (1);
|
||||
} else if (strcasecmp(algname, "HMAC-MD5") == 0) {
|
||||
options |= DST_TYPE_KEY;
|
||||
alg = DST_ALG_HMACMD5;
|
||||
} else if (strcasecmp(algname, "HMAC-SHA1") == 0) {
|
||||
options |= DST_TYPE_KEY;
|
||||
alg = DST_ALG_HMACSHA1;
|
||||
} else if (strcasecmp(algname, "HMAC-SHA224") == 0) {
|
||||
options |= DST_TYPE_KEY;
|
||||
alg = DST_ALG_HMACSHA224;
|
||||
} else if (strcasecmp(algname, "HMAC-SHA256") == 0) {
|
||||
options |= DST_TYPE_KEY;
|
||||
alg = DST_ALG_HMACSHA256;
|
||||
} else if (strcasecmp(algname, "HMAC-SHA384") == 0) {
|
||||
options |= DST_TYPE_KEY;
|
||||
alg = DST_ALG_HMACSHA384;
|
||||
} else if (strcasecmp(algname, "HMAC-SHA512") == 0) {
|
||||
options |= DST_TYPE_KEY;
|
||||
alg = DST_ALG_HMACSHA512;
|
||||
} else {
|
||||
r.base = algname;
|
||||
r.length = strlen(algname);
|
||||
ret = dns_secalg_fromtext(&alg, &r);
|
||||
dns_fixedname_init(&fname);
|
||||
name = dns_fixedname_name(&fname);
|
||||
isc_buffer_init(&buf, argv[isc_commandline_index],
|
||||
strlen(argv[isc_commandline_index]));
|
||||
isc_buffer_add(&buf, strlen(argv[isc_commandline_index]));
|
||||
ret = dns_name_fromtext(name, &buf, dns_rootname, 0, NULL);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fatal("unknown algorithm %s", algname);
|
||||
if (alg == DST_ALG_DH)
|
||||
options |= DST_TYPE_KEY;
|
||||
}
|
||||
fatal("invalid key name %s: %s",
|
||||
argv[isc_commandline_index],
|
||||
isc_result_totext(ret));
|
||||
|
||||
if (use_nsec3 &&
|
||||
alg != DST_ALG_NSEC3DSA && alg != DST_ALG_NSEC3RSASHA1 &&
|
||||
alg != DST_ALG_RSASHA256 && alg!= DST_ALG_RSASHA512) {
|
||||
fatal("%s is incompatible with NSEC3; "
|
||||
"do not use the -3 option", algname);
|
||||
}
|
||||
|
||||
if (type != NULL && (options & DST_TYPE_KEY) != 0) {
|
||||
if (strcasecmp(type, "NOAUTH") == 0)
|
||||
flags |= DNS_KEYTYPE_NOAUTH;
|
||||
else if (strcasecmp(type, "NOCONF") == 0)
|
||||
flags |= DNS_KEYTYPE_NOCONF;
|
||||
else if (strcasecmp(type, "NOAUTHCONF") == 0) {
|
||||
flags |= (DNS_KEYTYPE_NOAUTH | DNS_KEYTYPE_NOCONF);
|
||||
if (size < 0)
|
||||
size = 0;
|
||||
}
|
||||
else if (strcasecmp(type, "AUTHCONF") == 0)
|
||||
/* nothing */;
|
||||
else
|
||||
fatal("invalid type %s", type);
|
||||
}
|
||||
|
||||
if (size < 0) {
|
||||
if (use_default) {
|
||||
size = ((kskflag & DNS_KEYFLAG_KSK) != 0) ? 2048 : 1024;
|
||||
if (algname == NULL) {
|
||||
use_default = ISC_TRUE;
|
||||
if (use_nsec3)
|
||||
algname = strdup(DEFAULT_NSEC3_ALGORITHM);
|
||||
else
|
||||
algname = strdup(DEFAULT_ALGORITHM);
|
||||
if (algname == NULL)
|
||||
fatal("strdup failed");
|
||||
freeit = algname;
|
||||
if (verbose > 0)
|
||||
fprintf(stderr, "key size not specified; "
|
||||
"defaulting to %d\n", size);
|
||||
} else {
|
||||
fatal("key size not specified (-b option)");
|
||||
fprintf(stderr, "no algorithm specified; "
|
||||
"defaulting to %s\n", algname);
|
||||
}
|
||||
|
||||
if (strcasecmp(algname, "RSA") == 0) {
|
||||
fprintf(stderr, "The use of RSA (RSAMD5) is not "
|
||||
"recommended.\nIf you still wish to "
|
||||
"use RSA (RSAMD5) please specify "
|
||||
"\"-a RSAMD5\"\n");
|
||||
return (1);
|
||||
} else if (strcasecmp(algname, "HMAC-MD5") == 0)
|
||||
alg = DST_ALG_HMACMD5;
|
||||
else if (strcasecmp(algname, "HMAC-SHA1") == 0)
|
||||
alg = DST_ALG_HMACSHA1;
|
||||
else if (strcasecmp(algname, "HMAC-SHA224") == 0)
|
||||
alg = DST_ALG_HMACSHA224;
|
||||
else if (strcasecmp(algname, "HMAC-SHA256") == 0)
|
||||
alg = DST_ALG_HMACSHA256;
|
||||
else if (strcasecmp(algname, "HMAC-SHA384") == 0)
|
||||
alg = DST_ALG_HMACSHA384;
|
||||
else if (strcasecmp(algname, "HMAC-SHA512") == 0)
|
||||
alg = DST_ALG_HMACSHA512;
|
||||
else {
|
||||
r.base = algname;
|
||||
r.length = strlen(algname);
|
||||
ret = dns_secalg_fromtext(&alg, &r);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fatal("unknown algorithm %s", algname);
|
||||
if (alg == DST_ALG_DH)
|
||||
options |= DST_TYPE_KEY;
|
||||
}
|
||||
|
||||
if (use_nsec3 &&
|
||||
alg != DST_ALG_NSEC3DSA && alg != DST_ALG_NSEC3RSASHA1 &&
|
||||
alg != DST_ALG_RSASHA256 && alg!= DST_ALG_RSASHA512) {
|
||||
fatal("%s is incompatible with NSEC3; "
|
||||
"do not use the -3 option", algname);
|
||||
}
|
||||
|
||||
if (type != NULL && (options & DST_TYPE_KEY) != 0) {
|
||||
if (strcasecmp(type, "NOAUTH") == 0)
|
||||
flags |= DNS_KEYTYPE_NOAUTH;
|
||||
else if (strcasecmp(type, "NOCONF") == 0)
|
||||
flags |= DNS_KEYTYPE_NOCONF;
|
||||
else if (strcasecmp(type, "NOAUTHCONF") == 0) {
|
||||
flags |= (DNS_KEYTYPE_NOAUTH |
|
||||
DNS_KEYTYPE_NOCONF);
|
||||
if (size < 0)
|
||||
size = 0;
|
||||
}
|
||||
else if (strcasecmp(type, "AUTHCONF") == 0)
|
||||
/* nothing */;
|
||||
else
|
||||
fatal("invalid type %s", type);
|
||||
}
|
||||
|
||||
if (size < 0) {
|
||||
if (use_default) {
|
||||
if ((kskflag & DNS_KEYFLAG_KSK) != 0)
|
||||
size = 2048;
|
||||
else
|
||||
size = 1024;
|
||||
if (verbose > 0)
|
||||
fprintf(stderr, "key size not "
|
||||
"specified; defaulting "
|
||||
"to %d\n", size);
|
||||
} else {
|
||||
fatal("key size not specified (-b option)");
|
||||
}
|
||||
}
|
||||
|
||||
if (!oldstyle && prepub > 0) {
|
||||
if (setpub && setact && (activate - prepub) < publish)
|
||||
fatal("Activation and publication dates "
|
||||
"are closer together than the\n\t"
|
||||
"prepublication interval.");
|
||||
|
||||
if (!setpub && !setact) {
|
||||
setpub = setact = ISC_TRUE;
|
||||
publish = now;
|
||||
activate = now + prepub;
|
||||
} else if (setpub && !setact) {
|
||||
setact = ISC_TRUE;
|
||||
activate = publish + prepub;
|
||||
} else if (setact && !setpub) {
|
||||
setpub = ISC_TRUE;
|
||||
publish = activate - prepub;
|
||||
}
|
||||
|
||||
if ((activate - prepub) < now)
|
||||
fatal("Time until activation is shorter "
|
||||
"than the\n\tprepublication interval.");
|
||||
}
|
||||
} else {
|
||||
char keystr[DST_KEY_FORMATSIZE];
|
||||
isc_stdtime_t when;
|
||||
int major, minor;
|
||||
|
||||
if (prepub == -1)
|
||||
prepub = (30 * 86400);
|
||||
|
||||
if (algname != NULL)
|
||||
fatal("-S and -a cannot be used together");
|
||||
if (size >= 0)
|
||||
fatal("-S and -b cannot be used together");
|
||||
if (nametype != NULL)
|
||||
fatal("-S and -n cannot be used together");
|
||||
if (type != NULL)
|
||||
fatal("-S and -t cannot be used together");
|
||||
if (setpub || unsetpub)
|
||||
fatal("-S and -P cannot be used together");
|
||||
if (setact || unsetact)
|
||||
fatal("-S and -A cannot be used together");
|
||||
if (use_nsec3)
|
||||
fatal("-S and -3 cannot be used together");
|
||||
if (oldstyle)
|
||||
fatal("-S and -C cannot be used together");
|
||||
if (genonly)
|
||||
fatal("-S and -G cannot be used together");
|
||||
|
||||
ret = dst_key_fromnamedfile(predecessor, directory,
|
||||
DST_TYPE_PUBLIC | DST_TYPE_PRIVATE,
|
||||
mctx, &prevkey);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fatal("Invalid keyfile %s: %s",
|
||||
filename, isc_result_totext(ret));
|
||||
if (!dst_key_isprivate(prevkey))
|
||||
fatal("%s is not a private key", filename);
|
||||
|
||||
name = dst_key_name(prevkey);
|
||||
alg = dst_key_alg(prevkey);
|
||||
size = dst_key_size(prevkey);
|
||||
flags = dst_key_flags(prevkey);
|
||||
|
||||
dst_key_format(prevkey, keystr, sizeof(keystr));
|
||||
dst_key_getprivateformat(prevkey, &major, &minor);
|
||||
if (major != DST_MAJOR_VERSION || minor < DST_MINOR_VERSION)
|
||||
fatal("Key %s has incompatible format version %d.%d\n\t"
|
||||
"It is not possible to generate a successor key.",
|
||||
keystr, major, minor);
|
||||
|
||||
ret = dst_key_gettime(prevkey, DST_TIME_ACTIVATE, &when);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fatal("Key %s has no activation date.\n\t"
|
||||
"You must use dnssec-settime -A to set one "
|
||||
"before generating a successor.", keystr);
|
||||
|
||||
ret = dst_key_gettime(prevkey, DST_TIME_INACTIVE, &activate);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fatal("Key %s has no inactivation date.\n\t"
|
||||
"You must use dnssec-settime -I to set one "
|
||||
"before generating a successor.", keystr);
|
||||
|
||||
publish = activate - prepub;
|
||||
if (publish < now)
|
||||
fatal("Key %s becomes inactive\n\t"
|
||||
"sooner than the prepublication period "
|
||||
"for the new key ends.\n\t"
|
||||
"Either change the inactivation date with "
|
||||
"dnssec-settime -I,\n\t"
|
||||
"or use the -i option to set a shorter "
|
||||
"prepublication interval.", keystr);
|
||||
|
||||
ret = dst_key_gettime(prevkey, DST_TIME_DELETE, &when);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fprintf(stderr, "%s: WARNING: Key %s has no removal "
|
||||
"date;\n\t it will remain in the zone "
|
||||
"indefinitely after rollover.\n\t "
|
||||
"You can use dnssec-settime -D to "
|
||||
"change this.\n", program, keystr);
|
||||
|
||||
setpub = setact = ISC_TRUE;
|
||||
}
|
||||
|
||||
switch (alg) {
|
||||
@@ -572,6 +708,7 @@ main(int argc, char **argv) {
|
||||
fatal("invalid DSS key size: %d", size);
|
||||
break;
|
||||
case DST_ALG_HMACMD5:
|
||||
options |= DST_TYPE_KEY;
|
||||
if (size < 1 || size > 512)
|
||||
fatal("HMAC-MD5 key size %d out of range", size);
|
||||
if (dbits != 0 && (dbits < 80 || dbits > 128))
|
||||
@@ -581,6 +718,7 @@ main(int argc, char **argv) {
|
||||
dbits);
|
||||
break;
|
||||
case DST_ALG_HMACSHA1:
|
||||
options |= DST_TYPE_KEY;
|
||||
if (size < 1 || size > 160)
|
||||
fatal("HMAC-SHA1 key size %d out of range", size);
|
||||
if (dbits != 0 && (dbits < 80 || dbits > 160))
|
||||
@@ -590,6 +728,7 @@ main(int argc, char **argv) {
|
||||
dbits);
|
||||
break;
|
||||
case DST_ALG_HMACSHA224:
|
||||
options |= DST_TYPE_KEY;
|
||||
if (size < 1 || size > 224)
|
||||
fatal("HMAC-SHA224 key size %d out of range", size);
|
||||
if (dbits != 0 && (dbits < 112 || dbits > 224))
|
||||
@@ -599,6 +738,7 @@ main(int argc, char **argv) {
|
||||
dbits);
|
||||
break;
|
||||
case DST_ALG_HMACSHA256:
|
||||
options |= DST_TYPE_KEY;
|
||||
if (size < 1 || size > 256)
|
||||
fatal("HMAC-SHA256 key size %d out of range", size);
|
||||
if (dbits != 0 && (dbits < 128 || dbits > 256))
|
||||
@@ -608,6 +748,7 @@ main(int argc, char **argv) {
|
||||
dbits);
|
||||
break;
|
||||
case DST_ALG_HMACSHA384:
|
||||
options |= DST_TYPE_KEY;
|
||||
if (size < 1 || size > 384)
|
||||
fatal("HMAC-384 key size %d out of range", size);
|
||||
if (dbits != 0 && (dbits < 192 || dbits > 384))
|
||||
@@ -617,6 +758,7 @@ main(int argc, char **argv) {
|
||||
dbits);
|
||||
break;
|
||||
case DST_ALG_HMACSHA512:
|
||||
options |= DST_TYPE_KEY;
|
||||
if (size < 1 || size > 512)
|
||||
fatal("HMAC-SHA512 key size %d out of range", size);
|
||||
if (dbits != 0 && (dbits < 256 || dbits > 512))
|
||||
@@ -685,16 +827,6 @@ main(int argc, char **argv) {
|
||||
fatal("a key with algorithm '%s' cannot be a zone key",
|
||||
algname);
|
||||
|
||||
dns_fixedname_init(&fname);
|
||||
name = dns_fixedname_name(&fname);
|
||||
isc_buffer_init(&buf, argv[isc_commandline_index],
|
||||
strlen(argv[isc_commandline_index]));
|
||||
isc_buffer_add(&buf, strlen(argv[isc_commandline_index]));
|
||||
ret = dns_name_fromtext(name, &buf, dns_rootname, 0, NULL);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fatal("invalid key name %s: %s", argv[isc_commandline_index],
|
||||
isc_result_totext(ret));
|
||||
|
||||
switch(alg) {
|
||||
case DNS_KEYALG_RSAMD5:
|
||||
case DNS_KEYALG_RSASHA1:
|
||||
@@ -763,9 +895,18 @@ main(int argc, char **argv) {
|
||||
/*
|
||||
* Set key timing metadata (unless using -C)
|
||||
*
|
||||
* Publish and activation dates are set to "now" by default,
|
||||
* but can be overridden. Creation date is always set to
|
||||
* "now".
|
||||
* Creation date is always set to "now".
|
||||
*
|
||||
* For a new key without an explicit predecessor, publish
|
||||
* and activation dates are set to "now" by default, but
|
||||
* can both be overridden.
|
||||
*
|
||||
* For a successor key, activation is set to match the
|
||||
* predecessor's inactivation date. Publish is set to 30
|
||||
* days earlier than that (XXX: this should be configurable).
|
||||
* If either of the resulting dates are in the past, that's
|
||||
* an error; the inactivation date of the predecessor key
|
||||
* must be updated before a successor key can be created.
|
||||
*/
|
||||
if (!oldstyle) {
|
||||
dst_key_settime(key, DST_TIME_CREATED, now);
|
||||
@@ -822,8 +963,7 @@ main(int argc, char **argv) {
|
||||
* if there is a risk of ID collision due to this key
|
||||
* or another key being revoked.
|
||||
*/
|
||||
if (key_collision(dst_key_id(key), name, directory,
|
||||
alg, mctx, NULL)) {
|
||||
if (key_collision(key, name, directory, mctx, NULL)) {
|
||||
conflict = ISC_TRUE;
|
||||
if (null_key) {
|
||||
dst_key_free(&key);
|
||||
@@ -832,12 +972,15 @@ main(int argc, char **argv) {
|
||||
|
||||
if (verbose > 0) {
|
||||
isc_buffer_clear(&buf);
|
||||
dst_key_buildfilename(key, 0, directory, &buf);
|
||||
fprintf(stderr,
|
||||
"%s: %s already exists, or might "
|
||||
"collide with another key upon "
|
||||
"revokation. Generating a new key\n",
|
||||
program, filename);
|
||||
ret = dst_key_buildfilename(key, 0,
|
||||
directory, &buf);
|
||||
if (ret == ISC_R_SUCCESS)
|
||||
fprintf(stderr,
|
||||
"%s: %s already exists, or "
|
||||
"might collide with another "
|
||||
"key upon revokation. "
|
||||
"Generating a new key\n",
|
||||
program, filename);
|
||||
}
|
||||
|
||||
dst_key_free(&key);
|
||||
@@ -858,8 +1001,13 @@ main(int argc, char **argv) {
|
||||
|
||||
isc_buffer_clear(&buf);
|
||||
ret = dst_key_buildfilename(key, 0, NULL, &buf);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
fatal("dst_key_buildfilename returned: %s\n",
|
||||
isc_result_totext(ret));
|
||||
printf("%s\n", filename);
|
||||
dst_key_free(&key);
|
||||
if (prevkey != NULL)
|
||||
dst_key_free(&prevkey);
|
||||
|
||||
cleanup_logging(&log);
|
||||
cleanup_entropy(&ectx);
|
||||
@@ -869,5 +1017,8 @@ main(int argc, char **argv) {
|
||||
isc_mem_stats(mctx, stdout);
|
||||
isc_mem_destroy(&mctx);
|
||||
|
||||
if (freeit != NULL)
|
||||
free(freeit);
|
||||
|
||||
return (0);
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005, 2007-2010 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: dnssec-keygen.docbook,v 1.33 2009/11/03 21:44:46 each Exp $ -->
|
||||
<!-- $Id: dnssec-keygen.docbook,v 1.33.24.2 2010/08/16 23:46:30 tbox Exp $ -->
|
||||
<refentry id="man.dnssec-keygen">
|
||||
<refentryinfo>
|
||||
<date>June 30, 2000</date>
|
||||
@@ -42,6 +42,7 @@
|
||||
<year>2007</year>
|
||||
<year>2008</year>
|
||||
<year>2009</year>
|
||||
<year>2010</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
@@ -71,6 +72,7 @@
|
||||
<arg><option>-g <replaceable class="parameter">generator</replaceable></option></arg>
|
||||
<arg><option>-h</option></arg>
|
||||
<arg><option>-I <replaceable class="parameter">date/offset</replaceable></option></arg>
|
||||
<arg><option>-i <replaceable class="parameter">interval</replaceable></option></arg>
|
||||
<arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
|
||||
<arg><option>-k</option></arg>
|
||||
<arg><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
|
||||
@@ -78,6 +80,7 @@
|
||||
<arg><option>-q</option></arg>
|
||||
<arg><option>-R <replaceable class="parameter">date/offset</replaceable></option></arg>
|
||||
<arg><option>-r <replaceable class="parameter">randomdev</replaceable></option></arg>
|
||||
<arg><option>-S <replaceable class="parameter">key</replaceable></option></arg>
|
||||
<arg><option>-s <replaceable class="parameter">strength</replaceable></option></arg>
|
||||
<arg><option>-t <replaceable class="parameter">type</replaceable></option></arg>
|
||||
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
|
||||
@@ -341,6 +344,21 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>-S <replaceable class="parameter">key</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Create a new key which is an explicit successor to an
|
||||
existing key. The name, algorithm, size, and type of the
|
||||
key will be set to match the existing key. The activation
|
||||
date of the new key will be set to the inactivation date of
|
||||
the existing one. The publication date will be set to the
|
||||
activation date minus the prepublication interval, which
|
||||
defaults to 30 days.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>-s <replaceable class="parameter">strength</replaceable></term>
|
||||
<listitem>
|
||||
@@ -463,6 +481,34 @@
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>-i <replaceable class="parameter">interval</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Sets the prepublication interval for a key. If set, then
|
||||
the publication and activation dates must be separated by at least
|
||||
this much time. If the activation date is specified but the
|
||||
publication date isn't, then the publication date will default
|
||||
to this much time before the activation date; conversely, if
|
||||
the publication date is specified but activation date isn't,
|
||||
then activation will be set to this much time after publication.
|
||||
</para>
|
||||
<para>
|
||||
If the key is being created as an explicit successor to another
|
||||
key, then the default prepublication interval is 30 days;
|
||||
otherwise it is zero.
|
||||
</para>
|
||||
<para>
|
||||
As with date offsets, if the argument is followed by one of
|
||||
the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the
|
||||
interval is measured in years, months, weeks, days, hours,
|
||||
or minutes, respectively. Without a suffix, the interval is
|
||||
measured in seconds.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005, 2007-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -14,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.45 2009/11/03 21:58:30 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -29,10 +29,10 @@
|
||||
</div>
|
||||
<div class="refsynopsisdiv">
|
||||
<h2>Synopsis</h2>
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-keygen</code> [<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>] [<code class="option">-b <em class="replaceable"><code>keysize</code></em></code>] [<code class="option">-n <em class="replaceable"><code>nametype</code></em></code>] [<code class="option">-3</code>] [<code class="option">-A <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-C</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] [<code class="option">-e</code>] [<code class="option">-f <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-G</code>] [<code class="option">-g <em class="replaceable"><code>generator</code></em></code>] [<code class="option">-h</code>] [<code class="option">-I <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-k</code>] [<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-p <em class="replaceable"><code>protocol</code></em></code>] [<code class="option">-q</code>] [<code class="option">-R <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-r <em class="replaceable"><code>randomdev</code></em></code>] [<code class="option">-s <em class="replaceable"><code>strength</code></em></code>] [<code class="option">-t <em class="replaceable"><code>type</code></em></code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-z</code>] {name}</p></div>
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-keygen</code> [<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>] [<code class="option">-b <em class="replaceable"><code>keysize</code></em></code>] [<code class="option">-n <em class="replaceable"><code>nametype</code></em></code>] [<code class="option">-3</code>] [<code class="option">-A <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-C</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] [<code class="option">-e</code>] [<code class="option">-f <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-G</code>] [<code class="option">-g <em class="replaceable"><code>generator</code></em></code>] [<code class="option">-h</code>] [<code class="option">-I <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-i <em class="replaceable"><code>interval</code></em></code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-k</code>] [<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-p <em class="replaceable"><code>protocol</code></em></code>] [<code class="option">-q</code>] [<code class="option">-R <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-r <em class="replaceable"><code>randomdev</code></em></code>] [<code class="option">-S <em class="replaceable"><code>key</code></em></code>] [<code class="option">-s <em class="replaceable"><code>strength</code></em></code>] [<code class="option">-t <em class="replaceable"><code>type</code></em></code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-z</code>] {name}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543558"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543579"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">dnssec-keygen</strong></span>
|
||||
generates keys for DNSSEC (Secure DNS), as defined in RFC 2535
|
||||
and RFC 4034. It can also generate keys for use with
|
||||
@@ -46,7 +46,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543576"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543597"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
|
||||
<dd>
|
||||
@@ -203,6 +203,16 @@
|
||||
<code class="filename">keyboard</code> indicates that keyboard
|
||||
input should be used.
|
||||
</p></dd>
|
||||
<dt><span class="term">-S <em class="replaceable"><code>key</code></em></span></dt>
|
||||
<dd><p>
|
||||
Create a new key which is an explicit successor to an
|
||||
existing key. The name, algorithm, size, and type of the
|
||||
key will be set to match the existing key. The activation
|
||||
date of the new key will be set to the inactivation date of
|
||||
the existing one. The publication date will be set to the
|
||||
activation date minus the prepublication interval, which
|
||||
defaults to 30 days.
|
||||
</p></dd>
|
||||
<dt><span class="term">-s <em class="replaceable"><code>strength</code></em></span></dt>
|
||||
<dd><p>
|
||||
Specifies the strength value of the key. The strength is
|
||||
@@ -238,7 +248,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544128"></a><h2>TIMING OPTIONS</h2>
|
||||
<a name="id2544166"></a><h2>TIMING OPTIONS</h2>
|
||||
<p>
|
||||
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
|
||||
If the argument begins with a '+' or '-', it is interpreted as
|
||||
@@ -282,10 +292,34 @@
|
||||
date, the key will no longer be included in the zone. (It
|
||||
may remain in the key repository, however.)
|
||||
</p></dd>
|
||||
<dt><span class="term">-i <em class="replaceable"><code>interval</code></em></span></dt>
|
||||
<dd>
|
||||
<p>
|
||||
Sets the prepublication interval for a key. If set, then
|
||||
the publication and activation dates must be separated by at least
|
||||
this much time. If the activation date is specified but the
|
||||
publication date isn't, then the publication date will default
|
||||
to this much time before the activation date; conversely, if
|
||||
the publication date is specified but activation date isn't,
|
||||
then activation will be set to this much time after publication.
|
||||
</p>
|
||||
<p>
|
||||
If the key is being created as an explicit successor to another
|
||||
key, then the default prepublication interval is 30 days;
|
||||
otherwise it is zero.
|
||||
</p>
|
||||
<p>
|
||||
As with date offsets, if the argument is followed by one of
|
||||
the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the
|
||||
interval is measured in years, months, weeks, days, hours,
|
||||
or minutes, respectively. Without a suffix, the interval is
|
||||
measured in seconds.
|
||||
</p>
|
||||
</dd>
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544226"></a><h2>GENERATED KEYS</h2>
|
||||
<a name="id2544356"></a><h2>GENERATED KEYS</h2>
|
||||
<p>
|
||||
When <span><strong class="command">dnssec-keygen</strong></span> completes
|
||||
successfully,
|
||||
@@ -331,7 +365,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544308"></a><h2>EXAMPLE</h2>
|
||||
<a name="id2544506"></a><h2>EXAMPLE</h2>
|
||||
<p>
|
||||
To generate a 768-bit DSA key for the domain
|
||||
<strong class="userinput"><code>example.com</code></strong>, the following command would be
|
||||
@@ -352,7 +386,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544352"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2544550"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
|
||||
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
|
||||
<em class="citetitle">RFC 2539</em>,
|
||||
@@ -361,7 +395,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544451"></a><h2>AUTHOR</h2>
|
||||
<a name="id2544581"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and/or distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -12,7 +12,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: dnssec-revoke.8,v 1.9 2010/05/19 01:14:14 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -32,7 +32,7 @@
|
||||
dnssec\-revoke \- Set the REVOKED bit on a DNSSEC key
|
||||
.SH "SYNOPSIS"
|
||||
.HP 14
|
||||
\fBdnssec\-revoke\fR [\fB\-hr\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] [\fB\-f\fR] {keyfile}
|
||||
\fBdnssec\-revoke\fR [\fB\-hr\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] [\fB\-f\fR] [\fB\-R\fR] {keyfile}
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBdnssec\-revoke\fR
|
||||
@@ -70,6 +70,11 @@ Force overwrite: Causes
|
||||
\fBdnssec\-revoke\fR
|
||||
to write the new key pair even if a file already exists matching the algorithm and key ID of the revoked key.
|
||||
.RE
|
||||
.PP
|
||||
\-R
|
||||
.RS 4
|
||||
Print the key tag of the key with the REVOKE bit set but do not revoke the key.
|
||||
.RE
|
||||
.SH "SEE ALSO"
|
||||
.PP
|
||||
\fBdnssec\-keygen\fR(8),
|
||||
@@ -79,5 +84,5 @@ RFC 5011.
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2009-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-revoke.c,v 1.22 2010/05/06 23:50:56 tbox Exp $ */
|
||||
/* $Id: dnssec-revoke.c,v 1.18.34.6 2011/10/20 23:46:03 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -92,6 +92,7 @@ main(int argc, char **argv) {
|
||||
isc_buffer_t buf;
|
||||
isc_boolean_t force = ISC_FALSE;
|
||||
isc_boolean_t remove = ISC_FALSE;
|
||||
isc_boolean_t id = ISC_FALSE;
|
||||
|
||||
if (argc == 1)
|
||||
usage();
|
||||
@@ -104,7 +105,7 @@ main(int argc, char **argv) {
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
|
||||
while ((ch = isc_commandline_parse(argc, argv, "E:fK:rhv:")) != -1) {
|
||||
while ((ch = isc_commandline_parse(argc, argv, "E:fK:rRhv:")) != -1) {
|
||||
switch (ch) {
|
||||
case 'E':
|
||||
engine = isc_commandline_argument;
|
||||
@@ -126,6 +127,9 @@ main(int argc, char **argv) {
|
||||
case 'r':
|
||||
remove = ISC_TRUE;
|
||||
break;
|
||||
case 'R':
|
||||
id = ISC_TRUE;
|
||||
break;
|
||||
case 'v':
|
||||
verbose = strtol(isc_commandline_argument, &endp, 0);
|
||||
if (*endp != '\0')
|
||||
@@ -186,6 +190,10 @@ main(int argc, char **argv) {
|
||||
fatal("Invalid keyfile name %s: %s",
|
||||
filename, isc_result_totext(result));
|
||||
|
||||
if (id) {
|
||||
fprintf(stdout, "%u\n", dst_key_rid(key));
|
||||
goto cleanup;
|
||||
}
|
||||
dst_key_format(key, keystr, sizeof(keystr));
|
||||
|
||||
if (verbose > 2)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -17,7 +17,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: dnssec-revoke.docbook,v 1.7 2009/11/03 21:44:46 each Exp $ -->
|
||||
<!-- $Id: dnssec-revoke.docbook,v 1.7.24.2 2011/10/20 23:46:04 tbox Exp $ -->
|
||||
<refentry id="man.dnssec-revoke">
|
||||
<refentryinfo>
|
||||
<date>June 1, 2009</date>
|
||||
@@ -37,6 +37,7 @@
|
||||
<docinfo>
|
||||
<copyright>
|
||||
<year>2009</year>
|
||||
<year>2011</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
</docinfo>
|
||||
@@ -49,6 +50,7 @@
|
||||
<arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
|
||||
<arg><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
|
||||
<arg><option>-f</option></arg>
|
||||
<arg><option>-R</option></arg>
|
||||
<arg choice="req">keyfile</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
@@ -123,6 +125,16 @@
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>-R</term>
|
||||
<listitem>
|
||||
<para>
|
||||
Print the key tag of the key with the REVOKE bit set but do
|
||||
not revoke the key.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,7 +13,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: dnssec-revoke.html,v 1.9 2010/05/19 01:14:14 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -28,10 +28,10 @@
|
||||
</div>
|
||||
<div class="refsynopsisdiv">
|
||||
<h2>Synopsis</h2>
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-revoke</code> [<code class="option">-hr</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] [<code class="option">-f</code>] {keyfile}</p></div>
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-revoke</code> [<code class="option">-hr</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] [<code class="option">-f</code>] [<code class="option">-R</code>] {keyfile}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543373"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543382"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">dnssec-revoke</strong></span>
|
||||
reads a DNSSEC key file, sets the REVOKED bit on the key as defined
|
||||
in RFC 5011, and creates a new pair of key files containing the
|
||||
@@ -39,7 +39,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543385"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543394"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-h</span></dt>
|
||||
<dd><p>
|
||||
@@ -69,17 +69,22 @@
|
||||
write the new key pair even if a file already exists matching
|
||||
the algorithm and key ID of the revoked key.
|
||||
</p></dd>
|
||||
<dt><span class="term">-R</span></dt>
|
||||
<dd><p>
|
||||
Print the key tag of the key with the REVOKE bit set but do
|
||||
not revoke the key.
|
||||
</p></dd>
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543491"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2543512"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
|
||||
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
|
||||
<em class="citetitle">RFC 5011</em>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543515"></a><h2>AUTHOR</h2>
|
||||
<a name="id2543537"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2009-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and/or distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -12,7 +12,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: dnssec-settime.8,v 1.13 2010/05/19 01:14:14 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -52,14 +52,14 @@ simply prints the key timing metadata already stored in the key.
|
||||
.PP
|
||||
When key metadata fields are changed, both files of a key pair (\fIKnnnn.+aaa+iiiii.key\fR
|
||||
and
|
||||
\fIKnnnn.+aaa+iiiii.private\fR) are regenerated. Metadata fields are stored in the private file. A human\-readable description of the metadata is also placed in comments in the key file.
|
||||
\fIKnnnn.+aaa+iiiii.private\fR) are regenerated. Metadata fields are stored in the private file. A human\-readable description of the metadata is also placed in comments in the key file. The private file's permissions are always set to be inaccessible to anyone other than the owner (mode 0600).
|
||||
.SH "OPTIONS"
|
||||
.PP
|
||||
\-f
|
||||
.RS 4
|
||||
Force an update of an old\-format key with no metadata fields. Without this option,
|
||||
\fBdnssec\-settime\fR
|
||||
will fail when attempting to update a legacy key. With this option, the key will be recreated in the new format, but with the original key data retained. The key's creation date will be set to the present time.
|
||||
will fail when attempting to update a legacy key. With this option, the key will be recreated in the new format, but with the original key data retained. The key's creation date will be set to the present time. If no other values are specified, then the key's publication and activation dates will also be set to the present time.
|
||||
.RE
|
||||
.PP
|
||||
\-K \fIdirectory\fR
|
||||
@@ -109,6 +109,20 @@ Sets the date on which the key is to be retired. After that date, the key will s
|
||||
.RS 4
|
||||
Sets the date on which the key is to be deleted. After that date, the key will no longer be included in the zone. (It may remain in the key repository, however.)
|
||||
.RE
|
||||
.PP
|
||||
\-S \fIpredecessor key\fR
|
||||
.RS 4
|
||||
Select a key for which the key being modified will be an explicit successor. The name, algorithm, size, and type of the predecessor key must exactly match those of the key being modified. The activation date of the successor key will be set to the inactivation date of the predecessor. The publication date will be set to the activation date minus the prepublication interval, which defaults to 30 days.
|
||||
.RE
|
||||
.PP
|
||||
\-i \fIinterval\fR
|
||||
.RS 4
|
||||
Sets the prepublication interval for a key. If set, then the publication and activation dates must be separated by at least this much time. If the activation date is specified but the publication date isn't, then the publication date will default to this much time before the activation date; conversely, if the publication date is specified but activation date isn't, then activation will be set to this much time after publication.
|
||||
.sp
|
||||
If the key is being set to be an explicit successor to another key, then the default prepublication interval is 30 days; otherwise it is zero.
|
||||
.sp
|
||||
As with date offsets, if the argument is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the interval is measured in years, months, weeks, days, hours, or minutes, respectively. Without a suffix, the interval is measured in seconds.
|
||||
.RE
|
||||
.SH "PRINTING OPTIONS"
|
||||
.PP
|
||||
\fBdnssec\-settime\fR
|
||||
@@ -148,5 +162,5 @@ RFC 5011.
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2009\-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
|
||||
+154
-28
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2009-2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -14,7 +14,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-settime.c,v 1.25 2010/02/03 01:02:37 each Exp $ */
|
||||
/* $Id: dnssec-settime.c,v 1.19.34.12 2011/06/02 20:23:48 each Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
|
||||
#include <dns/keyvalues.h>
|
||||
#include <dns/result.h>
|
||||
#include <dns/log.h>
|
||||
|
||||
#include <dst/dst.h>
|
||||
|
||||
@@ -81,8 +82,7 @@ usage(void) {
|
||||
"deletion date\n");
|
||||
fprintf(stderr, "Printing options:\n");
|
||||
fprintf(stderr, " -p C/P/A/R/I/D/all: print a particular time "
|
||||
"value or values "
|
||||
"[default: all]\n");
|
||||
"value or values\n");
|
||||
fprintf(stderr, " -u: print times in unix epoch "
|
||||
"format\n");
|
||||
fprintf(stderr, "Output:\n");
|
||||
@@ -117,20 +117,27 @@ printtime(dst_key_t *key, int type, const char *tag, isc_boolean_t epoch,
|
||||
|
||||
int
|
||||
main(int argc, char **argv) {
|
||||
isc_result_t result;
|
||||
isc_result_t result;
|
||||
#ifdef USE_PKCS11
|
||||
const char *engine = "pkcs11";
|
||||
const char *engine = "pkcs11";
|
||||
#else
|
||||
const char *engine = NULL;
|
||||
const char *engine = NULL;
|
||||
#endif
|
||||
char *filename = NULL, *directory = NULL;
|
||||
char newname[1024];
|
||||
char keystr[DST_KEY_FORMATSIZE];
|
||||
char *endp, *p;
|
||||
int ch;
|
||||
isc_entropy_t *ectx = NULL;
|
||||
dst_key_t *key = NULL;
|
||||
isc_buffer_t buf;
|
||||
char *filename = NULL, *directory = NULL;
|
||||
char newname[1024];
|
||||
char keystr[DST_KEY_FORMATSIZE];
|
||||
char *endp, *p;
|
||||
int ch;
|
||||
isc_entropy_t *ectx = NULL;
|
||||
const char *predecessor = NULL;
|
||||
dst_key_t *prevkey = NULL;
|
||||
dst_key_t *key = NULL;
|
||||
isc_buffer_t buf;
|
||||
dns_name_t *name = NULL;
|
||||
dns_secalg_t alg = 0;
|
||||
unsigned int size = 0;
|
||||
isc_uint16_t flags = 0;
|
||||
int prepub = -1;
|
||||
isc_stdtime_t now;
|
||||
isc_stdtime_t pub = 0, act = 0, rev = 0, inact = 0, del = 0;
|
||||
isc_boolean_t setpub = ISC_FALSE, setact = ISC_FALSE;
|
||||
@@ -145,6 +152,7 @@ main(int argc, char **argv) {
|
||||
isc_boolean_t force = ISC_FALSE;
|
||||
isc_boolean_t epoch = ISC_FALSE;
|
||||
isc_boolean_t changed = ISC_FALSE;
|
||||
isc_log_t *log = NULL;
|
||||
|
||||
if (argc == 1)
|
||||
usage();
|
||||
@@ -153,14 +161,16 @@ main(int argc, char **argv) {
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("Out of memory");
|
||||
|
||||
setup_logging(verbose, mctx, &log);
|
||||
|
||||
dns_result_register();
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
|
||||
isc_stdtime_get(&now);
|
||||
|
||||
while ((ch = isc_commandline_parse(argc, argv,
|
||||
"E:fK:uhp:v:P:A:R:I:D:")) != -1) {
|
||||
#define CMDLINE_FLAGS "A:D:E:fhI:i:K:P:p:R:S:uv:"
|
||||
while ((ch = isc_commandline_parse(argc, argv, CMDLINE_FLAGS)) != -1) {
|
||||
switch (ch) {
|
||||
case 'E':
|
||||
engine = isc_commandline_argument;
|
||||
@@ -293,6 +303,12 @@ main(int argc, char **argv) {
|
||||
now, now);
|
||||
}
|
||||
break;
|
||||
case 'S':
|
||||
predecessor = isc_commandline_argument;
|
||||
break;
|
||||
case 'i':
|
||||
prepub = strtottl(isc_commandline_argument);
|
||||
break;
|
||||
case '?':
|
||||
if (isc_commandline_option != '?')
|
||||
fprintf(stderr, "%s: invalid argument -%c\n",
|
||||
@@ -314,17 +330,6 @@ main(int argc, char **argv) {
|
||||
if (argc > isc_commandline_index + 1)
|
||||
fatal("Extraneous arguments");
|
||||
|
||||
if (directory != NULL) {
|
||||
filename = argv[isc_commandline_index];
|
||||
} else {
|
||||
result = isc_file_splitpath(mctx, argv[isc_commandline_index],
|
||||
&directory, &filename);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("cannot process filename %s: %s",
|
||||
argv[isc_commandline_index],
|
||||
isc_result_totext(result));
|
||||
}
|
||||
|
||||
if (ectx == NULL)
|
||||
setup_entropy(mctx, NULL, &ectx);
|
||||
result = isc_hash_create(mctx, ectx, DNS_NAME_MAXWIRE);
|
||||
@@ -337,6 +342,105 @@ main(int argc, char **argv) {
|
||||
isc_result_totext(result));
|
||||
isc_entropy_stopcallbacksources(ectx);
|
||||
|
||||
if (predecessor != NULL) {
|
||||
char keystr[DST_KEY_FORMATSIZE];
|
||||
isc_stdtime_t when;
|
||||
int major, minor;
|
||||
|
||||
if (prepub == -1)
|
||||
prepub = (30 * 86400);
|
||||
|
||||
if (setpub || unsetpub)
|
||||
fatal("-S and -P cannot be used together");
|
||||
if (setact || unsetact)
|
||||
fatal("-S and -A cannot be used together");
|
||||
|
||||
result = dst_key_fromnamedfile(predecessor, directory,
|
||||
DST_TYPE_PUBLIC |
|
||||
DST_TYPE_PRIVATE,
|
||||
mctx, &prevkey);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("Invalid keyfile %s: %s",
|
||||
filename, isc_result_totext(result));
|
||||
if (!dst_key_isprivate(prevkey))
|
||||
fatal("%s is not a private key", filename);
|
||||
|
||||
name = dst_key_name(prevkey);
|
||||
alg = dst_key_alg(prevkey);
|
||||
size = dst_key_size(prevkey);
|
||||
flags = dst_key_flags(prevkey);
|
||||
|
||||
dst_key_format(prevkey, keystr, sizeof(keystr));
|
||||
dst_key_getprivateformat(prevkey, &major, &minor);
|
||||
if (major != DST_MAJOR_VERSION || minor < DST_MINOR_VERSION)
|
||||
fatal("Predecessor has incompatible format "
|
||||
"version %d.%d\n\t", major, minor);
|
||||
|
||||
result = dst_key_gettime(prevkey, DST_TIME_ACTIVATE, &when);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("Predecessor has no activation date. "
|
||||
"You must set one before\n\t"
|
||||
"generating a successor.");
|
||||
|
||||
result = dst_key_gettime(prevkey, DST_TIME_INACTIVE, &act);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("Predecessor has no inactivation date. "
|
||||
"You must set one before\n\t"
|
||||
"generating a successor.");
|
||||
|
||||
pub = act - prepub;
|
||||
if (pub < now && prepub != 0)
|
||||
fatal("Predecessor will become inactive before the\n\t"
|
||||
"prepublication period ends. Either change "
|
||||
"its inactivation date,\n\t"
|
||||
"or use the -i option to set a shorter "
|
||||
"prepublication interval.");
|
||||
|
||||
result = dst_key_gettime(prevkey, DST_TIME_DELETE, &when);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fprintf(stderr, "%s: WARNING: Predecessor has no "
|
||||
"removal date;\n\t"
|
||||
"it will remain in the zone "
|
||||
"indefinitely after rollover.\n",
|
||||
program);
|
||||
|
||||
changed = setpub = setact = ISC_TRUE;
|
||||
dst_key_free(&prevkey);
|
||||
} else {
|
||||
if (prepub < 0)
|
||||
prepub = 0;
|
||||
|
||||
if (prepub > 0) {
|
||||
if (setpub && setact && (act - prepub) < pub)
|
||||
fatal("Activation and publication dates "
|
||||
"are closer together than the\n\t"
|
||||
"prepublication interval.");
|
||||
|
||||
if (setpub && !setact) {
|
||||
setact = ISC_TRUE;
|
||||
act = pub + prepub;
|
||||
} else if (setact && !setpub) {
|
||||
setpub = ISC_TRUE;
|
||||
pub = act - prepub;
|
||||
}
|
||||
|
||||
if ((act - prepub) < now)
|
||||
fatal("Time until activation is shorter "
|
||||
"than the\n\tprepublication interval.");
|
||||
}
|
||||
}
|
||||
|
||||
if (directory != NULL) {
|
||||
filename = argv[isc_commandline_index];
|
||||
} else {
|
||||
result = isc_file_splitpath(mctx, argv[isc_commandline_index],
|
||||
&directory, &filename);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("cannot process filename %s: %s",
|
||||
argv[isc_commandline_index],
|
||||
isc_result_totext(result));
|
||||
}
|
||||
|
||||
result = dst_key_fromnamedfile(filename, directory,
|
||||
DST_TYPE_PUBLIC | DST_TYPE_PRIVATE,
|
||||
mctx, &key);
|
||||
@@ -349,6 +453,17 @@ main(int argc, char **argv) {
|
||||
|
||||
dst_key_format(key, keystr, sizeof(keystr));
|
||||
|
||||
if (predecessor != NULL) {
|
||||
if (!dns_name_equal(name, dst_key_name(key)))
|
||||
fatal("Key name mismatch");
|
||||
if (alg != dst_key_alg(key))
|
||||
fatal("Key algorithm mismatch");
|
||||
if (size != dst_key_size(key))
|
||||
fatal("Key size mismatch");
|
||||
if (flags != dst_key_flags(key))
|
||||
fatal("Key flags mismatch");
|
||||
}
|
||||
|
||||
if (force)
|
||||
set_keyversion(key);
|
||||
else
|
||||
@@ -401,6 +516,16 @@ main(int argc, char **argv) {
|
||||
else if (unsetdel)
|
||||
dst_key_unsettime(key, DST_TIME_DELETE);
|
||||
|
||||
/*
|
||||
* No metadata changes were made but we're forcing an upgrade
|
||||
* to the new format anyway: use "-P now -A now" as the default
|
||||
*/
|
||||
if (force && !changed) {
|
||||
dst_key_settime(key, DST_TIME_PUBLISH, now);
|
||||
dst_key_settime(key, DST_TIME_ACTIVATE, now);
|
||||
changed = ISC_TRUE;
|
||||
}
|
||||
|
||||
/*
|
||||
* Print out time values, if -p was used.
|
||||
*/
|
||||
@@ -457,6 +582,7 @@ main(int argc, char **argv) {
|
||||
cleanup_entropy(&ectx);
|
||||
if (verbose > 10)
|
||||
isc_mem_stats(mctx, stdout);
|
||||
cleanup_logging(&log);
|
||||
isc_mem_free(mctx, directory);
|
||||
isc_mem_destroy(&mctx);
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2009-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -17,7 +17,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: dnssec-settime.docbook,v 1.10 2010/03/09 03:35:34 marka Exp $ -->
|
||||
<!-- $Id: dnssec-settime.docbook,v 1.7.24.7 2011/11/03 20:21:24 each Exp $ -->
|
||||
<refentry id="man.dnssec-settime">
|
||||
<refentryinfo>
|
||||
<date>July 15, 2009</date>
|
||||
@@ -38,6 +38,7 @@
|
||||
<copyright>
|
||||
<year>2009</year>
|
||||
<year>2010</year>
|
||||
<year>2011</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
</docinfo>
|
||||
@@ -81,7 +82,8 @@
|
||||
<filename>Knnnn.+aaa+iiiii.private</filename>) are regenerated.
|
||||
Metadata fields are stored in the private file. A human-readable
|
||||
description of the metadata is also placed in comments in the key
|
||||
file.
|
||||
file. The private file's permissions are always set to be
|
||||
inaccessible to anyone other than the owner (mode 0600).
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
@@ -98,7 +100,9 @@
|
||||
fail when attempting to update a legacy key. With this option,
|
||||
the key will be recreated in the new format, but with the
|
||||
original key data retained. The key's creation date will be
|
||||
set to the present time.
|
||||
set to the present time. If no other values are specified,
|
||||
then the key's publication and activation dates will also
|
||||
be set to the present time.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -211,6 +215,47 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>-S <replaceable class="parameter">predecessor key</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Select a key for which the key being modified will be an
|
||||
explicit successor. The name, algorithm, size, and type of the
|
||||
predecessor key must exactly match those of the key being
|
||||
modified. The activation date of the successor key will be set
|
||||
to the inactivation date of the predecessor. The publication
|
||||
date will be set to the activation date minus the prepublication
|
||||
interval, which defaults to 30 days.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>-i <replaceable class="parameter">interval</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Sets the prepublication interval for a key. If set, then
|
||||
the publication and activation dates must be separated by at least
|
||||
this much time. If the activation date is specified but the
|
||||
publication date isn't, then the publication date will default
|
||||
to this much time before the activation date; conversely, if
|
||||
the publication date is specified but activation date isn't,
|
||||
then activation will be set to this much time after publication.
|
||||
</para>
|
||||
<para>
|
||||
If the key is being set to be an explicit successor to another
|
||||
key, then the default prepublication interval is 30 days;
|
||||
otherwise it is zero.
|
||||
</para>
|
||||
<para>
|
||||
As with date offsets, if the argument is followed by one of
|
||||
the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the
|
||||
interval is measured in years, months, weeks, days, hours,
|
||||
or minutes, respectively. Without a suffix, the interval is
|
||||
measured in seconds.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2009-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,7 +13,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: dnssec-settime.html,v 1.13 2010/05/19 01:14:14 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -31,7 +31,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-settime</code> [<code class="option">-f</code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-A <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-R <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-I <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-h</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] {keyfile}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543419"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543424"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">dnssec-settime</strong></span>
|
||||
reads a DNSSEC private key file and sets the key timing metadata
|
||||
as specified by the <code class="option">-P</code>, <code class="option">-A</code>,
|
||||
@@ -52,11 +52,12 @@
|
||||
<code class="filename">Knnnn.+aaa+iiiii.private</code>) are regenerated.
|
||||
Metadata fields are stored in the private file. A human-readable
|
||||
description of the metadata is also placed in comments in the key
|
||||
file.
|
||||
file. The private file's permissions are always set to be
|
||||
inaccessible to anyone other than the owner (mode 0600).
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543467"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543472"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-f</span></dt>
|
||||
<dd><p>
|
||||
@@ -65,7 +66,9 @@
|
||||
fail when attempting to update a legacy key. With this option,
|
||||
the key will be recreated in the new format, but with the
|
||||
original key data retained. The key's creation date will be
|
||||
set to the present time.
|
||||
set to the present time. If no other values are specified,
|
||||
then the key's publication and activation dates will also
|
||||
be set to the present time.
|
||||
</p></dd>
|
||||
<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
|
||||
<dd><p>
|
||||
@@ -87,7 +90,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543559"></a><h2>TIMING OPTIONS</h2>
|
||||
<a name="id2543563"></a><h2>TIMING OPTIONS</h2>
|
||||
<p>
|
||||
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
|
||||
If the argument begins with a '+' or '-', it is interpreted as
|
||||
@@ -129,10 +132,44 @@
|
||||
date, the key will no longer be included in the zone. (It
|
||||
may remain in the key repository, however.)
|
||||
</p></dd>
|
||||
<dt><span class="term">-S <em class="replaceable"><code>predecessor key</code></em></span></dt>
|
||||
<dd><p>
|
||||
Select a key for which the key being modified will be an
|
||||
explicit successor. The name, algorithm, size, and type of the
|
||||
predecessor key must exactly match those of the key being
|
||||
modified. The activation date of the successor key will be set
|
||||
to the inactivation date of the predecessor. The publication
|
||||
date will be set to the activation date minus the prepublication
|
||||
interval, which defaults to 30 days.
|
||||
</p></dd>
|
||||
<dt><span class="term">-i <em class="replaceable"><code>interval</code></em></span></dt>
|
||||
<dd>
|
||||
<p>
|
||||
Sets the prepublication interval for a key. If set, then
|
||||
the publication and activation dates must be separated by at least
|
||||
this much time. If the activation date is specified but the
|
||||
publication date isn't, then the publication date will default
|
||||
to this much time before the activation date; conversely, if
|
||||
the publication date is specified but activation date isn't,
|
||||
then activation will be set to this much time after publication.
|
||||
</p>
|
||||
<p>
|
||||
If the key is being set to be an explicit successor to another
|
||||
key, then the default prepublication interval is 30 days;
|
||||
otherwise it is zero.
|
||||
</p>
|
||||
<p>
|
||||
As with date offsets, if the argument is followed by one of
|
||||
the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the
|
||||
interval is measured in years, months, weeks, days, hours,
|
||||
or minutes, respectively. Without a suffix, the interval is
|
||||
measured in seconds.
|
||||
</p>
|
||||
</dd>
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543657"></a><h2>PRINTING OPTIONS</h2>
|
||||
<a name="id2543770"></a><h2>PRINTING OPTIONS</h2>
|
||||
<p>
|
||||
<span><strong class="command">dnssec-settime</strong></span> can also be used to print the
|
||||
timing metadata associated with a key.
|
||||
@@ -158,7 +195,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543735"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2543848"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
|
||||
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
|
||||
@@ -166,7 +203,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543768"></a><h2>AUTHOR</h2>
|
||||
<a name="id2543881"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -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.59 2009/12/04 01:13:44 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Portions Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -29,7 +29,7 @@
|
||||
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-signzone.c,v 1.262 2010/06/03 23:51:04 tbox Exp $ */
|
||||
/* $Id: dnssec-signzone.c,v 1.258.4.13 2011/08/26 23:45:30 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -338,7 +338,7 @@ keythatsigned(dns_rdata_rrsig_t *rrsig) {
|
||||
} else {
|
||||
dns_dnsseckey_create(mctx, &pubkey, &key);
|
||||
}
|
||||
key->force_publish = ISC_TRUE;
|
||||
key->force_publish = ISC_FALSE;
|
||||
key->force_sign = ISC_FALSE;
|
||||
ISC_LIST_APPEND(keylist, key, link);
|
||||
|
||||
@@ -486,32 +486,32 @@ signset(dns_diff_t *del, dns_diff_t *add, dns_dbnode_t *node, dns_name_t *name,
|
||||
if (!expired)
|
||||
keep = ISC_TRUE;
|
||||
} else if (issigningkey(key)) {
|
||||
if (!expired && setverifies(name, set, key->key,
|
||||
&sigrdata)) {
|
||||
if (!expired && rrsig.originalttl == set->ttl &&
|
||||
setverifies(name, set, key->key, &sigrdata)) {
|
||||
vbprintf(2, "\trrsig by %s retained\n", sigstr);
|
||||
keep = ISC_TRUE;
|
||||
wassignedby[key->index] = ISC_TRUE;
|
||||
nowsignedby[key->index] = ISC_TRUE;
|
||||
} else {
|
||||
vbprintf(2, "\trrsig by %s dropped - %s\n",
|
||||
sigstr,
|
||||
expired ? "expired" :
|
||||
"failed to verify");
|
||||
sigstr, expired ? "expired" :
|
||||
rrsig.originalttl != set->ttl ?
|
||||
"ttl change" : "failed to verify");
|
||||
wassignedby[key->index] = ISC_TRUE;
|
||||
resign = ISC_TRUE;
|
||||
}
|
||||
} else if (iszonekey(key)) {
|
||||
if (!expired && setverifies(name, set, key->key,
|
||||
&sigrdata)) {
|
||||
if (!expired && rrsig.originalttl == set->ttl &&
|
||||
setverifies(name, set, key->key, &sigrdata)) {
|
||||
vbprintf(2, "\trrsig by %s retained\n", sigstr);
|
||||
keep = ISC_TRUE;
|
||||
wassignedby[key->index] = ISC_TRUE;
|
||||
nowsignedby[key->index] = ISC_TRUE;
|
||||
} else {
|
||||
vbprintf(2, "\trrsig by %s dropped - %s\n",
|
||||
sigstr,
|
||||
expired ? "expired" :
|
||||
"failed to verify");
|
||||
sigstr, expired ? "expired" :
|
||||
rrsig.originalttl != set->ttl ?
|
||||
"ttl change" : "failed to verify");
|
||||
wassignedby[key->index] = ISC_TRUE;
|
||||
}
|
||||
} else if (!expired) {
|
||||
@@ -522,7 +522,8 @@ signset(dns_diff_t *del, dns_diff_t *add, dns_dbnode_t *node, dns_name_t *name,
|
||||
}
|
||||
|
||||
if (keep) {
|
||||
nowsignedby[key->index] = ISC_TRUE;
|
||||
if (key != NULL)
|
||||
nowsignedby[key->index] = ISC_TRUE;
|
||||
INCSTAT(nretained);
|
||||
if (sigset.ttl != ttl) {
|
||||
vbprintf(2, "\tfixing ttl %s\n", sigstr);
|
||||
@@ -1387,6 +1388,13 @@ verifyset(dns_rdataset_t *rdataset, dns_name_t *name, dns_dbnode_t *node,
|
||||
|
||||
dns_rdataset_current(&sigrdataset, &rdata);
|
||||
dns_rdata_tostruct(&rdata, &sig, NULL);
|
||||
if (rdataset->ttl != sig.originalttl) {
|
||||
dns_name_format(name, namebuf, sizeof(namebuf));
|
||||
type_format(rdataset->type, typebuf, sizeof(typebuf));
|
||||
fprintf(stderr, "TTL mismatch for %s %s keytag %u\n",
|
||||
namebuf, typebuf, sig.keyid);
|
||||
continue;
|
||||
}
|
||||
if ((set_algorithms[sig.algorithm] != 0) ||
|
||||
(ksk_algorithms[sig.algorithm] == 0))
|
||||
continue;
|
||||
@@ -1443,14 +1451,14 @@ verifynode(dns_name_t *name, dns_dbnode_t *node, isc_boolean_t delegation,
|
||||
/*%
|
||||
* Verify that certain things are sane:
|
||||
*
|
||||
* The apex has a DNSKEY record with at least one KSK, and at least
|
||||
* The apex has a DNSKEY RRset with at least one KSK, and at least
|
||||
* one ZSK if the -x flag was not used.
|
||||
*
|
||||
* The DNSKEY record was signed with at least one of the KSKs in this
|
||||
* set.
|
||||
* The DNSKEY record was signed with at least one of the KSKs in
|
||||
* the DNSKEY RRset.
|
||||
*
|
||||
* The rest of the zone was signed with at least one of the ZSKs
|
||||
* present in the DNSKEY RRSET.
|
||||
* present in the DNSKEY RRset.
|
||||
*/
|
||||
static void
|
||||
verifyzone(void) {
|
||||
@@ -1461,13 +1469,12 @@ verifyzone(void) {
|
||||
dns_name_t *name, *nextname, *zonecut;
|
||||
dns_rdata_dnskey_t dnskey;
|
||||
dns_rdata_t rdata = DNS_RDATA_INIT;
|
||||
dns_rdataset_t rdataset;
|
||||
dns_rdataset_t sigrdataset;
|
||||
dns_rdataset_t keyset, soaset;
|
||||
dns_rdataset_t keysigs, soasigs;
|
||||
int i;
|
||||
isc_boolean_t done = ISC_FALSE;
|
||||
isc_boolean_t first = ISC_TRUE;
|
||||
isc_boolean_t goodksk = ISC_FALSE;
|
||||
isc_boolean_t goodzsk = ISC_FALSE;
|
||||
isc_result_t result;
|
||||
unsigned char revoked_ksk[256];
|
||||
unsigned char revoked_zsk[256];
|
||||
@@ -1489,18 +1496,30 @@ verifyzone(void) {
|
||||
fatal("failed to find the zone's origin: %s",
|
||||
isc_result_totext(result));
|
||||
|
||||
dns_rdataset_init(&rdataset);
|
||||
dns_rdataset_init(&sigrdataset);
|
||||
dns_rdataset_init(&keyset);
|
||||
dns_rdataset_init(&keysigs);
|
||||
dns_rdataset_init(&soaset);
|
||||
dns_rdataset_init(&soasigs);
|
||||
|
||||
result = dns_db_findrdataset(gdb, node, gversion,
|
||||
dns_rdatatype_dnskey,
|
||||
0, 0, &rdataset, &sigrdataset);
|
||||
dns_db_detachnode(gdb, &node);
|
||||
0, 0, &keyset, &keysigs);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("cannot find DNSKEY rrset\n");
|
||||
|
||||
if (!dns_rdataset_isassociated(&sigrdataset))
|
||||
result = dns_db_findrdataset(gdb, node, gversion,
|
||||
dns_rdatatype_soa,
|
||||
0, 0, &soaset, &soasigs);
|
||||
dns_db_detachnode(gdb, &node);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("cannot find SOA rrset\n");
|
||||
|
||||
if (!dns_rdataset_isassociated(&keysigs))
|
||||
fatal("cannot find DNSKEY RRSIGs\n");
|
||||
|
||||
if (!dns_rdataset_isassociated(&soasigs))
|
||||
fatal("cannot find SOA RRSIGs\n");
|
||||
|
||||
memset(revoked_ksk, 0, sizeof(revoked_ksk));
|
||||
memset(revoked_zsk, 0, sizeof(revoked_zsk));
|
||||
memset(standby_ksk, 0, sizeof(standby_ksk));
|
||||
@@ -1517,10 +1536,10 @@ verifyzone(void) {
|
||||
* and one ZSK per algorithm in it (or, if -x was used, one
|
||||
* self-signing KSK).
|
||||
*/
|
||||
for (result = dns_rdataset_first(&rdataset);
|
||||
for (result = dns_rdataset_first(&keyset);
|
||||
result == ISC_R_SUCCESS;
|
||||
result = dns_rdataset_next(&rdataset)) {
|
||||
dns_rdataset_current(&rdataset, &rdata);
|
||||
result = dns_rdataset_next(&keyset)) {
|
||||
dns_rdataset_current(&keyset, &rdata);
|
||||
result = dns_rdata_tostruct(&rdata, &dnskey, NULL);
|
||||
check_result(result, "dns_rdata_tostruct");
|
||||
|
||||
@@ -1528,8 +1547,8 @@ verifyzone(void) {
|
||||
;
|
||||
else if ((dnskey.flags & DNS_KEYFLAG_REVOKE) != 0) {
|
||||
if ((dnskey.flags & DNS_KEYFLAG_KSK) != 0 &&
|
||||
!dns_dnssec_selfsigns(&rdata, gorigin, &rdataset,
|
||||
&sigrdataset, ISC_FALSE,
|
||||
!dns_dnssec_selfsigns(&rdata, gorigin, &keyset,
|
||||
&keysigs, ISC_FALSE,
|
||||
mctx)) {
|
||||
char namebuf[DNS_NAME_FORMATSIZE];
|
||||
char buffer[1024];
|
||||
@@ -1551,8 +1570,8 @@ verifyzone(void) {
|
||||
revoked_zsk[dnskey.algorithm] != 255)
|
||||
revoked_zsk[dnskey.algorithm]++;
|
||||
} else if ((dnskey.flags & DNS_KEYFLAG_KSK) != 0) {
|
||||
if (dns_dnssec_selfsigns(&rdata, gorigin, &rdataset,
|
||||
&sigrdataset, ISC_FALSE, mctx)) {
|
||||
if (dns_dnssec_selfsigns(&rdata, gorigin, &keyset,
|
||||
&keysigs, ISC_FALSE, mctx)) {
|
||||
if (ksk_algorithms[dnskey.algorithm] != 255)
|
||||
ksk_algorithms[dnskey.algorithm]++;
|
||||
goodksk = ISC_TRUE;
|
||||
@@ -1560,8 +1579,8 @@ verifyzone(void) {
|
||||
if (standby_ksk[dnskey.algorithm] != 255)
|
||||
standby_ksk[dnskey.algorithm]++;
|
||||
}
|
||||
} else if (dns_dnssec_selfsigns(&rdata, gorigin, &rdataset,
|
||||
&sigrdataset, ISC_FALSE,
|
||||
} else if (dns_dnssec_selfsigns(&rdata, gorigin, &keyset,
|
||||
&keysigs, ISC_FALSE,
|
||||
mctx)) {
|
||||
#ifdef ALLOW_KSKLESS_ZONES
|
||||
if (self_algorithms[dnskey.algorithm] != 255)
|
||||
@@ -1569,7 +1588,10 @@ verifyzone(void) {
|
||||
#endif
|
||||
if (zsk_algorithms[dnskey.algorithm] != 255)
|
||||
zsk_algorithms[dnskey.algorithm]++;
|
||||
goodzsk = ISC_TRUE;
|
||||
} else if (dns_dnssec_signs(&rdata, gorigin, &soaset,
|
||||
&soasigs, ISC_FALSE, mctx)) {
|
||||
if (zsk_algorithms[dnskey.algorithm] != 255)
|
||||
zsk_algorithms[dnskey.algorithm]++;
|
||||
} else {
|
||||
if (standby_zsk[dnskey.algorithm] != 255)
|
||||
standby_zsk[dnskey.algorithm]++;
|
||||
@@ -1580,7 +1602,9 @@ verifyzone(void) {
|
||||
dns_rdata_freestruct(&dnskey);
|
||||
dns_rdata_reset(&rdata);
|
||||
}
|
||||
dns_rdataset_disassociate(&sigrdataset);
|
||||
dns_rdataset_disassociate(&keysigs);
|
||||
dns_rdataset_disassociate(&soaset);
|
||||
dns_rdataset_disassociate(&soasigs);
|
||||
|
||||
#ifdef ALLOW_KSKLESS_ZONES
|
||||
if (!goodksk) {
|
||||
@@ -1595,7 +1619,7 @@ verifyzone(void) {
|
||||
}
|
||||
#else
|
||||
if (!goodksk) {
|
||||
fatal("no self signed KSK's found");
|
||||
fatal("No self signed KSK's found");
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -1669,7 +1693,7 @@ verifyzone(void) {
|
||||
dns_name_copy(name, zonecut, NULL);
|
||||
isdelegation = ISC_TRUE;
|
||||
}
|
||||
verifynode(name, node, isdelegation, &rdataset,
|
||||
verifynode(name, node, isdelegation, &keyset,
|
||||
ksk_algorithms, bad_algorithms);
|
||||
result = dns_dbiterator_next(dbiter);
|
||||
nextnode = NULL;
|
||||
@@ -1706,13 +1730,13 @@ verifyzone(void) {
|
||||
result = dns_dbiterator_next(dbiter) ) {
|
||||
result = dns_dbiterator_current(dbiter, &node, name);
|
||||
check_dns_dbiterator_current(result);
|
||||
verifynode(name, node, ISC_FALSE, &rdataset,
|
||||
verifynode(name, node, ISC_FALSE, &keyset,
|
||||
ksk_algorithms, bad_algorithms);
|
||||
dns_db_detachnode(gdb, &node);
|
||||
}
|
||||
dns_dbiterator_destroy(&dbiter);
|
||||
|
||||
dns_rdataset_disassociate(&rdataset);
|
||||
dns_rdataset_disassociate(&keyset);
|
||||
|
||||
/*
|
||||
* If we made it this far, we have what we consider a properly signed
|
||||
@@ -2192,6 +2216,7 @@ addnsec3param(const unsigned char *salt, size_t salt_length,
|
||||
result = dns_rdata_fromstruct(&rdata, gclass,
|
||||
dns_rdatatype_nsec3param,
|
||||
&nsec3param, &b);
|
||||
check_result(result, "dns_rdata_fromstruct()");
|
||||
rdatalist.rdclass = rdata.rdclass;
|
||||
rdatalist.type = rdata.type;
|
||||
rdatalist.covers = 0;
|
||||
@@ -2801,7 +2826,7 @@ loadzonekeys(isc_boolean_t preserve_keys, isc_boolean_t load_public) {
|
||||
}
|
||||
keyttl = rdataset.ttl;
|
||||
|
||||
/* Load keys corresponding to the existing DNSKEY RRset */
|
||||
/* Load keys corresponding to the existing DNSKEY RRset. */
|
||||
result = dns_dnssec_keylistfromrdataset(gorigin, directory, mctx,
|
||||
&rdataset, &keysigs, &soasigs,
|
||||
preserve_keys, load_public,
|
||||
@@ -3320,28 +3345,36 @@ removetempfile(void) {
|
||||
}
|
||||
|
||||
static void
|
||||
print_stats(isc_time_t *timer_start, isc_time_t *timer_finish) {
|
||||
isc_uint64_t runtime_us; /* Runtime in microseconds */
|
||||
isc_uint64_t runtime_ms; /* Runtime in milliseconds */
|
||||
print_stats(isc_time_t *timer_start, isc_time_t *timer_finish,
|
||||
isc_time_t *sign_start, isc_time_t *sign_finish)
|
||||
{
|
||||
isc_uint64_t time_us; /* Time in microseconds */
|
||||
isc_uint64_t time_ms; /* Time in milliseconds */
|
||||
isc_uint64_t sig_ms; /* Signatures per millisecond */
|
||||
|
||||
runtime_us = isc_time_microdiff(timer_finish, timer_start);
|
||||
|
||||
printf("Signatures generated: %10d\n", nsigned);
|
||||
printf("Signatures retained: %10d\n", nretained);
|
||||
printf("Signatures dropped: %10d\n", ndropped);
|
||||
printf("Signatures successfully verified: %10d\n", nverified);
|
||||
printf("Signatures unsuccessfully verified: %10d\n", nverifyfailed);
|
||||
runtime_ms = runtime_us / 1000;
|
||||
printf("Runtime in seconds: %7u.%03u\n",
|
||||
(unsigned int) (runtime_ms / 1000),
|
||||
(unsigned int) (runtime_ms % 1000));
|
||||
if (runtime_us > 0) {
|
||||
sig_ms = ((isc_uint64_t)nsigned * 1000000000) / runtime_us;
|
||||
|
||||
time_us = isc_time_microdiff(sign_finish, sign_start);
|
||||
time_ms = time_us / 1000;
|
||||
printf("Signing time in seconds: %7u.%03u\n",
|
||||
(unsigned int) (time_ms / 1000),
|
||||
(unsigned int) (time_ms % 1000));
|
||||
if (time_us > 0) {
|
||||
sig_ms = ((isc_uint64_t)nsigned * 1000000000) / time_us;
|
||||
printf("Signatures per second: %7u.%03u\n",
|
||||
(unsigned int) sig_ms / 1000,
|
||||
(unsigned int) sig_ms % 1000);
|
||||
}
|
||||
|
||||
time_us = isc_time_microdiff(timer_finish, timer_start);
|
||||
time_ms = time_us / 1000;
|
||||
printf("Runtime in seconds: %7u.%03u\n",
|
||||
(unsigned int) (time_ms / 1000),
|
||||
(unsigned int) (time_ms % 1000));
|
||||
}
|
||||
|
||||
int
|
||||
@@ -3355,6 +3388,7 @@ main(int argc, char *argv[]) {
|
||||
int ndskeys = 0;
|
||||
char *endp;
|
||||
isc_time_t timer_start, timer_finish;
|
||||
isc_time_t sign_start, sign_finish;
|
||||
dns_dnsseckey_t *key;
|
||||
isc_result_t result;
|
||||
isc_log_t *log = NULL;
|
||||
@@ -3805,6 +3839,8 @@ main(int argc, char *argv[]) {
|
||||
nokeys = ISC_TRUE;
|
||||
}
|
||||
|
||||
warnifallksk(gdb);
|
||||
|
||||
if (IS_NSEC3) {
|
||||
unsigned int max;
|
||||
result = dns_nsec3_maxiterations(gdb, NULL, mctx, &max);
|
||||
@@ -3814,8 +3850,6 @@ main(int argc, char *argv[]) {
|
||||
"strength. Maximum iterations allowed %u.", max);
|
||||
}
|
||||
|
||||
warnifallksk(gdb);
|
||||
|
||||
gversion = NULL;
|
||||
result = dns_db_newversion(gdb, &gversion);
|
||||
check_result(result, "dns_db_newversion()");
|
||||
@@ -3895,6 +3929,7 @@ main(int argc, char *argv[]) {
|
||||
RUNTIME_CHECK(isc_mutex_init(&statslock) == ISC_R_SUCCESS);
|
||||
|
||||
presign();
|
||||
TIME_NOW(&sign_start);
|
||||
signapex();
|
||||
if (!finished) {
|
||||
/*
|
||||
@@ -3919,6 +3954,7 @@ main(int argc, char *argv[]) {
|
||||
isc_taskmgr_destroy(&taskmgr);
|
||||
isc_mem_put(mctx, tasks, ntasks * sizeof(isc_task_t *));
|
||||
postsign();
|
||||
TIME_NOW(&sign_finish);
|
||||
verifyzone();
|
||||
|
||||
if (outputformat != dns_masterformat_text) {
|
||||
@@ -3972,7 +4008,8 @@ main(int argc, char *argv[]) {
|
||||
|
||||
if (printstats) {
|
||||
TIME_NOW(&timer_finish);
|
||||
print_stats(&timer_start, &timer_finish);
|
||||
print_stats(&timer_start, &timer_finish,
|
||||
&sign_start, &sign_finish);
|
||||
}
|
||||
|
||||
return (0);
|
||||
|
||||
@@ -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.45 2009/12/04 01:13:44 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<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">dnssec-signzone</code> [<code class="option">-a</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-d <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] [<code class="option">-e <em class="replaceable"><code>end-time</code></em></code>] [<code class="option">-f <em class="replaceable"><code>output-file</code></em></code>] [<code class="option">-g</code>] [<code class="option">-h</code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-k <em class="replaceable"><code>key</code></em></code>] [<code class="option">-l <em class="replaceable"><code>domain</code></em></code>] [<code class="option">-i <em class="replaceable"><code>interval</code></em></code>] [<code class="option">-I <em class="replaceable"><code>input-format</code></em></code>] [<code class="option">-j <em class="replaceable"><code>jitter</code></em></code>] [<code class="option">-N <em class="replaceable"><code>soa-serial-format</code></em></code>] [<code class="option">-o <em class="replaceable"><code>origin</code></em></code>] [<code class="option">-O <em class="replaceable"><code>output-format</code></em></code>] [<code class="option">-p</code>] [<code class="option">-P</code>] [<code class="option">-r <em class="replaceable"><code>randomdev</code></em></code>] [<code class="option">-S</code>] [<code class="option">-s <em class="replaceable"><code>start-time</code></em></code>] [<code class="option">-T <em class="replaceable"><code>ttl</code></em></code>] [<code class="option">-t</code>] [<code class="option">-u</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-x</code>] [<code class="option">-z</code>] [<code class="option">-3 <em class="replaceable"><code>salt</code></em></code>] [<code class="option">-H <em class="replaceable"><code>iterations</code></em></code>] [<code class="option">-A</code>] {zonefile} [key...]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543596"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543597"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">dnssec-signzone</strong></span>
|
||||
signs a zone. It generates
|
||||
NSEC and RRSIG records and produces a signed version of the
|
||||
@@ -43,7 +43,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543611"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543612"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-a</span></dt>
|
||||
<dd><p>
|
||||
@@ -379,7 +379,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544896"></a><h2>EXAMPLE</h2>
|
||||
<a name="id2544965"></a><h2>EXAMPLE</h2>
|
||||
<p>
|
||||
The following command signs the <strong class="userinput"><code>example.com</code></strong>
|
||||
zone with the DSA key generated by <span><strong class="command">dnssec-keygen</strong></span>
|
||||
@@ -409,14 +409,14 @@ db.example.com.signed
|
||||
%</pre>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545019"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2545020"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
|
||||
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
|
||||
<em class="citetitle">RFC 4033</em>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545044"></a><h2>AUTHOR</h2>
|
||||
<a name="id2545045"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
+15
-10
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007, 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2007, 2009-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 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: dnssectool.c,v 1.60 2010/01/19 23:48:56 tbox Exp $ */
|
||||
/* $Id: dnssectool.c,v 1.58.36.5 2011/10/21 03:56:55 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -406,19 +406,24 @@ set_keyversion(dst_key_t *key) {
|
||||
}
|
||||
|
||||
isc_boolean_t
|
||||
key_collision(isc_uint16_t id, dns_name_t *name, const char *dir,
|
||||
dns_secalg_t alg, isc_mem_t *mctx, isc_boolean_t *exact)
|
||||
key_collision(dst_key_t *dstkey, dns_name_t *name, const char *dir,
|
||||
isc_mem_t *mctx, isc_boolean_t *exact)
|
||||
{
|
||||
isc_result_t result;
|
||||
isc_boolean_t conflict = ISC_FALSE;
|
||||
dns_dnsseckeylist_t matchkeys;
|
||||
dns_dnsseckey_t *key = NULL;
|
||||
isc_uint16_t oldid, diff;
|
||||
isc_uint16_t bits = DNS_KEYFLAG_REVOKE; /* flag bits to look for */
|
||||
isc_uint16_t id, oldid;
|
||||
isc_uint32_t rid, roldid;
|
||||
dns_secalg_t alg;
|
||||
|
||||
if (exact != NULL)
|
||||
*exact = ISC_FALSE;
|
||||
|
||||
id = dst_key_id(dstkey);
|
||||
rid = dst_key_rid(dstkey);
|
||||
alg = dst_key_alg(dstkey);
|
||||
|
||||
ISC_LIST_INIT(matchkeys);
|
||||
result = dns_dnssec_findmatchingkeys(name, dir, mctx, &matchkeys);
|
||||
if (result == ISC_R_NOTFOUND)
|
||||
@@ -430,10 +435,11 @@ key_collision(isc_uint16_t id, dns_name_t *name, const char *dir,
|
||||
goto next;
|
||||
|
||||
oldid = dst_key_id(key->key);
|
||||
diff = (oldid > id) ? (oldid - id) : (id - oldid);
|
||||
if ((diff & ~bits) == 0) {
|
||||
roldid = dst_key_rid(key->key);
|
||||
|
||||
if (oldid == rid || roldid == id || id == oldid) {
|
||||
conflict = ISC_TRUE;
|
||||
if (diff != 0) {
|
||||
if (id != oldid) {
|
||||
if (verbose > 1)
|
||||
fprintf(stderr, "Key ID %d could "
|
||||
"collide with %d\n",
|
||||
@@ -461,4 +467,3 @@ key_collision(isc_uint16_t id, dns_name_t *name, const char *dir,
|
||||
|
||||
return (conflict);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2007-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 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: dnssectool.h,v 1.31 2010/01/19 23:48:56 tbox Exp $ */
|
||||
/* $Id: dnssectool.h,v 1.29.36.4 2011/10/20 23:46:04 tbox Exp $ */
|
||||
|
||||
#ifndef DNSSECTOOL_H
|
||||
#define DNSSECTOOL_H 1
|
||||
@@ -78,6 +78,7 @@ void
|
||||
set_keyversion(dst_key_t *key);
|
||||
|
||||
isc_boolean_t
|
||||
key_collision(isc_uint16_t id, dns_name_t *name, const char *dir,
|
||||
dns_secalg_t alg, isc_mem_t *mctx, isc_boolean_t *exact);
|
||||
key_collision(dst_key_t *key, dns_name_t *name, const char *dir,
|
||||
isc_mem_t *mctx, isc_boolean_t *exact);
|
||||
|
||||
#endif /* DNSSEC_DNSSECTOOL_H */
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
Makefile
|
||||
.libs
|
||||
*.la
|
||||
*.lo
|
||||
named
|
||||
named-symtbl.c
|
||||
lwresd
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2004-2010, 2012 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.109 2009/12/05 23:31:40 each Exp $
|
||||
# $Id: Makefile.in,v 1.109.2.3 2010/11/18 23:22:45 marka Exp $
|
||||
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
@@ -118,7 +118,7 @@ main.@O@: main.c
|
||||
-DNS_LOCALSTATEDIR=\"${localstatedir}\" \
|
||||
-DNS_SYSCONFDIR=\"${sysconfdir}\" -c ${srcdir}/main.c
|
||||
|
||||
bind.keys.h: ${top_srcdir}/bind.keys
|
||||
bind.keys.h: ${top_srcdir}/bind.keys ${top_srcdir}/bind.keys
|
||||
${PERL} ${srcdir}/bindkeys.pl < ${top_srcdir}/bind.keys > $@
|
||||
|
||||
config.@O@: config.c bind.keys.h
|
||||
@@ -143,7 +143,10 @@ docclean manclean maintainer-clean::
|
||||
rm -f ${MANOBJS}
|
||||
|
||||
clean distclean maintainer-clean::
|
||||
rm -f ${TARGETS} ${OBJS} bind.keys.h
|
||||
rm -f ${TARGETS} ${OBJS}
|
||||
|
||||
maintainer-clean::
|
||||
rm -f bind.keys.h
|
||||
|
||||
bind9.xsl.h: bind9.xsl ${srcdir}/convertxsl.pl
|
||||
${PERL} ${srcdir}/convertxsl.pl < ${srcdir}/bind9.xsl > bind9.xsl.h
|
||||
|
||||
+98
-8
@@ -1,17 +1,107 @@
|
||||
/*
|
||||
* Generated by bindkeys.pl 1.3.104.2 2010/06/20 23:46:24 tbox Exp
|
||||
* From
|
||||
*/
|
||||
#define TRUSTED_KEYS "\
|
||||
/* $Id$ */\n\
|
||||
# The bind.keys file is used to override built-in DNSSEC trust anchors\n\
|
||||
# which are included as part of BIND 9. As of the current release (BIND\n\
|
||||
# 9.7), the only trust anchor it sets is the one for the ISC DNSSEC\n\
|
||||
# Lookaside Validation zone (\"dlv.isc.org\"). Trust anchors for any other\n\
|
||||
# zones MUST be configured elsewhere; if they are configured here, they\n\
|
||||
# will not be recognized or used by named.\n\
|
||||
#\n\
|
||||
# This file also contains a copy of the trust anchor for the DNS root zone\n\
|
||||
# (\".\"). However, named does not use it; it is provided here for\n\
|
||||
# informational purposes only. To switch on DNSSEC validation at the\n\
|
||||
# root, the root key below can be copied into named.conf.\n\
|
||||
#\n\
|
||||
# The built-in DLV trust anchor in this file is used directly by named.\n\
|
||||
# However, it is not activated unless specifically switched on. To use\n\
|
||||
# the DLV key, set \"dnssec-lookaside auto;\" in the named.conf options.\n\
|
||||
# Without this option being set, the key in this file is ignored.\n\
|
||||
#\n\
|
||||
# This file is NOT expected to be user-configured.\n\
|
||||
#\n\
|
||||
# These keys are current as of January 2011. If any key fails to\n\
|
||||
# initialize correctly, it may have expired. In that event you should\n\
|
||||
# replace this file with a current version. The latest version of\n\
|
||||
# bind.keys can always be obtained from ISC at https://www.isc.org/bind-keys.\n\
|
||||
\n\
|
||||
trusted-keys {\n\
|
||||
# NOTE: This key is current as of October 2009.\n\
|
||||
# If it fails to initialize correctly, it may have expired;\n\
|
||||
# see https://www.isc.org/solutions/dlv for a replacement.\n\
|
||||
dlv.isc.org. 257 3 5 \"BEAAAAPHMu/5onzrEE7z1egmhg/WPO0+juoZrW3euWEn4MxDCE1+lLy2 brhQv5rN32RKtMzX6Mj70jdzeND4XknW58dnJNPCxn8+jAGl2FZLK8t+ 1uq4W+nnA3qO2+DL+k6BD4mewMLbIYFwe0PG73Te9fZ2kJb56dhgMde5 ymX4BI/oQ+cAK50/xvJv00Frf8kw6ucMTwFlgPe+jnGxPPEmHAte/URk Y62ZfkLoBAADLHQ9IrS2tryAe7mbBZVcOwIeU/Rw/mRx/vwwMCTgNboM QKtUdvNXDrYJDSHZws3xiRXF1Rf+al9UmZfSav/4NWLKjHzpT59k/VSt TDN0YUuWrBNh\";\n\
|
||||
# ISC DLV: See https://www.isc.org/solutions/dlv for details.\n\
|
||||
# NOTE: This key is activated by setting \"dnssec-lookaside auto;\"\n\
|
||||
# in named.conf.\n\
|
||||
dlv.isc.org. 257 3 5 \"BEAAAAPHMu/5onzrEE7z1egmhg/WPO0+juoZrW3euWEn4MxDCE1+lLy2\n\
|
||||
brhQv5rN32RKtMzX6Mj70jdzeND4XknW58dnJNPCxn8+jAGl2FZLK8t+\n\
|
||||
1uq4W+nnA3qO2+DL+k6BD4mewMLbIYFwe0PG73Te9fZ2kJb56dhgMde5\n\
|
||||
ymX4BI/oQ+cAK50/xvJv00Frf8kw6ucMTwFlgPe+jnGxPPEmHAte/URk\n\
|
||||
Y62ZfkLoBAADLHQ9IrS2tryAe7mbBZVcOwIeU/Rw/mRx/vwwMCTgNboM\n\
|
||||
QKtUdvNXDrYJDSHZws3xiRXF1Rf+al9UmZfSav/4NWLKjHzpT59k/VSt\n\
|
||||
TDN0YUuWrBNh\";\n\
|
||||
\n\
|
||||
# ROOT KEY: See https://data.iana.org/root-anchors/root-anchors.xml\n\
|
||||
# for current trust anchor information.\n\
|
||||
# NOTE: This key not active; to use it, copy it into a managed-keys\n\
|
||||
# statement in named.conf\n\
|
||||
. initial-key 257 3 8 \"AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF\n\
|
||||
FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX\n\
|
||||
bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD\n\
|
||||
X6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpz\n\
|
||||
W5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relS\n\
|
||||
Qageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulq\n\
|
||||
QxA+Uk1ihz0=\";\n\
|
||||
};\n\
|
||||
"
|
||||
|
||||
#define MANAGED_KEYS "\
|
||||
/* $Id$ */\n\
|
||||
# The bind.keys file is used to override built-in DNSSEC trust anchors\n\
|
||||
# which are included as part of BIND 9. As of the current release (BIND\n\
|
||||
# 9.7), the only trust anchor it sets is the one for the ISC DNSSEC\n\
|
||||
# Lookaside Validation zone (\"dlv.isc.org\"). Trust anchors for any other\n\
|
||||
# zones MUST be configured elsewhere; if they are configured here, they\n\
|
||||
# will not be recognized or used by named.\n\
|
||||
#\n\
|
||||
# This file also contains a copy of the trust anchor for the DNS root zone\n\
|
||||
# (\".\"). However, named does not use it; it is provided here for\n\
|
||||
# informational purposes only. To switch on DNSSEC validation at the\n\
|
||||
# root, the root key below can be copied into named.conf.\n\
|
||||
#\n\
|
||||
# The built-in DLV trust anchor in this file is used directly by named.\n\
|
||||
# However, it is not activated unless specifically switched on. To use\n\
|
||||
# the DLV key, set \"dnssec-lookaside auto;\" in the named.conf options.\n\
|
||||
# Without this option being set, the key in this file is ignored.\n\
|
||||
#\n\
|
||||
# This file is NOT expected to be user-configured.\n\
|
||||
#\n\
|
||||
# These keys are current as of January 2011. If any key fails to\n\
|
||||
# initialize correctly, it may have expired. In that event you should\n\
|
||||
# replace this file with a current version. The latest version of\n\
|
||||
# bind.keys can always be obtained from ISC at https://www.isc.org/bind-keys.\n\
|
||||
\n\
|
||||
managed-keys {\n\
|
||||
# NOTE: This key is current as of October 2009.\n\
|
||||
# If it fails to initialize correctly, it may have expired;\n\
|
||||
# see https://www.isc.org/solutions/dlv for a replacement.\n\
|
||||
dlv.isc.org. initial-key 257 3 5 \"BEAAAAPHMu/5onzrEE7z1egmhg/WPO0+juoZrW3euWEn4MxDCE1+lLy2 brhQv5rN32RKtMzX6Mj70jdzeND4XknW58dnJNPCxn8+jAGl2FZLK8t+ 1uq4W+nnA3qO2+DL+k6BD4mewMLbIYFwe0PG73Te9fZ2kJb56dhgMde5 ymX4BI/oQ+cAK50/xvJv00Frf8kw6ucMTwFlgPe+jnGxPPEmHAte/URk Y62ZfkLoBAADLHQ9IrS2tryAe7mbBZVcOwIeU/Rw/mRx/vwwMCTgNboM QKtUdvNXDrYJDSHZws3xiRXF1Rf+al9UmZfSav/4NWLKjHzpT59k/VSt TDN0YUuWrBNh\";\n\
|
||||
# ISC DLV: See https://www.isc.org/solutions/dlv for details.\n\
|
||||
# NOTE: This key is activated by setting \"dnssec-lookaside auto;\"\n\
|
||||
# in named.conf.\n\
|
||||
dlv.isc.org. initial-key 257 3 5 \"BEAAAAPHMu/5onzrEE7z1egmhg/WPO0+juoZrW3euWEn4MxDCE1+lLy2\n\
|
||||
brhQv5rN32RKtMzX6Mj70jdzeND4XknW58dnJNPCxn8+jAGl2FZLK8t+\n\
|
||||
1uq4W+nnA3qO2+DL+k6BD4mewMLbIYFwe0PG73Te9fZ2kJb56dhgMde5\n\
|
||||
ymX4BI/oQ+cAK50/xvJv00Frf8kw6ucMTwFlgPe+jnGxPPEmHAte/URk\n\
|
||||
Y62ZfkLoBAADLHQ9IrS2tryAe7mbBZVcOwIeU/Rw/mRx/vwwMCTgNboM\n\
|
||||
QKtUdvNXDrYJDSHZws3xiRXF1Rf+al9UmZfSav/4NWLKjHzpT59k/VSt\n\
|
||||
TDN0YUuWrBNh\";\n\
|
||||
\n\
|
||||
# ROOT KEY: See https://data.iana.org/root-anchors/root-anchors.xml\n\
|
||||
# for current trust anchor information.\n\
|
||||
# NOTE: This key not active; to use it, copy it into a managed-keys\n\
|
||||
# statement in named.conf\n\
|
||||
. initial-key 257 3 8 \"AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF\n\
|
||||
FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX\n\
|
||||
bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD\n\
|
||||
X6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpz\n\
|
||||
W5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relS\n\
|
||||
Qageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulq\n\
|
||||
QxA+Uk1ihz0=\";\n\
|
||||
};\n\
|
||||
"
|
||||
|
||||
+20
-2
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env perl
|
||||
#
|
||||
# Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2009, 2010, 2012 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,19 +14,37 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: bindkeys.pl,v 1.3 2009/09/01 07:14:25 each Exp $
|
||||
# $Id: bindkeys.pl,v 1.3.104.2 2010/06/20 23:46:24 tbox Exp $
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
my $rev = '$Id: bindkeys.pl,v 1.3.104.2 2010/06/20 23:46:24 tbox Exp $';
|
||||
$rev =~ s/\$//g;
|
||||
$rev =~ s/,v//g;
|
||||
$rev =~ s/Id: //;
|
||||
|
||||
my $keys = "";
|
||||
|
||||
my $lines;
|
||||
while (<>) {
|
||||
chomp;
|
||||
if (/\/\* .Id:.* \*\//) {
|
||||
$keys = $_;
|
||||
next;
|
||||
}
|
||||
s/\"/\\\"/g;
|
||||
s/$/\\n\\/;
|
||||
$lines .= $_ . "\n";
|
||||
}
|
||||
|
||||
$keys =~ s/\$//g;
|
||||
$keys =~ s/\/\* Id: //;
|
||||
$keys =~ s/\*\/.*//;
|
||||
$keys =~ s/,v//;
|
||||
|
||||
print "/*\n * Generated by $rev \n * From $keys\n */\n";
|
||||
|
||||
my $mkey = '#define MANAGED_KEYS "\\' . "\n" . $lines . "\"\n";
|
||||
|
||||
$lines =~ s/managed-keys/trusted-keys/;
|
||||
|
||||
+5
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2007, 2009, 2010, 2012 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: builtin.c,v 1.15 2009/03/01 02:45:38 each Exp $ */
|
||||
/* $Id: builtin.c,v 1.15.154.5 2012/01/11 20:19:07 ckb Exp $ */
|
||||
|
||||
/*! \file
|
||||
* \brief
|
||||
@@ -127,13 +127,16 @@ do_authors_lookup(dns_sdblookup_t *lookup) {
|
||||
const char **p;
|
||||
static const char *authors[] = {
|
||||
"Mark Andrews",
|
||||
"Curtis Blackburn",
|
||||
"James Brister",
|
||||
"Ben Cottrell",
|
||||
"Michael Graff",
|
||||
"Andreas Gustafsson",
|
||||
"Bob Halley",
|
||||
"Evan Hunt",
|
||||
"JINMEI Tatuya",
|
||||
"David Lawrence",
|
||||
"Scott Mann",
|
||||
"Danny Mayer",
|
||||
"Damien Neil",
|
||||
"Matt Nelson",
|
||||
|
||||
+29
-11
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: client.c,v 1.266 2009/10/26 23:14:53 each Exp $ */
|
||||
/* $Id: client.c,v 1.266.36.7 2012/01/31 23:46:14 tbox Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -633,6 +633,7 @@ ns_client_endrequest(ns_client_t *client) {
|
||||
dns_message_puttemprdataset(client->message, &client->opt);
|
||||
}
|
||||
|
||||
client->signer = NULL;
|
||||
client->udpsize = 512;
|
||||
client->extflags = 0;
|
||||
client->ednsversion = -1;
|
||||
@@ -933,6 +934,15 @@ ns_client_send(ns_client_t *client) {
|
||||
render_opts = 0;
|
||||
else
|
||||
render_opts = DNS_MESSAGERENDER_OMITDNSSEC;
|
||||
|
||||
preferred_glue = 0;
|
||||
if (client->view != NULL) {
|
||||
if (client->view->preferred_glue == dns_rdatatype_a)
|
||||
preferred_glue = DNS_MESSAGERENDER_PREFER_A;
|
||||
else if (client->view->preferred_glue == dns_rdatatype_aaaa)
|
||||
preferred_glue = DNS_MESSAGERENDER_PREFER_AAAA;
|
||||
}
|
||||
|
||||
#ifdef ALLOW_FILTER_AAAA_ON_V4
|
||||
/*
|
||||
* filter-aaaa-on-v4 yes or break-dnssec option to suppress
|
||||
@@ -941,17 +951,15 @@ ns_client_send(ns_client_t *client) {
|
||||
* that we have both AAAA and A records,
|
||||
* and that we either have no signatures that the client wants
|
||||
* or we are supposed to break DNSSEC.
|
||||
*
|
||||
* Override preferred glue if necessary.
|
||||
*/
|
||||
if ((client->attributes & NS_CLIENTATTR_FILTER_AAAA) != 0)
|
||||
if ((client->attributes & NS_CLIENTATTR_FILTER_AAAA) != 0) {
|
||||
render_opts |= DNS_MESSAGERENDER_FILTER_AAAA;
|
||||
#endif
|
||||
preferred_glue = 0;
|
||||
if (client->view != NULL) {
|
||||
if (client->view->preferred_glue == dns_rdatatype_a)
|
||||
if (preferred_glue == DNS_MESSAGERENDER_PREFER_AAAA)
|
||||
preferred_glue = DNS_MESSAGERENDER_PREFER_A;
|
||||
else if (client->view->preferred_glue == dns_rdatatype_aaaa)
|
||||
preferred_glue = DNS_MESSAGERENDER_PREFER_AAAA;
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XXXRTH The following doesn't deal with TCP buffer resizing.
|
||||
@@ -1312,6 +1320,12 @@ ns_client_isself(dns_view_t *myview, dns_tsigkey_t *mykey,
|
||||
|
||||
UNUSED(arg);
|
||||
|
||||
/*
|
||||
* ns_g_server->interfacemgr is task exclusive locked.
|
||||
*/
|
||||
if (ns_g_server->interfacemgr == NULL)
|
||||
return (ISC_TRUE);
|
||||
|
||||
if (!ns_interfacemgr_listeningon(ns_g_server->interfacemgr, dstaddr))
|
||||
return (ISC_FALSE);
|
||||
|
||||
@@ -1865,13 +1879,13 @@ client_request(isc_task_t *task, isc_event_t *event) {
|
||||
client->view->recursionacl,
|
||||
ISC_TRUE) == ISC_R_SUCCESS &&
|
||||
ns_client_checkaclsilent(client, NULL,
|
||||
client->view->queryacl,
|
||||
client->view->cacheacl,
|
||||
ISC_TRUE) == ISC_R_SUCCESS &&
|
||||
ns_client_checkaclsilent(client, &client->destaddr,
|
||||
client->view->recursiononacl,
|
||||
ISC_TRUE) == ISC_R_SUCCESS &&
|
||||
ns_client_checkaclsilent(client, &client->destaddr,
|
||||
client->view->queryonacl,
|
||||
client->view->cacheonacl,
|
||||
ISC_TRUE) == ISC_R_SUCCESS)
|
||||
ra = ISC_TRUE;
|
||||
|
||||
@@ -2093,12 +2107,16 @@ 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;
|
||||
client->recursionquota = NULL;
|
||||
client->interface = NULL;
|
||||
client->peeraddr_valid = ISC_FALSE;
|
||||
#ifdef ALLOW_FILTER_AAAA_ON_V4
|
||||
client->filter_aaaa = dns_v4_aaaa_ok;
|
||||
#endif
|
||||
ISC_EVENT_INIT(&client->ctlevent, sizeof(client->ctlevent), 0, NULL,
|
||||
NS_EVENT_CLIENTCONTROL, client_start, client, client,
|
||||
NULL, NULL);
|
||||
|
||||
+5
-1
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: config.c,v 1.108 2010/05/14 23:50:38 tbox Exp $ */
|
||||
/* $Id: config.c,v 1.106.4.6 2010/08/11 18:19:54 each Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -80,6 +80,7 @@ options {\n\
|
||||
bindkeys-file \"" NS_SYSCONFDIR "/bind.keys\";\n\
|
||||
port 53;\n\
|
||||
recursing-file \"named.recursing\";\n\
|
||||
secroots-file \"named.secroots\";\n\
|
||||
"
|
||||
#ifdef PATH_RANDOMDEV
|
||||
"\
|
||||
@@ -158,9 +159,11 @@ options {\n\
|
||||
max-clients-per-query 100;\n\
|
||||
zero-no-soa-ttl-cache no;\n\
|
||||
nsec3-test-zone no;\n\
|
||||
allow-new-zones no;\n\
|
||||
"
|
||||
#ifdef ALLOW_FILTER_AAAA_ON_V4
|
||||
" filter-aaaa-on-v4 no;\n\
|
||||
filter-aaaa { any; };\n\
|
||||
"
|
||||
#endif
|
||||
|
||||
@@ -216,6 +219,7 @@ options {\n\
|
||||
view \"_bind\" chaos {\n\
|
||||
recursion no;\n\
|
||||
notify no;\n\
|
||||
allow-new-zones no;\n\
|
||||
\n\
|
||||
zone \"version.bind\" chaos {\n\
|
||||
type master;\n\
|
||||
|
||||
+16
-4
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2009, 2010 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.36 2009/10/12 20:48:11 each Exp $ */
|
||||
/* $Id: control.c,v 1.36.50.5 2010/12/03 22:04:49 each Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -129,11 +129,16 @@ ns_control_docommand(isccc_sexpr_t *message, isc_buffer_t *text) {
|
||||
* isc_app_shutdown below.
|
||||
*/
|
||||
#endif
|
||||
/* Do not flush master files */
|
||||
ns_server_flushonshutdown(ns_g_server, ISC_FALSE);
|
||||
ns_os_shutdownmsg(command, text);
|
||||
isc_app_shutdown();
|
||||
result = ISC_R_SUCCESS;
|
||||
} else if (command_compare(command, NS_COMMAND_STOP)) {
|
||||
/*
|
||||
* "stop" is the same as "halt" except it does
|
||||
* flush master files.
|
||||
*/
|
||||
#ifdef HAVE_LIBSCF
|
||||
if (ns_smf_got_instance == 1 && ns_smf_chroot == 1) {
|
||||
result = ns_smf_add_message(text);
|
||||
@@ -153,6 +158,8 @@ ns_control_docommand(isccc_sexpr_t *message, isc_buffer_t *text) {
|
||||
} else if (command_compare(command, NS_COMMAND_DUMPDB)) {
|
||||
ns_server_dumpdb(ns_g_server, command);
|
||||
result = ISC_R_SUCCESS;
|
||||
} else if (command_compare(command, NS_COMMAND_SECROOTS)) {
|
||||
result = ns_server_dumpsecroots(ns_g_server, command);
|
||||
} else if (command_compare(command, NS_COMMAND_TRACE)) {
|
||||
result = ns_server_setdebuglevel(ns_g_server, command);
|
||||
} else if (command_compare(command, NS_COMMAND_NOTRACE)) {
|
||||
@@ -187,8 +194,13 @@ ns_control_docommand(isccc_sexpr_t *message, isc_buffer_t *text) {
|
||||
result = ns_server_notifycommand(ns_g_server, command, text);
|
||||
} else if (command_compare(command, NS_COMMAND_VALIDATION)) {
|
||||
result = ns_server_validation(ns_g_server, command);
|
||||
} else if (command_compare(command, NS_COMMAND_SIGN)) {
|
||||
result = ns_server_sign(ns_g_server, command);
|
||||
} else if (command_compare(command, NS_COMMAND_SIGN) ||
|
||||
command_compare(command, NS_COMMAND_LOADKEYS)) {
|
||||
result = ns_server_rekey(ns_g_server, command);
|
||||
} else if (command_compare(command, NS_COMMAND_ADDZONE)) {
|
||||
result = ns_server_add_zone(ns_g_server, command);
|
||||
} else if (command_compare(command, NS_COMMAND_DELZONE)) {
|
||||
result = ns_server_del_zone(ns_g_server, command);
|
||||
} else {
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL,
|
||||
NS_LOGMODULE_CONTROL, ISC_LOG_WARNING,
|
||||
|
||||
+9
-11
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2008, 2011, 2012 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: controlconf.c,v 1.60 2008/07/23 23:27:54 marka Exp $ */
|
||||
/* $Id: controlconf.c,v 1.60.290.3 2011/12/22 08:11:09 marka Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -373,14 +373,7 @@ control_recvmessage(isc_task_t *task, isc_event_t *event) {
|
||||
if (result == ISC_R_SUCCESS)
|
||||
break;
|
||||
isc_mem_put(listener->mctx, secret.rstart, REGION_SIZE(secret));
|
||||
if (result == ISCCC_R_BADAUTH) {
|
||||
/*
|
||||
* For some reason, request is non-NULL when
|
||||
* isccc_cc_fromwire returns ISCCC_R_BADAUTH.
|
||||
*/
|
||||
if (request != NULL)
|
||||
isccc_sexpr_free(&request);
|
||||
} else {
|
||||
if (result != ISCCC_R_BADAUTH) {
|
||||
log_invalid(&conn->ccmsg, result);
|
||||
goto cleanup;
|
||||
}
|
||||
@@ -859,7 +852,7 @@ get_rndckey(isc_mem_t *mctx, controlkeylist_t *keyids) {
|
||||
cfg_obj_log(key, ns_g_lctx, ISC_LOG_WARNING,
|
||||
"secret for key '%s' on command channel: %s",
|
||||
keyid->keyname, isc_result_totext(result));
|
||||
CHECK(result);
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
keyid->secret.length = isc_buffer_usedlength(&b);
|
||||
@@ -1148,6 +1141,11 @@ add_listener(ns_controls_t *cp, controllistener_t **listenerp,
|
||||
if (result == ISC_R_SUCCESS)
|
||||
isc_socket_setname(listener->sock, "control", NULL);
|
||||
|
||||
#ifndef ISC_ALLOW_MAPPED
|
||||
if (result == ISC_R_SUCCESS)
|
||||
isc_socket_ipv6only(listener->sock, ISC_TRUE);
|
||||
#endif
|
||||
|
||||
if (result == ISC_R_SUCCESS)
|
||||
result = isc_socket_bind(listener->sock, &listener->address,
|
||||
ISC_SOCKET_REUSEADDRESS);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env perl
|
||||
#
|
||||
# Copyright (C) 2006-2008 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2006-2008, 2012 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
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 2012 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.h,v 1.91 2009/10/26 23:14:53 each Exp $ */
|
||||
/* $Id: client.h,v 1.91.36.2 2012/01/31 23:46:15 tbox Exp $ */
|
||||
|
||||
#ifndef NAMED_CLIENT_H
|
||||
#define NAMED_CLIENT_H 1
|
||||
@@ -141,6 +141,9 @@ struct ns_client {
|
||||
isc_netaddr_t destaddr;
|
||||
struct in6_pktinfo pktinfo;
|
||||
isc_event_t ctlevent;
|
||||
#ifdef ALLOW_FILTER_AAAA_ON_V4
|
||||
dns_v4_aaaa_t filter_aaaa;
|
||||
#endif
|
||||
/*%
|
||||
* Information about recent FORMERR response(s), for
|
||||
* FORMERR loop avoidance. This is separate for each
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007, 2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2009, 2010 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.h,v 1.27 2009/10/12 23:48:01 tbox Exp $ */
|
||||
/* $Id: control.h,v 1.27.50.4 2010/08/16 22:27:16 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_CONTROL_H
|
||||
#define NAMED_CONTROL_H 1
|
||||
@@ -42,6 +42,7 @@
|
||||
#define NS_COMMAND_DUMPSTATS "stats"
|
||||
#define NS_COMMAND_QUERYLOG "querylog"
|
||||
#define NS_COMMAND_DUMPDB "dumpdb"
|
||||
#define NS_COMMAND_SECROOTS "secroots"
|
||||
#define NS_COMMAND_TRACE "trace"
|
||||
#define NS_COMMAND_NOTRACE "notrace"
|
||||
#define NS_COMMAND_FLUSH "flush"
|
||||
@@ -58,6 +59,9 @@
|
||||
#define NS_COMMAND_NOTIFY "notify"
|
||||
#define NS_COMMAND_VALIDATION "validation"
|
||||
#define NS_COMMAND_SIGN "sign"
|
||||
#define NS_COMMAND_LOADKEYS "loadkeys"
|
||||
#define NS_COMMAND_ADDZONE "addzone"
|
||||
#define NS_COMMAND_DELZONE "delzone"
|
||||
|
||||
isc_result_t
|
||||
ns_controls_create(ns_server_t *server, ns_controls_t **ctrlsp);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: globals.h,v 1.86 2009/10/05 17:30:49 fdupont Exp $ */
|
||||
/* $Id: globals.h,v 1.86.60.5 2011/09/05 23:45:31 tbox Exp $ */
|
||||
|
||||
#ifndef NAMED_GLOBALS_H
|
||||
#define NAMED_GLOBALS_H 1
|
||||
@@ -26,6 +26,7 @@
|
||||
#include <isc/log.h>
|
||||
#include <isc/net.h>
|
||||
|
||||
#include <isccfg/aclconf.h>
|
||||
#include <isccfg/cfg.h>
|
||||
|
||||
#include <dns/zone.h>
|
||||
@@ -102,6 +103,7 @@ EXTERN const char * lwresd_g_resolvconffile INIT("/etc"
|
||||
EXTERN isc_boolean_t ns_g_conffileset INIT(ISC_FALSE);
|
||||
EXTERN isc_boolean_t lwresd_g_useresolvconf INIT(ISC_FALSE);
|
||||
EXTERN isc_uint16_t ns_g_udpsize INIT(4096);
|
||||
EXTERN cfg_aclconfctx_t * ns_g_aclconfctx INIT(NULL);
|
||||
|
||||
/*
|
||||
* Initial resource limits.
|
||||
@@ -149,6 +151,8 @@ EXTERN int ns_g_listen INIT(3);
|
||||
EXTERN isc_time_t ns_g_boottime;
|
||||
EXTERN isc_boolean_t ns_g_memstatistics INIT(ISC_FALSE);
|
||||
EXTERN isc_boolean_t ns_g_clienttest INIT(ISC_FALSE);
|
||||
EXTERN isc_boolean_t ns_g_nosoa INIT(ISC_FALSE);
|
||||
EXTERN isc_boolean_t ns_g_noaa INIT(ISC_FALSE);
|
||||
|
||||
#undef EXTERN
|
||||
#undef INIT
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005, 2007, 2010 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: query.h,v 1.40 2007/06/19 23:46:59 tbox Exp $ */
|
||||
/* $Id: query.h,v 1.40.558.2 2010/09/24 08:30:58 tbox Exp $ */
|
||||
|
||||
#ifndef NAMED_QUERY_H
|
||||
#define NAMED_QUERY_H 1
|
||||
@@ -71,6 +71,8 @@ struct ns_query {
|
||||
#define NS_QUERYATTR_SECURE 0x0200
|
||||
#define NS_QUERYATTR_NOAUTHORITY 0x0400
|
||||
#define NS_QUERYATTR_NOADDITIONAL 0x0800
|
||||
#define NS_QUERYATTR_CACHEACLOKVALID 0x1000
|
||||
#define NS_QUERYATTR_CACHEACLOK 0x2000
|
||||
|
||||
isc_result_t
|
||||
ns_query_init(ns_client_t *client);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: server.h,v 1.106 2010/05/14 23:50:39 tbox Exp $ */
|
||||
/* $Id: server.h,v 1.104.8.6 2010/08/16 23:46:30 tbox Exp $ */
|
||||
|
||||
#ifndef NAMED_SERVER_H
|
||||
#define NAMED_SERVER_H 1
|
||||
@@ -54,6 +54,7 @@ struct ns_server {
|
||||
dns_acl_t *blackholeacl;
|
||||
char * statsfile; /*%< Statistics file name */
|
||||
char * dumpfile; /*%< Dump file name */
|
||||
char * secrootsfile; /*%< Secroots file name */
|
||||
char * bindkeysfile; /*%< bind.keys file name */
|
||||
char * recfile; /*%< Recursive file name */
|
||||
isc_boolean_t version_set; /*%< User has set version */
|
||||
@@ -244,6 +245,12 @@ ns_server_dumpstats(ns_server_t *server);
|
||||
isc_result_t
|
||||
ns_server_dumpdb(ns_server_t *server, char *args);
|
||||
|
||||
/*%
|
||||
* Dump the current security roots to the secroots file.
|
||||
*/
|
||||
isc_result_t
|
||||
ns_server_dumpsecroots(ns_server_t *server, char *args);
|
||||
|
||||
/*%
|
||||
* Change or increment the server debug level.
|
||||
*/
|
||||
@@ -288,11 +295,14 @@ ns_server_freeze(ns_server_t *server, isc_boolean_t freeze, char *args,
|
||||
isc_buffer_t *text);
|
||||
|
||||
/*%
|
||||
* Update a zone's DNSKEY set from the key repository, and re-sign the
|
||||
* zone if there were any changes.
|
||||
* Update a zone's DNSKEY set from the key repository. If
|
||||
* the command that triggered the call to this function was "sign",
|
||||
* then force a full signing of the zone. If it was "loadkeys",
|
||||
* then don't sign the zone; any needed changes to signatures can
|
||||
* take place incrementally.
|
||||
*/
|
||||
isc_result_t
|
||||
ns_server_sign(ns_server_t *server, char *args);
|
||||
ns_server_rekey(ns_server_t *server, char *args);
|
||||
|
||||
/*%
|
||||
* Dump the current recursive queries.
|
||||
@@ -312,4 +322,16 @@ ns_add_reserved_dispatch(ns_server_t *server, const isc_sockaddr_t *addr);
|
||||
isc_result_t
|
||||
ns_server_validation(ns_server_t *server, char *args);
|
||||
|
||||
/*%
|
||||
* Add a zone to a running process
|
||||
*/
|
||||
isc_result_t
|
||||
ns_server_add_zone(ns_server_t *server, char *args);
|
||||
|
||||
/*%
|
||||
* Deletes a zone from a running process
|
||||
*/
|
||||
isc_result_t
|
||||
ns_server_del_zone(ns_server_t *server, char *args);
|
||||
|
||||
#endif /* NAMED_SERVER_H */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2009, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: interfacemgr.c,v 1.95 2009/01/17 23:47:42 tbox Exp $ */
|
||||
/* $Id: interfacemgr.c,v 1.95.186.2 2011/03/12 04:58:24 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -379,7 +379,7 @@ ns_interface_setup(ns_interfacemgr_t *mgr, isc_sockaddr_t *addr,
|
||||
}
|
||||
}
|
||||
*ifpret = ifp;
|
||||
return (ISC_R_SUCCESS);
|
||||
return (result);
|
||||
|
||||
cleanup_interface:
|
||||
ISC_LIST_UNLINK(ifp->mgr->interfaces, ifp, link);
|
||||
@@ -964,7 +964,6 @@ isc_boolean_t
|
||||
ns_interfacemgr_listeningon(ns_interfacemgr_t *mgr, isc_sockaddr_t *addr) {
|
||||
isc_sockaddr_t *old;
|
||||
|
||||
old = ISC_LIST_HEAD(mgr->listenon);
|
||||
for (old = ISC_LIST_HEAD(mgr->listenon);
|
||||
old != NULL;
|
||||
old = ISC_LIST_NEXT(old, link))
|
||||
|
||||
+35
-22
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2007, 2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,12 +15,13 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: logconf.c,v 1.42 2007/06/19 23:46:59 tbox Exp $ */
|
||||
/* $Id: logconf.c,v 1.42.560.3 2011/03/05 23:51:37 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <isc/file.h>
|
||||
#include <isc/offset.h>
|
||||
#include <isc/result.h>
|
||||
#include <isc/stdio.h>
|
||||
@@ -130,7 +131,7 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
}
|
||||
|
||||
type = ISC_LOG_TONULL;
|
||||
|
||||
|
||||
if (fileobj != NULL) {
|
||||
const cfg_obj_t *pathobj = cfg_tuple_get(fileobj, "file");
|
||||
const cfg_obj_t *sizeobj = cfg_tuple_get(fileobj, "size");
|
||||
@@ -140,7 +141,7 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
isc_offset_t size = 0;
|
||||
|
||||
type = ISC_LOG_TOFILE;
|
||||
|
||||
|
||||
if (versionsobj != NULL && cfg_obj_isuint32(versionsobj))
|
||||
versions = cfg_obj_asuint32(versionsobj);
|
||||
if (versionsobj != NULL && cfg_obj_isstring(versionsobj) &&
|
||||
@@ -219,26 +220,38 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
|
||||
if (result == ISC_R_SUCCESS && type == ISC_LOG_TOFILE) {
|
||||
FILE *fp;
|
||||
|
||||
/*
|
||||
* Test that the file can be opened, since isc_log_open()
|
||||
* can't effectively report failures when called in
|
||||
* isc_log_doit().
|
||||
*/
|
||||
result = isc_stdio_open(dest.file.name, "a", &fp);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
isc_log_write(ns_g_lctx, CFG_LOGCATEGORY_CONFIG,
|
||||
NS_LOGMODULE_SERVER, ISC_LOG_ERROR,
|
||||
"logging channel '%s' file '%s': %s",
|
||||
channelname, dest.file.name,
|
||||
isc_result_totext(result));
|
||||
else
|
||||
(void)isc_stdio_close(fp);
|
||||
|
||||
/*
|
||||
* Allow named to continue by returning success.
|
||||
*/
|
||||
result = ISC_R_SUCCESS;
|
||||
* Test to make sure that file is a plain file.
|
||||
* Fix defect #22771
|
||||
*/
|
||||
result = isc_file_isplainfile(dest.file.name);
|
||||
if (result == ISC_R_SUCCESS ||
|
||||
result == ISC_R_FILENOTFOUND) {
|
||||
/*
|
||||
* Test that the file can be opened, since
|
||||
* isc_log_open() can't effectively report
|
||||
* failures when called in
|
||||
* isc_log_doit().
|
||||
*/
|
||||
result = isc_stdio_open(dest.file.name, "a", &fp);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
syslog(LOG_ERR,
|
||||
"isc_stdio_open '%s' failed: %s",
|
||||
dest.file.name,
|
||||
isc_result_totext(result));
|
||||
fprintf(stderr,
|
||||
"isc_stdio_open '%s' failed: %s",
|
||||
dest.file.name,
|
||||
isc_result_totext(result));
|
||||
} else
|
||||
(void)isc_stdio_close(fp);
|
||||
} else {
|
||||
syslog(LOG_ERR, "isc_file_isplainfile '%s' failed: %s",
|
||||
dest.file.name, isc_result_totext(result));
|
||||
fprintf(stderr, "isc_file_isplainfile '%s' failed: %s",
|
||||
dest.file.name, isc_result_totext(result));
|
||||
}
|
||||
}
|
||||
|
||||
return (result);
|
||||
|
||||
+1
-1
@@ -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.31 2009/07/11 01:12:45 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -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.27 2009/07/11 01:12:45 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -22,7 +22,7 @@
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
|
||||
<a name="id2476275"></a><div class="titlepage"></div>
|
||||
<a name="id2476274"></a><div class="titlepage"></div>
|
||||
<div class="refnamediv">
|
||||
<h2>Name</h2>
|
||||
<p><span class="application">lwresd</span> — lightweight resolver daemon</p>
|
||||
@@ -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="id2543467"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543469"></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
|
||||
@@ -67,7 +67,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543514"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543516"></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="id2543931"></a><h2>FILES</h2>
|
||||
<a name="id2543933"></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="id2543971"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2543973"></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="id2544005"></a><h2>AUTHOR</h2>
|
||||
<a name="id2544007"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
+27
-3
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2009 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: main.c,v 1.175 2009/10/05 17:30:49 fdupont Exp $ */
|
||||
/* $Id: main.c,v 1.175.60.7 2011/11/05 00:46:11 each Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -500,13 +500,17 @@ parse_command_line(int argc, char *argv[]) {
|
||||
/* XXXJAB should we make a copy? */
|
||||
ns_g_chrootdir = isc_commandline_argument;
|
||||
break;
|
||||
case 'T':
|
||||
case 'T': /* NOT DOCUMENTED */
|
||||
/*
|
||||
* clienttest: make clients single shot with their
|
||||
* own memory context.
|
||||
*/
|
||||
if (!strcmp(isc_commandline_argument, "clienttest"))
|
||||
ns_g_clienttest = ISC_TRUE;
|
||||
else if (!strcmp(isc_commandline_argument, "nosoa"))
|
||||
ns_g_nosoa = ISC_TRUE;
|
||||
else if (!strcmp(isc_commandline_argument, "noaa"))
|
||||
ns_g_noaa = ISC_TRUE;
|
||||
else if (!strcmp(isc_commandline_argument, "maxudp512"))
|
||||
maxudp = 512;
|
||||
else if (!strcmp(isc_commandline_argument, "maxudp1460"))
|
||||
@@ -542,6 +546,7 @@ parse_command_line(int argc, char *argv[]) {
|
||||
|
||||
argc -= isc_commandline_index;
|
||||
argv += isc_commandline_index;
|
||||
POST(argv);
|
||||
|
||||
if (argc > 0) {
|
||||
usage();
|
||||
@@ -772,6 +777,25 @@ setup(void) {
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN,
|
||||
ISC_LOG_NOTICE, "built with %s", ns_g_configargs);
|
||||
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN,
|
||||
ISC_LOG_NOTICE,
|
||||
"----------------------------------------------------");
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN,
|
||||
ISC_LOG_NOTICE,
|
||||
"BIND 9 is maintained by Internet Systems Consortium,");
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN,
|
||||
ISC_LOG_NOTICE,
|
||||
"Inc. (ISC), a non-profit 501(c)(3) public-benefit ");
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN,
|
||||
ISC_LOG_NOTICE,
|
||||
"corporation. Support and training for BIND 9 are ");
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN,
|
||||
ISC_LOG_NOTICE,
|
||||
"available at https://www.isc.org/support");
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL, NS_LOGMODULE_MAIN,
|
||||
ISC_LOG_NOTICE,
|
||||
"----------------------------------------------------");
|
||||
|
||||
dump_symboltable();
|
||||
|
||||
/*
|
||||
|
||||
+1
-1
@@ -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.41 2009/10/06 01:14:41 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and/or distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -12,7 +12,7 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: named.conf.5,v 1.42 2010/05/15 01:14:24 tbox Exp $
|
||||
.\" $Id$
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
@@ -252,8 +252,7 @@ options {
|
||||
disable\-algorithms \fIstring\fR { \fIstring\fR; ... };
|
||||
dnssec\-enable \fIboolean\fR;
|
||||
dnssec\-validation \fIboolean\fR;
|
||||
dnssec\-lookaside \fIstring\fR trust\-anchor \fIstring\fR;
|
||||
dnssec\-lookaside ( \fIauto\fR | \fIdomain\fR trust\-anchor \fIdomain\fR );
|
||||
dnssec\-lookaside ( \fIauto\fR | \fIno\fR | \fIdomain\fR trust\-anchor \fIdomain\fR );
|
||||
dnssec\-must\-be\-secure \fIstring\fR \fIboolean\fR;
|
||||
dnssec\-accept\-expired \fIboolean\fR;
|
||||
empty\-server \fIstring\fR;
|
||||
@@ -411,7 +410,7 @@ view \fIstring\fR \fIoptional_class\fR {
|
||||
disable\-algorithms \fIstring\fR { \fIstring\fR; ... };
|
||||
dnssec\-enable \fIboolean\fR;
|
||||
dnssec\-validation \fIboolean\fR;
|
||||
dnssec\-lookaside \fIstring\fR trust\-anchor \fIstring\fR;
|
||||
dnssec\-lookaside ( \fIauto\fR | \fIno\fR | \fIdomain\fR trust\-anchor \fIdomain\fR );
|
||||
dnssec\-must\-be\-secure \fIstring\fR \fIboolean\fR;
|
||||
dnssec\-accept\-expired \fIboolean\fR;
|
||||
empty\-server \fIstring\fR;
|
||||
@@ -570,5 +569,5 @@ zone \fIstring\fR \fIoptional_class\fR {
|
||||
\fBrndc\fR(8),
|
||||
BIND 9 Administrator Reference Manual.
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004\-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright \(co 2004\-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -17,7 +17,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: named.conf.docbook,v 1.46 2010/05/14 23:50:39 tbox Exp $ -->
|
||||
<!-- $Id: named.conf.docbook,v 1.44.4.4 2011/11/07 23:46:02 tbox Exp $ -->
|
||||
<refentry>
|
||||
<refentryinfo>
|
||||
<date>Aug 13, 2004</date>
|
||||
@@ -43,6 +43,7 @@
|
||||
<year>2008</year>
|
||||
<year>2009</year>
|
||||
<year>2010</year>
|
||||
<year>2011</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
</docinfo>
|
||||
@@ -282,8 +283,7 @@ options {
|
||||
disable-algorithms <replaceable>string</replaceable> { <replaceable>string</replaceable>; ... };
|
||||
dnssec-enable <replaceable>boolean</replaceable>;
|
||||
dnssec-validation <replaceable>boolean</replaceable>;
|
||||
dnssec-lookaside <replaceable>string</replaceable> trust-anchor <replaceable>string</replaceable>;
|
||||
dnssec-lookaside ( <replaceable>auto</replaceable> | <replaceable>domain</replaceable> trust-anchor <replaceable>domain</replaceable> );
|
||||
dnssec-lookaside ( <replaceable>auto</replaceable> | <replaceable>no</replaceable> | <replaceable>domain</replaceable> trust-anchor <replaceable>domain</replaceable> );
|
||||
dnssec-must-be-secure <replaceable>string</replaceable> <replaceable>boolean</replaceable>;
|
||||
dnssec-accept-expired <replaceable>boolean</replaceable>;
|
||||
|
||||
@@ -458,7 +458,7 @@ view <replaceable>string</replaceable> <replaceable>optional_class</replaceable>
|
||||
disable-algorithms <replaceable>string</replaceable> { <replaceable>string</replaceable>; ... };
|
||||
dnssec-enable <replaceable>boolean</replaceable>;
|
||||
dnssec-validation <replaceable>boolean</replaceable>;
|
||||
dnssec-lookaside <replaceable>string</replaceable> trust-anchor <replaceable>string</replaceable>;
|
||||
dnssec-lookaside ( <replaceable>auto</replaceable> | <replaceable>no</replaceable> | <replaceable>domain</replaceable> trust-anchor <replaceable>domain</replaceable> );
|
||||
dnssec-must-be-secure <replaceable>string</replaceable> <replaceable>boolean</replaceable>;
|
||||
dnssec-accept-expired <replaceable>boolean</replaceable>;
|
||||
|
||||
|
||||
+19
-20
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004-2011 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and/or distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,7 +13,7 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: named.conf.html,v 1.51 2010/05/15 01:14:24 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
@@ -31,7 +31,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">named.conf</code> </p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543349"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543353"></a><h2>DESCRIPTION</h2>
|
||||
<p><code class="filename">named.conf</code> is the configuration file
|
||||
for
|
||||
<span><strong class="command">named</strong></span>. Statements are enclosed
|
||||
@@ -50,14 +50,14 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543377"></a><h2>ACL</h2>
|
||||
<a name="id2543381"></a><h2>ACL</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
acl <em class="replaceable"><code>string</code></em> { <em class="replaceable"><code>address_match_element</code></em>; ... };<br>
|
||||
<br>
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543393"></a><h2>KEY</h2>
|
||||
<a name="id2543397"></a><h2>KEY</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
key <em class="replaceable"><code>domain_name</code></em> {<br>
|
||||
algorithm <em class="replaceable"><code>string</code></em>;<br>
|
||||
@@ -66,7 +66,7 @@ key
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543412"></a><h2>MASTERS</h2>
|
||||
<a name="id2543416"></a><h2>MASTERS</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
masters <em class="replaceable"><code>string</code></em> [<span class="optional"> port <em class="replaceable"><code>integer</code></em> </span>] {<br>
|
||||
( <em class="replaceable"><code>masters</code></em> | <em class="replaceable"><code>ipv4_address</code></em> [<span class="optional">port <em class="replaceable"><code>integer</code></em></span>] |<br>
|
||||
@@ -75,7 +75,7 @@ masters
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543458"></a><h2>SERVER</h2>
|
||||
<a name="id2543462"></a><h2>SERVER</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
server ( <em class="replaceable"><code>ipv4_address[<span class="optional">/prefixlen</span>]</code></em> | <em class="replaceable"><code>ipv6_address[<span class="optional">/prefixlen</span>]</code></em> ) {<br>
|
||||
bogus <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
@@ -97,7 +97,7 @@ server
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543526"></a><h2>TRUSTED-KEYS</h2>
|
||||
<a name="id2543530"></a><h2>TRUSTED-KEYS</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
trusted-keys {<br>
|
||||
<em class="replaceable"><code>domain_name</code></em> <em class="replaceable"><code>flags</code></em> <em class="replaceable"><code>protocol</code></em> <em class="replaceable"><code>algorithm</code></em> <em class="replaceable"><code>key</code></em>; ... <br>
|
||||
@@ -105,7 +105,7 @@ trusted-keys
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543552"></a><h2>MANAGED-KEYS</h2>
|
||||
<a name="id2543556"></a><h2>MANAGED-KEYS</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
managed-keys {<br>
|
||||
<em class="replaceable"><code>domain_name</code></em> <code class="constant">initial-key</code> <em class="replaceable"><code>flags</code></em> <em class="replaceable"><code>protocol</code></em> <em class="replaceable"><code>algorithm</code></em> <em class="replaceable"><code>key</code></em>; ... <br>
|
||||
@@ -113,7 +113,7 @@ managed-keys
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543580"></a><h2>CONTROLS</h2>
|
||||
<a name="id2543585"></a><h2>CONTROLS</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
controls {<br>
|
||||
inet ( <em class="replaceable"><code>ipv4_address</code></em> | <em class="replaceable"><code>ipv6_address</code></em> | * )<br>
|
||||
@@ -125,7 +125,7 @@ controls
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543616"></a><h2>LOGGING</h2>
|
||||
<a name="id2543620"></a><h2>LOGGING</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
logging {<br>
|
||||
channel <em class="replaceable"><code>string</code></em> {<br>
|
||||
@@ -143,7 +143,7 @@ logging
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543654"></a><h2>LWRES</h2>
|
||||
<a name="id2543658"></a><h2>LWRES</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
lwres {<br>
|
||||
listen-on [<span class="optional"> port <em class="replaceable"><code>integer</code></em> </span>] {<br>
|
||||
@@ -156,7 +156,7 @@ lwres
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543696"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543700"></a><h2>OPTIONS</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
options {<br>
|
||||
avoid-v4-udp-ports { <em class="replaceable"><code>port</code></em>; ... };<br>
|
||||
@@ -249,8 +249,7 @@ options
|
||||
disable-algorithms <em class="replaceable"><code>string</code></em> { <em class="replaceable"><code>string</code></em>; ... };<br>
|
||||
dnssec-enable <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
dnssec-validation <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
dnssec-lookaside <em class="replaceable"><code>string</code></em> trust-anchor <em class="replaceable"><code>string</code></em>;<br>
|
||||
dnssec-lookaside ( <em class="replaceable"><code>auto</code></em> | <em class="replaceable"><code>domain</code></em> trust-anchor <em class="replaceable"><code>domain</code></em> );<br>
|
||||
dnssec-lookaside ( <em class="replaceable"><code>auto</code></em> | <em class="replaceable"><code>no</code></em> | <em class="replaceable"><code>domain</code></em> trust-anchor <em class="replaceable"><code>domain</code></em> );<br>
|
||||
dnssec-must-be-secure <em class="replaceable"><code>string</code></em> <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
dnssec-accept-expired <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
<br>
|
||||
@@ -348,7 +347,7 @@ options
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544538"></a><h2>VIEW</h2>
|
||||
<a name="id2544539"></a><h2>VIEW</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
view <em class="replaceable"><code>string</code></em> <em class="replaceable"><code>optional_class</code></em> {<br>
|
||||
match-clients { <em class="replaceable"><code>address_match_element</code></em>; ... };<br>
|
||||
@@ -424,7 +423,7 @@ view
|
||||
disable-algorithms <em class="replaceable"><code>string</code></em> { <em class="replaceable"><code>string</code></em>; ... };<br>
|
||||
dnssec-enable <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
dnssec-validation <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
dnssec-lookaside <em class="replaceable"><code>string</code></em> trust-anchor <em class="replaceable"><code>string</code></em>;<br>
|
||||
dnssec-lookaside ( <em class="replaceable"><code>auto</code></em> | <em class="replaceable"><code>no</code></em> | <em class="replaceable"><code>domain</code></em> trust-anchor <em class="replaceable"><code>domain</code></em> );<br>
|
||||
dnssec-must-be-secure <em class="replaceable"><code>string</code></em> <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
dnssec-accept-expired <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
<br>
|
||||
@@ -499,7 +498,7 @@ view
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545209"></a><h2>ZONE</h2>
|
||||
<a name="id2545217"></a><h2>ZONE</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
zone <em class="replaceable"><code>string</code></em> <em class="replaceable"><code>optional_class</code></em> {<br>
|
||||
type ( master | slave | stub | hint |<br>
|
||||
@@ -594,12 +593,12 @@ zone
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545521"></a><h2>FILES</h2>
|
||||
<a name="id2545596"></a><h2>FILES</h2>
|
||||
<p><code class="filename">/etc/named.conf</code>
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545601"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2545608"></a><h2>SEE ALSO</h2>
|
||||
<p><span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named-checkconf</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">rndc</span>(8)</span>,
|
||||
|
||||
@@ -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.33 2009/10/06 01:14:41 tbox Exp $ -->
|
||||
<!-- $Id$ -->
|
||||
<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">named</code> [<code class="option">-4</code>] [<code class="option">-6</code>] [<code class="option">-c <em class="replaceable"><code>config-file</code></em></code>] [<code class="option">-d <em class="replaceable"><code>debug-level</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine-name</code></em></code>] [<code class="option">-f</code>] [<code class="option">-g</code>] [<code class="option">-m <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-n <em class="replaceable"><code>#cpus</code></em></code>] [<code class="option">-p <em class="replaceable"><code>port</code></em></code>] [<code class="option">-s</code>] [<code class="option">-S <em class="replaceable"><code>#max-socks</code></em></code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-u <em class="replaceable"><code>user</code></em></code>] [<code class="option">-v</code>] [<code class="option">-V</code>] [<code class="option">-x <em class="replaceable"><code>cache-file</code></em></code>]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543480"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2543482"></a><h2>DESCRIPTION</h2>
|
||||
<p><span><strong class="command">named</strong></span>
|
||||
is a Domain Name System (DNS) server,
|
||||
part of the BIND 9 distribution from ISC. For more
|
||||
@@ -47,7 +47,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543505"></a><h2>OPTIONS</h2>
|
||||
<a name="id2543507"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-4</span></dt>
|
||||
<dd><p>
|
||||
@@ -228,7 +228,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543962"></a><h2>SIGNALS</h2>
|
||||
<a name="id2543964"></a><h2>SIGNALS</h2>
|
||||
<p>
|
||||
In routine operation, signals should not be used to control
|
||||
the nameserver; <span><strong class="command">rndc</strong></span> should be used
|
||||
@@ -249,7 +249,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544010"></a><h2>CONFIGURATION</h2>
|
||||
<a name="id2544012"></a><h2>CONFIGURATION</h2>
|
||||
<p>
|
||||
The <span><strong class="command">named</strong></span> configuration file is too complex
|
||||
to describe in detail here. A complete description is provided
|
||||
@@ -266,7 +266,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544046"></a><h2>FILES</h2>
|
||||
<a name="id2544049"></a><h2>FILES</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><code class="filename">/etc/named.conf</code></span></dt>
|
||||
<dd><p>
|
||||
@@ -279,7 +279,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544086"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2544088"></a><h2>SEE ALSO</h2>
|
||||
<p><em class="citetitle">RFC 1033</em>,
|
||||
<em class="citetitle">RFC 1034</em>,
|
||||
<em class="citetitle">RFC 1035</em>,
|
||||
@@ -292,7 +292,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544293"></a><h2>AUTHOR</h2>
|
||||
<a name="id2544295"></a><h2>AUTHOR</h2>
|
||||
<p><span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
+163
-101
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2010 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004-2012 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.338 2010/03/12 23:51:07 tbox Exp $ */
|
||||
/* $Id: query.c,v 1.335.8.23 2012/01/31 23:46:14 tbox Exp $ */
|
||||
|
||||
/*! \file */
|
||||
|
||||
@@ -56,6 +56,7 @@
|
||||
#include <dns/zt.h>
|
||||
|
||||
#include <named/client.h>
|
||||
#include <named/globals.h>
|
||||
#include <named/log.h>
|
||||
#include <named/server.h>
|
||||
#include <named/sortlist.h>
|
||||
@@ -633,6 +634,7 @@ query_validatezonedb(ns_client_t *client, dns_name_t *name,
|
||||
*/
|
||||
|
||||
check_acl = ISC_TRUE; /* Keep compiler happy. */
|
||||
POST(check_acl); /* Keep another compiler happy. */
|
||||
queryacl = NULL;
|
||||
|
||||
/*
|
||||
@@ -819,17 +821,15 @@ query_getcachedb(ns_client_t *client, dns_name_t *name, dns_rdatatype_t qtype,
|
||||
return (DNS_R_REFUSED);
|
||||
dns_db_attach(client->view->cachedb, &db);
|
||||
|
||||
if ((client->query.attributes &
|
||||
NS_QUERYATTR_QUERYOKVALID) != 0) {
|
||||
if ((client->query.attributes & NS_QUERYATTR_CACHEACLOKVALID) != 0) {
|
||||
/*
|
||||
* We've evaluated the view's queryacl already. If
|
||||
* NS_QUERYATTR_QUERYOK is set, then the client is
|
||||
* We've evaluated the view's cacheacl already. If
|
||||
* NS_QUERYATTR_CACHEACLOK is set, then the client is
|
||||
* allowed to make queries, otherwise the query should
|
||||
* be refused.
|
||||
*/
|
||||
check_acl = ISC_FALSE;
|
||||
if ((client->query.attributes &
|
||||
NS_QUERYATTR_QUERYOK) == 0)
|
||||
if ((client->query.attributes & NS_QUERYATTR_CACHEACLOK) == 0)
|
||||
goto refuse;
|
||||
} else {
|
||||
/*
|
||||
@@ -843,16 +843,15 @@ query_getcachedb(ns_client_t *client, dns_name_t *name, dns_rdatatype_t qtype,
|
||||
char msg[NS_CLIENT_ACLMSGSIZE("query (cache)")];
|
||||
|
||||
result = ns_client_checkaclsilent(client, NULL,
|
||||
client->view->queryacl,
|
||||
client->view->cacheacl,
|
||||
ISC_TRUE);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
/*
|
||||
* We were allowed by the default
|
||||
* "allow-query" ACL. Remember this so we
|
||||
* don't have to check again.
|
||||
* We were allowed by the "allow-query-cache" ACL.
|
||||
* Remember this so we don't have to check again.
|
||||
*/
|
||||
client->query.attributes |=
|
||||
NS_QUERYATTR_QUERYOK;
|
||||
NS_QUERYATTR_CACHEACLOK;
|
||||
if (log && isc_log_wouldlog(ns_g_lctx,
|
||||
ISC_LOG_DEBUG(3)))
|
||||
{
|
||||
@@ -875,9 +874,9 @@ query_getcachedb(ns_client_t *client, dns_name_t *name, dns_rdatatype_t qtype,
|
||||
}
|
||||
/*
|
||||
* We've now evaluated the view's query ACL, and
|
||||
* the NS_QUERYATTR_QUERYOK attribute is now valid.
|
||||
* the NS_QUERYATTR_CACHEACLOKVALID attribute is now valid.
|
||||
*/
|
||||
client->query.attributes |= NS_QUERYATTR_QUERYOKVALID;
|
||||
client->query.attributes |= NS_QUERYATTR_CACHEACLOKVALID;
|
||||
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto refuse;
|
||||
@@ -1033,7 +1032,8 @@ query_isduplicate(ns_client_t *client, dns_name_t *name,
|
||||
if (name == mname)
|
||||
mname = NULL;
|
||||
|
||||
*mnamep = mname;
|
||||
if (mnamep != NULL)
|
||||
*mnamep = mname;
|
||||
|
||||
CTRACE("query_isduplicate: false: done");
|
||||
return (ISC_FALSE);
|
||||
@@ -1252,6 +1252,10 @@ query_addadditional(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
}
|
||||
|
||||
if (qtype == dns_rdatatype_a) {
|
||||
#ifdef ALLOW_FILTER_AAAA_ON_V4
|
||||
isc_boolean_t have_a = ISC_FALSE;
|
||||
#endif
|
||||
|
||||
/*
|
||||
* We now go looking for A and AAAA records, along with
|
||||
* their signatures.
|
||||
@@ -1274,6 +1278,8 @@ query_addadditional(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
if (sigrdataset == NULL)
|
||||
goto addname;
|
||||
}
|
||||
if (query_isduplicate(client, fname, dns_rdatatype_a, NULL))
|
||||
goto aaaa_lookup;
|
||||
result = dns_db_findrdataset(db, node, version,
|
||||
dns_rdatatype_a, 0,
|
||||
client->now, rdataset,
|
||||
@@ -1282,14 +1288,15 @@ query_addadditional(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
goto addname;
|
||||
if (result == DNS_R_NCACHENXRRSET) {
|
||||
dns_rdataset_disassociate(rdataset);
|
||||
/*
|
||||
* Negative cache entries don't have sigrdatasets.
|
||||
*/
|
||||
INSIST(sigrdataset == NULL ||
|
||||
! dns_rdataset_isassociated(sigrdataset));
|
||||
if (sigrdataset != NULL &&
|
||||
dns_rdataset_isassociated(sigrdataset))
|
||||
dns_rdataset_disassociate(sigrdataset);
|
||||
}
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
mname = NULL;
|
||||
#ifdef ALLOW_FILTER_AAAA_ON_V4
|
||||
have_a = ISC_TRUE;
|
||||
#endif
|
||||
if (!query_isduplicate(client, fname,
|
||||
dns_rdatatype_a, &mname)) {
|
||||
if (mname != NULL) {
|
||||
@@ -1319,6 +1326,9 @@ query_addadditional(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
dns_rdataset_disassociate(sigrdataset);
|
||||
}
|
||||
}
|
||||
aaaa_lookup:
|
||||
if (query_isduplicate(client, fname, dns_rdatatype_aaaa, NULL))
|
||||
goto addname;
|
||||
result = dns_db_findrdataset(db, node, version,
|
||||
dns_rdatatype_aaaa, 0,
|
||||
client->now, rdataset,
|
||||
@@ -1327,11 +1337,23 @@ query_addadditional(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
goto addname;
|
||||
if (result == DNS_R_NCACHENXRRSET) {
|
||||
dns_rdataset_disassociate(rdataset);
|
||||
INSIST(sigrdataset == NULL ||
|
||||
! dns_rdataset_isassociated(sigrdataset));
|
||||
if (sigrdataset != NULL &&
|
||||
dns_rdataset_isassociated(sigrdataset))
|
||||
dns_rdataset_disassociate(sigrdataset);
|
||||
}
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
mname = NULL;
|
||||
/*
|
||||
* There's an A; check whether we're filtering AAAA
|
||||
*/
|
||||
#ifdef ALLOW_FILTER_AAAA_ON_V4
|
||||
if (have_a &&
|
||||
(client->filter_aaaa == dns_v4_aaaa_break_dnssec ||
|
||||
(client->filter_aaaa == dns_v4_aaaa_filter &&
|
||||
(!WANTDNSSEC(client) || sigrdataset == NULL ||
|
||||
!dns_rdataset_isassociated(sigrdataset)))))
|
||||
goto addname;
|
||||
#endif
|
||||
if (!query_isduplicate(client, fname,
|
||||
dns_rdatatype_aaaa, &mname)) {
|
||||
if (mname != NULL) {
|
||||
@@ -1483,7 +1505,13 @@ query_addadditional2(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
dns_rdatatype_t type;
|
||||
dns_rdatasetadditional_t additionaltype;
|
||||
|
||||
if (qtype != dns_rdatatype_a) {
|
||||
/*
|
||||
* If we don't have an additional cache call query_addadditional.
|
||||
*/
|
||||
client = additionalctx->client;
|
||||
REQUIRE(NS_CLIENT_VALID(client));
|
||||
|
||||
if (qtype != dns_rdatatype_a || client->view->acache == NULL) {
|
||||
/*
|
||||
* This function is optimized for "address" types. For other
|
||||
* types, use a generic routine.
|
||||
@@ -1497,8 +1525,6 @@ query_addadditional2(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
* Initialization.
|
||||
*/
|
||||
rdataset_base = additionalctx->rdataset;
|
||||
client = additionalctx->client;
|
||||
REQUIRE(NS_CLIENT_VALID(client));
|
||||
eresult = ISC_R_SUCCESS;
|
||||
fname = NULL;
|
||||
rdataset = NULL;
|
||||
@@ -1513,6 +1539,7 @@ query_addadditional2(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
need_addname = ISC_FALSE;
|
||||
zone = NULL;
|
||||
needadditionalcache = ISC_FALSE;
|
||||
POST(needadditionalcache);
|
||||
additionaltype = dns_rdatasetadditional_fromauth;
|
||||
dns_name_init(&cfname, NULL);
|
||||
|
||||
@@ -1750,6 +1777,9 @@ query_addadditional2(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
if (sigrdataset == NULL)
|
||||
goto cleanup;
|
||||
|
||||
if (additionaltype == dns_rdatasetadditional_fromcache &&
|
||||
query_isduplicate(client, fname, dns_rdatatype_a, NULL))
|
||||
goto aaaa_lookup;
|
||||
/*
|
||||
* Find A RRset with sig RRset. Even if we don't find a sig RRset
|
||||
* for a client using DNSSEC, we'll continue the process to make a
|
||||
@@ -1777,10 +1807,8 @@ query_addadditional2(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
goto setcache;
|
||||
if (result == DNS_R_NCACHENXRRSET) {
|
||||
dns_rdataset_disassociate(rdataset);
|
||||
/*
|
||||
* Negative cache entries don't have sigrdatasets.
|
||||
*/
|
||||
INSIST(! dns_rdataset_isassociated(sigrdataset));
|
||||
if (dns_rdataset_isassociated(sigrdataset))
|
||||
dns_rdataset_disassociate(sigrdataset);
|
||||
}
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
/* Remember the result as a cache */
|
||||
@@ -1796,6 +1824,10 @@ query_addadditional2(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
}
|
||||
}
|
||||
|
||||
aaaa_lookup:
|
||||
if (additionaltype == dns_rdatasetadditional_fromcache &&
|
||||
query_isduplicate(client, fname, dns_rdatatype_aaaa, NULL))
|
||||
goto foundcache;
|
||||
/* Find AAAA RRset with sig RRset */
|
||||
result = dns_db_findrdataset(db, node, version, dns_rdatatype_aaaa,
|
||||
0, client->now, rdataset, sigrdataset);
|
||||
@@ -2038,7 +2070,7 @@ query_addrrset(ns_client_t *client, dns_name_t **namep,
|
||||
|
||||
static inline isc_result_t
|
||||
query_addsoa(ns_client_t *client, dns_db_t *db, dns_dbversion_t *version,
|
||||
isc_boolean_t zero_ttl)
|
||||
isc_boolean_t zero_ttl, isc_boolean_t isassociated)
|
||||
{
|
||||
dns_name_t *name;
|
||||
dns_dbnode_t *node;
|
||||
@@ -2055,6 +2087,12 @@ query_addsoa(ns_client_t *client, dns_db_t *db, dns_dbversion_t *version,
|
||||
rdataset = NULL;
|
||||
node = NULL;
|
||||
|
||||
/*
|
||||
* Don't add the SOA record for test which set "-T nosoa".
|
||||
*/
|
||||
if (ns_g_nosoa && (!WANTDNSSEC(client) || !isassociated))
|
||||
return (ISC_R_SUCCESS);
|
||||
|
||||
/*
|
||||
* Get resources and make 'name' be the database origin.
|
||||
*/
|
||||
@@ -2792,7 +2830,7 @@ query_addds(ns_client_t *client, dns_db_t *db, dns_dbnode_t *node,
|
||||
static void
|
||||
query_addwildcardproof(ns_client_t *client, dns_db_t *db,
|
||||
dns_dbversion_t *version, dns_name_t *name,
|
||||
isc_boolean_t ispositive)
|
||||
isc_boolean_t ispositive, isc_boolean_t nodata)
|
||||
{
|
||||
isc_buffer_t *dbuf, b;
|
||||
dns_name_t *fname;
|
||||
@@ -2892,6 +2930,11 @@ query_addwildcardproof(ns_client_t *client, dns_db_t *db,
|
||||
dns_name_copy(name, cname, NULL);
|
||||
while (result == DNS_R_NXDOMAIN) {
|
||||
labels = dns_name_countlabels(cname) - 1;
|
||||
/*
|
||||
* Sanity check.
|
||||
*/
|
||||
if (labels == 0U)
|
||||
goto cleanup;
|
||||
dns_name_split(cname, labels, NULL, cname);
|
||||
result = dns_db_find(db, cname, version,
|
||||
dns_rdatatype_nsec,
|
||||
@@ -2905,8 +2948,9 @@ query_addwildcardproof(ns_client_t *client, dns_db_t *db,
|
||||
sigrdataset, fname, ISC_TRUE, cname);
|
||||
if (!dns_rdataset_isassociated(rdataset))
|
||||
goto cleanup;
|
||||
query_addrrset(client, &fname, &rdataset, &sigrdataset,
|
||||
dbuf, DNS_SECTION_AUTHORITY);
|
||||
if (!ispositive)
|
||||
query_addrrset(client, &fname, &rdataset, &sigrdataset,
|
||||
dbuf, DNS_SECTION_AUTHORITY);
|
||||
|
||||
/*
|
||||
* Replace resources which were consumed by query_addrrset.
|
||||
@@ -2980,7 +3024,7 @@ query_addwildcardproof(ns_client_t *client, dns_db_t *db,
|
||||
goto cleanup;
|
||||
|
||||
query_findclosestnsec3(wname, db, NULL, client, rdataset,
|
||||
sigrdataset, fname, ISC_FALSE, NULL);
|
||||
sigrdataset, fname, nodata, NULL);
|
||||
if (!dns_rdataset_isassociated(rdataset))
|
||||
goto cleanup;
|
||||
query_addrrset(client, &fname, &rdataset, &sigrdataset,
|
||||
@@ -3083,7 +3127,7 @@ query_addnxrrsetnsec(ns_client_t *client, dns_db_t *db,
|
||||
|
||||
/* XXX */
|
||||
query_addwildcardproof(client, db, version, client->query.qname,
|
||||
ISC_TRUE);
|
||||
ISC_TRUE, ISC_FALSE);
|
||||
|
||||
/*
|
||||
* We'll need some resources...
|
||||
@@ -3702,6 +3746,18 @@ query_findclosestnsec3(dns_name_t *qname, dns_db_t *db,
|
||||
return;
|
||||
}
|
||||
|
||||
#ifdef ALLOW_FILTER_AAAA_ON_V4
|
||||
static isc_boolean_t
|
||||
is_v4_client(ns_client_t *client) {
|
||||
if (isc_sockaddr_pf(&client->peeraddr) == AF_INET)
|
||||
return (ISC_TRUE);
|
||||
if (isc_sockaddr_pf(&client->peeraddr) == AF_INET6 &&
|
||||
IN6_IS_ADDR_V4MAPPED(&client->peeraddr.type.sin6.sin6_addr))
|
||||
return (ISC_TRUE);
|
||||
return (ISC_FALSE);
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Do the bulk of query processing for the current query of 'client'.
|
||||
* If 'event' is non-NULL, we are returning from recursion and 'qtype'
|
||||
@@ -4236,13 +4292,13 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
}
|
||||
goto cleanup;
|
||||
case DNS_R_EMPTYNAME:
|
||||
result = DNS_R_NXRRSET;
|
||||
/* FALLTHROUGH */
|
||||
case DNS_R_NXRRSET:
|
||||
INSIST(is_zone);
|
||||
/*
|
||||
* Look for a NSEC3 record if we don't have a NSEC record.
|
||||
*/
|
||||
nxrrset_rrsig:
|
||||
if (!dns_rdataset_isassociated(rdataset) &&
|
||||
WANTDNSSEC(client)) {
|
||||
if ((fname->attributes & DNS_NAMEATTR_WILDCARD) == 0) {
|
||||
@@ -4311,7 +4367,7 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
query_releasename(client, &fname);
|
||||
query_addwildcardproof(client, db, version,
|
||||
client->query.qname,
|
||||
ISC_FALSE);
|
||||
ISC_FALSE, ISC_TRUE);
|
||||
}
|
||||
}
|
||||
if (dns_rdataset_isassociated(rdataset)) {
|
||||
@@ -4332,7 +4388,8 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
/*
|
||||
* Add SOA.
|
||||
*/
|
||||
result = query_addsoa(client, db, version, ISC_FALSE);
|
||||
result = query_addsoa(client, db, version, ISC_FALSE,
|
||||
dns_rdataset_isassociated(rdataset));
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
QUERY_ERROR(result);
|
||||
goto cleanup;
|
||||
@@ -4369,6 +4426,7 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
*/
|
||||
query_releasename(client, &fname);
|
||||
}
|
||||
|
||||
/*
|
||||
* Add SOA. If the query was for a SOA record force the
|
||||
* ttl to zero so that it is possible for clients to find
|
||||
@@ -4380,9 +4438,11 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
zone != NULL &&
|
||||
#endif
|
||||
dns_zone_getzeronosoattl(zone))
|
||||
result = query_addsoa(client, db, version, ISC_TRUE);
|
||||
result = query_addsoa(client, db, version, ISC_TRUE,
|
||||
dns_rdataset_isassociated(rdataset));
|
||||
else
|
||||
result = query_addsoa(client, db, version, ISC_FALSE);
|
||||
result = query_addsoa(client, db, version, ISC_FALSE,
|
||||
dns_rdataset_isassociated(rdataset));
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
QUERY_ERROR(result);
|
||||
goto cleanup;
|
||||
@@ -4397,7 +4457,8 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
&sigrdataset,
|
||||
NULL, DNS_SECTION_AUTHORITY);
|
||||
query_addwildcardproof(client, db, version,
|
||||
client->query.qname, ISC_FALSE);
|
||||
client->query.qname, ISC_FALSE,
|
||||
ISC_FALSE);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -4583,18 +4644,19 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
goto cleanup;
|
||||
}
|
||||
result = dns_name_concatenate(prefix, tname, fname, NULL);
|
||||
|
||||
/*
|
||||
* RFC2672, section 4.1, subsection 3c says
|
||||
* we should return YXDOMAIN if the constructed
|
||||
* name would be too long.
|
||||
*/
|
||||
if (result == DNS_R_NAMETOOLONG)
|
||||
client->message->rcode = dns_rcode_yxdomain;
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
dns_message_puttempname(client->message, &tname);
|
||||
if (result == ISC_R_NOSPACE) {
|
||||
/*
|
||||
* RFC2672, section 4.1, subsection 3c says
|
||||
* we should return YXDOMAIN if the constructed
|
||||
* name would be too long.
|
||||
*/
|
||||
client->message->rcode = dns_rcode_yxdomain;
|
||||
}
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
query_keepname(client, fname, dbuf);
|
||||
/*
|
||||
* Synthesize a CNAME for this DNAME.
|
||||
@@ -4640,6 +4702,18 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
need_wildcardproof = ISC_TRUE;
|
||||
}
|
||||
|
||||
#ifdef ALLOW_FILTER_AAAA_ON_V4
|
||||
if (client->view->v4_aaaa != dns_v4_aaaa_ok &&
|
||||
is_v4_client(client) &&
|
||||
ns_client_checkaclsilent(client, NULL,
|
||||
client->view->v4_aaaa_acl,
|
||||
ISC_TRUE) == ISC_R_SUCCESS)
|
||||
client->filter_aaaa = client->view->v4_aaaa;
|
||||
else
|
||||
client->filter_aaaa = dns_v4_aaaa_ok;
|
||||
|
||||
#endif
|
||||
|
||||
if (type == dns_rdatatype_any) {
|
||||
#ifdef ALLOW_FILTER_AAAA_ON_V4
|
||||
isc_boolean_t have_aaaa, have_a, have_sig;
|
||||
@@ -4687,9 +4761,7 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
* Notice the presence of A and AAAAs so
|
||||
* that AAAAs can be hidden from IPv4 clients.
|
||||
*/
|
||||
if (client->view->v4_aaaa != dns_v4_aaaa_ok &&
|
||||
client->peeraddr_valid &&
|
||||
client->peeraddr.type.sa.sa_family == AF_INET) {
|
||||
if (client->filter_aaaa != dns_v4_aaaa_ok) {
|
||||
if (rdataset->type == dns_rdatatype_aaaa)
|
||||
have_aaaa = ISC_TRUE;
|
||||
else if (rdataset->type == dns_rdatatype_a)
|
||||
@@ -4746,62 +4818,50 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
* Filter AAAAs if there is an A and there is no signature
|
||||
* or we are supposed to break DNSSEC.
|
||||
*/
|
||||
if (have_aaaa && have_a &&
|
||||
(!have_sig || !WANTDNSSEC(client) ||
|
||||
client->view->v4_aaaa == dns_v4_aaaa_break_dnssec))
|
||||
if (client->filter_aaaa == dns_v4_aaaa_break_dnssec)
|
||||
client->attributes |= NS_CLIENTATTR_FILTER_AAAA;
|
||||
else if (client->filter_aaaa != dns_v4_aaaa_ok &&
|
||||
have_aaaa && have_a &&
|
||||
(!have_sig || !WANTDNSSEC(client)))
|
||||
client->attributes |= NS_CLIENTATTR_FILTER_AAAA;
|
||||
#endif
|
||||
if (fname != NULL)
|
||||
dns_message_puttempname(client->message, &fname);
|
||||
|
||||
if (n == 0) {
|
||||
/*
|
||||
* We didn't match any rdatasets.
|
||||
* No matching rdatasets found in cache. If we were
|
||||
* searching for RRSIG/SIG, that's probably okay;
|
||||
* otherwise this is an error condition.
|
||||
*/
|
||||
if ((qtype == dns_rdatatype_rrsig ||
|
||||
qtype == dns_rdatatype_sig) &&
|
||||
result == ISC_R_NOMORE) {
|
||||
/*
|
||||
* XXXRTH If this is a secure zone and we
|
||||
* didn't find any SIGs, we should generate
|
||||
* an error unless we were searching for
|
||||
* glue. Ugh.
|
||||
*/
|
||||
if (!is_zone) {
|
||||
authoritative = ISC_FALSE;
|
||||
dns_rdatasetiter_destroy(&rdsiter);
|
||||
if (RECURSIONOK(client)) {
|
||||
result = query_recurse(client,
|
||||
qtype,
|
||||
NULL,
|
||||
NULL,
|
||||
resuming);
|
||||
if (result == ISC_R_SUCCESS)
|
||||
client->query.attributes |=
|
||||
NS_QUERYATTR_RECURSING;
|
||||
else
|
||||
RECURSE_ERROR(result);
|
||||
}
|
||||
client->attributes &= ~NS_CLIENTATTR_RA;
|
||||
goto addauth;
|
||||
}
|
||||
/*
|
||||
* We were searching for SIG records in
|
||||
* a nonsecure zone. Send a "no error,
|
||||
* no data" response.
|
||||
*/
|
||||
/*
|
||||
* Add SOA.
|
||||
*/
|
||||
result = query_addsoa(client, db, version,
|
||||
ISC_FALSE);
|
||||
if (result == ISC_R_SUCCESS)
|
||||
result = ISC_R_NOMORE;
|
||||
} else {
|
||||
/*
|
||||
* Something went wrong.
|
||||
*/
|
||||
|
||||
if (dns_db_issecure(db)) {
|
||||
char namebuf[DNS_NAME_FORMATSIZE];
|
||||
dns_name_format(client->query.qname,
|
||||
namebuf,
|
||||
sizeof(namebuf));
|
||||
ns_client_log(client,
|
||||
DNS_LOGCATEGORY_DNSSEC,
|
||||
NS_LOGMODULE_QUERY,
|
||||
ISC_LOG_WARNING,
|
||||
"missing signature "
|
||||
"for %s", namebuf);
|
||||
}
|
||||
|
||||
dns_rdatasetiter_destroy(&rdsiter);
|
||||
fname = query_newname(client, dbuf, &b);
|
||||
goto nxrrset_rrsig;
|
||||
} else
|
||||
result = DNS_R_SERVFAIL;
|
||||
}
|
||||
}
|
||||
dns_rdatasetiter_destroy(&rdsiter);
|
||||
if (result != ISC_R_NOMORE) {
|
||||
@@ -4822,13 +4882,11 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
* so fundamentally wrong, unavoidably inaccurate, and
|
||||
* unneeded that it is best to keep it as short as possible.
|
||||
*/
|
||||
if (client->view->v4_aaaa != dns_v4_aaaa_ok &&
|
||||
client->peeraddr_valid &&
|
||||
client->peeraddr.type.sa.sa_family == AF_INET &&
|
||||
(!WANTDNSSEC(client) ||
|
||||
sigrdataset == NULL ||
|
||||
!dns_rdataset_isassociated(sigrdataset) ||
|
||||
client->view->v4_aaaa == dns_v4_aaaa_break_dnssec)) {
|
||||
if (client->filter_aaaa == dns_v4_aaaa_break_dnssec ||
|
||||
(client->filter_aaaa == dns_v4_aaaa_filter &&
|
||||
(!WANTDNSSEC(client) || sigrdataset == NULL ||
|
||||
!dns_rdataset_isassociated(sigrdataset))))
|
||||
{
|
||||
if (qtype == dns_rdatatype_aaaa) {
|
||||
trdataset = query_newrdataset(client);
|
||||
result = dns_db_findrdataset(db, node, version,
|
||||
@@ -4950,7 +5008,7 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
if (need_wildcardproof && dns_db_issecure(db))
|
||||
query_addwildcardproof(client, db, version,
|
||||
dns_fixedname_name(&wildcardname),
|
||||
ISC_TRUE);
|
||||
ISC_TRUE, ISC_FALSE);
|
||||
cleanup:
|
||||
CTRACE("query_find: cleanup");
|
||||
/*
|
||||
@@ -5322,8 +5380,12 @@ ns_query_start(ns_client_t *client) {
|
||||
/*
|
||||
* Assume authoritative response until it is known to be
|
||||
* otherwise.
|
||||
*
|
||||
* If "-T noaa" has been set on the command line don't set
|
||||
* AA on authoritative answers.
|
||||
*/
|
||||
message->flags |= DNS_MESSAGEFLAG_AA;
|
||||
if (!ns_g_noaa)
|
||||
message->flags |= DNS_MESSAGEFLAG_AA;
|
||||
|
||||
/*
|
||||
* Set AD. We must clear it if we add non-validated data to a
|
||||
|
||||
+918
-130
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user