Compare commits

...

2054 Commits

Author SHA1 Message Date
cvs2git
1d161c5ed7 This commit was manufactured by cvs2git to create tag 'v9_6_ESV_R6rc2'. 2012-02-15 21:15:12 +00:00
Automatic Updater
31f782b605 update copyright notice 2012-02-09 23:45:56 +00:00
Automatic Updater
6af78d13a0 newcopyrights 2012-02-09 23:30:13 +00:00
Automatic Updater
59259b9f38 update 2012-02-09 22:16:02 +00:00
Mark Andrews
5b7b4fa54b move keygeneration out of the timing critical section 2012-02-09 21:56:42 +00:00
Automatic Updater
70e0923710 update 2012-02-09 21:15:41 +00:00
Mark Andrews
fb843dc96a 3282. [bug] Restrict the TTL of NS RRset to no more than that
of the old NS RRset when replacing it. [RT #27792]
2012-02-09 21:02:47 +00:00
Automatic Updater
53ae43cea1 update 2012-02-08 00:15:39 +00:00
Automatic Updater
b6768c488c update copyright notice 2012-02-07 23:46:13 +00:00
Automatic Updater
1c5c9f592a newcopyrights 2012-02-07 23:30:09 +00:00
Automatic Updater
ba411bf0c9 update 2012-02-07 20:16:28 +00:00
Mark Andrews
a0bde96546 3281. [bug] SOA refresh queries could be treated as cancelled
despite succeeding over the loopback interface.
                        [RT #27782]
2012-02-07 19:53:53 +00:00
Automatic Updater
d84309ef74 update 2012-02-07 01:15:30 +00:00
Evan Hunt
64e10ec5f6 fixed a test error that caused autosign to fail on freebsd 2012-02-07 00:34:28 +00:00
Automatic Updater
bf6690596b update 2012-02-07 00:20:56 +00:00
Automatic Updater
4583255b24 update copyright notice 2012-02-06 23:45:34 +00:00
Automatic Updater
2082485a73 newcopyrights 2012-02-06 23:30:12 +00:00
Mark Andrews
2beec845b4 verify server is answering before starting next server 2012-02-06 23:24:19 +00:00
Automatic Updater
269318dff9 update 2012-02-06 22:15:30 +00:00
Evan Hunt
9ab048a866 3277. [bug] Make sure automatic key maintenance is started
when "auto-dnssec maintain" is turned on during
			"rndc reconfig". [RT #26805]
2012-02-06 21:27:17 +00:00
Automatic Updater
e2de4e760c update 2012-02-06 06:15:54 +00:00
Mark Andrews
6d0a5841ce 3276. [bug] win32: ns_os_openfile failed to return NULL on
safe_open failure. [RT #27696]
2012-02-06 05:18:15 +00:00
Automatic Updater
599775372a update 2012-02-04 00:15:40 +00:00
Automatic Updater
5de3c05b17 update copyright notice 2012-02-03 23:45:55 +00:00
Automatic Updater
4c887ecd0e newcopyrights 2012-02-03 23:30:20 +00:00
Automatic Updater
a3dbde27f4 update 2012-02-03 05:17:12 +00:00
Mark Andrews
ac2ac81731 I:waiting for nameserver to load, ok'd by Evan 2012-02-03 04:47:01 +00:00
Automatic Updater
ce8cc06b6f update 2012-02-03 00:15:37 +00:00
Automatic Updater
321e7ff4b8 update copyright notice 2012-02-02 23:46:09 +00:00
Automatic Updater
41a085f283 newcopyrights 2012-02-02 23:30:10 +00:00
Automatic Updater
2c9698f360 update 2012-02-02 04:15:38 +00:00
Mark Andrews
1a3632db69 portable code, ok'd by Evan 2012-02-02 03:50:43 +00:00
Automatic Updater
5372026f4e update 2012-02-01 00:15:31 +00:00
Automatic Updater
0dad651086 update copyright notice 2012-01-31 23:46:16 +00:00
Automatic Updater
0398af52fa newcopyrights 2012-01-31 23:30:11 +00:00
Automatic Updater
a01a37def3 update 2012-01-31 23:15:32 +00:00
Mark Andrews
b8c4aca1b7 type mismatch 2012-01-31 22:40:37 +00:00
Mark Andrews
03a93e269f 3374. [bug] Log when a zone is not reusable. Only set loadtime
on successful loads.  [RT #27650]
2012-01-31 22:33:27 +00:00
Automatic Updater
f8e2c32d29 update 2012-01-31 18:15:32 +00:00
Evan Hunt
1ec2d7e807 3273. [bug] AAAA responses could be returned in the additional
section even when filter-aaaa-on-v4 was in use.
                        [RT #27292]
2012-01-31 18:03:13 +00:00
Automatic Updater
65fb9b21f5 update 2012-01-31 04:15:32 +00:00
Mark Andrews
f310b3dce5 3271. [port] darwin: mksymtbl is not always stable, loop several
times before giving up.  mksymtbl was using non
                        portable perl to covert 64 bit hex strings. [RT #27653]
2012-01-31 04:13:29 +00:00
Automatic Updater
cb27330e5c update 2012-01-31 00:15:39 +00:00
Automatic Updater
f49ff4a82c update copyright notice 2012-01-30 23:46:16 +00:00
Automatic Updater
7deeb1a9d2 newcopyrights 2012-01-30 23:30:13 +00:00
Automatic Updater
ff15771dee update 2012-01-30 22:15:45 +00:00
Automatic Updater
665cfabe88 9.7.5 2012-01-30 22:07:34 +00:00
Automatic Updater
2171488708 update 2012-01-30 01:15:27 +00:00
Mark Andrews
b8072cb4bc remove doc/draft, doc/rfc 2012-01-30 00:53:35 +00:00
Mark Andrews
7f4214fd1a make 'when' isc_stdtime_t in set_key_expiry_warning 2012-01-30 00:16:19 +00:00
Automatic Updater
42150579ae update 2012-01-28 00:15:38 +00:00
Automatic Updater
291f63ced1 update copyright notice 2012-01-27 23:46:06 +00:00
Automatic Updater
e8c02bdafc newcopyrights 2012-01-27 23:30:26 +00:00
Automatic Updater
58a2d0aa43 update 2012-01-27 14:15:56 +00:00
Mark Andrews
08c44d5e4d in dns_name_fromstring check for bindable target with buffer 2012-01-27 13:37:26 +00:00
Automatic Updater
b6f29c6d01 update 2012-01-27 08:15:27 +00:00
Mark Andrews
79650d87c6 9.7.5 2012-01-27 07:35:41 +00:00
Automatic Updater
8968554786 update 2012-01-27 07:16:21 +00:00
Mark Andrews
683a27fd16 9.7.5 2012-01-27 06:58:28 +00:00
Automatic Updater
9de47c3e20 update 2012-01-27 02:15:29 +00:00
Mark Andrews
0d26ffb398 back port dns_test_loaddb from 9.9.0 2012-01-27 02:10:20 +00:00
Mark Andrews
581cbb04c8 3268. [bug] Convert RRSIG expiry times to 64 timestamps to work
out the earliest expiry time. [RT #23311]
2012-01-27 01:48:14 +00:00
Mark Andrews
0b62ea07dd 3267. [bug] Memory allocation failures could be mis-reported as
unexpected error.  New ISC_R_UNSET result code.
                        [RT #27336]
2012-01-27 01:27:30 +00:00
Automatic Updater
a10d82634c update 2012-01-27 01:15:35 +00:00
Mark Andrews
32ff3f4b78 3266. [bug] The maximum number of NSEC3 iterations for a
DNSKEY RRset was not being properly computed.
                        [RT #26543]
2012-01-27 01:08:22 +00:00
Automatic Updater
10de7852bd update 2012-01-24 00:15:28 +00:00
Automatic Updater
398aa77a34 update copyright notice 2012-01-23 23:45:55 +00:00
Automatic Updater
24d8da4f0f newcopyrights 2012-01-23 23:30:09 +00:00
Automatic Updater
2e28ce5da6 update 2012-01-23 12:15:57 +00:00
Mark Andrews
9df9ea7daa test for Net::DNS 2012-01-23 11:57:07 +00:00
Automatic Updater
a955cdf5b5 update 2012-01-21 01:15:31 +00:00
Automatic Updater
c9aab81abd sync 2012-01-21 01:07:39 +00:00
Automatic Updater
3ac569ccdb update 2012-01-20 02:15:35 +00:00
Mark Andrews
8e3192c38d remove more bashisms 2012-01-20 01:35:36 +00:00
Automatic Updater
77d4febaa9 update 2012-01-20 00:15:39 +00:00
Automatic Updater
41c2a7b1e7 newcopyrights 2012-01-19 23:30:08 +00:00
Automatic Updater
9788b328d0 update 2012-01-19 09:16:16 +00:00
Mark Andrews
c23d30fe02 don't use bash syntax 2012-01-19 08:45:21 +00:00
Automatic Updater
33f72fe9f7 update 2012-01-18 00:15:34 +00:00
Automatic Updater
01e5800d6b newcopyrights 2012-01-17 23:30:08 +00:00
Automatic Updater
6365b4eaae update 2012-01-17 02:15:34 +00:00
Automatic Updater
61877a80eb regen v9_7 2012-01-17 01:39:33 +00:00
Automatic Updater
f47f684fb1 update 2012-01-17 00:15:31 +00:00
Automatic Updater
3dfa0a6ee8 newcopyrights 2012-01-16 23:30:07 +00:00
Automatic Updater
9d3085883b update 2012-01-16 23:15:39 +00:00
Evan Hunt
2cd401dfb6 add section explaining how to build with SoftHSM 2012-01-16 22:50:34 +00:00
Automatic Updater
c22f3a66c7 update 2012-01-16 19:15:33 +00:00
Evan Hunt
c845e4a307 updated pkcs11 documentation 2012-01-16 19:08:30 +00:00
Evan Hunt
7ac2b23c54 - add openssl-1.0.0f-patch
- update openssl-0.9.8s-patch to francis's version
2012-01-16 19:02:19 +00:00
Automatic Updater
a0853471cd update 2012-01-14 02:15:38 +00:00
Automatic Updater
78ffe3652b sync 2012-01-14 01:26:33 +00:00
Automatic Updater
970215fe11 update 2012-01-13 00:15:37 +00:00
Automatic Updater
df786cc25c update copyright notice 2012-01-12 23:46:17 +00:00
Automatic Updater
4c1eb76521 newcopyrights 2012-01-12 23:30:09 +00:00
Automatic Updater
42fa16c074 update 2012-01-12 02:15:33 +00:00
Automatic Updater
f076be3f00 regen v9_7 2012-01-12 01:39:35 +00:00
Automatic Updater
652b1e8834 update 2012-01-12 00:15:34 +00:00
Evan Hunt
f8c31fd158 update doc to reflect rebased pkcs11 patch 2012-01-11 23:48:28 +00:00
Evan Hunt
f6a185d135 rebase pkcs11 patch to openssl 0.9.8s 2012-01-11 23:46:43 +00:00
Automatic Updater
2bf0663118 update 2012-01-11 21:15:37 +00:00
Curtis Blackburn
a777002cad added myself to the list of authors. 2012-01-11 20:19:07 +00:00
Automatic Updater
bb148d6903 update 2012-01-11 00:15:28 +00:00
Automatic Updater
25ec2a4109 update copyright notice 2012-01-10 23:46:00 +00:00
Automatic Updater
081231b5eb newcopyrights 2012-01-10 23:30:07 +00:00
Automatic Updater
ca65205b3f update 2012-01-10 01:15:38 +00:00
Scott Mann
682db59b71 added scott mann to bind authors 2012-01-10 00:27:47 +00:00
Automatic Updater
90ee0e12bd update 2012-01-06 00:15:42 +00:00
Automatic Updater
3a3671332d newcopyrights 2012-01-05 23:30:26 +00:00
Automatic Updater
0e1e93c385 update 2012-01-05 05:15:36 +00:00
Mark Andrews
8c1109d5bf rrset-order cyclic fix cleanupt 2012-01-05 04:56:12 +00:00
Automatic Updater
d94602779b update 2012-01-05 00:15:36 +00:00
Automatic Updater
cc8baeb284 update copyright notice 2012-01-04 23:45:53 +00:00
Automatic Updater
c682238906 newcopyrights 2012-01-04 23:30:09 +00:00
Automatic Updater
7f06b20a83 update 2012-01-04 03:16:19 +00:00
Evan Hunt
52ca8590dc 3260. [bug] "rrset-order cyclic" could appear not to rotate
for some query patterns.  [RT #27170/27185]
2012-01-04 03:09:33 +00:00
Automatic Updater
04c34ec06b update 2011-12-26 08:16:15 +00:00
Mark Andrews
4bbc08f9a8 cleanup RELEASE-NOTES-BIND-9.7.4.* 2011-12-26 07:56:24 +00:00
Automatic Updater
93c19f7621 update 2011-12-24 00:15:36 +00:00
Automatic Updater
74a0f19645 update copyright notice 2011-12-23 23:46:23 +00:00
Automatic Updater
701606a1d0 update 2011-12-23 07:21:23 +00:00
Automatic Updater
df9b583547 regenerate 2011-12-23 07:12:40 +00:00
Evan Hunt
8c7ba5a7f8 update for 9.7.5rc1 2011-12-23 07:11:33 +00:00
Automatic Updater
5ffb0573bd update 2011-12-23 03:16:22 +00:00
Evan Hunt
fc91c2c300 prep for rc1 2011-12-23 02:30:02 +00:00
Automatic Updater
601cdb5f7d update 2011-12-23 02:15:44 +00:00
Automatic Updater
f02f4b6a6f update 2011-12-23 01:40:18 +00:00
Automatic Updater
3984718a9e update 2011-12-23 01:15:42 +00:00
Mark Andrews
edc78a0f1b --enable-fixed-rrset uses reversed order for cyclic 2011-12-23 01:07:21 +00:00
Mark Andrews
b04446fa5f 3260. [bug] "rrset-order cyclic" could appears to not rotate
for some query patterns.  [RT #27170]
2011-12-23 00:41:43 +00:00
Automatic Updater
2342724b72 update 2011-12-23 00:15:32 +00:00
Mark Andrews
f36d5f257f 3260. [bug] "rrset-order cyclic" could appear to not rotate
for some query patterns.  [RT #27170]
2011-12-22 23:57:43 +00:00
Automatic Updater
ac255047aa update copyright notice 2011-12-22 23:45:33 +00:00
Automatic Updater
eb2a2f2770 newcopyrights 2011-12-22 23:30:08 +00:00
Automatic Updater
6a2bfeed4a update 2011-12-22 18:15:29 +00:00
Evan Hunt
e8d0069146 removed the 9.7.4 release notes 2011-12-22 17:37:16 +00:00
Evan Hunt
2d46c5fd9c 3259. [bug] named-compilezone: Suppress "dump zone to <file>"
message when writing to stdout. [RT #27109]
2011-12-22 17:28:32 +00:00
Automatic Updater
754ddedcfd update 2011-12-22 13:16:15 +00:00
Mark Andrews
8eb14452d6 3258. [test] Add "forcing full sign with unreadable keys" test.
[RT #27153]
2011-12-22 12:25:37 +00:00
Automatic Updater
836e227e8e update 2011-12-22 12:15:36 +00:00
Mark Andrews
17820c59a5 forcing full sign with unreadable keys 2011-12-22 12:08:49 +00:00
Automatic Updater
95b0663467 update 2011-12-22 09:16:07 +00:00
Mark Andrews
2b92da1288 3257. [bug] Do not generate a error message when calling fsync()
in a pipe or socket. [RT #27109]
2011-12-22 08:52:24 +00:00
Mark Andrews
a937e32c70 3256. [bug] Disable empty zones for lwresd -C. [RT #27139] 2011-12-22 08:28:18 +00:00
Automatic Updater
0f5d05610e update 2011-12-22 08:16:13 +00:00
Mark Andrews
673cc90d4b 3254. [bug] Set isc_socket_ipv6only() on the IPv6 control channels.
[RT #22249]
2011-12-22 08:11:09 +00:00
Mark Andrews
c6897c35e4 3253. [bug] Return DNS_R_SYNTAX when the input to a text field is
too long. [RT #26956]
2011-12-22 07:44:56 +00:00
Mark Andrews
b5b8e9569a 3251. [bug] Enforce a upper bound (65535 bytes) on the amount of
memory dns_sdlz_putrr() can allocate per record to
                        prevent run away memory consumption on ISC_R_NOSPACE.
                        [RT #26956]
2011-12-22 07:17:37 +00:00
Automatic Updater
c285df25e0 update 2011-12-22 03:16:17 +00:00
Mark Andrews
ab507a4e06 +/- 500ms was too small a fudge factor (-582ms seen in testing), raise to +/- 1000ms 2011-12-22 02:21:34 +00:00
Automatic Updater
fcb7624340 update 2011-12-21 00:16:14 +00:00
Automatic Updater
4c8de525fa update copyright notice 2011-12-20 23:45:39 +00:00
Automatic Updater
977b7ac162 newcopyrights 2011-12-20 23:30:09 +00:00
Automatic Updater
b1bb8a9e51 update 2011-12-20 06:16:11 +00:00
Mark Andrews
dd9e257800 configure strips out VPATH. Use ${srcdir} instead so 'make depend' works
in lib/export.
2011-12-20 05:26:37 +00:00
Automatic Updater
62f14d5826 update 2011-12-20 05:16:23 +00:00
Mark Andrews
76e0ae847a @srdir@ -> @srcdir@ 2011-12-20 05:06:16 +00:00
Automatic Updater
81269541d2 update 2011-12-20 01:15:57 +00:00
Mark Andrews
573eb75e0f update slabbed data layout description 2011-12-20 00:56:32 +00:00
Mark Andrews
229892a099 regen 2011-12-20 00:47:53 +00:00
Mark Andrews
962c241c43 3250. [func] 'configure --enable-developer'; turn on various
configure options, normally off by default, that
                        we want developers to build and test with. [RT #27103]
2011-12-20 00:41:32 +00:00
Mark Andrews
17271f13a6 add missing s 2011-12-20 00:30:16 +00:00
Automatic Updater
8fc65d1f05 update 2011-12-20 00:16:10 +00:00
Mark Andrews
3628f04492 3249. [bug] Update log message when saving slave zones files for
analysis after load failures. [RT #27087]

3248.   [bug]           Configure options --enable-fixed-rrset and
                        --enable-exportlib were incompatible with each
                        other. [RT #27087]

3247.   [bug]           'raw' format zones failed to preserve load order
                        breaking 'fixed' sort order. [RT #27087]
2011-12-20 00:14:16 +00:00
Automatic Updater
51ae34b0c8 update 2011-12-19 23:16:03 +00:00
Mark Andrews
89af8f9be3 set status to 1 on R:FAIL 2011-12-19 23:12:35 +00:00
Automatic Updater
3a0ff7fca7 update 2011-12-17 00:16:00 +00:00
Automatic Updater
0d374582db newcopyrights 2011-12-16 23:30:31 +00:00
Automatic Updater
6453c5315b update 2011-12-16 00:15:39 +00:00
Mark Andrews
2592dc5de7 regen 2011-12-16 00:12:56 +00:00
Mark Andrews
66b64c3fce 3243. [port] netbsd,bsdi: the thread defaults were not being
properly set.
2011-12-16 00:07:00 +00:00
Automatic Updater
1b5d6c5450 update 2011-12-12 12:15:53 +00:00
Mark Andrews
e8da1d8078 join line for old awk 2011-12-12 12:09:23 +00:00
Automatic Updater
5231c6a26c update 2011-12-12 07:16:20 +00:00
Mark Andrews
c4d6a78f38 chech that the final time is within 10 seconds but no greater than the expected interval 2011-12-12 06:49:10 +00:00
Automatic Updater
ea660b0770 update 2011-12-07 23:15:37 +00:00
Mark Andrews
4afeb31498 3241. [bug] Address race conditions in the resolver code.
[RT #26889]
2011-12-07 23:11:34 +00:00
Mark Andrews
cc4569d518 3240. [bug] DNSKEY state change events could be missed. [RT #26874] 2011-12-07 22:50:31 +00:00
Mark Andrews
8ab3b4e7c7 3239. [bug] dns_dnssec_findmatchingkeys needs to use a consistent
timestamp. [RT #26883]
2011-12-07 22:39:48 +00:00
Mark Andrews
32f6a22e89 3238. [bug] keyrdata was not being reinitialized in
lib/dns/rbtdb.c:iszonesecure. [RT#26913]
2011-12-07 22:25:57 +00:00
Automatic Updater
257b8a080c update 2011-12-07 18:15:26 +00:00
Evan Hunt
531e809a1d 3237. [bug] dig -6 didn't work with +trace. [RT #26906] 2011-12-07 17:24:25 +00:00
Automatic Updater
b192d13a5a update 2011-12-05 18:15:32 +00:00
Evan Hunt
db2cb7eaae missed a line 2011-12-05 17:27:27 +00:00
Evan Hunt
6a8119e46d missed a file 2011-12-05 17:24:16 +00:00
Automatic Updater
6751efae8d update 2011-12-05 17:15:58 +00:00
Evan Hunt
40f6436384 Back out change #3182 and respin. 2011-12-05 16:57:27 +00:00
Automatic Updater
f06f816ec9 update 2011-12-03 00:15:48 +00:00
Automatic Updater
f33395b687 update copyright notice 2011-12-02 23:45:51 +00:00
Automatic Updater
b5ff9e5b3d newcopyrights 2011-12-02 23:30:10 +00:00
Automatic Updater
581d77363d update 2011-12-02 08:16:14 +00:00
Mark Andrews
3335f10b81 errno2result now reports caller when unable to convert errno 2011-12-02 07:16:30 +00:00
Automatic Updater
929e50bfe0 update 2011-12-02 07:15:37 +00:00
Mark Andrews
93b52e00f9 3234. [bug] 'make depend' produced invalid makefiles. [RT #26830] 2011-12-02 07:06:31 +00:00
Automatic Updater
a790c8d8a6 update 2011-12-02 00:15:46 +00:00
Automatic Updater
39b1eee8cf update copyright notice 2011-12-01 23:46:06 +00:00
Automatic Updater
dedff3528e newcopyrights 2011-12-01 23:30:11 +00:00
Automatic Updater
fe5f32b812 update 2011-12-01 02:15:45 +00:00
Mark Andrews
67c71db8b3 silence Division by zero warning 2011-12-01 01:31:35 +00:00
Automatic Updater
db9126fe69 update 2011-12-01 01:15:31 +00:00
Mark Andrews
2871055d09 3231. [bug] named could fail to send a uncompressable zone.
[RT #26796]

3230.   [bug]           'dig axfr' failed to properly handle a multi-message
                        axfr with a serial of 0. [RT #26796]
2011-12-01 01:03:08 +00:00
Scott Mann
61c8049230 Fix problem identified by CLANG: assign local var back to struct. 2011-12-01 00:20:32 +00:00
Automatic Updater
0d7aa181e1 update 2011-12-01 00:15:36 +00:00
Automatic Updater
1a02cf771e update copyright notice 2011-11-30 23:45:37 +00:00
Automatic Updater
71ad25ba17 newcopyrights 2011-11-30 23:30:08 +00:00
Automatic Updater
fd1a0b559b update 2011-11-30 06:15:28 +00:00
Mark Andrews
dd13cbb093 #include <isc/print.h> 2011-11-30 06:11:20 +00:00
Evan Hunt
c89e5fd4c8 add print.h 2011-11-30 06:10:23 +00:00
Mark Andrews
9530453877 move declaration to start of block 2011-11-30 06:07:52 +00:00
Automatic Updater
08620bad8a update 2011-11-30 05:16:21 +00:00
Evan Hunt
039f179f7e 3228. [tuning] Dynamically grow symbol table to improve zone
loading performance. [RT #26523]
2011-11-30 04:26:23 +00:00
Automatic Updater
6f3d8d9dbb update 2011-11-30 02:15:30 +00:00
Mark Andrews
dda6a063a2 3227. [bug] Interim fix to make WKS's use of getprotobyname()
and getservbyname() self thread safe. [RT #26232]
2011-11-30 01:22:37 +00:00
Automatic Updater
95a62b6747 update 2011-11-30 01:15:33 +00:00
Mark Andrews
3edc4dba34 3226. [bug] Address minor resource leakages. [RT #26624] 2011-11-30 00:53:35 +00:00
Automatic Updater
7a14a22434 update 2011-11-27 12:15:35 +00:00
Mark Andrews
49f4392f32 make grep more precise 2011-11-27 12:10:10 +00:00
Automatic Updater
4ed74e6600 update 2011-11-24 02:15:32 +00:00
Evan Hunt
8feff2ab3c respin 9.7.5b1 2011-11-24 02:11:27 +00:00
Automatic Updater
134088b1e9 update 2011-11-23 23:15:32 +00:00
Evan Hunt
ad4090df9e 3221. [bug] Fixed a potential coredump on shutdown due to
referencing fetch context after it's been freed.
			[RT #26720]
2011-11-23 22:52:46 +00:00
Automatic Updater
d5a4201f36 update 2011-11-22 04:15:28 +00:00
Mark Andrews
61201a7a3e 9.7.5b1 2011-11-22 04:06:08 +00:00
Automatic Updater
a371376de9 update 2011-11-16 10:15:33 +00:00
Mark Andrews
a22db1268c 3218. [security] Cache lookup could return RRSIG data associated with
nonexistent records, leading to an assertion
                        failure. [RT #26590]
2011-11-16 09:53:21 +00:00
Automatic Updater
a6aff319f0 update 2011-11-15 22:15:36 +00:00
Evan Hunt
fcd518304a 3216. [bug] resolver.c:validated() was not thread-safe. [RT #26478] 2011-11-15 21:46:07 +00:00
Evan Hunt
cf8f0db28b file symtab_test.c was added on branch v9_7 on 2011-11-30 04:26:22 +0000 2011-11-15 21:03:11 +00:00
Automatic Updater
cb3ccbe4da update 2011-11-10 03:16:12 +00:00
Evan Hunt
6fcfecea15 update libisccfg.def 2011-11-10 02:48:20 +00:00
Automatic Updater
74cfe49e38 regenerate v9_7 2011-11-10 02:20:53 +00:00
Automatic Updater
29a9728c08 update 2011-11-10 02:15:46 +00:00
Evan Hunt
a416e52fb7 update api for 9.7.5b1 2011-11-10 01:55:40 +00:00
Automatic Updater
f0f91dfa7f update 2011-11-10 00:15:44 +00:00
Automatic Updater
ef1cc6ebd7 update for 9.7.5b1 2011-11-09 23:46:46 +00:00
Evan Hunt
ce4ea46dd3 Prepare 9.7.5b1 release. 2011-11-09 23:39:07 +00:00
Automatic Updater
546c311c66 update 2011-11-09 06:16:07 +00:00
Evan Hunt
069fa1eb10 3213. [doc] Clarify ixfr-from-differences behavior. [RT #25188] 2011-11-09 05:54:17 +00:00
Automatic Updater
465e37a68c update 2011-11-08 21:15:38 +00:00
Mark Andrews
71bebb88b6 3212. [bug] rbtdb.c: failed to remove a node from the deadnodes
list prior to adding a reference to it leading a
                        possible assertion failure. [RT #23219]
2011-11-08 21:09:09 +00:00
Automatic Updater
b4daf94423 update 2011-11-08 02:15:30 +00:00
Automatic Updater
ea582b291f regen v9_7 2011-11-08 01:39:35 +00:00
Automatic Updater
e02ba543db update 2011-11-08 00:15:36 +00:00
Automatic Updater
bd9aa58852 update copyright notice 2011-11-07 23:46:02 +00:00
Automatic Updater
3992adce1d newcopyrights 2011-11-07 23:30:10 +00:00
Automatic Updater
a4a309f65b update 2011-11-07 02:15:39 +00:00
Automatic Updater
83cac3fd35 regen v9_7 2011-11-07 01:39:40 +00:00
Mark Andrews
ca7b9f18da 3209. [func] Add "dnssec-lookaside 'no'". [RT #24858] 2011-11-07 01:20:51 +00:00
Automatic Updater
1692740692 update 2011-11-07 00:15:42 +00:00
Automatic Updater
5e62f59109 update copyright notice 2011-11-06 23:45:51 +00:00
Automatic Updater
67d3024936 newcopyrights 2011-11-06 23:30:12 +00:00
Mark Andrews
29cadafdb8 3208. [bug] 'dig -y' handle unknown tsig alorithm better.
[RT #25522]
2011-11-06 23:25:29 +00:00
Automatic Updater
4a8ee6dc04 update 2011-11-05 06:15:49 +00:00
Automatic Updater
1c6a9c6bd8 regen 2011-11-05 05:18:46 +00:00
Evan Hunt
9253108001 3207. [contrib] Fixed build error in Berkeley DB DLZ module. [RT #26444] 2011-11-05 05:15:12 +00:00
Automatic Updater
70c9938c8b update 2011-11-05 01:15:32 +00:00
Evan Hunt
ce9a9ac5d5 3206. [cleanup] Add ISC information to log at start time. [RT #25484] 2011-11-05 00:46:11 +00:00
Automatic Updater
8a6f58e42b update 2011-11-05 00:15:34 +00:00
Automatic Updater
4ee39d50ef newcopyrights 2011-11-04 23:30:51 +00:00
Automatic Updater
ef96028e7c update 2011-11-04 23:15:32 +00:00
Evan Hunt
9781ffef82 added documentation of change categories 2011-11-04 22:28:18 +00:00
Automatic Updater
c580f18a41 update 2011-11-04 17:15:30 +00:00
Evan Hunt
fd20faa237 fixed RT reference for change #3174 2011-11-04 17:13:39 +00:00
Automatic Updater
52ca456df6 update 2011-11-04 09:15:57 +00:00
Mark Andrews
441bd60bb8 delay activation 10 seconds to allow slower systems to succeed 2011-11-04 09:04:38 +00:00
Automatic Updater
4ca55f0eb6 update 2011-11-04 08:16:04 +00:00
Mark Andrews
6e91d9a41b sync with HEAD 2011-11-04 07:33:47 +00:00
Automatic Updater
b4f150ede2 update 2011-11-04 06:15:40 +00:00
Evan Hunt
b0843937e8 typo 2011-11-04 05:55:11 +00:00
Evan Hunt
65fdd59d4c 3204. [bug] When a master server that has been marked as
unreachable but sends a NOTIFY, mark it reachable
			again. [RT #25960]
2011-11-04 05:52:21 +00:00
Evan Hunt
82b95385ef 3203. [bug] Increase log level to 'info' for validation failures
from expired or not-yet-valid RRSIGs. [RT #21796]
2011-11-04 05:34:16 +00:00
Automatic Updater
4503f9e859 update 2011-11-04 02:16:09 +00:00
Automatic Updater
4c63c71cbb regen v9_7 2011-11-04 01:37:29 +00:00
Automatic Updater
a99c7533ee update 2011-11-04 00:16:00 +00:00
Automatic Updater
8558d6300e update copyright notice 2011-11-03 23:45:34 +00:00
Automatic Updater
b29b68213c newcopyrights 2011-11-03 23:30:09 +00:00
Automatic Updater
c84b3cfb02 update 2011-11-03 22:15:57 +00:00
Evan Hunt
dc102ed192 3200. [doc] Some rndc functions were undocumented or were
missing from 'rndc -h' output. [RT #25555]
2011-11-03 22:06:43 +00:00
Automatic Updater
b7955c9c28 update 2011-11-03 21:15:39 +00:00
Evan Hunt
afc268ebb8 3198. [doc] Clarified that dnssec-settime can alter keyfile
permissions. [RT #24866]
2011-11-03 20:21:24 +00:00
Automatic Updater
3f23634f0e update 2011-11-03 05:16:09 +00:00
Evan Hunt
e2603103fe remove 1/8 and 2/8 from bogusnets example 2011-11-03 04:55:16 +00:00
Evan Hunt
7613e9e7cb 3196. [bug] nsupdate: return nonzero exit code when target zone
doesn't exist. [RT #25783]
2011-11-03 04:30:37 +00:00
Automatic Updater
cf781cc854 update 2011-11-03 04:15:32 +00:00
Evan Hunt
9a36ef794e 3195. [cleanup] Silence "file not found" warnings when loading
managed-keys zone. [RT #26340]
2011-11-03 03:27:20 +00:00
Automatic Updater
b51999faf8 update 2011-11-03 03:16:07 +00:00
Evan Hunt
fd5449f4f8 3194. [doc] Updated RFC references in the 'empty-zones-enable'
documentation. [RT #25203]
2011-11-03 03:10:05 +00:00
Evan Hunt
691d1d2c86 3193. [cleanup] Changed MAXZONEKEYS to DNS_MAXZONEKEYS, moved to
dnssec.h. [RT #26415]
2011-11-03 02:56:18 +00:00
Automatic Updater
a8533305a2 update 2011-11-03 00:15:29 +00:00
Mark Andrews
8c6d81740b 3192. [bug] A query structure could be used after being freed.
[RT #22208]
2011-11-02 23:46:17 +00:00
Automatic Updater
11a3eab225 update copyright notice 2011-11-02 23:45:34 +00:00
Automatic Updater
6595f581bf newcopyrights 2011-11-02 23:30:19 +00:00
Automatic Updater
a2b4901925 update 2011-11-02 20:15:48 +00:00
Evan Hunt
e8cc0e173c edited a comment for clarity. 2011-11-02 19:40:44 +00:00
Automatic Updater
82b4a7b73e update 2011-11-02 15:16:04 +00:00
Mark Andrews
32bd2f5d3c improve error diagnostics 2011-11-02 14:41:33 +00:00
Automatic Updater
05e2dd6a15 update 2011-11-02 09:16:06 +00:00
Mark Andrews
1a3fb98614 loop waiting for stub zone to transfer 2011-11-02 08:20:21 +00:00
Automatic Updater
37e0b1bcbd update 2011-11-02 06:15:33 +00:00
Evan Hunt
918555fc4a fix usage message 2011-11-02 06:00:15 +00:00
Automatic Updater
81a53300ee update 2011-11-02 03:16:10 +00:00
Evan Hunt
f240cd7599 grammar fix 2011-11-02 02:22:47 +00:00
Automatic Updater
783468308e update 2011-11-02 01:15:26 +00:00
Mark Andrews
3ec4216b58 3191. [bug] Print NULL records using unknown format. [RT #26392] 2011-11-02 01:11:58 +00:00
Automatic Updater
a55a9cf494 update 2011-11-02 00:15:38 +00:00
Automatic Updater
c282d8a75b update copyright notice 2011-11-01 23:46:12 +00:00
Automatic Updater
acbd22483c newcopyrights 2011-11-01 23:30:12 +00:00
Automatic Updater
d148bf327f update 2011-11-01 22:15:39 +00:00
Mark Andrews
d0cf4c7802 3190. [bug] Underflow in error handling in isc_mutexblock_init.
[RT #26397]
2011-11-01 22:04:18 +00:00
Automatic Updater
a2b9c707aa update 2011-11-01 19:15:34 +00:00
Evan Hunt
d3c395f4db 3189. [test] Added a summary report after system tests. [RT #25517] 2011-11-01 18:34:11 +00:00
Automatic Updater
70a9f173bb update 2011-11-01 04:15:26 +00:00
Evan Hunt
23dd98b032 3188. [bug] zone.c:zone_refreshkeys() could fail to detach
references correctly when errors occurred, causing
			a hang on shutdown. [RT #26372]
2011-11-01 03:59:35 +00:00
Automatic Updater
31ef8a7413 update 2011-11-01 00:15:38 +00:00
Automatic Updater
f0cc58ba10 update copyright notice 2011-10-31 23:46:12 +00:00
Automatic Updater
612e5be76a newcopyrights 2011-10-31 23:30:09 +00:00
Automatic Updater
b33c04170d update 2011-10-31 00:16:01 +00:00
Mark Andrews
c94694bfd7 3187. [port] win32: support for Visual Studio 2008. [RT #26356] 2011-10-30 23:43:48 +00:00
Automatic Updater
7a6f43b11e update 2011-10-29 23:15:42 +00:00
Mark Andrews
fbdb4098b0 remove unused parameter from next_origin 2011-10-29 22:31:29 +00:00
Automatic Updater
4739c6bad9 update 2011-10-28 12:15:34 +00:00
Automatic Updater
eb788c2447 update copyright notice 2011-10-28 12:07:18 +00:00
Automatic Updater
572d70e02e newcopyrights 2011-10-28 12:06:30 +00:00
Automatic Updater
65fec4fa4b update 2011-10-28 05:16:03 +00:00
Mark Andrews
687bb8ca0e style, remove redudant assignment 2011-10-28 05:00:03 +00:00
Automatic Updater
5781c9f608 update 2011-10-28 04:15:26 +00:00
Mark Andrews
a4eea6b1ca exit 255 for SKIPPED 2011-10-28 03:16:07 +00:00
Automatic Updater
e86f92fc9f update 2011-10-28 03:15:59 +00:00
Scott Mann
38c6b289f9 add test for recent Net::DNS module. 2011-10-28 02:20:36 +00:00
Automatic Updater
11ab9abc93 update 2011-10-28 00:15:56 +00:00
Automatic Updater
871e091d33 update copyright notice 2011-10-27 23:45:36 +00:00
Automatic Updater
d8674d3810 newcopyrights 2011-10-27 23:30:08 +00:00
Automatic Updater
9ba8f65e98 update 2011-10-27 22:25:48 +00:00
Mark Andrews
5717db8dad move declarations to start of block 2011-10-27 22:21:36 +00:00
Automatic Updater
d38338fd85 update 2011-10-27 21:16:00 +00:00
Scott Mann
07a0a4dedb fix edns0 retry issues (rt #23393/24964). 2011-10-27 20:29:42 +00:00
Automatic Updater
8398bf3d13 update 2011-10-26 06:16:11 +00:00
Mark Andrews
2632325ab1 spin waiting for zone transfer to complete 2011-10-26 05:34:55 +00:00
Automatic Updater
40eaf6ebae update 2011-10-26 00:15:36 +00:00
Automatic Updater
1e112f85f6 update copyright notice 2011-10-25 23:46:16 +00:00
Automatic Updater
9713618f1d newcopyrights 2011-10-25 23:30:09 +00:00
Automatic Updater
7ac24b68f7 update 2011-10-25 22:15:41 +00:00
Mark Andrews
688cf68c1f 3179. [port] kfreebsd: build issues. [RT #26273] 2011-10-25 21:25:30 +00:00
Automatic Updater
29cc00edb7 update 2011-10-25 04:15:52 +00:00
Mark Andrews
455fff78cf improve failure reports 2011-10-25 04:06:48 +00:00
Automatic Updater
28b603e094 update 2011-10-25 03:15:37 +00:00
Mark Andrews
62ccc1a14c Correctly invalidate the sha2/hmac2 contexts. This was already done in practice, but this makes it zero out the whole structure rather than just the first 4 bytes + the key. sha2.c did not always zero out the full sha2 state in invalidate, but will now. 2011-10-25 03:13:54 +00:00
Automatic Updater
0fda82b42b update 2011-10-21 04:15:27 +00:00
Mark Andrews
f5965ba439 remove redundant assignment and variable 2011-10-21 03:56:55 +00:00
Automatic Updater
48819570a4 update 2011-10-21 02:15:39 +00:00
Automatic Updater
e90c12aa1a regen v9_7 2011-10-21 01:39:11 +00:00
Automatic Updater
e1389d0fc0 update 2011-10-21 00:15:33 +00:00
Automatic Updater
7ac50d49b3 update copyright notice 2011-10-20 23:46:05 +00:00
Automatic Updater
78b2b685f5 newcopyrights 2011-10-20 23:30:08 +00:00
Automatic Updater
8b9ce3a945 update 2011-10-20 22:15:29 +00:00
Mark Andrews
d2f6d12a22 3175. [bug] Fix how DNSSEC positive wildcard responses from a
NSEC3 signed zone are validated.  Stop sending a
                        unnecessary NSEC3 record when generating such
                        responses. [RT #26200]
2011-10-20 21:46:17 +00:00
Mark Andrews
45ed7563d3 3174. [bug] Always compute to revoked key tag from scratch.
[RT #24711]
2011-10-20 21:26:17 +00:00
Automatic Updater
bb989de483 update 2011-10-18 00:15:53 +00:00
Automatic Updater
12cc8e4b55 update copyright notice 2011-10-17 23:45:49 +00:00
Automatic Updater
494956367e newcopyrights 2011-10-17 23:30:11 +00:00
Automatic Updater
3c35c14f4a update 2011-10-17 06:16:07 +00:00
Mark Andrews
22e3009f38 sleep 1 # allow lwresd to finish starting. 2011-10-17 05:43:43 +00:00
Automatic Updater
2b3faeab85 update 2011-10-17 03:16:03 +00:00
Mark Andrews
97f56425ad sync with head 2011-10-17 02:38:48 +00:00
Mark Andrews
a793e659f5 add --restart arg 2011-10-17 02:37:41 +00:00
Automatic Updater
c6825bef82 update 2011-10-15 05:15:33 +00:00
Mark Andrews
6a24616ccf 3173. [port] Correctly validate root DS responses. [RT #25726] 2011-10-15 05:12:04 +00:00
Automatic Updater
d2262312eb update 2011-10-14 08:16:00 +00:00
Mark Andrews
d6bc7dc77c properly compute the revoked key's id 2011-10-14 07:26:42 +00:00
Automatic Updater
db68945438 update 2011-10-14 06:15:51 +00:00
Mark Andrews
dc9823fb8a 3171. [bug] Exclusively lock the task when adding a zone using
'rndc addzone'.  [RT #25600]
2011-10-14 05:47:25 +00:00
Automatic Updater
14e26c0959 update 2011-10-13 23:16:07 +00:00
Automatic Updater
7e2c785e5e update copyright notice 2011-10-13 22:47:23 +00:00
Automatic Updater
7f687c254f newcopyrights 2011-10-13 22:46:28 +00:00
Automatic Updater
1d445ba9c6 update 2011-10-13 14:15:32 +00:00
Mark Andrews
d7ae34d839 handle unchecked assignment 2011-10-13 13:15:45 +00:00
Automatic Updater
fd4c85061a update 2011-10-13 08:16:08 +00:00
Mark Andrews
85119d84b9 #include <stdlib.h> 2011-10-13 07:42:31 +00:00
Automatic Updater
7467b14c0c update 2011-10-13 05:16:07 +00:00
Mark Andrews
62b55f2813 'grep' -> 'grep -w' when checking for keyids 2011-10-13 04:42:02 +00:00
Automatic Updater
2dccf11e3a update 2011-10-13 01:15:27 +00:00
Mark Andrews
4c697150a3 3169. [func] Catch db/version mis-matches when call dns_db_*().
[RT #26017]
2011-10-13 00:51:59 +00:00
Automatic Updater
847cdc2372 update 2011-10-13 00:15:28 +00:00
Mark Andrews
d34e308213 3169. [func] Catch db/version mis-matches when call dns_db_*().
[RT #26017]
2011-10-13 00:06:02 +00:00
Automatic Updater
45d403032d update copyright notice 2011-10-12 23:45:33 +00:00
Automatic Updater
3f4ba1fa54 newcopyrights 2011-10-12 23:30:08 +00:00
Automatic Updater
3169fab89f update 2011-10-12 01:15:30 +00:00
Mark Andrews
605095f7e0 3167. [bug] Negative answers from forwarders were not being
correctly tagged making them appear to not be cached.
			[RT #25380]
2011-10-12 00:28:13 +00:00
Automatic Updater
b1fdb5273a update 2011-10-11 01:15:27 +00:00
Mark Andrews
c29205c329 handle named.args 2011-10-11 00:50:01 +00:00
Automatic Updater
15a75bf608 update 2011-10-11 00:15:53 +00:00
Scott Mann
e9dfa90049 Change s/\R//g to chomp(). 2011-10-10 23:22:38 +00:00
Automatic Updater
6fd741539a update 2011-10-10 20:15:31 +00:00
Scott Mann
48a46376cc fix subdirectory path in start.pl 2011-10-10 19:29:40 +00:00
Automatic Updater
3f91210cb6 update 2011-10-10 19:15:25 +00:00
Scott Mann
a7af4a545b allow options to named via start.pl (RT 26044). 2011-10-10 18:53:48 +00:00
Automatic Updater
41d335872e update 2011-10-07 05:15:32 +00:00
Evan Hunt
4dd839d8e2 3157. [tuning] Reduce the time spent in "rndc reconfig" by parsing
the config file before pausing the server. [RT #21373]
2011-10-07 04:43:36 +00:00
Automatic Updater
1b5c297c2d update 2011-10-07 03:16:02 +00:00
Mark Andrews
b6e1726eac 3161. [bug] zone.c:del_sigs failed to always reset rdata leading
assertion failures. [RT #25880]
2011-10-07 03:01:35 +00:00
Automatic Updater
f5611188f2 update 2011-10-07 02:15:28 +00:00
Automatic Updater
f25f2b207c regen v9_7 2011-10-07 01:39:18 +00:00
Automatic Updater
bf4134c520 update 2011-10-06 12:15:24 +00:00
Mark Andrews
bd6d1e72b3 fix default for sig-signing-type 2011-10-06 11:52:29 +00:00
Mark Andrews
0fa710047e rt21764 session-* fixes 2011-10-06 11:36:08 +00:00
Automatic Updater
5c17396f5c update 2011-09-30 06:15:53 +00:00
Mark Andrews
809adc90e9 3129. [bug] Named could crash on 'rndc reconfig' when
allow-new-zones was set to yes and named ACLs
                        were used, [RT #22739]
2011-09-30 05:25:28 +00:00
Automatic Updater
9ecd6ad01d update 2011-09-08 16:15:26 +00:00
Evan Hunt
063e8ae6cd update cvsignore 2011-09-08 15:28:03 +00:00
Automatic Updater
85855bd04a update 2011-09-07 19:15:27 +00:00
Evan Hunt
f6ce33c392 3154. [bug] Attempting to print an empty rdataset could trigger
an assert. [RT #25452]
2011-09-07 19:11:45 +00:00
Automatic Updater
fdcf4e9a88 update 2011-09-06 06:15:41 +00:00
Mark Andrews
73f6bc3ebb add depend target 2011-09-06 05:54:38 +00:00
Automatic Updater
915155738e update 2011-09-06 04:15:30 +00:00
Mark Andrews
2cb9555c26 $ -> 18739 2011-09-06 04:05:37 +00:00
Mark Andrews
ebd1cb38cb run unit tests even if system tests fail. Report if either set of tests fail 2011-09-06 04:03:07 +00:00
Automatic Updater
5046eb9e1a update 2011-09-06 00:15:30 +00:00
Automatic Updater
35973584f3 update copyright notice 2011-09-05 23:45:33 +00:00
Automatic Updater
20737d23f6 newcopyrights 2011-09-05 23:30:08 +00:00
Automatic Updater
674e2cd3c8 update 2011-09-05 18:15:29 +00:00
Evan Hunt
cad1ee5fde 3152. [cleanup] Some versions of gcc and clang failed due to
incorrect use of __builtin_expect. [RT #25183]
2011-09-05 18:01:30 +00:00
Evan Hunt
c5d451695e removed Makefile that shouldn't have been committed 2011-09-05 17:41:19 +00:00
Evan Hunt
22fe67981e add time.h to silence compiler warning 2011-09-05 17:39:23 +00:00
Automatic Updater
5b5b2e5e6c update 2011-09-05 00:15:33 +00:00
Mark Andrews
e4b4f2ed77 manual adds 2011-09-05 00:08:47 +00:00
Automatic Updater
340265ed8a update 2011-09-04 13:15:28 +00:00
Mark Andrews
da45cf7d9f add 2011-09-04 13:02:11 +00:00
Automatic Updater
265454279b update 2011-09-04 12:15:25 +00:00
Mark Andrews
8a57d5e942 report R:PASS/FAIL 2011-09-04 12:11:00 +00:00
Automatic Updater
1b35f8454b update 2011-09-03 16:15:23 +00:00
Evan Hunt
ded997a823 removed unused variable to silence a compiler warning 2011-09-03 16:05:32 +00:00
Automatic Updater
9af7e3b726 update 2011-09-03 06:15:26 +00:00
Evan Hunt
bf99944cd3 fix whitespace 2011-09-03 05:52:55 +00:00
Automatic Updater
bf157cf5f4 update 2011-09-03 00:15:43 +00:00
Automatic Updater
69a1852134 update copyright notice 2011-09-02 23:45:31 +00:00
Automatic Updater
9634848023 update 2011-09-02 23:15:32 +00:00
Evan Hunt
3365971166 3139. [test] Added tests from RFC 6234, RFC 2202, and RFC 1321
for the hashing algorithms (md5, sha1 - sha512, and
			their hmac counterparts).  [RT #25067]
2011-09-02 22:23:08 +00:00
Automatic Updater
cb896a6507 update 2011-09-02 22:15:28 +00:00
Evan Hunt
83f4f1c61b 3151. [bug] Queries for type RRSIG or SIG could be handled
incorrectly.  [RT #21050]
2011-09-02 21:54:22 +00:00
Automatic Updater
7558285577 update 2011-09-02 21:15:24 +00:00
Evan Hunt
2533514b8b 3149. [tuning] Improve scalability by allocating one zone
task per 100 zones at startup time.  (The
			BIND9_ZONE_TASKS_HINT environment variable
			which was established as a temporary measure
			in change #3132 is no longer needed or
			used.) [rt25541]
2011-09-02 20:22:27 +00:00
Automatic Updater
ee34af0d10 update 2011-09-02 15:15:26 +00:00
Scott Mann
c935b96e9c fix comment 2011-09-02 14:42:34 +00:00
Automatic Updater
5b1d5028da update 2011-09-02 02:45:41 +00:00
Mark Andrews
82b403ea73 don't use a expired slave zone 2011-09-02 02:23:33 +00:00
Automatic Updater
6a7faae8cc update 2011-09-01 00:15:54 +00:00
Automatic Updater
0dbb98778e update copyright notice 2011-08-31 23:45:32 +00:00
Automatic Updater
2d3535112d newcopyrights 2011-08-31 23:30:08 +00:00
Automatic Updater
b99ebe6c92 update 2011-08-31 08:15:26 +00:00
Mark Andrews
d800ae7802 3148. [bug] Processing of normal queries could be stalled when
forwarding a UPDATE message. [RT #24711]
2011-08-31 07:20:44 +00:00
Automatic Updater
31ed5789d1 update 2011-08-31 01:15:28 +00:00
Mark Andrews
0cd7b779d3 silence clang warnings 2011-08-31 00:47:57 +00:00
Automatic Updater
3a41396c3b update 2011-08-31 00:15:48 +00:00
Automatic Updater
bbd11f9c74 update copyright notice 2011-08-30 23:45:34 +00:00
Automatic Updater
c069179cab newcopyrights 2011-08-30 23:30:10 +00:00
Automatic Updater
3b444759a8 update 2011-08-30 23:15:31 +00:00
Mark Andrews
172f4853b7 silence clang warnings 2011-08-30 22:28:18 +00:00
Automatic Updater
77c23033c8 update 2011-08-30 22:15:28 +00:00
Mark Andrews
43d6b173bc report the result of dns_adb_createfind 2011-08-30 21:53:08 +00:00
Mark Andrews
6e3f51505e dns_view_issecuredomain: check that view->secroots_priv is non NULL before calling dns_keytable_issecuredomaiani otherwise return ISC_R_NOTFOUND 2011-08-30 21:47:20 +00:00
Automatic Updater
d261593e81 update 2011-08-30 14:15:30 +00:00
Mark Andrews
9533ace890 silence clang warnings 2011-08-30 14:04:21 +00:00
Automatic Updater
555d3a5f64 update 2011-08-30 01:15:27 +00:00
Mark Andrews
785944ebd1 POST(port); POST(addr); 2011-08-30 00:20:18 +00:00
Automatic Updater
b9576c1a55 update 2011-08-30 00:15:44 +00:00
Automatic Updater
110fd066b2 update copyright notice 2011-08-29 23:45:34 +00:00
Automatic Updater
9455840478 newcopyrights 2011-08-29 23:30:09 +00:00
Mark Andrews
33412a6755 query could be tested uninitialised, check the result of dns_message_create 2011-08-29 23:26:19 +00:00
Automatic Updater
100ceaf76e update 2011-08-29 07:15:29 +00:00
Mark Andrews
5be5c9dd6c check the results of dns_name_toprincipal calls, only use gnamebuf.value when valid 2011-08-29 06:38:35 +00:00
Automatic Updater
c3b1a39f38 update 2011-08-29 06:15:52 +00:00
Mark Andrews
cbf8f049ea *++tp = 0; -> tp++; *tp = 0; 2011-08-29 06:00:29 +00:00
Automatic Updater
48d17ac717 update 2011-08-29 05:16:00 +00:00
Mark Andrews
4733ef3db6 POST(p); POST(len); 2011-08-29 04:22:06 +00:00
Automatic Updater
3b9a2e08f8 update 2011-08-29 04:15:29 +00:00
Mark Andrews
fa79b32d9e INSIST(response); 2011-08-29 04:04:42 +00:00
Automatic Updater
1a4be1e7c3 update 2011-08-29 00:15:34 +00:00
Mark Andrews
bddfc920b0 add POST, len is not needed 2011-08-28 23:56:42 +00:00
Mark Andrews
0ff5d479be add POST 2011-08-28 23:48:54 +00:00
Automatic Updater
82ed23194e update copyright notice 2011-08-28 23:45:28 +00:00
Mark Andrews
9ad02d655e add missing check_result 2011-08-28 23:37:40 +00:00
Automatic Updater
2b0bbc0f21 newcopyrights 2011-08-28 23:30:08 +00:00
Automatic Updater
a9341a82f1 update 2011-08-28 10:15:26 +00:00
Mark Andrews
d0d0200ad6 silence 'never read' warning 2011-08-28 09:28:32 +00:00
Mark Andrews
3bb6385d0e report if dns_rdata{class,type}_totext failed 2011-08-28 09:15:08 +00:00
Automatic Updater
621d2e0204 update 2011-08-28 08:15:26 +00:00
Mark Andrews
15cc67ef12 t3 is not used 2011-08-28 08:13:42 +00:00
Automatic Updater
fd15b7aae4 update 2011-08-27 00:15:53 +00:00
Automatic Updater
e29f472f80 update copyright notice 2011-08-26 23:45:30 +00:00
Automatic Updater
99162dd8fa update 2011-08-26 05:16:04 +00:00
Mark Andrews
c49683433b silence 'is never read' warnings 2011-08-26 04:45:38 +00:00
Automatic Updater
669aed2158 update 2011-08-26 04:15:31 +00:00
Mark Andrews
f47f63e541 3134. [bug] Improve the accuracy of dnssec-signzone's signing
statistics. [RT #16030]
2011-08-26 03:55:14 +00:00
Automatic Updater
1698f6c929 update 2011-08-26 00:15:49 +00:00
Automatic Updater
65232ec5fa update copyright notice 2011-08-25 23:45:28 +00:00
Automatic Updater
b396825615 newcopyrights 2011-08-25 23:30:13 +00:00
Automatic Updater
154d3adcbc update 2011-08-25 14:15:25 +00:00
Mark Andrews
e734a20ff0 simplify flag printing, protect first with #ifdef USEINITALWS 2011-08-25 13:30:18 +00:00
Automatic Updater
1addc7c818 update 2011-08-25 11:15:26 +00:00
Mark Andrews
a60c4bb0c8 remove isc_os_minprivs call accidently committed 2011-08-25 10:26:17 +00:00
Automatic Updater
3b5fbbf5fe update 2011-08-25 08:15:30 +00:00
Mark Andrews
ef7186adef cltfd is only needed when select is being used 2011-08-25 08:11:31 +00:00
Automatic Updater
7387ca7a82 update 2011-08-25 07:15:43 +00:00
Mark Andrews
ca31f9bf14 silence 'Dereference of undefined pointer value' by assigning to 'sorted' sequentially from zero 2011-08-25 06:30:00 +00:00
Mark Andrews
dc6ecfde62 save the result of is_response(msg) so it can be treated as a invariant by clang 2011-08-25 06:23:06 +00:00
Automatic Updater
adbb626636 update 2011-08-25 06:15:33 +00:00
Mark Andrews
d865e14494 silence null pointer dereference warning by adding INSIST(sibling != NULL); 2011-08-25 06:11:04 +00:00
Automatic Updater
d003a234cf update 2011-08-25 00:15:30 +00:00
Mark Andrews
991aecda47 lib/dns/tests/testdata/dbiterator/zone2.data 2011-08-24 23:54:43 +00:00
Automatic Updater
11fc4e9d94 update 2011-08-24 20:15:26 +00:00
Scott Mann
e45d820cf6 Fixes compilation errors in ATF under gcc4.6.0 (RT #25598). 2011-08-24 19:59:03 +00:00
Automatic Updater
77351922c5 update 2011-08-24 00:15:32 +00:00
Automatic Updater
6b1cb71807 update copyright notice 2011-08-23 23:53:26 +00:00
Mark Andrews
e4bcbf4a4e manual add 2011-08-23 23:45:22 +00:00
Automatic Updater
4120ec8591 update 2011-08-23 04:15:27 +00:00
Mark Andrews
789547be22 #include <stdlib.h> 2011-08-23 03:52:41 +00:00
Automatic Updater
1090746b55 update 2011-08-23 03:15:47 +00:00
Evan Hunt
e15400ccec Fix backport issue 2011-08-23 02:54:41 +00:00
Automatic Updater
acfc813fe3 update 2011-08-23 02:15:25 +00:00
Evan Hunt
c0f1383f02 3145. [test] Capture output of ATF unit tests in "./atf.out" if
there were any errors while running them. [RT #25527]
2011-08-23 01:29:14 +00:00
Automatic Updater
2233651298 update 2011-08-23 01:15:26 +00:00
Evan Hunt
77d878b630 3144. [bug] dns_dbiterator_seek() could trigger an assert when
used with a nonexistent database node. [RT #25358]
2011-08-23 00:57:46 +00:00
Evan Hunt
b7be8695c2 file Makefile was added on branch v9_7 on 2011-09-02 20:22:26 +0000 2011-08-19 00:46:41 +00:00
Automatic Updater
62f4976ba2 update 2011-08-19 00:17:22 +00:00
Automatic Updater
d78521d0f1 update copyright notice 2011-08-18 23:45:29 +00:00
Automatic Updater
7060c33697 newcopyrights 2011-08-18 23:30:08 +00:00
Automatic Updater
895e90d967 update 2011-08-18 18:15:26 +00:00
Mark Andrews
016b20872a cast to unsigned 2011-08-18 17:37:14 +00:00
Automatic Updater
6185a29b3e update 2011-08-18 07:15:32 +00:00
Mark Andrews
87ec3cc5e0 sync with head 2011-08-18 06:50:01 +00:00
Mark Andrews
7e67387531 3143. [bug] Silence clang compiler warnings. [RT #25174] 2011-08-18 06:41:59 +00:00
Automatic Updater
473461077d update 2011-08-18 05:16:01 +00:00
Mark Andrews
d7ffccecc0 3143. [bug] Silence clang compiler warnings. [RT #25174] 2011-08-18 05:04:37 +00:00
Automatic Updater
78b5fca661 update 2011-08-17 00:15:49 +00:00
Automatic Updater
8cf8ec5c40 update copyright notice 2011-08-16 23:45:29 +00:00
Automatic Updater
a8b440c1a1 newcopyrights 2011-08-16 23:30:11 +00:00
Automatic Updater
d762a9808d update 2011-08-16 03:15:59 +00:00
Mark Andrews
38aa6b80f4 3142. [bug] NAPTR is class agnostic. [RT #25429] 2011-08-16 02:59:33 +00:00
Automatic Updater
0f20ac1514 update 2011-08-16 00:15:24 +00:00
Mark Andrews
59a1d41ca9 3142. [bug] NAPTR is class agnostic. [RT #25429] 2011-08-16 00:10:31 +00:00
Evan Hunt
7bcd1bf151 file zone2.data was added on branch v9_7 on 2011-08-23 00:57:46 +0000 2011-08-15 23:58:41 +00:00
Evan Hunt
be69f7e809 file zone1.data was added on branch v9_7 on 2011-08-23 00:57:46 +0000 2011-08-09 18:17:33 +00:00
Evan Hunt
d814fa446b file dbiterator_test.c was added on branch v9_7 on 2011-08-23 00:57:46 +0000 2011-08-09 18:17:31 +00:00
Automatic Updater
cd8571aa95 update 2011-08-09 04:15:28 +00:00
Automatic Updater
c1d6d061c1 update copyright notice 2011-08-09 04:11:29 +00:00
Automatic Updater
aceb10d783 newcopyrights 2011-08-09 04:10:40 +00:00
Automatic Updater
d6b2dca644 update 2011-08-09 03:15:58 +00:00
Mark Andrews
c8ba3fc75d 3141. [bug] Silence spurious "zone serial (0) unchanged" messages
associated with empty zones. [RT #25079]
2011-08-09 03:14:31 +00:00
Automatic Updater
8116f2b24d update 2011-08-09 02:15:25 +00:00
Automatic Updater
7b4713a02e regen v9_7 2011-08-09 01:39:19 +00:00
Automatic Updater
e8f1b1213d update 2011-08-09 00:15:47 +00:00
Automatic Updater
379e2ac37f update copyright notice 2011-08-08 23:45:28 +00:00
Automatic Updater
ed9e1d0fa6 newcopyrights 2011-08-08 23:30:08 +00:00
Automatic Updater
bf094b5cca update 2011-08-08 04:15:31 +00:00
Mark Andrews
c313719d03 rt25400 s/domain/filename/ 2011-08-08 03:28:44 +00:00
Automatic Updater
f246dfbfdf update 2011-08-03 02:16:33 +00:00
Automatic Updater
dde140cb6f regen v9_7 2011-08-03 02:08:34 +00:00
Automatic Updater
b737488df5 update 2011-08-02 05:16:16 +00:00
Evan Hunt
1999760f5d 3136. [func] Add RFC 1918 reverse zones to the list of built-in
empty zones switched on by the 'empty-zones-enable'
			option. [RT #24990]
2011-08-02 04:57:54 +00:00
Automatic Updater
2f809da8bc update 2011-07-30 02:16:25 +00:00
Automatic Updater
064a2bea35 sync 2011-07-30 01:58:08 +00:00
Automatic Updater
84644c3f38 update 2011-07-29 03:16:50 +00:00
Mark Andrews
cafd42ef9d missing isc__strerror on error paths 2011-07-29 02:19:49 +00:00
Automatic Updater
d96dfb6b2a update 2011-07-29 00:16:31 +00:00
Automatic Updater
dfefcdbc5d update copyright notice 2011-07-28 23:46:45 +00:00
Automatic Updater
1ad60cdae7 newcopyrights 2011-07-28 23:30:24 +00:00
Automatic Updater
54b07e13d5 update 2011-07-28 05:16:17 +00:00
Mark Andrews
2bc71862f6 3138. [bug] Address memory leaks and out-of-order operations when
shutting named down. [RT #25210]
2011-07-28 04:37:35 +00:00
Automatic Updater
e965f61466 update 2011-07-28 03:26:45 +00:00
Mark Andrews
4c74c25bf5 add ${ISC_INCLUDES} 2011-07-28 03:17:29 +00:00
Automatic Updater
15641b74aa update 2011-07-28 02:16:36 +00:00
Mark Andrews
85f91f6416 use UNUSED() 2011-07-28 01:25:04 +00:00
Automatic Updater
f4064f6488 update 2011-07-27 08:16:53 +00:00
Mark Andrews
025933687a silence 'expression result unused' from clang 2011-07-27 07:43:16 +00:00
Automatic Updater
d575c37a64 update 2011-07-27 07:16:29 +00:00
Mark Andrews
51b7bdb802 use UNUSED(x) not 'x = x' 2011-07-27 07:08:13 +00:00
Automatic Updater
13ec66ef56 update 2011-07-26 22:16:20 +00:00
Michael Graff
8cd861021b regenerate 2011-07-26 22:09:48 +00:00
Michael Graff
6d511577b0 fix for compiling on OSX Lion. Verified it compiles on Snow Leopard using older XCode as well. 2011-07-26 22:00:36 +00:00
Automatic Updater
fc966bc8b7 update 2011-07-26 05:16:10 +00:00
Mark Andrews
83da3b502c remove check for oldid as named may have already deleted it 2011-07-26 04:41:06 +00:00
Mark Andrews
d14f0bc8dd id was not being properly set 2011-07-26 04:30:01 +00:00
Automatic Updater
f463c3611b update 2011-07-24 00:16:42 +00:00
Automatic Updater
417a6e5ce9 update copyright notice 2011-07-23 23:46:45 +00:00
Automatic Updater
8b1aabd2a7 update 2011-07-23 09:16:11 +00:00
Mark Andrews
06de2249b5 9.7.4 2011-07-23 08:32:06 +00:00
Automatic Updater
7c56a5fa65 update 2011-07-22 00:16:30 +00:00
Automatic Updater
60383f3479 update copyright notice 2011-07-21 23:46:46 +00:00
Automatic Updater
0d16ffbb38 update 2011-07-21 07:16:19 +00:00
Mark Andrews
376b338da4 s/fallbackas/fallback as/ 2011-07-21 06:24:27 +00:00
Automatic Updater
0b619c6751 update 2011-07-21 03:16:21 +00:00
Mark Andrews
fba67c8aef Missing changes note:
3114.   [bug]           Retain expired RRSIGs in dynamic zones if key is
                        inactive and there is no replacement key. [RT #23136]
2011-07-21 03:03:58 +00:00
Mark Andrews
f79d8d3e0a 9.7.4 2011-07-21 02:43:44 +00:00
Mark Andrews
b7ae61a21b update changes note 2011-07-21 02:40:05 +00:00
Automatic Updater
66040ff693 update 2011-07-21 02:16:40 +00:00
Mark Andrews
bf31eeeee8 3135. [port] FreeBSD: workaround broken IPV6_USE_MIN_MTU processing.
See http://www.freebsd.org/cgi/query-pr.cgi?pr=158307
                        [RT #24950]
2011-07-21 01:46:17 +00:00
Automatic Updater
19286de949 update 2011-07-21 00:16:30 +00:00
Automatic Updater
159b4147ae update copyright notice 2011-07-20 23:46:50 +00:00
Automatic Updater
2adf1074e4 update 2011-07-20 00:16:33 +00:00
Curtis Blackburn
f6ad003ecf 3132.[bug]Workaround for excessive startup time with
large number of zones;
 allow setting of an environment variable to tune
 the number of tasks. default is 8, reccommend
 200 zones per task. If you have 200000 zones:
 csh: setenv BIND9_ZONE_TASKS_HINT 1000
 sh:  BIND9_ZONE_TASKS_HINT=1000;
      export BIND9_ZONE_TASKS_HINT
 Applicable to 9.7, 9.6, auto-tuned in 9.8 and up.
2011-07-20 00:00:24 +00:00
Automatic Updater
ff8dbeaea2 update 2011-07-09 00:16:21 +00:00
Automatic Updater
414b674e7c update copyright notice 2011-07-08 23:46:44 +00:00
Automatic Updater
c5548964bf newcopyrights 2011-07-08 23:30:18 +00:00
Automatic Updater
e946c1762a update 2011-07-08 02:16:14 +00:00
Evan Hunt
4d1b079ac6 3133. [bug] Change #3114 was incomplete. [RT #24577] 2011-07-08 01:46:42 +00:00
Automatic Updater
fe3ce1da2b update 2011-06-21 22:16:17 +00:00
Evan Hunt
41ca3ff801 Add the newly discovered PoD to the nsupdate test. (No CHANGES note.) 2011-06-21 22:14:42 +00:00
Automatic Updater
77f4a19e4e update 2011-06-17 00:16:33 +00:00
Automatic Updater
89645a2265 update copyright notice 2011-06-16 23:46:34 +00:00
Automatic Updater
851bccc5a1 update 2011-06-16 02:16:14 +00:00
Mark Andrews
2b24897c64 update for re-tag of 9.7.4rc1 2011-06-16 01:28:42 +00:00
Automatic Updater
011f157473 update 2011-06-15 04:16:49 +00:00
Mark Andrews
b3efdb08bd move 9.7.4rc1 release marker 2011-06-15 03:40:52 +00:00
Automatic Updater
38dfbc0462 update 2011-06-09 01:16:31 +00:00
Automatic Updater
96936dcdab update 2011-06-09 00:16:23 +00:00
Evan Hunt
d61efe262b Fixed an nsupdate test error. 2011-06-09 00:15:38 +00:00
Evan Hunt
b55dbfdc1e 3124. [bug] Use an rdataset attribute flag to indicate
negative-cache records rather than using rrtype 0;
			this will prevent problems when that rrtype is
			used in actual DNS packets. [RT #24777]

3123.	[security]	Change #2912 exposed a latent flaw in
			dns_rdataset_totext() that could cause named to
			crash with an assertion failure. [RT #24777]
2011-06-08 23:15:44 +00:00
Automatic Updater
2327cb8332 update 2011-06-06 02:16:58 +00:00
Automatic Updater
2c50f32188 cleanup removed files 2011-06-06 01:22:07 +00:00
Automatic Updater
bc6393b238 update 2011-06-02 21:16:07 +00:00
Evan Hunt
015872cba9 3122. [cleanup] dnssec-settime: corrected usage message. [RT #24664] 2011-06-02 20:23:49 +00:00
Automatic Updater
40fa732370 update 2011-05-31 01:17:48 +00:00
Automatic Updater
37b7f9ed76 update copyright notice 2011-05-31 01:04:36 +00:00
Mark Andrews
5773bce67f update for 9.7.4rc1 re-tag 2011-05-31 00:27:49 +00:00
Automatic Updater
4c0de19d1b update 2011-05-30 23:16:42 +00:00
Mark Andrews
2358a7881c date +%s is not portable, use perl -e 'print time();', Adjust messages 2011-05-30 22:17:25 +00:00
Automatic Updater
593f1e35d7 update 2011-05-30 08:17:02 +00:00
Mark Andrews
863a0dbd20 The old active key could be deleted before the "former standby key has now
signed fully" ran causing it to fail.  Delay the deletion by 10 seconds.
2011-05-30 07:28:13 +00:00
Automatic Updater
0a3856d2c4 update 2011-05-28 01:17:53 +00:00
Automatic Updater
64a1132d74 update 2011-05-28 00:18:49 +00:00
Automatic Updater
7a0ca2b0c7 update copyright notice 2011-05-28 00:15:26 +00:00
Automatic Updater
c057a9b862 newcopyrights 2011-05-27 23:33:30 +00:00
Automatic Updater
6fc5dc883e update 2011-05-27 04:51:50 +00:00
Mark Andrews
d44cb7d304 move dns_trust_totext from masterdump.c to rdataset.c so that exportlib will build 2011-05-27 04:41:18 +00:00
Automatic Updater
e51b6ade48 update 2011-05-27 02:16:25 +00:00
Mark Andrews
babe8e1954 move 9.7.4rc1 release point 2011-05-27 01:57:48 +00:00
Automatic Updater
b6d8f4bcf7 update 2011-05-27 00:16:32 +00:00
Automatic Updater
4a2abf6faa update copyright notice 2011-05-26 23:46:25 +00:00
Automatic Updater
419ef16980 newcopyrights 2011-05-26 23:36:49 +00:00
Automatic Updater
8f9cf97d96 update 2011-05-26 23:16:34 +00:00
Evan Hunt
6dd373ebab 3121. [security] An authoritative name server sending a negative
response containing a very large RRset could
                        trigger an off-by-one error in the ncache code
                        and crash named. [RT #24650]

3120.	[bug]		Named could fail to validate zones listed in a DLV
			that validated insecure without using DLV and had
			DS records in the parent zone. [RT #24631]

3119.	[bug]		When rolling to a new DNSSEC key, a private-type
			record could be created and never marked complete.
			[RT #23253]
2011-05-26 23:10:13 +00:00
Automatic Updater
fc5f2e310e update 2011-05-25 00:16:59 +00:00
Automatic Updater
7000688bfc update copyright notice 2011-05-24 23:46:37 +00:00
Automatic Updater
35e6e7bfe9 update 2011-05-24 02:16:46 +00:00
Automatic Updater
5d900d5216 regen v9_7 2011-05-24 02:10:39 +00:00
Automatic Updater
0f862dd540 update 2011-05-24 01:16:40 +00:00
Automatic Updater
5dd7596365 v9_7_4rc1 2011-05-24 00:48:09 +00:00
Mark Andrews
1bf261f075 9.7.4rc1 2011-05-24 00:41:44 +00:00
Mark Andrews
63aaf0dba0 9.7.4rc1 2011-05-24 00:35:23 +00:00
Mark Andrews
53f747143d v9_7_4rc1 2011-05-24 00:26:44 +00:00
Automatic Updater
ea155b7f8b update 2011-05-23 23:16:32 +00:00
Evan Hunt
8a2c86ea10 3118. [bug] nsupdate could dump core on shutdown when using
SIG(0) keys. [RT #24604]
2011-05-23 22:23:05 +00:00
Automatic Updater
c02a729605 update 2011-05-23 21:16:16 +00:00
Evan Hunt
0b53de22db 3117. [cleanup] Remove doc and parser references to the
never-implemented 'auto-dnssec create' option.
			[RT #24533]
2011-05-23 20:55:24 +00:00
Automatic Updater
86039977b2 update 2011-05-20 00:16:56 +00:00
Automatic Updater
62bffa3ef0 update copyright notice 2011-05-19 23:46:30 +00:00
Automatic Updater
5f01b84397 newcopyrights 2011-05-19 23:31:12 +00:00
Automatic Updater
12f0fa2a6a update 2011-05-19 22:16:19 +00:00
Evan Hunt
905b16ef04 another post-commit fix for change 3114: call dns_db_resigned()/
dns_db_setsigningtime() only when incrementally resigning, not other
times.
2011-05-19 21:28:01 +00:00
Automatic Updater
3267c08327 update 2011-05-19 05:16:23 +00:00
Evan Hunt
4b7c993dc2 3114. [bug] Retain expired RRSIGs in dynamic zones if key is
inactive and there is no replacement key. [RT #23136]
2011-05-19 04:42:18 +00:00
Automatic Updater
7a9bb15a3c update 2011-05-18 02:16:31 +00:00
Automatic Updater
68e2731590 regen v9_7 2011-05-18 02:11:50 +00:00
Automatic Updater
3602d7ba6a update 2011-05-17 06:16:31 +00:00
Mark Andrews
203987b1f6 3113. [doc] Document the relationship between serial-query-rate
and NOTIFY messages.
2011-05-17 05:30:22 +00:00
Automatic Updater
ea2b2d9b49 update 2011-05-17 02:16:21 +00:00
Automatic Updater
28d84645bb regen v9_7 2011-05-17 02:10:42 +00:00
Evan Hunt
94a0e96ade add dns_dnssec_signs 2011-05-17 01:46:41 +00:00
Automatic Updater
480c85c467 update 2011-05-17 00:17:02 +00:00
Automatic Updater
d9e9d845a5 update copyright notice 2011-05-16 23:46:51 +00:00
Automatic Updater
f0903fa41f newcopyrights 2011-05-16 23:30:56 +00:00
Automatic Updater
f12b694d74 update 2011-05-16 23:16:24 +00:00
Evan Hunt
1a035f7c01 "make install" was failing when building with both exportlibs and libtool.
(trivial makefile fix, no CHANGES note.) [RT #24425]
2011-05-16 22:53:56 +00:00
Automatic Updater
b8be986508 update 2011-05-16 05:16:27 +00:00
Mark Andrews
3967e289ce 3112. [doc] Add missing descriptions of the update policy name
types "ms-self", "ms-subdomain", "krb5-self" and
                        "krb5-subdomain", which allow machines to update
                        their own records, to the BIND 9 ARM.
2011-05-16 04:16:03 +00:00
Automatic Updater
1f6eacb5f2 update 2011-05-14 02:16:43 +00:00
Automatic Updater
fd10c6096f regen v9_7 2011-05-14 02:10:30 +00:00
Evan Hunt
a7ff07d136 file expiring.example.db.in was added on branch v9_7 on 2011-05-19 04:42:17 +0000 2011-05-13 21:34:04 +00:00
Automatic Updater
efb73dcab3 update 2011-05-13 15:16:20 +00:00
Mark Andrews
4621e0afc1 remove duplicate 2011-05-13 14:15:57 +00:00
Automatic Updater
4d05c5e4c3 update 2011-05-09 00:16:51 +00:00
Automatic Updater
b3059b496a newcopyrights 2011-05-08 23:31:16 +00:00
Automatic Updater
c5dc89ae15 update 2011-05-08 07:16:15 +00:00
Mark Andrews
e080b58ad2 named.conf copyrights 2011-05-08 07:05:12 +00:00
Automatic Updater
063f6cb1f6 update 2011-05-08 02:16:18 +00:00
Automatic Updater
368f38ff7e regen v9_7 2011-05-08 02:08:14 +00:00
Automatic Updater
30e201af17 update 2011-05-08 00:16:57 +00:00
Automatic Updater
7fbd853c14 update copyright notice 2011-05-07 23:46:36 +00:00
Automatic Updater
e496dc109f newcopyrights 2011-05-07 23:30:58 +00:00
Automatic Updater
47b7602b32 update 2011-05-07 06:16:47 +00:00
Evan Hunt
52d14ab8a0 3111. [bug] Improved consistency checks for dnssec-enable and
dnssec-validation, added test cases to the
                        checkconf system test. [RT #24398]
2011-05-07 05:52:58 +00:00
Automatic Updater
88cc2316d2 update 2011-05-07 01:17:05 +00:00
Evan Hunt
932d1ded69 3110. [bug] dnssec-signzone: Wrong error message could appear
when attempting to sign with no KSK. [RT #24369]
2011-05-07 00:24:13 +00:00
Automatic Updater
dae8f07882 update 2011-05-07 00:17:01 +00:00
Automatic Updater
d2d4121e41 update copyright notice 2011-05-06 23:46:35 +00:00
Automatic Updater
1ba011353f newcopyrights 2011-05-06 23:31:17 +00:00
Automatic Updater
d6ed4b9543 update 2011-05-06 21:16:17 +00:00
Evan Hunt
77e391dcf0 3107. [bug] dnssec-signzone: Report the correct number of ZSKs
when using -x. [RT #20852]
2011-05-06 21:07:23 +00:00
Automatic Updater
7361f7b44e update 2011-05-06 00:16:57 +00:00
Mark Andrews
a1b85f0dc5 set/reset client->signer. 2011-05-05 23:55:19 +00:00
Automatic Updater
d2ec48155a update 2011-05-05 20:16:26 +00:00
Automatic Updater
032b797c12 regen 2011-05-05 19:22:38 +00:00
Evan Hunt
030c95db8b 3104. [bug] Better support for cross-compiling. [RT #24367] 2011-05-05 19:19:23 +00:00
Evan Hunt
d396fa4d7b file dnssec.3 was added on branch v9_7 on 2011-05-07 05:52:58 +0000 2011-05-05 19:11:54 +00:00
Evan Hunt
23a90cc905 file dnssec.2 was added on branch v9_7 on 2011-05-07 05:52:58 +0000 2011-05-05 19:11:52 +00:00
Evan Hunt
2a15134ad8 file dnssec.1 was added on branch v9_7 on 2011-05-07 05:52:58 +0000 2011-05-05 19:11:50 +00:00
Evan Hunt
49c2c7f047 file clean.sh was added on branch v9_7 on 2011-05-07 05:52:58 +0000 2011-05-05 19:11:48 +00:00
Automatic Updater
70098b1589 update 2011-05-05 05:16:29 +00:00
Mark Andrews
4f0ae1f09f explictly kill the process if the server fails to start, check for a non zero length pid file 2011-05-05 04:56:02 +00:00
Automatic Updater
5bfdeeb223 update 2011-05-04 00:17:01 +00:00
Automatic Updater
c828da6fd2 update copyright notice 2011-05-03 23:46:59 +00:00
Automatic Updater
47181231d7 newcopyrights 2011-05-03 23:30:46 +00:00
Automatic Updater
f4bf81792a update 2011-05-03 16:16:19 +00:00
Mark Andrews
9f0648fcdb grep was not precise enough leading to test failure 2011-05-03 16:09:48 +00:00
Automatic Updater
836542c79d update 2011-05-03 01:16:57 +00:00
Mark Andrews
a6213e6566 treat abs(x) < 500ms as 0 2011-05-03 00:37:24 +00:00
Automatic Updater
5b14ab9dc9 update 2011-05-03 00:16:55 +00:00
Automatic Updater
50e99b5431 update copyright notice 2011-05-02 23:46:49 +00:00
Automatic Updater
a6c4c2e290 newcopyrights 2011-05-02 23:30:57 +00:00
Automatic Updater
524fb791e1 update 2011-05-02 05:16:20 +00:00
Mark Andrews
a680251f6b force numeric comparision 2011-05-02 05:00:50 +00:00
Automatic Updater
1216351b41 update 2011-05-02 02:16:17 +00:00
Mark Andrews
c4135d6b8e handle end of day 2011-05-02 01:41:26 +00:00
Automatic Updater
391b853668 update 2011-05-02 00:16:55 +00:00
Mark Andrews
881c1a4e65 treat exit code 255 as skipped 2011-05-01 23:32:43 +00:00
Automatic Updater
eddebea2b4 update 2011-05-01 21:46:31 +00:00
Mark Andrews
d1e2909418 fix expression 2011-05-01 21:37:03 +00:00
Automatic Updater
7db4c7b5b5 update 2011-05-01 12:16:18 +00:00
Mark Andrews
d8c4983127 awk -v is not portable, add floating point arithmetic effects 2011-05-01 11:33:08 +00:00
Automatic Updater
2b6899f41f update 2011-04-30 02:16:19 +00:00
Automatic Updater
232eb5b99c regen v9_7 2011-04-30 02:11:01 +00:00
Automatic Updater
f034123382 update 2011-04-29 22:16:19 +00:00
Evan Hunt
bbc2f43f5f 3101. [bug] Zones using automatic key maintenance could fail
to check the key repository for updates. [RT #23744]
2011-04-29 21:43:37 +00:00
Automatic Updater
ed6abf57cb update 2011-04-20 00:16:59 +00:00
Automatic Updater
2f19fa2364 update copyright notice 2011-04-19 23:47:01 +00:00
Automatic Updater
745452dd8d newcopyrights 2011-04-19 23:30:40 +00:00
Automatic Updater
751e78699c update 2011-04-19 23:16:27 +00:00
Automatic Updater
6fac8250fe regen 2011-04-19 22:36:19 +00:00
Evan Hunt
882ab80d57 3099. [test] "dlz" system test now runs but gives R:SKIPPED if
not compiled with --with-dlz-filesystem.  [RT #24146]
2011-04-19 22:32:24 +00:00
Automatic Updater
e89954332f update 2011-04-16 00:16:56 +00:00
Automatic Updater
c6b94cea88 newcopyrights 2011-04-15 23:31:01 +00:00
Automatic Updater
bd3d28a0e1 update 2011-04-15 01:16:30 +00:00
Evan Hunt
19ad23141e 3097. [test] Add a tool to test handling of malformed packets.
[RT #24096]
2011-04-15 01:01:13 +00:00
Evan Hunt
4db1370d72 file packet.pl was added on branch v9_7 on 2011-04-15 01:01:13 +0000 2011-04-15 01:00:09 +00:00
edmonds
4ebf39bfb0 update 2011-04-13 23:22:28 +00:00
Automatic Updater
0ac301ced6 update 2011-04-08 07:16:44 +00:00
Automatic Updater
88633933a0 newcopyrights 2011-04-08 06:19:20 +00:00
Automatic Updater
9032c19495 update 2011-04-08 06:16:18 +00:00
Mark Andrews
c802ba3785 isc_file_isplainfile 2011-04-08 05:30:55 +00:00
Automatic Updater
89beaff53c update 2011-04-08 05:16:21 +00:00
Mark Andrews
0fa725f3bf dns_cache_create3 2011-04-08 04:46:13 +00:00
Automatic Updater
4d555ab24a update 2011-04-08 03:16:54 +00:00
Automatic Updater
91a4d82324 9.7.4b1 2011-04-08 03:01:10 +00:00
Automatic Updater
1ddd383a5c newcopyrights 2011-04-08 02:49:44 +00:00
Automatic Updater
8d21fb1375 update 2011-04-08 01:16:57 +00:00
Mark Andrews
1dfe15d60e 9.7.4b1 2011-04-08 00:38:52 +00:00
Mark Andrews
05fccbb44f white space 2011-04-08 00:38:43 +00:00
Mark Andrews
452a20766e white space 2011-04-08 00:32:02 +00:00
Mark Andrews
bb4175dc30 9.7.4b1 2011-04-08 00:22:19 +00:00
Automatic Updater
513eac3fa9 update 2011-04-08 00:16:57 +00:00
Mark Andrews
a7580c035f 9.7.4b1 2011-04-07 23:28:09 +00:00
Automatic Updater
d9d1c24e08 update 2011-04-07 23:16:31 +00:00
Mark Andrews
ebd1736e8f 3096. [bug] Set KRB5_KTNAME before calling log_cred() in
dst_gssapi_acceptctx(). [RT #24004]
2011-04-07 23:06:06 +00:00
Automatic Updater
0ffe6373a5 update 2011-04-06 11:16:28 +00:00
Mark Andrews
05bec7caf8 3095. [bug] Handle isolated reserved ports in the port range.
[RT #23957]
2011-04-06 10:31:57 +00:00
Automatic Updater
2fbf06bcc8 update 2011-04-06 00:16:54 +00:00
Evan Hunt
07fc520149 add in "dlvauto" system test 2011-04-05 23:15:20 +00:00
Automatic Updater
f3b8d1f983 update 2011-04-05 14:16:18 +00:00
Mark Andrews
a407a2a647 9.7 doesn't have autodlv 2011-04-05 13:35:10 +00:00
Automatic Updater
ffec7b548a update 2011-04-05 07:16:20 +00:00
Mark Andrews
2a55bd28af format portability: cast socklen_t -> long and use %ld 2011-04-05 06:35:37 +00:00
Automatic Updater
7d27e29272 update 2011-04-04 11:16:24 +00:00
Mark Andrews
0f4fb51b1f 1 -> 1U 2011-04-04 11:11:41 +00:00
Automatic Updater
29c4e473a5 update 2011-03-31 16:16:16 +00:00
Evan Hunt
659792d80a Corrected a bug in the dnssec test introduced in change #3046. 2011-03-31 15:56:09 +00:00
Automatic Updater
0910a0b9fb update 2011-03-29 21:16:17 +00:00
Paul Ebersman
46da8e1665 corrected RT bug number for changes 3091 to 22911 2011-03-29 20:24:18 +00:00
Automatic Updater
7cda99b512 update 2011-03-29 00:16:55 +00:00
Automatic Updater
793c8a025a update copyright notice 2011-03-28 23:46:39 +00:00
Automatic Updater
5564fe84c5 newcopyrights 2011-03-28 23:31:01 +00:00
Automatic Updater
0b693c3cc3 update 2011-03-28 06:16:23 +00:00
Mark Andrews
da97d91bbf unsigned constants 2011-03-28 05:37:06 +00:00
Mark Andrews
2ac13a1d85 unsigned constants 2011-03-28 05:23:19 +00:00
Automatic Updater
aeac83f581 update 2011-03-28 05:16:22 +00:00
Mark Andrews
c0f4d881ad while (1) -> for (;;), style 2011-03-28 05:16:01 +00:00
Mark Andrews
c5f5e28dcd portability fixes backported from change 2987 2011-03-28 05:09:29 +00:00
Automatic Updater
00b2212e0d update 2011-03-28 04:16:39 +00:00
Mark Andrews
08ac7f3da1 unsigned constants 2011-03-28 03:46:00 +00:00
Automatic Updater
0a58ce1677 update 2011-03-27 00:16:53 +00:00
Automatic Updater
874d107342 update copyright notice 2011-03-26 23:46:44 +00:00
Automatic Updater
9548421f81 newcopyrights 2011-03-26 23:30:48 +00:00
Automatic Updater
d96510b789 update 2011-03-26 01:16:28 +00:00
Evan Hunt
33e22751d5 Forgot to add a data file for the autosign test. 2011-03-26 01:09:22 +00:00
Automatic Updater
1c0426be14 update 2011-03-26 00:16:50 +00:00
Evan Hunt
de9953980e 3092. [bug] Signatures for records at the zone apex could go
stale due to an incorrect timer setting. [RT #23769]

3091.	[bug]		Fixed a bug in which zone keys that were published
			and then subsequently activated could fail to trigger
			automatic signing. [RT #22991]
2011-03-25 23:54:34 +00:00
Automatic Updater
a1daec7a10 regen 2011-03-25 23:30:52 +00:00
Automatic Updater
199727a752 update 2011-03-25 18:16:22 +00:00
Evan Hunt
a5607f268d Corrected comment in bind.keys: "dnssec-validation auto" doesn't work in 9.7. 2011-03-25 17:46:40 +00:00
Evan Hunt
84ddf924f1 file delay.example.db was added on branch v9_7 on 2011-03-26 01:09:22 +0000 2011-03-25 03:39:41 +00:00
Automatic Updater
f9cc7d28c5 update 2011-03-23 00:16:53 +00:00
Automatic Updater
6b658869ba update copyright notice 2011-03-22 23:46:38 +00:00
Automatic Updater
0a2a4750b3 update 2011-03-22 20:16:45 +00:00
Scott Mann
a9fb68beb3 fixup for RT #23687 2011-03-22 19:37:55 +00:00
Automatic Updater
a9eff2fe00 update 2011-03-22 19:16:22 +00:00
Scott Mann
fd4f29edf2 Remove bin/tests/system/logfileconfig/ns1/named.conf and add setup.sh
in order to resolve changing named.conf issue.  [RT #23687]
2011-03-22 18:44:46 +00:00
Automatic Updater
22e77ee039 update 2011-03-22 04:16:41 +00:00
Evan Hunt
2ca671d4d2 Corrected a mistake that was exposed by change #3085 in 9.9 (though it
has no deleterious effect in 9.8 and earlier).
2011-03-22 03:30:33 +00:00
Automatic Updater
e3d0f21f53 update 2011-03-22 02:16:19 +00:00
Automatic Updater
1e98c82a59 regen v9_7 2011-03-22 02:10:56 +00:00
Automatic Updater
b0e27f785a update 2011-03-22 00:16:39 +00:00
Automatic Updater
8850c3eb35 update copyright notice 2011-03-21 23:46:29 +00:00
Automatic Updater
04b5e1489a newcopyrights 2011-03-21 23:31:37 +00:00
Automatic Updater
a75a475780 update 2011-03-21 21:16:21 +00:00
Mark Andrews
160d5cb860 adjust rt23702 test to take less time 2011-03-21 20:32:39 +00:00
Automatic Updater
ad385e3aaa update 2011-03-21 16:16:21 +00:00
Evan Hunt
585530bce3 3086. [bug] Running dnssec-settime -f on an old-style key will
now force an update to the new key format even if no
			other change has been specified, using "-P now -A now"
			as default values.  [RT #22474]
2011-03-21 15:55:48 +00:00
Automatic Updater
975203a88d update 2011-03-21 04:16:31 +00:00
Mark Andrews
9f3efdacd0 wait longer for the nsec3chain generation to complete 2011-03-21 03:31:28 +00:00
Automatic Updater
7a6c7b4622 update 2011-03-21 01:16:53 +00:00
Mark Andrews
53d275bcf7 3083. [bug] NOTIFY messages were not being sent when generating
a NSEC3 chain incrementally. [RT #23702]
2011-03-21 01:08:12 +00:00
Automatic Updater
41810688a1 update 2011-03-19 10:16:21 +00:00
Mark Andrews
8c6e8dd6c1 3081. [bug] Failure of DNAME substitution did not return
YXDOMAIN. [RT #23591]
2011-03-19 10:06:40 +00:00
Automatic Updater
1151904454 update 2011-03-19 00:17:00 +00:00
Automatic Updater
abcb1ed6e5 update copyright notice 2011-03-18 23:46:46 +00:00
Automatic Updater
ed677aad5b newcopyrights 2011-03-18 23:30:53 +00:00
Automatic Updater
44eb0b53da update 2011-03-18 22:16:22 +00:00
Francis Dupont
b61ea69aa3 add 23591 no-regression 2011-03-18 21:37:09 +00:00
Francis Dupont
b8f0ed1a12 add new dname test files 2011-03-18 21:33:05 +00:00
Francis Dupont
18103754d2 3081. [bug] Failure of DNAME substitution did not return
YXDOMAIN. [RT #23591]
2011-03-18 21:31:18 +00:00
Automatic Updater
44da510c99 update 2011-03-18 09:16:23 +00:00
Francis Dupont
3a403b358a 3080. [cleanup] Replaced compile time constant by STDTIME_ON_32BITS.
[RT #23587]
2011-03-18 09:07:38 +00:00
Francis Dupont
89a68a7d46 introduce STDTIME_ON_32BITS 2011-03-18 09:07:02 +00:00
Automatic Updater
9a9a197636 update 2011-03-18 08:16:22 +00:00
Mark Andrews
19c5764f41 3079. [bug] Handle isc_event_allocate failures in t_tasks.
[RT #23572]
2011-03-18 07:48:01 +00:00
Automatic Updater
f0c059899e update 2011-03-18 05:16:23 +00:00
Evan Hunt
6605a0132b ignore SIGPIPE in ans.pl; this is needed for debian. 2011-03-18 04:40:19 +00:00
Automatic Updater
ce1eb06d2a update 2011-03-18 02:16:23 +00:00
Evan Hunt
aa9637307b fixed a missing / in /dev/null 2011-03-18 02:06:58 +00:00
Automatic Updater
13f7fc506f update 2011-03-17 06:16:44 +00:00
Mark Andrews
f48478f001 3077. [bug] zone.c:zone_refreshkeys() incorrectly called
dns_zone_attach(), use zone->irefs instead. [RT #23303]
2011-03-17 05:30:21 +00:00
Automatic Updater
5a4f843d3e update 2011-03-17 02:16:23 +00:00
Mark Andrews
8a5052e802 3075. [bug] dns_dnssec_findzonekeys{2} used a inconsistant
timestamp when determining which keys are active.
                        [RT #23642]
2011-03-17 01:22:27 +00:00
Automatic Updater
ed04eeab8a update 2011-03-14 00:17:29 +00:00
Automatic Updater
9a5a8bc9dd update copyright notice 2011-03-13 23:46:43 +00:00
Automatic Updater
db1c68a9c1 newcopyrights 2011-03-13 23:31:02 +00:00
Automatic Updater
2faa53af39 update 2011-03-13 04:17:09 +00:00
Mark Andrews
9a350f520a 3074. [bug] Make the adb cache read through for zone data and
glue learn for zone named is authoritative for.
                        [RT #22842]
2011-03-13 03:38:49 +00:00
Automatic Updater
c1b270ae40 update 2011-03-13 00:17:35 +00:00
Automatic Updater
d6b5a7bd1b update copyright notice 2011-03-12 23:46:53 +00:00
Automatic Updater
f54fe6f19c newcopyrights 2011-03-12 23:30:53 +00:00
Automatic Updater
f5933d79ca update 2011-03-12 22:16:58 +00:00
Mark Andrews
b134097b24 test for Net::DNS 2011-03-12 21:26:27 +00:00
Automatic Updater
0e54a77925 update 2011-03-12 05:17:13 +00:00
Automatic Updater
88a65863a5 update copyright notice 2011-03-12 04:58:33 +00:00
Automatic Updater
5675d2de03 newcopyrights 2011-03-12 04:56:06 +00:00
Automatic Updater
c071a6581e update 2011-03-12 03:17:45 +00:00
Mark Andrews
b89e028c05 bin/tests/system/common/rndc.key 2011-03-12 03:08:12 +00:00
Automatic Updater
5c15917576 update 2011-03-11 18:23:56 +00:00
Evan Hunt
3c3d03e138 Forgot to initialize a fixedname 2011-03-11 17:21:30 +00:00
Automatic Updater
b08b711e2a update 2011-03-11 14:16:52 +00:00
Mark Andrews
ec9d326340 3073. [bug] managed-keys changes were not properly being recorded.
[RT #20256]
2011-03-11 13:24:36 +00:00
Automatic Updater
7a178c0287 update 2011-03-11 13:16:59 +00:00
Mark Andrews
a49c3566a7 3071. [bug] has_nsec could be used unintialised in
update.c:next_active. [RT #20256]
2011-03-11 12:55:27 +00:00
Mark Andrews
5b8794da73 3070. [bug] dnssec-signzone potential NULL pointer dereference.
[RT #20256]
2011-03-11 12:42:47 +00:00
Automatic Updater
d29938ee0d update 2011-03-11 07:16:52 +00:00
Mark Andrews
526b51ec93 3069. [cleanup] Silence warnings messages from clang static analysis.
[RT #20256]
2011-03-11 07:12:03 +00:00
Automatic Updater
bbc6cb37ae update 2011-03-11 03:17:35 +00:00
Mark Andrews
b44a3cb109 pkey is only used if USE_ENGINE is defined or USE_EVP is 1 2011-03-11 02:54:07 +00:00
Automatic Updater
8e4c7e687f update 2011-03-11 02:18:34 +00:00
Automatic Updater
0d4ec7d9ac sync 2011-03-11 01:55:50 +00:00
Evan Hunt
d7112a033e Reversing prior change, turns out not to be legal on all compilers. 2011-03-11 01:28:29 +00:00
Evan Hunt
aa691f6fb4 Silence a compiler warning by using #if comparison instead of if. No
CHANGES note because it's trivial. [RT #23587]
2011-03-11 01:21:57 +00:00
Automatic Updater
c653b35f51 update 2011-03-11 01:17:10 +00:00
Mark Andrews
c4f131dce9 3068. [bug] Named failed to build with a OpenSSL without engine
support. [RT #23473]
2011-03-11 01:17:09 +00:00
Mark Andrews
11941bb7c6 3067. [bug] ixfr-from-differences {master|slave}; failed to
select the master/slave zones.  [RT #23580]
2011-03-11 00:50:43 +00:00
Automatic Updater
857a10c5ac update 2011-03-10 00:17:32 +00:00
Automatic Updater
7c8c5acdcf update copyright notice 2011-03-09 23:46:26 +00:00
Automatic Updater
496d013619 newcopyrights 2011-03-09 23:31:18 +00:00
Automatic Updater
c4c7fdf98e update 2011-03-09 08:16:59 +00:00
Mark Andrews
7a3e203b2d 3065. [bug] RRSIG could have time stamps too far in the future.
[RT #23356]
2011-03-09 07:29:39 +00:00
Automatic Updater
c81992af09 update 2011-03-09 02:17:07 +00:00
Automatic Updater
9285be523f regen v9_7 2011-03-09 02:11:34 +00:00
Automatic Updater
1d276ca824 update 2011-03-09 01:17:36 +00:00
Paul Ebersman
9996a31fcb corrected edns-udp-size min to 512 2011-03-09 00:51:40 +00:00
Automatic Updater
20d459121d update 2011-03-08 02:16:59 +00:00
Automatic Updater
b7601f1e78 sync 2011-03-08 01:59:52 +00:00
Automatic Updater
258b3ae519 update 2011-03-08 01:17:34 +00:00
Mark Andrews
0b80655d1b add 'sync' to ISC_PLATFORM_USEMACASM build as well 2011-03-08 00:52:04 +00:00
Mark Andrews
438e0483b7 DNAME not DS 2011-03-08 00:38:21 +00:00
Automatic Updater
5d72579040 update 2011-03-08 00:17:37 +00:00
Automatic Updater
9a99e3c47e update copyright notice 2011-03-07 23:46:46 +00:00
Automatic Updater
db11e9d7be newcopyrights 2011-03-07 23:30:58 +00:00
Automatic Updater
73027787e1 update 2011-03-07 22:17:00 +00:00
Evan Hunt
3d0d33a56e Style cleanup in DLZ LDAP driver. No functional change, no CHANGES note. 2011-03-07 22:02:41 +00:00
Automatic Updater
652333b000 update 2011-03-07 01:17:33 +00:00
Mark Andrews
29baaada1d 3064. [bug] powerpc: add sync instructions to the end of atomic
operations. [RT #23469]
2011-03-07 00:23:54 +00:00
Automatic Updater
7c704b42da update 2011-03-06 00:17:23 +00:00
Automatic Updater
871a3ebc69 update copyright notice 2011-03-05 23:51:39 +00:00
Automatic Updater
20a5f2b794 newcopyrights 2011-03-05 23:31:04 +00:00
Automatic Updater
d41be7b849 update 2011-03-05 23:17:09 +00:00
Evan Hunt
1d6b2871c2 3063. [contrib] More verbose error reporting from DLZ LDAP. [RT #23402] 2011-03-05 23:09:26 +00:00
Automatic Updater
bcea85a562 update 2011-03-05 03:17:09 +00:00
Mark Andrews
83032e39d7 add #include <isc/file.h> 2011-03-05 03:02:56 +00:00
Mark Andrews
1105a4fcfc cleanup removed files 2011-03-05 02:51:57 +00:00
Automatic Updater
ff349e3d68 update 2011-03-05 02:38:38 +00:00
Automatic Updater
1e9a6f3e14 update 2011-03-04 22:17:00 +00:00
Evan Hunt
47e040c48e 3059. [test] Added a regression test for change #3023. 2011-03-04 22:07:37 +00:00
Automatic Updater
4c80eea432 update 2011-03-04 15:16:56 +00:00
Scott Mann
607c35a5c1 Adding missing test files for RT22771. 2011-03-04 15:09:38 +00:00
Scott Mann
71986a4364 Ensure that log files are plain files. (RT #22771) 2011-03-04 14:17:50 +00:00
Automatic Updater
f324e5035a update 2011-03-04 02:17:34 +00:00
Automatic Updater
b5906d8cf0 sync 2011-03-04 01:58:34 +00:00
Automatic Updater
17d466904b update 2011-03-04 00:17:31 +00:00
Automatic Updater
2e19f9ff58 update copyright notice 2011-03-03 23:46:43 +00:00
Automatic Updater
445adcb95d newcopyrights 2011-03-03 23:31:03 +00:00
Automatic Updater
e28efdcf09 update 2011-03-03 17:16:51 +00:00
Evan Hunt
69c1260911 3057. [bug] "rndc secroots" would abort after the first error
and so could miss some views. [RT #23488]
2011-03-03 16:19:29 +00:00
Automatic Updater
d50a91b4b5 update 2011-03-03 14:16:55 +00:00
Francis Dupont
3db330edf8 3055. [bug] Load only the desired keys in the
"dnssec-lookaside auto" mode. [RT #23372]

(back port from 9.8)
2011-03-03 14:06:15 +00:00
Francis Dupont
6c0d104d75 backport load_view_keys() from 9.8 2011-03-03 14:02:53 +00:00
Automatic Updater
538e4f74bf update 2011-03-03 12:16:52 +00:00
Mark Andrews
d1288b14be cat the output as atf-report truncates stdout 2011-03-03 11:24:00 +00:00
Automatic Updater
2d032cd20f update 2011-03-03 08:16:56 +00:00
Mark Andrews
31474958ea use csv output format. ticker not suitable for robie 2011-03-03 08:01:16 +00:00
Automatic Updater
c05a5e1d73 update 2011-03-03 05:17:02 +00:00
Evan Hunt
031da3eb0c 3053. [bug] Under a sustained high query load with a finite
max-cache-size, it was possible for cache memory
			to be exhausted and not recovered. [RT #23371]
2011-03-03 04:43:36 +00:00
Automatic Updater
a45a2e965c update 2011-03-03 00:17:32 +00:00
Automatic Updater
f00527a575 update copyright notice 2011-03-02 23:46:59 +00:00
Automatic Updater
a9a775cdda newcopyrights 2011-03-02 23:30:49 +00:00
Automatic Updater
377cb850d2 update 2011-03-02 16:16:55 +00:00
Automatic Updater
b6effcfad3 regen 2011-03-02 15:24:08 +00:00
Automatic Updater
932edca56d update 2011-03-02 09:17:01 +00:00
Francis Dupont
2fb9f87ccc Fixed last autosign test report [RT #23256] 2011-03-02 09:06:30 +00:00
Automatic Updater
af8a702ffa update 2011-03-02 07:16:56 +00:00
Evan Hunt
bed2bf2ec7 add MISSING=: to ATF configure arguments to suppress checks for
missing autotools files
2011-03-02 06:40:25 +00:00
Evan Hunt
e385b3f9b9 Makefile shouldn't have been committed 2011-03-02 06:18:57 +00:00
Automatic Updater
e77ffda2f2 update 2011-03-02 05:17:01 +00:00
Mark Andrews
453e098b25 3051. [bug] NS records obsure DS records at the bottom of the
zone if both are present. [RT #23035]
2011-03-02 04:45:07 +00:00
Mark Andrews
b05158a67d 3051. [bug] NS records obsure DS records at the bottom of the
zone if both are present. [RT #23035]
2011-03-02 04:30:53 +00:00
Automatic Updater
f3214d80cc update 2011-03-02 04:17:10 +00:00
Mark Andrews
5b4db46db2 3050. [bug] The autosign system test was timing dependent.
Wait for the initial autosigning to complete
                        before running the rest of the test. [RT #23035]
2011-03-02 04:13:02 +00:00
Automatic Updater
676ee9185a update 2011-03-02 03:17:04 +00:00
Mark Andrews
cbf9f32246 s/3039/3049/ 2011-03-02 03:05:58 +00:00
Automatic Updater
69dfa864d5 update 2011-03-02 00:17:02 +00:00
Mark Andrews
6a33380ecf 3039. [bug] Save and restore the gid when creating creating
named.pid at startup. [RT #23290]
2011-03-02 00:05:11 +00:00
Automatic Updater
98ec74d568 update copyright notice 2011-03-01 23:47:05 +00:00
Automatic Updater
3abc7a1f90 newcopyrights 2011-03-01 23:30:39 +00:00
Mark Andrews
fc7e537b45 3048. [bug] Fully seperate view key mangement. [RT #23419] 2011-03-01 23:22:42 +00:00
Automatic Updater
ca6dd4b475 update 2011-03-01 17:16:56 +00:00
Scott Mann
a8ab505429 Fixed DNSKEY NODATA responses not cached and added tests [RT #22908]. 2011-03-01 16:47:13 +00:00
Automatic Updater
ef1fd9eb5e update 2011-03-01 00:17:17 +00:00
Automatic Updater
cf5edf83ec update copyright notice 2011-02-28 23:46:34 +00:00
Automatic Updater
c1bf2a2775 newcopyrights 2011-02-28 23:30:51 +00:00
Automatic Updater
448e2663ac regen 2011-02-28 23:30:50 +00:00
Automatic Updater
83e6c42cdd update 2011-02-28 17:17:08 +00:00
Automatic Updater
c177dec7c5 autoreconf in hopes of silencing robie warnings 2011-02-28 16:45:56 +00:00
Automatic Updater
cc80af09cd update 2011-02-28 15:16:54 +00:00
Francis Dupont
fcf1934be8 Use RRSIG original TTL in validated RRset TTL [RT #23332] 2011-02-28 14:28:01 +00:00
Automatic Updater
bfdef2abaf update 2011-02-28 13:17:04 +00:00
Mark Andrews
ecb10f595d 3044. [bug] Hold the socket manager lock while freeing the socket.
[RT #23333]
2011-02-28 12:52:38 +00:00
Automatic Updater
fb2888c3a5 update 2011-02-28 04:57:11 +00:00
Automatic Updater
081a9dc448 update 2011-02-28 02:16:17 +00:00
Automatic Updater
0f1c24fec6 update copyright notice 2011-02-28 01:19:28 +00:00
Automatic Updater
3ba7bb9664 update 2011-02-28 01:16:26 +00:00
Mark Andrews
92fd5d1b25 elseif -> elsif 2011-02-28 01:08:37 +00:00
Mark Andrews
ada7ae72c3 atf source maintains it's own copyright 2011-02-28 01:04:35 +00:00
Automatic Updater
cf1ddc33ee update 2011-02-28 00:16:38 +00:00
Automatic Updater
33cd4d9181 update 2011-02-27 14:15:38 +00:00
Mark Andrews
743770f874 only run test if ATFBIN defined 2011-02-27 14:14:41 +00:00
Mark Andrews
33ae0e092b regen 2011-02-27 13:30:33 +00:00
Mark Andrews
d89c1b9466 remove space between -L path 2011-02-27 13:27:52 +00:00
Automatic Updater
64bbd43587 update 2011-02-27 10:46:05 +00:00
Automatic Updater
f560610eff update 2011-02-27 10:32:26 +00:00
Mark Andrews
e0c92f8713 regen 2011-02-27 06:25:03 +00:00
Evan Hunt
d7372aa85b one more file needed removing. 2011-02-26 06:15:28 +00:00
Evan Hunt
078cef089c Oops, added and committed files in atf-src after running configure.
Removing all the files that are generated from that.
2011-02-26 06:14:35 +00:00
Evan Hunt
de3940d1ea 3043. [test] Merged in the NetBSD ATF test framework (currently
version 0.12) for development of future unit tests.
                        Use configure --with-atf to build ATF internally
                        or configure --with-atf=prefix to use an external
                        copy.  [RT #23209]
2011-02-26 02:48:58 +00:00
Evan Hunt
d63b8ea4d0 9.7.3 has shipped; removing the release notes from the cvs tree. 2011-02-25 23:16:10 +00:00
Evan Hunt
4e272d5a1c minor typo 2011-02-25 23:13:30 +00:00
Evan Hunt
720b0c0d51 3042. [bug] dig +trace could fail attempting to use IPv6
addresses on systems with only IPv4 connectivity.
			[RT# 23797]
2011-02-25 23:01:56 +00:00
Mark Andrews
4e3697a06e 3041. [bug] dnssec-signzone failed to generate new signatures on
ttl changes. [RT #23330]
2011-02-24 03:14:37 +00:00
Mark Andrews
d1828d831e 3040. [bug] Named failed to validate insecure zones where a node
with a CNAME existed between the trust anchor and the
                        top of the zone. [RT #23338]
2011-02-23 12:08:40 +00:00
Mark Andrews
35949f9ac8 change numbers 2011-02-23 03:56:50 +00:00
Automatic Updater
e9755e2570 update 2011-02-22 07:15:38 +00:00
Mark Andrews
bd27d0df2b 2037. [doc] Update COPYRIGHT to contain all the individual
copyright notices that cover various parts.
2011-02-22 06:36:35 +00:00
Automatic Updater
4ef5f38576 update 2011-02-22 05:15:27 +00:00
Mark Andrews
e009a9de75 2036. [bug] Check built-in zone arguments to see if the zone
is re-usable or not. [RT #21914]
2011-02-22 04:30:46 +00:00
Automatic Updater
d967b49681 update 2011-02-22 00:15:52 +00:00
Automatic Updater
e0c03c4a8c update copyright notice 2011-02-21 23:46:39 +00:00
Automatic Updater
95194a972c newcopyrights 2011-02-21 23:30:37 +00:00
Automatic Updater
3617d02264 update 2011-02-21 08:15:37 +00:00
Mark Andrews
7c290f0115 3035. [cleanup] Simplify by using strlcpy. [RT #22521] 2011-02-21 07:37:48 +00:00
Mark Andrews
70e4b82cd9 3034. [cleanup] nslookup: use strlcpy instead of safecopy. [RT #22521] 2011-02-21 07:26:53 +00:00
Mark Andrews
d1bd7d654f check for snprintf failure. [RT #22521] 2011-02-21 07:17:03 +00:00
Automatic Updater
253ed9c697 update 2011-02-21 07:15:34 +00:00
Mark Andrews
5ce02fb8f5 3033. [cleanup] Add two INSIST(bucket != DNS_ADB_INVALIDBUCKET).
[RT #22521]
2011-02-21 07:11:49 +00:00
Mark Andrews
e4cf833007 3032. [bug] rdatalist.c: add missing REQUIREs. [RT #22521] 2011-02-21 07:03:55 +00:00
Mark Andrews
2c352f5b03 3031. [bug] dns_rdataclass_format() handle a zero sized buffer.
[RT #22521]
2011-02-21 06:53:54 +00:00
Mark Andrews
3184f5e1a8 3030. [bug] dns_rdatatype_format() handle a zero sized buffer.
[RT #22521]
2011-02-21 06:44:46 +00:00
Mark Andrews
02bf1aae84 3029. [bug] isc_netaddr_format() handle a zero sized buffer.
[RT #22521]
2011-02-21 06:33:37 +00:00
Mark Andrews
cbc7936c23 3028. [bug] isc_sockaddr_format() handle a zero sized buffer.
[RT #22521]
2011-02-21 06:22:34 +00:00
Automatic Updater
5651d4d917 update 2011-02-21 06:15:36 +00:00
Mark Andrews
65e40464b9 3027. [bug] Add documented REQUIREs to cfg_obj_asnetprefix() to
catch NULL pointer dereferences before they happen.
                        [RT #22521]
2011-02-21 06:12:39 +00:00
Mark Andrews
f2e926483f 3026. [bug] lib/isc/httpd.c: check that we have enough space
after calling grow_headerspace() and if not
                        re-call grow_headerspace() until we do. [RT #22521]
2011-02-21 05:58:33 +00:00
Automatic Updater
0d50d3b07f update 2011-02-21 00:16:15 +00:00
Mark Andrews
d05f92796b spelling 2011-02-21 00:06:20 +00:00
Automatic Updater
2cc17e1b1c update 2011-02-20 01:15:29 +00:00
Mark Andrews
7e1e879d56 spelling 2011-02-20 00:59:30 +00:00
Automatic Updater
1fd69a8213 update 2011-02-20 00:15:59 +00:00
Automatic Updater
7a18159352 update copyright notice 2011-02-19 23:46:55 +00:00
Automatic Updater
a364df15a9 newcopyrights 2011-02-19 23:30:35 +00:00
Automatic Updater
a9c551e555 update 2011-02-19 02:15:52 +00:00
Evan Hunt
8572954ead Fixed incorrect library link order in libisccc and libisccfg 2011-02-19 01:29:45 +00:00
Evan Hunt
9cf990271f Fixed an error in change 3023, ensuring that journal file isn't
removed after IXFR.  No CHANGES note.
2011-02-19 01:25:30 +00:00
Automatic Updater
346b91444e update 2011-02-19 01:15:28 +00:00
Evan Hunt
87519dfd8f 3025. [bug] Fixed a possible deadlock due to zone resigning.
[RT #22964]
2011-02-19 00:46:45 +00:00
Automatic Updater
0cae8f10b7 update 2011-02-19 00:15:58 +00:00
Automatic Updater
5936aeafed update copyright notice 2011-02-18 23:46:44 +00:00
Automatic Updater
e49d73b94b newcopyrights 2011-02-18 23:30:30 +00:00
Automatic Updater
10684df873 regen 2011-02-18 23:30:29 +00:00
Automatic Updater
378dbacd83 update 2011-02-18 22:15:26 +00:00
Evan Hunt
7b4467366d 3023. [bug] Named could be left in an inconsistent state when
receiving multiple AXFR response messages that were
			not all TSIG-signed. [RT #23254]
2011-02-18 21:29:19 +00:00
Automatic Updater
631758bd3a update 2011-02-18 00:16:02 +00:00
Automatic Updater
2ec8ca31c0 update copyright notice 2011-02-17 23:46:21 +00:00
Automatic Updater
c3b2b710be update 2011-02-17 05:15:20 +00:00
Mark Andrews
5468d7a070 simplify zone_signwithkey call 2011-02-17 04:58:20 +00:00
Automatic Updater
4d1a4aadbb update 2011-02-17 03:16:18 +00:00
Mark Andrews
e754375df7 ensure that the DNSKEY rrset get re-signed even if it hasn't been
updated in sign_apex.
2011-02-17 03:01:19 +00:00
Automatic Updater
e4dcfc0e1e update 2011-02-16 20:15:25 +00:00
Evan Hunt
a0e5d39d03 3021. [bug] Change #3010 was incomplete. [RT #22296] 2011-02-16 19:44:17 +00:00
Automatic Updater
6b57edb1ab update 2011-02-16 00:16:25 +00:00
Automatic Updater
1b2692a5b9 update copyright notice 2011-02-15 23:46:54 +00:00
Automatic Updater
8c97518725 newcopyrights 2011-02-15 23:30:36 +00:00
Automatic Updater
bf79880554 update 2011-02-15 22:15:25 +00:00
Mark Andrews
9e1b196510 3020. [bug] auto-dnssec failed to correctly update the zone when
changing the DNSKEY RRset. [RT #23232]
2011-02-15 22:09:36 +00:00
Automatic Updater
d006ab34d2 update 2011-02-15 06:15:26 +00:00
Mark Andrews
f02cc38da0 undo commits to wrong branch 2011-02-15 05:40:16 +00:00
Automatic Updater
21996d3904 update 2011-02-15 05:15:21 +00:00
Mark Andrews
dace425c59 add NSEC/NSEC3 chains 2011-02-15 04:32:53 +00:00
Automatic Updater
aae4d811bc update 2011-02-15 04:15:46 +00:00
Mark Andrews
d5e086f492 sign all changed rrsets 2011-02-15 03:55:55 +00:00
Automatic Updater
b456d81fba update 2011-02-15 00:15:45 +00:00
Mark Andrews
7734aca6a1 3019. [func] Test: check apex NSEC3 records after adding DNSKEY
record via UPDATE. [RT #23229]
2011-02-15 00:03:03 +00:00
Evan Hunt
92442341b6 file unittest.sh was added on branch v9_7 on 2011-02-26 02:47:55 +0000 2011-02-11 04:19:17 +00:00
Automatic Updater
44f8595983 update 2011-02-08 23:17:04 +00:00
Automatic Updater
0321a1fd00 update copyright notice 2011-02-08 23:09:24 +00:00
Automatic Updater
17db42659c newcopyrights 2011-02-08 23:07:04 +00:00
Automatic Updater
6af1573bdb update 2011-02-08 04:15:41 +00:00
Mark Andrews
5bf955196b Regression test for:
3018.   [bug]           Named failed to check for the "none;" acl when deciding
                        if a zone may need to be re-signed. [RT #23120]
2011-02-08 04:06:54 +00:00
Automatic Updater
3cc252d992 update 2011-02-08 03:16:19 +00:00
Automatic Updater
ca193080b8 9.7.3 2011-02-08 02:45:30 +00:00
Automatic Updater
8bc362cc47 update 2011-02-08 02:16:05 +00:00
Mark Andrews
db23bb6075 9.7.3 2011-02-08 01:25:04 +00:00
Automatic Updater
3e277745be update 2011-02-07 13:16:02 +00:00
Mark Andrews
8e76a261e4 missing [ 2011-02-07 12:25:17 +00:00
Mark Andrews
efbab336ac re-tag 9.7.3 2011-02-07 12:18:47 +00:00
Automatic Updater
fa253950d9 update 2011-02-07 01:15:27 +00:00
Mark Andrews
bc7aed2a6b 3018. [bug] Named failed to check for the "none;" acl when deciding
if a zone may need to be re-signed. RT #23120]
2011-02-07 00:16:48 +00:00
Automatic Updater
0b034daf8e update 2011-02-04 02:16:06 +00:00
Automatic Updater
eb19518256 regen v9_7 2011-02-04 02:10:43 +00:00
Automatic Updater
efdac14a77 update 2011-02-03 17:15:22 +00:00
Evan Hunt
af17ccb8e5 Updated release notes. 2011-02-03 16:23:59 +00:00
Automatic Updater
8b9d13a3c1 update 2011-02-03 13:16:06 +00:00
Automatic Updater
8ce32752e6 update copyright notice 2011-02-03 12:17:23 +00:00
Automatic Updater
7c644b7bf5 newcopyrights 2011-02-03 12:15:18 +00:00
Mark Andrews
f2af5e6496 3017. [doc] dnssec-keyfromlabel -I was not properly documented.
[RT #22887]
2011-02-03 12:03:09 +00:00
Mark Andrews
5c64e82dd6 3016. [bug] rndc usage missing '-b'. [RT #22937] 2011-02-03 11:49:00 +00:00
Automatic Updater
7644620ee7 update 2011-02-03 09:15:32 +00:00
Mark Andrews
7c051497fa 3015. [port] win32: fix IN6_IS_ADDR_LINKLOCAL and
IN6_IS_ADDR_SITELOCAL macros. [RT #22724]
2011-02-03 08:18:01 +00:00
Automatic Updater
c58e05413c update 2011-02-03 07:15:26 +00:00
Mark Andrews
94d633f808 3012. [bug] Remove DNSKEY TTL change pairs before generating
signing records for any remaining DNSKEY changes.
                        [RT #22590]
2011-02-03 06:25:58 +00:00
Automatic Updater
3524472293 update 2011-02-03 05:39:54 +00:00
Automatic Updater
2dec8208b9 update copyright notice 2011-02-03 05:38:10 +00:00
Mark Andrews
e0cb2d799b retag 9.7.3 2011-02-03 05:33:21 +00:00
Automatic Updater
2e977649df update 2011-02-03 05:16:35 +00:00
Automatic Updater
e33315f886 newcopyrights 2011-02-03 05:14:00 +00:00
Automatic Updater
b628c1221e update 2011-02-03 01:15:20 +00:00
Evan Hunt
24a73837dd 3010. [bug] Fixed a bug where "rndc reconfig" stopped the timer
for refreshing managed-keys. [RT #22296]
2011-02-03 00:28:08 +00:00
Automatic Updater
d165d9ba2d update 2011-01-31 03:23:34 +00:00
Automatic Updater
7e10c4f8c5 newcopyrights 2011-01-31 03:19:27 +00:00
Automatic Updater
70725073a9 update 2011-01-31 03:16:43 +00:00
Automatic Updater
690d5cd519 9.7.3 2011-01-31 03:15:11 +00:00
Automatic Updater
f7bf1751e5 newcopyrights 2011-01-31 02:43:48 +00:00
Automatic Updater
e638dbf10c update 2011-01-31 02:15:50 +00:00
Automatic Updater
b0c5373e6c regen v9_7 2011-01-31 02:10:42 +00:00
Automatic Updater
e3201af06f update copyright notice 2011-01-31 01:35:20 +00:00
Automatic Updater
b4fa6115f0 update 2011-01-31 00:16:07 +00:00
Automatic Updater
3d2f774d23 update 2011-01-31 00:01:00 +00:00
Automatic Updater
dbc8f28aa4 update 2011-01-30 09:15:22 +00:00
Mark Andrews
9937ce8e73 spelling 2011-01-30 08:19:46 +00:00
Automatic Updater
50f29e14b4 update 2011-01-30 08:15:25 +00:00
Mark Andrews
b5251afe9b 9.7.3 2011-01-30 08:11:25 +00:00
Mark Andrews
7726fff532 9.7.3 2011-01-30 08:01:01 +00:00
Automatic Updater
955ee4992d update 2011-01-28 00:15:53 +00:00
Automatic Updater
1fd0d83a38 update copyright notice 2011-01-27 23:46:37 +00:00
Automatic Updater
1ac91b4140 newcopyrights 2011-01-27 23:30:36 +00:00
Automatic Updater
f5199566db update 2011-01-27 03:16:26 +00:00
Mark Andrews
a244965075 3009. [bug] clients-per-query code didn't work as expected with
particular query patterns. [RT #22972]
2011-01-27 02:28:54 +00:00
Automatic Updater
7bc44cccc1 update 2011-01-14 01:15:54 +00:00
Automatic Updater
bdea0ea015 update copyright notice 2011-01-14 00:51:07 +00:00
Automatic Updater
2109456871 newcopyrights 2011-01-14 00:49:30 +00:00
Mark Andrews
03fbf41ea8 silence: warning: format not a string literal and no format arguments 2011-01-14 00:43:43 +00:00
Automatic Updater
f76bf38ff6 update 2011-01-14 00:15:38 +00:00
Automatic Updater
8f89bb0c54 newcopyrights 2011-01-14 00:12:06 +00:00
Mark Andrews
0fc328e58e 9.7.3rc1 2011-01-14 00:09:38 +00:00
Automatic Updater
d97a30ec77 update 2011-01-13 23:16:17 +00:00
Automatic Updater
f0cd6e4f2c update copyright notice 2011-01-13 22:30:17 +00:00
Automatic Updater
ba91cab8d2 newcopyrights 2011-01-13 22:28:39 +00:00
Mark Andrews
a14975ce0c update for 9.7.3rc1 2011-01-13 22:24:41 +00:00
Mark Andrews
54a51ed666 9.7.3rc1 2011-01-13 22:21:21 +00:00
Automatic Updater
1e6579f325 update 2011-01-13 22:15:26 +00:00
Mark Andrews
c74524f856 remove /I "../..../lib/dns/sec/openssl/include" 2011-01-13 22:12:52 +00:00
Mark Andrews
db90edaeaa -V support 2011-01-13 22:00:35 +00:00
Automatic Updater
1eacb4b9e4 update 2011-01-13 05:16:13 +00:00
Automatic Updater
3c2e0ad5b3 update copyright notice 2011-01-13 04:48:58 +00:00
Automatic Updater
00e2b9d750 newcopyrights 2011-01-13 04:47:01 +00:00
Automatic Updater
032bed7f96 update 2011-01-13 03:15:54 +00:00
Mark Andrews
9c2f4c2fdc spelling 2011-01-13 02:39:33 +00:00
Automatic Updater
6d12a64fe5 update 2011-01-13 02:16:02 +00:00
Mark Andrews
76be4e69ee 3007. [bug] Named failed to preserve the case of domain names in
rdata which is no compressable when writing master
                        files.  [RT #22863]
2011-01-13 01:34:41 +00:00
Automatic Updater
3f4f076701 update 2011-01-08 00:15:55 +00:00
Automatic Updater
74d29b18ad update copyright notice 2011-01-07 23:46:36 +00:00
Automatic Updater
303fd2fb85 newcopyrights 2011-01-07 23:30:26 +00:00
Automatic Updater
b656ab5ead update 2011-01-07 01:15:17 +00:00
Evan Hunt
3207a16d0d Initialize a pointer to NULL in order to silence a compiler warning.
Committing without review because the change is trivial.
2011-01-07 00:53:18 +00:00
Automatic Updater
c097e59568 update 2011-01-06 00:16:07 +00:00
Automatic Updater
29e5061922 newcopyrights 2011-01-05 23:30:37 +00:00
Automatic Updater
71155af8fc update 2011-01-05 00:15:53 +00:00
Automatic Updater
a0ad3116d2 update copyright notice 2011-01-04 23:46:31 +00:00
Automatic Updater
60774ae636 newcopyrights 2011-01-04 23:30:33 +00:00
Automatic Updater
7ee7aa860b regen 2011-01-04 23:30:32 +00:00
Automatic Updater
a94f717d71 update 2011-01-04 19:15:21 +00:00
Evan Hunt
2bf23735a3 Updated comments, added root key (for informational purposes, not for
direct use by named). [rt21727]
2011-01-04 19:14:48 +00:00
Automatic Updater
b11c4861bb update 2011-01-04 05:15:25 +00:00
Mark Andrews
3918f862a0 3002. [bug] isc_mutex_init_errcheck() failed to destroy attr.
[RT #22766]
2011-01-04 04:34:43 +00:00
Automatic Updater
ecc25fbd15 update 2010-12-22 04:16:15 +00:00
Mark Andrews
28f47481cc 2996. [security] Temporarily disable SO_ACCEPTFILTER support.
[RT #22589]
2010-12-22 03:27:22 +00:00
Automatic Updater
ecb78c1a40 update 2010-12-22 03:15:55 +00:00
Mark Andrews
7d2b1dfede 2995. [bug] The Kerberos realm was not being correctly extracted
from the signer's identity. [RT #22770]
2010-12-22 02:36:17 +00:00
Automatic Updater
310390c8b8 update 2010-12-22 00:16:13 +00:00
Automatic Updater
54b0110b75 newcopyrights 2010-12-21 23:30:23 +00:00
Automatic Updater
6de9bf2601 update 2010-12-21 05:15:30 +00:00
Mark Andrews
0f8ca600f1 regen 2010-12-21 04:33:28 +00:00
Mark Andrews
c151a9588b 2994. [port] NetBSD: use pthreads by default on NetBSD >= 5.0, and
do not use threads on earlier versions.  Also kill
                        the unproven-pthreads, mit-pthreads, and ptl2 support.
2010-12-21 04:30:15 +00:00
Automatic Updater
4a83846ddd update 2010-12-19 08:15:18 +00:00
Evan Hunt
83c70e073b 2990. [bug] 'dnssec-settime -S' no longer tests prepublication
interval validity when the interval is set to 0.
			[RT #22761]
2010-12-19 07:27:50 +00:00
Evan Hunt
92f198ef9d When prepublication interval is set to 0 (-i 0), don't check 2010-12-19 07:27:23 +00:00
Automatic Updater
07b49d7453 update 2010-12-18 03:16:18 +00:00
Evan Hunt
a8c55a41d5 Added files to clean.sh scripts that have been left around after tests run.
Skipping the ticket/review steps because the change is trivial.
2010-12-18 02:15:17 +00:00
Automatic Updater
38c6c10ac9 update 2010-12-15 19:15:18 +00:00
Evan Hunt
23ae36911c 2985. [bug] Add a regression test for change #2896. [RT #21324] 2010-12-15 18:44:16 +00:00
Automatic Updater
b7055d7988 update 2010-12-14 01:15:21 +00:00
Mark Andrews
48e7dcf0d2 2984. [bug] Don't run MX checks when the target of the MX record
is ".".  [RT #22645]
2010-12-14 00:46:41 +00:00
Automatic Updater
f4a29a0750 update 2010-12-10 20:15:22 +00:00
johnd
6d6a3a820a Include "loadkeys" in rndc help output. [RT #22493] 2010-12-10 20:08:07 +00:00
Automatic Updater
5c82ca42b3 update 2010-12-10 05:15:54 +00:00
Mark Andrews
465d41bd1c remove semi-colon 2010-12-10 04:47:48 +00:00
Automatic Updater
7ea5188c2d newcopyrights 2010-12-10 04:17:16 +00:00
Automatic Updater
8ab0fa49c7 update 2010-12-10 02:15:24 +00:00
Mark Andrews
59dbcb0b0a 9.7.3b1 2010-12-10 01:49:33 +00:00
Mark Andrews
774cbd433a 9.7.3b1 2010-12-10 01:40:23 +00:00
Mark Andrews
5addd0b6cd 9.7.3b1 2010-12-10 01:23:06 +00:00
Automatic Updater
87ebc102ad update 2010-12-09 12:15:20 +00:00
Mark Andrews
093dc899d3 9.7.3b1 2010-12-09 11:48:55 +00:00
Mark Andrews
b5b9469b27 CHANGES 2010-12-09 11:48:17 +00:00
Mark Andrews
390213c7e4 s/dev/adev/ 2010-12-09 11:41:11 +00:00
Automatic Updater
23f81e6d93 update 2010-12-09 08:15:45 +00:00
Mark Andrews
7035aa0ee2 dst_key_attach 2010-12-09 07:56:12 +00:00
Automatic Updater
b27e8b331c update 2010-12-09 05:16:07 +00:00
Automatic Updater
9164ae2297 update copyright notice 2010-12-09 04:31:30 +00:00
Automatic Updater
b972f8e3a2 newcopyrights 2010-12-09 04:29:46 +00:00
Automatic Updater
388eb181d6 update 2010-12-09 01:15:22 +00:00
Mark Andrews
93b433d299 2982. [bug] Reference count dst keys. dst_key_attach() can be used
increment the reference count.

                        Note: dns_tsigkey_createfromkey() callers should now
                        always call dst_key_free() rather than setting it
                        to NULL on success. [RT #22672]
2010-12-09 01:05:29 +00:00
Automatic Updater
8f541851f4 update 2010-12-08 00:15:51 +00:00
Automatic Updater
39ba8c7737 update copyright notice 2010-12-07 23:46:26 +00:00
Automatic Updater
3892831333 newcopyrights 2010-12-07 23:30:28 +00:00
Automatic Updater
4409333f34 update 2010-12-07 03:15:56 +00:00
Mark Andrews
e69bed0b94 2980. [bug] named didn't properly handle UPDATES that changed the
TTL of the NSEC3PARAM RRset. [RT #22363]
2010-12-07 03:01:40 +00:00
Automatic Updater
a1c04a4f16 update 2010-12-05 21:15:23 +00:00
Mark Andrews
4dc228da3d isc__task_exiting -> isc_task_exiting 2010-12-05 20:29:24 +00:00
Automatic Updater
f3e8fd8e4a update 2010-12-04 14:15:21 +00:00
Mark Andrews
4bcdedcf07 temporally make isc__task_exiting become isc_task_exiting so that the
export version of libisc has all the symbols to link.
2010-12-04 13:27:10 +00:00
Automatic Updater
8a5c01f19e update 2010-12-04 00:16:12 +00:00
Automatic Updater
e6aee23f88 update copyright notice 2010-12-03 23:46:20 +00:00
Automatic Updater
ac84e86dd8 newcopyrights 2010-12-03 23:30:48 +00:00
Automatic Updater
e652cd7642 update 2010-12-03 22:15:26 +00:00
Evan Hunt
b1627aebb8 2979. [bug] named could deadlock during shutdown if two
"rndc stop" commands were issued at the same
			time. [RT #22108]
2010-12-03 22:04:49 +00:00
Mark Andrews
c35cd8f3a0 pass the address of dstkey 2010-12-03 21:48:11 +00:00
Automatic Updater
2cb64871bb update 2010-12-03 12:15:18 +00:00
Mark Andrews
d41b478b81 s/dns_key_free/dst_key_free/ 2010-12-03 12:04:24 +00:00
Automatic Updater
00eb58ff9c update 2010-12-03 01:15:28 +00:00
Mark Andrews
a783af3e86 2978. [port] hpux: look for <devpoll.h> [RT #21919] 2010-12-03 00:59:20 +00:00
Mark Andrews
a4aef00d65 2977. [bug] 'nsupdate -l' report if the session key is missing.
[RT #21670]
2010-12-03 00:39:46 +00:00
Mark Andrews
6db4de888e remove CVSS scores 2010-12-03 00:30:53 +00:00
Automatic Updater
5480ae18d3 update 2010-12-03 00:15:58 +00:00
Mark Andrews
853a83725f update RT number 2010-12-03 00:11:17 +00:00
Automatic Updater
1517558cd3 update copyright notice 2010-12-02 23:46:30 +00:00
Mark Andrews
d6b3b3507f update 2976 description 2010-12-02 23:43:25 +00:00
Automatic Updater
ffb4d9e0ba newcopyrights 2010-12-02 23:30:36 +00:00
Mark Andrews
e7ca8c91ec 2976. [bug] named die on exit after negotiating a GSS-TSIG key.
[RT #3415]
2010-12-02 23:26:58 +00:00
Automatic Updater
da92bed4d5 update 2010-12-02 05:16:11 +00:00
Mark Andrews
7f2d8ae5da 2975. [bug] rbtdb.c:cleanup_dead_nodes_callback() aquired the
wrong lock which could lead to server deadlock.
                        [RT #22614]
2010-12-02 05:07:03 +00:00
Automatic Updater
13a08d776f update 2010-12-01 00:15:49 +00:00
Automatic Updater
14f8d8220c update copyright notice 2010-11-30 23:46:15 +00:00
Automatic Updater
3aa81ceb1c newcopyrights 2010-11-30 23:30:29 +00:00
Automatic Updater
7a86f936b8 update 2010-11-30 03:16:07 +00:00
Evan Hunt
f72883c6ae 2974. [bug] Some vaild UPDATE requests could fail due to a
consistency check examining the existing version
			of the zone rather than the new version resulting
			from the UPDATE. [RT #22413]
2010-11-30 02:27:38 +00:00
Mark Andrews
e9c45e3dbf file release-notes.css was added on branch v9_7 on 2011-05-24 00:26:44 +0000 2010-11-29 00:41:05 +00:00
Automatic Updater
0c97e821ee update 2010-11-25 05:15:39 +00:00
Mark Andrews
d27cd59a97 CVE-2010-3613 Reduce complexity from M to L raising score from 7.1 to 7.8.
Just have the base CVSS vectors.
2010-11-25 04:48:54 +00:00
Automatic Updater
9eea2d2964 update 2010-11-19 00:16:13 +00:00
Mark Andrews
1f897c49f1 2973. [bug] bind.keys.h was being removed by the "make clean"
at the end of configure resulting in build failures
                        where there is very old version of perl installed.
                        Move it to "make maintainer-clean". [RT #22230]
2010-11-18 23:22:45 +00:00
Automatic Updater
0676d1377a update 2010-11-18 03:16:16 +00:00
Mark Andrews
c1a94681f2 add CVE, VU and CVSS 2010-11-18 02:50:46 +00:00
Automatic Updater
6539c8dd1b update 2010-11-18 01:16:18 +00:00
Automatic Updater
2dbcb34643 update copyright notice 2010-11-18 00:59:15 +00:00
Mark Andrews
e013e99c1c 2972. [bug] win32: address windows socket errors. [RT #21906] 2010-11-18 00:29:02 +00:00
Automatic Updater
46f6e09b51 update 2010-11-18 00:15:54 +00:00
Automatic Updater
97c708294d update copyright notice 2010-11-17 23:46:32 +00:00
Automatic Updater
d77da4225c newcopyrights 2010-11-17 23:30:25 +00:00
Automatic Updater
3e612906f4 update 2010-11-17 04:16:03 +00:00
Mark Andrews
636785e7eb handle namedxx.conf 2010-11-17 03:17:24 +00:00
Automatic Updater
7afdd95114 update 2010-11-17 01:15:29 +00:00
Evan Hunt
a53c04f050 2971. [bug] Fixed a bug that caused journal files not to be
compacted on Windows systems as a result of
			non-POSIX-compliant rename() semantics. [RT #22434]
2010-11-17 00:29:31 +00:00
Automatic Updater
5165085bfb update 2010-11-17 00:15:53 +00:00
Automatic Updater
2d77ffe6bb update 2010-11-16 08:15:31 +00:00
Mark Andrews
8f110ca521 2970. [security] Adding a NO DATA negative cache entry failed to clear
any matching RRSIG records.  A subsequent lookup of
                        of NO DATA cache entry could trigger a INSIST when the
                        unexpected RRSIG was also returned with the NO DATA
                        cache entry.  [RT #22288]
2010-11-16 07:28:37 +00:00
Automatic Updater
944f9271ac update 2010-11-16 02:16:10 +00:00
Shawn Routhier
75636f9b01 Fix acl type processing so that allow-query works in options and view
statements.  Also add a new set of tests to verify proper functioning.
[RT #22418]
2010-11-16 02:11:53 +00:00
Mark Andrews
8bdc865433 2968. [security] Named could fail to prove a data set was insecure
before marking it as insecure.  One set of conditions
                        that can trigger this occurs naturally when rolling
                        DNSKEY algorithms.  [RT #22309]
2010-11-16 01:21:49 +00:00
Automatic Updater
383ca63dee update 2010-11-11 03:16:11 +00:00
Automatic Updater
5465641352 sync 2010-11-11 02:27:46 +00:00
Automatic Updater
2464e106df update 2010-10-20 00:15:53 +00:00
Automatic Updater
e8bff09ffb update copyright notice 2010-10-19 23:46:47 +00:00
Automatic Updater
ae1a01ff3d newcopyrights 2010-10-19 23:30:29 +00:00
Automatic Updater
bc2014dbbe update 2010-10-19 03:15:50 +00:00
Mark Andrews
feb6270d6f 2967. [bug] 'host -D' now turns on debugging messages earlier.
[RT #22361]
2010-10-19 02:54:48 +00:00
Automatic Updater
c209a20108 update 2010-10-19 00:16:22 +00:00
Automatic Updater
913562f0d3 update copyright notice 2010-10-18 23:46:48 +00:00
Automatic Updater
ebfeba4f78 newcopyrights 2010-10-18 23:30:26 +00:00
Automatic Updater
a9a62db641 update 2010-10-18 04:16:19 +00:00
Mark Andrews
4161a9a0e5 2966. [bug] isc_print_vsnprintf() failed to check if there was
space available in the buffer when adding a left
                        justified character with a non zero width,
                        (e.g. "%-1c"). [RT #22270]
2010-10-18 04:01:06 +00:00
Automatic Updater
795b23217b update 2010-10-04 23:15:21 +00:00
Mark Andrews
49f7dba060 silence 'Null terminator in string initializer ignored.' warning 2010-10-04 22:25:25 +00:00
Automatic Updater
93f3b0ddba update 2010-10-03 03:16:09 +00:00
Automatic Updater
9822caa29b sync 2010-10-03 02:27:38 +00:00
Automatic Updater
47edbd3c53 update 2010-09-30 00:15:52 +00:00
Automatic Updater
fd56caffe6 update copyright notice 2010-09-29 23:46:44 +00:00
Automatic Updater
76365d5f86 newcopyrights 2010-09-29 23:30:29 +00:00
Automatic Updater
409886d852 update 2010-09-29 05:16:05 +00:00
Mark Andrews
f225d11b53 #include <isc/print.h> 2010-09-29 04:29:16 +00:00
Automatic Updater
553a2acba8 update 2010-09-29 04:17:35 +00:00
Mark Andrews
affc5a912e 2965. [func] Test HMAC functions using test data from RFC 2104 and
RFC 4634. [RT #21702]
2010-09-29 04:07:10 +00:00
Automatic Updater
309173748f update 2010-09-24 09:15:50 +00:00
Automatic Updater
a78ef43fe3 update copyright notice 2010-09-24 08:30:58 +00:00
Automatic Updater
dc856c0bcf newcopyrights 2010-09-24 08:27:59 +00:00
Automatic Updater
b74a3907a5 update 2010-09-24 06:15:23 +00:00
Mark Andrews
0a2897853b 2963. [security] The allow-query acl was being applied instead of the
allow-query-cache acl to cache lookups. [RT #22114]
2010-09-24 05:54:06 +00:00
Automatic Updater
444d3d9f97 update 2010-09-17 05:15:23 +00:00
Mark Andrews
177931360d spelling 2010-09-17 04:55:50 +00:00
Automatic Updater
d356572dda update 2010-09-16 06:15:22 +00:00
Mark Andrews
ce5fc01c92 2962. [port] win32: add more dependancies to BINDBuild.dsw.
[RT #22062]
2010-09-16 06:11:43 +00:00
Automatic Updater
daf3551b86 update 2010-09-15 23:30:14 +00:00
Mark Andrews
9960be0a54 simplify grep 2010-09-15 23:23:22 +00:00
Automatic Updater
5a16eacf6f update 2010-09-15 16:15:25 +00:00
Evan Hunt
b1a6907e81 The "resolver" test was failing on systems with old versions of "grep". 2010-09-15 15:45:16 +00:00
Automatic Updater
9f5cecf887 update 2010-09-15 12:50:12 +00:00
Automatic Updater
6d7a4c30a2 update copyright notice 2010-09-15 12:38:04 +00:00
Automatic Updater
fdf81716b4 newcopyrights 2010-09-15 12:33:53 +00:00
Mark Andrews
e69b2928cf ./bin/tests/system/resolver/ns4/named.noaa 2010-09-15 12:31:40 +00:00
Mark Andrews
1872751420 2961. [bug] Be still more selective about the non-authoritative
answers we apply change 2748 to. [RT #22074]
2010-09-15 12:23:17 +00:00
Automatic Updater
355ac59256 update 2010-09-15 12:15:22 +00:00
Mark Andrews
3f9371b30c 2960. [func] Check that named accepts non-authoritative answers.
[RT #21594]
2010-09-15 12:10:54 +00:00
Automatic Updater
5557ac8a6f update 2010-09-15 04:16:06 +00:00
Mark Andrews
311f97e2d4 2959. [func] Check that named starts with a missing masterfile.
[RT #22076]

2958.   [bug]           named failed to start with a missing master file.
                        [RT #22076]
2010-09-15 03:36:41 +00:00
Mark Andrews
fea199b0ce 2957. [bug] entropy_get() and entropy_getpseudo() failed to match
the API for RAND_bytes() and RAND_pseudo_bytes()
                        respectively. [RT #21962]
2010-09-15 03:20:37 +00:00
Automatic Updater
623d40c98e update 2010-09-14 00:15:43 +00:00
Automatic Updater
d3b9504e44 newcopyrights 2010-09-13 23:30:24 +00:00
Mark Andrews
910ceb6004 2928. [bug] Be more selective about the non-authoritative
answer we apply change 2748 to. [RT #21594]
2010-09-13 23:25:22 +00:00
Automatic Updater
e5052c8526 update 2010-09-13 07:15:20 +00:00
Mark Andrews
81537dce5b 2956. [port] Enable atomic operations on the PowerPC64. [RT #21899] 2010-09-13 07:09:52 +00:00
Mark Andrews
933b976829 2956. [port] Enable atomic operations on the PowerPC64. [RT #21899] 2010-09-13 07:09:21 +00:00
Automatic Updater
d46865e1e9 update 2010-09-13 04:15:49 +00:00
Mark Andrews
91f92550dc 2954. [bug] contrib: dlz_mysql_driver.c bad error handling on
build_sqldbinstance failure. [RT #21623]
2010-09-13 03:30:30 +00:00
Automatic Updater
da68f57b1c update 2010-09-08 00:16:10 +00:00
Automatic Updater
68d2587454 update copyright notice 2010-09-07 23:46:37 +00:00
Automatic Updater
738c82a017 newcopyrights 2010-09-07 23:30:29 +00:00
Automatic Updater
ff1a145792 update 2010-09-07 03:16:07 +00:00
Mark Andrews
ad8fd9b034 2953. [bug] Silence spurious "expected covering NSEC3, got an
exact match" message when returning a wildcard
                        no data response. [RT #21744]
2010-09-07 02:52:10 +00:00
Automatic Updater
76d886a4e3 update 2010-09-07 02:15:48 +00:00
Mark Andrews
26c738828f 2952. [port] win32: named-checkzone and named-checkconf failed
to initialise winsock. [RT #21932]
2010-09-07 01:52:22 +00:00
Automatic Updater
6f15e1a200 update 2010-09-07 01:15:21 +00:00
Mark Andrews
1cbe92ed8c 2951. [bug] named failed to generate a correct signed response
in a optout, delegation only zone with no secure
                        delegations. [RT #22007]
2010-09-07 01:05:59 +00:00
Automatic Updater
430cc35151 update 2010-09-06 05:15:38 +00:00
Mark Andrews
6ee56d59da 2950. [bug] named failed to perform a SOA up to date check when
falling back to TCP on UDP timeouts when
                        ixfr-from-differences was set. [RT #21595]
2010-09-06 04:43:08 +00:00
Mark Andrews
ed09ec058a 2949. [bug] dns_view_setnewzones() contained a memory leak if
it was called multiple times. [RT #21942]
2010-09-06 04:34:03 +00:00
Automatic Updater
6b524e41e5 update 2010-09-02 04:15:35 +00:00
Automatic Updater
dc797e5833 9.7.2 2010-09-02 03:39:12 +00:00
Mark Andrews
dafa96c13e 9.7.2 2010-09-02 03:36:10 +00:00
Automatic Updater
448b6882f6 update 2010-08-26 02:15:16 +00:00
Mark Andrews
14d41c9db7 update 2010-08-26 02:14:45 +00:00
Automatic Updater
2ba7551844 update 2010-08-25 02:15:14 +00:00
Mark Andrews
36e7d4808c cleanup 2010-08-25 01:23:23 +00:00
Automatic Updater
4ebc7953b1 update 2010-08-25 01:15:15 +00:00
Mark Andrews
5a51c60f58 update 2010-08-25 01:11:44 +00:00
Automatic Updater
0cdec93645 update 2010-08-24 01:15:14 +00:00
Mark Andrews
14dfb38385 silence signed/unsigned warning hpux 2010-08-24 01:01:45 +00:00
Automatic Updater
06201ee79d update 2010-08-20 03:15:49 +00:00
Automatic Updater
67a781e65c regen v9_7 2010-08-20 02:40:26 +00:00
Automatic Updater
696be5b2ee update 2010-08-20 02:15:19 +00:00
Mark Andrews
2ca6b13626 2946. [doc] Document the default values for the minimum and maximum
zone refresh and retry values in the ARM. [RT #21886]
2010-08-20 01:36:45 +00:00
Automatic Updater
845eb1f0ed update 2010-08-20 01:15:26 +00:00
Mark Andrews
8c19a64364 2945. [doc] Update empty-zones list in ARM. [RT #21772]
2944.   [maint]         Remove ORCHID prefix from built in empty zones.
                        [RT #21772]
2010-08-20 00:17:40 +00:00
Automatic Updater
a2f7b8a534 update 2010-08-18 00:15:58 +00:00
Automatic Updater
63b93f0682 update copyright notice 2010-08-17 23:46:28 +00:00
Automatic Updater
cd7d1b6d68 newcopyrights 2010-08-17 23:30:39 +00:00
Automatic Updater
bea9285506 update 2010-08-17 04:16:00 +00:00
Mark Andrews
82580033db update default id range to match that used (1..7) 2010-08-17 04:08:07 +00:00
Automatic Updater
20990845d8 update 2010-08-17 02:15:16 +00:00
Mark Andrews
704e4daff8 dns_view_setnewzones 2010-08-17 01:21:07 +00:00
Automatic Updater
98a3748577 update 2010-08-17 01:15:15 +00:00
Mark Andrews
4e5d7e4fff 9.7.2rc1 2010-08-17 00:58:57 +00:00
Automatic Updater
5db09e69de 9.7.2rc1 2010-08-17 00:53:41 +00:00
Mark Andrews
b45ded3b33 9.7.2rc1 2010-08-17 00:51:33 +00:00
Automatic Updater
93472ba538 update 2010-08-17 00:15:38 +00:00
Automatic Updater
0a583f82eb regen v9_7 2010-08-17 00:08:26 +00:00
Automatic Updater
5d98af56f2 update copyright notice 2010-08-16 23:46:31 +00:00
Automatic Updater
65f2bd61ae newcopyrights 2010-08-16 23:30:36 +00:00
Automatic Updater
91a8c60f0e update 2010-08-16 23:15:19 +00:00
Mark Andrews
4facc02671 2940. [port] Remove connection aborted error message on
Windows. [RT #21549]
2010-08-16 22:55:17 +00:00
Mark Andrews
05ceebcb1b silence redefinition warnings MacOS 2010-08-16 22:39:36 +00:00
Mark Andrews
30579c29be 2943. [func] Add support to load new keys into managed zones
without signing immediately with "rndc loadkeys".
                        Add support to link keys with "dnssec-keygen -S"
                        and "dnssec-settime -S".  [RT #21351]
2010-08-16 22:27:18 +00:00
Automatic Updater
d7c212118e update 2010-08-16 06:15:19 +00:00
Mark Andrews
4d5ef757af 2942. [contrib] zone2sqlite failed to setup the entropy sources.
[RT #21610]
2010-08-16 05:36:08 +00:00
Automatic Updater
42783352fc update 2010-08-16 05:15:16 +00:00
Mark Andrews
ff2047b685 2941. [bug] sdb and sdlz (dlz's zone database) failed to support
DNAME at the zone apex.  [RT #21610]
2010-08-16 05:14:58 +00:00
Automatic Updater
b16a1e6c07 update 2010-08-14 00:15:33 +00:00
Automatic Updater
770279e013 update copyright notice 2010-08-13 23:46:29 +00:00
Automatic Updater
1ab0c02604 newcopyrights 2010-08-13 23:30:50 +00:00
Automatic Updater
61ed35e09c update 2010-08-13 08:15:17 +00:00
Mark Andrews
fe359f7a21 2939. [func] Check that named successfully skips NSEC3 records
that fail to match the NSEC3PARAM record currently
                        in use. [RT# 21868]
2010-08-13 07:35:04 +00:00
Automatic Updater
f2080c6915 update 2010-08-13 07:15:15 +00:00
Mark Andrews
71e5c19636 2938. [bug] When generating signed responses, from a signed zone
that uses NSEC3, named would use a uninitialised
                        pointer if it needed to skip a NSEC3 record because
                        it didn't match the selected NSEC3PARAM record for
                        zone. [RT# 21868]
2010-08-13 07:00:40 +00:00
Automatic Updater
188bd721a5 update 2010-08-13 04:15:20 +00:00
Mark Andrews
50874e9ec7 ./bin/tests/system/addzone/ns2/default.nzf.in 2010-08-13 03:34:59 +00:00
Automatic Updater
4eef79de8a update 2010-08-13 03:15:44 +00:00
Automatic Updater
38113dbdb1 sync 2010-08-13 02:28:42 +00:00
Automatic Updater
db77363f8c update 2010-08-13 00:15:47 +00:00
Automatic Updater
085c5a5d9b update 2010-08-12 22:15:14 +00:00
Tatuya JINMEI 神明達哉
97e69e38a6 define the wrapper function for mem_isovermem().
(a regression in rt21818)
2010-08-12 21:31:33 +00:00
Automatic Updater
95787a5532 update 2010-08-12 04:15:27 +00:00
Evan Hunt
289fd68776 Removed a leftover UNUSED statement referencing a parameter that doesn't
exist anymore.
2010-08-12 04:04:34 +00:00
Automatic Updater
b1b6267a8a update 2010-08-12 03:15:33 +00:00
Automatic Updater
50b789e229 regen v9_7 2010-08-12 02:41:36 +00:00
Automatic Updater
c0c9f5afd6 update 2010-08-12 02:15:14 +00:00
Mark Andrews
ed4eee1e51 .orig -> .in as .orig is used by patch 2010-08-12 01:32:46 +00:00
Automatic Updater
1f802e5618 update 2010-08-12 00:15:50 +00:00
Automatic Updater
a64888719c update copyright notice 2010-08-11 23:46:20 +00:00
Automatic Updater
971a043b47 update 2010-08-11 23:15:22 +00:00
Tatuya JINMEI 神明達哉
8c3613e29f required ctx is valid in mem_isovermem(). 2010-08-11 23:10:24 +00:00
Tatuya JINMEI 神明達哉
879dcb926c 2937. [bug] Worked around an apparent race condition in over
memory conditions.  Without this fix a DNS cache DB or
			ADB could incorrectly stay in an over memory state,
			effectively refusing further caching, which
			subsequently made a BIND 9 caching server unworkable.
			This fix prevents this problem from happening by
			polling the state of the memory context, rather than
			making a copy of the state, which appeared to cause
			a race.  This is a "workaround" in that it doesn't
			solve the possible race per se, but several experiments
			proved this change solves the symptom.  Also, the
			polling overhead hasn't been reported to be an issue.
			This bug should only affect a caching server that
			specifies a finite max-cache-size.  It's also quite
			likely that the bug happens only when enabling threads,
			but it's not confirmed yet. [RT #21818]
2010-08-11 22:56:59 +00:00
Automatic Updater
797af0ae2d update 2010-08-11 19:15:15 +00:00
Evan Hunt
0658d99891 2936. [func] Improved configuration syntax and multiple-view
support for addzone/delzone feature (see change
			#2930).  Removed "new-zone-file" option, replaced
			with "allow-new-zones (yes|no)".  The new-zone-file
			for each view is now created automatically, with
			a filename generated from a hash of the view name.
			It is no longer necessary to "include" the
			new-zone-file in named.conf; this happens
			automatically.  Zones that were not added via
			"rndc addzone" can no longer be removed with
			"rndc delzone". [RT #19447]
2010-08-11 18:19:59 +00:00
Automatic Updater
31d7f00538 update 2010-08-11 03:15:49 +00:00
Automatic Updater
444deec2a0 sync 2010-08-11 02:28:58 +00:00
Automatic Updater
36345eaba4 update 2010-08-11 00:15:51 +00:00
Automatic Updater
867b6769fe update copyright notice 2010-08-10 23:47:45 +00:00
Automatic Updater
c4cd50192d newcopyrights 2010-08-10 23:30:29 +00:00
Automatic Updater
7a6894cb7f update 2010-08-10 10:15:21 +00:00
Mark Andrews
a3fb29404e 2935. [bug] nsupdate: improve 'file not found' error message.
[RT #21871]
2010-08-10 09:54:11 +00:00
Mark Andrews
e05fe79dd3 2934. [bug] Use ANSI C compliant shift range in lib/isc/entropy.c.
[RT #21871]
2010-08-10 09:36:56 +00:00
Automatic Updater
a10c0cd87c update 2010-08-10 09:15:19 +00:00
Mark Andrews
76e6cf505e 2933. [bug] 'dig +nsid' used stack memory after it went out of
scope.  This could potentially result in a unknown,
                        potentially malformed, EDNS option being sent instead
                        of the desired NSID option. [RT #21781]
2010-08-10 08:43:40 +00:00
Automatic Updater
5ac5be4ca9 update 2010-08-09 23:15:19 +00:00
Evan Hunt
ead09b5724 2932. [cleanup] Corrected a numbering error in the "dnssec" test.
[RT #21597]
2010-08-09 22:35:06 +00:00
Automatic Updater
58ec718890 update 2010-08-04 00:15:47 +00:00
Automatic Updater
0154c3b77b update copyright notice 2010-08-03 23:46:17 +00:00
Automatic Updater
6fbb344271 newcopyrights 2010-08-03 23:30:40 +00:00
Automatic Updater
22076c62a1 update 2010-08-03 17:15:22 +00:00
Tatuya JINMEI 神明達哉
fdc65eb9ec added me to authors. approved by Evan. 2010-08-03 16:44:52 +00:00
Automatic Updater
03db30d50e update 2010-07-20 05:15:14 +00:00
Mark Andrews
74373ce898 while (1) -> for (;;) to silence compiler warning 2010-07-20 04:51:38 +00:00
Mark Andrews
11f8ef90da format/arg mismatch solaris 2010-07-20 04:48:01 +00:00
Automatic Updater
dfcaadf673 update 2010-07-20 01:15:16 +00:00
Mark Andrews
01d404c4ad retag 9.7.2b1 2010-07-20 00:37:24 +00:00
Automatic Updater
9b681678ee update 2010-07-19 06:15:13 +00:00
Mark Andrews
e5c3961bf6 0 -> 0U 2010-07-19 06:14:11 +00:00
Automatic Updater
494617bce2 update 2010-07-19 05:15:16 +00:00
Mark Andrews
d647b53008 silence compiler warnings about (char) as index to array 2010-07-19 05:14:47 +00:00
Automatic Updater
ae61729064 update 2010-07-15 02:15:17 +00:00
Tatuya JINMEI 神明達哉
9891a60571 2931. [bug] Temporarily and partially disable change 2864
because it would cause inifinite attempts of RRSIG
			queries.  This is an urgent care fix; we'll
			revisit the issue and complete the fix later.
			[RT #21710]
2010-07-15 01:26:10 +00:00
Automatic Updater
589cf29b85 update 2010-07-13 03:15:43 +00:00
Automatic Updater
832c2e6b68 sync 2010-07-13 02:28:37 +00:00
Automatic Updater
569a2c2b5f update 2010-07-12 19:15:14 +00:00
Evan Hunt
4b186490dd Added function definitions and moved a variable declaration for win32 build. 2010-07-12 18:52:23 +00:00
Automatic Updater
d0c7cc3abe update 2010-07-12 18:16:16 +00:00
Evan Hunt
ae7644fbdc updated api files for 9.7.2b1 release 2010-07-12 18:11:12 +00:00
Automatic Updater
8756f35d48 update 2010-07-12 17:15:13 +00:00
Evan Hunt
6a009a5e2c update for 9.7.2b1 release 2010-07-12 17:00:00 +00:00
Automatic Updater
cb39d9525b updated for 9.7.2b1 release 2010-07-12 16:57:40 +00:00
Automatic Updater
7c80f7895f update 2010-07-12 03:15:40 +00:00
Automatic Updater
cc738d9655 regen v9_7 2010-07-12 02:41:01 +00:00
Automatic Updater
8bc0b080dc update 2010-07-12 00:15:47 +00:00
Automatic Updater
d4fb9a4b93 update copyright notice 2010-07-11 23:46:36 +00:00
Automatic Updater
b7e31c54f2 newcopyrights 2010-07-11 23:30:22 +00:00
Automatic Updater
bb11721d68 update 2010-07-11 06:15:14 +00:00
Evan Hunt
2b19800425 Removed a duplicate entry in namedconf.c. 2010-07-11 05:44:05 +00:00
Automatic Updater
046bc782ab update 2010-07-11 03:15:44 +00:00
Automatic Updater
99b2fa2479 regen v9_7 2010-07-11 02:41:30 +00:00
Automatic Updater
f5a2086f1f update 2010-07-11 02:15:18 +00:00
Evan Hunt
542d079eb1 dnssec and dlv tests included master zones whose master files were missing.
this was a bug that hadn't been noticed before, but 19447 added a test for
that condition and it caused test failures.
2010-07-11 01:18:17 +00:00
Automatic Updater
31eb153edb update 2010-07-11 00:15:32 +00:00
Evan Hunt
92f39ccb5b 2930. [experimental] New "rndc addzone" and "rndc delzone" commads
allow dynamic addition and deletion of zones.
			To enable this feature, specify a "new-zone-file"
			option at the view or options level in named.conf.
			Zone configuration information for the new zones
			will be written into that file.  To make the 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.) [RT #19447]
2010-07-11 00:12:19 +00:00
Automatic Updater
e2f3912e14 update 2010-07-10 03:15:44 +00:00
Automatic Updater
523d1871dc regen v9_7 2010-07-10 02:41:31 +00:00
Automatic Updater
29ef7aeb04 update 2010-07-10 00:15:46 +00:00
Automatic Updater
98afc1a6dd update copyright notice 2010-07-09 23:46:27 +00:00
Automatic Updater
1bb3dd1911 newcopyrights 2010-07-09 23:33:24 +00:00
Automatic Updater
a7f6945b12 update 2010-07-09 05:15:48 +00:00
Evan Hunt
59c9c71f36 2929. [bug] Improved handling of GSS security contexts:
- added LRU expiration for generated TSIGs
			 - added the ability to use a non-default realm
                         - added new "realm" keyword in nsupdate
			 - limited lifetime of generated keys to 1 hour
			   or the lifetime of the context (whichever is
			   smaller)
			[RT #19737]
2010-07-09 05:14:08 +00:00
Automatic Updater
c41e161d06 update 2010-07-08 03:15:43 +00:00
Automatic Updater
0b04e719ae sync 2010-07-08 02:28:35 +00:00
Automatic Updater
7bcbe0f387 update 2010-07-05 03:15:44 +00:00
Automatic Updater
de6d4c73d2 sync 2010-07-05 02:28:31 +00:00
Automatic Updater
f562d83ce6 update 2010-06-30 03:15:45 +00:00
Automatic Updater
3f56f26766 sync 2010-06-30 02:28:25 +00:00
Automatic Updater
139c403ce5 update 2010-06-29 03:15:41 +00:00
Automatic Updater
956206dda4 sync 2010-06-29 02:28:38 +00:00
Automatic Updater
ece11c796a update 2010-06-29 00:15:46 +00:00
Automatic Updater
8bce19c1ea update copyright notice 2010-06-28 23:46:24 +00:00
Automatic Updater
bc8f6178e7 newcopyrights 2010-06-28 23:30:30 +00:00
Automatic Updater
356005f612 update 2010-06-28 02:15:19 +00:00
Mark Andrews
5a21c108fe check that we have non-cachable answers to test against
match the dig.out.ns#.$n to the nameserver
2010-06-28 01:37:20 +00:00
Automatic Updater
ca5b25ad68 update 2010-06-28 00:15:51 +00:00
Mark Andrews
88b6cb8b8b handle very short source files 2010-06-27 23:33:39 +00:00
Automatic Updater
63118d1444 update 2010-06-27 00:15:42 +00:00
Automatic Updater
4fe6e5b494 update copyright notice 2010-06-26 23:46:27 +00:00
Automatic Updater
d49cd04515 newcopyrights 2010-06-26 23:30:25 +00:00
Automatic Updater
0128b3dcd6 update 2010-06-26 06:15:16 +00:00
Mark Andrews
f0eda70e86 isc_boolean_t -> dns_v4_aaaa_t 2010-06-26 05:31:17 +00:00
Automatic Updater
b07c1edbba update 2010-06-26 03:15:47 +00:00
Automatic Updater
677b20a94c regen v9_7 2010-06-26 02:41:21 +00:00
Mark Andrews
f7540a5483 bin/tests/system/dnssec/ns7/named.nosoa 2010-06-26 02:20:23 +00:00
Automatic Updater
2c38bd4799 update 2010-06-26 01:15:13 +00:00
Mark Andrews
a386cb22a0 add /* NOT DOCUMENTED */ 2010-06-26 00:20:04 +00:00
Automatic Updater
80ba794a42 update 2010-06-26 00:15:46 +00:00
Mark Andrews
5a7f05ee3c 2925. [bug] Named failed to accept uncachable negative responses
from insecure zones. [RT# 21555]
2010-06-25 23:52:09 +00:00
Automatic Updater
c65ab74d31 update copyright notice 2010-06-25 23:46:33 +00:00
Automatic Updater
c2dde474aa newcopyrights 2010-06-25 23:30:28 +00:00
Automatic Updater
1cca07d601 update 2010-06-25 07:30:44 +00:00
Mark Andrews
653b008950 remove leading zeros on keyid
account for trusted keys not applying to _bind anymore
2010-06-25 07:27:20 +00:00
Automatic Updater
1386155331 update 2010-06-25 04:15:20 +00:00
Mark Andrews
9777316c64 2924. [func] 'rndc secroots' dump a combined summary of the
current managed keys combined with trusted keys.
                        [RT #20904]
2010-06-25 03:51:07 +00:00
Automatic Updater
5f57c9f71c update 2010-06-24 08:15:25 +00:00
Mark Andrews
9b8836481d changes number 2010-06-24 07:33:05 +00:00
Mark Andrews
fe012b4db4 cvs rdiff -r1.3417 -r1.3418 bind9/CHANGES
cvs rdiff -r1.330 -r1.331 bind9/bin/dig/dighost.c
2010-06-24 07:29:07 +00:00
Automatic Updater
12eb4bc93c update 2010-06-24 00:15:44 +00:00
Automatic Updater
5b17e46285 update copyright notice 2010-06-23 23:46:36 +00:00
Automatic Updater
f8d7bb61a8 newcopyrights 2010-06-23 23:30:27 +00:00
Automatic Updater
65cc2ab6a5 update 2010-06-23 04:15:39 +00:00
Mark Andrews
728ee05d45 s/to soon/too soon/ 2010-06-23 03:31:31 +00:00
Mark Andrews
b9e3320bf4 add period 2010-06-23 03:28:58 +00:00
Automatic Updater
3ebd394165 update 2010-06-23 03:15:34 +00:00
Mark Andrews
128b7183fd 2922 [contrib] Update zkt to version 1.0.: 2010-06-23 02:47:48 +00:00
Automatic Updater
aaa0b7a55e regen v9_7 2010-06-23 02:41:06 +00:00
Automatic Updater
0ab62f7ab9 update 2010-06-23 02:15:28 +00:00
Mark Andrews
773efb00d2 2921. [bug] The resolver could attempt to destroy a fetch context
to soon.  [RT #19878]
2010-06-23 01:50:55 +00:00
Automatic Updater
f4440dd30a update 2010-06-23 00:15:36 +00:00
Automatic Updater
275c562ce7 update copyright notice 2010-06-22 23:46:34 +00:00
Mark Andrews
d845cb6745 update 2010-06-22 23:37:37 +00:00
Automatic Updater
28b4db7239 update 2010-06-22 07:15:16 +00:00
Mark Andrews
a86f1249ee 2920. [func] Allow 'filter-aaaa-on-v4' to be applied selectively
to IPv4 clients.  New acl 'filter-aaaa' (default any).
2010-06-22 06:18:07 +00:00
Mark Andrews
6a51d9b6de reverse accidental commit 2010-06-22 06:15:11 +00:00
Automatic Updater
a797df31d7 update 2010-06-22 04:15:25 +00:00
Mark Andrews
13ce1be5d3 2920. [func] Allow 'filter-aaaa-on-v4' to be applied selectively
to IPv4 clients.  New acl 'filter-aaaa' (default any).
2010-06-22 04:04:22 +00:00
Automatic Updater
d5400f7e7d update 2010-06-22 00:15:48 +00:00
Automatic Updater
2eb5511c39 update copyright notice 2010-06-21 23:46:27 +00:00
Automatic Updater
2ce9908f2d newcopyrights 2010-06-21 23:30:25 +00:00
Automatic Updater
5a74ff52c2 regen 2010-06-21 23:30:24 +00:00
Automatic Updater
3022504c0b update 2010-06-21 03:15:41 +00:00
Mark Andrews
262ed7420f 2919. [func] Add autosign-ksk and autosign-zsk virtual time tests.
[RT #20840]
2010-06-21 02:36:44 +00:00
Automatic Updater
fc77335828 update 2010-06-21 00:15:50 +00:00
Automatic Updater
c0e2300901 update copyright notice 2010-06-20 23:46:24 +00:00
Automatic Updater
19dd51b6ab newcopyrights 2010-06-20 23:30:24 +00:00
Automatic Updater
92a43c0ead regen 2010-06-20 23:30:23 +00:00
Automatic Updater
b7ba53e732 update 2010-06-20 08:15:46 +00:00
Mark Andrews
a7b7c601a5 report bind.keys and bindkeys.pl versions in output 2010-06-20 07:36:02 +00:00
Mark Andrews
6cac6ea83b add bind.keys.h dependancy on ${srcdir}/bindkeys.pl 2010-06-20 07:34:54 +00:00
Mark Andrews
9c6a6f9134 add cvs id 2010-06-20 07:32:24 +00:00
Automatic Updater
37cb6b93fd update 2010-06-19 03:15:42 +00:00
Automatic Updater
72b349b75c sync 2010-06-19 02:28:25 +00:00
Automatic Updater
f276cf10c8 update 2010-06-19 00:15:40 +00:00
Automatic Updater
5040108c31 update copyright notice 2010-06-18 23:46:26 +00:00
Automatic Updater
55d21ef131 newcopyrights 2010-06-18 23:30:33 +00:00
Automatic Updater
e035fcc62a update 2010-06-18 05:39:19 +00:00
Mark Andrews
21879ffd57 AAAA not A 2010-06-18 05:37:15 +00:00
Automatic Updater
bf1eb3b85d update 2010-06-18 03:16:17 +00:00
Mark Andrews
b2cc42052f /bin/tests/virtual-time/common/controls.conf 2010-06-18 02:49:04 +00:00
Mark Andrews
aa4d04e680 ./bin/tests/virtual-time/README 2010-06-18 02:46:31 +00:00
Automatic Updater
2b48d4ec91 update 2010-06-18 02:15:20 +00:00
Mark Andrews
e2edd40cb4 2918. [maint] Add AAAA address for I.ROOT-SERVERS.NET. 2010-06-18 02:13:01 +00:00
Mark Andrews
b5fb6892fe add 9.7.1 release marker 2010-06-18 02:02:04 +00:00
Automatic Updater
1365b51c71 update 2010-06-18 00:15:45 +00:00
Automatic Updater
399e2fd233 update 2010-06-17 06:15:13 +00:00
Mark Andrews
17560312bb 2917. [func] Virtual time test framework. [RT #20801] 2010-06-17 05:44:42 +00:00
Mark Andrews
b7b65b35b6 2917. [func] Virtual time test framework. [RT #20801 2010-06-17 05:43:52 +00:00
Automatic Updater
86bdb760d7 update 2010-06-16 03:15:40 +00:00
Automatic Updater
f3a548988c sync 2010-06-16 02:28:07 +00:00
Automatic Updater
ec5fcd0136 update 2010-06-12 00:15:45 +00:00
Automatic Updater
a6cde7c0f6 update copyright notice 2010-06-11 23:46:18 +00:00
Automatic Updater
fe3bf8f43e newcopyrights 2010-06-11 23:30:34 +00:00
Automatic Updater
5f8a100d65 update 2010-06-11 02:15:37 +00:00
Mark Andrews
a3d418e155 restore export of PERL PK11GEN PK11LIST PK11DEL 2010-06-11 01:59:22 +00:00
Automatic Updater
08d50931b6 update 2010-06-11 00:49:38 +00:00
Automatic Updater
d12037b665 update 2010-06-10 07:17:14 +00:00
Mark Andrews
24b4cd45a2 2916. [func] Add framework to use IPv6 in tests.
fd92:7065:b8e:ffff::1 ... fd92:7065:b8e:ffff::7
2010-06-10 06:20:47 +00:00
cvs2git
7c5699736b This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-06-10 06:19:55 +00:00
Automatic Updater
3fa4e557e0 update 2010-06-10 00:20:42 +00:00
Automatic Updater
5c24ec251e update copyright notice 2010-06-09 23:49:43 +00:00
Automatic Updater
3999dda5a5 newcopyrights 2010-06-09 23:31:44 +00:00
Automatic Updater
1c75aa99a1 update 2010-06-09 13:35:03 +00:00
Automatic Updater
02bd4cd4b4 missing @ 2010-06-09 13:24:41 +00:00
Automatic Updater
07510d963a update 2010-06-09 09:16:52 +00:00
Mark Andrews
8b99611ece missing @ 2010-06-09 09:02:31 +00:00
Automatic Updater
3703129570 update 2010-06-09 02:21:02 +00:00
Mark Andrews
a5840f0a32 2915. [cleanup] Be smarter about which objects we attempt to compile
based on configure options. [RT #21444]
2010-06-09 01:51:39 +00:00
Automatic Updater
3ca4e5d7e1 update 2010-06-09 00:20:19 +00:00
Automatic Updater
4cff55249c update copyright notice 2010-06-08 23:49:12 +00:00
Automatic Updater
e23b840d9e newcopyrights 2010-06-08 23:31:45 +00:00
Automatic Updater
c733ede7c7 update 2010-06-08 00:19:54 +00:00
Mark Andrews
d80c2f805e update 2010-06-07 23:55:19 +00:00
Automatic Updater
0036997ea6 update 2010-06-07 05:19:18 +00:00
Mark Andrews
55fe737bf7 2914. [bug] Make the "autosign" system test more portable.
[RT #20997]
2010-06-07 04:47:26 +00:00
cvs2git
11d477b0ce This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-06-07 04:45:44 +00:00
Automatic Updater
94e718f9cb update 2010-06-07 04:23:03 +00:00
Mark Andrews
1cc4291e10 2913. [func] Add pkcs#11 system tests. [RT #20784] 2010-06-07 03:45:36 +00:00
cvs2git
98886b12f1 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-06-07 03:42:38 +00:00
Automatic Updater
5b13795dbe update 2010-06-05 00:19:27 +00:00
Automatic Updater
db8dce00b0 update copyright notice 2010-06-04 23:50:01 +00:00
Automatic Updater
23df967ec2 newcopyrights 2010-06-04 23:31:24 +00:00
Automatic Updater
eb19109585 update 2010-06-04 00:19:49 +00:00
Mark Andrews
2b631b5d6f remove trailing comma 2010-06-04 00:14:53 +00:00
Mark Andrews
784332dee8 iterations is -H 2010-06-04 00:04:09 +00:00
Automatic Updater
4a885f26a0 update copyright notice 2010-06-03 23:49:23 +00:00
Automatic Updater
3056f9d0d5 newcopyrights 2010-06-03 23:31:32 +00:00
Automatic Updater
2ef4d30f72 update 2010-06-03 22:18:00 +00:00
Mark Andrews
6894f7e981 specify NSEC3 iterations 2010-06-03 21:42:38 +00:00
Automatic Updater
d018916728 update 2010-06-03 14:00:53 +00:00
Mark Andrews
02d7775718 add -lkrb5 2010-06-03 13:28:35 +00:00
Automatic Updater
be0f31ad9f update 2010-06-03 06:35:12 +00:00
Mark Andrews
61ccf5b46b 2911. [bug] dnssec-signzone didn't handle out of zone records well.
[RT #21367]
2010-06-03 06:31:42 +00:00
cvs2git
44cab72e7e This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-06-03 06:29:06 +00:00
Automatic Updater
07b05ade91 update 2010-06-03 06:17:36 +00:00
Mark Andrews
3b239c7b3b 2912. [func] Windows clients don't like UPDATE responses that clear
the zone section. [RT #20986]
2010-06-03 05:27:59 +00:00
Automatic Updater
0c1a5f0a1a update 2010-06-03 04:22:37 +00:00
Mark Andrews
bd2b0c9ae5 add kerberosv5/krb5.h to search list 2010-06-03 03:57:24 +00:00
Mark Andrews
b42093b971 2911. [bug] dnssec-signzone didn't handle out of zone records well.
[RT #21367]
2010-06-03 03:32:25 +00:00
Automatic Updater
6146308cc3 update 2010-06-03 03:21:11 +00:00
Mark Andrews
838ae5b351 2910. [func] Sanity check Kerberos credentials. [RT #20986] 2010-06-03 02:33:48 +00:00
Automatic Updater
6404ecd08d update 2010-06-02 02:22:00 +00:00
Automatic Updater
82404f5aef update copyright notice 2010-06-02 01:27:20 +00:00
Automatic Updater
cf6c9f9005 update 2010-06-02 01:22:22 +00:00
Mark Andrews
8302431386 9.7.1rc1 re-tag 2010-06-02 01:19:10 +00:00
Mark Andrews
a4003c3c4b named-checkzone -> named-checkconf 2010-06-02 01:14:58 +00:00
Automatic Updater
a2cb929b48 newcopyrights 2010-06-02 01:12:53 +00:00
Mark Andrews
a2c8607929 2909. [bug] named-checkzone -p could die if "update-policy local;"
was specified in named.conf. [RT #21416]
2010-06-02 01:10:06 +00:00
Mark Andrews
8e187acb28 2908. [bug] It was possible for re-signing to stop after removing
a DNSKEY. [RT #21384]
2010-06-02 01:00:28 +00:00
Mark Andrews
db3ae6b658 2907. [bug] The export version of libdns had undefined references.
[RT #21444]
2010-06-02 00:41:34 +00:00
Automatic Updater
9db86b94c3 update 2010-06-01 03:28:46 +00:00
Automatic Updater
789515c1d0 9.7.1rc1 2010-06-01 03:14:30 +00:00
Automatic Updater
7a01ff0136 update 2010-06-01 01:16:32 +00:00
Mark Andrews
5b02faec3c 9.7.1rc1 2010-06-01 01:02:33 +00:00
Automatic Updater
68d79f2a0f update 2010-05-28 04:22:38 +00:00
Mark Andrews
e68aa47d4c 2906. [bug] Address RFC 5011 implementation issues. [RT #20903] 2010-05-28 03:18:52 +00:00
Automatic Updater
269a35ff01 update 2010-05-28 00:19:59 +00:00
Automatic Updater
0329504246 update copyright notice 2010-05-27 23:49:55 +00:00
Automatic Updater
0f82d123cf newcopyrights 2010-05-27 23:31:09 +00:00
Automatic Updater
6875da69bb update 2010-05-27 04:22:37 +00:00
Mark Andrews
5cb766e596 line length 2010-05-27 03:27:35 +00:00
Automatic Updater
e5d6b3ba09 update 2010-05-27 00:19:45 +00:00
Automatic Updater
b8612502e2 update copyright notice 2010-05-26 23:49:35 +00:00
Mark Andrews
6420e53c12 2905. [port] aix: set use_atomic=yes with native compiler.
[RT #21402]
2010-05-26 23:47:44 +00:00
Mark Andrews
810048c754 ./bin/tests/system/dlv/ns6/hints 2010-05-26 23:36:59 +00:00
Automatic Updater
57cb4281fa update 2010-05-26 07:16:47 +00:00
Mark Andrews
491d1d3463 call sign.sh robustly 2010-05-26 07:00:01 +00:00
Mark Andrews
d544482827 2904. [bug] When using DLV, sub-zones of the zones in the DLV,
could be incorrectly marked as insecure instead of
                        secure leading to negative proofs failing.  This was
                        a unintended outcome from change 2890. [RT# 21392]
2010-05-26 06:30:43 +00:00
cvs2git
00f7383ab0 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-05-26 06:28:02 +00:00
Automatic Updater
2d0accdb56 update 2010-05-22 03:20:34 +00:00
Automatic Updater
637427aed9 regen v9_7 2010-05-22 02:42:20 +00:00
Automatic Updater
3fea8ab161 update 2010-05-21 14:16:44 +00:00
Mark Andrews
43641877ac 2903. [bug] managed-keys-directory missing from namedconf.c.
[RT #21370]
2010-05-21 14:13:48 +00:00
Automatic Updater
0d013d4f2e update 2010-05-21 02:20:05 +00:00
Mark Andrews
d2761fe281 new logos 2010-05-21 02:13:37 +00:00
Automatic Updater
3cbd3a3f36 update 2010-05-19 10:20:07 +00:00
Mark Andrews
c4700949e7 silence compiler, explict coversion 2010-05-19 09:51:31 +00:00
Automatic Updater
8b96e18c96 update copyright notice 2010-05-19 09:32:36 +00:00
Automatic Updater
0dc9c323d2 newcopyrights 2010-05-19 09:27:10 +00:00
Automatic Updater
2aec4cb735 update 2010-05-19 08:19:36 +00:00
Mark Andrews
2e023d9a29 2902. [func] Add regression test for change 2897. [RT #21040] 2010-05-19 07:47:11 +00:00
cvs2git
63fe01ab22 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-05-19 07:45:39 +00:00
Automatic Updater
37eeb883b6 update 2010-05-19 07:17:13 +00:00
Mark Andrews
40be22dada 2901. [port] Use AC_C_FLEXIBLE_ARRAY_MEMBER. [RT #21316] 2010-05-19 07:13:53 +00:00
Mark Andrews
756f9eb63a 2900. [bug] The placeholder negative caching element was not
properly constructed triggering a INSIST in
                        dns_ncache_towire(). [RT #21346]
2010-05-19 06:41:05 +00:00
Automatic Updater
3bb935c499 update 2010-05-18 07:19:06 +00:00
Automatic Updater
3b56f0f090 update copyright notice 2010-05-18 06:47:00 +00:00
Automatic Updater
da00b95e55 newcopyrights 2010-05-18 06:42:19 +00:00
Mark Andrews
bf80fd4841 silence compile warnings, explict conversion 2010-05-18 06:29:32 +00:00
Mark Andrews
facf31bace wrong rdataset disassociated. reviewed by each 2010-05-18 06:24:27 +00:00
Automatic Updater
e9d613fa9d update 2010-05-18 06:19:46 +00:00
Mark Andrews
8438d8e0b4 9.7.1b1 2010-05-18 06:16:05 +00:00
Mark Andrews
eaf0bd1fd7 2899. [port] win32: Support linking against OpenSSL 1.0.0 2010-05-18 06:11:58 +00:00
Automatic Updater
1d32fae40d update 2010-05-18 05:20:15 +00:00
Automatic Updater
3f12adb3f0 9.7.1b1 2010-05-18 04:43:02 +00:00
Automatic Updater
400b8856c9 update 2010-05-18 04:19:17 +00:00
Automatic Updater
7fad6b61d2 regen v9_7 2010-05-18 04:04:36 +00:00
Mark Andrews
a64f7707cc mark docbook inheritance 2010-05-18 03:27:35 +00:00
Automatic Updater
1edd0adfcc update 2010-05-18 03:24:27 +00:00
Automatic Updater
37db859ba3 newcopyrights 2010-05-18 03:14:14 +00:00
Automatic Updater
1bf082f6da 9.7.1b1 2010-05-18 03:10:40 +00:00
Automatic Updater
1af8f0c951 regen v9_7 2010-05-18 02:41:37 +00:00
Automatic Updater
e08a20aa98 update copyright notice 2010-05-18 02:35:12 +00:00
Mark Andrews
0f51e50b08 9.7.1b1 2010-05-18 02:29:00 +00:00
Automatic Updater
6be22e19ef newcopyrights 2010-05-18 02:24:10 +00:00
Automatic Updater
11bbddd195 update 2010-05-18 02:20:29 +00:00
Mark Andrews
c687d21e23 9.7.1b1 2010-05-18 02:12:30 +00:00
Mark Andrews
721c4a65f3 2898. [bug] nslookup leaked memory when -domain=value was
specified. [RT #21301]
2010-05-18 01:49:55 +00:00
Mark Andrews
0517d21ebd 2897. [bug] NSEC3 chains could be left behind when transitioning
to insecure. [RT #21040]
2010-05-18 01:40:35 +00:00
Automatic Updater
507aef0c77 update 2010-05-18 01:16:39 +00:00
Mark Andrews
78f9a0a2b8 2896. [bug] "rndc sign" failed to properly update the zone
when adding a DNSKEY for publication only. [RT #21045]
2010-05-18 01:04:26 +00:00
Mark Andrews
777d3c3963 silence compiler warning 2010-05-18 00:29:31 +00:00
Automatic Updater
9abc3592ad update 2010-05-18 00:18:46 +00:00
Automatic Updater
ee980f5002 update copyright notice 2010-05-17 23:49:51 +00:00
Automatic Updater
53835b8fd8 newcopyrights 2010-05-17 23:31:03 +00:00
Automatic Updater
6285ade4fb update 2010-05-17 06:21:40 +00:00
Mark Andrews
c385687ce6 #include <isc/print.h> 2010-05-17 05:31:08 +00:00
Automatic Updater
6e3cd11729 update 2010-05-17 05:17:06 +00:00
Mark Andrews
e6bc9ed3b0 2895. [func] genrandom: add support for the generation of multiple
files.  [RT #20917]
2010-05-17 04:40:10 +00:00
Automatic Updater
a1bfc38679 update 2010-05-15 03:34:04 +00:00
Automatic Updater
fa3174b8f1 regen v9_7 2010-05-15 02:42:00 +00:00
Automatic Updater
b4159c080b update 2010-05-15 00:20:05 +00:00
Automatic Updater
71324ae046 update copyright notice 2010-05-14 23:49:21 +00:00
Automatic Updater
4d4be2e895 newcopyrights 2010-05-14 23:31:31 +00:00
Automatic Updater
9f91506fed update 2010-05-14 07:18:10 +00:00
Mark Andrews
61215a0d76 2894. [contrib] DLZ LDAP support now use '$' not '%'. [RT #21294] 2010-05-14 06:31:35 +00:00
Automatic Updater
8fe68ee01c update 2010-05-14 05:17:02 +00:00
Mark Andrews
812b6d8d11 2893. [bug] Improve managed keys support. New named.conf option
managed-keys-directory. [RT #20924]
2010-05-14 04:49:40 +00:00
Mark Andrews
d133eb632a 2892. [bug] Handle REVOKED keys better. [RT #20961] 2010-05-14 04:41:12 +00:00
Automatic Updater
286bbb3ca4 update 2010-05-14 04:21:28 +00:00
Mark Andrews
b756b7d22f 2891. [maint] Update empty-zones list to match
draft-ietf-dnsop-default-local-zones-13. [RT# 21099]
2010-05-14 03:32:11 +00:00
Automatic Updater
db2113fd6b update 2010-05-14 03:20:46 +00:00
Automatic Updater
e6e37613eb regen v9_7 2010-05-14 02:41:23 +00:00
Automatic Updater
78f8d31dc6 update 2010-05-14 01:16:31 +00:00
Automatic Updater
4deef8a463 update 2010-05-14 00:20:40 +00:00
Mark Andrews
0463ffd804 2890. [bug] Handle the introduction of new trusted-keys and
DS, DLV RRsets better. [RT #21097]
2010-05-14 00:16:32 +00:00
Automatic Updater
5a77c5e18e update copyright notice 2010-05-13 23:49:11 +00:00
Automatic Updater
928ec8b49a newcopyrights 2010-05-13 23:31:49 +00:00
Automatic Updater
06da8b9b9a update 2010-05-13 04:30:21 +00:00
Automatic Updater
84108b14a2 update 2010-05-13 03:21:33 +00:00
Mark Andrews
bd72d2c9fc 2889. [bug] Elements of the grammar where not properly reported.
[RT #21046]
2010-05-13 03:18:55 +00:00
Mark Andrews
8d5279c34e typo in threaded build, silence compiler warning 2010-05-13 03:09:56 +00:00
Automatic Updater
2dbcecfaaa update 2010-05-13 01:16:45 +00:00
Mark Andrews
f93222ee85 2888. [bug] Only the first EDNS option was displayed. [RT #21273] 2010-05-13 00:42:26 +00:00
Automatic Updater
064dac4abe update 2010-05-13 00:19:48 +00:00
Mark Andrews
92a7fc7c7c 2887. [bug] Report the keytag times in UTC in the .key file,
local time is presented as a comment within the
                        comment.  [RT #21223]

2886.   [bug]           ctime() is not thread safe. [RT #21223]
2010-05-12 23:53:33 +00:00
Automatic Updater
7625198d01 update copyright notice 2010-05-12 23:50:01 +00:00
Automatic Updater
c466590f32 newcopyrights 2010-05-12 23:31:14 +00:00
Automatic Updater
3fc5a9f930 update 2010-05-12 09:42:06 +00:00
Mark Andrews
711d4218c4 2885. [bug] Improve -fno-strict-aliasing support probing in
configure. [RT #21080]
2010-05-12 08:25:52 +00:00
Automatic Updater
6c0e2269be update 2010-05-12 06:20:10 +00:00
Mark Andrews
fe3db97ee9 2884. [bug] Insufficient valadation in dns_name_getlabelsequence().
[RT #21283]
2010-05-12 05:44:01 +00:00
Automatic Updater
30165893f7 update 2010-05-12 03:20:59 +00:00
Mark Andrews
8f295da232 logo updates 2010-05-12 03:03:45 +00:00
Automatic Updater
d9025d3f48 update 2010-05-12 02:32:27 +00:00
Mark Andrews
a6d76b4886 2883. [bug] 'dig +short' failed to handle really large datasets.
[RT #21113]
2010-05-12 01:34:45 +00:00
Automatic Updater
0391c5c44f update 2010-05-12 01:16:39 +00:00
Mark Andrews
bb828e2c51 2882. [bug] Remove memory context from list of active contexts
before clearing 'magic'. [RT #21274]
2010-05-12 00:49:31 +00:00
Automatic Updater
2cb4e94838 update 2010-05-11 00:20:46 +00:00
Automatic Updater
efc6a99370 update copyright notice 2010-05-10 23:49:42 +00:00
Automatic Updater
d3d4428652 newcopyrights 2010-05-10 23:31:12 +00:00
Automatic Updater
056f9c917a update 2010-05-10 02:18:20 +00:00
Mark Andrews
d779f5e15d 2881. [bug] Reduce the amount of time the rbtdb write lock
is held when closing a version. [RT #21198]
2010-05-10 01:41:11 +00:00
Automatic Updater
8ba4364153 update 2010-05-07 00:19:47 +00:00
Automatic Updater
435add4fdd update copyright notice 2010-05-06 23:49:37 +00:00
Automatic Updater
6b2090a39f newcopyrights 2010-05-06 23:31:06 +00:00
Automatic Updater
5faf500982 update 2010-05-06 12:16:27 +00:00
Mark Andrews
a3eae83762 handle revoke changes 2010-05-06 11:27:38 +00:00
Automatic Updater
3fd5ddfd6a update 2010-05-06 06:19:59 +00:00
Mark Andrews
1c21efedfe 2880. [cleanup] Make the output of dnssec-keygen and dnssec-revoke
consistent. [RT #21078]
2010-05-06 05:32:56 +00:00
Automatic Updater
09eff142e8 update 2010-05-06 00:19:48 +00:00
Automatic Updater
ea069464d5 newcopyrights 2010-05-05 23:31:30 +00:00
Automatic Updater
2b76d22baf update 2010-05-05 13:17:05 +00:00
Mark Andrews
a5796bf961 2879. [contrib] DLZ bdbhpt driver fails to close correct cursor.
[RT #21106]
2010-05-05 12:41:23 +00:00
Automatic Updater
b780afe5f7 update 2010-04-29 00:19:33 +00:00
Automatic Updater
70e94a99a6 update copyright notice 2010-04-28 23:49:34 +00:00
Automatic Updater
5d43557478 update 2010-04-28 11:16:33 +00:00
Mark Andrews
01206bd597 2878. [func] Incrementally write the master file after performing
a AXFR.  [RT #21010]
(part 2)
2010-04-28 11:03:45 +00:00
Automatic Updater
0958becf7e update 2010-04-27 04:20:43 +00:00
Mark Andrews
ed840b1045 2878. [func] Incrementally write the master file after performing
a AXFR.  [RT #21010]
2010-04-27 03:26:34 +00:00
Automatic Updater
9100c2db3b update 2010-04-22 00:19:18 +00:00
Automatic Updater
63412b419b update copyright notice 2010-04-21 23:50:05 +00:00
Automatic Updater
3f95fa336e newcopyrights 2010-04-21 23:31:14 +00:00
Automatic Updater
ebc813c9cf update 2010-04-21 06:17:32 +00:00
Mark Andrews
05addc4e62 2877. [bug] The validator failed to skip obviously mismatching
RRSIGs. [RT #21138]
2010-04-21 05:47:29 +00:00
Automatic Updater
cf4f3cbdaa update 2010-04-21 05:17:46 +00:00
Mark Andrews
7005c5aa84 2876. [bug] Named could return SERVFAIL for negative responses
from unsigned zones. [RT #21131]
2010-04-21 04:20:22 +00:00
Automatic Updater
70c8087f2d update 2010-04-21 03:21:47 +00:00
Automatic Updater
428539b1c9 sync 2010-04-21 02:28:38 +00:00
Mark Andrews
7b63825d03 2875. [bug] dns_time64_fromtext() could accept non digits.
[RT #21033]
2010-04-21 02:22:46 +00:00
cvs2git
414302b95c This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-04-21 00:43:03 +00:00
Automatic Updater
421abc0d01 update 2010-04-21 00:20:37 +00:00
Automatic Updater
03d50bfec1 update copyright notice 2010-04-20 23:49:58 +00:00
Automatic Updater
3b1372a22b update 2010-04-20 08:19:19 +00:00
Mark Andrews
e104ca4071 2874. [bug] Cache lack of EDNS support only after the server
successfully responds to the query using plain DNS.
                        [RT #20930]
2010-04-20 07:32:51 +00:00
Automatic Updater
58394f5b6f update 2010-04-14 22:16:17 +00:00
Tatuya JINMEI 神明達哉
bc4ffe7eaf 2873. [bug] Canceling a dynamic update via the dns/client module
could trigger an assertion failure. [RT #21133]

9.8.0 and 9.7.1
2010-04-14 22:10:04 +00:00
Automatic Updater
16fb327e1b update 2010-04-14 00:18:54 +00:00
Automatic Updater
4bb846d522 update copyright notice 2010-04-13 23:49:44 +00:00
Automatic Updater
253087fcaa newcopyrights 2010-04-13 23:31:13 +00:00
Automatic Updater
247488ff07 update 2010-04-13 20:16:30 +00:00
Shawn Routhier
ef4f584745 Modify dns/client.c:dns_clinet_createx() to only require one of IPv4 or
IPv6 rather than both.  [RT #21122]
2010-04-13 19:15:56 +00:00
Automatic Updater
80ef7645ff update 2010-04-10 03:20:13 +00:00
Automatic Updater
fadff54087 sync 2010-04-10 02:37:15 +00:00
Automatic Updater
aff1c988a4 update 2010-04-10 00:19:13 +00:00
Automatic Updater
6d30079412 update copyright notice 2010-04-09 23:49:48 +00:00
Automatic Updater
c6704835aa newcopyrights 2010-04-09 23:31:04 +00:00
Automatic Updater
55b4b92b8f update 2010-04-09 07:27:39 +00:00
Tatuya JINMEI 神明達哉
1b4ca70d35 2871. [bug] Type mismatch in mem_api.c between the definition and
the header file, causing build failure with
			--enable-exportlib. [RT #21138]

9.8.0 and 9.7.1.
2010-04-09 06:20:35 +00:00
cvs2git
4a9cce26cd This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-04-09 02:07:36 +00:00
Automatic Updater
3e0c546e3b update 2010-04-08 00:20:26 +00:00
Automatic Updater
85465e7616 update copyright notice 2010-04-07 23:49:51 +00:00
Automatic Updater
1b47e4478f newcopyrights 2010-04-07 23:31:19 +00:00
Automatic Updater
8b0294d5fe update 2010-04-07 07:27:21 +00:00
Mark Andrews
c449fbf343 s/addresses/address/ 2010-04-07 07:12:29 +00:00
Mark Andrews
c89c2619cb 2870. [maint] Add AAAA addresses for L.ROOT-SERVERS.NET. 2010-04-07 07:08:52 +00:00
Automatic Updater
f952eb45cc update 2010-04-02 03:20:29 +00:00
Automatic Updater
ee034830da sync 2010-04-02 02:28:41 +00:00
cvs2git
91bcd9e3a0 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-04-01 13:32:36 +00:00
Automatic Updater
1b9ebde1c3 update 2010-04-01 03:20:56 +00:00
Automatic Updater
e9e30a8196 sync 2010-04-01 02:29:00 +00:00
cvs2git
666abd5c09 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-03-31 04:12:26 +00:00
Automatic Updater
cf582b8729 update 2010-03-27 03:20:30 +00:00
Automatic Updater
54d78b4325 sync 2010-03-27 02:29:10 +00:00
Automatic Updater
2e790f9762 update 2010-03-26 18:17:05 +00:00
Mark Andrews
314b6614cb 2869. [bug] Fix arguments to dns_keytable_findnextkeynode() call.
[RT #20877]
2010-03-26 17:18:05 +00:00
cvs2git
54bfb51dd8 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-03-26 16:35:13 +00:00
Automatic Updater
51ed1b13d3 update 2010-03-26 03:20:21 +00:00
Automatic Updater
efc9a1d6db sync 2010-03-26 02:29:10 +00:00
cvs2git
d5c454aff6 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-03-25 21:48:17 +00:00
Automatic Updater
c2014ab592 update 2010-03-24 03:20:25 +00:00
Automatic Updater
bde4e0e663 sync 2010-03-24 02:33:05 +00:00
cvs2git
62e9bef633 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-03-23 08:13:48 +00:00
Automatic Updater
2e908bf62a update 2010-03-19 00:20:08 +00:00
Automatic Updater
b0f519e7a8 update copyright notice 2010-03-18 23:49:49 +00:00
Automatic Updater
106ff8cce0 newcopyrights 2010-03-18 23:31:28 +00:00
Automatic Updater
80db127967 update 2010-03-18 14:16:54 +00:00
Mark Andrews
f666841997 regen 2010-03-18 13:32:35 +00:00
Mark Andrews
533d473b7d 2868. [cleanup] Run "make clean" at the end of configure to ensure
any changes made by configure are integrated.
                        Use --with-make-clean=no to disable.  [RT #20994]
2010-03-18 13:32:16 +00:00
Automatic Updater
0e52c6229b update 2010-03-17 03:20:19 +00:00
Automatic Updater
2ec7565474 sync 2010-03-17 02:28:21 +00:00
cvs2git
5f17ed0d9b This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-03-16 01:09:26 +00:00
Automatic Updater
b2f0fad78f update 2010-03-13 00:19:22 +00:00
Automatic Updater
3fe2c091cc update copyright notice 2010-03-12 23:49:56 +00:00
Automatic Updater
acdcd2b694 newcopyrights 2010-03-12 23:31:08 +00:00
Automatic Updater
3e48ba0dbc update 2010-03-12 04:20:04 +00:00
Mark Andrews
7f3d57dda8 2867. [bug] Don't set GSS_C_SEQUENCE_FLAG as Windows DNS servers
don't like it.  [RT #20986]
2010-03-12 03:49:19 +00:00
Mark Andrews
c08a0ebc07 2866. [bug] Windows does not like the TSIG name being compressed.
[RT #20986]
2010-03-12 03:37:20 +00:00
Mark Andrews
0ee3a9dadd 2865. [bug] memset to zero event.data. [RT #20986] 2010-03-12 03:25:20 +00:00
Automatic Updater
4be2f76938 update 2010-03-12 02:18:53 +00:00
Mark Andrews
02d3754d1e 2864. [bug] Direct SIG/RRSIG queries were not handled correctly.
[RT #21050]
2010-03-12 02:00:58 +00:00
Automatic Updater
659826ba3e update 2010-03-11 05:17:27 +00:00
Mark Andrews
e6ab0dd2ca 2863. [port] linux: disable IPv6 PMTUD and use network minimum MTU.
[RT #21056]
2010-03-11 04:45:10 +00:00
Automatic Updater
f6e4558074 update 2010-03-10 03:20:54 +00:00
Automatic Updater
7b2366db70 regen v9_7 2010-03-10 02:41:46 +00:00
Mark Andrews
9c511a0dc7 cast isc_buffer_usedlength() to (int) 2010-03-10 02:19:08 +00:00
Automatic Updater
f383f03df7 update 2010-03-10 00:19:11 +00:00
Automatic Updater
239618e700 update copyright notice 2010-03-09 23:49:56 +00:00
Automatic Updater
2f884b27c2 newcopyrights 2010-03-09 23:31:16 +00:00
Automatic Updater
247daab1a7 update 2010-03-09 04:20:01 +00:00
Mark Andrews
d938014328 2862. [bug] nsupdate didn't default to the parent zone when
updating DS records. [RT #20896]
2010-03-09 03:47:21 +00:00
Mark Andrews
261995c57e 2861. [doc] dnssec-settime man pages didn't correctly document the
inactivation time. [RT #21039]

2860.   [bug]           named-checkconf's usage was out of date. [RT #21039]
2010-03-09 03:40:01 +00:00
Automatic Updater
7bf3739b88 update 2010-03-09 03:33:08 +00:00
Automatic Updater
f4d60f891f sync 2010-03-09 02:29:19 +00:00
cvs2git
b0e6be3355 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-03-08 22:17:09 +00:00
Automatic Updater
99da34a4bf update 2010-03-06 06:26:53 +00:00
Mark Andrews
ba4f254aa9 spelling 2010-03-06 05:34:02 +00:00
Mark Andrews
cec94b0eeb change numbers 2010-03-06 05:28:10 +00:00
Automatic Updater
da32ac49ce update 2010-03-05 04:20:19 +00:00
Mark Andrews
3942243c5d change numbers 2010-03-05 03:40:06 +00:00
Automatic Updater
44012dd60d update 2010-03-05 00:20:23 +00:00
Automatic Updater
f51de9fb15 update copyright notice 2010-03-04 23:49:20 +00:00
Automatic Updater
2351787aa6 newcopyrights 2010-03-04 23:31:36 +00:00
Automatic Updater
8d90748586 update 2010-03-04 23:17:17 +00:00
Mark Andrews
40b08512c4 2958. [bug] When canceling validation it was possible to leak
memory. [RT #20800]
2010-03-04 22:28:40 +00:00
Automatic Updater
71d4ae3fd0 update 2010-03-04 21:17:07 +00:00
Mark Andrews
bc12bc0a1f 10.53.0.1 through 10.53.0.5 -> 10.53.0.1 through 10.53.0.7 2010-03-04 20:32:54 +00:00
Automatic Updater
850e3057ed update 2010-03-04 07:17:10 +00:00
Mark Andrews
a3c95f281a 2957. [bug] RTT estimates were not being adjusted on ICMP errors.
[RT #20772]
2010-03-04 06:48:31 +00:00
Automatic Updater
bf54a8b514 update 2010-03-04 06:20:36 +00:00
Mark Andrews
2473968416 2956. [bug] named-checkconf did not fail on a bad trusted key.
[RT #20705]
2010-03-04 06:19:33 +00:00
Mark Andrews
f7033a3346 2955. [bug] The size of a memory allocation was not always properly
recorded. [RT #20927]
2010-03-04 05:48:50 +00:00
Mark Andrews
41094cee0b 2955. [bug] The size of a memory allocation was not always properly
recorded. [RT #20927]
2010-03-04 05:31:22 +00:00
Automatic Updater
0f2d3b866b update 2010-03-03 22:22:09 +00:00
Automatic Updater
2b7197054f newcopyrights 2010-03-03 22:14:05 +00:00
Automatic Updater
ad0a222ec0 update 2010-03-03 07:17:00 +00:00
Mark Andrews
6e08e9d982 dns_rdataset_expire/dns_rdataset_settrust 2010-03-03 06:57:06 +00:00
Automatic Updater
02e9bb7bf8 update 2010-03-03 05:17:37 +00:00
Mark Andrews
69c3b7fd9d dns_resolver_*badcache 2010-03-03 04:56:20 +00:00
Automatic Updater
d7f6bf262e update 2010-03-01 02:18:59 +00:00
Automatic Updater
bea427cebd sync 2010-03-01 02:18:08 +00:00
cvs2git
9e057920ce This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-02-28 23:44:04 +00:00
Automatic Updater
7a671773f2 update 2010-02-27 03:20:46 +00:00
Automatic Updater
87d4ee6113 update 2010-02-27 02:19:15 +00:00
Automatic Updater
e474b9e989 sync 2010-02-27 02:18:13 +00:00
Automatic Updater
01ded85842 update 2010-02-27 00:19:25 +00:00
Automatic Updater
b1416abab6 update copyright notice 2010-02-26 23:49:47 +00:00
Automatic Updater
a179df7937 newcopyrights 2010-02-26 23:31:06 +00:00
cvs2git
71b0add384 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-02-26 02:36:49 +00:00
Automatic Updater
db8b916444 update 2010-02-26 02:20:33 +00:00
Mark Andrews
46ef4ef03a 2853. [bug] add_sigs() could run out of scratch space. [RT #21015] 2010-02-26 01:50:39 +00:00
Automatic Updater
d1f2b629d4 update 2010-02-26 01:16:38 +00:00
Mark Andrews
330d764d3b grab a write lock before updating header->trust 2010-02-26 00:23:12 +00:00
Automatic Updater
2cd05e5976 update 2010-02-25 13:16:12 +00:00
Automatic Updater
3cea95052a regen v9_7 2010-02-25 12:30:09 +00:00
Automatic Updater
ac7ef3ec32 update 2010-02-25 06:18:37 +00:00
Automatic Updater
e1bd9f2ed3 update copyright notice 2010-02-25 05:25:53 +00:00
Automatic Updater
2fad51aae1 update 2010-02-25 05:18:40 +00:00
Automatic Updater
9745e31cb8 newcopyrights 2010-02-25 05:13:55 +00:00
Automatic Updater
8ce46dbe07 update copyright notice 2010-02-25 05:06:35 +00:00
Mark Andrews
8a98023414 2852. [bug] Handle broken DNSSEC trust chains better. [RT #15619] 2010-02-25 05:05:09 +00:00
Automatic Updater
507806f969 update 2010-02-25 02:18:57 +00:00
Automatic Updater
8f79637669 sync 2010-02-25 01:56:13 +00:00
Automatic Updater
026483186a update 2010-02-25 00:18:24 +00:00
Automatic Updater
906effb54f newcopyrights 2010-02-24 23:30:34 +00:00
cvs2git
9544bc192d This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-02-24 23:21:08 +00:00
Automatic Updater
23beef88a9 update 2010-02-24 02:17:29 +00:00
Automatic Updater
1c5db966aa sync 2010-02-24 01:55:49 +00:00
Mark Andrews
6ad40b3a85 2850. [bug] If isc_heap_insert() failed due to memory shortage
the heap would have corrupted entries. [RT #20951]
2010-02-24 01:46:55 +00:00
Automatic Updater
b469d5cc62 update 2010-02-23 02:17:01 +00:00
Automatic Updater
aef8f792fb regen v9_7 2010-02-23 02:09:20 +00:00
cvs2git
e8474de3ea This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-02-23 01:32:47 +00:00
Automatic Updater
53ff7d91a8 update 2010-02-23 00:19:09 +00:00
Automatic Updater
77c3728447 update copyright notice 2010-02-22 23:48:29 +00:00
Automatic Updater
aa356e53b8 newcopyrights 2010-02-22 23:30:36 +00:00
Automatic Updater
d956434b59 update 2010-02-22 22:17:15 +00:00
Mark Andrews
9a27cf1e9d 2851. [doc] nslookup.1, removed <informalexample> from the docbook
source as it produced bad nroff.  [RT #21007]
2010-02-22 21:28:07 +00:00
Automatic Updater
b846bbd819 update 2010-02-22 02:17:16 +00:00
Mark Andrews
f7eb6b70fb .NOTPARALLEL/.NO_PARALLEL 2010-02-22 02:08:42 +00:00
Automatic Updater
4c54be504c update 2010-02-20 02:19:19 +00:00
Automatic Updater
b1f36f06ca sync 2010-02-20 01:56:26 +00:00
cvs2git
e49bcccfb1 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-02-19 10:12:48 +00:00
Automatic Updater
d7097d666b update 2010-02-16 20:16:31 +00:00
Evan Hunt
975f01067b update README to include packet-storm known issue 2010-02-16 19:38:42 +00:00
Automatic Updater
92d0305964 update 2010-02-16 02:17:20 +00:00
Automatic Updater
7da62bfb79 sync 2010-02-16 01:56:22 +00:00
cvs2git
e5bc7669fd This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-02-15 22:48:33 +00:00
Automatic Updater
df7774663c update 2010-02-07 02:17:13 +00:00
Automatic Updater
e83e8d39d7 regen v9_7 2010-02-07 02:08:26 +00:00
Automatic Updater
ea5cfc962a update 2010-02-07 00:18:47 +00:00
Automatic Updater
e4d9adbd71 newcopyrights 2010-02-06 23:30:32 +00:00
Automatic Updater
72f771ef45 update 2010-02-06 08:19:32 +00:00
Mark Andrews
a4b427d4c3 copyright notice 2010-02-06 07:42:44 +00:00
Mark Andrews
627987d8ff HISTORY 2010-02-06 07:30:20 +00:00
Automatic Updater
08d64f0387 update 2010-02-06 00:18:34 +00:00
Automatic Updater
13e2c6d8e1 update 2010-02-05 00:19:01 +00:00
Automatic Updater
55690c7b8d update copyright notice 2010-02-04 23:48:30 +00:00
Automatic Updater
d90a737187 update 2010-02-04 23:40:51 +00:00
Evan Hunt
701f97890a copy HISTORY into the windows zip 2010-02-04 23:38:13 +00:00
Evan Hunt
89600e8dd6 Added HISTORY, added pointer to it from README. (Text changes reviewed
by Larissa.)
2010-02-04 23:34:33 +00:00
cvs2git
e690855bc3 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-02-04 23:34:06 +00:00
Automatic Updater
fecec879a7 newcopyrights 2010-02-04 23:30:37 +00:00
Automatic Updater
8a29ed59df update 2010-02-04 06:35:19 +00:00
Evan Hunt
da45568ba3 Updated for 9.7.0 release. Removed references to README.* files, now
included in ARM.  Added "known issues" section.  Removed historical feature
lists for 9.2.0 through 9.6.0, in the interests of making the overall file
shorter and more directly useful.
2010-02-04 06:32:34 +00:00
Automatic Updater
fc819d0bd9 update 2010-02-04 06:20:29 +00:00
Evan Hunt
63f9161f72 prepare for 9.7.0 release 2010-02-04 05:19:29 +00:00
Automatic Updater
734033a05f regen v9_7 2010-02-04 05:15:18 +00:00
Automatic Updater
157ef67688 update 2010-02-04 02:18:36 +00:00
Automatic Updater
6a2827695a regen 2010-02-04 02:08:20 +00:00
Automatic Updater
9ade382800 update 2010-02-04 01:16:27 +00:00
Mark Andrews
7d47e3d387 2849. [bug] Don't treat errors from the xml2 library as fatal.
[RT #20945]
2010-02-04 01:07:32 +00:00
Automatic Updater
8b061d7ed2 update 2010-02-04 00:18:23 +00:00
Automatic Updater
91bb55c45d update copyright notice 2010-02-03 23:48:29 +00:00
Automatic Updater
aa52ab8208 newcopyrights 2010-02-03 23:30:34 +00:00
Automatic Updater
f4e0a6b968 update 2010-02-03 02:17:17 +00:00
Automatic Updater
85166e0140 regen 2010-02-03 02:08:11 +00:00
Evan Hunt
02973df5f2 2848. [doc] Moved README.dnssec, README.libdns, README.pkcs11 and
README.rfc5011 into the ARM. [RT #20899]
2010-02-03 01:32:44 +00:00
cvs2git
17b58ef7ea This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-02-03 01:31:50 +00:00
Automatic Updater
d0fd036e37 update 2010-02-03 01:16:40 +00:00
Evan Hunt
46b40010ae 2847. [cleanup] Corrected usage message in dnssec-settime. [RT #20921] 2010-02-03 01:02:17 +00:00
Automatic Updater
63328d4091 update 2010-02-01 00:18:56 +00:00
Automatic Updater
36f7ffd0c9 update copyright notice 2010-01-31 23:48:29 +00:00
Automatic Updater
36b044f81e newcopyrights 2010-01-31 23:30:37 +00:00
Mark Andrews
5968779f4b 2846. [bug] EOF on unix domain sockets was not being handled
correctly. [RT #20731]
2010-01-31 23:23:10 +00:00
Automatic Updater
41866eed87 update 2010-01-27 20:16:34 +00:00
Evan Hunt
63171ebb07 clarified message 2010-01-27 19:19:38 +00:00
Automatic Updater
a56df93f31 update 2010-01-27 00:19:04 +00:00
Francis Dupont
875be659a1 RFC 5011 client can crash. [RT #20903] 2010-01-26 23:35:22 +00:00
Automatic Updater
6c2b739c53 update 2010-01-23 02:18:41 +00:00
Automatic Updater
5201210bae regen 2010-01-23 02:07:50 +00:00
Automatic Updater
6467699ca4 update 2010-01-23 01:16:46 +00:00
Mark Andrews
6fb11c619a restore release marker 2010-01-23 00:43:09 +00:00
Mark Andrews
133d92da58 2844. [doc] notify-delay default in ARM was wrong. It should have
been five (5) seconds.
2010-01-23 00:41:51 +00:00
Automatic Updater
285891821e update 2010-01-22 13:16:31 +00:00
Francis Dupont
78b50680bf sync 2010-01-22 12:56:31 +00:00
Automatic Updater
26fdab9f62 update 2010-01-22 02:28:52 +00:00
Automatic Updater
555cb2023e sync 2010-01-22 01:55:40 +00:00
Evan Hunt
2c359c823a fix typo 2010-01-22 01:46:43 +00:00
Evan Hunt
03204fe981 remove reference to isc_time member "seconds", which doesn't exist in win32 2010-01-22 01:35:06 +00:00
Automatic Updater
06d6d609e9 update 2010-01-22 01:00:36 +00:00
Evan Hunt
fd27016277 update 2010-01-22 00:58:25 +00:00
cvs2git
3bb5ec2ec4 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-01-22 00:54:59 +00:00
Evan Hunt
70a4034545 rename "ischmacfix" files to "ischmacfixup" so win32 build will work 2010-01-22 00:54:20 +00:00
Automatic Updater
6f6ce3e15e update 2010-01-22 00:18:42 +00:00
Automatic Updater
9461949887 newcopyrights 2010-01-21 23:30:31 +00:00
Automatic Updater
a2abfeec45 update 2010-01-21 22:26:31 +00:00
Automatic Updater
b0bff0ec59 regen 2010-01-21 22:24:08 +00:00
Automatic Updater
e741e91a38 update 2010-01-21 22:16:39 +00:00
Automatic Updater
857e0c56a1 sync 2010-01-21 21:27:15 +00:00
Evan Hunt
f4128a2bc4 prep for 9.7.0rc2 release 2010-01-21 21:26:06 +00:00
Evan Hunt
898d4a8c50 one more compatibility note 2010-01-21 21:23:56 +00:00
Automatic Updater
fb50cc51e2 update 2010-01-21 21:16:04 +00:00
Evan Hunt
f309806149 Added new compatibility notes and information about key ID collisions. 2010-01-21 21:11:27 +00:00
Automatic Updater
b5a1dfc657 update 2010-01-21 11:17:05 +00:00
Francis Dupont
113b6fd437 update 2010-01-21 10:53:51 +00:00
cvs2git
0b42f0597f This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-01-21 10:52:35 +00:00
Automatic Updater
d8cad7eb9c update 2010-01-21 00:18:59 +00:00
Automatic Updater
ba2ed45376 update copyright notice 2010-01-20 23:48:18 +00:00
Automatic Updater
4b1444ac27 newcopyrights 2010-01-20 23:30:42 +00:00
Automatic Updater
c46039e461 update 2010-01-20 02:28:56 +00:00
Automatic Updater
451cd3395a regen 2010-01-20 02:08:51 +00:00
Automatic Updater
c8baa76ab6 sync 2010-01-20 01:56:15 +00:00
Automatic Updater
375cb82aa0 update 2010-01-20 00:18:37 +00:00
Automatic Updater
3c7ee580d8 update copyright notice 2010-01-19 23:48:13 +00:00
Automatic Updater
85048189fc newcopyrights 2010-01-19 23:30:29 +00:00
Automatic Updater
64bd53e675 update 2010-01-19 21:16:40 +00:00
Evan Hunt
5cd5eceba0 2842. [func] Prevent dnssec-keygen and dnssec-keyfromlabel from
creating key files if there is a chance that the new
			key ID will collide with an existing one after
			either of the keys has been revoked.  (To override
			this in the case of dnssec-keyfromlabel, use the -y
			option.  dnssec-keygen will simply create a
			different, noncolliding key, so an override is
			not necessary.) [RT #20838]
2010-01-19 20:25:49 +00:00
Automatic Updater
cf4e5a73a5 update 2010-01-19 16:16:34 +00:00
Evan Hunt
76c48ffb86 smartsign fails on slow machines. delay the timing-sensitive
dnssec-settime call as long as possible.
2010-01-19 15:55:44 +00:00
cvs2git
00e6819f3a This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-01-19 03:17:47 +00:00
Automatic Updater
b54b7ef659 update 2010-01-19 00:18:43 +00:00
Automatic Updater
d1a69b8e99 update copyright notice 2010-01-18 23:48:01 +00:00
Automatic Updater
79070290f1 newcopyrights 2010-01-18 23:30:45 +00:00
Automatic Updater
9a5123bdfe update 2010-01-18 20:16:29 +00:00
Evan Hunt
7c6fa1d589 2841. [func] Added "smartsign" and improved "autosign" and
"dnssec" regression tests. [RT #20865]
2010-01-18 19:18:35 +00:00
Automatic Updater
c57721f304 update 2010-01-15 00:18:30 +00:00
Evan Hunt
e2366995bf 2840. [bug] Change 2836 was not complete. [RT #20883] 2010-01-14 23:49:45 +00:00
Automatic Updater
469cc67d39 update 2010-01-14 00:18:39 +00:00
Automatic Updater
74f601e769 update copyright notice 2010-01-13 23:48:20 +00:00
Automatic Updater
cb3485b672 newcopyrights 2010-01-13 23:30:26 +00:00
Automatic Updater
82e967e5e6 update 2010-01-13 22:16:33 +00:00
Francis Dupont
29ea3caf10 Temporary fixed pkcs11-destroy usage check. [RT #20760] 2010-01-13 21:21:33 +00:00
Automatic Updater
f4693db3a3 update 2010-01-13 20:16:53 +00:00
Evan Hunt
96c51eadc9 Commit to v9_7 some changes that had been left out:
2838.	[bug]		A KSK revoked by named could not be deleted.
			[RT #20881]

2837.	[port]		Prevent Linux spurious warnings about fwrite().
			[RT #20812]
2010-01-13 19:31:53 +00:00
Automatic Updater
7a3c23d482 update 2010-01-10 00:18:57 +00:00
Automatic Updater
2462656853 update copyright notice 2010-01-09 23:47:55 +00:00
Automatic Updater
afc0c883e0 newcopyrights 2010-01-09 23:30:25 +00:00
Automatic Updater
6454378247 update 2010-01-09 17:16:45 +00:00
Evan Hunt
5a51487062 2836. [bug] Keys that were scheduled to become active could
be delayed. [RT #20874]
2010-01-09 17:07:16 +00:00
Automatic Updater
9457b2ef4e update 2010-01-09 00:19:22 +00:00
Automatic Updater
3f818a717b update copyright notice 2010-01-08 23:50:05 +00:00
Automatic Updater
68f56798c5 newcopyrights 2010-01-08 23:30:37 +00:00
Automatic Updater
d71c9f3056 update 2010-01-08 18:16:54 +00:00
Automatic Updater
5373ea378a update 2010-01-08 17:17:11 +00:00
Evan Hunt
1088aae3c3 2835. [bug] Key inactivity dates were inadvertently stored in
the private key file with the outdated tag
			"Unpublish" rather than "Inactive".  This has been
			fixed; however, any existing keys that had Inactive
			dates set will now need to have them reset, using
			'dnssec-settime -I'. [RT #20868]
2010-01-08 17:17:09 +00:00
Evan Hunt
d01d2952a0 change "Unpublish" to "Inactive" in dst_parse.c (this was missed out of
change 2677).
2010-01-08 16:57:18 +00:00
Automatic Updater
64f0e92b83 update 2010-01-08 02:18:20 +00:00
Automatic Updater
1773c53c87 regen 2010-01-08 02:08:26 +00:00
Automatic Updater
c520aae568 update 2010-01-08 00:19:03 +00:00
Automatic Updater
ed0fd28aff update copyright notice 2010-01-07 23:48:16 +00:00
Automatic Updater
9d870f3900 newcopyrights 2010-01-07 23:30:35 +00:00
Automatic Updater
f9a4707b26 update 2010-01-07 22:16:18 +00:00
Evan Hunt
592adf7dc2 2834. [bug] HMAC-SHA* keys that were longer than the algorithm
digest length were used incorrectly, leading to
			interoperability problems with other DNS
			implementations.  This has been corrected.
			(Note: If an oversize key is in use, and
			compatibility is needed with an older release of
			BIND, the new tool "isc-hmac-fixup" can convert
			the key secret to a form that will work with all
			versions.) [RT #20751]
2010-01-07 21:53:05 +00:00
cvs2git
946191fb80 This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-01-07 21:52:15 +00:00
Automatic Updater
c8f7f7feee update 2010-01-07 20:16:25 +00:00
Evan Hunt
b916fd3d7f 2833. [cleanup] Fix usage messages in dnssec-keygen and dnssec-settime.
[RT #20851]
2010-01-07 19:16:30 +00:00
Automatic Updater
a02373df1a update 2010-01-07 19:16:18 +00:00
Shawn Routhier
49dd142346 Modify "struct stat" in lib/export/samples/nsprobe.c to avoid redefinition
in some OSes - rt20831
2010-01-07 18:37:02 +00:00
Automatic Updater
e50d57f3b7 update 2010-01-07 17:16:28 +00:00
Evan Hunt
cf00dcb23a 2831. [security] Do not attempt to validate or cache
out-of-bailiwick data returned with a secure
			answer; it must be re-fetched from its original
			source and validated in that context. [RT #20819]
2010-01-07 16:49:12 +00:00
cvs2git
51833b980c This commit was manufactured by cvs2git to create branch 'v9_7'. 2010-01-07 16:48:30 +00:00
Automatic Updater
57ab797a83 update 2010-01-07 00:18:38 +00:00
Automatic Updater
f9d193397a update copyright notice 2010-01-06 23:48:07 +00:00
Automatic Updater
aaf6b0ef6c newcopyrights 2010-01-06 23:30:33 +00:00
Automatic Updater
f98cc67e50 update 2010-01-06 01:16:36 +00:00
Evan Hunt
5337c00cbb fix spacing 2010-01-06 00:53:56 +00:00
Automatic Updater
8f329840b8 update 2010-01-06 00:18:24 +00:00
Automatic Updater
0d12fdeb7c update copyright notice 2010-01-05 23:47:58 +00:00
Automatic Updater
54b5e3f7de newcopyrights 2010-01-05 23:30:33 +00:00
Automatic Updater
8efd3e6a29 update 2010-01-05 16:16:38 +00:00
Evan Hunt
bd41f944d4 missing newline in dnssec-signzone usage 2010-01-05 15:32:15 +00:00
Automatic Updater
b705006b6b update 2010-01-05 00:18:14 +00:00
Automatic Updater
cd389dbb98 update copyright notice 2010-01-04 23:48:10 +00:00
Automatic Updater
7af9efa0b0 newcopyrights 2010-01-04 23:30:34 +00:00
Automatic Updater
b42eb96ae6 update 2010-01-04 23:16:43 +00:00
Evan Hunt
e1585bf0f0 2830. [bug] Changing the OPTOUT setting could take multiple
passes. [RT #20813]
2010-01-04 22:47:17 +00:00
Evan Hunt
0b06e0cc38 2829. [bug] Fixed potential node inconsistency in rbtdb.c.
[RT #20808]
2010-01-04 22:29:42 +00:00
Automatic Updater
d77cb489ba update 2009-12-31 00:19:18 +00:00
Automatic Updater
8bd217efdb update copyright notice 2009-12-30 23:48:30 +00:00
Automatic Updater
3a075f9426 newcopyrights 2009-12-30 23:30:37 +00:00
Automatic Updater
14227f1a02 update 2009-12-30 09:17:18 +00:00
Tatuya JINMEI 神明達哉
6ca6cc975f 2828. [security] Cached CNAME or DNAME RR could be returned to clients
without DNSSEC validation. [RT #20737]

9.4-ESV, 9.5.3, 9.6.2, 9.7.0, 9.8.0(?)
2009-12-30 08:33:41 +00:00
cvs2git
dc978e394a This commit was manufactured by cvs2git to create branch 'v9_7'. 2009-12-30 08:02:40 +00:00
Automatic Updater
36c5366045 update 2009-12-30 07:17:27 +00:00
Evan Hunt
a2ba550880 2827. [security] Bogus NXDOMAIN could be cached as if valid. [RT #20712] 2009-12-30 06:46:36 +00:00
Automatic Updater
533ac81c01 update 2009-12-30 04:19:25 +00:00
Mark Andrews
831bfda9d2 2825. [bug] Changing the setting of OPTOUT in a NSEC3 chain that
was in the process of being created was not properly
                        recorded in the zone. [RT #20786]
2009-12-30 03:55:03 +00:00
Evan Hunt
ab70e4fd6d 2826. [bug] NSEC3->NSEC transitions could fail due to a lock not
being released.  [RT #20740]
2009-12-30 03:37:55 +00:00
Automatic Updater
4d82d73a06 update 2009-12-30 03:20:07 +00:00
Mark Andrews
724411ac1c more for:
2824.   [bug]           "rndc sign" was not being run by the correct task.
                        [RT #20759]
2009-12-30 02:28:13 +00:00
Automatic Updater
2d27aa1355 update 2009-12-29 23:16:46 +00:00
Mark Andrews
2b662f27f6 2824. [bug] "rndc sign" was not being run by the correct task.
[RT #20759]
2009-12-29 22:23:01 +00:00
Automatic Updater
f2e78f2bb5 update 2009-12-29 22:16:50 +00:00
Mark Andrews
9301f52243 2823. [bug] rbtdb.c:getsigningtime() was missing locks. [RT #20781] 2009-12-29 22:11:05 +00:00
Automatic Updater
f87bcba303 update 2009-12-29 09:16:48 +00:00
Mark Andrews
c99979af3d 2822. [bug] rbtdb.c:loadnode() could return the wrong result.
[RT #20802]
2009-12-29 08:58:32 +00:00
Automatic Updater
96b762793c update 2009-12-29 02:29:37 +00:00
Automatic Updater
8bcd348638 regen 2009-12-29 02:09:40 +00:00
Automatic Updater
7db461dccb update 2009-12-29 00:18:36 +00:00
Evan Hunt
3bccb39bb9 2821. [doc] Add note that named-checkconf doesn't automatically
read rndc.key and bind.keys [RT #20758]
2009-12-28 23:21:44 +00:00
Automatic Updater
95b0994713 update 2009-12-24 01:16:23 +00:00
Evan Hunt
5f7159f897 2819. [cleanup] Removed unnecessary DNS_POINTER_MAXHOPS define
[RT #20771]
2009-12-24 00:35:21 +00:00
Automatic Updater
244386a257 update 2009-12-24 00:19:09 +00:00
Evan Hunt
b4df2f48c7 2818. [cleanup] rndc could return an incorrect error code
when a zone was not found. [RT #20767]
2009-12-24 00:16:08 +00:00
Evan Hunt
84c9c592f8 2817. [cleanup] Removed unnecessary isc_tasc_endexclusive() calls.
[RT #20768]
2009-12-24 00:00:13 +00:00
Evan Hunt
4f3cf2cfb8 2816. [bug] previous_closest_nsec() could fail to return
data for NSEC3 nodes [RT #29730]
2009-12-23 23:43:37 +00:00
Evan Hunt
5a33ab5d65 2815. [bug] Exclusively lock the task when freezing a zone.
[RT #19838]
2009-12-23 23:33:53 +00:00
Automatic Updater
920f5e254d update 2009-12-21 05:17:28 +00:00
Mark Andrews
50c4837d55 2814. [func] Provide a definitive error message when a master
zone is not loaded. [RT #20757]
2009-12-21 04:30:50 +00:00
Automatic Updater
0f6cf9cc29 update 2009-12-19 18:16:29 +00:00
Evan Hunt
929667cf18 change all keys from rsasha1 to nsec3rsasha1 so that the nsec->nsec3
transitions work correctly.  (they worked before, but weren't supposed
to; when that bug was fixed, the test broke.)
2009-12-19 17:30:07 +00:00
Automatic Updater
47ad87ecbf update 2009-12-19 02:38:13 +00:00
Automatic Updater
5db6b77754 regen 2009-12-19 02:08:53 +00:00
Automatic Updater
483417a75b update 2009-12-19 00:18:36 +00:00
Automatic Updater
5470afd66b update copyright notice 2009-12-18 23:48:18 +00:00
Automatic Updater
3da9b962c3 newcopyrights 2009-12-18 23:30:28 +00:00
Automatic Updater
26d9f26bd8 update 2009-12-18 22:16:33 +00:00
Evan Hunt
7290687619 2813. [bug] Better handling of unreadable DNSSEC key files.
[RT #20710]

2812.	[bug]		Make sure updates can't result in a zone with
			NSEC-only keys and NSEC3 records. [RT 20748]
2009-12-18 22:13:54 +00:00
Automatic Updater
ad7b27283d update 2009-12-18 08:19:16 +00:00
Evan Hunt
8d002e0930 2811. [cleanup] Add "rndc sign" to list of commands in rndc usage
output. [RT #20733]
2009-12-18 07:59:09 +00:00
Evan Hunt
b1bc808468 2810. [doc] Clarified the process of transitioning an NSEC3 zone
to insecure. [RT #20746]
2009-12-18 07:55:06 +00:00
Evan Hunt
d1ebdb2de9 2809. [cleanup] Restored accidentally-deleted text in usage output
in dnssec-settime and dnssec-revoke [RT #20739]
2009-12-18 07:48:37 +00:00
Automatic Updater
4ff617cd85 update 2009-12-18 04:20:21 +00:00
Mark Andrews
7994d42e88 2808. [bug] Remove the attempt to install atomic.h from lib/isc.
atomic.h is correctly installed by the architecture
                        specific subdirectories.  [RT #20722]
2009-12-18 04:09:55 +00:00
Automatic Updater
867c6d55e0 update 2009-12-17 03:21:00 +00:00
Automatic Updater
42f75ef047 regen 2009-12-17 02:57:07 +00:00
Automatic Updater
e7bd87c468 update 2009-12-16 07:20:30 +00:00
Evan Hunt
c33415db62 s/ddns.key/session.key/ 2009-12-16 07:12:49 +00:00
Automatic Updater
559c387477 update 2009-12-11 01:16:15 +00:00
Evan Hunt
5f7cebc478 2807. [bug] Fixed a possible ASSERT when reconfiguring zone
keys. [RT #20720]
2009-12-11 01:06:12 +00:00
Automatic Updater
c6e8d40905 update 2009-12-08 21:16:51 +00:00
cvs2git
2b32144429 This commit was manufactured by cvs2git to create branch 'v9_7'. 2009-12-08 05:17:02 +00:00
cvs2git
a13f708bb6 This commit was manufactured by cvs2git to create branch 'rt20679'. 2009-12-04 22:45:12 +00:00
cvs2git
2049d24199 This commit was manufactured by cvs2git to create branch 'rt20670'. 2009-12-03 05:19:52 +00:00
cvs2git
c2f923f320 This commit was manufactured by cvs2git to create branch 'rt20678'. 2009-11-30 22:16:57 +00:00
cvs2git
1528f83532 This commit was manufactured by cvs2git to create branch 'rt20663'. 2009-11-24 23:48:13 +00:00
Mark Andrews
e8074841e9 file EXCLUDED was added on branch v9_7 on 2010-12-10 01:49:33 +0000 2001-10-19 00:30:31 +00:00
425 changed files with 78506 additions and 0 deletions

313
HISTORY Normal file
View File

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

3
bin/confgen/.cvsignore Normal file
View File

@@ -0,0 +1,3 @@
Makefile
ddns-confgen
rndc-confgen

101
bin/confgen/Makefile.in Normal file
View File

@@ -0,0 +1,101 @@
# Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# $Id: Makefile.in,v 1.8 2009/12/05 23:31:40 each Exp $
srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
@BIND9_VERSION@
@BIND9_MAKE_INCLUDES@
CINCLUDES = -I${srcdir}/include ${ISC_INCLUDES} ${ISCCC_INCLUDES} \
${ISCCFG_INCLUDES} ${DNS_INCLUDES} ${BIND9_INCLUDES}
CDEFINES =
CWARNINGS =
ISCCFGLIBS = ../../lib/isccfg/libisccfg.@A@
ISCCCLIBS = ../../lib/isccc/libisccc.@A@
ISCLIBS = ../../lib/isc/libisc.@A@
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@
DNSLIBS = ../../lib/dns/libdns.@A@ @DNS_CRYPTO_LIBS@
BIND9LIBS = ../../lib/bind9/libbind9.@A@
ISCCFGDEPLIBS = ../../lib/isccfg/libisccfg.@A@
ISCCCDEPLIBS = ../../lib/isccc/libisccc.@A@
ISCDEPLIBS = ../../lib/isc/libisc.@A@
DNSDEPLIBS = ../../lib/dns/libdns.@A@
BIND9DEPLIBS = ../../lib/bind9/libbind9.@A@
RNDCLIBS = ${ISCCFGLIBS} ${ISCCCLIBS} ${BIND9LIBS} ${DNSLIBS} ${ISCLIBS} @LIBS@
RNDCDEPLIBS = ${ISCCFGDEPLIBS} ${ISCCCDEPLIBS} ${BIND9DEPLIBS} ${DNSDEPLIBS} ${ISCDEPLIBS}
LIBS = ${DNSLIBS} ${ISCLIBS} @LIBS@
NOSYMLIBS = ${DNSLIBS} ${ISCNOSYMLIBS} @LIBS@
CONFDEPLIBS = ${DNSDEPLIBS} ${ISCDEPLIBS}
SRCS= rndc-confgen.c ddns-confgen.c
SUBDIRS = unix
TARGETS = rndc-confgen@EXEEXT@ ddns-confgen@EXEEXT@
MANPAGES = rndc-confgen.8 ddns-confgen.8
HTMLPAGES = rndc-confgen.html ddns-confgen.html
MANOBJS = ${MANPAGES} ${HTMLPAGES}
UOBJS = unix/os.@O@
@BIND9_MAKE_RULES@
rndc-confgen.@O@: rndc-confgen.c
${LIBTOOL_MODE_COMPILE} ${CC} ${ALL_CFLAGS} \
-DRNDC_KEYFILE=\"${sysconfdir}/rndc.key\" \
-c ${srcdir}/rndc-confgen.c
ddns-confgen.@O@: ddns-confgen.c
${LIBTOOL_MODE_COMPILE} ${CC} ${ALL_CFLAGS} -c ${srcdir}/ddns-confgen.c
rndc-confgen@EXEEXT@: rndc-confgen.@O@ util.@O@ keygen.@O@ ${UOBJS} ${CONFDEPLIBS}
export BASEOBJS="rndc-confgen.@O@ util.@O@ keygen.@O@ ${UOBJS}"; \
${FINALBUILDCMD}
ddns-confgen@EXEEXT@: ddns-confgen.@O@ util.@O@ keygen.@O@ ${UOBJS} ${CONFDEPLIBS}
export BASEOBJS="ddns-confgen.@O@ util.@O@ keygen.@O@ ${UOBJS}"; \
${FINALBUILDCMD}
doc man:: ${MANOBJS}
docclean manclean maintainer-clean::
rm -f ${MANOBJS}
installdirs:
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${sbindir}
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${mandir}/man8
install:: rndc-confgen@EXEEXT@ ddns-confgen@EXEEXT@ installdirs
${LIBTOOL_MODE_INSTALL} ${INSTALL_PROGRAM} rndc-confgen@EXEEXT@ ${DESTDIR}${sbindir}
${LIBTOOL_MODE_INSTALL} ${INSTALL_PROGRAM} ddns-confgen@EXEEXT@ ${DESTDIR}${sbindir}
${INSTALL_DATA} ${srcdir}/rndc-confgen.8 ${DESTDIR}${mandir}/man8
${INSTALL_DATA} ${srcdir}/ddns-confgen.8 ${DESTDIR}${mandir}/man8
clean distclean maintainer-clean::
rm -f ${TARGETS}

143
bin/confgen/ddns-confgen.8 Normal file
View File

@@ -0,0 +1,143 @@
.\" Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
.\" REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
.\" AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
.\" LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id: ddns-confgen.8,v 1.10 2009/09/19 01:14:52 tbox Exp $
.\"
.hy 0
.ad l
.\" Title: ddns\-confgen
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: Jan 29, 2009
.\" Manual: BIND9
.\" Source: BIND9
.\"
.TH "DDNS\-CONFGEN" "8" "Jan 29, 2009" "BIND9" "BIND9"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.SH "NAME"
ddns\-confgen \- ddns key generation tool
.SH "SYNOPSIS"
.HP 13
\fBddns\-confgen\fR [\fB\-a\ \fR\fB\fIalgorithm\fR\fR] [\fB\-h\fR] [\fB\-k\ \fR\fB\fIkeyname\fR\fR] [\fB\-r\ \fR\fB\fIrandomfile\fR\fR] [\-s\ \fIname\fR | \-z\ \fIzone\fR] [\fB\-q\fR] [name]
.SH "DESCRIPTION"
.PP
\fBddns\-confgen\fR
generates a key for use by
\fBnsupdate\fR
and
\fBnamed\fR. It simplifies configuration of dynamic zones by generating a key and providing the
\fBnsupdate\fR
and
\fBnamed.conf\fR
syntax that will be needed to use it, including an example
\fBupdate\-policy\fR
statement.
.PP
If a domain name is specified on the command line, it will be used in the name of the generated key and in the sample
\fBnamed.conf\fR
syntax. For example,
\fBddns\-confgen example.com\fR
would generate a key called "ddns\-key.example.com", and sample
\fBnamed.conf\fR
command that could be used in the zone definition for "example.com".
.PP
Note that
\fBnamed\fR
itself can configure a local DDNS key for use with
\fBnsupdate \-l\fR.
\fBddns\-confgen\fR
is only needed when a more elaborate configuration is required: for instance, if
\fBnsupdate\fR
is to be used from a remote system.
.SH "OPTIONS"
.PP
\-a \fIalgorithm\fR
.RS 4
Specifies the algorithm to use for the TSIG key. Available choices are: hmac\-md5, hmac\-sha1, hmac\-sha224, hmac\-sha256, hmac\-sha384 and hmac\-sha512. The default is hmac\-sha256.
.RE
.PP
\-h
.RS 4
Prints a short summary of the options and arguments to
\fBddns\-confgen\fR.
.RE
.PP
\-k \fIkeyname\fR
.RS 4
Specifies the key name of the DDNS authentication key. The default is
\fBddns\-key\fR
when neither the
\fB\-s\fR
nor
\fB\-z\fR
option is specified; otherwise, the default is
\fBddns\-key\fR
as a separate label followed by the argument of the option, e.g.,
\fBddns\-key.example.com.\fR
The key name must have the format of a valid domain name, consisting of letters, digits, hyphens and periods.
.RE
.PP
\-q
.RS 4
Quiet mode: Print only the key, with no explanatory text or usage examples.
.RE
.PP
\-r \fIrandomfile\fR
.RS 4
Specifies a source of random data for generating the authorization. If the operating system does not provide a
\fI/dev/random\fR
or equivalent device, the default source of randomness is keyboard input.
\fIrandomdev\fR
specifies the name of a character device or file containing random data to be used instead of the default. The special value
\fIkeyboard\fR
indicates that keyboard input should be used.
.RE
.PP
\-s \fIname\fR
.RS 4
Single host mode: The example
\fBnamed.conf\fR
text shows how to set an update policy for the specified
\fIname\fR
using the "name" nametype. The default key name is ddns\-key.\fIname\fR. Note that the "self" nametype cannot be used, since the name to be updated may differ from the key name. This option cannot be used with the
\fB\-z\fR
option.
.RE
.PP
\-z \fIzone\fR
.RS 4
zone mode: The example
\fBnamed.conf\fR
text shows how to set an update policy for the specified
\fIzone\fR
using the "zonesub" nametype, allowing updates to all subdomain names within that
\fIzone\fR. This option cannot be used with the
\fB\-s\fR
option.
.RE
.SH "SEE ALSO"
.PP
\fBnsupdate\fR(1),
\fBnamed.conf\fR(5),
\fBnamed\fR(8),
BIND 9 Administrator Reference Manual.
.SH "AUTHOR"
.PP
Internet Systems Consortium
.SH "COPYRIGHT"
Copyright \(co 2009 Internet Systems Consortium, Inc. ("ISC")
.br

258
bin/confgen/ddns-confgen.c Normal file
View File

@@ -0,0 +1,258 @@
/*
* 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
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: ddns-confgen.c,v 1.9.66.2 2011/03/12 04:58:23 tbox Exp $ */
/*! \file */
/**
* ddns-confgen generates configuration files for dynamic DNS. It can
* be used as a convenient alternative to writing the ddns.key file
* and the corresponding key and update-policy statements in named.conf.
*/
#include <config.h>
#include <stdlib.h>
#include <stdarg.h>
#include <isc/assertions.h>
#include <isc/base64.h>
#include <isc/buffer.h>
#include <isc/commandline.h>
#include <isc/entropy.h>
#include <isc/file.h>
#include <isc/keyboard.h>
#include <isc/mem.h>
#include <isc/net.h>
#include <isc/print.h>
#include <isc/result.h>
#include <isc/string.h>
#include <isc/time.h>
#include <isc/util.h>
#include <dns/keyvalues.h>
#include <dns/name.h>
#include <dst/dst.h>
#include <confgen/os.h>
#include "util.h"
#include "keygen.h"
#define DEFAULT_KEYNAME "ddns-key"
static char program[256];
const char *progname;
isc_boolean_t verbose = ISC_FALSE;
ISC_PLATFORM_NORETURN_PRE static void
usage(int status) ISC_PLATFORM_NORETURN_POST;
static void
usage(int status) {
fprintf(stderr, "\
Usage:\n\
%s [-a alg] [-k keyname] [-r randomfile] [-q] [-s name | -z zone]\n\
-a alg: algorithm (default hmac-sha256)\n\
-k keyname: name of the key as it will be used in named.conf\n\
-r randomfile: source of random data (use \"keyboard\" for key timing)\n\
-s name: domain name to be updated using the created key\n\
-z zone: name of the zone as it will be used in named.conf\n\
-q: quiet mode: print the key, with no explanatory text\n",
progname);
exit (status);
}
int
main(int argc, char **argv) {
isc_boolean_t show_final_mem = ISC_FALSE;
isc_boolean_t quiet = ISC_FALSE;
isc_buffer_t key_txtbuffer;
char key_txtsecret[256];
isc_mem_t *mctx = NULL;
isc_result_t result = ISC_R_SUCCESS;
const char *randomfile = NULL;
const char *keyname = NULL;
const char *zone = NULL;
const char *self_domain = NULL;
char *keybuf = NULL;
dns_secalg_t alg = DST_ALG_HMACSHA256;
const char *algname = alg_totext(alg);
int keysize = 256;
int len = 0;
int ch;
result = isc_file_progname(*argv, program, sizeof(program));
if (result != ISC_R_SUCCESS)
memcpy(program, "ddns-confgen", 13);
progname = program;
isc_commandline_errprint = ISC_FALSE;
while ((ch = isc_commandline_parse(argc, argv,
"a:hk:Mmr:qs:Vy:z:")) != -1) {
switch (ch) {
case 'a':
algname = isc_commandline_argument;
alg = alg_fromtext(algname);
if (alg == DST_ALG_UNKNOWN)
fatal("Unsupported algorithm '%s'", algname);
keysize = alg_bits(alg);
break;
case 'h':
usage(0);
case 'k':
case 'y':
keyname = isc_commandline_argument;
break;
case 'M':
isc_mem_debugging = ISC_MEM_DEBUGTRACE;
break;
case 'm':
show_final_mem = ISC_TRUE;
break;
case 'q':
quiet = ISC_TRUE;
break;
case 'r':
randomfile = isc_commandline_argument;
break;
case 's':
self_domain = isc_commandline_argument;
break;
case 'V':
verbose = ISC_TRUE;
break;
case 'z':
zone = isc_commandline_argument;
break;
case '?':
if (isc_commandline_option != '?') {
fprintf(stderr, "%s: invalid argument -%c\n",
program, isc_commandline_option);
usage(1);
} else
usage(0);
break;
default:
fprintf(stderr, "%s: unhandled option -%c\n",
program, isc_commandline_option);
exit(1);
}
}
argc -= isc_commandline_index;
argv += isc_commandline_index;
POST(argv);
if (self_domain != NULL && zone != NULL)
usage(1); /* -s and -z cannot coexist */
if (argc > 0)
usage(1);
DO("create memory context", isc_mem_create(0, 0, &mctx));
if (keyname == NULL) {
const char *suffix = NULL;
keyname = DEFAULT_KEYNAME;
if (self_domain != NULL)
suffix = self_domain;
else if (zone != NULL)
suffix = zone;
if (suffix != NULL) {
len = strlen(keyname) + strlen(suffix) + 2;
keybuf = isc_mem_get(mctx, len);
if (keybuf == NULL)
fatal("failed to allocate memory for keyname");
snprintf(keybuf, len, "%s.%s", keyname, suffix);
keyname = (const char *) keybuf;
}
}
isc_buffer_init(&key_txtbuffer, &key_txtsecret, sizeof(key_txtsecret));
generate_key(mctx, randomfile, alg, keysize, &key_txtbuffer);
if (!quiet)
printf("\
# To activate this key, place the following in named.conf, and\n\
# in a separate keyfile on the system or systems from which nsupdate\n\
# will be run:\n");
printf("\
key \"%s\" {\n\
algorithm %s;\n\
secret \"%.*s\";\n\
};\n",
keyname, algname,
(int)isc_buffer_usedlength(&key_txtbuffer),
(char *)isc_buffer_base(&key_txtbuffer));
if (!quiet) {
if (self_domain != NULL) {
printf("\n\
# Then, in the \"zone\" statement for the zone containing the\n\
# name \"%s\", place an \"update-policy\" statement\n\
# like this one, adjusted as needed for your preferred permissions:\n\
update-policy {\n\
grant %s name %s ANY;\n\
};\n",
self_domain, keyname, self_domain);
} else if (zone != NULL) {
printf("\n\
# Then, in the \"zone\" definition statement for \"%s\",\n\
# place an \"update-policy\" statement like this one, adjusted as \n\
# needed for your preferred permissions:\n\
update-policy {\n\
grant %s zonesub ANY;\n\
};\n",
zone, keyname);
} else {
printf("\n\
# Then, in the \"zone\" statement for each zone you wish to dynamically\n\
# update, place an \"update-policy\" statement granting update permission\n\
# to this key. For example, the following statement grants this key\n\
# permission to update any name within the zone:\n\
update-policy {\n\
grant %s zonesub ANY;\n\
};\n",
keyname);
}
printf("\n\
# After the keyfile has been placed, the following command will\n\
# execute nsupdate using this key:\n\
nsupdate -k <keyfile>\n");
}
if (keybuf != NULL)
isc_mem_put(mctx, keybuf, len);
if (show_final_mem)
isc_mem_stats(mctx, stderr);
isc_mem_destroy(&mctx);
return (0);
}

View File

@@ -0,0 +1,218 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: ddns-confgen.docbook,v 1.6 2009/09/18 22:08:55 fdupont Exp $ -->
<refentry id="man.ddns-confgen">
<refentryinfo>
<date>Jan 29, 2009</date>
</refentryinfo>
<refmeta>
<refentrytitle><application>ddns-confgen</application></refentrytitle>
<manvolnum>8</manvolnum>
<refmiscinfo>BIND9</refmiscinfo>
</refmeta>
<refnamediv>
<refname><application>ddns-confgen</application></refname>
<refpurpose>ddns key generation tool</refpurpose>
</refnamediv>
<docinfo>
<copyright>
<year>2009</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<command>ddns-confgen</command>
<arg><option>-a <replaceable class="parameter">algorithm</replaceable></option></arg>
<arg><option>-h</option></arg>
<arg><option>-k <replaceable class="parameter">keyname</replaceable></option></arg>
<arg><option>-r <replaceable class="parameter">randomfile</replaceable></option></arg>
<group>
<arg choice="plain">-s <replaceable class="parameter">name</replaceable></arg>
<arg choice="plain">-z <replaceable class="parameter">zone</replaceable></arg>
</group>
<arg><option>-q</option></arg>
<arg choice="opt">name</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<para><command>ddns-confgen</command>
generates a key for use by <command>nsupdate</command>
and <command>named</command>. It simplifies configuration
of dynamic zones by generating a key and providing the
<command>nsupdate</command> and <command>named.conf</command>
syntax that will be needed to use it, including an example
<command>update-policy</command> statement.
</para>
<para>
If a domain name is specified on the command line, it will
be used in the name of the generated key and in the sample
<command>named.conf</command> syntax. For example,
<command>ddns-confgen example.com</command> would
generate a key called "ddns-key.example.com", and sample
<command>named.conf</command> command that could be used
in the zone definition for "example.com".
</para>
<para>
Note that <command>named</command> itself can configure a
local DDNS key for use with <command>nsupdate -l</command>.
<command>ddns-confgen</command> is only needed when a
more elaborate configuration is required: for instance, if
<command>nsupdate</command> is to be used from a remote system.
</para>
</refsect1>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
<term>-a <replaceable class="parameter">algorithm</replaceable></term>
<listitem>
<para>
Specifies the algorithm to use for the TSIG key. Available
choices are: hmac-md5, hmac-sha1, hmac-sha224, hmac-sha256,
hmac-sha384 and hmac-sha512. The default is hmac-sha256.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-h</term>
<listitem>
<para>
Prints a short summary of the options and arguments to
<command>ddns-confgen</command>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-k <replaceable class="parameter">keyname</replaceable></term>
<listitem>
<para>
Specifies the key name of the DDNS authentication key.
The default is <constant>ddns-key</constant> when neither
the <option>-s</option> nor <option>-z</option> option is
specified; otherwise, the default
is <constant>ddns-key</constant> as a separate label
followed by the argument of the option, e.g.,
<constant>ddns-key.example.com.</constant>
The key name must have the format of a valid domain name,
consisting of letters, digits, hyphens and periods.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-q</term>
<listitem>
<para>
Quiet mode: Print only the key, with no explanatory text or
usage examples.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-r <replaceable class="parameter">randomfile</replaceable></term>
<listitem>
<para>
Specifies a source of random data for generating the
authorization. If the operating system does not provide a
<filename>/dev/random</filename> or equivalent device, the
default source of randomness is keyboard input.
<filename>randomdev</filename> specifies the name of a
character device or file containing random data to be used
instead of the default. The special value
<filename>keyboard</filename> indicates that keyboard input
should be used.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-s <replaceable class="parameter">name</replaceable></term>
<listitem>
<para>
Single host mode: The example <command>named.conf</command> text
shows how to set an update policy for the specified
<replaceable class="parameter">name</replaceable>
using the "name" nametype.
The default key name is
ddns-key.<replaceable class="parameter">name</replaceable>.
Note that the "self" nametype cannot be used, since
the name to be updated may differ from the key name.
This option cannot be used with the <option>-z</option> option.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-z <replaceable class="parameter">zone</replaceable></term>
<listitem>
<para>
zone mode: The example <command>named.conf</command> text
shows how to set an update policy for the specified
<replaceable class="parameter">zone</replaceable>
using the "zonesub" nametype, allowing updates to all subdomain
names within
that <replaceable class="parameter">zone</replaceable>.
This option cannot be used with the <option>-s</option> option.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>nsupdate</refentrytitle><manvolnum>1</manvolnum>
</citerefentry>,
<citerefentry>
<refentrytitle>named.conf</refentrytitle><manvolnum>5</manvolnum>
</citerefentry>,
<citerefentry>
<refentrytitle>named</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
<citetitle>BIND 9 Administrator Reference Manual</citetitle>.
</para>
</refsect1>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->

View File

@@ -0,0 +1,141 @@
<!--
- Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: ddns-confgen.html,v 1.10 2009/09/19 01:14:52 tbox Exp $ -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>ddns-confgen</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<a name="man.ddns-confgen"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">ddns-confgen</span> &#8212; ddns key generation tool</p>
</div>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">ddns-confgen</code> [<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>] [<code class="option">-h</code>] [<code class="option">-k <em class="replaceable"><code>keyname</code></em></code>] [<code class="option">-r <em class="replaceable"><code>randomfile</code></em></code>] [ -s <em class="replaceable"><code>name</code></em> | -z <em class="replaceable"><code>zone</code></em> ] [<code class="option">-q</code>] [name]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543395"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">ddns-confgen</strong></span>
generates a key for use by <span><strong class="command">nsupdate</strong></span>
and <span><strong class="command">named</strong></span>. It simplifies configuration
of dynamic zones by generating a key and providing the
<span><strong class="command">nsupdate</strong></span> and <span><strong class="command">named.conf</strong></span>
syntax that will be needed to use it, including an example
<span><strong class="command">update-policy</strong></span> statement.
</p>
<p>
If a domain name is specified on the command line, it will
be used in the name of the generated key and in the sample
<span><strong class="command">named.conf</strong></span> syntax. For example,
<span><strong class="command">ddns-confgen example.com</strong></span> would
generate a key called "ddns-key.example.com", and sample
<span><strong class="command">named.conf</strong></span> command that could be used
in the zone definition for "example.com".
</p>
<p>
Note that <span><strong class="command">named</strong></span> itself can configure a
local DDNS key for use with <span><strong class="command">nsupdate -l</strong></span>.
<span><strong class="command">ddns-confgen</strong></span> is only needed when a
more elaborate configuration is required: for instance, if
<span><strong class="command">nsupdate</strong></span> is to be used from a remote system.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543454"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
<dd><p>
Specifies the algorithm to use for the TSIG key. Available
choices are: hmac-md5, hmac-sha1, hmac-sha224, hmac-sha256,
hmac-sha384 and hmac-sha512. The default is hmac-sha256.
</p></dd>
<dt><span class="term">-h</span></dt>
<dd><p>
Prints a short summary of the options and arguments to
<span><strong class="command">ddns-confgen</strong></span>.
</p></dd>
<dt><span class="term">-k <em class="replaceable"><code>keyname</code></em></span></dt>
<dd><p>
Specifies the key name of the DDNS authentication key.
The default is <code class="constant">ddns-key</code> when neither
the <code class="option">-s</code> nor <code class="option">-z</code> option is
specified; otherwise, the default
is <code class="constant">ddns-key</code> as a separate label
followed by the argument of the option, e.g.,
<code class="constant">ddns-key.example.com.</code>
The key name must have the format of a valid domain name,
consisting of letters, digits, hyphens and periods.
</p></dd>
<dt><span class="term">-q</span></dt>
<dd><p>
Quiet mode: Print only the key, with no explanatory text or
usage examples.
</p></dd>
<dt><span class="term">-r <em class="replaceable"><code>randomfile</code></em></span></dt>
<dd><p>
Specifies a source of random data for generating the
authorization. If the operating system does not provide a
<code class="filename">/dev/random</code> or equivalent device, the
default source of randomness is keyboard input.
<code class="filename">randomdev</code> specifies the name of a
character device or file containing random data to be used
instead of the default. The special value
<code class="filename">keyboard</code> indicates that keyboard input
should be used.
</p></dd>
<dt><span class="term">-s <em class="replaceable"><code>name</code></em></span></dt>
<dd><p>
Single host mode: The example <span><strong class="command">named.conf</strong></span> text
shows how to set an update policy for the specified
<em class="replaceable"><code>name</code></em>
using the "name" nametype.
The default key name is
ddns-key.<em class="replaceable"><code>name</code></em>.
Note that the "self" nametype cannot be used, since
the name to be updated may differ from the key name.
This option cannot be used with the <code class="option">-z</code> option.
</p></dd>
<dt><span class="term">-z <em class="replaceable"><code>zone</code></em></span></dt>
<dd><p>
zone mode: The example <span><strong class="command">named.conf</strong></span> text
shows how to set an update policy for the specified
<em class="replaceable"><code>zone</code></em>
using the "zonesub" nametype, allowing updates to all subdomain
names within
that <em class="replaceable"><code>zone</code></em>.
This option cannot be used with the <code class="option">-s</code> option.
</p></dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543642"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">nsupdate</span>(1)</span>,
<span class="citerefentry"><span class="refentrytitle">named.conf</span>(5)</span>,
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543681"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div></body>
</html>

View File

@@ -0,0 +1,39 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: os.h,v 1.3 2009/06/11 23:47:55 tbox Exp $ */
/*! \file */
#ifndef RNDC_OS_H
#define RNDC_OS_H 1
#include <isc/lang.h>
#include <stdio.h>
ISC_LANG_BEGINDECLS
int set_user(FILE *fd, const char *user);
/*%<
* Set the owner of the file referenced by 'fd' to 'user'.
* Returns:
* 0 success
* -1 insufficient permissions, or 'user' does not exist.
*/
ISC_LANG_ENDDECLS
#endif

218
bin/confgen/keygen.c Normal file
View File

@@ -0,0 +1,218 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: keygen.c,v 1.4 2009/11/12 14:02:38 marka Exp $ */
/*! \file */
#include <config.h>
#include <stdlib.h>
#include <stdarg.h>
#include <isc/base64.h>
#include <isc/buffer.h>
#include <isc/entropy.h>
#include <isc/file.h>
#include <isc/keyboard.h>
#include <isc/mem.h>
#include <isc/result.h>
#include <isc/string.h>
#include <dns/keyvalues.h>
#include <dns/name.h>
#include <dst/dst.h>
#include <confgen/os.h>
#include "util.h"
#include "keygen.h"
/*%
* Convert algorithm type to string.
*/
const char *
alg_totext(dns_secalg_t alg) {
switch (alg) {
case DST_ALG_HMACMD5:
return "hmac-md5";
case DST_ALG_HMACSHA1:
return "hmac-sha1";
case DST_ALG_HMACSHA224:
return "hmac-sha224";
case DST_ALG_HMACSHA256:
return "hmac-sha256";
case DST_ALG_HMACSHA384:
return "hmac-sha384";
case DST_ALG_HMACSHA512:
return "hmac-sha512";
default:
return "(unknown)";
}
}
/*%
* Convert string to algorithm type.
*/
dns_secalg_t
alg_fromtext(const char *name) {
if (strcmp(name, "hmac-md5") == 0)
return DST_ALG_HMACMD5;
if (strcmp(name, "hmac-sha1") == 0)
return DST_ALG_HMACSHA1;
if (strcmp(name, "hmac-sha224") == 0)
return DST_ALG_HMACSHA224;
if (strcmp(name, "hmac-sha256") == 0)
return DST_ALG_HMACSHA256;
if (strcmp(name, "hmac-sha384") == 0)
return DST_ALG_HMACSHA384;
if (strcmp(name, "hmac-sha512") == 0)
return DST_ALG_HMACSHA512;
return DST_ALG_UNKNOWN;
}
/*%
* Return default keysize for a given algorithm type.
*/
int
alg_bits(dns_secalg_t alg) {
switch (alg) {
case DST_ALG_HMACMD5:
return 128;
case DST_ALG_HMACSHA1:
return 160;
case DST_ALG_HMACSHA224:
return 224;
case DST_ALG_HMACSHA256:
return 256;
case DST_ALG_HMACSHA384:
return 384;
case DST_ALG_HMACSHA512:
return 512;
default:
return 0;
}
}
/*%
* Generate a key of size 'keysize' using entropy source 'randomfile',
* and place it in 'key_txtbuffer'
*/
void
generate_key(isc_mem_t *mctx, const char *randomfile, dns_secalg_t alg,
int keysize, isc_buffer_t *key_txtbuffer) {
isc_result_t result = ISC_R_SUCCESS;
isc_entropysource_t *entropy_source = NULL;
int open_keyboard = ISC_ENTROPY_KEYBOARDMAYBE;
int entropy_flags = 0;
isc_entropy_t *ectx = NULL;
isc_buffer_t key_rawbuffer;
isc_region_t key_rawregion;
char key_rawsecret[64];
dst_key_t *key = NULL;
switch (alg) {
case DST_ALG_HMACMD5:
if (keysize < 1 || keysize > 512)
fatal("keysize %d out of range (must be 1-512)\n",
keysize);
break;
case DST_ALG_HMACSHA256:
if (keysize < 1 || keysize > 256)
fatal("keysize %d out of range (must be 1-256)\n",
keysize);
break;
default:
fatal("unsupported algorithm %d\n", alg);
}
DO("create entropy context", isc_entropy_create(mctx, &ectx));
if (randomfile != NULL && strcmp(randomfile, "keyboard") == 0) {
randomfile = NULL;
open_keyboard = ISC_ENTROPY_KEYBOARDYES;
}
DO("start entropy source", isc_entropy_usebestsource(ectx,
&entropy_source,
randomfile,
open_keyboard));
entropy_flags = ISC_ENTROPY_BLOCKING | ISC_ENTROPY_GOODONLY;
DO("initialize dst library", dst_lib_init(mctx, ectx, entropy_flags));
DO("generate key", dst_key_generate(dns_rootname, alg,
keysize, 0, 0,
DNS_KEYPROTO_ANY,
dns_rdataclass_in, mctx, &key));
isc_buffer_init(&key_rawbuffer, &key_rawsecret, sizeof(key_rawsecret));
DO("dump key to buffer", dst_key_tobuffer(key, &key_rawbuffer));
isc_buffer_usedregion(&key_rawbuffer, &key_rawregion);
DO("bsse64 encode secret", isc_base64_totext(&key_rawregion, -1, "",
key_txtbuffer));
/*
* Shut down the entropy source now so the "stop typing" message
* does not muck with the output.
*/
if (entropy_source != NULL)
isc_entropy_destroysource(&entropy_source);
if (key != NULL)
dst_key_free(&key);
isc_entropy_detach(&ectx);
dst_lib_destroy();
}
/*%
* Write a key file to 'keyfile'. If 'user' is non-NULL,
* make that user the owner of the file. The key will have
* the name 'keyname' and the secret in the buffer 'secret'.
*/
void
write_key_file(const char *keyfile, const char *user,
const char *keyname, isc_buffer_t *secret,
dns_secalg_t alg) {
isc_result_t result;
const char *algname = alg_totext(alg);
FILE *fd = NULL;
DO("create keyfile", isc_file_safecreate(keyfile, &fd));
if (user != NULL) {
if (set_user(fd, user) == -1)
fatal("unable to set file owner\n");
}
fprintf(fd, "key \"%s\" {\n\talgorithm %s;\n"
"\tsecret \"%.*s\";\n};\n",
keyname, algname,
(int)isc_buffer_usedlength(secret),
(char *)isc_buffer_base(secret));
fflush(fd);
if (ferror(fd))
fatal("write to %s failed\n", keyfile);
if (fclose(fd))
fatal("fclose(%s) failed\n", keyfile);
fprintf(stderr, "wrote key file \"%s\"\n", keyfile);
}

41
bin/confgen/keygen.h Normal file
View File

@@ -0,0 +1,41 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: keygen.h,v 1.3 2009/06/11 23:47:55 tbox Exp $ */
#ifndef RNDC_KEYGEN_H
#define RNDC_KEYGEN_H 1
/*! \file */
#include <isc/lang.h>
ISC_LANG_BEGINDECLS
void generate_key(isc_mem_t *mctx, const char *randomfile, dns_secalg_t alg,
int keysize, isc_buffer_t *key_txtbuffer);
void write_key_file(const char *keyfile, const char *user,
const char *keyname, isc_buffer_t *secret,
dns_secalg_t alg);
const char *alg_totext(dns_secalg_t alg);
dns_secalg_t alg_fromtext(const char *name);
int alg_bits(dns_secalg_t alg);
ISC_LANG_ENDDECLS
#endif /* RNDC_KEYGEN_H */

211
bin/confgen/rndc-confgen.8 Normal file
View File

@@ -0,0 +1,211 @@
.\" Copyright (C) 2004, 2005, 2007, 2009 Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (C) 2001, 2003 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
.\" REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
.\" AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
.\" LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id: rndc-confgen.8,v 1.7 2009/07/11 01:12:45 tbox Exp $
.\"
.hy 0
.ad l
.\" Title: rndc\-confgen
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: Aug 27, 2001
.\" Manual: BIND9
.\" Source: BIND9
.\"
.TH "RNDC\-CONFGEN" "8" "Aug 27, 2001" "BIND9" "BIND9"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.SH "NAME"
rndc\-confgen \- rndc key generation tool
.SH "SYNOPSIS"
.HP 13
\fBrndc\-confgen\fR [\fB\-a\fR] [\fB\-b\ \fR\fB\fIkeysize\fR\fR] [\fB\-c\ \fR\fB\fIkeyfile\fR\fR] [\fB\-h\fR] [\fB\-k\ \fR\fB\fIkeyname\fR\fR] [\fB\-p\ \fR\fB\fIport\fR\fR] [\fB\-r\ \fR\fB\fIrandomfile\fR\fR] [\fB\-s\ \fR\fB\fIaddress\fR\fR] [\fB\-t\ \fR\fB\fIchrootdir\fR\fR] [\fB\-u\ \fR\fB\fIuser\fR\fR]
.SH "DESCRIPTION"
.PP
\fBrndc\-confgen\fR
generates configuration files for
\fBrndc\fR. It can be used as a convenient alternative to writing the
\fIrndc.conf\fR
file and the corresponding
\fBcontrols\fR
and
\fBkey\fR
statements in
\fInamed.conf\fR
by hand. Alternatively, it can be run with the
\fB\-a\fR
option to set up a
\fIrndc.key\fR
file and avoid the need for a
\fIrndc.conf\fR
file and a
\fBcontrols\fR
statement altogether.
.SH "OPTIONS"
.PP
\-a
.RS 4
Do automatic
\fBrndc\fR
configuration. This creates a file
\fIrndc.key\fR
in
\fI/etc\fR
(or whatever
\fIsysconfdir\fR
was specified as when
BIND
was built) that is read by both
\fBrndc\fR
and
\fBnamed\fR
on startup. The
\fIrndc.key\fR
file defines a default command channel and authentication key allowing
\fBrndc\fR
to communicate with
\fBnamed\fR
on the local host with no further configuration.
.sp
Running
\fBrndc\-confgen \-a\fR
allows BIND 9 and
\fBrndc\fR
to be used as drop\-in replacements for BIND 8 and
\fBndc\fR, with no changes to the existing BIND 8
\fInamed.conf\fR
file.
.sp
If a more elaborate configuration than that generated by
\fBrndc\-confgen \-a\fR
is required, for example if rndc is to be used remotely, you should run
\fBrndc\-confgen\fR
without the
\fB\-a\fR
option and set up a
\fIrndc.conf\fR
and
\fInamed.conf\fR
as directed.
.RE
.PP
\-b \fIkeysize\fR
.RS 4
Specifies the size of the authentication key in bits. Must be between 1 and 512 bits; the default is 128.
.RE
.PP
\-c \fIkeyfile\fR
.RS 4
Used with the
\fB\-a\fR
option to specify an alternate location for
\fIrndc.key\fR.
.RE
.PP
\-h
.RS 4
Prints a short summary of the options and arguments to
\fBrndc\-confgen\fR.
.RE
.PP
\-k \fIkeyname\fR
.RS 4
Specifies the key name of the rndc authentication key. This must be a valid domain name. The default is
\fBrndc\-key\fR.
.RE
.PP
\-p \fIport\fR
.RS 4
Specifies the command channel port where
\fBnamed\fR
listens for connections from
\fBrndc\fR. The default is 953.
.RE
.PP
\-r \fIrandomfile\fR
.RS 4
Specifies a source of random data for generating the authorization. If the operating system does not provide a
\fI/dev/random\fR
or equivalent device, the default source of randomness is keyboard input.
\fIrandomdev\fR
specifies the name of a character device or file containing random data to be used instead of the default. The special value
\fIkeyboard\fR
indicates that keyboard input should be used.
.RE
.PP
\-s \fIaddress\fR
.RS 4
Specifies the IP address where
\fBnamed\fR
listens for command channel connections from
\fBrndc\fR. The default is the loopback address 127.0.0.1.
.RE
.PP
\-t \fIchrootdir\fR
.RS 4
Used with the
\fB\-a\fR
option to specify a directory where
\fBnamed\fR
will run chrooted. An additional copy of the
\fIrndc.key\fR
will be written relative to this directory so that it will be found by the chrooted
\fBnamed\fR.
.RE
.PP
\-u \fIuser\fR
.RS 4
Used with the
\fB\-a\fR
option to set the owner of the
\fIrndc.key\fR
file generated. If
\fB\-t\fR
is also specified only the file in the chroot area has its owner changed.
.RE
.SH "EXAMPLES"
.PP
To allow
\fBrndc\fR
to be used with no manual configuration, run
.PP
\fBrndc\-confgen \-a\fR
.PP
To print a sample
\fIrndc.conf\fR
file and corresponding
\fBcontrols\fR
and
\fBkey\fR
statements to be manually inserted into
\fInamed.conf\fR, run
.PP
\fBrndc\-confgen\fR
.SH "SEE ALSO"
.PP
\fBrndc\fR(8),
\fBrndc.conf\fR(5),
\fBnamed\fR(8),
BIND 9 Administrator Reference Manual.
.SH "AUTHOR"
.PP
Internet Systems Consortium
.SH "COPYRIGHT"
Copyright \(co 2004, 2005, 2007, 2009 Internet Systems Consortium, Inc. ("ISC")
.br
Copyright \(co 2001, 2003 Internet Software Consortium.
.br

271
bin/confgen/rndc-confgen.c Normal file
View File

@@ -0,0 +1,271 @@
/*
* 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
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: rndc-confgen.c,v 1.5.66.2 2011/03/12 04:58:23 tbox Exp $ */
/*! \file */
/**
* rndc-confgen generates configuration files for rndc. It can be used
* as a convenient alternative to writing the rndc.conf file and the
* corresponding controls and key statements in named.conf by hand.
* Alternatively, it can be run with the -a option to set up a
* rndc.key file and avoid the need for a rndc.conf file and a
* controls statement altogether.
*/
#include <config.h>
#include <stdlib.h>
#include <stdarg.h>
#include <isc/assertions.h>
#include <isc/base64.h>
#include <isc/buffer.h>
#include <isc/commandline.h>
#include <isc/entropy.h>
#include <isc/file.h>
#include <isc/keyboard.h>
#include <isc/mem.h>
#include <isc/net.h>
#include <isc/print.h>
#include <isc/result.h>
#include <isc/string.h>
#include <isc/time.h>
#include <isc/util.h>
#include <dns/keyvalues.h>
#include <dns/name.h>
#include <dst/dst.h>
#include <confgen/os.h>
#include "util.h"
#include "keygen.h"
#define DEFAULT_KEYLENGTH 128 /*% Bits. */
#define DEFAULT_KEYNAME "rndc-key"
#define DEFAULT_SERVER "127.0.0.1"
#define DEFAULT_PORT 953
static char program[256];
const char *progname;
isc_boolean_t verbose = ISC_FALSE;
const char *keyfile, *keydef;
ISC_PLATFORM_NORETURN_PRE static void
usage(int status) ISC_PLATFORM_NORETURN_POST;
static void
usage(int status) {
fprintf(stderr, "\
Usage:\n\
%s [-a] [-b bits] [-c keyfile] [-k keyname] [-p port] [-r randomfile] \
[-s addr] [-t chrootdir] [-u user]\n\
-a: generate just the key clause and write it to keyfile (%s)\n\
-b bits: from 1 through 512, default %d; total length of the secret\n\
-c keyfile: specify an alternate key file (requires -a)\n\
-k keyname: the name as it will be used in named.conf and rndc.conf\n\
-p port: the port named will listen on and rndc will connect to\n\
-r randomfile: source of random data (use \"keyboard\" for key timing)\n\
-s addr: the address to which rndc should connect\n\
-t chrootdir: write a keyfile in chrootdir as well (requires -a)\n\
-u user: set the keyfile owner to \"user\" (requires -a)\n",
progname, keydef, DEFAULT_KEYLENGTH);
exit (status);
}
int
main(int argc, char **argv) {
isc_boolean_t show_final_mem = ISC_FALSE;
isc_buffer_t key_txtbuffer;
char key_txtsecret[256];
isc_mem_t *mctx = NULL;
isc_result_t result = ISC_R_SUCCESS;
const char *keyname = NULL;
const char *randomfile = NULL;
const char *serveraddr = NULL;
dns_secalg_t alg = DST_ALG_HMACMD5;
const char *algname = alg_totext(alg);
char *p;
int ch;
int port;
int keysize;
struct in_addr addr4_dummy;
struct in6_addr addr6_dummy;
char *chrootdir = NULL;
char *user = NULL;
isc_boolean_t keyonly = ISC_FALSE;
int len;
keydef = keyfile = RNDC_KEYFILE;
result = isc_file_progname(*argv, program, sizeof(program));
if (result != ISC_R_SUCCESS)
memcpy(program, "rndc-confgen", 13);
progname = program;
keyname = DEFAULT_KEYNAME;
keysize = DEFAULT_KEYLENGTH;
serveraddr = DEFAULT_SERVER;
port = DEFAULT_PORT;
isc_commandline_errprint = ISC_FALSE;
while ((ch = isc_commandline_parse(argc, argv,
"ab:c:hk:Mmp:r:s:t:u:Vy")) != -1) {
switch (ch) {
case 'a':
keyonly = ISC_TRUE;
break;
case 'b':
keysize = strtol(isc_commandline_argument, &p, 10);
if (*p != '\0' || keysize < 0)
fatal("-b requires a non-negative number");
if (keysize < 1 || keysize > 512)
fatal("-b must be in the range 1 through 512");
break;
case 'c':
keyfile = isc_commandline_argument;
break;
case 'h':
usage(0);
case 'k':
case 'y': /* Compatible with rndc -y. */
keyname = isc_commandline_argument;
break;
case 'M':
isc_mem_debugging = ISC_MEM_DEBUGTRACE;
break;
case 'm':
show_final_mem = ISC_TRUE;
break;
case 'p':
port = strtol(isc_commandline_argument, &p, 10);
if (*p != '\0' || port < 0 || port > 65535)
fatal("port '%s' out of range",
isc_commandline_argument);
break;
case 'r':
randomfile = isc_commandline_argument;
break;
case 's':
serveraddr = isc_commandline_argument;
if (inet_pton(AF_INET, serveraddr, &addr4_dummy) != 1 &&
inet_pton(AF_INET6, serveraddr, &addr6_dummy) != 1)
fatal("-s should be an IPv4 or IPv6 address");
break;
case 't':
chrootdir = isc_commandline_argument;
break;
case 'u':
user = isc_commandline_argument;
break;
case 'V':
verbose = ISC_TRUE;
break;
case '?':
if (isc_commandline_option != '?') {
fprintf(stderr, "%s: invalid argument -%c\n",
program, isc_commandline_option);
usage(1);
} else
usage(0);
break;
default:
fprintf(stderr, "%s: unhandled option -%c\n",
program, isc_commandline_option);
exit(1);
}
}
argc -= isc_commandline_index;
argv += isc_commandline_index;
POST(argv);
if (argc > 0)
usage(1);
DO("create memory context", isc_mem_create(0, 0, &mctx));
isc_buffer_init(&key_txtbuffer, &key_txtsecret, sizeof(key_txtsecret));
generate_key(mctx, randomfile, alg, keysize, &key_txtbuffer);
if (keyonly) {
write_key_file(keyfile, chrootdir == NULL ? user : NULL,
keyname, &key_txtbuffer, alg);
if (chrootdir != NULL) {
char *buf;
len = strlen(chrootdir) + strlen(keyfile) + 2;
buf = isc_mem_get(mctx, len);
if (buf == NULL)
fatal("isc_mem_get(%d) failed\n", len);
snprintf(buf, len, "%s%s%s", chrootdir,
(*keyfile != '/') ? "/" : "", keyfile);
write_key_file(buf, user, keyname, &key_txtbuffer, alg);
isc_mem_put(mctx, buf, len);
}
} else {
printf("\
# Start of rndc.conf\n\
key \"%s\" {\n\
algorithm %s;\n\
secret \"%.*s\";\n\
};\n\
\n\
options {\n\
default-key \"%s\";\n\
default-server %s;\n\
default-port %d;\n\
};\n\
# End of rndc.conf\n\
\n\
# Use with the following in named.conf, adjusting the allow list as needed:\n\
# key \"%s\" {\n\
# algorithm %s;\n\
# secret \"%.*s\";\n\
# };\n\
# \n\
# controls {\n\
# inet %s port %d\n\
# allow { %s; } keys { \"%s\"; };\n\
# };\n\
# End of named.conf\n",
keyname, algname,
(int)isc_buffer_usedlength(&key_txtbuffer),
(char *)isc_buffer_base(&key_txtbuffer),
keyname, serveraddr, port,
keyname, algname,
(int)isc_buffer_usedlength(&key_txtbuffer),
(char *)isc_buffer_base(&key_txtbuffer),
serveraddr, port, serveraddr, keyname);
}
if (show_final_mem)
isc_mem_stats(mctx, stderr);
isc_mem_destroy(&mctx);
return (0);
}

View File

@@ -0,0 +1,287 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2004, 2005, 2007, 2009 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2001, 2003 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: rndc-confgen.docbook,v 1.4 2009/06/15 23:47:59 tbox Exp $ -->
<refentry id="man.rndc-confgen">
<refentryinfo>
<date>Aug 27, 2001</date>
</refentryinfo>
<refmeta>
<refentrytitle><application>rndc-confgen</application></refentrytitle>
<manvolnum>8</manvolnum>
<refmiscinfo>BIND9</refmiscinfo>
</refmeta>
<refnamediv>
<refname><application>rndc-confgen</application></refname>
<refpurpose>rndc key generation tool</refpurpose>
</refnamediv>
<docinfo>
<copyright>
<year>2004</year>
<year>2005</year>
<year>2007</year>
<year>2009</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
<copyright>
<year>2001</year>
<year>2003</year>
<holder>Internet Software Consortium.</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<command>rndc-confgen</command>
<arg><option>-a</option></arg>
<arg><option>-b <replaceable class="parameter">keysize</replaceable></option></arg>
<arg><option>-c <replaceable class="parameter">keyfile</replaceable></option></arg>
<arg><option>-h</option></arg>
<arg><option>-k <replaceable class="parameter">keyname</replaceable></option></arg>
<arg><option>-p <replaceable class="parameter">port</replaceable></option></arg>
<arg><option>-r <replaceable class="parameter">randomfile</replaceable></option></arg>
<arg><option>-s <replaceable class="parameter">address</replaceable></option></arg>
<arg><option>-t <replaceable class="parameter">chrootdir</replaceable></option></arg>
<arg><option>-u <replaceable class="parameter">user</replaceable></option></arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<para><command>rndc-confgen</command>
generates configuration files
for <command>rndc</command>. It can be used as a
convenient alternative to writing the
<filename>rndc.conf</filename> file
and the corresponding <command>controls</command>
and <command>key</command>
statements in <filename>named.conf</filename> by hand.
Alternatively, it can be run with the <command>-a</command>
option to set up a <filename>rndc.key</filename> file and
avoid the need for a <filename>rndc.conf</filename> file
and a <command>controls</command> statement altogether.
</para>
</refsect1>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
<term>-a</term>
<listitem>
<para>
Do automatic <command>rndc</command> configuration.
This creates a file <filename>rndc.key</filename>
in <filename>/etc</filename> (or whatever
<varname>sysconfdir</varname>
was specified as when <acronym>BIND</acronym> was
built)
that is read by both <command>rndc</command>
and <command>named</command> on startup. The
<filename>rndc.key</filename> file defines a default
command channel and authentication key allowing
<command>rndc</command> to communicate with
<command>named</command> on the local host
with no further configuration.
</para>
<para>
Running <command>rndc-confgen -a</command> allows
BIND 9 and <command>rndc</command> to be used as
drop-in
replacements for BIND 8 and <command>ndc</command>,
with no changes to the existing BIND 8
<filename>named.conf</filename> file.
</para>
<para>
If a more elaborate configuration than that
generated by <command>rndc-confgen -a</command>
is required, for example if rndc is to be used remotely,
you should run <command>rndc-confgen</command> without
the
<command>-a</command> option and set up a
<filename>rndc.conf</filename> and
<filename>named.conf</filename>
as directed.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-b <replaceable class="parameter">keysize</replaceable></term>
<listitem>
<para>
Specifies the size of the authentication key in bits.
Must be between 1 and 512 bits; the default is 128.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-c <replaceable class="parameter">keyfile</replaceable></term>
<listitem>
<para>
Used with the <command>-a</command> option to specify
an alternate location for <filename>rndc.key</filename>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-h</term>
<listitem>
<para>
Prints a short summary of the options and arguments to
<command>rndc-confgen</command>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-k <replaceable class="parameter">keyname</replaceable></term>
<listitem>
<para>
Specifies the key name of the rndc authentication key.
This must be a valid domain name.
The default is <constant>rndc-key</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-p <replaceable class="parameter">port</replaceable></term>
<listitem>
<para>
Specifies the command channel port where <command>named</command>
listens for connections from <command>rndc</command>.
The default is 953.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-r <replaceable class="parameter">randomfile</replaceable></term>
<listitem>
<para>
Specifies a source of random data for generating the
authorization. If the operating
system does not provide a <filename>/dev/random</filename>
or equivalent device, the default source of randomness
is keyboard input. <filename>randomdev</filename>
specifies
the name of a character device or file containing random
data to be used instead of the default. The special value
<filename>keyboard</filename> indicates that keyboard
input should be used.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-s <replaceable class="parameter">address</replaceable></term>
<listitem>
<para>
Specifies the IP address where <command>named</command>
listens for command channel connections from
<command>rndc</command>. The default is the loopback
address 127.0.0.1.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-t <replaceable class="parameter">chrootdir</replaceable></term>
<listitem>
<para>
Used with the <command>-a</command> option to specify
a directory where <command>named</command> will run
chrooted. An additional copy of the <filename>rndc.key</filename>
will be written relative to this directory so that
it will be found by the chrooted <command>named</command>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-u <replaceable class="parameter">user</replaceable></term>
<listitem>
<para>
Used with the <command>-a</command> option to set the
owner
of the <filename>rndc.key</filename> file generated.
If
<command>-t</command> is also specified only the file
in
the chroot area has its owner changed.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>EXAMPLES</title>
<para>
To allow <command>rndc</command> to be used with
no manual configuration, run
</para>
<para><userinput>rndc-confgen -a</userinput>
</para>
<para>
To print a sample <filename>rndc.conf</filename> file and
corresponding <command>controls</command> and <command>key</command>
statements to be manually inserted into <filename>named.conf</filename>,
run
</para>
<para><userinput>rndc-confgen</userinput>
</para>
</refsect1>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>rndc</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
<citerefentry>
<refentrytitle>rndc.conf</refentrytitle><manvolnum>5</manvolnum>
</citerefentry>,
<citerefentry>
<refentrytitle>named</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
<citetitle>BIND 9 Administrator Reference Manual</citetitle>.
</para>
</refsect1>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->

View File

@@ -0,0 +1,188 @@
<!--
- Copyright (C) 2004, 2005, 2007, 2009 Internet Systems Consortium, Inc. ("ISC")
- Copyright (C) 2001, 2003 Internet Software Consortium.
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: rndc-confgen.html,v 1.7 2009/07/11 01:12:45 tbox Exp $ -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>rndc-confgen</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<a name="man.rndc-confgen"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">rndc-confgen</span> &#8212; rndc key generation tool</p>
</div>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">rndc-confgen</code> [<code class="option">-a</code>] [<code class="option">-b <em class="replaceable"><code>keysize</code></em></code>] [<code class="option">-c <em class="replaceable"><code>keyfile</code></em></code>] [<code class="option">-h</code>] [<code class="option">-k <em class="replaceable"><code>keyname</code></em></code>] [<code class="option">-p <em class="replaceable"><code>port</code></em></code>] [<code class="option">-r <em class="replaceable"><code>randomfile</code></em></code>] [<code class="option">-s <em class="replaceable"><code>address</code></em></code>] [<code class="option">-t <em class="replaceable"><code>chrootdir</code></em></code>] [<code class="option">-u <em class="replaceable"><code>user</code></em></code>]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543432"></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
convenient alternative to writing the
<code class="filename">rndc.conf</code> file
and the corresponding <span><strong class="command">controls</strong></span>
and <span><strong class="command">key</strong></span>
statements in <code class="filename">named.conf</code> by hand.
Alternatively, it can be run with the <span><strong class="command">-a</strong></span>
option to set up a <code class="filename">rndc.key</code> file and
avoid the need for a <code class="filename">rndc.conf</code> file
and a <span><strong class="command">controls</strong></span> statement altogether.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543477"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
<dt><span class="term">-a</span></dt>
<dd>
<p>
Do automatic <span><strong class="command">rndc</strong></span> configuration.
This creates a file <code class="filename">rndc.key</code>
in <code class="filename">/etc</code> (or whatever
<code class="varname">sysconfdir</code>
was specified as when <acronym class="acronym">BIND</acronym> was
built)
that is read by both <span><strong class="command">rndc</strong></span>
and <span><strong class="command">named</strong></span> on startup. The
<code class="filename">rndc.key</code> file defines a default
command channel and authentication key allowing
<span><strong class="command">rndc</strong></span> to communicate with
<span><strong class="command">named</strong></span> on the local host
with no further configuration.
</p>
<p>
Running <span><strong class="command">rndc-confgen -a</strong></span> allows
BIND 9 and <span><strong class="command">rndc</strong></span> to be used as
drop-in
replacements for BIND 8 and <span><strong class="command">ndc</strong></span>,
with no changes to the existing BIND 8
<code class="filename">named.conf</code> file.
</p>
<p>
If a more elaborate configuration than that
generated by <span><strong class="command">rndc-confgen -a</strong></span>
is required, for example if rndc is to be used remotely,
you should run <span><strong class="command">rndc-confgen</strong></span> without
the
<span><strong class="command">-a</strong></span> option and set up a
<code class="filename">rndc.conf</code> and
<code class="filename">named.conf</code>
as directed.
</p>
</dd>
<dt><span class="term">-b <em class="replaceable"><code>keysize</code></em></span></dt>
<dd><p>
Specifies the size of the authentication key in bits.
Must be between 1 and 512 bits; the default is 128.
</p></dd>
<dt><span class="term">-c <em class="replaceable"><code>keyfile</code></em></span></dt>
<dd><p>
Used with the <span><strong class="command">-a</strong></span> option to specify
an alternate location for <code class="filename">rndc.key</code>.
</p></dd>
<dt><span class="term">-h</span></dt>
<dd><p>
Prints a short summary of the options and arguments to
<span><strong class="command">rndc-confgen</strong></span>.
</p></dd>
<dt><span class="term">-k <em class="replaceable"><code>keyname</code></em></span></dt>
<dd><p>
Specifies the key name of the rndc authentication key.
This must be a valid domain name.
The default is <code class="constant">rndc-key</code>.
</p></dd>
<dt><span class="term">-p <em class="replaceable"><code>port</code></em></span></dt>
<dd><p>
Specifies the command channel port where <span><strong class="command">named</strong></span>
listens for connections from <span><strong class="command">rndc</strong></span>.
The default is 953.
</p></dd>
<dt><span class="term">-r <em class="replaceable"><code>randomfile</code></em></span></dt>
<dd><p>
Specifies a source of random data for generating the
authorization. If the operating
system does not provide a <code class="filename">/dev/random</code>
or equivalent device, the default source of randomness
is keyboard input. <code class="filename">randomdev</code>
specifies
the name of a character device or file containing random
data to be used instead of the default. The special value
<code class="filename">keyboard</code> indicates that keyboard
input should be used.
</p></dd>
<dt><span class="term">-s <em class="replaceable"><code>address</code></em></span></dt>
<dd><p>
Specifies the IP address where <span><strong class="command">named</strong></span>
listens for command channel connections from
<span><strong class="command">rndc</strong></span>. The default is the loopback
address 127.0.0.1.
</p></dd>
<dt><span class="term">-t <em class="replaceable"><code>chrootdir</code></em></span></dt>
<dd><p>
Used with the <span><strong class="command">-a</strong></span> option to specify
a directory where <span><strong class="command">named</strong></span> will run
chrooted. An additional copy of the <code class="filename">rndc.key</code>
will be written relative to this directory so that
it will be found by the chrooted <span><strong class="command">named</strong></span>.
</p></dd>
<dt><span class="term">-u <em class="replaceable"><code>user</code></em></span></dt>
<dd><p>
Used with the <span><strong class="command">-a</strong></span> option to set the
owner
of the <code class="filename">rndc.key</code> file generated.
If
<span><strong class="command">-t</strong></span> is also specified only the file
in
the chroot area has its owner changed.
</p></dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543790"></a><h2>EXAMPLES</h2>
<p>
To allow <span><strong class="command">rndc</strong></span> to be used with
no manual configuration, run
</p>
<p><strong class="userinput"><code>rndc-confgen -a</code></strong>
</p>
<p>
To print a sample <code class="filename">rndc.conf</code> file and
corresponding <span><strong class="command">controls</strong></span> and <span><strong class="command">key</strong></span>
statements to be manually inserted into <code class="filename">named.conf</code>,
run
</p>
<p><strong class="userinput"><code>rndc-confgen</code></strong>
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543832"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">rndc</span>(8)</span>,
<span class="citerefentry"><span class="refentrytitle">rndc.conf</span>(5)</span>,
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543870"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div></body>
</html>

View File

@@ -0,0 +1 @@
Makefile

View File

@@ -0,0 +1,35 @@
# Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# $Id: Makefile.in,v 1.3 2009/06/11 23:47:55 tbox Exp $
srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
@BIND9_MAKE_INCLUDES@
CINCLUDES = -I${srcdir}/include -I${srcdir}/../include \
${DNS_INCLUDES} ${ISC_INCLUDES}
CDEFINES =
CWARNINGS =
OBJS = os.@O@
SRCS = os.c
TARGETS = ${OBJS}
@BIND9_MAKE_RULES@

43
bin/confgen/unix/os.c Normal file
View File

@@ -0,0 +1,43 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: os.c,v 1.3 2009/06/11 23:47:55 tbox Exp $ */
/*! \file */
#include <config.h>
#include <confgen/os.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/types.h>
#include <pwd.h>
#include <errno.h>
#include <stdio.h>
#include <sys/stat.h>
int
set_user(FILE *fd, const char *user) {
struct passwd *pw;
pw = getpwnam(user);
if (pw == NULL) {
errno = EINVAL;
return (-1);
}
return (fchown(fileno(fd), pw->pw_uid, -1));
}

56
bin/confgen/util.c Normal file
View File

@@ -0,0 +1,56 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: util.c,v 1.3 2009/06/11 23:47:55 tbox Exp $ */
/*! \file */
#include <config.h>
#include <stdarg.h>
#include <stdlib.h>
#include <stdio.h>
#include <isc/boolean.h>
#include "util.h"
extern isc_boolean_t verbose;
extern const char *progname;
void
notify(const char *fmt, ...) {
va_list ap;
if (verbose) {
va_start(ap, fmt);
vfprintf(stderr, fmt, ap);
va_end(ap);
fputs("\n", stderr);
}
}
void
fatal(const char *format, ...) {
va_list args;
fprintf(stderr, "%s: ", progname);
va_start(args, format);
vfprintf(stderr, format, args);
va_end(args);
fprintf(stderr, "\n");
exit(1);
}

52
bin/confgen/util.h Normal file
View File

@@ -0,0 +1,52 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: util.h,v 1.4 2009/09/29 15:06:05 fdupont Exp $ */
#ifndef RNDC_UTIL_H
#define RNDC_UTIL_H 1
/*! \file */
#include <isc/lang.h>
#include <isc/platform.h>
#include <isc/formatcheck.h>
#define NS_CONTROL_PORT 953
#undef DO
#define DO(name, function) \
do { \
result = function; \
if (result != ISC_R_SUCCESS) \
fatal("%s: %s", name, isc_result_totext(result)); \
else \
notify("%s", name); \
} while (0)
ISC_LANG_BEGINDECLS
void
notify(const char *fmt, ...) ISC_FORMAT_PRINTF(1, 2);
ISC_PLATFORM_NORETURN_PRE void
fatal(const char *format, ...)
ISC_FORMAT_PRINTF(1, 2) ISC_PLATFORM_NORETURN_POST;
ISC_LANG_ENDDECLS
#endif /* RNDC_UTIL_H */

View File

@@ -0,0 +1,135 @@
# Microsoft Developer Studio Project File - Name="confgentool" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Static-Link Library" 0x0104
CFG=confgentool - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "confgentool.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "confgentool.mak" CFG="confgentool - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "confgentool - Win32 Release" (based on "Win32 (x86) Static-Link Library")
!MESSAGE "confgentool - Win32 Debug" (based on "Win32 (x86) Static-Link Library")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
MTL=midl.exe
RSC=rc.exe
!IF "$(CFG)" == "confgentool - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/dns/include" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "__STDC__" /D "_MBCS" /YX /FD /c /Fdconfgentool
# SUBTRACT CPP /X
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32
# ADD LINK32 /out:"Release/confgentool.lib"
LIB32=lib.exe
# ADD BASE LIB32
# ADD LIB32 /out:"Release/confgentool.lib"
!ELSEIF "$(CFG)" == "confgentool - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/dns/include" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "__STDC__" /D "_MBCS" /FR /YX /FD /GZ /c /Fdconfgentool
# SUBTRACT CPP /X
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32
# ADD LINK32 /debug /out:"Debug/confgentool.lib"
LIB32=lib.exe
# ADD BASE LIB32
# ADD LIB32 /out:"Debug/confgentool.lib"
!ENDIF
# Begin Target
# Name "confgentool - Win32 Release"
# Name "confgentool - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=..\keygen.h
# End Source File
# Begin Source File
SOURCE=..\util.h
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# Begin Group "Main Dns Lib"
# PROP Default_Filter "c"
# Begin Source File
SOURCE=..\keygen.c
# End Source File
# Begin Source File
SOURCE=..\util.c
# End Source File
# Begin Source File
SOURCE=.\os.c
# End Source File
# End Group
# End Target
# End Project

View File

@@ -0,0 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "confgentool"=".\confgentool.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View File

@@ -0,0 +1,103 @@
# Microsoft Developer Studio Project File - Name="ddnsconfgen" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=ddnsconfgen - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "ddnsconfgen.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "ddnsconfgen.mak" CFG="ddnsconfgen - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "ddnsconfgen - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "ddnsconfgen - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "ddnsconfgen - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/win32/include" /I "../../../lib/dns/include" /I "../../../lib/isccc/include" /I "../../../lib/isccfg/include" /D "WIN32" /D "NDEBUG" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib Release/confgentool.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib ../../../lib/isccfg/win32/Release/libisccfg.lib ../../../lib/isccc/win32/Release/libisccc.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/ddns-confgen.exe"
!ELSEIF "$(CFG)" == "ddnsconfgen - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/win32/include" /I "../../../lib/dns/include" /I "../../../lib/isccc/include" /I "../../../lib/isccfg/include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR /FD /GZ /c
# SUBTRACT CPP /X /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib Debug/confgentool.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib ../../../lib/isccfg/win32/Debug/libisccfg.lib ../../../lib/isccc/win32/Debug/libisccc.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/ddns-confgen.exe" /pdbtype:sept
!ENDIF
# Begin Target
# Name "ddnsconfgen - Win32 Release"
# Name "ddnsconfgen - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE="..\ddns-confgen.c"
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project

View File

@@ -0,0 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "ddnsconfgen"=".\ddnsconfgen.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View File

@@ -0,0 +1,337 @@
# Microsoft Developer Studio Generated NMAKE File, Based on ddnsconfgen.dsp
!IF "$(CFG)" == ""
CFG=ddnsconfgen - Win32 Debug
!MESSAGE No configuration specified. Defaulting to ddnsconfgen - Win32 Debug.
!ENDIF
!IF "$(CFG)" != "ddnsconfgen - Win32 Release" && "$(CFG)" != "ddnsconfgen - Win32 Debug"
!MESSAGE Invalid configuration "$(CFG)" specified.
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "ddnsconfgen.mak" CFG="ddnsconfgen - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "ddnsconfgen - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "ddnsconfgen - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
!ERROR An invalid configuration is specified.
!ENDIF
!IF "$(OS)" == "Windows_NT"
NULL=
!ELSE
NULL=nul
!ENDIF
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "ddnsconfgen - Win32 Release"
_VC_MANIFEST_INC=0
_VC_MANIFEST_BASENAME=__VC80
!ELSE
_VC_MANIFEST_INC=1
_VC_MANIFEST_BASENAME=__VC80.Debug
!ENDIF
####################################################
# Specifying name of temporary resource file used only in incremental builds:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
!else
_VC_MANIFEST_AUTO_RES=
!endif
####################################################
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
!endif
####################################################
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
!endif
####################################################
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
$(_VC_MANIFEST_BASENAME).auto.rc \
$(_VC_MANIFEST_BASENAME).auto.manifest
!else
_VC_MANIFEST_CLEAN=
!endif
!IF "$(CFG)" == "ddnsconfgen - Win32 Release"
OUTDIR=.\Release
INTDIR=.\Release
ALL : "..\..\..\Build\Release\ddns-confgen.exe"
CLEAN :
-@erase "$(INTDIR)\os.obj"
-@erase "$(INTDIR)\ddns-confgen.obj"
-@erase "$(INTDIR)\keygen.obj"
-@erase "$(INTDIR)\util.obj"
-@erase "$(INTDIR)\vc60.idb"
-@erase "..\..\..\Build\Release\ddns-confgen.exe"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP_PROJ=/nologo /MD /W3 /GX /O2 /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/win32/include" /I "../../../lib/dns/include" /I "../../../lib/isccc/include" /I "../../../lib/isccfg/include" /D "WIN32" /D "NDEBUG" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /Fp"$(INTDIR)\ddnsconfgen.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\ddnsconfgen.bsc"
BSC32_SBRS= \
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib ws2_32.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib ../../../lib/isccfg/win32/Release/libisccfg.lib ../../../lib/isccc/win32/Release/libisccc.lib /nologo /subsystem:console /incremental:no /pdb:"$(OUTDIR)\ddns-confgen.pdb" /machine:I386 /out:"../../../Build/Release/ddns-confgen.exe"
LINK32_OBJS= \
"$(INTDIR)\os.obj" \
"$(INTDIR)\ddns-confgen.obj" \
"$(INTDIR)\keygen.obj" \
"$(INTDIR)\util.obj"
"..\..\..\Build\Release\ddns-confgen.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ELSEIF "$(CFG)" == "ddnsconfgen - Win32 Debug"
OUTDIR=.\Debug
INTDIR=.\Debug
# Begin Custom Macros
OutDir=.\Debug
# End Custom Macros
ALL : "..\..\..\Build\Debug\ddns-confgen.exe" "$(OUTDIR)\ddnsconfgen.bsc"
CLEAN :
-@erase "$(INTDIR)\os.obj"
-@erase "$(INTDIR)\os.sbr"
-@erase "$(INTDIR)\ddns-confgen.obj"
-@erase "$(INTDIR)\ddns-confgen.sbr"
-@erase "$(INTDIR)\keygen.obj"
-@erase "$(INTDIR)\keygen.sbr"
-@erase "$(INTDIR)\util.obj"
-@erase "$(INTDIR)\util.sbr"
-@erase "$(INTDIR)\vc60.idb"
-@erase "$(INTDIR)\vc60.pdb"
-@erase "$(OUTDIR)\ddnsconfgen.bsc"
-@erase "$(OUTDIR)\ddns-confgen.pdb"
-@erase "..\..\..\Build\Debug\ddns-confgen.exe"
-@erase "..\..\..\Build\Debug\ddns-confgen.ilk"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP_PROJ=/nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/win32/include" /I "../../../lib/dns/include" /I "../../../lib/isccc/include" /I "../../../lib/isccfg/include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR"$(INTDIR)\\" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\ddnsconfgen.bsc"
BSC32_SBRS= \
"$(INTDIR)\os.sbr" \
"$(INTDIR)\ddns-confgen.sbr" \
"$(INTDIR)\keygen.sbr" \
"$(INTDIR)\util.sbr"
"$(OUTDIR)\ddnsconfgen.bsc" : "$(OUTDIR)" $(BSC32_SBRS)
$(BSC32) @<<
$(BSC32_FLAGS) $(BSC32_SBRS)
<<
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib ws2_32.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib ../../../lib/isccfg/win32/Debug/libisccfg.lib ../../../lib/isccc/win32/Debug/libisccc.lib /nologo /subsystem:console /incremental:yes /pdb:"$(OUTDIR)\ddns-confgen.pdb" /debug /machine:I386 /out:"../../../Build/Debug/ddns-confgen.exe" /pdbtype:sept
LINK32_OBJS= \
"$(INTDIR)\os.obj" \
"$(INTDIR)\ddns-confgen.obj" \
"$(INTDIR)\keygen.obj" \
"$(INTDIR)\util.obj"
"..\..\..\Build\Debug\ddns-confgen.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ENDIF
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
!IF "$(NO_EXTERNAL_DEPS)" != "1"
!IF EXISTS("ddnsconfgen.dep")
!INCLUDE "ddnsconfgen.dep"
!ELSE
!MESSAGE Warning: cannot find "ddnsconfgen.dep"
!ENDIF
!ENDIF
!IF "$(CFG)" == "ddnsconfgen - Win32 Release" || "$(CFG)" == "ddnsconfgen - Win32 Debug"
SOURCE=.\os.c
!IF "$(CFG)" == "ddnsconfgen - Win32 Release"
"$(INTDIR)\os.obj" : $(SOURCE) "$(INTDIR)"
!ELSEIF "$(CFG)" == "ddnsconfgen - Win32 Debug"
"$(INTDIR)\os.obj" "$(INTDIR)\os.sbr" : $(SOURCE) "$(INTDIR)"
!ENDIF
SOURCE="..\ddns-confgen.c"
!IF "$(CFG)" == "ddnsconfgen - Win32 Release"
"$(INTDIR)\ddns-confgen.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "ddnsconfgen - Win32 Debug"
"$(INTDIR)\ddns-confgen.obj" "$(INTDIR)\ddns-confgen.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
SOURCE=..\keygen.c
!IF "$(CFG)" == "ddnsconfgen - Win32 Release"
"$(INTDIR)\keygen.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "ddnsconfgen - Win32 Debug"
"$(INTDIR)\keygen.obj" "$(INTDIR)\keygen.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
SOURCE=..\util.c
!IF "$(CFG)" == "ddnsconfgen - Win32 Release"
"$(INTDIR)\util.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "ddnsconfgen - Win32 Debug"
"$(INTDIR)\util.obj" "$(INTDIR)\util.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
!ENDIF
####################################################
# Commands to generate initial empty manifest file and the RC file
# that references it, and for generating the .res file:
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
type <<$@
#include <winuser.h>
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
<< KEEP
$(_VC_MANIFEST_BASENAME).auto.manifest :
type <<$@
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
</assembly>
<< KEEP

34
bin/confgen/win32/os.c Normal file
View File

@@ -0,0 +1,34 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: os.c,v 1.3 2009/06/11 23:47:55 tbox Exp $ */
#include <config.h>
#include <confgen/os.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/types.h>
#include <errno.h>
#include <stdio.h>
#include <io.h>
#include <sys/stat.h>
int
set_user(FILE *fd, const char *user) {
return (0);
}

View File

@@ -0,0 +1,103 @@
# Microsoft Developer Studio Project File - Name="rndcconfgen" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=rndcconfgen - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "rndcconfgen.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "rndcconfgen.mak" CFG="rndcconfgen - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "rndcconfgen - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "rndcconfgen - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "rndcconfgen - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/win32/include" /I "../../../lib/dns/include" /I "../../../lib/isccc/include" /I "../../../lib/isccfg/include" /D "WIN32" /D "NDEBUG" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib Release/confgentool.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib ../../../lib/isccfg/win32/Release/libisccfg.lib ../../../lib/isccc/win32/Release/libisccc.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/rndc-confgen.exe"
!ELSEIF "$(CFG)" == "rndcconfgen - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/win32/include" /I "../../../lib/dns/include" /I "../../../lib/isccc/include" /I "../../../lib/isccfg/include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR /FD /GZ /c
# SUBTRACT CPP /X /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib Debug/confgentool.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib ../../../lib/isccfg/win32/Debug/libisccfg.lib ../../../lib/isccc/win32/Debug/libisccc.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/rndc-confgen.exe" /pdbtype:sept
!ENDIF
# Begin Target
# Name "rndcconfgen - Win32 Release"
# Name "rndcconfgen - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE="..\rndc-confgen.c"
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project

View File

@@ -0,0 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "rndconfgen"=".\rndconfgen.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View File

@@ -0,0 +1,336 @@
# Microsoft Developer Studio Generated NMAKE File, Based on confgen.dsp
!IF "$(CFG)" == ""
CFG=rndcconfgen - Win32 Debug
!MESSAGE No configuration specified. Defaulting to rndcconfgen - Win32 Debug.
!ENDIF
!IF "$(CFG)" != "rndcconfgen - Win32 Release" && "$(CFG)" != "rndcconfgen - Win32 Debug"
!MESSAGE Invalid configuration "$(CFG)" specified.
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "rndcconfgen.mak" CFG="rndcconfgen - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "rndcconfgen - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "rndcconfgen - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
!ERROR An invalid configuration is specified.
!ENDIF
!IF "$(OS)" == "Windows_NT"
NULL=
!ELSE
NULL=nul
!ENDIF
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "rndcconfgen - Win32 Release"
_VC_MANIFEST_INC=0
_VC_MANIFEST_BASENAME=__VC80
!ELSE
_VC_MANIFEST_INC=1
_VC_MANIFEST_BASENAME=__VC80.Debug
!ENDIF
####################################################
# Specifying name of temporary resource file used only in incremental builds:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
!else
_VC_MANIFEST_AUTO_RES=
!endif
####################################################
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
!endif
####################################################
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
!endif
####################################################
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
$(_VC_MANIFEST_BASENAME).auto.rc \
$(_VC_MANIFEST_BASENAME).auto.manifest
!else
_VC_MANIFEST_CLEAN=
!endif
!IF "$(CFG)" == "rndcconfgen - Win32 Release"
OUTDIR=.\Release
INTDIR=.\Release
ALL : "..\..\..\Build\Release\rndc-confgen.exe"
CLEAN :
-@erase "$(INTDIR)\os.obj"
-@erase "$(INTDIR)\rndc-confgen.obj"
-@erase "$(INTDIR)\keygen.obj"
-@erase "$(INTDIR)\util.obj"
-@erase "$(INTDIR)\vc60.idb"
-@erase "..\..\..\Build\Release\rndc-confgen.exe"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP_PROJ=/nologo /MD /W3 /GX /O2 /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/win32/include" /I "../../../lib/dns/include" /I "../../../lib/isccc/include" /I "../../../lib/isccfg/include" /D "WIN32" /D "NDEBUG" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /Fp"$(INTDIR)\confgen.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\confgen.bsc"
BSC32_SBRS= \
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib ws2_32.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib ../../../lib/isccfg/win32/Release/libisccfg.lib ../../../lib/isccc/win32/Release/libisccc.lib /nologo /subsystem:console /incremental:no /pdb:"$(OUTDIR)\rndc-confgen.pdb" /machine:I386 /out:"../../../Build/Release/rndc-confgen.exe"
LINK32_OBJS= \
"$(INTDIR)\os.obj" \
"$(INTDIR)\rndc-confgen.obj" \
"$(INTDIR)\keygen.obj" \
"$(INTDIR)\util.obj"
"..\..\..\Build\Release\rndc-confgen.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ELSEIF "$(CFG)" == "rndcconfgen - Win32 Debug"
OUTDIR=.\Debug
INTDIR=.\Debug
# Begin Custom Macros
OutDir=.\Debug
# End Custom Macros
ALL : "..\..\..\Build\Debug\rndc-confgen.exe" "$(OUTDIR)\confgen.bsc"
CLEAN :
-@erase "$(INTDIR)\os.obj"
-@erase "$(INTDIR)\os.sbr"
-@erase "$(INTDIR)\rndc-confgen.obj"
-@erase "$(INTDIR)\rndc-confgen.sbr"
-@erase "$(INTDIR)\keygen.obj"
-@erase "$(INTDIR)\keygen.sbr"
-@erase "$(INTDIR)\util.obj"
-@erase "$(INTDIR)\util.sbr"
-@erase "$(INTDIR)\vc60.idb"
-@erase "$(INTDIR)\vc60.pdb"
-@erase "$(OUTDIR)\confgen.bsc"
-@erase "$(OUTDIR)\rndc-confgen.pdb"
-@erase "..\..\..\Build\Debug\rndc-confgen.exe"
-@erase "..\..\..\Build\Debug\rndc-confgen.ilk"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP_PROJ=/nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/win32/include" /I "../../../lib/dns/include" /I "../../../lib/isccc/include" /I "../../../lib/isccfg/include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR"$(INTDIR)\\" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\confgen.bsc"
BSC32_SBRS= \
"$(INTDIR)\os.sbr" \
"$(INTDIR)\rndc-confgen.sbr" \
"$(INTDIR)\keygen.sbr" \
"$(INTDIR)\util.sbr"
"$(OUTDIR)\confgen.bsc" : "$(OUTDIR)" $(BSC32_SBRS)
$(BSC32) @<<
$(BSC32_FLAGS) $(BSC32_SBRS)
<<
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib ws2_32.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib ../../../lib/isccfg/win32/Debug/libisccfg.lib ../../../lib/isccc/win32/Debug/libisccc.lib /nologo /subsystem:console /incremental:yes /pdb:"$(OUTDIR)\rndc-confgen.pdb" /debug /machine:I386 /out:"../../../Build/Debug/rndc-confgen.exe" /pdbtype:sept
LINK32_OBJS= \
"$(INTDIR)\os.obj" \
"$(INTDIR)\rndc-confgen.obj" \
"$(INTDIR)\keygen.obj" \
"$(INTDIR)\util.obj"
"..\..\..\Build\Debug\rndc-confgen.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ENDIF
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
!IF "$(NO_EXTERNAL_DEPS)" != "1"
!IF EXISTS("confgen.dep")
!INCLUDE "confgen.dep"
!ELSE
!MESSAGE Warning: cannot find "confgen.dep"
!ENDIF
!ENDIF
!IF "$(CFG)" == "rndcconfgen - Win32 Release" || "$(CFG)" == "rndcconfgen - Win32 Debug"
SOURCE=.\os.c
!IF "$(CFG)" == "rndcconfgen - Win32 Release"
"$(INTDIR)\os.obj" : $(SOURCE) "$(INTDIR)"
!ELSEIF "$(CFG)" == "rndcconfgen - Win32 Debug"
"$(INTDIR)\os.obj" "$(INTDIR)\os.sbr" : $(SOURCE) "$(INTDIR)"
!ENDIF
SOURCE="..\rndc-confgen.c"
!IF "$(CFG)" == "rndcconfgen - Win32 Release"
"$(INTDIR)\rndc-confgen.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "rndcconfgen - Win32 Debug"
"$(INTDIR)\rndc-confgen.obj" "$(INTDIR)\rndc-confgen.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
SOURCE=..\keygen.c
!IF "$(CFG)" == "rndcconfgen - Win32 Release"
"$(INTDIR)\keygen.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "rndcconfgen - Win32 Debug"
"$(INTDIR)\keygen.obj" "$(INTDIR)\keygen.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
SOURCE=..\util.c
!IF "$(CFG)" == "rndcconfgen - Win32 Release"
"$(INTDIR)\util.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "rndcconfgen - Win32 Debug"
"$(INTDIR)\util.obj" "$(INTDIR)\util.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
!ENDIF
####################################################
# Commands to generate initial empty manifest file and the RC file
# that references it, and for generating the .res file:
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
type <<$@
#include <winuser.h>
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
<< KEEP
$(_VC_MANIFEST_BASENAME).auto.manifest :
type <<$@
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
</assembly>
<< KEEP

View File

@@ -0,0 +1,88 @@
.\" 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
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
.\" REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
.\" AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
.\" LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id: dnssec-revoke.8,v 1.8.24.2 2011/10/21 01:39:09 tbox Exp $
.\"
.hy 0
.ad l
.\" Title: dnssec\-revoke
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: June 1, 2009
.\" Manual: BIND9
.\" Source: BIND9
.\"
.TH "DNSSEC\-REVOKE" "8" "June 1, 2009" "BIND9" "BIND9"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.SH "NAME"
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] [\fB\-R\fR] {keyfile}
.SH "DESCRIPTION"
.PP
\fBdnssec\-revoke\fR
reads a DNSSEC key file, sets the REVOKED bit on the key as defined in RFC 5011, and creates a new pair of key files containing the now\-revoked key.
.SH "OPTIONS"
.PP
\-h
.RS 4
Emit usage message and exit.
.RE
.PP
\-K \fIdirectory\fR
.RS 4
Sets the directory in which the key files are to reside.
.RE
.PP
\-r
.RS 4
After writing the new keyset files remove the original keyset files.
.RE
.PP
\-v \fIlevel\fR
.RS 4
Sets the debugging level.
.RE
.PP
\-E \fIengine\fR
.RS 4
Use the given OpenSSL engine. When compiled with PKCS#11 support it defaults to pkcs11; the empty name resets it to no engine.
.RE
.PP
\-f
.RS 4
Force overwrite: Causes
\fBdnssec\-revoke\fR
to write the new key pair even if a file already exists matching the algorithm and key ID of the revoked key.
.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),
BIND 9 Administrator Reference Manual,
RFC 5011.
.SH "AUTHOR"
.PP
Internet Systems Consortium
.SH "COPYRIGHT"
Copyright \(co 2009, 2011 Internet Systems Consortium, Inc. ("ISC")
.br

277
bin/dnssec/dnssec-revoke.c Normal file
View File

@@ -0,0 +1,277 @@
/*
* 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
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: dnssec-revoke.c,v 1.18.34.6 2011/10/20 23:46:03 tbox Exp $ */
/*! \file */
#include <config.h>
#include <libgen.h>
#include <stdlib.h>
#include <unistd.h>
#include <isc/buffer.h>
#include <isc/commandline.h>
#include <isc/entropy.h>
#include <isc/file.h>
#include <isc/hash.h>
#include <isc/mem.h>
#include <isc/print.h>
#include <isc/string.h>
#include <isc/util.h>
#include <dns/keyvalues.h>
#include <dns/result.h>
#include <dst/dst.h>
#include "dnssectool.h"
const char *program = "dnssec-revoke";
int verbose;
static isc_mem_t *mctx = NULL;
ISC_PLATFORM_NORETURN_PRE static void
usage(void) ISC_PLATFORM_NORETURN_POST;
static void
usage(void) {
fprintf(stderr, "Usage:\n");
fprintf(stderr, " %s [options] keyfile\n\n", program);
fprintf(stderr, "Version: %s\n", VERSION);
#ifdef USE_PKCS11
fprintf(stderr, " -E engine: specify OpenSSL engine "
"(default \"pkcs11\")\n");
#else
fprintf(stderr, " -E engine: specify OpenSSL engine\n");
#endif
fprintf(stderr, " -f: force overwrite\n");
fprintf(stderr, " -K directory: use directory for key files\n");
fprintf(stderr, " -h: help\n");
fprintf(stderr, " -r: remove old keyfiles after "
"creating revoked version\n");
fprintf(stderr, " -v level: set level of verbosity\n");
fprintf(stderr, "Output:\n");
fprintf(stderr, " K<name>+<alg>+<new id>.key, "
"K<name>+<alg>+<new id>.private\n");
exit (-1);
}
int
main(int argc, char **argv) {
isc_result_t result;
#ifdef USE_PKCS11
const char *engine = "pkcs11";
#else
const char *engine = NULL;
#endif
char *filename = NULL, *dir = NULL;
char newname[1024], oldname[1024];
char keystr[DST_KEY_FORMATSIZE];
char *endp;
int ch;
isc_entropy_t *ectx = NULL;
dst_key_t *key = NULL;
isc_uint32_t flags;
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();
result = isc_mem_create(0, 0, &mctx);
if (result != ISC_R_SUCCESS)
fatal("Out of memory");
dns_result_register();
isc_commandline_errprint = ISC_FALSE;
while ((ch = isc_commandline_parse(argc, argv, "E:fK:rRhv:")) != -1) {
switch (ch) {
case 'E':
engine = isc_commandline_argument;
break;
case 'f':
force = ISC_TRUE;
break;
case 'K':
/*
* We don't have to copy it here, but do it to
* simplify cleanup later
*/
dir = isc_mem_strdup(mctx, isc_commandline_argument);
if (dir == NULL) {
fatal("Failed to allocate memory for "
"directory");
}
break;
case 'r':
remove = ISC_TRUE;
break;
case 'R':
id = ISC_TRUE;
break;
case 'v':
verbose = strtol(isc_commandline_argument, &endp, 0);
if (*endp != '\0')
fatal("-v must be followed by a number");
break;
case '?':
if (isc_commandline_option != '?')
fprintf(stderr, "%s: invalid argument -%c\n",
program, isc_commandline_option);
/* Falls into */
case 'h':
usage();
default:
fprintf(stderr, "%s: unhandled option -%c\n",
program, isc_commandline_option);
exit(1);
}
}
if (argc < isc_commandline_index + 1 ||
argv[isc_commandline_index] == NULL)
fatal("The key file name was not specified");
if (argc > isc_commandline_index + 1)
fatal("Extraneous arguments");
if (dir != NULL) {
filename = argv[isc_commandline_index];
} else {
result = isc_file_splitpath(mctx, argv[isc_commandline_index],
&dir, &filename);
if (result != ISC_R_SUCCESS)
fatal("cannot process filename %s: %s",
argv[isc_commandline_index],
isc_result_totext(result));
if (strcmp(dir, ".") == 0) {
isc_mem_free(mctx, dir);
dir = NULL;
}
}
if (ectx == NULL)
setup_entropy(mctx, NULL, &ectx);
result = isc_hash_create(mctx, ectx, DNS_NAME_MAXWIRE);
if (result != ISC_R_SUCCESS)
fatal("Could not initialize hash");
result = dst_lib_init2(mctx, ectx, engine,
ISC_ENTROPY_BLOCKING | ISC_ENTROPY_GOODONLY);
if (result != ISC_R_SUCCESS)
fatal("Could not initialize dst: %s",
isc_result_totext(result));
isc_entropy_stopcallbacksources(ectx);
result = dst_key_fromnamedfile(filename, dir,
DST_TYPE_PUBLIC|DST_TYPE_PRIVATE,
mctx, &key);
if (result != ISC_R_SUCCESS)
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)
fprintf(stderr, "%s: %s\n", program, keystr);
if (force)
set_keyversion(key);
else
check_keyversion(key, keystr);
flags = dst_key_flags(key);
if ((flags & DNS_KEYFLAG_REVOKE) == 0) {
isc_stdtime_t now;
if ((flags & DNS_KEYFLAG_KSK) == 0)
fprintf(stderr, "%s: warning: Key is not flagged "
"as a KSK. Revoking a ZSK is "
"legal, but undefined.\n",
program);
isc_stdtime_get(&now);
dst_key_settime(key, DST_TIME_REVOKE, now);
dst_key_setflags(key, flags | DNS_KEYFLAG_REVOKE);
isc_buffer_init(&buf, newname, sizeof(newname));
dst_key_buildfilename(key, DST_TYPE_PUBLIC, dir, &buf);
if (access(newname, F_OK) == 0 && !force) {
fatal("Key file %s already exists; "
"use -f to force overwrite", newname);
}
result = dst_key_tofile(key, DST_TYPE_PUBLIC|DST_TYPE_PRIVATE,
dir);
if (result != ISC_R_SUCCESS) {
dst_key_format(key, keystr, sizeof(keystr));
fatal("Failed to write key %s: %s", keystr,
isc_result_totext(result));
}
isc_buffer_clear(&buf);
dst_key_buildfilename(key, 0, dir, &buf);
printf("%s\n", newname);
/*
* Remove old key file, if told to (and if
* it isn't the same as the new file)
*/
if (remove && dst_key_alg(key) != DST_ALG_RSAMD5) {
isc_buffer_init(&buf, oldname, sizeof(oldname));
dst_key_setflags(key, flags & ~DNS_KEYFLAG_REVOKE);
dst_key_buildfilename(key, DST_TYPE_PRIVATE, dir, &buf);
if (strcmp(oldname, newname) == 0)
goto cleanup;
if (access(oldname, F_OK) == 0)
unlink(oldname);
isc_buffer_clear(&buf);
dst_key_buildfilename(key, DST_TYPE_PUBLIC, dir, &buf);
if (access(oldname, F_OK) == 0)
unlink(oldname);
}
} else {
dst_key_format(key, keystr, sizeof(keystr));
fatal("Key %s is already revoked", keystr);
}
cleanup:
dst_key_free(&key);
dst_lib_destroy();
isc_hash_destroy();
cleanup_entropy(&ectx);
if (verbose > 10)
isc_mem_stats(mctx, stdout);
if (dir != NULL)
isc_mem_free(mctx, dir);
isc_mem_destroy(&mctx);
return (0);
}

View File

@@ -0,0 +1,161 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2009, 2011 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: dnssec-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>
</refentryinfo>
<refmeta>
<refentrytitle><application>dnssec-revoke</application></refentrytitle>
<manvolnum>8</manvolnum>
<refmiscinfo>BIND9</refmiscinfo>
</refmeta>
<refnamediv>
<refname><application>dnssec-revoke</application></refname>
<refpurpose>Set the REVOKED bit on a DNSSEC key</refpurpose>
</refnamediv>
<docinfo>
<copyright>
<year>2009</year>
<year>2011</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<command>dnssec-revoke</command>
<arg><option>-hr</option></arg>
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg><option>-f</option></arg>
<arg><option>-R</option></arg>
<arg choice="req">keyfile</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<para><command>dnssec-revoke</command>
reads a DNSSEC key file, sets the REVOKED bit on the key as defined
in RFC 5011, and creates a new pair of key files containing the
now-revoked key.
</para>
</refsect1>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
<term>-h</term>
<listitem>
<para>
Emit usage message and exit.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-K <replaceable class="parameter">directory</replaceable></term>
<listitem>
<para>
Sets the directory in which the key files are to reside.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-r</term>
<listitem>
<para>
After writing the new keyset files remove the original keyset
files.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-v <replaceable class="parameter">level</replaceable></term>
<listitem>
<para>
Sets the debugging level.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-E <replaceable class="parameter">engine</replaceable></term>
<listitem>
<para>
Use the given OpenSSL engine. When compiled with PKCS#11 support
it defaults to pkcs11; the empty name resets it to no engine.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-f</term>
<listitem>
<para>
Force overwrite: Causes <command>dnssec-revoke</command> to
write the new key pair even if a file already exists matching
the algorithm and key ID of the revoked key.
</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>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>dnssec-keygen</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
<citetitle>BIND 9 Administrator Reference Manual</citetitle>,
<citetitle>RFC 5011</citetitle>.
</para>
</refsect1>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->

View File

@@ -0,0 +1,92 @@
<!--
- 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
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: dnssec-revoke.html,v 1.8.24.2 2011/10/21 01:39:09 tbox Exp $ -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>dnssec-revoke</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<a name="man.dnssec-revoke"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">dnssec-revoke</span> &#8212; Set the REVOKED bit on a DNSSEC key</p>
</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>] [<code class="option">-R</code>] {keyfile}</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543381"></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
now-revoked key.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543393"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
<dt><span class="term">-h</span></dt>
<dd><p>
Emit usage message and exit.
</p></dd>
<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
Sets the directory in which the key files are to reside.
</p></dd>
<dt><span class="term">-r</span></dt>
<dd><p>
After writing the new keyset files remove the original keyset
files.
</p></dd>
<dt><span class="term">-v <em class="replaceable"><code>level</code></em></span></dt>
<dd><p>
Sets the debugging level.
</p></dd>
<dt><span class="term">-E <em class="replaceable"><code>engine</code></em></span></dt>
<dd><p>
Use the given OpenSSL engine. When compiled with PKCS#11 support
it defaults to pkcs11; the empty name resets it to no engine.
</p></dd>
<dt><span class="term">-f</span></dt>
<dd><p>
Force overwrite: Causes <span><strong class="command">dnssec-revoke</strong></span> to
write the new key pair even if a file already exists matching
the algorithm and key ID of the revoked key.
</p></dd>
<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="id2543511"></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="id2543536"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div></body>
</html>

166
bin/dnssec/dnssec-settime.8 Normal file
View File

@@ -0,0 +1,166 @@
.\" 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
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
.\" REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
.\" AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
.\" LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id: dnssec-settime.8,v 1.9.24.8 2011/11/04 01:37:24 tbox Exp $
.\"
.hy 0
.ad l
.\" Title: dnssec\-settime
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: July 15, 2009
.\" Manual: BIND9
.\" Source: BIND9
.\"
.TH "DNSSEC\-SETTIME" "8" "July 15, 2009" "BIND9" "BIND9"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.SH "NAME"
dnssec\-settime \- Set the key timing metadata for a DNSSEC key
.SH "SYNOPSIS"
.HP 15
\fBdnssec\-settime\fR [\fB\-f\fR] [\fB\-K\ \fR\fB\fIdirectory\fR\fR] [\fB\-P\ \fR\fB\fIdate/offset\fR\fR] [\fB\-A\ \fR\fB\fIdate/offset\fR\fR] [\fB\-R\ \fR\fB\fIdate/offset\fR\fR] [\fB\-I\ \fR\fB\fIdate/offset\fR\fR] [\fB\-D\ \fR\fB\fIdate/offset\fR\fR] [\fB\-h\fR] [\fB\-v\ \fR\fB\fIlevel\fR\fR] [\fB\-E\ \fR\fB\fIengine\fR\fR] {keyfile}
.SH "DESCRIPTION"
.PP
\fBdnssec\-settime\fR
reads a DNSSEC private key file and sets the key timing metadata as specified by the
\fB\-P\fR,
\fB\-A\fR,
\fB\-R\fR,
\fB\-I\fR, and
\fB\-D\fR
options. The metadata can then be used by
\fBdnssec\-signzone\fR
or other signing software to determine when a key is to be published, whether it should be used for signing a zone, etc.
.PP
If none of these options is set on the command line, then
\fBdnssec\-settime\fR
simply prints the key timing metadata already stored in the key.
.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. 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. 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
.RS 4
Sets the directory in which the key files are to reside.
.RE
.PP
\-h
.RS 4
Emit usage message and exit.
.RE
.PP
\-v \fIlevel\fR
.RS 4
Sets the debugging level.
.RE
.PP
\-E \fIengine\fR
.RS 4
Use the given OpenSSL engine. When compiled with PKCS#11 support it defaults to pkcs11; the empty name resets it to no engine.
.RE
.SH "TIMING OPTIONS"
.PP
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS. If the argument begins with a '+' or '\-', it is interpreted as an offset from the present time. For convenience, if such an offset is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the offset is computed in years (defined as 365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour days), weeks, days, hours, or minutes, respectively. Without a suffix, the offset is computed in seconds. To unset a date, use 'none'.
.PP
\-P \fIdate/offset\fR
.RS 4
Sets the date on which a key is to be published to the zone. After that date, the key will be included in the zone but will not be used to sign it.
.RE
.PP
\-A \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be activated. After that date, the key will be included in the zone and used to sign it.
.RE
.PP
\-R \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be revoked. After that date, the key will be flagged as revoked. It will be included in the zone and will be used to sign it.
.RE
.PP
\-I \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be retired. After that date, the key will still be included in the zone, but it will not be used to sign it.
.RE
.PP
\-D \fIdate/offset\fR
.RS 4
Sets the date on which the key is to be deleted. After that date, the key will no longer be included in the zone. (It may remain in the key repository, however.)
.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
can also be used to print the timing metadata associated with a key.
.PP
\-u
.RS 4
Print times in UNIX epoch format.
.RE
.PP
\-p \fIC/P/A/R/I/D/all\fR
.RS 4
Print a specific metadata value or set of metadata values. The
\fB\-p\fR
option may be followed by one or more of the following letters to indicate which value or values to print:
\fBC\fR
for the creation date,
\fBP\fR
for the publication date,
\fBA\fR
for the activation date,
\fBR\fR
for the revocation date,
\fBI\fR
for the inactivation date, or
\fBD\fR
for the deletion date. To print all of the metadata, use
\fB\-p all\fR.
.RE
.SH "SEE ALSO"
.PP
\fBdnssec\-keygen\fR(8),
\fBdnssec\-signzone\fR(8),
BIND 9 Administrator Reference Manual,
RFC 5011.
.SH "AUTHOR"
.PP
Internet Systems Consortium
.SH "COPYRIGHT"
Copyright \(co 2009\-2011 Internet Systems Consortium, Inc. ("ISC")
.br

585
bin/dnssec/dnssec-settime.c Normal file
View File

@@ -0,0 +1,585 @@
/*
* 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
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: dnssec-settime.c,v 1.19.34.12 2011/06/02 20:23:48 each Exp $ */
/*! \file */
#include <config.h>
#include <libgen.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <time.h>
#include <isc/buffer.h>
#include <isc/commandline.h>
#include <isc/entropy.h>
#include <isc/file.h>
#include <isc/hash.h>
#include <isc/mem.h>
#include <isc/print.h>
#include <isc/string.h>
#include <isc/util.h>
#include <dns/keyvalues.h>
#include <dns/result.h>
#include <dst/dst.h>
#include "dnssectool.h"
const char *program = "dnssec-settime";
int verbose;
static isc_mem_t *mctx = NULL;
ISC_PLATFORM_NORETURN_PRE static void
usage(void) ISC_PLATFORM_NORETURN_POST;
static void
usage(void) {
fprintf(stderr, "Usage:\n");
fprintf(stderr, " %s [options] keyfile\n\n", program);
fprintf(stderr, "Version: %s\n", VERSION);
fprintf(stderr, "General options:\n");
#ifdef USE_PKCS11
fprintf(stderr, " -E engine: specify OpenSSL engine "
"(default \"pkcs11\")\n");
#else
fprintf(stderr, " -E engine: specify OpenSSL engine\n");
#endif
fprintf(stderr, " -f: force update of old-style "
"keys\n");
fprintf(stderr, " -K directory: set key file location\n");
fprintf(stderr, " -v level: set level of verbosity\n");
fprintf(stderr, " -h: help\n");
fprintf(stderr, "Timing options:\n");
fprintf(stderr, " -P date/[+-]offset/none: set/unset key "
"publication date\n");
fprintf(stderr, " -A date/[+-]offset/none: set/unset key "
"activation date\n");
fprintf(stderr, " -R date/[+-]offset/none: set/unset key "
"revocation date\n");
fprintf(stderr, " -I date/[+-]offset/none: set/unset key "
"inactivation date\n");
fprintf(stderr, " -D date/[+-]offset/none: set/unset key "
"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\n");
fprintf(stderr, " -u: print times in unix epoch "
"format\n");
fprintf(stderr, "Output:\n");
fprintf(stderr, " K<name>+<alg>+<new id>.key, "
"K<name>+<alg>+<new id>.private\n");
exit (-1);
}
static void
printtime(dst_key_t *key, int type, const char *tag, isc_boolean_t epoch,
FILE *stream)
{
isc_result_t result;
const char *output = NULL;
isc_stdtime_t when;
if (tag != NULL)
fprintf(stream, "%s: ", tag);
result = dst_key_gettime(key, type, &when);
if (result == ISC_R_NOTFOUND) {
fprintf(stream, "UNSET\n");
} else if (epoch) {
fprintf(stream, "%d\n", (int) when);
} else {
time_t time = when;
output = ctime(&time);
fprintf(stream, "%s", output);
}
}
int
main(int argc, char **argv) {
isc_result_t result;
#ifdef USE_PKCS11
const char *engine = "pkcs11";
#else
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;
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;
isc_boolean_t setrev = ISC_FALSE, setinact = ISC_FALSE;
isc_boolean_t setdel = ISC_FALSE;
isc_boolean_t unsetpub = ISC_FALSE, unsetact = ISC_FALSE;
isc_boolean_t unsetrev = ISC_FALSE, unsetinact = ISC_FALSE;
isc_boolean_t unsetdel = ISC_FALSE;
isc_boolean_t printcreate = ISC_FALSE, printpub = ISC_FALSE;
isc_boolean_t printact = ISC_FALSE, printrev = ISC_FALSE;
isc_boolean_t printinact = ISC_FALSE, printdel = ISC_FALSE;
isc_boolean_t force = ISC_FALSE;
isc_boolean_t epoch = ISC_FALSE;
isc_boolean_t changed = ISC_FALSE;
if (argc == 1)
usage();
result = isc_mem_create(0, 0, &mctx);
if (result != ISC_R_SUCCESS)
fatal("Out of memory");
dns_result_register();
isc_commandline_errprint = ISC_FALSE;
isc_stdtime_get(&now);
#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;
break;
case 'f':
force = ISC_TRUE;
break;
case 'p':
p = isc_commandline_argument;
if (!strcasecmp(p, "all")) {
printcreate = ISC_TRUE;
printpub = ISC_TRUE;
printact = ISC_TRUE;
printrev = ISC_TRUE;
printinact = ISC_TRUE;
printdel = ISC_TRUE;
break;
}
do {
switch (*p++) {
case 'C':
printcreate = ISC_TRUE;
break;
case 'P':
printpub = ISC_TRUE;
break;
case 'A':
printact = ISC_TRUE;
break;
case 'R':
printrev = ISC_TRUE;
break;
case 'I':
printinact = ISC_TRUE;
break;
case 'D':
printdel = ISC_TRUE;
break;
case ' ':
break;
default:
usage();
break;
}
} while (*p != '\0');
break;
case 'u':
epoch = ISC_TRUE;
break;
case 'K':
/*
* We don't have to copy it here, but do it to
* simplify cleanup later
*/
directory = isc_mem_strdup(mctx,
isc_commandline_argument);
if (directory == NULL) {
fatal("Failed to allocate memory for "
"directory");
}
break;
case 'v':
verbose = strtol(isc_commandline_argument, &endp, 0);
if (*endp != '\0')
fatal("-v must be followed by a number");
break;
case 'P':
if (setpub || unsetpub)
fatal("-P specified more than once");
changed = ISC_TRUE;
if (!strcasecmp(isc_commandline_argument, "none")) {
unsetpub = ISC_TRUE;
} else {
setpub = ISC_TRUE;
pub = strtotime(isc_commandline_argument,
now, now);
}
break;
case 'A':
if (setact || unsetact)
fatal("-A specified more than once");
changed = ISC_TRUE;
if (!strcasecmp(isc_commandline_argument, "none")) {
unsetact = ISC_TRUE;
} else {
setact = ISC_TRUE;
act = strtotime(isc_commandline_argument,
now, now);
}
break;
case 'R':
if (setrev || unsetrev)
fatal("-R specified more than once");
changed = ISC_TRUE;
if (!strcasecmp(isc_commandline_argument, "none")) {
unsetrev = ISC_TRUE;
} else {
setrev = ISC_TRUE;
rev = strtotime(isc_commandline_argument,
now, now);
}
break;
case 'I':
if (setinact || unsetinact)
fatal("-I specified more than once");
changed = ISC_TRUE;
if (!strcasecmp(isc_commandline_argument, "none")) {
unsetinact = ISC_TRUE;
} else {
setinact = ISC_TRUE;
inact = strtotime(isc_commandline_argument,
now, now);
}
break;
case 'D':
if (setdel || unsetdel)
fatal("-D specified more than once");
changed = ISC_TRUE;
if (!strcasecmp(isc_commandline_argument, "none")) {
unsetdel = ISC_TRUE;
} else {
setdel = ISC_TRUE;
del = strtotime(isc_commandline_argument,
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",
program, isc_commandline_option);
/* Falls into */
case 'h':
usage();
default:
fprintf(stderr, "%s: unhandled option -%c\n",
program, isc_commandline_option);
exit(1);
}
}
if (argc < isc_commandline_index + 1 ||
argv[isc_commandline_index] == NULL)
fatal("The key file name was not specified");
if (argc > isc_commandline_index + 1)
fatal("Extraneous arguments");
if (ectx == NULL)
setup_entropy(mctx, NULL, &ectx);
result = isc_hash_create(mctx, ectx, DNS_NAME_MAXWIRE);
if (result != ISC_R_SUCCESS)
fatal("Could not initialize hash");
result = dst_lib_init2(mctx, ectx, engine,
ISC_ENTROPY_BLOCKING | ISC_ENTROPY_GOODONLY);
if (result != ISC_R_SUCCESS)
fatal("Could not initialize dst: %s",
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);
if (result != ISC_R_SUCCESS)
fatal("Invalid keyfile %s: %s",
filename, isc_result_totext(result));
if (!dst_key_isprivate(key))
fatal("%s is not a private key", filename);
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
check_keyversion(key, keystr);
if (verbose > 2)
fprintf(stderr, "%s: %s\n", program, keystr);
/*
* Set time values.
*/
if (setpub)
dst_key_settime(key, DST_TIME_PUBLISH, pub);
else if (unsetpub)
dst_key_unsettime(key, DST_TIME_PUBLISH);
if (setact)
dst_key_settime(key, DST_TIME_ACTIVATE, act);
else if (unsetact)
dst_key_unsettime(key, DST_TIME_ACTIVATE);
if (setrev) {
if ((dst_key_flags(key) & DNS_KEYFLAG_REVOKE) != 0)
fprintf(stderr, "%s: warning: Key %s is already "
"revoked; changing the revocation date "
"will not affect this.\n",
program, keystr);
if ((dst_key_flags(key) & DNS_KEYFLAG_KSK) == 0)
fprintf(stderr, "%s: warning: Key %s is not flagged as "
"a KSK, but -R was used. Revoking a "
"ZSK is legal, but undefined.\n",
program, keystr);
dst_key_settime(key, DST_TIME_REVOKE, rev);
} else if (unsetrev) {
if ((dst_key_flags(key) & DNS_KEYFLAG_REVOKE) != 0)
fprintf(stderr, "%s: warning: Key %s is already "
"revoked; removing the revocation date "
"will not affect this.\n",
program, keystr);
dst_key_unsettime(key, DST_TIME_REVOKE);
}
if (setinact)
dst_key_settime(key, DST_TIME_INACTIVE, inact);
else if (unsetinact)
dst_key_unsettime(key, DST_TIME_INACTIVE);
if (setdel)
dst_key_settime(key, DST_TIME_DELETE, del);
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.
*/
if (printcreate)
printtime(key, DST_TIME_CREATED, "Created", epoch, stdout);
if (printpub)
printtime(key, DST_TIME_PUBLISH, "Publish", epoch, stdout);
if (printact)
printtime(key, DST_TIME_ACTIVATE, "Activate", epoch, stdout);
if (printrev)
printtime(key, DST_TIME_REVOKE, "Revoke", epoch, stdout);
if (printinact)
printtime(key, DST_TIME_INACTIVE, "Inactive", epoch, stdout);
if (printdel)
printtime(key, DST_TIME_DELETE, "Delete", epoch, stdout);
if (changed) {
isc_buffer_init(&buf, newname, sizeof(newname));
result = dst_key_buildfilename(key, DST_TYPE_PUBLIC, directory,
&buf);
if (result != ISC_R_SUCCESS) {
fatal("Failed to build public key filename: %s",
isc_result_totext(result));
}
result = dst_key_tofile(key, DST_TYPE_PUBLIC|DST_TYPE_PRIVATE,
directory);
if (result != ISC_R_SUCCESS) {
dst_key_format(key, keystr, sizeof(keystr));
fatal("Failed to write key %s: %s", keystr,
isc_result_totext(result));
}
printf("%s\n", newname);
isc_buffer_clear(&buf);
result = dst_key_buildfilename(key, DST_TYPE_PRIVATE, directory,
&buf);
if (result != ISC_R_SUCCESS) {
fatal("Failed to build private key filename: %s",
isc_result_totext(result));
}
printf("%s\n", newname);
}
dst_key_free(&key);
dst_lib_destroy();
isc_hash_destroy();
cleanup_entropy(&ectx);
if (verbose > 10)
isc_mem_stats(mctx, stdout);
isc_mem_free(mctx, directory);
isc_mem_destroy(&mctx);
return (0);
}

View File

@@ -0,0 +1,323 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2009-2011 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: dnssec-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>
</refentryinfo>
<refmeta>
<refentrytitle><application>dnssec-settime</application></refentrytitle>
<manvolnum>8</manvolnum>
<refmiscinfo>BIND9</refmiscinfo>
</refmeta>
<refnamediv>
<refname><application>dnssec-settime</application></refname>
<refpurpose>Set the key timing metadata for a DNSSEC key</refpurpose>
</refnamediv>
<docinfo>
<copyright>
<year>2009</year>
<year>2010</year>
<year>2011</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<command>dnssec-settime</command>
<arg><option>-f</option></arg>
<arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
<arg><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-A <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-R <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-I <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-D <replaceable class="parameter">date/offset</replaceable></option></arg>
<arg><option>-h</option></arg>
<arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
<arg><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
<arg choice="req">keyfile</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<para><command>dnssec-settime</command>
reads a DNSSEC private key file and sets the key timing metadata
as specified by the <option>-P</option>, <option>-A</option>,
<option>-R</option>, <option>-I</option>, and <option>-D</option>
options. The metadata can then be used by
<command>dnssec-signzone</command> or other signing software to
determine when a key is to be published, whether it should be
used for signing a zone, etc.
</para>
<para>
If none of these options is set on the command line,
then <command>dnssec-settime</command> simply prints the key timing
metadata already stored in the key.
</para>
<para>
When key metadata fields are changed, both files of a key
pair (<filename>Knnnn.+aaa+iiiii.key</filename> and
<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. The private file's permissions are always set to be
inaccessible to anyone other than the owner (mode 0600).
</para>
</refsect1>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
<term>-f</term>
<listitem>
<para>
Force an update of an old-format key with no metadata fields.
Without this option, <command>dnssec-settime</command> 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.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-K <replaceable class="parameter">directory</replaceable></term>
<listitem>
<para>
Sets the directory in which the key files are to reside.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-h</term>
<listitem>
<para>
Emit usage message and exit.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-v <replaceable class="parameter">level</replaceable></term>
<listitem>
<para>
Sets the debugging level.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-E <replaceable class="parameter">engine</replaceable></term>
<listitem>
<para>
Use the given OpenSSL engine. When compiled with PKCS#11 support
it defaults to pkcs11; the empty name resets it to no engine.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>TIMING OPTIONS</title>
<para>
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
If the argument begins with a '+' or '-', it is interpreted as
an offset from the present time. For convenience, if such an offset
is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi',
then the offset is computed in years (defined as 365 24-hour days,
ignoring leap years), months (defined as 30 24-hour days), weeks,
days, hours, or minutes, respectively. Without a suffix, the offset
is computed in seconds. To unset a date, use 'none'.
</para>
<variablelist>
<varlistentry>
<term>-P <replaceable class="parameter">date/offset</replaceable></term>
<listitem>
<para>
Sets the date on which a key is to be published to the zone.
After that date, the key will be included in the zone but will
not be used to sign it.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-A <replaceable class="parameter">date/offset</replaceable></term>
<listitem>
<para>
Sets the date on which the key is to be activated. After that
date, the key will be included in the zone and used to sign
it.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-R <replaceable class="parameter">date/offset</replaceable></term>
<listitem>
<para>
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.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-I <replaceable class="parameter">date/offset</replaceable></term>
<listitem>
<para>
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.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-D <replaceable class="parameter">date/offset</replaceable></term>
<listitem>
<para>
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.)
</para>
</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>
<refsect1>
<title>PRINTING OPTIONS</title>
<para>
<command>dnssec-settime</command> can also be used to print the
timing metadata associated with a key.
</para>
<variablelist>
<varlistentry>
<term>-u</term>
<listitem>
<para>
Print times in UNIX epoch format.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-p <replaceable class="parameter">C/P/A/R/I/D/all</replaceable></term>
<listitem>
<para>
Print a specific metadata value or set of metadata values.
The <option>-p</option> option may be followed by one or more
of the following letters to indicate which value or values to print:
<option>C</option> for the creation date,
<option>P</option> for the publication date,
<option>A</option> for the activation date,
<option>R</option> for the revocation date,
<option>I</option> for the inactivation date, or
<option>D</option> for the deletion date.
To print all of the metadata, use <option>-p all</option>.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>SEE ALSO</title>
<para><citerefentry>
<refentrytitle>dnssec-keygen</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
<citerefentry>
<refentrytitle>dnssec-signzone</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
<citetitle>BIND 9 Administrator Reference Manual</citetitle>,
<citetitle>RFC 5011</citetitle>.
</para>
</refsect1>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->

View File

@@ -0,0 +1,211 @@
<!--
- 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
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: dnssec-settime.html,v 1.9.24.8 2011/11/04 01:37:24 tbox Exp $ -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>dnssec-settime</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
<a name="man.dnssec-settime"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">dnssec-settime</span> &#8212; Set the key timing metadata for a DNSSEC key</p>
</div>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">dnssec-settime</code> [<code class="option">-f</code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-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="id2543422"></a><h2>DESCRIPTION</h2>
<p><span><strong class="command">dnssec-settime</strong></span>
reads a DNSSEC private key file and sets the key timing metadata
as specified by the <code class="option">-P</code>, <code class="option">-A</code>,
<code class="option">-R</code>, <code class="option">-I</code>, and <code class="option">-D</code>
options. The metadata can then be used by
<span><strong class="command">dnssec-signzone</strong></span> or other signing software to
determine when a key is to be published, whether it should be
used for signing a zone, etc.
</p>
<p>
If none of these options is set on the command line,
then <span><strong class="command">dnssec-settime</strong></span> simply prints the key timing
metadata already stored in the key.
</p>
<p>
When key metadata fields are changed, both files of a key
pair (<code class="filename">Knnnn.+aaa+iiiii.key</code> and
<code class="filename">Knnnn.+aaa+iiiii.private</code>) are regenerated.
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).
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543470"></a><h2>OPTIONS</h2>
<div class="variablelist"><dl>
<dt><span class="term">-f</span></dt>
<dd><p>
Force an update of an old-format key with no metadata fields.
Without this option, <span><strong class="command">dnssec-settime</strong></span> will
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.
</p></dd>
<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
<dd><p>
Sets the directory in which the key files are to reside.
</p></dd>
<dt><span class="term">-h</span></dt>
<dd><p>
Emit usage message and exit.
</p></dd>
<dt><span class="term">-v <em class="replaceable"><code>level</code></em></span></dt>
<dd><p>
Sets the debugging level.
</p></dd>
<dt><span class="term">-E <em class="replaceable"><code>engine</code></em></span></dt>
<dd><p>
Use the given OpenSSL engine. When compiled with PKCS#11 support
it defaults to pkcs11; the empty name resets it to no engine.
</p></dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543562"></a><h2>TIMING OPTIONS</h2>
<p>
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
If the argument begins with a '+' or '-', it is interpreted as
an offset from the present time. For convenience, if such an offset
is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi',
then the offset is computed in years (defined as 365 24-hour days,
ignoring leap years), months (defined as 30 24-hour days), weeks,
days, hours, or minutes, respectively. Without a suffix, the offset
is computed in seconds. To unset a date, use 'none'.
</p>
<div class="variablelist"><dl>
<dt><span class="term">-P <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
Sets the date on which a key is to be published to the zone.
After that date, the key will be included in the zone but will
not be used to sign it.
</p></dd>
<dt><span class="term">-A <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
Sets the date on which the key is to be activated. After that
date, the key will be included in the zone and used to sign
it.
</p></dd>
<dt><span class="term">-R <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
Sets the date on which the key is to be revoked. After that
date, the key will be flagged as revoked. It will be included
in the zone and will be used to sign it.
</p></dd>
<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
will not be used to sign it.
</p></dd>
<dt><span class="term">-D <em class="replaceable"><code>date/offset</code></em></span></dt>
<dd><p>
Sets the date on which the key is to be deleted. After that
date, the key will no longer be included in the zone. (It
may remain in the key repository, however.)
</p></dd>
<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="id2543769"></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.
</p>
<div class="variablelist"><dl>
<dt><span class="term">-u</span></dt>
<dd><p>
Print times in UNIX epoch format.
</p></dd>
<dt><span class="term">-p <em class="replaceable"><code>C/P/A/R/I/D/all</code></em></span></dt>
<dd><p>
Print a specific metadata value or set of metadata values.
The <code class="option">-p</code> option may be followed by one or more
of the following letters to indicate which value or values to print:
<code class="option">C</code> for the creation date,
<code class="option">P</code> for the publication date,
<code class="option">A</code> for the activation date,
<code class="option">R</code> for the revocation date,
<code class="option">I</code> for the inactivation date, or
<code class="option">D</code> for the deletion date.
To print all of the metadata, use <code class="option">-p all</code>.
</p></dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543847"></a><h2>SEE ALSO</h2>
<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
<span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
<em class="citetitle">RFC 5011</em>.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543880"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div></body>
</html>

103
bin/dnssec/win32/revoke.dsp Normal file
View File

@@ -0,0 +1,103 @@
# Microsoft Developer Studio Project File - Name="revoke" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=revoke - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "revoke.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "revoke.mak" CFG="revoke - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "revoke - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "revoke - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "revoke - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/include" /D "NDEBUG" /D "__STDC__" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 user32.lib advapi32.lib Release/dnssectool.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/dnssec-revoke.exe"
!ELSEIF "$(CFG)" == "revoke - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/include" /D "_DEBUG" /D "WIN32" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /FR /FD /GZ /c
# SUBTRACT CPP /X /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 user32.lib advapi32.lib Debug/dnssectool.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/dnssec-revoke.exe" /pdbtype:sept
!ENDIF
# Begin Target
# Name "revoke - Win32 Release"
# Name "revoke - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE="..\dnssec-revoke.c"
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project

View File

@@ -0,0 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "revoke"=".\revoke.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

324
bin/dnssec/win32/revoke.mak Normal file
View File

@@ -0,0 +1,324 @@
# Microsoft Developer Studio Generated NMAKE File, Based on revoke.dsp
!IF "$(CFG)" == ""
CFG=revoke - Win32 Debug
!MESSAGE No configuration specified. Defaulting to revoke - Win32 Debug.
!ENDIF
!IF "$(CFG)" != "revoke - Win32 Release" && "$(CFG)" != "revoke - Win32 Debug"
!MESSAGE Invalid configuration "$(CFG)" specified.
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "revoke.mak" CFG="revoke - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "revoke - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "revoke - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
!ERROR An invalid configuration is specified.
!ENDIF
!IF "$(OS)" == "Windows_NT"
NULL=
!ELSE
NULL=nul
!ENDIF
!IF "$(CFG)" == "revoke - Win32 Release"
_VC_MANIFEST_INC=0
_VC_MANIFEST_BASENAME=__VC80
!ELSE
_VC_MANIFEST_INC=1
_VC_MANIFEST_BASENAME=__VC80.Debug
!ENDIF
####################################################
# Specifying name of temporary resource file used only in incremental builds:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
!else
_VC_MANIFEST_AUTO_RES=
!endif
####################################################
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
!endif
####################################################
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
!endif
####################################################
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
$(_VC_MANIFEST_BASENAME).auto.rc \
$(_VC_MANIFEST_BASENAME).auto.manifest
!else
_VC_MANIFEST_CLEAN=
!endif
!IF "$(CFG)" == "revoke - Win32 Release"
OUTDIR=.\Release
INTDIR=.\Release
ALL : "..\..\..\Build\Release\dnssec-revoke.exe"
CLEAN :
-@erase "$(INTDIR)\dnssec-revoke.obj"
-@erase "$(INTDIR)\dnssectool.obj"
-@erase "$(INTDIR)\vc60.idb"
-@erase "..\..\..\Build\Release\dnssec-revoke.exe"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MD /W3 /GX /O2 /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/include" /D "NDEBUG" /D "__STDC__" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /Fp"$(INTDIR)\revoke.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
RSC=rc.exe
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\revoke.bsc"
BSC32_SBRS= \
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib /nologo /subsystem:console /incremental:no /pdb:"$(OUTDIR)\dnssec-revoke.pdb" /machine:I386 /out:"../../../Build/Release/dnssec-revoke.exe"
LINK32_OBJS= \
"$(INTDIR)\dnssec-revoke.obj" \
"$(INTDIR)\dnssectool.obj"
"..\..\..\Build\Release\dnssec-revoke.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ELSEIF "$(CFG)" == "revoke - Win32 Debug"
OUTDIR=.\Debug
INTDIR=.\Debug
# Begin Custom Macros
OutDir=.\Debug
# End Custom Macros
ALL : "..\..\..\Build\Debug\dnssec-revoke.exe" "$(OUTDIR)\revoke.bsc"
CLEAN :
-@erase "$(INTDIR)\dnssec-revoke.obj"
-@erase "$(INTDIR)\dnssec-revoke.sbr"
-@erase "$(INTDIR)\dnssectool.obj"
-@erase "$(INTDIR)\dnssectool.sbr"
-@erase "$(INTDIR)\vc60.idb"
-@erase "$(INTDIR)\vc60.pdb"
-@erase "$(OUTDIR)\dnssec-revoke.pdb"
-@erase "$(OUTDIR)\revoke.bsc"
-@erase "..\..\..\Build\Debug\dnssec-revoke.exe"
-@erase "..\..\..\Build\Debug\dnssec-revoke.ilk"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/include" /D "_DEBUG" /D "WIN32" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /FR"$(INTDIR)\\" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
RSC=rc.exe
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\revoke.bsc"
BSC32_SBRS= \
"$(INTDIR)\dnssec-revoke.sbr" \
"$(INTDIR)\dnssectool.sbr"
"$(OUTDIR)\revoke.bsc" : "$(OUTDIR)" $(BSC32_SBRS)
$(BSC32) @<<
$(BSC32_FLAGS) $(BSC32_SBRS)
<<
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib /nologo /subsystem:console /incremental:yes /pdb:"$(OUTDIR)\dnssec-revoke.pdb" /debug /machine:I386 /out:"../../../Build/Debug/dnssec-revoke.exe" /pdbtype:sept
LINK32_OBJS= \
"$(INTDIR)\dnssec-revoke.obj" \
"$(INTDIR)\dnssectool.obj"
"..\..\..\Build\Debug\dnssec-revoke.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ENDIF
!IF "$(NO_EXTERNAL_DEPS)" != "1"
!IF EXISTS("revoke.dep")
!INCLUDE "revoke.dep"
!ELSE
!MESSAGE Warning: cannot find "revoke.dep"
!ENDIF
!ENDIF
!IF "$(CFG)" == "revoke - Win32 Release" || "$(CFG)" == "revoke - Win32 Debug"
SOURCE="..\dnssec-revoke.c"
!IF "$(CFG)" == "revoke - Win32 Release"
"$(INTDIR)\dnssec-revoke.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "revoke - Win32 Debug"
"$(INTDIR)\dnssec-revoke.obj" "$(INTDIR)\dnssec-revoke.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
SOURCE=..\dnssectool.c
!IF "$(CFG)" == "revoke - Win32 Release"
"$(INTDIR)\dnssectool.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "revoke - Win32 Debug"
"$(INTDIR)\dnssectool.obj" "$(INTDIR)\dnssectool.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
!ENDIF
####################################################
# Commands to generate initial empty manifest file and the RC file
# that references it, and for generating the .res file:
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
type <<$@
#include <winuser.h>
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
<< KEEP
$(_VC_MANIFEST_BASENAME).auto.manifest :
type <<$@
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
</assembly>
<< KEEP

View File

@@ -0,0 +1,103 @@
# Microsoft Developer Studio Project File - Name="settime" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=settime - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "settime.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "settime.mak" CFG="settime - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "settime - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "settime - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "settime - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/include" /D "NDEBUG" /D "__STDC__" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 user32.lib advapi32.lib Release/dnssectool.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/dnssec-settime.exe"
!ELSEIF "$(CFG)" == "settime - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/include" /D "_DEBUG" /D "WIN32" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /FR /FD /GZ /c
# SUBTRACT CPP /X /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 user32.lib advapi32.lib Debug/dnssectool.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/dnssec-settime.exe" /pdbtype:sept
!ENDIF
# Begin Target
# Name "settime - Win32 Release"
# Name "settime - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE="..\dnssec-settime.c"
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project

View File

@@ -0,0 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "settime"=".\settime.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View File

@@ -0,0 +1,324 @@
# Microsoft Developer Studio Generated NMAKE File, Based on settime.dsp
!IF "$(CFG)" == ""
CFG=settime - Win32 Debug
!MESSAGE No configuration specified. Defaulting to settime - Win32 Debug.
!ENDIF
!IF "$(CFG)" != "settime - Win32 Release" && "$(CFG)" != "settime - Win32 Debug"
!MESSAGE Invalid configuration "$(CFG)" specified.
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "settime.mak" CFG="settime - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "settime - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "settime - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
!ERROR An invalid configuration is specified.
!ENDIF
!IF "$(OS)" == "Windows_NT"
NULL=
!ELSE
NULL=nul
!ENDIF
!IF "$(CFG)" == "settime - Win32 Release"
_VC_MANIFEST_INC=0
_VC_MANIFEST_BASENAME=__VC80
!ELSE
_VC_MANIFEST_INC=1
_VC_MANIFEST_BASENAME=__VC80.Debug
!ENDIF
####################################################
# Specifying name of temporary resource file used only in incremental builds:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
!else
_VC_MANIFEST_AUTO_RES=
!endif
####################################################
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
!endif
####################################################
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
!endif
####################################################
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
$(_VC_MANIFEST_BASENAME).auto.rc \
$(_VC_MANIFEST_BASENAME).auto.manifest
!else
_VC_MANIFEST_CLEAN=
!endif
!IF "$(CFG)" == "settime - Win32 Release"
OUTDIR=.\Release
INTDIR=.\Release
ALL : "..\..\..\Build\Release\dnssec-settime.exe"
CLEAN :
-@erase "$(INTDIR)\dnssec-settime.obj"
-@erase "$(INTDIR)\dnssectool.obj"
-@erase "$(INTDIR)\vc60.idb"
-@erase "..\..\..\Build\Release\dnssec-settime.exe"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MD /W3 /GX /O2 /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/include" /D "NDEBUG" /D "__STDC__" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /Fp"$(INTDIR)\settime.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
RSC=rc.exe
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\settime.bsc"
BSC32_SBRS= \
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib /nologo /subsystem:console /incremental:no /pdb:"$(OUTDIR)\dnssec-settime.pdb" /machine:I386 /out:"../../../Build/Release/dnssec-settime.exe"
LINK32_OBJS= \
"$(INTDIR)\dnssec-settime.obj" \
"$(INTDIR)\dnssectool.obj"
"..\..\..\Build\Release\dnssec-settime.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ELSEIF "$(CFG)" == "settime - Win32 Debug"
OUTDIR=.\Debug
INTDIR=.\Debug
# Begin Custom Macros
OutDir=.\Debug
# End Custom Macros
ALL : "..\..\..\Build\Debug\dnssec-settime.exe" "$(OUTDIR)\settime.bsc"
CLEAN :
-@erase "$(INTDIR)\dnssec-settime.obj"
-@erase "$(INTDIR)\dnssec-settime.sbr"
-@erase "$(INTDIR)\dnssectool.obj"
-@erase "$(INTDIR)\dnssectool.sbr"
-@erase "$(INTDIR)\vc60.idb"
-@erase "$(INTDIR)\vc60.pdb"
-@erase "$(OUTDIR)\dnssec-settime.pdb"
-@erase "$(OUTDIR)\settime.bsc"
-@erase "..\..\..\Build\Debug\dnssec-settime.exe"
-@erase "..\..\..\Build\Debug\dnssec-settime.ilk"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../../" /I "../../../../libxml2-2.7.3/include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isc/noatomic/include" /I "../../../lib/dns/include" /D "_DEBUG" /D "WIN32" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /FR"$(INTDIR)\\" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
RSC=rc.exe
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\settime.bsc"
BSC32_SBRS= \
"$(INTDIR)\dnssec-settime.sbr" \
"$(INTDIR)\dnssectool.sbr"
"$(OUTDIR)\settime.bsc" : "$(OUTDIR)" $(BSC32_SBRS)
$(BSC32) @<<
$(BSC32_FLAGS) $(BSC32_SBRS)
<<
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib /nologo /subsystem:console /incremental:yes /pdb:"$(OUTDIR)\dnssec-settime.pdb" /debug /machine:I386 /out:"../../../Build/Debug/dnssec-settime.exe" /pdbtype:sept
LINK32_OBJS= \
"$(INTDIR)\dnssec-settime.obj" \
"$(INTDIR)\dnssectool.obj"
"..\..\..\Build\Debug\dnssec-settime.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ENDIF
!IF "$(NO_EXTERNAL_DEPS)" != "1"
!IF EXISTS("settime.dep")
!INCLUDE "settime.dep"
!ELSE
!MESSAGE Warning: cannot find "settime.dep"
!ENDIF
!ENDIF
!IF "$(CFG)" == "settime - Win32 Release" || "$(CFG)" == "settime - Win32 Debug"
SOURCE="..\dnssec-settime.c"
!IF "$(CFG)" == "settime - Win32 Release"
"$(INTDIR)\dnssec-settime.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "settime - Win32 Debug"
"$(INTDIR)\dnssec-settime.obj" "$(INTDIR)\dnssec-settime.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
SOURCE=..\dnssectool.c
!IF "$(CFG)" == "settime - Win32 Release"
"$(INTDIR)\dnssectool.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "settime - Win32 Debug"
"$(INTDIR)\dnssectool.obj" "$(INTDIR)\dnssectool.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
!ENDIF
####################################################
# Commands to generate initial empty manifest file and the RC file
# that references it, and for generating the .res file:
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
type <<$@
#include <winuser.h>
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
<< KEEP
$(_VC_MANIFEST_BASENAME).auto.manifest :
type <<$@
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
</assembly>
<< KEEP

105
bin/named/bind.keys.h Normal file
View File

@@ -0,0 +1,105 @@
/*
* Generated by bindkeys.pl 1.3.104.2 2010-06-20 23:46:24 tbox Exp
* From bind.keys 1.5.42.3 2011-03-25 17:46:40 each Exp
*/
#define TRUSTED_KEYS "\
# The bind.keys file is used to override built-in DNSSEC trust anchors\n\
# 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\
# 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 "\
# 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\
# 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\
"

56
bin/named/bindkeys.pl Executable file
View File

@@ -0,0 +1,56 @@
#!/usr/bin/env perl
#
# Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# $Id: 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/;
$lines =~ s/\s+initial-key//;
my $tkey = '#define TRUSTED_KEYS "\\' . "\n" . $lines . "\"\n";
print $tkey;
print "\n";
print $mkey;

4
bin/pkcs11/.cvsignore Normal file
View File

@@ -0,0 +1,4 @@
Makefile
pkcs11-destroy
pkcs11-keygen
pkcs11-list

74
bin/pkcs11/Makefile.in Normal file
View File

@@ -0,0 +1,74 @@
# Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# $Id: Makefile.in,v 1.2 2009/10/05 12:07:08 fdupont Exp $
srcdir = @srcdir@
VPATH = @srcdir@
top_srcdir = @top_srcdir@
@BIND9_MAKE_INCLUDES@
PROVIDER = @PKCS11_PROVIDER@
CINCLUDES = -I${srcdir}/include -I${srcdir}/unix
CDEFINES = -DPK11_LIB_LOCATION=\"${PROVIDER}\"
# if FORCE_STATIC_PROVIDER: LIBS = ${PROVIDER}
LIBS = -ldl
SUBDIRS =
TARGETS = pkcs11-keygen@EXEEXT@ pkcs11-list@EXEEXT@ \
pkcs11-destroy@EXEEXT@
SRCS = pkcs11-keygen.c pkcs11-list.c pkcs11-destroy.c
MANPAGES = pkcs11-keygen.8 pkcs11-list.8 pkcs11-destroy.8
HTMLPAGES = pkcs11-keygen.html pkcs11-list.html pkcs11-destroy.html
MANOBJS = ${MANPAGES} ${HTMLPAGES}
@BIND9_MAKE_RULES@
pkcs11-keygen@EXEEXT@: @srcdir@/pkcs11-keygen.c
${CC} ${ALL_CFLAGS} ${LDFLAGS} \
-o $@ @srcdir@/pkcs11-keygen.c ${LIBS}
pkcs11-list@EXEEXT@: @srcdir@/pkcs11-list.c
${CC} ${ALL_CFLAGS} ${LDFLAGS} \
-o $@ @srcdir@/pkcs11-list.c ${LIBS}
pkcs11-destroy@EXEEXT@: @srcdir@/pkcs11-destroy.c
${CC} ${ALL_CFLAGS} ${LDFLAGS} \
-o $@ @srcdir@/pkcs11-destroy.c ${LIBS}
doc man:: ${MANOBJS}
docclean manclean maintainer-clean::
rm -f ${MANOBJS}
installdirs:
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${sbindir}
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${mandir}/man8
install:: ${TARGETS} installdirs
${INSTALL_PROGRAM} pkcs11-keygen@EXEEXT@ ${DESTDIR}${sbindir}
${INSTALL_PROGRAM} pkcs11-list@EXEEXT@ ${DESTDIR}${sbindir}
${INSTALL_PROGRAM} pkcs11-destroy@EXEEXT@ ${DESTDIR}${sbindir}
${INSTALL_DATA} ${srcdir}/pkcs11-keygen.8 ${DESTDIR}${mandir}/man8
${INSTALL_DATA} ${srcdir}/pkcs11-list.8 ${DESTDIR}${mandir}/man8
${INSTALL_DATA} ${srcdir}/pkcs11-destroy.8 ${DESTDIR}${mandir}/man8
clean distclean::
rm -f ${TARGETS}

View File

@@ -0,0 +1,94 @@
BIND-9 PKCS#11 support
Prerequisite
The PKCS#11 support needs a PKCS#11 OpenSSL engine based on the Solaris one,
released the 2008-12-02 for OpenSSL 0.9.8i, with back port of key by reference
and some improvements, including user friendly PIN management. You may also
use the original engine code.
Compilation
"configure --with-pkcs11 ..."
PKCS#11 Libraries
Tested with Solaris one with a SCA board and with openCryptoki with the
software token. Known to work on Linux and Windows 2003 server so
should work on most operating systems. For AEP Keyper or any device used
only for its protected key store, please switch to the sign-only engine.
OpenSSL Engines
With PKCS#11 support the PKCS#11 engine is statically loaded but at its
initialization it dynamically loads the PKCS#11 objects.
Even the pre commands are therefore unused they are defined with:
SO_PATH:
define: PKCS11_SO_PATH
default: /usr/local/lib/engines/engine_pkcs11.so
MODULE_PATH:
define: PKCS11_MODULE_PATH
default: /usr/lib/libpkcs11.so
Without PKCS#11 support, a specific OpenSSL engine can be still used
by defining ENGINE_ID at compile time.
PKCS#11 tools
The contrib/pkcs11-keygen directory contains a set of experimental tools
to handle keys stored in a Hardware Security Module at the benefit of BIND.
The patch for OpenSSL 0.9.8i is in this directory. Read its README.pkcs11
for the way to use it (these are the original notes so with the original
path, etc. Define HAVE_GETPASSPHRASE if you have getpassphrase() on
a operating system which is not Solaris.)
Not all tools are supported on AEP Keyper but genkey and dnssec-keyfromlabel
are functional.
PIN management
With the just fixed PKCS#11 OpenSSL engine, the PIN should be entered
each time it is required. With the improved engine, the PIN should be
entered the first time it is required or can be configured in the
OpenSSL configuration file (aka. openssl.cnf) by adding in it:
- at the beginning:
openssl_conf = openssl_def
- at any place these sections:
[ openssl_def ]
engines = engine_section
[ engine_section ]
pkcs11 = pkcs11_section
[ pkcs11_section ]
PIN = put__your__pin__value__here
Slot management
The engine tries to use the first best slot but it is recommended
to simply use the slot 0 (usual default, meta-slot on Solaris).
Sign-only engine
openssl.../crypto/engine/hw_pk11-kp.c and hw_pk11_pub-kp.c contain
a stripped down version of hw_pk11.c and hw_pk11_pub.c files which
has only the useful functions (i.e., signature with a RSA private
key in the device protected key store and key loading).
This engine should be used with a device which provides mainly
a protected store and no acceleration. AEP Keyper is an example
of such a device (BTW with the fully capable engine, key export
must be enabled on this device and this configuration is not yet
supported).
Original engine
If you are using the original engine and getpassphrase() is not defined, add:
#define getpassphrase(x) getpass(x)
in openssl.../crypto/engine/hw_pk11_pub.c
Notes
Some names here are registered trademarks, at least Solaris is a trademark
of Sun Microsystems Inc...
Include files are from RSA Labs., PKCS#11 version is 2.20 amendment 3.
The PKCS#11 support is compatible with the forthcoming FIPS 140-2 support.

299
bin/pkcs11/include/pkcs11.h Normal file
View File

@@ -0,0 +1,299 @@
/* pkcs11.h include file for PKCS #11. */
/* $Revision: 1.2 $ */
/* 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.
*/
#ifndef _PKCS11_H_
#define _PKCS11_H_ 1
#ifdef __cplusplus
extern "C" {
#endif
/* Before including this file (pkcs11.h) (or pkcs11t.h by
* itself), 6 platform-specific macros must be defined. These
* macros are described below, and typical definitions for them
* are also given. Be advised that these definitions can depend
* on both the platform and the compiler used (and possibly also
* on whether a Cryptoki library is linked statically or
* dynamically).
*
* In addition to defining these 6 macros, the packing convention
* for Cryptoki structures should be set. The Cryptoki
* convention on packing is that structures should be 1-byte
* aligned.
*
* If you're using Microsoft Developer Studio 5.0 to produce
* Win32 stuff, this might be done by using the following
* preprocessor directive before including pkcs11.h or pkcs11t.h:
*
* #pragma pack(push, cryptoki, 1)
*
* and using the following preprocessor directive after including
* pkcs11.h or pkcs11t.h:
*
* #pragma pack(pop, cryptoki)
*
* If you're using an earlier version of Microsoft Developer
* Studio to produce Win16 stuff, this might be done by using
* the following preprocessor directive before including
* pkcs11.h or pkcs11t.h:
*
* #pragma pack(1)
*
* In a UNIX environment, you're on your own for this. You might
* not need to do (or be able to do!) anything.
*
*
* Now for the macros:
*
*
* 1. CK_PTR: The indirection string for making a pointer to an
* object. It can be used like this:
*
* typedef CK_BYTE CK_PTR CK_BYTE_PTR;
*
* If you're using Microsoft Developer Studio 5.0 to produce
* Win32 stuff, it might be defined by:
*
* #define CK_PTR *
*
* If you're using an earlier version of Microsoft Developer
* Studio to produce Win16 stuff, it might be defined by:
*
* #define CK_PTR far *
*
* In a typical UNIX environment, it might be defined by:
*
* #define CK_PTR *
*
*
* 2. CK_DEFINE_FUNCTION(returnType, name): A macro which makes
* an exportable Cryptoki library function definition out of a
* return type and a function name. It should be used in the
* following fashion to define the exposed Cryptoki functions in
* a Cryptoki library:
*
* CK_DEFINE_FUNCTION(CK_RV, C_Initialize)(
* CK_VOID_PTR pReserved
* )
* {
* ...
* }
*
* If you're using Microsoft Developer Studio 5.0 to define a
* function in a Win32 Cryptoki .dll, it might be defined by:
*
* #define CK_DEFINE_FUNCTION(returnType, name) \
* returnType __declspec(dllexport) name
*
* If you're using an earlier version of Microsoft Developer
* Studio to define a function in a Win16 Cryptoki .dll, it
* might be defined by:
*
* #define CK_DEFINE_FUNCTION(returnType, name) \
* returnType __export _far _pascal name
*
* In a UNIX environment, it might be defined by:
*
* #define CK_DEFINE_FUNCTION(returnType, name) \
* returnType name
*
*
* 3. CK_DECLARE_FUNCTION(returnType, name): A macro which makes
* an importable Cryptoki library function declaration out of a
* return type and a function name. It should be used in the
* following fashion:
*
* extern CK_DECLARE_FUNCTION(CK_RV, C_Initialize)(
* CK_VOID_PTR pReserved
* );
*
* If you're using Microsoft Developer Studio 5.0 to declare a
* function in a Win32 Cryptoki .dll, it might be defined by:
*
* #define CK_DECLARE_FUNCTION(returnType, name) \
* returnType __declspec(dllimport) name
*
* If you're using an earlier version of Microsoft Developer
* Studio to declare a function in a Win16 Cryptoki .dll, it
* might be defined by:
*
* #define CK_DECLARE_FUNCTION(returnType, name) \
* returnType __export _far _pascal name
*
* In a UNIX environment, it might be defined by:
*
* #define CK_DECLARE_FUNCTION(returnType, name) \
* returnType name
*
*
* 4. CK_DECLARE_FUNCTION_POINTER(returnType, name): A macro
* which makes a Cryptoki API function pointer declaration or
* function pointer type declaration out of a return type and a
* function name. It should be used in the following fashion:
*
* // Define funcPtr to be a pointer to a Cryptoki API function
* // taking arguments args and returning CK_RV.
* CK_DECLARE_FUNCTION_POINTER(CK_RV, funcPtr)(args);
*
* or
*
* // Define funcPtrType to be the type of a pointer to a
* // Cryptoki API function taking arguments args and returning
* // CK_RV, and then define funcPtr to be a variable of type
* // funcPtrType.
* typedef CK_DECLARE_FUNCTION_POINTER(CK_RV, funcPtrType)(args);
* funcPtrType funcPtr;
*
* If you're using Microsoft Developer Studio 5.0 to access
* functions in a Win32 Cryptoki .dll, in might be defined by:
*
* #define CK_DECLARE_FUNCTION_POINTER(returnType, name) \
* returnType __declspec(dllimport) (* name)
*
* If you're using an earlier version of Microsoft Developer
* Studio to access functions in a Win16 Cryptoki .dll, it might
* be defined by:
*
* #define CK_DECLARE_FUNCTION_POINTER(returnType, name) \
* returnType __export _far _pascal (* name)
*
* In a UNIX environment, it might be defined by:
*
* #define CK_DECLARE_FUNCTION_POINTER(returnType, name) \
* returnType (* name)
*
*
* 5. CK_CALLBACK_FUNCTION(returnType, name): A macro which makes
* a function pointer type for an application callback out of
* a return type for the callback and a name for the callback.
* It should be used in the following fashion:
*
* CK_CALLBACK_FUNCTION(CK_RV, myCallback)(args);
*
* to declare a function pointer, myCallback, to a callback
* which takes arguments args and returns a CK_RV. It can also
* be used like this:
*
* typedef CK_CALLBACK_FUNCTION(CK_RV, myCallbackType)(args);
* myCallbackType myCallback;
*
* If you're using Microsoft Developer Studio 5.0 to do Win32
* Cryptoki development, it might be defined by:
*
* #define CK_CALLBACK_FUNCTION(returnType, name) \
* returnType (* name)
*
* If you're using an earlier version of Microsoft Developer
* Studio to do Win16 development, it might be defined by:
*
* #define CK_CALLBACK_FUNCTION(returnType, name) \
* returnType _far _pascal (* name)
*
* In a UNIX environment, it might be defined by:
*
* #define CK_CALLBACK_FUNCTION(returnType, name) \
* returnType (* name)
*
*
* 6. NULL_PTR: This macro is the value of a NULL pointer.
*
* In any ANSI/ISO C environment (and in many others as well),
* this should best be defined by
*
* #ifndef NULL_PTR
* #define NULL_PTR 0
* #endif
*/
/* All the various Cryptoki types and #define'd values are in the
* file pkcs11t.h. */
#include "pkcs11t.h"
#define __PASTE(x,y) x##y
/* ==============================================================
* Define the "extern" form of all the entry points.
* ==============================================================
*/
#define CK_NEED_ARG_LIST 1
#define CK_PKCS11_FUNCTION_INFO(name) \
extern CK_DECLARE_FUNCTION(CK_RV, name)
/* pkcs11f.h has all the information about the Cryptoki
* function prototypes. */
#include "pkcs11f.h"
#undef CK_NEED_ARG_LIST
#undef CK_PKCS11_FUNCTION_INFO
/* ==============================================================
* Define the typedef form of all the entry points. That is, for
* each Cryptoki function C_XXX, define a type CK_C_XXX which is
* a pointer to that kind of function.
* ==============================================================
*/
#define CK_NEED_ARG_LIST 1
#define CK_PKCS11_FUNCTION_INFO(name) \
typedef CK_DECLARE_FUNCTION_POINTER(CK_RV, __PASTE(CK_,name))
/* pkcs11f.h has all the information about the Cryptoki
* function prototypes. */
#include "pkcs11f.h"
#undef CK_NEED_ARG_LIST
#undef CK_PKCS11_FUNCTION_INFO
/* ==============================================================
* Define structed vector of entry points. A CK_FUNCTION_LIST
* contains a CK_VERSION indicating a library's Cryptoki version
* and then a whole slew of function pointers to the routines in
* the library. This type was declared, but not defined, in
* pkcs11t.h.
* ==============================================================
*/
#define CK_PKCS11_FUNCTION_INFO(name) \
__PASTE(CK_,name) name;
struct CK_FUNCTION_LIST {
CK_VERSION version; /* Cryptoki version */
/* Pile all the function pointers into the CK_FUNCTION_LIST. */
/* pkcs11f.h has all the information about the Cryptoki
* function prototypes. */
#include "pkcs11f.h"
};
#undef CK_PKCS11_FUNCTION_INFO
#undef __PASTE
#ifdef __cplusplus
}
#endif
#endif

View File

@@ -0,0 +1,912 @@
/* pkcs11f.h include file for PKCS #11. */
/* $Revision: 1.2 $ */
/* 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.
*/
/* This header file contains pretty much everything about all the */
/* Cryptoki function prototypes. Because this information is */
/* used for more than just declaring function prototypes, the */
/* order of the functions appearing herein is important, and */
/* should not be altered. */
/* General-purpose */
/* C_Initialize initializes the Cryptoki library. */
CK_PKCS11_FUNCTION_INFO(C_Initialize)
#ifdef CK_NEED_ARG_LIST
(
CK_VOID_PTR pInitArgs /* if this is not NULL_PTR, it gets
* cast to CK_C_INITIALIZE_ARGS_PTR
* and dereferenced */
);
#endif
/* C_Finalize indicates that an application is done with the
* Cryptoki library. */
CK_PKCS11_FUNCTION_INFO(C_Finalize)
#ifdef CK_NEED_ARG_LIST
(
CK_VOID_PTR pReserved /* reserved. Should be NULL_PTR */
);
#endif
/* C_GetInfo returns general information about Cryptoki. */
CK_PKCS11_FUNCTION_INFO(C_GetInfo)
#ifdef CK_NEED_ARG_LIST
(
CK_INFO_PTR pInfo /* location that receives information */
);
#endif
/* C_GetFunctionList returns the function list. */
CK_PKCS11_FUNCTION_INFO(C_GetFunctionList)
#ifdef CK_NEED_ARG_LIST
(
CK_FUNCTION_LIST_PTR_PTR ppFunctionList /* receives pointer to
* function list */
);
#endif
/* Slot and token management */
/* C_GetSlotList obtains a list of slots in the system. */
CK_PKCS11_FUNCTION_INFO(C_GetSlotList)
#ifdef CK_NEED_ARG_LIST
(
CK_BBOOL tokenPresent, /* only slots with tokens? */
CK_SLOT_ID_PTR pSlotList, /* receives array of slot IDs */
CK_ULONG_PTR pulCount /* receives number of slots */
);
#endif
/* C_GetSlotInfo obtains information about a particular slot in
* the system. */
CK_PKCS11_FUNCTION_INFO(C_GetSlotInfo)
#ifdef CK_NEED_ARG_LIST
(
CK_SLOT_ID slotID, /* the ID of the slot */
CK_SLOT_INFO_PTR pInfo /* receives the slot information */
);
#endif
/* C_GetTokenInfo obtains information about a particular token
* in the system. */
CK_PKCS11_FUNCTION_INFO(C_GetTokenInfo)
#ifdef CK_NEED_ARG_LIST
(
CK_SLOT_ID slotID, /* ID of the token's slot */
CK_TOKEN_INFO_PTR pInfo /* receives the token information */
);
#endif
/* C_GetMechanismList obtains a list of mechanism types
* supported by a token. */
CK_PKCS11_FUNCTION_INFO(C_GetMechanismList)
#ifdef CK_NEED_ARG_LIST
(
CK_SLOT_ID slotID, /* ID of token's slot */
CK_MECHANISM_TYPE_PTR pMechanismList, /* gets mech. array */
CK_ULONG_PTR pulCount /* gets # of mechs. */
);
#endif
/* C_GetMechanismInfo obtains information about a particular
* mechanism possibly supported by a token. */
CK_PKCS11_FUNCTION_INFO(C_GetMechanismInfo)
#ifdef CK_NEED_ARG_LIST
(
CK_SLOT_ID slotID, /* ID of the token's slot */
CK_MECHANISM_TYPE type, /* type of mechanism */
CK_MECHANISM_INFO_PTR pInfo /* receives mechanism info */
);
#endif
/* C_InitToken initializes a token. */
CK_PKCS11_FUNCTION_INFO(C_InitToken)
#ifdef CK_NEED_ARG_LIST
/* pLabel changed from CK_CHAR_PTR to CK_UTF8CHAR_PTR for v2.10 */
(
CK_SLOT_ID slotID, /* ID of the token's slot */
CK_UTF8CHAR_PTR pPin, /* the SO's initial PIN */
CK_ULONG ulPinLen, /* length in bytes of the PIN */
CK_UTF8CHAR_PTR pLabel /* 32-byte token label (blank padded) */
);
#endif
/* C_InitPIN initializes the normal user's PIN. */
CK_PKCS11_FUNCTION_INFO(C_InitPIN)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_UTF8CHAR_PTR pPin, /* the normal user's PIN */
CK_ULONG ulPinLen /* length in bytes of the PIN */
);
#endif
/* C_SetPIN modifies the PIN of the user who is logged in. */
CK_PKCS11_FUNCTION_INFO(C_SetPIN)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_UTF8CHAR_PTR pOldPin, /* the old PIN */
CK_ULONG ulOldLen, /* length of the old PIN */
CK_UTF8CHAR_PTR pNewPin, /* the new PIN */
CK_ULONG ulNewLen /* length of the new PIN */
);
#endif
/* Session management */
/* C_OpenSession opens a session between an application and a
* token. */
CK_PKCS11_FUNCTION_INFO(C_OpenSession)
#ifdef CK_NEED_ARG_LIST
(
CK_SLOT_ID slotID, /* the slot's ID */
CK_FLAGS flags, /* from CK_SESSION_INFO */
CK_VOID_PTR pApplication, /* passed to callback */
CK_NOTIFY Notify, /* callback function */
CK_SESSION_HANDLE_PTR phSession /* gets session handle */
);
#endif
/* C_CloseSession closes a session between an application and a
* token. */
CK_PKCS11_FUNCTION_INFO(C_CloseSession)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession /* the session's handle */
);
#endif
/* C_CloseAllSessions closes all sessions with a token. */
CK_PKCS11_FUNCTION_INFO(C_CloseAllSessions)
#ifdef CK_NEED_ARG_LIST
(
CK_SLOT_ID slotID /* the token's slot */
);
#endif
/* C_GetSessionInfo obtains information about the session. */
CK_PKCS11_FUNCTION_INFO(C_GetSessionInfo)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_SESSION_INFO_PTR pInfo /* receives session info */
);
#endif
/* C_GetOperationState obtains the state of the cryptographic operation
* in a session. */
CK_PKCS11_FUNCTION_INFO(C_GetOperationState)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_BYTE_PTR pOperationState, /* gets state */
CK_ULONG_PTR pulOperationStateLen /* gets state length */
);
#endif
/* C_SetOperationState restores the state of the cryptographic
* operation in a session. */
CK_PKCS11_FUNCTION_INFO(C_SetOperationState)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_BYTE_PTR pOperationState, /* holds state */
CK_ULONG ulOperationStateLen, /* holds state length */
CK_OBJECT_HANDLE hEncryptionKey, /* en/decryption key */
CK_OBJECT_HANDLE hAuthenticationKey /* sign/verify key */
);
#endif
/* C_Login logs a user into a token. */
CK_PKCS11_FUNCTION_INFO(C_Login)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_USER_TYPE userType, /* the user type */
CK_UTF8CHAR_PTR pPin, /* the user's PIN */
CK_ULONG ulPinLen /* the length of the PIN */
);
#endif
/* C_Logout logs a user out from a token. */
CK_PKCS11_FUNCTION_INFO(C_Logout)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession /* the session's handle */
);
#endif
/* Object management */
/* C_CreateObject creates a new object. */
CK_PKCS11_FUNCTION_INFO(C_CreateObject)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_ATTRIBUTE_PTR pTemplate, /* the object's template */
CK_ULONG ulCount, /* attributes in template */
CK_OBJECT_HANDLE_PTR phObject /* gets new object's handle. */
);
#endif
/* C_CopyObject copies an object, creating a new object for the
* copy. */
CK_PKCS11_FUNCTION_INFO(C_CopyObject)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_OBJECT_HANDLE hObject, /* the object's handle */
CK_ATTRIBUTE_PTR pTemplate, /* template for new object */
CK_ULONG ulCount, /* attributes in template */
CK_OBJECT_HANDLE_PTR phNewObject /* receives handle of copy */
);
#endif
/* C_DestroyObject destroys an object. */
CK_PKCS11_FUNCTION_INFO(C_DestroyObject)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_OBJECT_HANDLE hObject /* the object's handle */
);
#endif
/* C_GetObjectSize gets the size of an object in bytes. */
CK_PKCS11_FUNCTION_INFO(C_GetObjectSize)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_OBJECT_HANDLE hObject, /* the object's handle */
CK_ULONG_PTR pulSize /* receives size of object */
);
#endif
/* C_GetAttributeValue obtains the value of one or more object
* attributes. */
CK_PKCS11_FUNCTION_INFO(C_GetAttributeValue)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_OBJECT_HANDLE hObject, /* the object's handle */
CK_ATTRIBUTE_PTR pTemplate, /* specifies attrs; gets vals */
CK_ULONG ulCount /* attributes in template */
);
#endif
/* C_SetAttributeValue modifies the value of one or more object
* attributes */
CK_PKCS11_FUNCTION_INFO(C_SetAttributeValue)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_OBJECT_HANDLE hObject, /* the object's handle */
CK_ATTRIBUTE_PTR pTemplate, /* specifies attrs and values */
CK_ULONG ulCount /* attributes in template */
);
#endif
/* C_FindObjectsInit initializes a search for token and session
* objects that match a template. */
CK_PKCS11_FUNCTION_INFO(C_FindObjectsInit)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_ATTRIBUTE_PTR pTemplate, /* attribute values to match */
CK_ULONG ulCount /* attrs in search template */
);
#endif
/* C_FindObjects continues a search for token and session
* objects that match a template, obtaining additional object
* handles. */
CK_PKCS11_FUNCTION_INFO(C_FindObjects)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_OBJECT_HANDLE_PTR phObject, /* gets obj. handles */
CK_ULONG ulMaxObjectCount, /* max handles to get */
CK_ULONG_PTR pulObjectCount /* actual # returned */
);
#endif
/* C_FindObjectsFinal finishes a search for token and session
* objects. */
CK_PKCS11_FUNCTION_INFO(C_FindObjectsFinal)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession /* the session's handle */
);
#endif
/* Encryption and decryption */
/* C_EncryptInit initializes an encryption operation. */
CK_PKCS11_FUNCTION_INFO(C_EncryptInit)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_MECHANISM_PTR pMechanism, /* the encryption mechanism */
CK_OBJECT_HANDLE hKey /* handle of encryption key */
);
#endif
/* C_Encrypt encrypts single-part data. */
CK_PKCS11_FUNCTION_INFO(C_Encrypt)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_BYTE_PTR pData, /* the plaintext data */
CK_ULONG ulDataLen, /* bytes of plaintext */
CK_BYTE_PTR pEncryptedData, /* gets ciphertext */
CK_ULONG_PTR pulEncryptedDataLen /* gets c-text size */
);
#endif
/* C_EncryptUpdate continues a multiple-part encryption
* operation. */
CK_PKCS11_FUNCTION_INFO(C_EncryptUpdate)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_BYTE_PTR pPart, /* the plaintext data */
CK_ULONG ulPartLen, /* plaintext data len */
CK_BYTE_PTR pEncryptedPart, /* gets ciphertext */
CK_ULONG_PTR pulEncryptedPartLen /* gets c-text size */
);
#endif
/* C_EncryptFinal finishes a multiple-part encryption
* operation. */
CK_PKCS11_FUNCTION_INFO(C_EncryptFinal)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session handle */
CK_BYTE_PTR pLastEncryptedPart, /* last c-text */
CK_ULONG_PTR pulLastEncryptedPartLen /* gets last size */
);
#endif
/* C_DecryptInit initializes a decryption operation. */
CK_PKCS11_FUNCTION_INFO(C_DecryptInit)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_MECHANISM_PTR pMechanism, /* the decryption mechanism */
CK_OBJECT_HANDLE hKey /* handle of decryption key */
);
#endif
/* C_Decrypt decrypts encrypted data in a single part. */
CK_PKCS11_FUNCTION_INFO(C_Decrypt)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_BYTE_PTR pEncryptedData, /* ciphertext */
CK_ULONG ulEncryptedDataLen, /* ciphertext length */
CK_BYTE_PTR pData, /* gets plaintext */
CK_ULONG_PTR pulDataLen /* gets p-text size */
);
#endif
/* C_DecryptUpdate continues a multiple-part decryption
* operation. */
CK_PKCS11_FUNCTION_INFO(C_DecryptUpdate)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_BYTE_PTR pEncryptedPart, /* encrypted data */
CK_ULONG ulEncryptedPartLen, /* input length */
CK_BYTE_PTR pPart, /* gets plaintext */
CK_ULONG_PTR pulPartLen /* p-text size */
);
#endif
/* C_DecryptFinal finishes a multiple-part decryption
* operation. */
CK_PKCS11_FUNCTION_INFO(C_DecryptFinal)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pLastPart, /* gets plaintext */
CK_ULONG_PTR pulLastPartLen /* p-text size */
);
#endif
/* Message digesting */
/* C_DigestInit initializes a message-digesting operation. */
CK_PKCS11_FUNCTION_INFO(C_DigestInit)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_MECHANISM_PTR pMechanism /* the digesting mechanism */
);
#endif
/* C_Digest digests data in a single part. */
CK_PKCS11_FUNCTION_INFO(C_Digest)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pData, /* data to be digested */
CK_ULONG ulDataLen, /* bytes of data to digest */
CK_BYTE_PTR pDigest, /* gets the message digest */
CK_ULONG_PTR pulDigestLen /* gets digest length */
);
#endif
/* C_DigestUpdate continues a multiple-part message-digesting
* operation. */
CK_PKCS11_FUNCTION_INFO(C_DigestUpdate)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pPart, /* data to be digested */
CK_ULONG ulPartLen /* bytes of data to be digested */
);
#endif
/* C_DigestKey continues a multi-part message-digesting
* operation, by digesting the value of a secret key as part of
* the data already digested. */
CK_PKCS11_FUNCTION_INFO(C_DigestKey)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_OBJECT_HANDLE hKey /* secret key to digest */
);
#endif
/* C_DigestFinal finishes a multiple-part message-digesting
* operation. */
CK_PKCS11_FUNCTION_INFO(C_DigestFinal)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pDigest, /* gets the message digest */
CK_ULONG_PTR pulDigestLen /* gets byte count of digest */
);
#endif
/* Signing and MACing */
/* C_SignInit initializes a signature (private key encryption)
* operation, where the signature is (will be) an appendix to
* the data, and plaintext cannot be recovered from the
*signature. */
CK_PKCS11_FUNCTION_INFO(C_SignInit)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_MECHANISM_PTR pMechanism, /* the signature mechanism */
CK_OBJECT_HANDLE hKey /* handle of signature key */
);
#endif
/* C_Sign signs (encrypts with private key) data in a single
* part, where the signature is (will be) an appendix to the
* data, and plaintext cannot be recovered from the signature. */
CK_PKCS11_FUNCTION_INFO(C_Sign)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pData, /* the data to sign */
CK_ULONG ulDataLen, /* count of bytes to sign */
CK_BYTE_PTR pSignature, /* gets the signature */
CK_ULONG_PTR pulSignatureLen /* gets signature length */
);
#endif
/* C_SignUpdate continues a multiple-part signature operation,
* where the signature is (will be) an appendix to the data,
* and plaintext cannot be recovered from the signature. */
CK_PKCS11_FUNCTION_INFO(C_SignUpdate)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pPart, /* the data to sign */
CK_ULONG ulPartLen /* count of bytes to sign */
);
#endif
/* C_SignFinal finishes a multiple-part signature operation,
* returning the signature. */
CK_PKCS11_FUNCTION_INFO(C_SignFinal)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pSignature, /* gets the signature */
CK_ULONG_PTR pulSignatureLen /* gets signature length */
);
#endif
/* C_SignRecoverInit initializes a signature operation, where
* the data can be recovered from the signature. */
CK_PKCS11_FUNCTION_INFO(C_SignRecoverInit)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_MECHANISM_PTR pMechanism, /* the signature mechanism */
CK_OBJECT_HANDLE hKey /* handle of the signature key */
);
#endif
/* C_SignRecover signs data in a single operation, where the
* data can be recovered from the signature. */
CK_PKCS11_FUNCTION_INFO(C_SignRecover)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pData, /* the data to sign */
CK_ULONG ulDataLen, /* count of bytes to sign */
CK_BYTE_PTR pSignature, /* gets the signature */
CK_ULONG_PTR pulSignatureLen /* gets signature length */
);
#endif
/* Verifying signatures and MACs */
/* C_VerifyInit initializes a verification operation, where the
* signature is an appendix to the data, and plaintext cannot
* cannot be recovered from the signature (e.g. DSA). */
CK_PKCS11_FUNCTION_INFO(C_VerifyInit)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_MECHANISM_PTR pMechanism, /* the verification mechanism */
CK_OBJECT_HANDLE hKey /* verification key */
);
#endif
/* C_Verify verifies a signature in a single-part operation,
* where the signature is an appendix to the data, and plaintext
* cannot be recovered from the signature. */
CK_PKCS11_FUNCTION_INFO(C_Verify)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pData, /* signed data */
CK_ULONG ulDataLen, /* length of signed data */
CK_BYTE_PTR pSignature, /* signature */
CK_ULONG ulSignatureLen /* signature length*/
);
#endif
/* C_VerifyUpdate continues a multiple-part verification
* operation, where the signature is an appendix to the data,
* and plaintext cannot be recovered from the signature. */
CK_PKCS11_FUNCTION_INFO(C_VerifyUpdate)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pPart, /* signed data */
CK_ULONG ulPartLen /* length of signed data */
);
#endif
/* C_VerifyFinal finishes a multiple-part verification
* operation, checking the signature. */
CK_PKCS11_FUNCTION_INFO(C_VerifyFinal)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pSignature, /* signature to verify */
CK_ULONG ulSignatureLen /* signature length */
);
#endif
/* C_VerifyRecoverInit initializes a signature verification
* operation, where the data is recovered from the signature. */
CK_PKCS11_FUNCTION_INFO(C_VerifyRecoverInit)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_MECHANISM_PTR pMechanism, /* the verification mechanism */
CK_OBJECT_HANDLE hKey /* verification key */
);
#endif
/* C_VerifyRecover verifies a signature in a single-part
* operation, where the data is recovered from the signature. */
CK_PKCS11_FUNCTION_INFO(C_VerifyRecover)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pSignature, /* signature to verify */
CK_ULONG ulSignatureLen, /* signature length */
CK_BYTE_PTR pData, /* gets signed data */
CK_ULONG_PTR pulDataLen /* gets signed data len */
);
#endif
/* Dual-function cryptographic operations */
/* C_DigestEncryptUpdate continues a multiple-part digesting
* and encryption operation. */
CK_PKCS11_FUNCTION_INFO(C_DigestEncryptUpdate)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_BYTE_PTR pPart, /* the plaintext data */
CK_ULONG ulPartLen, /* plaintext length */
CK_BYTE_PTR pEncryptedPart, /* gets ciphertext */
CK_ULONG_PTR pulEncryptedPartLen /* gets c-text length */
);
#endif
/* C_DecryptDigestUpdate continues a multiple-part decryption and
* digesting operation. */
CK_PKCS11_FUNCTION_INFO(C_DecryptDigestUpdate)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_BYTE_PTR pEncryptedPart, /* ciphertext */
CK_ULONG ulEncryptedPartLen, /* ciphertext length */
CK_BYTE_PTR pPart, /* gets plaintext */
CK_ULONG_PTR pulPartLen /* gets plaintext len */
);
#endif
/* C_SignEncryptUpdate continues a multiple-part signing and
* encryption operation. */
CK_PKCS11_FUNCTION_INFO(C_SignEncryptUpdate)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_BYTE_PTR pPart, /* the plaintext data */
CK_ULONG ulPartLen, /* plaintext length */
CK_BYTE_PTR pEncryptedPart, /* gets ciphertext */
CK_ULONG_PTR pulEncryptedPartLen /* gets c-text length */
);
#endif
/* C_DecryptVerifyUpdate continues a multiple-part decryption and
* verify operation. */
CK_PKCS11_FUNCTION_INFO(C_DecryptVerifyUpdate)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_BYTE_PTR pEncryptedPart, /* ciphertext */
CK_ULONG ulEncryptedPartLen, /* ciphertext length */
CK_BYTE_PTR pPart, /* gets plaintext */
CK_ULONG_PTR pulPartLen /* gets p-text length */
);
#endif
/* Key management */
/* C_GenerateKey generates a secret key, creating a new key
* object. */
CK_PKCS11_FUNCTION_INFO(C_GenerateKey)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_MECHANISM_PTR pMechanism, /* key generation mech. */
CK_ATTRIBUTE_PTR pTemplate, /* template for new key */
CK_ULONG ulCount, /* # of attrs in template */
CK_OBJECT_HANDLE_PTR phKey /* gets handle of new key */
);
#endif
/* C_GenerateKeyPair generates a public-key/private-key pair,
* creating new key objects. */
CK_PKCS11_FUNCTION_INFO(C_GenerateKeyPair)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session
* handle */
CK_MECHANISM_PTR pMechanism, /* key-gen
* mech. */
CK_ATTRIBUTE_PTR pPublicKeyTemplate, /* template
* for pub.
* key */
CK_ULONG ulPublicKeyAttributeCount, /* # pub.
* attrs. */
CK_ATTRIBUTE_PTR pPrivateKeyTemplate, /* template
* for priv.
* key */
CK_ULONG ulPrivateKeyAttributeCount, /* # priv.
* attrs. */
CK_OBJECT_HANDLE_PTR phPublicKey, /* gets pub.
* key
* handle */
CK_OBJECT_HANDLE_PTR phPrivateKey /* gets
* priv. key
* handle */
);
#endif
/* C_WrapKey wraps (i.e., encrypts) a key. */
CK_PKCS11_FUNCTION_INFO(C_WrapKey)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_MECHANISM_PTR pMechanism, /* the wrapping mechanism */
CK_OBJECT_HANDLE hWrappingKey, /* wrapping key */
CK_OBJECT_HANDLE hKey, /* key to be wrapped */
CK_BYTE_PTR pWrappedKey, /* gets wrapped key */
CK_ULONG_PTR pulWrappedKeyLen /* gets wrapped key size */
);
#endif
/* C_UnwrapKey unwraps (decrypts) a wrapped key, creating a new
* key object. */
CK_PKCS11_FUNCTION_INFO(C_UnwrapKey)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_MECHANISM_PTR pMechanism, /* unwrapping mech. */
CK_OBJECT_HANDLE hUnwrappingKey, /* unwrapping key */
CK_BYTE_PTR pWrappedKey, /* the wrapped key */
CK_ULONG ulWrappedKeyLen, /* wrapped key len */
CK_ATTRIBUTE_PTR pTemplate, /* new key template */
CK_ULONG ulAttributeCount, /* template length */
CK_OBJECT_HANDLE_PTR phKey /* gets new handle */
);
#endif
/* C_DeriveKey derives a key from a base key, creating a new key
* object. */
CK_PKCS11_FUNCTION_INFO(C_DeriveKey)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* session's handle */
CK_MECHANISM_PTR pMechanism, /* key deriv. mech. */
CK_OBJECT_HANDLE hBaseKey, /* base key */
CK_ATTRIBUTE_PTR pTemplate, /* new key template */
CK_ULONG ulAttributeCount, /* template length */
CK_OBJECT_HANDLE_PTR phKey /* gets new handle */
);
#endif
/* Random number generation */
/* C_SeedRandom mixes additional seed material into the token's
* random number generator. */
CK_PKCS11_FUNCTION_INFO(C_SeedRandom)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR pSeed, /* the seed material */
CK_ULONG ulSeedLen /* length of seed material */
);
#endif
/* C_GenerateRandom generates random data. */
CK_PKCS11_FUNCTION_INFO(C_GenerateRandom)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession, /* the session's handle */
CK_BYTE_PTR RandomData, /* receives the random data */
CK_ULONG ulRandomLen /* # of bytes to generate */
);
#endif
/* Parallel function management */
/* C_GetFunctionStatus is a legacy function; it obtains an
* updated status of a function running in parallel with an
* application. */
CK_PKCS11_FUNCTION_INFO(C_GetFunctionStatus)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession /* the session's handle */
);
#endif
/* C_CancelFunction is a legacy function; it cancels a function
* running in parallel. */
CK_PKCS11_FUNCTION_INFO(C_CancelFunction)
#ifdef CK_NEED_ARG_LIST
(
CK_SESSION_HANDLE hSession /* the session's handle */
);
#endif
/* Functions added in for Cryptoki Version 2.01 or later */
/* C_WaitForSlotEvent waits for a slot event (token insertion,
* removal, etc.) to occur. */
CK_PKCS11_FUNCTION_INFO(C_WaitForSlotEvent)
#ifdef CK_NEED_ARG_LIST
(
CK_FLAGS flags, /* blocking/nonblocking flag */
CK_SLOT_ID_PTR pSlot, /* location that receives the slot ID */
CK_VOID_PTR pRserved /* reserved. Should be NULL_PTR */
);
#endif

1885
bin/pkcs11/include/pkcs11t.h Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,82 @@
.\" Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
.\" REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
.\" AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
.\" LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id: pkcs11-destroy.8,v 1.3 2009/10/06 04:40:14 tbox Exp $
.\"
.hy 0
.ad l
.\" Title: pkcs11\-destroy
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: Sep 18, 2009
.\" Manual: BIND9
.\" Source: BIND9
.\"
.TH "PKCS11\-DESTROY" "8" "Sep 18, 2009" "BIND9" "BIND9"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.SH "NAME"
pkcs11\-destroy \- destroy PKCS#11 objects
.SH "SYNOPSIS"
.HP 15
\fBpkcs11\-destroy\fR [\fB\-m\ \fR\fB\fImodule\fR\fR] [\fB\-s\ \fR\fB\fIslot\fR\fR] {\-i\ \fIID\fR | \-l\ \fIlabel\fR} [\fB\-p\ \fR\fB\fIPIN\fR\fR]
.SH "DESCRIPTION"
.PP
\fBpkcs11\-destroy\fR
destroys keys stored in a PKCS#11 device, identified by their
\fBID\fR
or
\fBlabel\fR.
.PP
Matching keys are displayed before being destroyed. There is a five second delay to allow the user to interrupt the process before the destruction takes place.
.SH "ARGUMENTS"
.PP
\-m \fImodule\fR
.RS 4
Specify the PKCS#11 provider module. This must be the full path to a shared library object implementing the PKCS#11 API for the device.
.RE
.PP
\-s \fIslot\fR
.RS 4
Open the session with the given PKCS#11 slot. The default is slot 0.
.RE
.PP
\-i \fIID\fR
.RS 4
Destroy keys with the given object ID.
.RE
.PP
\-l \fIlabel\fR
.RS 4
Destroy keys with the given label.
.RE
.PP
\-p \fIPIN\fR
.RS 4
Specify the PIN for the device. If no PIN is provided on the command line,
\fBpkcs11\-destroy\fR
will prompt for it.
.RE
.SH "SEE ALSO"
.PP
\fBpkcs11\-list\fR(3),
\fBpkcs11\-keygen\fR(3)
.SH "AUTHOR"
.PP
Internet Systems Consortium
.SH "COPYRIGHT"
Copyright \(co 2009 Internet Systems Consortium, Inc. ("ISC")
.br

258
bin/pkcs11/pkcs11-destroy.c Normal file
View File

@@ -0,0 +1,258 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC 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.
*/
/*
* Portions copyright (c) 2008 Nominet UK. 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 ``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 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.
*/
/* $Id: pkcs11-destroy.c,v 1.7.36.1 2010/01/13 21:21:33 fdupont Exp $ */
/* pkcs11-destroy [-m module] [-s $slot] [-i $id | -l $label] [-p $pin] */
/*! \file */
#include <config.h>
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include "cryptoki.h"
#ifdef WIN32
#define sleep(x) Sleep(x)
#include "win32.c"
#else
#ifndef FORCE_STATIC_PROVIDER
#include "unix.c"
#endif
#endif
#if !(defined(HAVE_GETPASSPHRASE) || (defined (__SVR4) && defined (__sun)))
#define getpassphrase(x) getpass(x)
#endif
int
main(int argc, char *argv[])
{
CK_RV rv;
CK_SLOT_ID slot = 0;
CK_SESSION_HANDLE hSession;
CK_UTF8CHAR *pin = NULL;
CK_BYTE attr_id[2];
CK_OBJECT_HANDLE akey[50];
char *label = NULL;
int error = 0;
unsigned int id = 0, i = 0;
int c, errflg = 0;
CK_ULONG ulObjectCount;
CK_ATTRIBUTE search_template[] = {
{CKA_ID, &attr_id, sizeof(attr_id)}
};
char *pk11_provider;
unsigned int j, len;
extern char *optarg;
extern int optopt;
pk11_provider = getenv("PKCS11_PROVIDER");
if (pk11_provider != NULL)
pk11_libname = pk11_provider;
while ((c = getopt(argc, argv, ":m:s:i:l:p:")) != -1) {
switch (c) {
case 'm':
pk11_libname = optarg;
break;
case 's':
slot = atoi(optarg);
break;
case 'i':
id = atoi(optarg);
id &= 0xffff;
break;
case 'l':
label = optarg;
break;
case 'p':
pin = (CK_UTF8CHAR *)optarg;
break;
case ':':
fprintf(stderr,
"Option -%c requires an operand\n",
optopt);
errflg++;
break;
case '?':
default:
fprintf(stderr, "Unrecognised option: -%c\n", optopt);
errflg++;
}
}
if (errflg || (id && (label != NULL))) {
fprintf(stderr, "Usage:\n");
fprintf(stderr, "\tpkcs11-destroy [-m module] [-s slot] "
"[-i id | -l label] [-p pin]\n");
exit(1);
}
if (id) {
printf("id %i\n", id);
attr_id[0] = (id >> 8) & 0xff;
attr_id[1] = id & 0xff;
} else if (label) {
printf("label %s\n", label);
search_template[0].type = CKA_LABEL;
search_template[0].pValue = label;
search_template[0].ulValueLen = strlen(label);
}
/* Initialize the CRYPTOKI library */
rv = C_Initialize(NULL_PTR);
if (rv != CKR_OK) {
if (rv == 0xfe)
fprintf(stderr,
"Can't load or link module \"%s\"\n",
pk11_libname);
else
fprintf(stderr, "C_Initialize: Error = 0x%.8lX\n", rv);
exit(1);
}
/* Open a session on the slot found */
rv = C_OpenSession(slot, CKF_RW_SESSION+CKF_SERIAL_SESSION,
NULL_PTR, NULL_PTR, &hSession);
if (rv != CKR_OK) {
fprintf(stderr, "C_OpenSession: Error = 0x%.8lX\n", rv);
error = 1;
goto exit_program;
}
if (pin == NULL)
pin = (CK_UTF8CHAR *)getpassphrase("Enter Pin: ");
/* Login to the Token (Keystore) */
rv = C_Login(hSession, CKU_USER, pin, strlen((char *)pin));
memset(pin, 0, strlen((char *)pin));
if (rv != CKR_OK) {
fprintf(stderr, "C_Login: Error = 0x%.8lX\n", rv);
error = 1;
goto exit_session;
}
rv = C_FindObjectsInit(hSession, search_template,
((id != 0) || (label != NULL)) ? 1 : 0);
if (rv != CKR_OK) {
fprintf(stderr, "C_FindObjectsInit: Error = 0x%.8lX\n", rv);
error = 1;
goto exit_session;
}
rv = C_FindObjects(hSession, akey, 50, &ulObjectCount);
if (rv != CKR_OK) {
fprintf(stderr, "C_FindObjects: Error = 0x%.8lX\n", rv);
error = 1;
goto exit_search;
}
for (i = 0; i < ulObjectCount; i++) {
CK_OBJECT_CLASS oclass = 0;
CK_BYTE labelbuf[64 + 1];
CK_BYTE idbuf[64];
CK_ATTRIBUTE attr_template[] = {
{CKA_CLASS, &oclass, sizeof(oclass)},
{CKA_LABEL, labelbuf, sizeof(labelbuf) - 1},
{CKA_ID, idbuf, sizeof(idbuf)}
};
memset(labelbuf, 0, sizeof(labelbuf));
memset(idbuf, 0, sizeof(idbuf));
rv = C_GetAttributeValue(hSession, akey[i], attr_template, 3);
if (rv != CKR_OK) {
fprintf(stderr,
"C_GetAttributeValue[%u]: rv = 0x%.8lX\n",
i, rv);
error = 1;
goto exit_search;
}
len = attr_template[2].ulValueLen;
printf("object[%u]: class %lu label '%s' id[%lu] ",
i, oclass, labelbuf, attr_template[2].ulValueLen);
if (len > 4)
len = 4;
if (len > 0)
printf("0x");
for (j = 0; j < len; j++)
printf("%02x", idbuf[j]);
if (attr_template[2].ulValueLen > len)
printf("...\n");
else
printf("\n");
}
/* give a chance to kill this */
printf("sleeping 5 seconds...\n");
sleep(5);
for (i = 0; i < ulObjectCount; i++) {
rv = C_DestroyObject(hSession, akey[i]);
if (rv != CKR_OK) {
fprintf(stderr,
"C_DestroyObject[%u]: rv = 0x%.8lX\n",
i, rv);
error = 1;
}
}
exit_search:
rv = C_FindObjectsFinal(hSession);
if (rv != CKR_OK) {
fprintf(stderr, "C_FindObjectsFinal: Error = 0x%.8lX\n", rv);
error = 1;
}
exit_session:
(void)C_CloseSession(hSession);
exit_program:
(void)C_Finalize(NULL_PTR);
exit(error);
}

View File

@@ -0,0 +1,147 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: pkcs11-destroy.docbook,v 1.2 2009/10/05 12:07:08 fdupont Exp $ -->
<refentry id="man.pkcs11-destroy">
<refentryinfo>
<date>Sep 18, 2009</date>
</refentryinfo>
<refmeta>
<refentrytitle><application>pkcs11-destroy</application></refentrytitle>
<manvolnum>8</manvolnum>
<refmiscinfo>BIND9</refmiscinfo>
</refmeta>
<refnamediv>
<refname><application>pkcs11-destroy</application></refname>
<refpurpose>destroy PKCS#11 objects</refpurpose>
</refnamediv>
<docinfo>
<copyright>
<year>2009</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<command>pkcs11-destroy</command>
<arg><option>-m <replaceable class="parameter">module</replaceable></option></arg>
<arg><option>-s <replaceable class="parameter">slot</replaceable></option></arg>
<group choice="req">
<arg choice="plain">-i <replaceable class="parameter">ID</replaceable></arg>
<arg choice="plain">-l <replaceable class="parameter">label</replaceable></arg>
</group>
<arg><option>-p <replaceable class="parameter">PIN</replaceable></option></arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<para>
<command>pkcs11-destroy</command> destroys keys stored in a
PKCS#11 device, identified by their <option>ID</option> or
<option>label</option>.
</para>
<para>
Matching keys are displayed before being destroyed. There is a
five second delay to allow the user to interrupt the process
before the destruction takes place.
</para>
</refsect1>
<refsect1>
<title>ARGUMENTS</title>
<variablelist>
<varlistentry>
<term>-m <replaceable class="parameter">module</replaceable></term>
<listitem>
<para>
Specify the PKCS#11 provider module. This must be the full
path to a shared library object implementing the PKCS#11 API
for the device.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-s <replaceable class="parameter">slot</replaceable></term>
<listitem>
<para>
Open the session with the given PKCS#11 slot. The default is
slot 0.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-i <replaceable class="parameter">ID</replaceable></term>
<listitem>
<para>
Destroy keys with the given object ID.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-l <replaceable class="parameter">label</replaceable></term>
<listitem>
<para>
Destroy keys with the given label.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-p <replaceable class="parameter">PIN</replaceable></term>
<listitem>
<para>
Specify the PIN for the device. If no PIN is provided on the
command line, <command>pkcs11-destroy</command> will prompt for it.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>SEE ALSO</title>
<para>
<citerefentry>
<refentrytitle>pkcs11-list</refentrytitle><manvolnum>3</manvolnum>
</citerefentry>,
<citerefentry>
<refentrytitle>pkcs11-keygen</refentrytitle><manvolnum>3</manvolnum>
</citerefentry>
</para>
</refsect1>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->

View File

@@ -0,0 +1,89 @@
<!--
- Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: pkcs11-destroy.html,v 1.3 2009/10/06 04:40:14 tbox Exp $ -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>pkcs11-destroy</title>
<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="man.pkcs11-destroy"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">pkcs11-destroy</span> &#8212; destroy PKCS#11 objects</p>
</div>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">pkcs11-destroy</code> [<code class="option">-m <em class="replaceable"><code>module</code></em></code>] [<code class="option">-s <em class="replaceable"><code>slot</code></em></code>] { -i <em class="replaceable"><code>ID</code></em> | -l <em class="replaceable"><code>label</code></em> } [<code class="option">-p <em class="replaceable"><code>PIN</code></em></code>]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543384"></a><h2>DESCRIPTION</h2>
<p>
<span><strong class="command">pkcs11-destroy</strong></span> destroys keys stored in a
PKCS#11 device, identified by their <code class="option">ID</code> or
<code class="option">label</code>.
</p>
<p>
Matching keys are displayed before being destroyed. There is a
five second delay to allow the user to interrupt the process
before the destruction takes place.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543406"></a><h2>ARGUMENTS</h2>
<div class="variablelist"><dl>
<dt><span class="term">-m <em class="replaceable"><code>module</code></em></span></dt>
<dd><p>
Specify the PKCS#11 provider module. This must be the full
path to a shared library object implementing the PKCS#11 API
for the device.
</p></dd>
<dt><span class="term">-s <em class="replaceable"><code>slot</code></em></span></dt>
<dd><p>
Open the session with the given PKCS#11 slot. The default is
slot 0.
</p></dd>
<dt><span class="term">-i <em class="replaceable"><code>ID</code></em></span></dt>
<dd><p>
Destroy keys with the given object ID.
</p></dd>
<dt><span class="term">-l <em class="replaceable"><code>label</code></em></span></dt>
<dd><p>
Destroy keys with the given label.
</p></dd>
<dt><span class="term">-p <em class="replaceable"><code>PIN</code></em></span></dt>
<dd><p>
Specify the PIN for the device. If no PIN is provided on the
command line, <span><strong class="command">pkcs11-destroy</strong></span> will prompt for it.
</p></dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543507"></a><h2>SEE ALSO</h2>
<p>
<span class="citerefentry"><span class="refentrytitle">pkcs11-list</span>(3)</span>,
<span class="citerefentry"><span class="refentrytitle">pkcs11-keygen</span>(3)</span>
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543533"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div></body>
</html>

102
bin/pkcs11/pkcs11-keygen.8 Normal file
View File

@@ -0,0 +1,102 @@
.\" Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
.\" REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
.\" AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
.\" LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id: pkcs11-keygen.8,v 1.4 2009/10/06 04:40:14 tbox Exp $
.\"
.hy 0
.ad l
.\" Title: pkcs11\-keygen
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: Sep 18, 2009
.\" Manual: BIND9
.\" Source: BIND9
.\"
.TH "PKCS11\-KEYGEN" "8" "Sep 18, 2009" "BIND9" "BIND9"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.SH "NAME"
pkcs11\-keygen \- generate RSA keys on a PKCS#11 device
.SH "SYNOPSIS"
.HP 14
\fBpkcs11\-keygen\fR [\fB\-P\fR] [\fB\-m\ \fR\fB\fImodule\fR\fR] [\fB\-s\ \fR\fB\fIslot\fR\fR] [\fB\-e\fR] {\-b\ \fIkeysize\fR} {\-l\ \fIlabel\fR} [\fB\-i\ \fR\fB\fIid\fR\fR] [\fB\-p\ \fR\fB\fIPIN\fR\fR]
.SH "DESCRIPTION"
.PP
\fBpkcs11\-keygen\fR
causes a PKCS#11 device to generate a new RSA key pair with the specified
\fBlabel\fR
and with
\fBkeysize\fR
bits of modulus.
.SH "ARGUMENTS"
.PP
\-P
.RS 4
Set the new private key to be non\-sensitive and extractable. The allows the private key data to be read from the PKCS#11 device. The default is for private keys to be sensitive and non\-extractable.
.RE
.PP
\-m \fImodule\fR
.RS 4
Specify the PKCS#11 provider module. This must be the full path to a shared library object implementing the PKCS#11 API for the device.
.RE
.PP
\-s \fIslot\fR
.RS 4
Open the session with the given PKCS#11 slot. The default is slot 0.
.RE
.PP
\-e
.RS 4
Use a large exponent.
.RE
.PP
\-b \fIkeysize\fR
.RS 4
Create the key pair with
\fBkeysize\fR
bits of modulus.
.RE
.PP
\-l \fIlabel\fR
.RS 4
Create key objects with the given label. This name must be unique.
.RE
.PP
\-i \fIid\fR
.RS 4
Create key objects with id. The id is either an unsigned short 2 byte or an unsigned long 4 byte number.
.RE
.PP
\-p \fIPIN\fR
.RS 4
Specify the PIN for the device. If no PIN is provided on the command line,
\fBpkcs11\-keygen\fR
will prompt for it.
.RE
.SH "SEE ALSO"
.PP
\fBpkcs11\-list\fR(3),
\fBpkcs11\-destroy\fR(3),
\fBdnssec\-keyfromlabel\fR(3),
.SH "CAVEAT"
.PP
Some PKCS#11 providers crash with big public exponent.
.SH "AUTHOR"
.PP
Internet Systems Consortium
.SH "COPYRIGHT"
Copyright \(co 2009 Internet Systems Consortium, Inc. ("ISC")
.br

308
bin/pkcs11/pkcs11-keygen.c Normal file
View File

@@ -0,0 +1,308 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC 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.
*/
/*
* Portions copyright (c) 2008 Nominet UK. 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 ``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 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.
*/
/* $Id: pkcs11-keygen.c,v 1.9 2009/10/26 23:36:53 each Exp $ */
/* pkcs11-keygen - pkcs11 rsa key generator
*
* create RSASHA1 key in the keystore of an SCA6000
* The calculation of key tag is left to the script
* that converts the key into a DNSKEY RR and inserts
* it into a zone file.
*
* usage:
* pkcs11-keygen [-P] [-m module] [-s slot] [-e] -b keysize
* -l label [-i id] [-p pin]
*
*/
/*! \file */
#include <config.h>
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include "cryptoki.h"
#ifdef WIN32
#include "win32.c"
#else
#ifndef FORCE_STATIC_PROVIDER
#include "unix.c"
#endif
#endif
#if !(defined(HAVE_GETPASSPHRASE) || (defined (__SVR4) && defined (__sun)))
#define getpassphrase(x) getpass(x)
#endif
/* Define static key template values */
static CK_BBOOL truevalue = TRUE;
static CK_BBOOL falsevalue = FALSE;
int
main(int argc, char *argv[])
{
CK_RV rv;
CK_SLOT_ID slot = 0;
CK_MECHANISM genmech;
CK_SESSION_HANDLE hSession;
CK_UTF8CHAR *pin = NULL;
CK_ULONG modulusbits = 0;
CK_CHAR *label = NULL;
CK_OBJECT_HANDLE privatekey, publickey;
CK_BYTE public_exponent[5];
CK_ULONG expsize = 3;
int error = 0;
int c, errflg = 0;
int hide = 1;
int idlen = 0;
unsigned long id = 0;
CK_BYTE idbuf[4];
CK_ULONG ulObjectCount;
/* Set search template */
CK_ATTRIBUTE search_template[] = {
{CKA_LABEL, NULL_PTR, 0}
};
CK_ATTRIBUTE publickey_template[] = {
{CKA_LABEL, NULL_PTR, 0},
{CKA_VERIFY, &truevalue, sizeof(truevalue)},
{CKA_TOKEN, &truevalue, sizeof(truevalue)},
{CKA_MODULUS_BITS, &modulusbits, sizeof(modulusbits)},
{CKA_PUBLIC_EXPONENT, &public_exponent, expsize},
{CKA_ID, &idbuf, idlen}
};
CK_ULONG publickey_attrcnt = 6;
CK_ATTRIBUTE privatekey_template[] = {
{CKA_LABEL, NULL_PTR, 0},
{CKA_SIGN, &truevalue, sizeof(truevalue)},
{CKA_TOKEN, &truevalue, sizeof(truevalue)},
{CKA_PRIVATE, &truevalue, sizeof(truevalue)},
{CKA_SENSITIVE, &truevalue, sizeof(truevalue)},
{CKA_EXTRACTABLE, &falsevalue, sizeof(falsevalue)},
{CKA_ID, &idbuf, idlen}
};
CK_ULONG privatekey_attrcnt = 7;
char *pk11_provider;
extern char *optarg;
extern int optopt;
pk11_provider = getenv("PKCS11_PROVIDER");
if (pk11_provider != NULL)
pk11_libname = pk11_provider;
while ((c = getopt(argc, argv, ":Pm:s:b:ei:l:p:")) != -1) {
switch (c) {
case 'P':
hide = 0;
break;
case 'm':
pk11_libname = optarg;
break;
case 's':
slot = atoi(optarg);
break;
case 'e':
expsize = 5;
break;
case 'b':
modulusbits = atoi(optarg);
break;
case 'l':
label = (CK_CHAR *)optarg;
break;
case 'i':
id = strtoul(optarg, NULL, 0);
idlen = 4;
break;
case 'p':
pin = (CK_UTF8CHAR *)optarg;
break;
case ':':
fprintf(stderr,
"Option -%c requires an operand\n",
optopt);
errflg++;
break;
case '?':
default:
fprintf(stderr, "Unrecognised option: -%c\n", optopt);
errflg++;
}
}
if (errflg || !modulusbits || (label == NULL)) {
fprintf(stderr, "Usage:\n");
fprintf(stderr, "\tpkcs11-keygen -b keysize -l label\n");
fprintf(stderr, "\t [-P] [-m module] "
"[-s slot] [-e] [-i id] [-p PIN]\n");
exit(2);
}
search_template[0].pValue = label;
search_template[0].ulValueLen = strlen((char *)label);
publickey_template[0].pValue = label;
publickey_template[0].ulValueLen = strlen((char *)label);
privatekey_template[0].pValue = label;
privatekey_template[0].ulValueLen = strlen((char *)label);
/* Set public exponent to F4 or F5 */
public_exponent[0] = 0x01;
public_exponent[1] = 0x00;
if (expsize == 3)
public_exponent[2] = 0x01;
else {
publickey_template[4].ulValueLen = expsize;
public_exponent[2] = 0x00;
public_exponent[3] = 0x00;
public_exponent[4] = 0x01;
}
/* Set up mechanism for generating key pair */
genmech.mechanism = CKM_RSA_PKCS_KEY_PAIR_GEN;
genmech.pParameter = NULL_PTR;
genmech.ulParameterLen = 0;
if (idlen == 0) {
publickey_attrcnt--;
privatekey_attrcnt--;
} else if (id <= 0xffff) {
idlen = 2;
publickey_template[5].ulValueLen = idlen;
privatekey_template[6].ulValueLen = idlen;
idbuf[0] = (CK_BYTE)(id >> 8);
idbuf[1] = (CK_BYTE)id;
} else {
idbuf[0] = (CK_BYTE)(id >> 24);
idbuf[1] = (CK_BYTE)(id >> 16);
idbuf[2] = (CK_BYTE)(id >> 8);
idbuf[3] = (CK_BYTE)id;
}
/* Initialize the CRYPTOKI library */
rv = C_Initialize(NULL_PTR);
if (rv != CKR_OK) {
if (rv == 0xfe)
fprintf(stderr,
"Can't load or link module \"%s\"\n",
pk11_libname);
else
fprintf(stderr, "C_Initialize: Error = 0x%.8lX\n", rv);
exit(1);
}
/* Open a session on the slot found */
rv = C_OpenSession(slot, CKF_RW_SESSION+CKF_SERIAL_SESSION,
NULL_PTR, NULL_PTR, &hSession);
if (rv != CKR_OK) {
fprintf(stderr, "C_OpenSession: Error = 0x%.8lX\n", rv);
error = 1;
goto exit_program;
}
/* Login to the Token (Keystore) */
if (pin == NULL)
pin = (CK_UTF8CHAR *)getpassphrase("Enter Pin: ");
rv = C_Login(hSession, CKU_USER, pin, strlen((char *)pin));
memset(pin, 0, strlen((char *)pin));
if (rv != CKR_OK) {
fprintf(stderr, "C_Login: Error = 0x%.8lX\n", rv);
error = 1;
goto exit_session;
}
/* check if a key with the same id already exists */
rv = C_FindObjectsInit(hSession, search_template, 1);
if (rv != CKR_OK) {
fprintf(stderr, "C_FindObjectsInit: Error = 0x%.8lX\n", rv);
error = 1;
goto exit_session;
}
rv = C_FindObjects(hSession, &privatekey, 1, &ulObjectCount);
if (rv != CKR_OK) {
fprintf(stderr, "C_FindObjects: Error = 0x%.8lX\n", rv);
error = 1;
goto exit_search;
}
if (ulObjectCount != 0) {
fprintf(stderr, "Key already exists.\n");
error = 1;
goto exit_search;
}
/* Set attributes if the key is not to be hidden */
if (!hide) {
privatekey_template[4].pValue = &falsevalue;
privatekey_template[5].pValue = &truevalue;
}
/* Generate Key pair for signing/verifying */
rv = C_GenerateKeyPair(hSession, &genmech,
publickey_template, publickey_attrcnt,
privatekey_template, privatekey_attrcnt,
&publickey, &privatekey);
if (rv != CKR_OK) {
fprintf(stderr, "C_GenerateKeyPair: Error = 0x%.8lX\n", rv);
error = 1;
}
exit_search:
rv = C_FindObjectsFinal(hSession);
if (rv != CKR_OK) {
fprintf(stderr, "C_FindObjectsFinal: Error = 0x%.8lX\n", rv);
error = 1;
}
exit_session:
(void)C_CloseSession(hSession);
exit_program:
(void)C_Finalize(NULL_PTR);
exit(error);
}

View File

@@ -0,0 +1,184 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: pkcs11-keygen.docbook,v 1.3 2009/10/05 12:23:11 fdupont Exp $ -->
<refentry id="man.pkcs11-keygen">
<refentryinfo>
<date>Sep 18, 2009</date>
</refentryinfo>
<refmeta>
<refentrytitle><application>pkcs11-keygen</application></refentrytitle>
<manvolnum>8</manvolnum>
<refmiscinfo>BIND9</refmiscinfo>
</refmeta>
<refnamediv>
<refname><application>pkcs11-keygen</application></refname>
<refpurpose>generate RSA keys on a PKCS#11 device</refpurpose>
</refnamediv>
<docinfo>
<copyright>
<year>2009</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<command>pkcs11-keygen</command>
<arg><option>-P</option></arg>
<arg><option>-m <replaceable class="parameter">module</replaceable></option></arg>
<arg><option>-s <replaceable class="parameter">slot</replaceable></option></arg>
<arg><option>-e</option></arg>
<arg choice="req">-b <replaceable class="parameter">keysize</replaceable></arg>
<arg choice="req">-l <replaceable class="parameter">label</replaceable></arg>
<arg><option>-i <replaceable class="parameter">id</replaceable></option></arg>
<arg><option>-p <replaceable class="parameter">PIN</replaceable></option></arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<para>
<command>pkcs11-keygen</command> causes a PKCS#11 device to generate
a new RSA key pair with the specified <option>label</option> and
with <option>keysize</option> bits of modulus.
</para>
</refsect1>
<refsect1>
<title>ARGUMENTS</title>
<variablelist>
<varlistentry>
<term>-P</term>
<listitem>
<para>
Set the new private key to be non-sensitive and extractable.
The allows the private key data to be read from the PKCS#11
device. The default is for private keys to be sensitive and
non-extractable.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-m <replaceable class="parameter">module</replaceable></term>
<listitem>
<para>
Specify the PKCS#11 provider module. This must be the full
path to a shared library object implementing the PKCS#11 API
for the device.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-s <replaceable class="parameter">slot</replaceable></term>
<listitem>
<para>
Open the session with the given PKCS#11 slot. The default is
slot 0.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-e</term>
<listitem>
<para>
Use a large exponent.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-b <replaceable class="parameter">keysize</replaceable></term>
<listitem>
<para>
Create the key pair with <option>keysize</option> bits of
modulus.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-l <replaceable class="parameter">label</replaceable></term>
<listitem>
<para>
Create key objects with the given label.
This name must be unique.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-i <replaceable class="parameter">id</replaceable></term>
<listitem>
<para>
Create key objects with id. The id is either
an unsigned short 2 byte or an unsigned long 4 byte number.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-p <replaceable class="parameter">PIN</replaceable></term>
<listitem>
<para>
Specify the PIN for the device. If no PIN is provided on the
command line, <command>pkcs11-keygen</command> will prompt for it.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>SEE ALSO</title>
<para>
<citerefentry>
<refentrytitle>pkcs11-list</refentrytitle><manvolnum>3</manvolnum>
</citerefentry>,
<citerefentry>
<refentrytitle>pkcs11-destroy</refentrytitle><manvolnum>3</manvolnum>
</citerefentry>,
<citerefentry>
<refentrytitle>dnssec-keyfromlabel</refentrytitle><manvolnum>3</manvolnum>
</citerefentry>,
</para>
</refsect1>
<refsect1>
<title>CAVEAT</title>
<para>Some PKCS#11 providers crash with big public exponent.</para>
</refsect1>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->

View File

@@ -0,0 +1,107 @@
<!--
- Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: pkcs11-keygen.html,v 1.4 2009/10/06 04:40:14 tbox Exp $ -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>pkcs11-keygen</title>
<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="man.pkcs11-keygen"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">pkcs11-keygen</span> &#8212; generate RSA keys on a PKCS#11 device</p>
</div>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">pkcs11-keygen</code> [<code class="option">-P</code>] [<code class="option">-m <em class="replaceable"><code>module</code></em></code>] [<code class="option">-s <em class="replaceable"><code>slot</code></em></code>] [<code class="option">-e</code>] {-b <em class="replaceable"><code>keysize</code></em>} {-l <em class="replaceable"><code>label</code></em>} [<code class="option">-i <em class="replaceable"><code>id</code></em></code>] [<code class="option">-p <em class="replaceable"><code>PIN</code></em></code>]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543397"></a><h2>DESCRIPTION</h2>
<p>
<span><strong class="command">pkcs11-keygen</strong></span> causes a PKCS#11 device to generate
a new RSA key pair with the specified <code class="option">label</code> and
with <code class="option">keysize</code> bits of modulus.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543416"></a><h2>ARGUMENTS</h2>
<div class="variablelist"><dl>
<dt><span class="term">-P</span></dt>
<dd><p>
Set the new private key to be non-sensitive and extractable.
The allows the private key data to be read from the PKCS#11
device. The default is for private keys to be sensitive and
non-extractable.
</p></dd>
<dt><span class="term">-m <em class="replaceable"><code>module</code></em></span></dt>
<dd><p>
Specify the PKCS#11 provider module. This must be the full
path to a shared library object implementing the PKCS#11 API
for the device.
</p></dd>
<dt><span class="term">-s <em class="replaceable"><code>slot</code></em></span></dt>
<dd><p>
Open the session with the given PKCS#11 slot. The default is
slot 0.
</p></dd>
<dt><span class="term">-e</span></dt>
<dd><p>
Use a large exponent.
</p></dd>
<dt><span class="term">-b <em class="replaceable"><code>keysize</code></em></span></dt>
<dd><p>
Create the key pair with <code class="option">keysize</code> bits of
modulus.
</p></dd>
<dt><span class="term">-l <em class="replaceable"><code>label</code></em></span></dt>
<dd><p>
Create key objects with the given label.
This name must be unique.
</p></dd>
<dt><span class="term">-i <em class="replaceable"><code>id</code></em></span></dt>
<dd><p>
Create key objects with id. The id is either
an unsigned short 2 byte or an unsigned long 4 byte number.
</p></dd>
<dt><span class="term">-p <em class="replaceable"><code>PIN</code></em></span></dt>
<dd><p>
Specify the PIN for the device. If no PIN is provided on the
command line, <span><strong class="command">pkcs11-keygen</strong></span> will prompt for it.
</p></dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543563"></a><h2>SEE ALSO</h2>
<p>
<span class="citerefentry"><span class="refentrytitle">pkcs11-list</span>(3)</span>,
<span class="citerefentry"><span class="refentrytitle">pkcs11-destroy</span>(3)</span>,
<span class="citerefentry"><span class="refentrytitle">dnssec-keyfromlabel</span>(3)</span>,
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543598"></a><h2>CAVEAT</h2>
<p>Some PKCS#11 providers crash with big public exponent.</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543609"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div></body>
</html>

86
bin/pkcs11/pkcs11-list.8 Normal file
View File

@@ -0,0 +1,86 @@
.\" Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
.\" REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
.\" AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
.\" LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.\" $Id: pkcs11-list.8,v 1.3 2009/10/06 04:40:14 tbox Exp $
.\"
.hy 0
.ad l
.\" Title: pkcs11\-list
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
.\" Date: Sep 18, 2009
.\" Manual: BIND9
.\" Source: BIND9
.\"
.TH "PKCS11\-LIST" "8" "Sep 18, 2009" "BIND9" "BIND9"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.SH "NAME"
pkcs11\-list \- list PKCS#11 objects
.SH "SYNOPSIS"
.HP 12
\fBpkcs11\-list\fR [\fB\-P\fR] [\fB\-m\ \fR\fB\fImodule\fR\fR] [\fB\-s\ \fR\fB\fIslot\fR\fR] [\-i\ \fIID\fR] [\-l\ \fIlabel\fR] [\fB\-p\ \fR\fB\fIPIN\fR\fR]
.SH "DESCRIPTION"
.PP
\fBpkcs11\-list\fR
lists the PKCS#11 objects with
\fBID\fR
or
\fBlabel\fR
or by default all objects.
.SH "ARGUMENTS"
.PP
\-P
.RS 4
List only the public objects. (Note that on some PKCS#11 devices, all objects are private.)
.RE
.PP
\-m \fImodule\fR
.RS 4
Specify the PKCS#11 provider module. This must be the full path to a shared library object implementing the PKCS#11 API for the device.
.RE
.PP
\-s \fIslot\fR
.RS 4
Open the session with the given PKCS#11 slot. The default is slot 0.
.RE
.PP
\-i \fIID\fR
.RS 4
List only key objects with the given object ID.
.RE
.PP
\-l \fIlabel\fR
.RS 4
List only key objects with the given label.
.RE
.PP
\-p \fIPIN\fR
.RS 4
Specify the PIN for the device. If no PIN is provided on the command line,
\fBpkcs11\-list\fR
will prompt for it.
.RE
.SH "SEE ALSO"
.PP
\fBpkcs11\-keygen\fR(3),
\fBpkcs11\-destroy\fR(3)
.SH "AUTHOR"
.PP
Internet Systems Consortium
.SH "COPYRIGHT"
Copyright \(co 2009 Internet Systems Consortium, Inc. ("ISC")
.br

276
bin/pkcs11/pkcs11-list.c Normal file
View File

@@ -0,0 +1,276 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC 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.
*/
/*
* Portions copyright (c) 2008 Nominet UK. 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 ``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 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.
*/
/* $Id: pkcs11-list.c,v 1.7 2009/10/26 23:36:53 each Exp $ */
/* pkcs11-list [-P] [-m module] [-s slot] [-i $id | -l $label] [-p $pin] */
/*! \file */
#include <config.h>
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include "cryptoki.h"
#ifdef WIN32
#include "win32.c"
#else
#ifndef FORCE_STATIC_PROVIDER
#include "unix.c"
#endif
#endif
#if !(defined(HAVE_GETPASSPHRASE) || (defined (__SVR4) && defined (__sun)))
#define getpassphrase(x) getpass(x)
#endif
int
main(int argc, char *argv[])
{
CK_RV rv;
CK_SLOT_ID slot = 0;
CK_SESSION_HANDLE hSession;
CK_UTF8CHAR *pin = NULL;
CK_BYTE attr_id[2];
CK_OBJECT_HANDLE akey[50];
char *label = NULL;
int error = 0, public = 0, all = 0;
unsigned int i = 0, id = 0;
int c, errflg = 0;
CK_ULONG ulObjectCount;
CK_ATTRIBUTE search_template[] = {
{CKA_ID, &attr_id, sizeof(attr_id)}
};
char *pk11_provider;
extern char *optarg;
extern int optopt;
pk11_provider = getenv("PKCS11_PROVIDER");
if (pk11_provider != NULL)
pk11_libname = pk11_provider;
while ((c = getopt(argc, argv, ":m:s:i:l:p:P")) != -1) {
switch (c) {
case 'P':
public = 1;
break;
case 'm':
pk11_libname = optarg;
break;
case 's':
slot = atoi(optarg);
break;
case 'i':
id = atoi(optarg);
id &= 0xffff;
break;
case 'l':
label = optarg;
break;
case 'p':
pin = (CK_UTF8CHAR *)optarg;
break;
case ':':
fprintf(stderr, "Option -%c requires an operand\n",
optopt);
errflg++;
break;
case '?':
default:
fprintf(stderr, "Unrecognised option: -%c\n", optopt);
errflg++;
}
}
if (errflg) {
fprintf(stderr, "Usage:\n");
fprintf(stderr, "\tpkcs11-list [-P] [-m module] [-s slot] "
"[-i id | -l label] [-p pin]\n");
exit(1);
}
if (!id && (label == NULL))
all = 1;
if (slot)
printf("slot %lu\n", slot);
if (id) {
printf("id %i\n", id);
attr_id[0] = (id >> 8) & 0xff;
attr_id[1] = id & 0xff;
} else if (label != NULL) {
printf("label %s\n", label);
search_template[0].type = CKA_LABEL;
search_template[0].pValue = label;
search_template[0].ulValueLen = strlen(label);
}
/* Initialize the CRYPTOKI library */
rv = C_Initialize(NULL_PTR);
if (rv != CKR_OK) {
if (rv == 0xfe)
fprintf(stderr,
"Can't load or link module \"%s\"\n",
pk11_libname);
else
fprintf(stderr, "C_Initialize: Error = 0x%.8lX\n", rv);
exit(1);
}
/* Open a session on the slot found */
rv = C_OpenSession(slot, CKF_SERIAL_SESSION,
NULL_PTR, NULL_PTR, &hSession);
if (rv != CKR_OK) {
fprintf(stderr, "C_OpenSession: Error = 0x%.8lX\n", rv);
error = 1;
goto exit_program;
}
/* Login to the Token (Keystore) */
if (!public) {
if (pin == NULL)
pin = (CK_UTF8CHAR *)getpassphrase("Enter Pin: ");
rv = C_Login(hSession, CKU_USER, pin, strlen((char *)pin));
memset(pin, 0, strlen((char *)pin));
if (rv != CKR_OK) {
fprintf(stderr, "C_Login: Error = 0x%.8lX\n", rv);
error = 1;
goto exit_session;
}
}
rv = C_FindObjectsInit(hSession, search_template, all ? 0 : 1);
if (rv != CKR_OK) {
fprintf(stderr, "C_FindObjectsInit: Error = 0x%.8lX\n", rv);
error = 1;
goto exit_session;
}
ulObjectCount = 1;
while (ulObjectCount) {
rv = C_FindObjects(hSession, akey, 50, &ulObjectCount);
if (rv != CKR_OK) {
fprintf(stderr,
"C_FindObjects: Error = 0x%.8lX\n",
rv);
error = 1;
goto exit_search;
}
for (i = 0; i < ulObjectCount; i++) {
unsigned int j, len;
CK_OBJECT_CLASS oclass = 0;
CK_BYTE labelbuf[64 + 1];
CK_BYTE idbuf[64];
CK_ATTRIBUTE template[] = {
{CKA_CLASS, &oclass, sizeof(oclass)},
{CKA_LABEL, labelbuf, sizeof(labelbuf) - 1},
{CKA_ID, idbuf, sizeof(idbuf)}
};
memset(labelbuf, 0, sizeof(labelbuf));
memset(idbuf, 0, sizeof(idbuf));
rv = C_GetAttributeValue(hSession, akey[i],
template, 3);
if (rv != CKR_OK) {
fprintf(stderr,
"C_GetAttributeValue[%u]: "
"rv = 0x%.8lX\n",
i, rv);
if (rv == CKR_BUFFER_TOO_SMALL)
fprintf(stderr,
"%u too small: %lu %lu %lu\n",
i,
template[0].ulValueLen,
template[1].ulValueLen,
template[2].ulValueLen);
error = 1;
continue;
}
len = template[2].ulValueLen;
printf("object[%u]: handle %lu class %lu "
"label[%lu] '%s' id[%lu] ",
i, akey[i], oclass,
template[1].ulValueLen,
labelbuf,
template[2].ulValueLen);
if (len == 2) {
id = (idbuf[0] << 8) & 0xff00;
id |= idbuf[1] & 0xff;
printf("%u\n", id);
} else {
if (len > 8)
len = 8;
if (len > 0)
printf("0x");
for (j = 0; j < len; j++)
printf("%02x", idbuf[j]);
if (template[2].ulValueLen > len)
printf("...\n");
else
printf("\n");
}
}
}
exit_search:
rv = C_FindObjectsFinal(hSession);
if (rv != CKR_OK) {
fprintf(stderr, "C_FindObjectsFinal: Error = 0x%.8lX\n", rv);
error = 1;
}
exit_session:
(void)C_CloseSession(hSession);
exit_program:
(void)C_Finalize(NULL_PTR);
exit(error);
}

View File

@@ -0,0 +1,151 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY mdash "&#8212;">]>
<!--
- Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: pkcs11-list.docbook,v 1.2 2009/10/05 12:07:08 fdupont Exp $ -->
<refentry id="man.pkcs11-list">
<refentryinfo>
<date>Sep 18, 2009</date>
</refentryinfo>
<refmeta>
<refentrytitle><application>pkcs11-list</application></refentrytitle>
<manvolnum>8</manvolnum>
<refmiscinfo>BIND9</refmiscinfo>
</refmeta>
<refnamediv>
<refname><application>pkcs11-list</application></refname>
<refpurpose>list PKCS#11 objects</refpurpose>
</refnamediv>
<docinfo>
<copyright>
<year>2009</year>
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
</copyright>
</docinfo>
<refsynopsisdiv>
<cmdsynopsis>
<command>pkcs11-list</command>
<arg><option>-P</option></arg>
<arg><option>-m <replaceable class="parameter">module</replaceable></option></arg>
<arg><option>-s <replaceable class="parameter">slot</replaceable></option></arg>
<arg choice="opt">-i <replaceable class="parameter">ID</replaceable></arg>
<arg choice="opt">-l <replaceable class="parameter">label</replaceable></arg>
<arg><option>-p <replaceable class="parameter">PIN</replaceable></option></arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<para>
<command>pkcs11-list</command>
lists the PKCS#11 objects with <option>ID</option> or
<option>label</option> or by default all objects.
</para>
</refsect1>
<refsect1>
<title>ARGUMENTS</title>
<variablelist>
<varlistentry>
<term>-P</term>
<listitem>
<para>
List only the public objects. (Note that on some PKCS#11
devices, all objects are private.)
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-m <replaceable class="parameter">module</replaceable></term>
<listitem>
<para>
Specify the PKCS#11 provider module. This must be the full
path to a shared library object implementing the PKCS#11 API
for the device.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-s <replaceable class="parameter">slot</replaceable></term>
<listitem>
<para>
Open the session with the given PKCS#11 slot. The default is
slot 0.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-i <replaceable class="parameter">ID</replaceable></term>
<listitem>
<para>
List only key objects with the given object ID.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-l <replaceable class="parameter">label</replaceable></term>
<listitem>
<para>
List only key objects with the given label.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-p <replaceable class="parameter">PIN</replaceable></term>
<listitem>
<para>
Specify the PIN for the device. If no PIN is provided on the
command line, <command>pkcs11-list</command> will prompt for it.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>SEE ALSO</title>
<para>
<citerefentry>
<refentrytitle>pkcs11-keygen</refentrytitle><manvolnum>3</manvolnum>
</citerefentry>,
<citerefentry>
<refentrytitle>pkcs11-destroy</refentrytitle><manvolnum>3</manvolnum>
</citerefentry>
</para>
</refsect1>
<refsect1>
<title>AUTHOR</title>
<para><corpauthor>Internet Systems Consortium</corpauthor>
</para>
</refsect1>
</refentry><!--
- Local variables:
- mode: sgml
- End:
-->

View File

@@ -0,0 +1,89 @@
<!--
- Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
-->
<!-- $Id: pkcs11-list.html,v 1.3 2009/10/06 04:40:14 tbox Exp $ -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>pkcs11-list</title>
<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="man.pkcs11-list"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2>Name</h2>
<p><span class="application">pkcs11-list</span> &#8212; list PKCS#11 objects</p>
</div>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="cmdsynopsis"><p><code class="command">pkcs11-list</code> [<code class="option">-P</code>] [<code class="option">-m <em class="replaceable"><code>module</code></em></code>] [<code class="option">-s <em class="replaceable"><code>slot</code></em></code>] [-i <em class="replaceable"><code>ID</code></em>] [-l <em class="replaceable"><code>label</code></em>] [<code class="option">-p <em class="replaceable"><code>PIN</code></em></code>]</p></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543383"></a><h2>DESCRIPTION</h2>
<p>
<span><strong class="command">pkcs11-list</strong></span>
lists the PKCS#11 objects with <code class="option">ID</code> or
<code class="option">label</code> or by default all objects.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543404"></a><h2>ARGUMENTS</h2>
<div class="variablelist"><dl>
<dt><span class="term">-P</span></dt>
<dd><p>
List only the public objects. (Note that on some PKCS#11
devices, all objects are private.)
</p></dd>
<dt><span class="term">-m <em class="replaceable"><code>module</code></em></span></dt>
<dd><p>
Specify the PKCS#11 provider module. This must be the full
path to a shared library object implementing the PKCS#11 API
for the device.
</p></dd>
<dt><span class="term">-s <em class="replaceable"><code>slot</code></em></span></dt>
<dd><p>
Open the session with the given PKCS#11 slot. The default is
slot 0.
</p></dd>
<dt><span class="term">-i <em class="replaceable"><code>ID</code></em></span></dt>
<dd><p>
List only key objects with the given object ID.
</p></dd>
<dt><span class="term">-l <em class="replaceable"><code>label</code></em></span></dt>
<dd><p>
List only key objects with the given label.
</p></dd>
<dt><span class="term">-p <em class="replaceable"><code>PIN</code></em></span></dt>
<dd><p>
Specify the PIN for the device. If no PIN is provided on the
command line, <span><strong class="command">pkcs11-list</strong></span> will prompt for it.
</p></dd>
</dl></div>
</div>
<div class="refsect1" lang="en">
<a name="id2543515"></a><h2>SEE ALSO</h2>
<p>
<span class="citerefentry"><span class="refentrytitle">pkcs11-keygen</span>(3)</span>,
<span class="citerefentry"><span class="refentrytitle">pkcs11-destroy</span>(3)</span>
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2543542"></a><h2>AUTHOR</h2>
<p><span class="corpauthor">Internet Systems Consortium</span>
</p>
</div>
</div></body>
</html>

View File

@@ -0,0 +1,66 @@
/* cryptoki.h include file for PKCS #11. */
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC 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.
*/
/* $Revision: 1.3 $ */
/*
* 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.
*/
/* This is a sample file containing the top level include directives
* for building Unix Cryptoki libraries and applications.
*/
#ifndef ___CRYPTOKI_H_INC___
#define ___CRYPTOKI_H_INC___
#define CK_PTR *
#define CK_DEFINE_FUNCTION(returnType, name) \
returnType name
#define CK_DECLARE_FUNCTION(returnType, name) \
returnType name
#define CK_DECLARE_FUNCTION_POINTER(returnType, name) \
returnType (* name)
#define CK_CALLBACK_FUNCTION(returnType, name) \
returnType (* name)
/* NULL is in unistd.h */
#include <unistd.h>
#define NULL_PTR NULL
#undef CK_PKCS11_FUNCTION_INFO
#include "pkcs11.h"
#endif /* ___CRYPTOKI_H_INC___ */

340
bin/pkcs11/unix/unix.c Normal file
View File

@@ -0,0 +1,340 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: unix.c,v 1.4 2009/10/26 23:47:35 tbox Exp $ */
/* $Id */
/*! \file */
/* dynamic loader (ifndef FORCE_STATIC_PROVIDER) */
#include <dlfcn.h>
/* load PKCS11 dynamic object */
#ifndef PK11_LIB_LOCATION
#error "PK11_LIB_LOCATION is not set"
#endif
const char *pk11_libname = PK11_LIB_LOCATION;
void *hPK11 = NULL;
#define C_Initialize isc_C_Initialize
CK_RV
C_Initialize(CK_VOID_PTR pReserved);
CK_RV
C_Initialize(CK_VOID_PTR pReserved)
{
CK_C_Initialize sym;
hPK11 = dlopen(pk11_libname, RTLD_NOW);
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_Initialize)dlsym(hPK11, "C_Initialize");
if (sym == NULL)
return 0xff;
return (*sym)(pReserved);
}
#define C_Finalize isc_C_Finalize
CK_RV
C_Finalize(CK_VOID_PTR pReserved);
CK_RV
C_Finalize(CK_VOID_PTR pReserved)
{
CK_C_Finalize sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_Finalize)dlsym(hPK11, "C_Finalize");
if (sym == NULL)
return 0xff;
return (*sym)(pReserved);
}
#define C_OpenSession isc_C_OpenSession
CK_RV
C_OpenSession(CK_SLOT_ID slotID,
CK_FLAGS flags,
CK_VOID_PTR pApplication,
CK_RV (*Notify) (CK_SESSION_HANDLE hSession,
CK_NOTIFICATION event,
CK_VOID_PTR pApplication),
CK_SESSION_HANDLE_PTR phSession);
CK_RV
C_OpenSession(CK_SLOT_ID slotID,
CK_FLAGS flags,
CK_VOID_PTR pApplication,
CK_RV (*Notify) (CK_SESSION_HANDLE hSession,
CK_NOTIFICATION event,
CK_VOID_PTR pApplication),
CK_SESSION_HANDLE_PTR phSession)
{
CK_C_OpenSession sym;
if (hPK11 == NULL)
hPK11 = dlopen(pk11_libname, RTLD_NOW);
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_OpenSession)dlsym(hPK11, "C_OpenSession");
if (sym == NULL)
return 0xff;
return (*sym)(slotID, flags, pApplication, Notify, phSession);
}
#define C_CloseSession isc_C_CloseSession
CK_RV
C_CloseSession(CK_SESSION_HANDLE hSession);
CK_RV
C_CloseSession(CK_SESSION_HANDLE hSession)
{
CK_C_CloseSession sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_CloseSession)dlsym(hPK11, "C_CloseSession");
if (sym == NULL)
return 0xff;
return (*sym)(hSession);
}
#define C_Login isc_C_Login
CK_RV
C_Login(CK_SESSION_HANDLE hSession,
CK_USER_TYPE userType,
CK_CHAR_PTR pPin,
CK_ULONG usPinLen);
CK_RV
C_Login(CK_SESSION_HANDLE hSession,
CK_USER_TYPE userType,
CK_CHAR_PTR pPin,
CK_ULONG usPinLen)
{
CK_C_Login sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_Login)dlsym(hPK11, "C_Login");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, userType, pPin, usPinLen);
}
#define C_CreateObject isc_C_CreateObject
CK_RV
C_CreateObject(CK_SESSION_HANDLE hSession,
CK_ATTRIBUTE_PTR pTemplate,
CK_ULONG usCount,
CK_OBJECT_HANDLE_PTR phObject);
CK_RV
C_CreateObject(CK_SESSION_HANDLE hSession,
CK_ATTRIBUTE_PTR pTemplate,
CK_ULONG usCount,
CK_OBJECT_HANDLE_PTR phObject)
{
CK_C_CreateObject sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_CreateObject)dlsym(hPK11, "C_CreateObject");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, pTemplate, usCount, phObject);
}
#define C_DestroyObject isc_C_DestroyObject
CK_RV
C_DestroyObject(CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject);
CK_RV
C_DestroyObject(CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject)
{
CK_C_DestroyObject sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_DestroyObject)dlsym(hPK11, "C_DestroyObject");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, hObject);
}
#define C_GetAttributeValue isc_C_GetAttributeValue
CK_RV
C_GetAttributeValue(CK_SESSION_HANDLE hSession,
CK_OBJECT_HANDLE hObject,
CK_ATTRIBUTE_PTR pTemplate,
CK_ULONG usCount);
CK_RV
C_GetAttributeValue(CK_SESSION_HANDLE hSession,
CK_OBJECT_HANDLE hObject,
CK_ATTRIBUTE_PTR pTemplate,
CK_ULONG usCount)
{
CK_C_GetAttributeValue sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_GetAttributeValue)dlsym(hPK11, "C_GetAttributeValue");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, hObject, pTemplate, usCount);
}
#define C_SetAttributeValue isc_C_SetAttributeValue
CK_RV
C_SetAttributeValue(CK_SESSION_HANDLE hSession,
CK_OBJECT_HANDLE hObject,
CK_ATTRIBUTE_PTR pTemplate,
CK_ULONG usCount);
CK_RV
C_SetAttributeValue(CK_SESSION_HANDLE hSession,
CK_OBJECT_HANDLE hObject,
CK_ATTRIBUTE_PTR pTemplate,
CK_ULONG usCount)
{
CK_C_SetAttributeValue sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_SetAttributeValue)dlsym(hPK11, "C_SetAttributeValue");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, hObject, pTemplate, usCount);
}
#define C_FindObjectsInit isc_C_FindObjectsInit
CK_RV
C_FindObjectsInit(CK_SESSION_HANDLE hSession,
CK_ATTRIBUTE_PTR pTemplate,
CK_ULONG usCount);
CK_RV
C_FindObjectsInit(CK_SESSION_HANDLE hSession,
CK_ATTRIBUTE_PTR pTemplate,
CK_ULONG usCount)
{
CK_C_FindObjectsInit sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_FindObjectsInit)dlsym(hPK11, "C_FindObjectsInit");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, pTemplate, usCount);
}
#define C_FindObjects isc_C_FindObjects
CK_RV
C_FindObjects(CK_SESSION_HANDLE hSession,
CK_OBJECT_HANDLE_PTR phObject,
CK_ULONG usMaxObjectCount,
CK_ULONG_PTR pusObjectCount);
CK_RV
C_FindObjects(CK_SESSION_HANDLE hSession,
CK_OBJECT_HANDLE_PTR phObject,
CK_ULONG usMaxObjectCount,
CK_ULONG_PTR pusObjectCount)
{
CK_C_FindObjects sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_FindObjects)dlsym(hPK11, "C_FindObjects");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, phObject, usMaxObjectCount, pusObjectCount);
}
#define C_FindObjectsFinal isc_C_FindObjectsFinal
CK_RV
C_FindObjectsFinal(CK_SESSION_HANDLE hSession);
CK_RV
C_FindObjectsFinal(CK_SESSION_HANDLE hSession)
{
CK_C_FindObjectsFinal sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_FindObjectsFinal)dlsym(hPK11, "C_FindObjectsFinal");
if (sym == NULL)
return 0xff;
return (*sym)(hSession);
}
#define C_GenerateKeyPair isc_C_GenerateKeyPair
CK_RV
C_GenerateKeyPair(CK_SESSION_HANDLE hSession,
CK_MECHANISM_PTR pMechanism,
CK_ATTRIBUTE_PTR pPublicKeyTemplate,
CK_ULONG usPublicKeyAttributeCount,
CK_ATTRIBUTE_PTR pPrivateKeyTemplate,
CK_ULONG usPrivateKeyAttributeCount,
CK_OBJECT_HANDLE_PTR phPrivateKey,
CK_OBJECT_HANDLE_PTR phPublicKey);
CK_RV
C_GenerateKeyPair(CK_SESSION_HANDLE hSession,
CK_MECHANISM_PTR pMechanism,
CK_ATTRIBUTE_PTR pPublicKeyTemplate,
CK_ULONG usPublicKeyAttributeCount,
CK_ATTRIBUTE_PTR pPrivateKeyTemplate,
CK_ULONG usPrivateKeyAttributeCount,
CK_OBJECT_HANDLE_PTR phPrivateKey,
CK_OBJECT_HANDLE_PTR phPublicKey)
{
CK_C_GenerateKeyPair sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_GenerateKeyPair)dlsym(hPK11, "C_GenerateKeyPair");
if (sym == NULL)
return 0xff;
return (*sym)(hSession,
pMechanism,
pPublicKeyTemplate,
usPublicKeyAttributeCount,
pPrivateKeyTemplate,
usPrivateKeyAttributeCount,
phPrivateKey,
phPublicKey);
}

View File

@@ -0,0 +1,66 @@
/* cryptoki.h include file for PKCS #11. */
/* $Revision: 1.2 $ */
/* 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.
*/
/* This is a sample file containing the top level include directives
* for building Win32 Cryptoki libraries and applications.
*/
#ifndef ___CRYPTOKI_H_INC___
#define ___CRYPTOKI_H_INC___
#pragma pack(push, cryptoki, 1)
/* Specifies that the function is a DLL entry point. */
#define CK_IMPORT_SPEC __declspec(dllimport)
/* Define CRYPTOKI_EXPORTS during the build of cryptoki libraries. Do
* not define it in applications.
*/
#ifdef CRYPTOKI_EXPORTS
/* Specified that the function is an exported DLL entry point. */
#define CK_EXPORT_SPEC __declspec(dllexport)
#else
#define CK_EXPORT_SPEC CK_IMPORT_SPEC
#endif
/* Ensures the calling convention for Win32 builds */
#define CK_CALL_SPEC __cdecl
#define CK_PTR *
#define CK_DEFINE_FUNCTION(returnType, name) \
returnType CK_EXPORT_SPEC CK_CALL_SPEC name
#define CK_DECLARE_FUNCTION(returnType, name) \
returnType CK_EXPORT_SPEC CK_CALL_SPEC name
#define CK_DECLARE_FUNCTION_POINTER(returnType, name) \
returnType CK_IMPORT_SPEC (CK_CALL_SPEC CK_PTR name)
#define CK_CALLBACK_FUNCTION(returnType, name) \
returnType (CK_CALL_SPEC CK_PTR name)
#ifndef NULL_PTR
#define NULL_PTR 0
#endif
#include "pkcs11.h"
#pragma pack(pop, cryptoki)
#endif /* ___CRYPTOKI_H_INC___ */

View File

@@ -0,0 +1,119 @@
# Microsoft Developer Studio Project File - Name="pk11destroy" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=pk11destroy - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "pk11destroy.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "pk11destroy.mak" CFG="pk11destroy - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "pk11destroy - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "pk11destroy - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "pk11destroy - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "./" /I "../../.." /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../include" /D "NDEBUG" /D "__STDC__" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "PK11_LIB_LOCATION=\"unknown_provider\"" /YX /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 user32.lib advapi32.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/pkcs11-destroy.exe"
!ELSEIF "$(CFG)" == "pk11destroy - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../.." /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../include" /D "_DEBUG" /D "WIN32" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /D "PK11_LIB_LOCATION=\"unknown_provider\"" /FR /FD /GZ /c
# SUBTRACT CPP /X /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 user32.lib advapi32.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/pkcs11-destroy.exe" /pdbtype:sept
!ENDIF
# Begin Target
# Name "pk11destroy - Win32 Release"
# Name "pk11destroy - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE="..\pkcs11-destroy.c"
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=".\cryptoki.h"
# End Source File
# Begin Source File
SOURCE="..\include\pkcs11.h"
# End Source File
# Begin Source File
SOURCE="..\include\pkcs11t.h"
# End Source File
# Begin Source File
SOURCE="..\include\pkcs11f.h"
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project

View File

@@ -0,0 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "pk11destroy"=".\pk11destroy.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View File

@@ -0,0 +1,296 @@
# Microsoft Developer Studio Generated NMAKE File, Based on pk11destroy.dsp
!IF "$(CFG)" == ""
CFG=pk11destroy - Win32 Debug
!MESSAGE No configuration specified. Defaulting to pk11destroy - Win32 Debug.
!ENDIF
!IF "$(CFG)" != "pk11destroy - Win32 Release" && "$(CFG)" != "pk11destroy - Win32 Debug"
!MESSAGE Invalid configuration "$(CFG)" specified.
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "pk11destroy.mak" CFG="pk11destroy - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "pk11destroy - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "pk11destroy - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
!ERROR An invalid configuration is specified.
!ENDIF
!IF "$(OS)" == "Windows_NT"
NULL=
!ELSE
NULL=nul
!ENDIF
!IF "$(CFG)" == "pk11destroy - Win32 Release"
_VC_MANIFEST_INC=0
_VC_MANIFEST_BASENAME=__VC80
!ELSE
_VC_MANIFEST_INC=1
_VC_MANIFEST_BASENAME=__VC80.Debug
!ENDIF
####################################################
# Specifying name of temporary resource file used only in incremental builds:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
!else
_VC_MANIFEST_AUTO_RES=
!endif
####################################################
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
!endif
####################################################
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
!endif
####################################################
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
$(_VC_MANIFEST_BASENAME).auto.rc \
$(_VC_MANIFEST_BASENAME).auto.manifest
!else
_VC_MANIFEST_CLEAN=
!endif
!IF "$(CFG)" == "pk11destroy - Win32 Release"
OUTDIR=.\Release
INTDIR=.\Release
ALL : "..\..\..\Build\Release\pkcs11-destroy.exe"
CLEAN :
-@erase "$(INTDIR)\pkcs11-destroy.obj"
-@erase "$(INTDIR)\vc60.idb"
-@erase "..\..\..\Build\Release\pkcs11-destroy.exe"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MD /W3 /GX /O2 /I "./" /I "../../.." /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../include" /D "NDEBUG" /D "__STDC__" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "PK11_LIB_LOCATION=\"unknown_provider\"" /Fp"$(INTDIR)\pk11destroy.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
RSC=rc.exe
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\pk11destroy.bsc"
BSC32_SBRS= \
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib /nologo /subsystem:console /incremental:no /pdb:"$(OUTDIR)\pkcs11-destroy.pdb" /machine:I386 /out:"../../../Build/Release/pkcs11-destroy.exe"
LINK32_OBJS= "$(INTDIR)\pkcs11-destroy.obj"
"..\..\..\Build\Release\pkcs11-destroy.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ELSEIF "$(CFG)" == "pk11destroy - Win32 Debug"
OUTDIR=.\Debug
INTDIR=.\Debug
# Begin Custom Macros
OutDir=.\Debug
# End Custom Macros
ALL : "..\..\..\Build\Debug\pkcs11-destroy.exe" "$(OUTDIR)\pk11destroy.bsc"
CLEAN :
-@erase "$(INTDIR)\pkcs11-destroy.obj"
-@erase "$(INTDIR)\pkcs11-destroy.sbr"
-@erase "$(INTDIR)\vc60.idb"
-@erase "$(INTDIR)\vc60.pdb"
-@erase "$(OUTDIR)\pkcs11-destroy.pdb"
-@erase "$(OUTDIR)\pk11destroy.bsc"
-@erase "..\..\..\Build\Debug\pkcs11-destroy.exe"
-@erase "..\..\..\Build\Debug\pkcs11-destroy.ilk"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../.." /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../include" /D "_DEBUG" /D "WIN32" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /D "PK11_LIB_LOCATION=\"unknown_provider\"" /FR"$(INTDIR)\\" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
RSC=rc.exe
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\pk11destroy.bsc"
BSC32_SBRS= "$(INTDIR)\pkcs11-destroy.sbr"
"$(OUTDIR)\pk11destroy.bsc" : "$(OUTDIR)" $(BSC32_SBRS)
$(BSC32) @<<
$(BSC32_FLAGS) $(BSC32_SBRS)
<<
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib /nologo /subsystem:console /incremental:yes /pdb:"$(OUTDIR)\pkcs11-destroy.pdb" /debug /machine:I386 /out:"../../../Build/Debug/pkcs11-destroy.exe" /pdbtype:sept
LINK32_OBJS= "$(INTDIR)\pkcs11-destroy.obj"
"..\..\..\Build\Debug\pkcs11-destroy.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ENDIF
!IF "$(NO_EXTERNAL_DEPS)" != "1"
!IF EXISTS("pk11destroy.dep")
!INCLUDE "pk11destroy.dep"
!ELSE
!MESSAGE Warning: cannot find "pk11destroy.dep"
!ENDIF
!ENDIF
!IF "$(CFG)" == "pk11destroy - Win32 Release" || "$(CFG)" == "pk11destroy - Win32 Debug"
SOURCE="..\pkcs11-destroy.c"
!IF "$(CFG)" == "pk11destroy - Win32 Release"
"$(INTDIR)\pkcs11-destroy.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "pk11destroy - Win32 Debug"
"$(INTDIR)\pkcs11-destroy.obj" "$(INTDIR)\pkcs11-destroy.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
!ENDIF
####################################################
# Commands to generate initial empty manifest file and the RC file
# that references it, and for generating the .res file:
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
type <<$@
#include <winuser.h>
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
<< KEEP
$(_VC_MANIFEST_BASENAME).auto.manifest :
type <<$@
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
</assembly>
<< KEEP

View File

@@ -0,0 +1,119 @@
# Microsoft Developer Studio Project File - Name="pk11keygen" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=pk11keygen - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "pk11keygen.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "pk11keygen.mak" CFG="pk11keygen - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "pk11keygen - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "pk11keygen - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "pk11keygen - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "./" /I "../../.." /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../include" /D "NDEBUG" /D "__STDC__" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "PK11_LIB_LOCATION=\"unknown_provider\"" /YX /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 user32.lib advapi32.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/pkcs11-keygen.exe"
!ELSEIF "$(CFG)" == "pk11keygen - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../.." /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../include" /D "_DEBUG" /D "WIN32" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /D "PK11_LIB_LOCATION=\"unknown_provider\"" /FR /FD /GZ /c
# SUBTRACT CPP /X /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 user32.lib advapi32.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/pkcs11-keygen.exe" /pdbtype:sept
!ENDIF
# Begin Target
# Name "pk11keygen - Win32 Release"
# Name "pk11keygen - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE="..\pkcs11-keygen.c"
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=".\cryptoki.h"
# End Source File
# Begin Source File
SOURCE="..\include\pkcs11.h"
# End Source File
# Begin Source File
SOURCE="..\include\pkcs11t.h"
# End Source File
# Begin Source File
SOURCE="..\include\pkcs11f.h"
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project

View File

@@ -0,0 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "pk11keygen"=".\pk11keygen.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View File

@@ -0,0 +1,296 @@
# Microsoft Developer Studio Generated NMAKE File, Based on pk11keygen.dsp
!IF "$(CFG)" == ""
CFG=pk11keygen - Win32 Debug
!MESSAGE No configuration specified. Defaulting to pk11keygen - Win32 Debug.
!ENDIF
!IF "$(CFG)" != "pk11keygen - Win32 Release" && "$(CFG)" != "pk11keygen - Win32 Debug"
!MESSAGE Invalid configuration "$(CFG)" specified.
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "pk11keygen.mak" CFG="pk11keygen - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "pk11keygen - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "pk11keygen - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
!ERROR An invalid configuration is specified.
!ENDIF
!IF "$(OS)" == "Windows_NT"
NULL=
!ELSE
NULL=nul
!ENDIF
!IF "$(CFG)" == "pk11keygen - Win32 Release"
_VC_MANIFEST_INC=0
_VC_MANIFEST_BASENAME=__VC80
!ELSE
_VC_MANIFEST_INC=1
_VC_MANIFEST_BASENAME=__VC80.Debug
!ENDIF
####################################################
# Specifying name of temporary resource file used only in incremental builds:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
!else
_VC_MANIFEST_AUTO_RES=
!endif
####################################################
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
!endif
####################################################
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
!endif
####################################################
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
$(_VC_MANIFEST_BASENAME).auto.rc \
$(_VC_MANIFEST_BASENAME).auto.manifest
!else
_VC_MANIFEST_CLEAN=
!endif
!IF "$(CFG)" == "pk11keygen - Win32 Release"
OUTDIR=.\Release
INTDIR=.\Release
ALL : "..\..\..\Build\Release\pkcs11-keygen.exe"
CLEAN :
-@erase "$(INTDIR)\pkcs11-keygen.obj"
-@erase "$(INTDIR)\vc60.idb"
-@erase "..\..\..\Build\Release\pkcs11-keygen.exe"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MD /W3 /GX /O2 /I "./" /I "../../.." /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../include" /D "NDEBUG" /D "__STDC__" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "PK11_LIB_LOCATION=\"unknown_provider\"" /Fp"$(INTDIR)\pk11keygen.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
RSC=rc.exe
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\pk11keygen.bsc"
BSC32_SBRS= \
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib /nologo /subsystem:console /incremental:no /pdb:"$(OUTDIR)\pkcs11-keygen.pdb" /machine:I386 /out:"../../../Build/Release/pkcs11-keygen.exe"
LINK32_OBJS= "$(INTDIR)\pkcs11-keygen.obj"
"..\..\..\Build\Release\pkcs11-keygen.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ELSEIF "$(CFG)" == "pk11keygen - Win32 Debug"
OUTDIR=.\Debug
INTDIR=.\Debug
# Begin Custom Macros
OutDir=.\Debug
# End Custom Macros
ALL : "..\..\..\Build\Debug\pkcs11-keygen.exe" "$(OUTDIR)\pk11keygen.bsc"
CLEAN :
-@erase "$(INTDIR)\pkcs11-keygen.obj"
-@erase "$(INTDIR)\pkcs11-keygen.sbr"
-@erase "$(INTDIR)\vc60.idb"
-@erase "$(INTDIR)\vc60.pdb"
-@erase "$(OUTDIR)\pkcs11-keygen.pdb"
-@erase "$(OUTDIR)\pk11keygen.bsc"
-@erase "..\..\..\Build\Debug\pkcs11-keygen.exe"
-@erase "..\..\..\Build\Debug\pkcs11-keygen.ilk"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../.." /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../include" /D "_DEBUG" /D "WIN32" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /D "PK11_LIB_LOCATION=\"unknown_provider\"" /FR"$(INTDIR)\\" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
RSC=rc.exe
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\pk11keygen.bsc"
BSC32_SBRS= "$(INTDIR)\pkcs11-keygen.sbr"
"$(OUTDIR)\pk11keygen.bsc" : "$(OUTDIR)" $(BSC32_SBRS)
$(BSC32) @<<
$(BSC32_FLAGS) $(BSC32_SBRS)
<<
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib /nologo /subsystem:console /incremental:yes /pdb:"$(OUTDIR)\pkcs11-keygen.pdb" /debug /machine:I386 /out:"../../../Build/Debug/pkcs11-keygen.exe" /pdbtype:sept
LINK32_OBJS= "$(INTDIR)\pkcs11-keygen.obj"
"..\..\..\Build\Debug\pkcs11-keygen.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ENDIF
!IF "$(NO_EXTERNAL_DEPS)" != "1"
!IF EXISTS("pk11keygen.dep")
!INCLUDE "pk11keygen.dep"
!ELSE
!MESSAGE Warning: cannot find "pk11keygen.dep"
!ENDIF
!ENDIF
!IF "$(CFG)" == "pk11keygen - Win32 Release" || "$(CFG)" == "pk11keygen - Win32 Debug"
SOURCE="..\pkcs11-keygen.c"
!IF "$(CFG)" == "pk11keygen - Win32 Release"
"$(INTDIR)\pkcs11-keygen.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "pk11keygen - Win32 Debug"
"$(INTDIR)\pkcs11-keygen.obj" "$(INTDIR)\pkcs11-keygen.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
!ENDIF
####################################################
# Commands to generate initial empty manifest file and the RC file
# that references it, and for generating the .res file:
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
type <<$@
#include <winuser.h>
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
<< KEEP
$(_VC_MANIFEST_BASENAME).auto.manifest :
type <<$@
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
</assembly>
<< KEEP

View File

@@ -0,0 +1,119 @@
# Microsoft Developer Studio Project File - Name="pk11list" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=pk11list - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "pk11list.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "pk11list.mak" CFG="pk11list - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "pk11list - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "pk11list - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "pk11list - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "./" /I "../../.." /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../include" /D "NDEBUG" /D "__STDC__" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "PK11_LIB_LOCATION=\"unknown_provider\"" /YX /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 user32.lib advapi32.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/pkcs11-list.exe"
!ELSEIF "$(CFG)" == "pk11list - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../.." /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../include" /D "_DEBUG" /D "WIN32" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /D "PK11_LIB_LOCATION=\"unknown_provider\"" /FR /FD /GZ /c
# SUBTRACT CPP /X /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 user32.lib advapi32.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/pkcs11-list.exe" /pdbtype:sept
!ENDIF
# Begin Target
# Name "pk11list - Win32 Release"
# Name "pk11list - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE="..\pkcs11-list.c"
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=".\cryptoki.h"
# End Source File
# Begin Source File
SOURCE="..\include\pkcs11.h"
# End Source File
# Begin Source File
SOURCE="..\include\pkcs11t.h"
# End Source File
# Begin Source File
SOURCE="..\include\pkcs11f.h"
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project

View File

@@ -0,0 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "pk11list"=".\pk11list.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View File

@@ -0,0 +1,296 @@
# Microsoft Developer Studio Generated NMAKE File, Based on pk11list.dsp
!IF "$(CFG)" == ""
CFG=pk11list - Win32 Debug
!MESSAGE No configuration specified. Defaulting to pk11list - Win32 Debug.
!ENDIF
!IF "$(CFG)" != "pk11list - Win32 Release" && "$(CFG)" != "pk11list - Win32 Debug"
!MESSAGE Invalid configuration "$(CFG)" specified.
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "pk11list.mak" CFG="pk11list - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "pk11list - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "pk11list - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
!ERROR An invalid configuration is specified.
!ENDIF
!IF "$(OS)" == "Windows_NT"
NULL=
!ELSE
NULL=nul
!ENDIF
!IF "$(CFG)" == "pk11list - Win32 Release"
_VC_MANIFEST_INC=0
_VC_MANIFEST_BASENAME=__VC80
!ELSE
_VC_MANIFEST_INC=1
_VC_MANIFEST_BASENAME=__VC80.Debug
!ENDIF
####################################################
# Specifying name of temporary resource file used only in incremental builds:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
!else
_VC_MANIFEST_AUTO_RES=
!endif
####################################################
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
!endif
####################################################
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
!if "$(_VC_MANIFEST_INC)" == "1"
#MT_SPECIAL_RETURN=1090650113
#MT_SPECIAL_SWITCH=-notify_resource_update
MT_SPECIAL_RETURN=0
MT_SPECIAL_SWITCH=
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
link $** /out:$@ $(LFLAGS)
!else
_VC_MANIFEST_EMBED_EXE= \
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
!endif
####################################################
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
!if "$(_VC_MANIFEST_INC)" == "1"
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
$(_VC_MANIFEST_BASENAME).auto.rc \
$(_VC_MANIFEST_BASENAME).auto.manifest
!else
_VC_MANIFEST_CLEAN=
!endif
!IF "$(CFG)" == "pk11list - Win32 Release"
OUTDIR=.\Release
INTDIR=.\Release
ALL : "..\..\..\Build\Release\pkcs11-list.exe"
CLEAN :
-@erase "$(INTDIR)\pkcs11-list.obj"
-@erase "$(INTDIR)\vc60.idb"
-@erase "..\..\..\Build\Release\pkcs11-list.exe"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MD /W3 /GX /O2 /I "./" /I "../../.." /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../include" /D "NDEBUG" /D "__STDC__" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "PK11_LIB_LOCATION=\"unknown_provider\"" /Fp"$(INTDIR)\pk11list.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
RSC=rc.exe
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\pk11list.bsc"
BSC32_SBRS= \
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib /nologo /subsystem:console /incremental:no /pdb:"$(OUTDIR)\pkcs11-list.pdb" /machine:I386 /out:"../../../Build/Release/pkcs11-list.exe"
LINK32_OBJS= "$(INTDIR)\pkcs11-list.obj"
"..\..\..\Build\Release\pkcs11-list.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ELSEIF "$(CFG)" == "pk11list - Win32 Debug"
OUTDIR=.\Debug
INTDIR=.\Debug
# Begin Custom Macros
OutDir=.\Debug
# End Custom Macros
ALL : "..\..\..\Build\Debug\pkcs11-list.exe" "$(OUTDIR)\pk11list.bsc"
CLEAN :
-@erase "$(INTDIR)\pkcs11-list.obj"
-@erase "$(INTDIR)\pkcs11-list.sbr"
-@erase "$(INTDIR)\vc60.idb"
-@erase "$(INTDIR)\vc60.pdb"
-@erase "$(OUTDIR)\pkcs11-list.pdb"
-@erase "$(OUTDIR)\pk11list.bsc"
-@erase "..\..\..\Build\Debug\pkcs11-list.exe"
-@erase "..\..\..\Build\Debug\pkcs11-list.ilk"
-@$(_VC_MANIFEST_CLEAN)
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../.." /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../include" /D "_DEBUG" /D "WIN32" /D "__STDC__" /D "_CONSOLE" /D "_MBCS" /D "PK11_LIB_LOCATION=\"unknown_provider\"" /FR"$(INTDIR)\\" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
RSC=rc.exe
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\pk11list.bsc"
BSC32_SBRS= "$(INTDIR)\pkcs11-list.sbr"
"$(OUTDIR)\pk11list.bsc" : "$(OUTDIR)" $(BSC32_SBRS)
$(BSC32) @<<
$(BSC32_FLAGS) $(BSC32_SBRS)
<<
LINK32=link.exe
LINK32_FLAGS=user32.lib advapi32.lib /nologo /subsystem:console /incremental:yes /pdb:"$(OUTDIR)\pkcs11-list.pdb" /debug /machine:I386 /out:"../../../Build/Debug/pkcs11-list.exe" /pdbtype:sept
LINK32_OBJS= "$(INTDIR)\pkcs11-list.obj"
"..\..\..\Build\Debug\pkcs11-list.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
$(_VC_MANIFEST_EMBED_EXE)
!ENDIF
!IF "$(NO_EXTERNAL_DEPS)" != "1"
!IF EXISTS("pk11list.dep")
!INCLUDE "pk11list.dep"
!ELSE
!MESSAGE Warning: cannot find "pk11list.dep"
!ENDIF
!ENDIF
!IF "$(CFG)" == "pk11list - Win32 Release" || "$(CFG)" == "pk11list - Win32 Debug"
SOURCE="..\pkcs11-list.c"
!IF "$(CFG)" == "pk11list - Win32 Release"
"$(INTDIR)\pkcs11-list.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ELSEIF "$(CFG)" == "pk11list - Win32 Debug"
"$(INTDIR)\pkcs11-list.obj" "$(INTDIR)\pkcs11-list.sbr" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
!ENDIF
!ENDIF
####################################################
# Commands to generate initial empty manifest file and the RC file
# that references it, and for generating the .res file:
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
type <<$@
#include <winuser.h>
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
<< KEEP
$(_VC_MANIFEST_BASENAME).auto.manifest :
type <<$@
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
</assembly>
<< KEEP

384
bin/pkcs11/win32/win32.c Normal file
View File

@@ -0,0 +1,384 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: win32.c,v 1.5 2009/10/26 23:47:35 tbox Exp $ */
/* $Id */
/*! \file */
/* missing code for WIN32 */
#include <windows.h>
#include <string.h>
#define HAVE_GETPASSPHRASE
char *
getpassphrase(const char *prompt)
{
static char buf[128];
HANDLE h;
DWORD cc, mode;
int cnt;
h = GetStdHandle(STD_INPUT_HANDLE);
fputs(prompt, stderr);
fflush(stderr);
fflush(stdout);
FlushConsoleInputBuffer(h);
GetConsoleMode(h, &mode);
SetConsoleMode(h, ENABLE_PROCESSED_INPUT);
for (cnt = 0; cnt < sizeof(buf) - 1; cnt++)
{
ReadFile(h, buf + cnt, 1, &cc, NULL);
if (buf[cnt] == '\r')
break;
fputc('*', stdout);
fflush(stderr);
fflush(stdout);
}
SetConsoleMode(h, mode);
buf[cnt] = '\0';
fputs("\n", stderr);
return buf;
}
/* From ISC isc_commandline_parse() */
int optind = 1; /* index into parent argv vector */
int optopt; /* character checked for validity */
char *optarg; /* argument associated with option */
static char endopt = '\0';
#define BADOPT (int)'?'
#define BADARG (int)':'
#define ENDOPT &endopt
int
getopt(int nargc, char * const nargv[], const char *ostr)
{
static char *place = ENDOPT; /* option letter processing */
char *option; /* option letter list index */
if (*place == '\0') { /* update scanning pointer */
place = nargv[optind];
if (optind >= nargc || *place++ != '-') {
/* index out of range or points to non-option */
place = ENDOPT;
return (-1);
}
optopt = *place++;
if (optopt == '-' && *place == '\0') {
/* "--" signals end of options */
++optind;
place = ENDOPT;
return (-1);
}
} else
optopt = *place++;
/* See if option letter is one the caller wanted... */
if (optopt == ':' || (option = strchr(ostr, optopt)) == NULL) {
if (*place == '\0')
++optind;
return (BADOPT);
}
if (*++option != ':') {
/* option doesn't take an argument */
optarg = NULL;
if (*place == '\0')
++optind;
} else {
/* option needs an argument */
if (*place != '\0')
/* -D1 style */
optarg = place;
else if (nargc > ++optind)
/* -D 1 style */
optarg = nargv[optind];
else {
/* needed but absent */
place = ENDOPT;
if (*ostr == ':')
return (BADARG);
return (BADOPT);
}
place = ENDOPT;
++optind;
}
return (optopt);
}
/* load PKCS11 DLL */
#ifndef PK11_LIB_LOCATION
#error "PK11_LIB_LOCATION is not defined"
#endif
const char *pk11_libname = PK11_LIB_LOCATION ".dll";
HINSTANCE hPK11 = NULL;
#define C_Initialize isc_C_Initialize
CK_RV
C_Initialize(CK_VOID_PTR pReserved)
{
CK_C_Initialize sym;
if (pk11_libname == NULL)
return 0xfe;
/* Visual Studio convertion issue... */
if (*pk11_libname == ' ')
pk11_libname++;
hPK11 = LoadLibraryA(pk11_libname);
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_Initialize)GetProcAddress(hPK11, "C_Initialize");
if (sym == NULL)
return 0xff;
return (*sym)(pReserved);
}
#define C_Finalize isc_C_Finalize
CK_RV
C_Finalize(CK_VOID_PTR pReserved)
{
CK_C_Finalize sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_Finalize)GetProcAddress(hPK11, "C_Finalize");
if (sym == NULL)
return 0xff;
return (*sym)(pReserved);
}
#define C_OpenSession isc_C_OpenSession
CK_RV
C_OpenSession(CK_SLOT_ID slotID,
CK_FLAGS flags,
CK_VOID_PTR pApplication,
CK_RV (*Notify) (CK_SESSION_HANDLE hSession,
CK_NOTIFICATION event,
CK_VOID_PTR pApplication),
CK_SESSION_HANDLE_PTR phSession)
{
CK_C_OpenSession sym;
if (hPK11 == NULL)
hPK11 = LoadLibraryA(pk11_libname);
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_OpenSession)GetProcAddress(hPK11, "C_OpenSession");
if (sym == NULL)
return 0xff;
return (*sym)(slotID, flags, pApplication, Notify, phSession);
}
#define C_CloseSession isc_C_CloseSession
CK_RV
C_CloseSession(CK_SESSION_HANDLE hSession)
{
CK_C_CloseSession sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_CloseSession)GetProcAddress(hPK11, "C_CloseSession");
if (sym == NULL)
return 0xff;
return (*sym)(hSession);
}
#define C_Login isc_C_Login
CK_RV
C_Login(CK_SESSION_HANDLE hSession,
CK_USER_TYPE userType,
CK_CHAR_PTR pPin,
CK_ULONG usPinLen)
{
CK_C_Login sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_Login)GetProcAddress(hPK11, "C_Login");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, userType, pPin, usPinLen);
}
#define C_CreateObject isc_C_CreateObject
CK_RV
C_CreateObject(CK_SESSION_HANDLE hSession,
CK_ATTRIBUTE_PTR pTemplate,
CK_ULONG usCount,
CK_OBJECT_HANDLE_PTR phObject)
{
CK_C_CreateObject sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_CreateObject)GetProcAddress(hPK11, "C_CreateObject");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, pTemplate, usCount, phObject);
}
#define C_DestroyObject isc_C_DestroyObject
CK_RV
C_DestroyObject(CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject)
{
CK_C_DestroyObject sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_DestroyObject)GetProcAddress(hPK11, "C_DestroyObject");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, hObject);
}
#define C_GetAttributeValue isc_C_GetAttributeValue
CK_RV
C_GetAttributeValue(CK_SESSION_HANDLE hSession,
CK_OBJECT_HANDLE hObject,
CK_ATTRIBUTE_PTR pTemplate,
CK_ULONG usCount)
{
CK_C_GetAttributeValue sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_GetAttributeValue)GetProcAddress(hPK11,
"C_GetAttributeValue");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, hObject, pTemplate, usCount);
}
#define C_SetAttributeValue isc_C_SetAttributeValue
CK_RV
C_SetAttributeValue(CK_SESSION_HANDLE hSession,
CK_OBJECT_HANDLE hObject,
CK_ATTRIBUTE_PTR pTemplate,
CK_ULONG usCount)
{
CK_C_SetAttributeValue sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_SetAttributeValue)GetProcAddress(hPK11,
"C_SetAttributeValue");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, hObject, pTemplate, usCount);
}
#define C_FindObjectsInit isc_C_FindObjectsInit
CK_RV
C_FindObjectsInit(CK_SESSION_HANDLE hSession,
CK_ATTRIBUTE_PTR pTemplate,
CK_ULONG usCount)
{
CK_C_FindObjectsInit sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_FindObjectsInit)GetProcAddress(hPK11,
"C_FindObjectsInit");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, pTemplate, usCount);
}
#define C_FindObjects isc_C_FindObjects
CK_RV
C_FindObjects(CK_SESSION_HANDLE hSession,
CK_OBJECT_HANDLE_PTR phObject,
CK_ULONG usMaxObjectCount,
CK_ULONG_PTR pusObjectCount)
{
CK_C_FindObjects sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_FindObjects)GetProcAddress(hPK11, "C_FindObjects");
if (sym == NULL)
return 0xff;
return (*sym)(hSession, phObject, usMaxObjectCount, pusObjectCount);
}
#define C_FindObjectsFinal isc_C_FindObjectsFinal
CK_RV
C_FindObjectsFinal(CK_SESSION_HANDLE hSession)
{
CK_C_FindObjectsFinal sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_FindObjectsFinal)GetProcAddress(hPK11,
"C_FindObjectsFinal");
if (sym == NULL)
return 0xff;
return (*sym)(hSession);
}
#define C_GenerateKeyPair isc_C_GenerateKeyPair
CK_RV
C_GenerateKeyPair(CK_SESSION_HANDLE hSession,
CK_MECHANISM_PTR pMechanism,
CK_ATTRIBUTE_PTR pPublicKeyTemplate,
CK_ULONG usPublicKeyAttributeCount,
CK_ATTRIBUTE_PTR pPrivateKeyTemplate,
CK_ULONG usPrivateKeyAttributeCount,
CK_OBJECT_HANDLE_PTR phPrivateKey,
CK_OBJECT_HANDLE_PTR phPublicKey)
{
CK_C_GenerateKeyPair sym;
if (hPK11 == NULL)
return 0xfe;
sym = (CK_C_GenerateKeyPair)GetProcAddress(hPK11,
"C_GenerateKeyPair");
if (sym == NULL)
return 0xff;
return (*sym)(hSession,
pMechanism,
pPublicKeyTemplate,
usPublicKeyAttributeCount,
pPrivateKeyTemplate,
usPrivateKeyAttributeCount,
phPrivateKey,
phPublicKey);
}

View File

@@ -0,0 +1,97 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: backtrace_test.c,v 1.4 2009/09/02 23:48:01 tbox Exp $ */
#include <config.h>
#include <stdio.h>
#include <string.h>
#include <isc/backtrace.h>
#include <isc/result.h>
const char *expected_symbols[] = {
"func3",
"func2",
"func1",
"main"
};
static int
func3() {
void *tracebuf[16];
int i, nframes;
int error = 0;
const char *fname;
isc_result_t result;
unsigned long offset;
result = isc_backtrace_gettrace(tracebuf, 16, &nframes);
if (result != ISC_R_SUCCESS) {
printf("isc_backtrace_gettrace failed: %s\n",
isc_result_totext(result));
return (1);
}
if (nframes < 4)
error++;
for (i = 0; i < 4 && i < nframes; i++) {
fname = NULL;
result = isc_backtrace_getsymbol(tracebuf[i], &fname, &offset);
if (result != ISC_R_SUCCESS) {
error++;
continue;
}
if (strcmp(fname, expected_symbols[i]) != 0)
error++;
}
if (error) {
printf("Unexpected result:\n");
printf(" # of frames: %d (expected: at least 4)\n", nframes);
printf(" symbols:\n");
for (i = 0; i < nframes; i++) {
fname = NULL;
result = isc_backtrace_getsymbol(tracebuf[i], &fname,
&offset);
if (result == ISC_R_SUCCESS)
printf(" [%d] %s\n", i, fname);
else {
printf(" [%d] getsymbol failed: %s\n", i,
isc_result_totext(result));
}
}
}
return (error);
}
static int
func2() {
return (func3());
}
static int
func1() {
return (func2());
}
int
main() {
return (func1());
}

View File

@@ -0,0 +1 @@
named.run

View File

@@ -0,0 +1,24 @@
#!/bin/sh
#
# Copyright (C) 2010 Internet Systems Consortium, Inc. ("ISC")
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# $Id: clean.sh,v 1.2.2.3 2010/09/15 03:36:41 marka Exp $
rm -f dig.out.*
rm -f rndc.out.*
rm -f ns2/named.conf
rm -f */named.memstats
rm -f ns2/*.nzf
rm -f ns2/core*

View File

@@ -0,0 +1,31 @@
; Copyright (C) 2010 Internet Systems Consortium, Inc. ("ISC")
;
; Permission to use, copy, modify, and/or distribute this software for any
; purpose with or without fee is hereby granted, provided that the above
; copyright notice and this permission notice appear in all copies.
;
; THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
; REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
; AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
; INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
; LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
; PERFORMANCE OF THIS SOFTWARE.
; $Id: added.db,v 1.2.2.2 2010/08/11 18:19:56 each Exp $
$ORIGIN added.example.
$TTL 300 ; 5 minutes
@ IN SOA mname1. . (
1 ; serial
20 ; refresh (20 seconds)
20 ; retry (20 seconds)
1814400 ; expire (3 weeks)
3600 ; minimum (1 hour)
)
NS ns2
ns2 A 10.53.0.2
MX 10 mail
a A 10.0.0.1
mail A 10.0.0.2

View File

@@ -0,0 +1 @@
zone previous.example { type master; file "previous.db"; };

View File

@@ -0,0 +1,41 @@
/*
* Copyright (C) 2010 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: named1.conf,v 1.2.2.2 2010/08/11 18:19:56 each Exp $ */
controls { /* empty */ };
options {
port 5300;
pid-file "named.pid";
listen-on { 10.53.0.2; };
listen-on-v6 { none; };
allow-query { any; };
recursion no;
allow-new-zones yes;
};
include "../../common/controls.conf";
zone "." {
type hint;
file "../../common/root.hint";
};
zone "normal.example" {
type master;
file "normal.db";
};

View File

@@ -0,0 +1,62 @@
/*
* Copyright (C) 2010, 2011 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: named2.conf,v 1.2.2.5 2011/09/05 23:45:31 tbox Exp $ */
controls { /* empty */ };
include "../../common/controls.conf";
options {
port 5300;
pid-file "named.pid";
listen-on { 10.53.0.2; 10.53.0.4; };
listen-on-v6 { none; };
recursion no;
};
view internal {
match-clients { 10.53.0.2; };
allow-new-zones no;
recursion yes;
zone "." {
type hint;
file "../../common/root.hint";
};
};
view external {
match-clients { any; };
allow-new-zones yes;
zone "." {
type hint;
file "../../common/root.hint";
};
};
# This view is only here to test that configuration context is cleaned
# up correctly when using multiple named ACLs (regression test for RT #22739)
acl match { none; };
acl nobody { none; };
view extra {
match-clients { match; };
allow-new-zones yes;
allow-transfer { nobody; };
allow-query { nobody; };
allow-recursion { nobody; };
};

View File

@@ -0,0 +1,31 @@
; Copyright (C) 2010 Internet Systems Consortium, Inc. ("ISC")
;
; Permission to use, copy, modify, and/or distribute this software for any
; purpose with or without fee is hereby granted, provided that the above
; copyright notice and this permission notice appear in all copies.
;
; THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
; REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
; AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
; INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
; LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
; PERFORMANCE OF THIS SOFTWARE.
; $Id: normal.db,v 1.2.2.2 2010/08/11 18:19:56 each Exp $
$ORIGIN normal.example.
$TTL 300 ; 5 minutes
@ IN SOA mname1. . (
1 ; serial
20 ; refresh (20 seconds)
20 ; retry (20 seconds)
1814400 ; expire (3 weeks)
3600 ; minimum (1 hour)
)
NS ns2
ns2 A 10.53.0.2
MX 10 mail
a A 10.0.0.1
mail A 10.0.0.2

View File

@@ -0,0 +1,31 @@
; Copyright (C) 2010 Internet Systems Consortium, Inc. ("ISC")
;
; Permission to use, copy, modify, and/or distribute this software for any
; purpose with or without fee is hereby granted, provided that the above
; copyright notice and this permission notice appear in all copies.
;
; THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
; REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
; AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
; INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
; LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
; PERFORMANCE OF THIS SOFTWARE.
; $Id: previous.db,v 1.2.2.2 2010/08/11 18:19:57 each Exp $
$ORIGIN previous.example.
$TTL 300 ; 5 minutes
@ IN SOA mname1. . (
1 ; serial
20 ; refresh (20 seconds)
20 ; retry (20 seconds)
1814400 ; expire (3 weeks)
3600 ; minimum (1 hour)
)
NS ns2
ns2 A 10.53.0.2
MX 10 mail
a A 10.0.0.1
mail A 10.0.0.2

View File

@@ -0,0 +1,20 @@
#!/bin/sh
#
# Copyright (C) 2010 Internet Systems Consortium, Inc. ("ISC")
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# $Id: setup.sh,v 1.2.2.3 2010/08/12 01:32:46 marka Exp $
cp -f ns2/named1.conf ns2/named.conf
cp -f ns2/default.nzf.in ns2/3bf305731dd26307.nzf

View File

@@ -0,0 +1,160 @@
#!/bin/sh
#
# Copyright (C) 2010, 2011 Internet Systems Consortium, Inc. ("ISC")
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# $Id: tests.sh,v 1.2.2.6 2011/09/05 23:45:31 tbox Exp $
SYSTEMTESTTOP=..
. $SYSTEMTESTTOP/conf.sh
DIGOPTS="+tcp +nosea +nostat +nocmd +norec +noques +noauth +noadd +nostats +dnssec -p 5300"
status=0
n=0
echo "I:checking normally loaded zone ($n)"
ret=0
$DIG $DIGOPTS @10.53.0.2 a.normal.example a > dig.out.ns2.$n || ret=1
grep 'status: NOERROR' dig.out.ns2.$n > /dev/null || ret=1
grep '^a.normal.example' dig.out.ns2.$n > /dev/null || ret=1
n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:checking previously added zone ($n)"
ret=0
$DIG $DIGOPTS @10.53.0.2 a.previous.example a > dig.out.ns2.$n || ret=1
grep 'status: NOERROR' dig.out.ns2.$n > /dev/null || ret=1
grep '^a.previous.example' dig.out.ns2.$n > /dev/null || ret=1
n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:adding new zone ($n)"
ret=0
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 addzone 'added.example { type master; file "added.db"; };' 2>&1 | sed 's/^/I:ns2 /'
$DIG $DIGOPTS @10.53.0.2 a.added.example a > dig.out.ns2.$n || ret=1
grep 'status: NOERROR' dig.out.ns2.$n > /dev/null || ret=1
grep '^a.added.example' dig.out.ns2.$n > /dev/null || ret=1
n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:adding new zone with missing master file ($n)"
ret=0
$DIG $DIGOPTS +all @10.53.0.2 a.missing.example a > dig.out.ns2.pre.$n || ret=1
grep "status: REFUSED" dig.out.ns2.pre.$n > /dev/null || ret=1
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 addzone 'missing.example { type master; file "missing.db"; };' 2> rndc.out.ns2.$n
grep "file not found" rndc.out.ns2.$n > /dev/null || ret=1
$DIG $DIGOPTS +all @10.53.0.2 a.missing.example a > dig.out.ns2.post.$n || ret=1
grep "status: REFUSED" dig.out.ns2.post.$n > /dev/null || ret=1
$PERL ../digcomp.pl dig.out.ns2.pre.$n dig.out.ns2.post.$n || ret=1
n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:deleting previously added zone ($n)"
ret=0
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 delzone previous.example 2>&1 | sed 's/^/I:ns2 /'
$DIG $DIGOPTS @10.53.0.2 a.previous.example a > dig.out.ns2.$n
grep 'status: REFUSED' dig.out.ns2.$n > /dev/null || ret=1
grep '^a.previous.example' dig.out.ns2.$n > /dev/null && ret=1
n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:deleting newly added zone ($n)"
ret=0
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 delzone added.example 2>&1 | sed 's/^/I:ns2 /'
$DIG $DIGOPTS @10.53.0.2 a.added.example a > dig.out.ns2.$n
grep 'status: REFUSED' dig.out.ns2.$n > /dev/null || ret=1
grep '^a.added.example' dig.out.ns2.$n > /dev/null && ret=1
n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:attempt to delete a normally-loaded zone ($n)"
ret=0
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 delzone normal.example 2> rndc.out.ns2.$n
grep "permission denied" rndc.out.ns2.$n > /dev/null || ret=1
$DIG $DIGOPTS @10.53.0.2 a.normal.example a > dig.out.ns2.$n
grep 'status: NOERROR' dig.out.ns2.$n > /dev/null || ret=1
grep '^a.normal.example' dig.out.ns2.$n > /dev/null || ret=1
n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:reconfiguring server with multiple views"
rm -f ns2/named.conf
cp -f ns2/named2.conf ns2/named.conf
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 reconfig 2>&1 | sed 's/^/I:ns2 /'
sleep 5
echo "I:adding new zone to external view ($n)"
# NOTE: The internal view has "recursion yes" set, and so queries for
# nonexistent zones should return NOERROR. The external view is
# "recursion no", so queries for nonexistent zones should return
# REFUSED. This behavior should be the same regardless of whether
# the zone does not exist because a) it has not yet been loaded, b)
# it failed to load, or c) it has been deleted.
ret=0
$DIG +norec $DIGOPTS @10.53.0.2 -b 10.53.0.2 a.added.example a > dig.out.ns2.intpre.$n || ret=1
grep 'status: NOERROR' dig.out.ns2.intpre.$n > /dev/null || ret=1
$DIG +norec $DIGOPTS @10.53.0.4 -b 10.53.0.4 a.added.example a > dig.out.ns2.extpre.$n || ret=1
grep 'status: REFUSED' dig.out.ns2.extpre.$n > /dev/null || ret=1
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 addzone 'added.example in external { type master; file "added.db"; };' 2>&1 | sed 's/^/I:ns2 /'
$DIG +norec $DIGOPTS @10.53.0.2 -b 10.53.0.2 a.added.example a > dig.out.ns2.int.$n || ret=1
grep 'status: NOERROR' dig.out.ns2.int.$n > /dev/null || ret=1
$DIG +norec $DIGOPTS @10.53.0.4 -b 10.53.0.4 a.added.example a > dig.out.ns2.ext.$n || ret=1
grep 'status: NOERROR' dig.out.ns2.ext.$n > /dev/null || ret=1
grep '^a.added.example' dig.out.ns2.ext.$n > /dev/null || ret=1
n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:deleting newly added zone ($n)"
ret=0
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 delzone 'added.example in external' 2>&1 | sed 's/^/I:ns2 /'
$DIG $DIGOPTS @10.53.0.4 -b 10.53.0.4 a.added.example a > dig.out.ns2.$n || ret=1
grep 'status: REFUSED' dig.out.ns2.$n > /dev/null || ret=1
grep '^a.added.example' dig.out.ns2.$n > /dev/null && ret=1
n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:attempting to add zone to internal view ($n)"
ret=0
$DIG +norec $DIGOPTS @10.53.0.2 -b 10.53.0.2 a.added.example a > dig.out.ns2.pre.$n || ret=1
grep 'status: NOERROR' dig.out.ns2.pre.$n > /dev/null || ret=1
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 addzone 'added.example in internal { type master; file "added.db"; };' 2> rndc.out.ns2.$n
grep "permission denied" rndc.out.ns2.$n > /dev/null || ret=1
$DIG $DIGOPTS @10.53.0.2 -b 10.53.0.2 a.added.example a > dig.out.ns2.int.$n || ret=1
grep 'status: NOERROR' dig.out.ns2.int.$n > /dev/null || ret=1
$DIG $DIGOPTS @10.53.0.4 -b 10.53.0.4 a.added.example a > dig.out.ns2.ext.$n || ret=1
grep 'status: REFUSED' dig.out.ns2.ext.$n > /dev/null || ret=1
n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:ensure the configuration context is cleaned up correctly ($n)"
ret=0
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 reconfig > /dev/null 2>&1 || ret=1
sleep 5
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 status > /dev/null 2>&1 || ret=1
n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:exit status: $status"
exit $status

View File

@@ -0,0 +1,50 @@
#!/bin/sh
#
# 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
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# $Id: clean.sh,v 1.3.6.9 2012/02/06 23:45:34 tbox Exp $
rm -f */K* */dsset-* */*.signed */trusted.conf */tmp* */*.jnl */*.bk
rm -f active.key inact.key del.key unpub.key standby.key rev.key
rm -f nopriv.key vanishing.key del1.key del2.key
rm -f delayksk.key delayzsk.key missingzsk.key inactivezsk.key
rm -f nsupdate.out
rm -f */core
rm -f */example.bk
rm -f */named.memstats
rm -f dig.out.*
rm -f random.data
rm -f ns1/root.db
rm -f ns2/example.db
rm -f ns2/private.secure.example.db ns2/bar.db
rm -f ns3/nsec.example.db
rm -f ns3/nsec3.example.db
rm -f ns3/nsec3.nsec3.example.db
rm -f ns3/nsec3.optout.example.db
rm -f ns3/nsec3-to-nsec.example.db
rm -f ns3/oldsigs.example.db
rm -f ns3/optout.example.db
rm -f ns3/optout.nsec3.example.db
rm -f ns3/optout.optout.example.db
rm -f ns3/rsasha256.example.db ns3/rsasha512.example.db
rm -f ns3/secure.example.db
rm -f ns3/secure.nsec3.example.db
rm -f ns3/secure.optout.example.db
rm -f ns3/secure-to-insecure.example.db
rm -f ns3/nozsk.example.db ns3/inaczsk.example.db
rm -f ns3/prepub.example.db
rm -f ns3/prepub.example.db.in
rm -f ns3/secure-to-insecure2.example.db
rm -f ns3/*.nzf

View File

@@ -0,0 +1 @@
named.run

View File

@@ -0,0 +1,75 @@
#!/bin/sh -e
#
# 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
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# $Id: keygen.sh,v 1.3.6.5 2011/10/20 23:46:04 tbox Exp $
SYSTEMTESTTOP=../..
. $SYSTEMTESTTOP/conf.sh
RANDFILE=../random.data
zone=.
zonefile=root.db
infile=root.db.in
(cd ../ns2 && sh keygen.sh )
cat $infile ../ns2/dsset-example. > $zonefile
zskact=`$KEYGEN -3 -q -r $RANDFILE $zone`
zskvanish=`$KEYGEN -3 -q -r $RANDFILE $zone`
zskdel=`$KEYGEN -3 -q -r $RANDFILE -D now $zone`
zskinact=`$KEYGEN -3 -q -r $RANDFILE -I now $zone`
zskunpub=`$KEYGEN -3 -q -r $RANDFILE -G $zone`
zsksby=`$KEYGEN -3 -q -r $RANDFILE -A none $zone`
zsknopriv=`$KEYGEN -3 -q -r $RANDFILE $zone`
rm $zsknopriv.private
ksksby=`$KEYGEN -3 -q -r $RANDFILE -P now -A now+15s -fk $zone`
kskrev=`$KEYGEN -3 -q -r $RANDFILE -R now+15s -fk $zone`
cat $ksksby.key | grep -v '^; ' | $PERL -n -e '
local ($dn, $class, $type, $flags, $proto, $alg, @rest) = split;
local $key = join("", @rest);
print <<EOF
trusted-keys {
"$dn" $flags $proto $alg "$key";
};
EOF
' > trusted.conf
cp trusted.conf ../ns2/trusted.conf
cp trusted.conf ../ns3/trusted.conf
cp trusted.conf ../ns4/trusted.conf
cat $kskrev.key | grep -v '^; ' | $PERL -n -e '
local ($dn, $class, $type, $flags, $proto, $alg, @rest) = split;
local $key = join("", @rest);
print <<EOF
trusted-keys {
"$dn" $flags $proto $alg "$key";
};
EOF
' > trusted.conf
cp trusted.conf ../ns5/trusted.conf
echo $zskact > ../active.key
echo $zskvanish > ../vanishing.key
echo $zskdel > ../del.key
echo $zskinact > ../inact.key
echo $zskunpub > ../unpub.key
echo $zsknopriv > ../nopriv.key
echo $zsksby > ../standby.key
$REVOKE -R $kskrev > ../rev.key

View File

@@ -0,0 +1,55 @@
/*
* Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: named.conf,v 1.3 2009/11/30 23:48:02 tbox Exp $ */
// NS1
controls { /* empty */ };
options {
query-source address 10.53.0.1;
notify-source 10.53.0.1;
transfer-source 10.53.0.1;
port 5300;
pid-file "named.pid";
listen-on { 10.53.0.1; };
listen-on-v6 { none; };
recursion no;
notify yes;
dnssec-enable yes;
dnssec-validation yes;
};
key rndc_key {
secret "1234abcd8765";
algorithm hmac-md5;
};
controls {
inet 10.53.0.1 port 9953 allow { any; } keys { rndc_key; };
};
zone "." {
type master;
file "root.db";
allow-transfer { any; };
allow-query { any; };
allow-update { any; };
auto-dnssec maintain;
};
include "trusted.conf";

View File

@@ -0,0 +1,31 @@
; Copyright (C) 2009, 2010 Internet Systems Consortium, Inc. ("ISC")
;
; Permission to use, copy, modify, and/or distribute this software for any
; purpose with or without fee is hereby granted, provided that the above
; copyright notice and this permission notice appear in all copies.
;
; THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
; REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
; AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
; INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
; LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
; PERFORMANCE OF THIS SOFTWARE.
; $Id: root.db.in,v 1.3.6.3 2010/08/16 22:27:17 marka Exp $
$TTL 30
. IN SOA a.root.servers.nil. each.isc.org. (
2000042100 ; serial
600 ; refresh
600 ; retry
1200 ; expire
600 ; minimum
)
. NS a.root-servers.nil.
. TXT "root zone"
a.root-servers.nil. A 10.53.0.1
example. NS ns2.example.
bar. NS ns2.example.
ns2.example. A 10.53.0.2

View File

@@ -0,0 +1 @@
named.run

View File

@@ -0,0 +1,5 @@
; This is a key-signing key, keyid 30676, for bar.
; Created: Sat Dec 26 03:13:10 2009
; Publish: Sat Dec 26 03:13:10 2009
; Activate: Sat Dec 26 03:13:10 2009
bar. IN DNSKEY 257 3 5 AwEAAc7ppysDZjlldTwsvcXcTTOYJd5TvW5RUWWYKRsee+ozwY6C7vNI 0Xp1PiY+H31GhcnNMCjQU00y8Vezo42oJ4kpRTDevL0STksExXi1/wG+ M4j1CFMh2wgJ/9XLFzHaEWzt4sflVBAVZVXa/qNkRWDXYjsr30MWyylA wHCIxEuyA+NxAL6UL+ZuFo1j84AvfwkGcMbXTcOBSCaHT6AJToSXAcCa X4fnKJIzG4RyJoN2GK4TVdj4qSzLxL1lRkYHNqJvcmMjezxUs9A5fHNI iBEBRPs7NKrQJxegAGVn9ALylKHyhJW6uyBjleOWUDom4ej2J1vGrpQT /KCA35toCvU=

View File

@@ -0,0 +1,13 @@
Private-key-format: v1.3
Algorithm: 5 (RSASHA1)
Modulus: zumnKwNmOWV1PCy9xdxNM5gl3lO9blFRZZgpGx576jPBjoLu80jRenU+Jj4ffUaFyc0wKNBTTTLxV7OjjagniSlFMN68vRJOSwTFeLX/Ab4ziPUIUyHbCAn/1csXMdoRbO3ix+VUEBVlVdr+o2RFYNdiOyvfQxbLKUDAcIjES7ID43EAvpQv5m4WjWPzgC9/CQZwxtdNw4FIJodPoAlOhJcBwJpfh+cokjMbhHImg3YYrhNV2PipLMvEvWVGRgc2om9yYyN7PFSz0Dl8c0iIEQFE+zs0qtAnF6AAZWf0AvKUofKElbq7IGOV45ZQOibh6PYnW8aulBP8oIDfm2gK9Q==
PublicExponent: AQAB
PrivateExponent: BcfjYsFCjuH1x4ucdbW09ncOv8ppJXbiJkt9AoP0hFOT2c5wrJ1hNOGnrdvYd2CMBlpUOR+w5BxDP+cF78Q97ogXpcjjTwj+5PuqJLg4+qx8thvacrAkdXIKEsgMytjD2d4/ksQmeBiQ7zgiGyCHC7CYzvxnzXEKlgl4FuzLRy4SH1YiSTxKfw1ANKKHxmw8Xvav9ljubrzNdBEQNs6eJNkC6c3aGqiPFyTWGa90s6t1mwTXSxFqBUR1WlbfyYfuiAK2CAvFHeNo7VuC934ri7ceEq8jeOSuY0IqDq2pA3gVWVOyR4NFLXJWeDA3pjqi109t/WGg9IGydD/hsleP4Q==
Prime1: /hz+WxAL+9bO1l/857ME/OhxImSp86Xi7eA920sAo5ukOIQAQ6hbaKemYxyUbwBmGHEX9d0GOU+xAgZWUU9PbZgXw0fdf+uw6Hrgfce0rWY+uJpUcVHfjLPFgMC/XYrfcVQ8tsCXqRsIbqL+ynsEkQ4vybLhlSAyFqGqYFk/Qt0=
Prime2: 0HLxXynoSxUcNW15cbuMRHD34ri8sUQsqCtezofPWcCo/17jqf42W7X9YGO70+BvmG3awSr3LaLf862ovCR5+orwE2MqamAV6JZMyR7nvMNGSHTdg3Kk7Jv7T5Gu7Cg6K+on8pMRW3aIms4gs/Z16j0Gxz74ES9IP3vsvC+q6vk=
Exponent1: NLeXHRUrJ0fdCSRIt1iwRDeEoPn5OA7GEUtgCcp5i3eSjhb0ZxTaQc/l+NHJCW4vwApWSi9cRy99LUpbResKM1ZGN8EE9rDStqgnQnDXztFTWcDKm+e8VNhGtPtHuARDbqNnJRK3Y+Gz0iAGc8Mpo14qE9IEcoeHXKKVUf+x3BE=
Exponent2: dKCbJB+SdM/u5IXH+TZyGKkMSLIMATKfucfqV6vs+86rv5Yb0zUEvPNqPNAQe0+LoMF2L7YWblY+71wumHXgOaobAP3u8W2pVGUjuTOtfRPU8x1QAwfV9vye87oTINaxFXkBuNtITuBXNiY2bfprpw9WB4zXxuWpiruPjQsumiE=
Coefficient: qk8HX5fy74Sx6z3niBfTM/SUEjcsnJCTTmsXy6e7nOXWBK5ihKkmMw7LDhaY4OwjXvaVQH0Z190dfyOkWYTbXInIyNNnqCD+xZXkuzuvsUwLNgvXEFhVnzrrj3ozNiizZsyeAhFCKcITz3ci15HB3y8ZLChGYBPFU1ui7MsSkc8=
Created: 20091226021310
Publish: 20091226021310
Activate: 20091226021310

View File

@@ -0,0 +1,5 @@
; This is a key-signing key, keyid 30804, for bar.
; Created: Sat Dec 26 03:13:10 2009
; Publish: Sat Dec 26 03:13:10 2009
; Activate: Sat Dec 26 03:13:10 2009
bar. IN DNSKEY 257 3 5 AwEAgc7ppysDZjlldTwsvcXcTTOYJd5TvW5RUWWYKRsee+ozwY6C7vNI 0Xp1PiY+H31GhcnNMCjQU00y8Vezo42oJ4kpRTDevL0STksExXi1/wG+ M4j1CFMh2wgJ/9XLFzHaEWzt4sflVBAVZVXa/qNkRWDXYjsr30MWyylA wHCIxEuyA+NxAL6UL+ZuFo1j84AvfwkGcMbXTcOBSCaHT6AJToSXAcCa X4fnKJIzG4RyJoN2GK4TVdj4qSzLxL1lRkYHNqJvcmMjezxUs9A5fHNI iBEBRPs7NKrQJxegAGVn9ALylKHyhJW6uyBjleOWUDom4ej2J1vGrpQT /KCA35toCvU=

View File

@@ -0,0 +1,13 @@
Private-key-format: v1.3
Algorithm: 5 (RSASHA1)
Modulus: zumnKwNmOWV1PCy9xdxNM5gl3lO9blFRZZgpGx576jPBjoLu80jRenU+Jj4ffUaFyc0wKNBTTTLxV7OjjagniSlFMN68vRJOSwTFeLX/Ab4ziPUIUyHbCAn/1csXMdoRbO3ix+VUEBVlVdr+o2RFYNdiOyvfQxbLKUDAcIjES7ID43EAvpQv5m4WjWPzgC9/CQZwxtdNw4FIJodPoAlOhJcBwJpfh+cokjMbhHImg3YYrhNV2PipLMvEvWVGRgc2om9yYyN7PFSz0Dl8c0iIEQFE+zs0qtAnF6AAZWf0AvKUofKElbq7IGOV45ZQOibh6PYnW8aulBP8oIDfm2gK9Q==
PublicExponent: AQCB
PrivateExponent: I5TcRq2sbSi1u5a+jL6VVBBu3nyY7p3NXeD1WYYYD66b8RWbgJdTtsZxgixD5sKKrW/xT68d3FUsIjs36w7yp5+g99q7lJ3v35VcMuLXbaKitS/LJdTZF/GIWwRs+DHdt+chh0QeNLzclq8ZfBeTAycFxwC7zVDLsqqcL6/JHiJhHT+dNEqj6/AIOgSYJzVeBI34LtZLW94IKf4dHLzREnLK6+64PFjpwjOG12O9klKfwHRIRN9WUsDG4AuzDSABH+qo2Zc6uJusC/D6HADbiG7tXmLYL6IxanWTbTrx4Hfp01fF+JQCuyOCRmN47X/nCumvDXKMn9Ve5+OlYi0vAQ==
Prime1: /hz+WxAL+9bO1l/857ME/OhxImSp86Xi7eA920sAo5ukOIQAQ6hbaKemYxyUbwBmGHEX9d0GOU+xAgZWUU9PbZgXw0fdf+uw6Hrgfce0rWY+uJpUcVHfjLPFgMC/XYrfcVQ8tsCXqRsIbqL+ynsEkQ4vybLhlSAyFqGqYFk/Qt0=
Prime2: 0HLxXynoSxUcNW15cbuMRHD34ri8sUQsqCtezofPWcCo/17jqf42W7X9YGO70+BvmG3awSr3LaLf862ovCR5+orwE2MqamAV6JZMyR7nvMNGSHTdg3Kk7Jv7T5Gu7Cg6K+on8pMRW3aIms4gs/Z16j0Gxz74ES9IP3vsvC+q6vk=
Exponent1: JDLRyjRz53hTP7H2oaKgQYADs/UDswN2lwWpuag0wsPwQmeRAZZY2TiISPSu+3Mvh4XJ6r5UHQd5FbAN1v2mG4aYgWwoYwoxyvdTLcnQXciX2z+7877GcEyKHPno4fYXRqhVH4i1QjKaQl8dw9LFvzbVvGvvwsHGwQeqPprw7hk=
Exponent2: vbnob7AZKqKhiVdEcnnhbeZBGcaKkTpE+RAkUL7spNQDiTPvJgo5fcTk/h6G7ijAXK0j62ZHZ3RS7RnaRa+KhO7usPcYMFiJ/VdAyRlIivhyi+WNQ2x4vSygwDy2VV9elljFeNe4dV1Cb+ssE8kAmbP52JjJD6MkhvVLd0u/jMk=
Coefficient: qk8HX5fy74Sx6z3niBfTM/SUEjcsnJCTTmsXy6e7nOXWBK5ihKkmMw7LDhaY4OwjXvaVQH0Z190dfyOkWYTbXInIyNNnqCD+xZXkuzuvsUwLNgvXEFhVnzrrj3ozNiizZsyeAhFCKcITz3ci15HB3y8ZLChGYBPFU1ui7MsSkc8=
Created: 20091226021310
Publish: 20091226021310
Activate: 20091226021310

View File

@@ -0,0 +1,85 @@
; Copyright (C) 2010 Internet Systems Consortium, Inc. ("ISC")
;
; Permission to use, copy, modify, and/or distribute this software for any
; purpose with or without fee is hereby granted, provided that the above
; copyright notice and this permission notice appear in all copies.
;
; THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
; REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
; AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
; INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
; LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
; PERFORMANCE OF THIS SOFTWARE.
; $Id: bar.db.in,v 1.1.4.2 2010/01/18 23:48:01 tbox Exp $
$TTL 300 ; 5 minutes
@ IN SOA mname1. . (
2000042407 ; serial
20 ; refresh (20 seconds)
20 ; retry (20 seconds)
1814400 ; expire (3 weeks)
3600 ; minimum (1 hour)
)
NS ns2
NS ns3
ns2 A 10.53.0.2
ns3 A 10.53.0.3
a A 10.0.0.1
b A 10.0.0.2
d A 10.0.0.4
; Used for testing ANY queries
foo TXT "testing"
foo A 10.0.1.0
; Used for testing CNAME queries
cname1 CNAME cname1-target
cname1-target TXT "testing cname"
cname2 CNAME cname2-target
cname2-target TXT "testing cname"
; Used for testing DNAME queries
dname1 DNAME dname1-target
foo.dname1-target TXT "testing dname"
dname2 DNAME dname2-target
foo.dname2-target TXT "testing dname"
; A secure subdomain
secure NS ns.secure
ns.secure A 10.53.0.3
; An insecure subdomain
insecure NS ns.insecure
ns.insecure A 10.53.0.3
; A insecure subdomain
mustbesecure NS ns.mustbesecure
ns.mustbesecure A 10.53.0.3
z A 10.0.0.26
nsec3 NS ns.nsec3
ns.nsec3 A 10.53.0.3
optout NS ns.optout
ns.optout A 10.53.0.3
nsec3-unknown NS ns.nsec3-unknown
ns.nsec3-unknown A 10.53.0.3
optout-unknown NS ns.optout-unknown
ns.optout-unknown A 10.53.0.3
multiple NS ns.multiple
ns.multiple A 10.53.0.3
rsasha256 NS ns.rsasha256
ns.rsasha256 A 10.53.0.3
rsasha512 NS ns.rsasha512
ns.rsasha512 A 10.53.0.3

View File

@@ -0,0 +1,25 @@
; Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
;
; Permission to use, copy, modify, and/or distribute this software for any
; purpose with or without fee is hereby granted, provided that the above
; copyright notice and this permission notice appear in all copies.
;
; THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
; REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
; AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
; INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
; LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
; PERFORMANCE OF THIS SOFTWARE.
; $Id: child.nsec3.example.db,v 1.3 2009/11/30 23:48:02 tbox Exp $
$TTL 300 ; 5 minutes
@ IN SOA mname1. . (
2006081400 ; serial
20 ; refresh (20 seconds)
20 ; retry (20 seconds)
1814400 ; expire (3 weeks)
3600 ; minimum (1 hour)
)
@ IN NS ns2.example.

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