Compare commits
386
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e38c8b9aee | ||
|
|
c16fcbf9a4 | ||
|
|
2a33835a96 | ||
|
|
446b58f36b | ||
|
|
fb73a88f78 | ||
|
|
b40b6c3970 | ||
|
|
1e358dbc98 | ||
|
|
337f9dd0ec | ||
|
|
b4b4277f5a | ||
|
|
3f907b8bee | ||
|
|
9d7ad52506 | ||
|
|
cac3978af2 | ||
|
|
fa03f94102 | ||
|
|
75c2356f42 | ||
|
|
7351c505a0 | ||
|
|
994e656977 | ||
|
|
cb6a185c69 | ||
|
|
055278c936 | ||
|
|
64fe6bbaf2 | ||
|
|
9e493798c6 | ||
|
|
e5ee96fc1b | ||
|
|
b55338e447 | ||
|
|
20c52bf9b8 | ||
|
|
1d9c37876b | ||
|
|
8e3fc5725f | ||
|
|
7db4dedf6b | ||
|
|
b6c77202cb | ||
|
|
ec25056b48 | ||
|
|
e3131b8d52 | ||
|
|
21a547c100 | ||
|
|
9e11b54bbc | ||
|
|
e80c26b22e | ||
|
|
afddc2781e | ||
|
|
41a68425ea | ||
|
|
f7986c8d1a | ||
|
|
9c4fb3b3e6 | ||
|
|
83a1e87dd2 | ||
|
|
5146cbc092 | ||
|
|
49cd3aac9c | ||
|
|
a94db46631 | ||
|
|
c3c0481293 | ||
|
|
69380eb033 | ||
|
|
2c816e745b | ||
|
|
10e6bfc864 | ||
|
|
84385bc717 | ||
|
|
d6d9fd1c71 | ||
|
|
9130f055f4 | ||
|
|
cfccd8d246 | ||
|
|
3ea9861e7a | ||
|
|
a71823bc5c | ||
|
|
7425252207 | ||
|
|
c0bd1bf944 | ||
|
|
12d45c5cd1 | ||
|
|
d30f6e5f99 | ||
|
|
abe41ba011 | ||
|
|
6b30bc73c0 | ||
|
|
f335795068 | ||
|
|
b0b76d259f | ||
|
|
57eadf4d4f | ||
|
|
fb8bb4e306 | ||
|
|
d7ae24c868 | ||
|
|
84f1d9a204 | ||
|
|
2e688488f7 | ||
|
|
d2943440a0 | ||
|
|
1a5620db01 | ||
|
|
63c9ec367f | ||
|
|
d9929b1b0a | ||
|
|
88f913ac81 | ||
|
|
8abf2f23d0 | ||
|
|
20faf4652a | ||
|
|
7785f644c3 | ||
|
|
519bfe4c97 | ||
|
|
6a6dc2f410 | ||
|
|
63aaff50df | ||
|
|
4093efc900 | ||
|
|
e91da20dc3 | ||
|
|
c8b07932e4 | ||
|
|
ebcaae4ae5 | ||
|
|
7671aba67d | ||
|
|
e7c34d5179 | ||
|
|
187d22e090 | ||
|
|
537f2284a3 | ||
|
|
71877806e8 | ||
|
|
e0d42538f9 | ||
|
|
083461d332 | ||
|
|
b105ccee68 | ||
|
|
66ba2fdad5 | ||
|
|
8b9b270c7d | ||
|
|
8e6d89ad97 | ||
|
|
4c3386ad95 | ||
|
|
7fc59e384c | ||
|
|
83cde08522 | ||
|
|
51f7ed99fe | ||
|
|
08974f39f1 | ||
|
|
fc496b2b5d | ||
|
|
919179b369 | ||
|
|
ed090fed56 | ||
|
|
0937e281a8 | ||
|
|
0a73c9f137 | ||
|
|
45abf438f8 | ||
|
|
c40425d0f6 | ||
|
|
9d1f4696ec | ||
|
|
c3b8130fe8 | ||
|
|
3322e41eeb | ||
|
|
d34aa0ccd0 | ||
|
|
f5cb3d707a | ||
|
|
1d8a62713d | ||
|
|
d5ec498e26 | ||
|
|
636e9fc259 | ||
|
|
8666f8d28f | ||
|
|
2975f37f1c | ||
|
|
378e36a955 | ||
|
|
5bf1e8781e | ||
|
|
48eedb8108 | ||
|
|
e10e6756c9 | ||
|
|
82082ecd56 | ||
|
|
122a1a00be | ||
|
|
c96ca40023 | ||
|
|
c8b36ea6b9 | ||
|
|
15db6ee6e4 | ||
|
|
618921902a | ||
|
|
229dfb5dc8 | ||
|
|
ae1aa55c6f | ||
|
|
939824fce5 | ||
|
|
f0966d1485 | ||
|
|
2be97feb46 | ||
|
|
fd30a03f2b | ||
|
|
cc0e8cda71 | ||
|
|
12df6829d1 | ||
|
|
45e77a3680 | ||
|
|
c08e60adcb | ||
|
|
6e06d3e7c6 | ||
|
|
da3044f2df | ||
|
|
8ae1774089 | ||
|
|
ad86878d61 | ||
|
|
408bcf9c07 | ||
|
|
cc9c97fdfc | ||
|
|
a7e6a584ea | ||
|
|
1b7598a045 | ||
|
|
9bd14e2d1f | ||
|
|
a554eb1ea0 | ||
|
|
a64750e428 | ||
|
|
a7657dc150 | ||
|
|
127810e512 | ||
|
|
b722c92e76 | ||
|
|
718c527e1d | ||
|
|
96907d636d | ||
|
|
9f37641d81 | ||
|
|
f8f32ac1fc | ||
|
|
f781a1bd96 | ||
|
|
23f69e5626 | ||
|
|
a319b82421 | ||
|
|
adebe28b52 | ||
|
|
9f38be5064 | ||
|
|
9dfaf03b31 | ||
|
|
329a0e7812 | ||
|
|
440380ac41 | ||
|
|
6eec7fe092 | ||
|
|
5ae0906b23 | ||
|
|
cc3c8f1a7c | ||
|
|
4f18b6a09a | ||
|
|
69fd3f5ba4 | ||
|
|
f83a64072b | ||
|
|
bb1937aaec | ||
|
|
5519c76639 | ||
|
|
e63376fd0a | ||
|
|
dbfd19c668 | ||
|
|
802a58d5c6 | ||
|
|
5a879071d0 | ||
|
|
8ac0152651 | ||
|
|
cffb1ef0ac | ||
|
|
c4209418a5 | ||
|
|
96256e260a | ||
|
|
6c3c6aea37 | ||
|
|
3e0d30a642 | ||
|
|
e05784fd64 | ||
|
|
bf6efbc9a9 | ||
|
|
b896fc4972 | ||
|
|
e5ef038134 | ||
|
|
19c42d46e8 | ||
|
|
5106a18e9e | ||
|
|
bcf4d20603 | ||
|
|
59cdaef4f7 | ||
|
|
9a25368c8c | ||
|
|
fafc7c7b8a | ||
|
|
a0571d3851 | ||
|
|
f02e3c4bab | ||
|
|
8ef23f9fb0 | ||
|
|
7f60bb39df | ||
|
|
cd0e7df6fc | ||
|
|
ecb2f20324 | ||
|
|
4f6ef2f3e5 | ||
|
|
b65d19f9fd | ||
|
|
fffc671219 | ||
|
|
3245eb98f4 | ||
|
|
51161526a4 | ||
|
|
e9ed9b8eec | ||
|
|
b2f65ddbf0 | ||
|
|
a511c8cc0e | ||
|
|
6993d9131e | ||
|
|
5bc0e41008 | ||
|
|
48bbef71f7 | ||
|
|
b5ea00158d | ||
|
|
cebcd9184e | ||
|
|
7d4cbca5b0 | ||
|
|
c356413294 | ||
|
|
e299a870b3 | ||
|
|
c4a436569a | ||
|
|
8d9196bed7 | ||
|
|
b529de9109 | ||
|
|
8ccd8f4f90 | ||
|
|
6f719b482b | ||
|
|
92ae05e1bc | ||
|
|
dbe6a1a05f | ||
|
|
73d64de779 | ||
|
|
dd30f53edc | ||
|
|
3af412c0e0 | ||
|
|
c3f3b824e7 | ||
|
|
18ced94241 | ||
|
|
cde16236fb | ||
|
|
e9f17da6e9 | ||
|
|
8d996fd79c | ||
|
|
e3160b27f7 | ||
|
|
ad0ec2ea93 | ||
|
|
179d5faa28 | ||
|
|
c9accfde28 | ||
|
|
edbb256c3a | ||
|
|
befd429434 | ||
|
|
6439a76c6d | ||
|
|
d86f1d00ad | ||
|
|
eaf1c0f6eb | ||
|
|
fc3dd703d8 | ||
|
|
f86f314d7e | ||
|
|
facb68b22e | ||
|
|
49201f10cb | ||
|
|
be38c1f041 | ||
|
|
2aee33f412 | ||
|
|
b1254430df | ||
|
|
0db7130f2b | ||
|
|
45722aa4f7 | ||
|
|
7288d321ae | ||
|
|
75888a1f16 | ||
|
|
03568d6ec6 | ||
|
|
f1ee5e4a16 | ||
|
|
f553dac1b0 | ||
|
|
cc5c3b5948 | ||
|
|
379d407773 | ||
|
|
8c98e7abfe | ||
|
|
a60cef9dec | ||
|
|
0ba997b4c2 | ||
|
|
5d0b48474f | ||
|
|
2b075c2881 | ||
|
|
06d3106002 | ||
|
|
be26328849 | ||
|
|
27fb31580c | ||
|
|
116a2333ec | ||
|
|
8afeda645c | ||
|
|
0a33957c94 | ||
|
|
14a3193dfb | ||
|
|
d0314a14fa | ||
|
|
49f90025a0 | ||
|
|
d79be7dd5e | ||
|
|
dfed04605d | ||
|
|
f7d346357e | ||
|
|
e01a4bcb20 | ||
|
|
ddc9a8be97 | ||
|
|
51522a2b84 | ||
|
|
ff6b717955 | ||
|
|
730c6651a0 | ||
|
|
dc2c707a98 | ||
|
|
05a752c443 | ||
|
|
b8e273b47f | ||
|
|
33ff03db58 | ||
|
|
ad20284104 | ||
|
|
90e886cfc0 | ||
|
|
2bf388a31b | ||
|
|
6a756ab654 | ||
|
|
16a67911d8 | ||
|
|
3ba1d1e43b | ||
|
|
f6e1daba05 | ||
|
|
25d693f0c1 | ||
|
|
5f2f68985b | ||
|
|
8755a249bc | ||
|
|
4795f0ca89 | ||
|
|
dfdc6d61aa | ||
|
|
0158c1a4ea | ||
|
|
5ed0b0d852 | ||
|
|
ad94787cca | ||
|
|
e1400e3667 | ||
|
|
45bee4d3c3 | ||
|
|
ed8000f333 | ||
|
|
3385fb6456 | ||
|
|
52731c000d | ||
|
|
10535d1c79 | ||
|
|
bd2ddec58f | ||
|
|
07910f0153 | ||
|
|
b364445fc2 | ||
|
|
cdbe639fe6 | ||
|
|
681a07229b | ||
|
|
e8154b50d4 | ||
|
|
e495999c62 | ||
|
|
ad118d6eef | ||
|
|
8649c59a75 | ||
|
|
c094d1e4f3 | ||
|
|
24bca1c4b4 | ||
|
|
a7ae615743 | ||
|
|
5609472fbe | ||
|
|
11a552a614 | ||
|
|
5ac14cb753 | ||
|
|
bf65f72934 | ||
|
|
0d07de9228 | ||
|
|
0ed3a2b269 | ||
|
|
c76fcdd2a2 | ||
|
|
8448691159 | ||
|
|
0ed9ec49ed | ||
|
|
30e837f31a | ||
|
|
d782fcc638 | ||
|
|
7a996f0c0d | ||
|
|
04038baf1a | ||
|
|
4354f44d9c | ||
|
|
00ecbad2d0 | ||
|
|
7c3f653112 | ||
|
|
1a6525ffa2 | ||
|
|
ee06182057 | ||
|
|
fc6b5ad585 | ||
|
|
b3d2ab442c | ||
|
|
eb17957c3d | ||
|
|
dc81d8cb67 | ||
|
|
f06a755dd2 | ||
|
|
d4f3b14c78 | ||
|
|
097b57744a | ||
|
|
d949a5d83c | ||
|
|
730cc3e3c5 | ||
|
|
5d666f533b | ||
|
|
43d0fb84e7 | ||
|
|
ffc7997723 | ||
|
|
7554e8d2ca | ||
|
|
3a14450d39 | ||
|
|
ffe8ddd95f | ||
|
|
c37537cfe7 | ||
|
|
abb2fd1027 | ||
|
|
3668e152bb | ||
|
|
8ee23a47e8 | ||
|
|
38060959c7 | ||
|
|
0b559ccb33 | ||
|
|
7a0c7bf9c8 | ||
|
|
85da0086a8 | ||
|
|
05f25f8970 | ||
|
|
03ecba2cdc | ||
|
|
92b4e70d35 | ||
|
|
369d8cd432 | ||
|
|
e4295bb46c | ||
|
|
de23b20ccf | ||
|
|
302c6cbe7f | ||
|
|
be8a607341 | ||
|
|
524233a9d0 | ||
|
|
9b58500c6a | ||
|
|
f467ba8e1f | ||
|
|
7be900a98f | ||
|
|
75c0d85fc4 | ||
|
|
cf9fd889a6 | ||
|
|
c92d09320b | ||
|
|
337e37a6cf | ||
|
|
68f056b2a0 | ||
|
|
120af964ce | ||
|
|
2392b8bc7d | ||
|
|
7dc84eaa8e | ||
|
|
7ec88b384d | ||
|
|
dfa43e6dd5 | ||
|
|
1c36eed760 | ||
|
|
dde66b8012 | ||
|
|
265052df49 | ||
|
|
9cef87d835 | ||
|
|
1bf6b3ea65 | ||
|
|
31b0dc1f20 | ||
|
|
058ce1e732 | ||
|
|
c04784c144 | ||
|
|
c8015eb33b | ||
|
|
2ea47c7f34 | ||
|
|
4f9c718803 | ||
|
|
dd7bb617be | ||
|
|
0698158eb0 | ||
|
|
b7968f6c25 | ||
|
|
c8de677eae | ||
|
|
5c03cd339e | ||
|
|
bb2dfb3f49 |
+129
-3
@@ -2,7 +2,7 @@ variables:
|
||||
DEBIAN_FRONTEND: noninteractive
|
||||
LC_ALL: C
|
||||
DOCKER_DRIVER: overlay2
|
||||
CI_REGISTRY_IMAGE: oerdnj/bind9
|
||||
CI_REGISTRY_IMAGE: registry.gitlab.isc.org/isc-projects/images/bind9
|
||||
CCACHE_DIR: "/ccache"
|
||||
|
||||
stages:
|
||||
@@ -10,6 +10,20 @@ stages:
|
||||
- build
|
||||
- test
|
||||
|
||||
.centos-centos6-amd64: ¢os_centos6_amd64_image
|
||||
image: "$CI_REGISTRY_IMAGE:centos-centos6-amd64"
|
||||
tags:
|
||||
- linux
|
||||
- docker
|
||||
- amd64
|
||||
|
||||
.centos-centos7-amd64: ¢os_centos7_amd64_image
|
||||
image: "$CI_REGISTRY_IMAGE:centos-centos7-amd64"
|
||||
tags:
|
||||
- linux
|
||||
- docker
|
||||
- amd64
|
||||
|
||||
.debian-jessie-amd64: &debian_jessie_amd64_image
|
||||
image: "$CI_REGISTRY_IMAGE:debian-jessie-amd64"
|
||||
tags:
|
||||
@@ -98,9 +112,9 @@ stages:
|
||||
stage: build
|
||||
before_script:
|
||||
- test -w "${CCACHE_DIR}" && export PATH="/usr/lib/ccache:${PATH}"
|
||||
- ./autogen.sh
|
||||
# - ./autogen.sh
|
||||
script:
|
||||
- ./configure --enable-developer --with-libtool --disable-static --with-atf=/usr/local --with-libidn2
|
||||
- ./configure --enable-developer --with-libtool --disable-static --with-atf=/usr $EXTRA_CONFIGURE
|
||||
- make -j${PARALLEL_JOBS_BUILD:-1} -k all V=1
|
||||
artifacts:
|
||||
expire_in: '1 hour'
|
||||
@@ -111,6 +125,9 @@ stages:
|
||||
before_script:
|
||||
- rm -rf .ccache
|
||||
- bash -x bin/tests/system/ifconfig.sh up
|
||||
- export SOFTHSM_CONF="/tmp/softhsm.conf"
|
||||
- echo "0:/tmp/softhsm.db" > $SOFTHSM_CONF
|
||||
- if command -v softhsm2-util >/dev/null; then softhsm2-util --init-token --free --pin 0000 --so-pin 0000 --label "softhsm"; fi
|
||||
script:
|
||||
- ( cd bin/tests && make -j${TEST_PARALLEL_JOBS:-1} -k test V=1 )
|
||||
- test -s bin/tests/system/systests.output
|
||||
@@ -123,6 +140,9 @@ stages:
|
||||
stage: test
|
||||
before_script:
|
||||
- export KYUA_RESULT="$CI_PROJECT_DIR/kyua.results"
|
||||
- export SOFTHSM_CONF="/tmp/softhsm.conf"
|
||||
- echo "0:/tmp/softhsm.db" > $SOFTHSM_CONF
|
||||
- if command -v softhsm2-util >/dev/null; then softhsm2-util --init-token --free --pin 0000 --so-pin 0000 --label "softhsm"; fi
|
||||
script:
|
||||
- make unit
|
||||
after_script:
|
||||
@@ -140,13 +160,17 @@ precheck:debian:sid:amd64:
|
||||
<<: *debian_sid_amd64_image
|
||||
stage: precheck
|
||||
script:
|
||||
- sh util/checklibs.sh > checklibs.out
|
||||
- perl util/check-changes CHANGES
|
||||
- perl -w util/merge_copyrights
|
||||
- diff -urNap util/copyrights util/newcopyrights
|
||||
- rm util/newcopyrights
|
||||
- xmllint --noout --nonet `git ls-files '*.xml' '*.docbook'`
|
||||
- xmllint --noout --nonet --html `git ls-files '*.html'`
|
||||
artifacts:
|
||||
paths:
|
||||
- util/newcopyrights
|
||||
- checklibs.out
|
||||
expire_in: '1 week'
|
||||
when: on_failure
|
||||
|
||||
@@ -174,17 +198,49 @@ precheck:debian:sid:amd64:
|
||||
# <<: *ubuntu_xenial_i386_image
|
||||
# <<: *build_job
|
||||
|
||||
build:centos:centos6:amd64:
|
||||
variables:
|
||||
CC: gcc
|
||||
CFLAGS: "-Wall -Wextra -O2 -g"
|
||||
EXTRA_CONFIGURE: "--with-libidn2 --disable-warn-error"
|
||||
<<: *centos_centos6_amd64_image
|
||||
<<: *build_job
|
||||
|
||||
build:centos:centos7:amd64:
|
||||
variables:
|
||||
CC: gcc
|
||||
CFLAGS: "-Wall -Wextra -O2 -g"
|
||||
EXTRA_CONFIGURE: "--with-libidn2"
|
||||
<<: *centos_centos7_amd64_image
|
||||
<<: *build_job
|
||||
|
||||
build:clang:debian:sid:amd64:
|
||||
variables:
|
||||
CC: clang-6.0
|
||||
CFLAGS: "-Wall -Wextra -Wenum-conversion -O2 -g"
|
||||
EXTRA_CONFIGURE: "--with-libidn2"
|
||||
<<: *debian_sid_amd64_image
|
||||
<<: *build_job
|
||||
|
||||
build:debian:jessie:amd64:
|
||||
variables:
|
||||
CC: gcc
|
||||
CFLAGS: "-Wall -Wextra -O2 -g"
|
||||
<<: *debian_jessie_amd64_image
|
||||
<<: *build_job
|
||||
|
||||
build:debian:stretch:amd64:
|
||||
variables:
|
||||
CC: gcc
|
||||
CFLAGS: "-Wall -Wextra -O2 -g"
|
||||
<<: *debian_stretch_amd64_image
|
||||
<<: *build_job
|
||||
|
||||
build:debian:sid:amd64:
|
||||
variables:
|
||||
CC: gcc
|
||||
CFLAGS: "-Wall -Wextra -O2 -g"
|
||||
EXTRA_CONFIGURE: "--with-libidn2"
|
||||
<<: *debian_sid_amd64_image
|
||||
<<: *build_job
|
||||
|
||||
@@ -192,6 +248,7 @@ build:clang:debian:sid:i386:
|
||||
variables:
|
||||
CC: clang-6.0
|
||||
CFLAGS: "-Wall -Wextra -Wenum-conversion -O2 -g"
|
||||
EXTRA_CONFIGURE: "--with-libidn2"
|
||||
<<: *debian_sid_i386_image
|
||||
<<: *build_job
|
||||
|
||||
@@ -199,9 +256,34 @@ build:debian:sid:i386:
|
||||
variables:
|
||||
CC: gcc
|
||||
CFLAGS: "-Wall -Wextra -O2 -g"
|
||||
EXTRA_CONFIGURE: "--with-libidn2"
|
||||
<<: *debian_sid_i386_image
|
||||
<<: *build_job
|
||||
|
||||
unittest:centos:centos6:amd64:
|
||||
<<: *centos_centos6_amd64_image
|
||||
<<: *unit_test_job
|
||||
dependencies:
|
||||
- build:centos:centos6:amd64
|
||||
|
||||
unittest:centos:centos7:amd64:
|
||||
<<: *centos_centos7_amd64_image
|
||||
<<: *unit_test_job
|
||||
dependencies:
|
||||
- build:centos:centos7:amd64
|
||||
|
||||
unittest:debian:jessie:amd64:
|
||||
<<: *debian_jessie_amd64_image
|
||||
<<: *unit_test_job
|
||||
dependencies:
|
||||
- build:debian:jessie:amd64
|
||||
|
||||
unittest:debian:stretch:amd64:
|
||||
<<: *debian_stretch_amd64_image
|
||||
<<: *unit_test_job
|
||||
dependencies:
|
||||
- build:debian:stretch:amd64
|
||||
|
||||
unittest:debian:sid:amd64:
|
||||
<<: *debian_sid_amd64_image
|
||||
<<: *unit_test_job
|
||||
@@ -220,6 +302,30 @@ unittest:debian:sid:i386:
|
||||
dependencies:
|
||||
- build:debian:sid:i386
|
||||
|
||||
systemtest:centos:centos6:amd64:
|
||||
<<: *centos_centos6_amd64_image
|
||||
<<: *system_test_job
|
||||
dependencies:
|
||||
- build:centos:centos6:amd64
|
||||
|
||||
systemtest:centos:centos7:amd64:
|
||||
<<: *centos_centos7_amd64_image
|
||||
<<: *system_test_job
|
||||
dependencies:
|
||||
- build:centos:centos7:amd64
|
||||
|
||||
systemtest:debian:jessie:amd64:
|
||||
<<: *debian_jessie_amd64_image
|
||||
<<: *system_test_job
|
||||
dependencies:
|
||||
- build:debian:jessie:amd64
|
||||
|
||||
systemtest:debian:stretch:amd64:
|
||||
<<: *debian_stretch_amd64_image
|
||||
<<: *system_test_job
|
||||
dependencies:
|
||||
- build:debian:stretch:amd64
|
||||
|
||||
systemtest:debian:sid:amd64:
|
||||
<<: *debian_sid_amd64_image
|
||||
<<: *system_test_job
|
||||
@@ -231,3 +337,23 @@ systemtest:debian:sid:i386:
|
||||
<<: *system_test_job
|
||||
dependencies:
|
||||
- build:debian:sid:i386
|
||||
|
||||
pkcs11:build:debian:sid:amd64:
|
||||
variables:
|
||||
CC: gcc
|
||||
CFLAGS: "-Wall -Wextra -O2 -g"
|
||||
EXTRA_CONFIGURE: "--enable-native-pkcs11 --with-pkcs11=/usr/lib/softhsm/libsofthsm2.so"
|
||||
<<: *debian_sid_amd64_image
|
||||
<<: *build_job
|
||||
|
||||
pkcs11:unittest:debian:sid:amd64:
|
||||
<<: *debian_sid_amd64_image
|
||||
<<: *unit_test_job
|
||||
dependencies:
|
||||
- pkcs11:build:debian:sid:amd64
|
||||
|
||||
pkcs11:systemtest:debian:sid:amd64:
|
||||
<<: *debian_sid_amd64_image
|
||||
<<: *system_test_job
|
||||
dependencies:
|
||||
- pkcs11:build:debian:sid:amd64
|
||||
|
||||
@@ -1,3 +1,134 @@
|
||||
5007. [cleanup] Replace custom ISC boolean and integer data types
|
||||
with C99 stdint.h and stdbool.h types. [GL #9]
|
||||
|
||||
5006. [cleanup] Code preparing a delegation response was extracted from
|
||||
query_delegation() and query_zone_delegation() into a
|
||||
separate function in order to decrease code
|
||||
duplication. [GL #431]
|
||||
|
||||
5005. [bug] dnssec-verify, and dnssec-signzone at the verification
|
||||
step, failed on some validly signed zones. [GL #442]
|
||||
|
||||
5004. [bug] 'rndc reconfig' could cause inline zones to stop
|
||||
re-signing. [GL #439]
|
||||
|
||||
5003. [bug] dns_acl_isinsecure did not handle geoip elements.
|
||||
[GL #406]
|
||||
|
||||
5002. [bug] mdig: Handle malformed +ednsopt option, support 100
|
||||
+ednsopt options per query rather than 100 total and
|
||||
address memory leaks if +ednsopt was specified.
|
||||
[GL #410]
|
||||
|
||||
5001. [bug] Fix refcount errors on error paths. [GL !563]
|
||||
|
||||
5000. [bug] named_server_servestale() could leave the server in
|
||||
exclusive mode if an error occured. [GL #441]
|
||||
|
||||
4999. [cleanup] Remove custom printf implementaion in lib/isc/print.c.
|
||||
[GL #261]
|
||||
|
||||
4998. [test] Make resolver and cacheclean tests more civilized.
|
||||
|
||||
4997. [security] named could crash during recursive processing
|
||||
of DNAME records when "deny-answer-aliases" was
|
||||
in use. (CVE-2018-5740) [GL #387]
|
||||
|
||||
4996. [bug] dig: Handle malformed +ednsopt option. [GL #403]
|
||||
|
||||
4995. [test] Add tests for "tcp-self" update policy. [GL !282]
|
||||
|
||||
4994. [bug] Trust anchor telemetry queries were not being sent
|
||||
upstream for locally served zones. [GL #392]
|
||||
|
||||
4993. [cleanup] Remove support for silently ignoring 'no-change' deltas
|
||||
from BIND 8 when processing an IXFR stream. 'no-change'
|
||||
deltas will now trigger a fallback to AXFR as the
|
||||
recovery mechanism. [GL #369]
|
||||
|
||||
4992. [bug] The wrong address was being logged for trust anchor
|
||||
telemetry queries. [GL #379]
|
||||
|
||||
4991. [bug] "rndc reconfig" was incorrectly handling zones whose
|
||||
"mirror" setting was changed. [GL #381]
|
||||
|
||||
4990. [bug] Prevent a possible NULL reference in pkcs11-keygen.
|
||||
[GL #401]
|
||||
|
||||
4989. [cleanup] IDN support in dig has been reworked. IDNA2003
|
||||
fallbacks were removed in the process. [GL #384]
|
||||
|
||||
4988. [bug] Don't synthesize NXDOMAIN from NSEC for records under
|
||||
a DNAME.
|
||||
|
||||
--- 9.13.2 released ---
|
||||
|
||||
4987. [cleanup] dns_rdataslab_tordataset() and its related
|
||||
dns_rdatasetmethods_t callbacks were removed as they
|
||||
were not being used by anything in BIND. [GL #371]
|
||||
|
||||
4986. [func] When built on Linux, BIND now requires the libcap
|
||||
library to set process privileges, unless capability
|
||||
support is explicitly overridden with "configure
|
||||
--disable-linux-caps". [GL #321]
|
||||
|
||||
4985. [func] Add a new slave zone option, "mirror", to enable
|
||||
serving a non-authoritative copy of a zone that
|
||||
is subject to DNSSEC validation before being
|
||||
used. For now, this option is only meant to
|
||||
facilitate deployment of an RFC 7706-style local
|
||||
copy of the root zone. [GL #33]
|
||||
|
||||
4984. [bug] Improve handling of very large incremental
|
||||
zone transfers to prevent journal corruption. [GL #339]
|
||||
|
||||
4983. [func] Add the ability to not return a DNS COOKIE option
|
||||
when one is present in the request (answer-cookie no;).
|
||||
[GL #173]
|
||||
|
||||
4982. [cleanup] Return FORMERR if the question section is empty
|
||||
and no COOKIE option is present; this restores
|
||||
older behavior except in the newly specified
|
||||
COOKIE case. [GL #260]
|
||||
|
||||
4981. [bug] Fix race in cmsg buffer usage in socket code.
|
||||
[GL #180]
|
||||
|
||||
4980. [bug] Named-checkconf failed to detect bad in-view targets.
|
||||
[GL #288]
|
||||
|
||||
4979. [placeholder]
|
||||
|
||||
4978. [test] Fix error handling and resolver configuration in the
|
||||
"rpz" system test. [GL #312]
|
||||
|
||||
4977. [func] When starting up, log the same details that
|
||||
would be reported by 'named -V'. [GL #247]
|
||||
|
||||
4976. [bug] Log the label with invalid prefix length correctly
|
||||
when loading RPZ zones. [GL #254]
|
||||
|
||||
4975. [bug] The server cookie computation for sha1 and sha256 did
|
||||
not match the method described in RFC 7873. [GL #356]
|
||||
|
||||
4974. [bug] Restore default rrset-order to random. [GL #336]
|
||||
|
||||
4973. [func] verifyzone() and the functions it uses were moved to
|
||||
libdns and refactored to prevent exit() from being
|
||||
called upon failure. A side effect of that is that
|
||||
dnssec-signzone and dnssec-verify now check for memory
|
||||
leaks upon shutdown. [GL #266]
|
||||
|
||||
4972. [func] Declare the 'rdata' argument for dns_rdata_tostruct()
|
||||
to be const. [GL #341]
|
||||
|
||||
4971. [bug] dnssec-signzone and dnssec-verify did not treat records
|
||||
below a DNAME as out-of-zone data. [GL #298]
|
||||
|
||||
4970. [func] Add QNAME minimization option to resolver. [GL #16]
|
||||
|
||||
4969. [cleanup] Refactor zone logging functions. [GL #269]
|
||||
|
||||
--- 9.13.1 released ---
|
||||
|
||||
4968. [bug] If glue records are signed, attempt to validate them.
|
||||
@@ -738,8 +869,8 @@
|
||||
|
||||
4760. [func] Add glue cache statistics counters. [RT #46028]
|
||||
|
||||
4759. [func] Add logging channel "trust-anchor-telementry" to
|
||||
record trust-anchor-telementry in incoming requests.
|
||||
4759. [func] Add logging channel "trust-anchor-telemetry" to
|
||||
record trust-anchor-telemetry in incoming requests.
|
||||
Both _ta-XXXX.<anchor>/NULL and EDNS KEY-TAG options
|
||||
are logged. [RT #46124]
|
||||
|
||||
@@ -808,10 +939,10 @@
|
||||
tests when running on terminals that support them.
|
||||
[RT #45977]
|
||||
|
||||
4744. [bug] Suppress trust-anchor-telementry queries if
|
||||
4744. [bug] Suppress trust-anchor-telemetry queries if
|
||||
validation is disabled. [RT #46131]
|
||||
|
||||
4743. [func] Exclude trust-anchor-telementry queries from
|
||||
4743. [func] Exclude trust-anchor-telemetry queries from
|
||||
synth-from-dnssec processing. [RT #46123]
|
||||
|
||||
4742. [func] Synthesis of responses from DNSSEC-verified records.
|
||||
|
||||
@@ -109,6 +109,11 @@ of changes from BIND 9.12 and earlier releases. New features include:
|
||||
* "Root key sentinel" support, enabling validating resolvers to indicate
|
||||
via a special query which trust anchors are configured for the root
|
||||
zone.
|
||||
* Secondary zones can now be configured as "mirror" zones; their
|
||||
contents are transferred in as with traditional slave zones, but are
|
||||
subject to DNSSEC validation and are not treated as authoritative data
|
||||
when answering. This makes it easier to configure a local copy of the
|
||||
root zone as described in RFC 7706.
|
||||
|
||||
In addition, cryptographic support has been modernized. BIND now uses the
|
||||
best available pseudo-random number generator for the platform on which
|
||||
@@ -118,11 +123,18 @@ supported.
|
||||
|
||||
Building BIND
|
||||
|
||||
BIND requires a UNIX or Linux system with an ANSI C compiler, basic POSIX
|
||||
support, and a 64-bit integer type. Successful builds have been observed
|
||||
on many versions of Linux and UNIX, including RedHat, Fedora, Debian,
|
||||
Ubuntu, SuSE, Slackware, FreeBSD, NetBSD, OpenBSD, Mac OS X, Solaris,
|
||||
HP-UX, AIX, SCO OpenServer, and OpenWRT.
|
||||
Minimally, BIND requires a UNIX or Linux system with an ANSI C compiler,
|
||||
basic POSIX support, and a 64-bit integer type. Successful builds have
|
||||
been observed on many versions of Linux and UNIX, including RedHat,
|
||||
Fedora, Debian, Ubuntu, SuSE, Slackware, FreeBSD, NetBSD, OpenBSD, Mac OS
|
||||
X, Solaris, HP-UX, AIX, SCO OpenServer, and OpenWRT.
|
||||
|
||||
BIND requires a cryptography provider library such as OpenSSL or a
|
||||
hardware service module supporting PKCS#11. On Linux, BIND requires the
|
||||
libcap library to set process privileges, though this requirement can be
|
||||
overridden by disabling capability support at compile time. See
|
||||
Compile-time options below for details on other libraries that may be
|
||||
required to support optional features.
|
||||
|
||||
BIND is also available for Windows 2008 and higher. See win32utils/
|
||||
readme1st.txt for details on building for Windows systems.
|
||||
@@ -193,11 +205,10 @@ smaller systems.
|
||||
For the server to support DNSSEC, you need to build it with crypto
|
||||
support. To use OpenSSL, you should have OpenSSL 1.0.2e or newer
|
||||
installed. If the OpenSSL library is installed in a nonstandard location,
|
||||
specify the prefix using "--with-openssl=<PREFIX>" on the configure
|
||||
command line. To use a PKCS#11 hardware service module for cryptographic
|
||||
specify the prefix using --with-openssl=<PREFIX> on the configure command
|
||||
line. To use a PKCS#11 hardware service module for cryptographic
|
||||
operations, specify the path to the PKCS#11 provider library using
|
||||
"--with-pkcs11=<PREFIX>", and configure BIND with
|
||||
"--enable-native-pkcs11".
|
||||
--with-pkcs11=<PREFIX>, and configure BIND with --enable-native-pkcs11.
|
||||
|
||||
To support the HTTP statistics channel, the server must be linked with at
|
||||
least one of the following: libxml2 http://xmlsoft.org or json-c https://
|
||||
@@ -210,17 +221,22 @@ specify the prefix using --with-zlib=/prefix.
|
||||
|
||||
To support storing configuration data for runtime-added zones in an LMDB
|
||||
database, the server must be linked with liblmdb. If this is installed in
|
||||
a nonstandard location, specify the prefix using "with-lmdb=/prefix".
|
||||
a nonstandard location, specify the prefix using with-lmdb=/prefix.
|
||||
|
||||
To support GeoIP location-based ACLs, the server must be linked with
|
||||
libGeoIP. This is not turned on by default; BIND must be configured with
|
||||
"--with-geoip". If the library is installed in a nonstandard location, use
|
||||
specify the prefix using "--with-geoip=/prefix".
|
||||
--with-geoip. If the library is installed in a nonstandard location,
|
||||
specify the prefix using --with-geoip=/prefix.
|
||||
|
||||
For DNSTAP packet logging, you must have installed libfstrm https://
|
||||
github.com/farsightsec/fstrm and libprotobuf-c https://
|
||||
developers.google.com/protocol-buffers, and BIND must be configured with
|
||||
"--enable-dnstap".
|
||||
--enable-dnstap.
|
||||
|
||||
On Linux, process capabilities are managed in user space using the libcap
|
||||
library, which can be installed on most Linux systems via the libcap-dev
|
||||
or libcap-devel module. Process capability support can also be disabled by
|
||||
configuring with --disable-linux-caps.
|
||||
|
||||
Portions of BIND that are written in Python, including dnssec-keymgr,
|
||||
dnssec-coverage, dnssec-checkds, and some of the system tests, require the
|
||||
|
||||
@@ -126,6 +126,11 @@ include:
|
||||
* Support for IDNA2008 when linking with `libidn2`.
|
||||
* "Root key sentinel" support, enabling validating resolvers to indicate
|
||||
via a special query which trust anchors are configured for the root zone.
|
||||
* Secondary zones can now be configured as "mirror" zones; their contents
|
||||
are transferred in as with traditional slave zones, but are subject to
|
||||
DNSSEC validation and are not treated as authoritative data when
|
||||
answering. This makes it easier to configure a local copy of the root
|
||||
zone as described in RFC 7706.
|
||||
|
||||
In addition, cryptographic support has been modernized. BIND now uses the
|
||||
best available pseudo-random number generator for the platform on which
|
||||
@@ -135,11 +140,18 @@ longer supported.
|
||||
|
||||
### <a name="build"/> Building BIND
|
||||
|
||||
BIND requires a UNIX or Linux system with an ANSI C compiler, basic POSIX
|
||||
support, and a 64-bit integer type. Successful builds have been observed on
|
||||
many versions of Linux and UNIX, including RedHat, Fedora, Debian, Ubuntu,
|
||||
SuSE, Slackware, FreeBSD, NetBSD, OpenBSD, Mac OS X, Solaris, HP-UX, AIX,
|
||||
SCO OpenServer, and OpenWRT.
|
||||
Minimally, BIND requires a UNIX or Linux system with an ANSI C compiler,
|
||||
basic POSIX support, and a 64-bit integer type. Successful builds have been
|
||||
observed on many versions of Linux and UNIX, including RedHat, Fedora,
|
||||
Debian, Ubuntu, SuSE, Slackware, FreeBSD, NetBSD, OpenBSD, Mac OS X,
|
||||
Solaris, HP-UX, AIX, SCO OpenServer, and OpenWRT.
|
||||
|
||||
BIND requires a cryptography provider library such as OpenSSL or a
|
||||
hardware service module supporting PKCS#11. On Linux, BIND requires
|
||||
the `libcap` library to set process privileges, though this requirement
|
||||
can be overridden by disabling capability support at compile time.
|
||||
See [Compile-time options](#opts) below for details on other libraries
|
||||
that may be required to support optional features.
|
||||
|
||||
BIND is also available for Windows 2008 and higher. See
|
||||
`win32utils/readme1st.txt` for details on building for Windows
|
||||
@@ -205,10 +217,10 @@ performance on smaller systems.
|
||||
For the server to support DNSSEC, you need to build it with crypto support.
|
||||
To use OpenSSL, you should have OpenSSL 1.0.2e or newer installed. If the
|
||||
OpenSSL library is installed in a nonstandard location, specify the prefix
|
||||
using "--with-openssl=<PREFIX>" on the configure command line. To use a
|
||||
using `--with-openssl=<PREFIX>` on the configure command line. To use a
|
||||
PKCS#11 hardware service module for cryptographic operations, specify the
|
||||
path to the PKCS#11 provider library using "--with-pkcs11=<PREFIX>", and
|
||||
configure BIND with "--enable-native-pkcs11".
|
||||
path to the PKCS#11 provider library using `--with-pkcs11=<PREFIX>`, and
|
||||
configure BIND with `--enable-native-pkcs11`.
|
||||
|
||||
To support the HTTP statistics channel, the server must be linked with at
|
||||
least one of the following: libxml2
|
||||
@@ -223,18 +235,23 @@ specify the prefix using `--with-zlib=/prefix`.
|
||||
|
||||
To support storing configuration data for runtime-added zones in an LMDB
|
||||
database, the server must be linked with liblmdb. If this is installed in a
|
||||
nonstandard location, specify the prefix using "with-lmdb=/prefix".
|
||||
nonstandard location, specify the prefix using `with-lmdb=/prefix`.
|
||||
|
||||
To support GeoIP location-based ACLs, the server must be linked with
|
||||
libGeoIP. This is not turned on by default; BIND must be configured with
|
||||
"--with-geoip". If the library is installed in a nonstandard location, use
|
||||
specify the prefix using "--with-geoip=/prefix".
|
||||
`--with-geoip`. If the library is installed in a nonstandard location,
|
||||
specify the prefix using `--with-geoip=/prefix`.
|
||||
|
||||
For DNSTAP packet logging, you must have installed libfstrm
|
||||
[https://github.com/farsightsec/fstrm](https://github.com/farsightsec/fstrm)
|
||||
and libprotobuf-c
|
||||
[https://developers.google.com/protocol-buffers](https://developers.google.com/protocol-buffers),
|
||||
and BIND must be configured with "--enable-dnstap".
|
||||
and BIND must be configured with `--enable-dnstap`.
|
||||
|
||||
On Linux, process capabilities are managed in user space using
|
||||
the `libcap` library, which can be installed on most Linux systems via
|
||||
the `libcap-dev` or `libcap-devel` module. Process capability support can
|
||||
also be disabled by configuring with `--disable-linux-caps`.
|
||||
|
||||
Portions of BIND that are written in Python, including
|
||||
`dnssec-keymgr`, `dnssec-coverage`, `dnssec-checkds`, and some of the
|
||||
|
||||
@@ -121,12 +121,6 @@ int sigwait(const unsigned int *set, int *sig);
|
||||
/** define if you have strerror in the C library. */
|
||||
#undef HAVE_STRERROR
|
||||
|
||||
/* Define if OpenSSL includes DSA support */
|
||||
#undef HAVE_OPENSSL_DSA
|
||||
|
||||
/* Define if you have getpassphrase in the C library. */
|
||||
#undef HAVE_GETPASSPHRASE
|
||||
|
||||
/* Define to the length type used by the socket API (socklen_t, size_t, int). */
|
||||
#undef ISC_SOCKADDR_LEN_T
|
||||
|
||||
|
||||
Vendored
+294
-15
@@ -1,17 +1,296 @@
|
||||
sinclude(libtool.m4/libtool.m4)dnl
|
||||
sinclude(libtool.m4/ltoptions.m4)dnl
|
||||
sinclude(libtool.m4/ltsugar.m4)dnl
|
||||
sinclude(libtool.m4/ltversion.m4)dnl
|
||||
sinclude(libtool.m4/lt~obsolete.m4)dnl
|
||||
# generated automatically by aclocal 1.15.1 -*- Autoconf -*-
|
||||
|
||||
m4_divert_text(HELP_CANON, [[
|
||||
NOTE: If PREFIX is not set, then the default values for --sysconfdir
|
||||
and --localstatedir are /etc and /var, respectively.]])
|
||||
m4_divert_text(HELP_END, [[
|
||||
Professional support for BIND is provided by Internet Systems Consortium,
|
||||
Inc. Information about paid support and training options is available at
|
||||
https://www.isc.org/support.
|
||||
# Copyright (C) 1996-2017 Free Software Foundation, Inc.
|
||||
|
||||
Help can also often be found on the BIND Users mailing list
|
||||
(https://lists.isc.org/mailman/listinfo/bind-users) or in the #bind
|
||||
channel of the Freenode IRC service.]])
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
|
||||
dnl pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
|
||||
dnl serial 11 (pkg-config-0.29.1)
|
||||
dnl
|
||||
dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
|
||||
dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
|
||||
dnl
|
||||
dnl This program is free software; you can redistribute it and/or modify
|
||||
dnl it under the terms of the GNU General Public License as published by
|
||||
dnl the Free Software Foundation; either version 2 of the License, or
|
||||
dnl (at your option) any later version.
|
||||
dnl
|
||||
dnl This program is distributed in the hope that it will be useful, but
|
||||
dnl WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
dnl General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License
|
||||
dnl along with this program; if not, write to the Free Software
|
||||
dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||
dnl 02111-1307, USA.
|
||||
dnl
|
||||
dnl As a special exception to the GNU General Public License, if you
|
||||
dnl distribute this file as part of a program that contains a
|
||||
dnl configuration script generated by Autoconf, you may include it under
|
||||
dnl the same distribution terms that you use for the rest of that
|
||||
dnl program.
|
||||
|
||||
dnl PKG_PREREQ(MIN-VERSION)
|
||||
dnl -----------------------
|
||||
dnl Since: 0.29
|
||||
dnl
|
||||
dnl Verify that the version of the pkg-config macros are at least
|
||||
dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
|
||||
dnl installed version of pkg-config, this checks the developer's version
|
||||
dnl of pkg.m4 when generating configure.
|
||||
dnl
|
||||
dnl To ensure that this macro is defined, also add:
|
||||
dnl m4_ifndef([PKG_PREREQ],
|
||||
dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
|
||||
dnl
|
||||
dnl See the "Since" comment for each macro you use to see what version
|
||||
dnl of the macros you require.
|
||||
m4_defun([PKG_PREREQ],
|
||||
[m4_define([PKG_MACROS_VERSION], [0.29.1])
|
||||
m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
|
||||
[m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
|
||||
])dnl PKG_PREREQ
|
||||
|
||||
dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
|
||||
dnl ----------------------------------
|
||||
dnl Since: 0.16
|
||||
dnl
|
||||
dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
|
||||
dnl first found in the path. Checks that the version of pkg-config found
|
||||
dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
|
||||
dnl used since that's the first version where most current features of
|
||||
dnl pkg-config existed.
|
||||
AC_DEFUN([PKG_PROG_PKG_CONFIG],
|
||||
[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
|
||||
m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
|
||||
m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
|
||||
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
|
||||
AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
|
||||
AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
|
||||
|
||||
if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
|
||||
AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
|
||||
fi
|
||||
if test -n "$PKG_CONFIG"; then
|
||||
_pkg_min_version=m4_default([$1], [0.9.0])
|
||||
AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
|
||||
if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
PKG_CONFIG=""
|
||||
fi
|
||||
fi[]dnl
|
||||
])dnl PKG_PROG_PKG_CONFIG
|
||||
|
||||
dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
|
||||
dnl -------------------------------------------------------------------
|
||||
dnl Since: 0.18
|
||||
dnl
|
||||
dnl Check to see whether a particular set of modules exists. Similar to
|
||||
dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
|
||||
dnl
|
||||
dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
|
||||
dnl only at the first occurence in configure.ac, so if the first place
|
||||
dnl it's called might be skipped (such as if it is within an "if", you
|
||||
dnl have to call PKG_CHECK_EXISTS manually
|
||||
AC_DEFUN([PKG_CHECK_EXISTS],
|
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
|
||||
if test -n "$PKG_CONFIG" && \
|
||||
AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
|
||||
m4_default([$2], [:])
|
||||
m4_ifvaln([$3], [else
|
||||
$3])dnl
|
||||
fi])
|
||||
|
||||
dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
|
||||
dnl ---------------------------------------------
|
||||
dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
|
||||
dnl pkg_failed based on the result.
|
||||
m4_define([_PKG_CONFIG],
|
||||
[if test -n "$$1"; then
|
||||
pkg_cv_[]$1="$$1"
|
||||
elif test -n "$PKG_CONFIG"; then
|
||||
PKG_CHECK_EXISTS([$3],
|
||||
[pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
|
||||
test "x$?" != "x0" && pkg_failed=yes ],
|
||||
[pkg_failed=yes])
|
||||
else
|
||||
pkg_failed=untried
|
||||
fi[]dnl
|
||||
])dnl _PKG_CONFIG
|
||||
|
||||
dnl _PKG_SHORT_ERRORS_SUPPORTED
|
||||
dnl ---------------------------
|
||||
dnl Internal check to see if pkg-config supports short errors.
|
||||
AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
|
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
|
||||
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
|
||||
_pkg_short_errors_supported=yes
|
||||
else
|
||||
_pkg_short_errors_supported=no
|
||||
fi[]dnl
|
||||
])dnl _PKG_SHORT_ERRORS_SUPPORTED
|
||||
|
||||
|
||||
dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
|
||||
dnl [ACTION-IF-NOT-FOUND])
|
||||
dnl --------------------------------------------------------------
|
||||
dnl Since: 0.4.0
|
||||
dnl
|
||||
dnl Note that if there is a possibility the first call to
|
||||
dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
|
||||
dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
|
||||
AC_DEFUN([PKG_CHECK_MODULES],
|
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
|
||||
AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
|
||||
AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
|
||||
|
||||
pkg_failed=no
|
||||
AC_MSG_CHECKING([for $1])
|
||||
|
||||
_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
|
||||
_PKG_CONFIG([$1][_LIBS], [libs], [$2])
|
||||
|
||||
m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
|
||||
and $1[]_LIBS to avoid the need to call pkg-config.
|
||||
See the pkg-config man page for more details.])
|
||||
|
||||
if test $pkg_failed = yes; then
|
||||
AC_MSG_RESULT([no])
|
||||
_PKG_SHORT_ERRORS_SUPPORTED
|
||||
if test $_pkg_short_errors_supported = yes; then
|
||||
$1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
|
||||
else
|
||||
$1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
|
||||
fi
|
||||
# Put the nasty error message in config.log where it belongs
|
||||
echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
|
||||
|
||||
m4_default([$4], [AC_MSG_ERROR(
|
||||
[Package requirements ($2) were not met:
|
||||
|
||||
$$1_PKG_ERRORS
|
||||
|
||||
Consider adjusting the PKG_CONFIG_PATH environment variable if you
|
||||
installed software in a non-standard prefix.
|
||||
|
||||
_PKG_TEXT])[]dnl
|
||||
])
|
||||
elif test $pkg_failed = untried; then
|
||||
AC_MSG_RESULT([no])
|
||||
m4_default([$4], [AC_MSG_FAILURE(
|
||||
[The pkg-config script could not be found or is too old. Make sure it
|
||||
is in your PATH or set the PKG_CONFIG environment variable to the full
|
||||
path to pkg-config.
|
||||
|
||||
_PKG_TEXT
|
||||
|
||||
To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
|
||||
])
|
||||
else
|
||||
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
|
||||
$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
|
||||
AC_MSG_RESULT([yes])
|
||||
$3
|
||||
fi[]dnl
|
||||
])dnl PKG_CHECK_MODULES
|
||||
|
||||
|
||||
dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
|
||||
dnl [ACTION-IF-NOT-FOUND])
|
||||
dnl ---------------------------------------------------------------------
|
||||
dnl Since: 0.29
|
||||
dnl
|
||||
dnl Checks for existence of MODULES and gathers its build flags with
|
||||
dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
|
||||
dnl and VARIABLE-PREFIX_LIBS from --libs.
|
||||
dnl
|
||||
dnl Note that if there is a possibility the first call to
|
||||
dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
|
||||
dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
|
||||
dnl configure.ac.
|
||||
AC_DEFUN([PKG_CHECK_MODULES_STATIC],
|
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
|
||||
_save_PKG_CONFIG=$PKG_CONFIG
|
||||
PKG_CONFIG="$PKG_CONFIG --static"
|
||||
PKG_CHECK_MODULES($@)
|
||||
PKG_CONFIG=$_save_PKG_CONFIG[]dnl
|
||||
])dnl PKG_CHECK_MODULES_STATIC
|
||||
|
||||
|
||||
dnl PKG_INSTALLDIR([DIRECTORY])
|
||||
dnl -------------------------
|
||||
dnl Since: 0.27
|
||||
dnl
|
||||
dnl Substitutes the variable pkgconfigdir as the location where a module
|
||||
dnl should install pkg-config .pc files. By default the directory is
|
||||
dnl $libdir/pkgconfig, but the default can be changed by passing
|
||||
dnl DIRECTORY. The user can override through the --with-pkgconfigdir
|
||||
dnl parameter.
|
||||
AC_DEFUN([PKG_INSTALLDIR],
|
||||
[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
|
||||
m4_pushdef([pkg_description],
|
||||
[pkg-config installation directory @<:@]pkg_default[@:>@])
|
||||
AC_ARG_WITH([pkgconfigdir],
|
||||
[AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
|
||||
[with_pkgconfigdir=]pkg_default)
|
||||
AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
|
||||
m4_popdef([pkg_default])
|
||||
m4_popdef([pkg_description])
|
||||
])dnl PKG_INSTALLDIR
|
||||
|
||||
|
||||
dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
|
||||
dnl --------------------------------
|
||||
dnl Since: 0.27
|
||||
dnl
|
||||
dnl Substitutes the variable noarch_pkgconfigdir as the location where a
|
||||
dnl module should install arch-independent pkg-config .pc files. By
|
||||
dnl default the directory is $datadir/pkgconfig, but the default can be
|
||||
dnl changed by passing DIRECTORY. The user can override through the
|
||||
dnl --with-noarch-pkgconfigdir parameter.
|
||||
AC_DEFUN([PKG_NOARCH_INSTALLDIR],
|
||||
[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
|
||||
m4_pushdef([pkg_description],
|
||||
[pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
|
||||
AC_ARG_WITH([noarch-pkgconfigdir],
|
||||
[AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
|
||||
[with_noarch_pkgconfigdir=]pkg_default)
|
||||
AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
|
||||
m4_popdef([pkg_default])
|
||||
m4_popdef([pkg_description])
|
||||
])dnl PKG_NOARCH_INSTALLDIR
|
||||
|
||||
|
||||
dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
|
||||
dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
|
||||
dnl -------------------------------------------
|
||||
dnl Since: 0.28
|
||||
dnl
|
||||
dnl Retrieves the value of the pkg-config variable for the given module.
|
||||
AC_DEFUN([PKG_CHECK_VAR],
|
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
|
||||
AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
|
||||
|
||||
_PKG_CONFIG([$1], [variable="][$3]["], [$2])
|
||||
AS_VAR_COPY([$1], [pkg_cv_][$1])
|
||||
|
||||
AS_VAR_IF([$1], [""], [$5], [$4])dnl
|
||||
])dnl PKG_CHECK_VAR
|
||||
|
||||
m4_include([m4/ax_check_openssl.m4])
|
||||
m4_include([m4/libtool.m4])
|
||||
m4_include([m4/ltoptions.m4])
|
||||
m4_include([m4/ltsugar.m4])
|
||||
m4_include([m4/ltversion.m4])
|
||||
m4_include([m4/lt~obsolete.m4])
|
||||
|
||||
+1
-1
@@ -10,4 +10,4 @@
|
||||
# information regarding copyright ownership.
|
||||
|
||||
# Run this script after modifying configure.in to generate configure
|
||||
autoreconf -i
|
||||
autoreconf -f -i
|
||||
|
||||
@@ -16,15 +16,15 @@ VERSION=@BIND9_VERSION@
|
||||
@BIND9_MAKE_INCLUDES@
|
||||
|
||||
CINCLUDES = ${NS_INCLUDES} ${BIND9_INCLUDES} ${DNS_INCLUDES} ${ISCCFG_INCLUDES} \
|
||||
${ISC_INCLUDES} @DST_OPENSSL_INC@
|
||||
${ISC_INCLUDES} @OPENSSL_INCLUDES@
|
||||
|
||||
CDEFINES = -DNAMED_CONFFILE=\"${sysconfdir}/named.conf\"
|
||||
CWARNINGS =
|
||||
|
||||
DNSLIBS = ../../lib/dns/libdns.@A@ @DNS_CRYPTO_LIBS@
|
||||
ISCCFGLIBS = ../../lib/isccfg/libisccfg.@A@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @OPENSSL_LIBS@
|
||||
BIND9LIBS = ../../lib/bind9/libbind9.@A@
|
||||
NSLIBS = ../../lib/ns/libns.@A@
|
||||
|
||||
|
||||
+47
-45
@@ -14,7 +14,9 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stdio.h>
|
||||
#include <inttypes.h>
|
||||
|
||||
#ifdef _WIN32
|
||||
#include <Winsock2.h>
|
||||
@@ -88,15 +90,15 @@ static const char *dbtype[] = { "rbt" };
|
||||
|
||||
int debug = 0;
|
||||
const char *journal = NULL;
|
||||
isc_boolean_t nomerge = ISC_TRUE;
|
||||
bool nomerge = true;
|
||||
#if CHECK_LOCAL
|
||||
isc_boolean_t docheckmx = ISC_TRUE;
|
||||
isc_boolean_t dochecksrv = ISC_TRUE;
|
||||
isc_boolean_t docheckns = ISC_TRUE;
|
||||
bool docheckmx = true;
|
||||
bool dochecksrv = true;
|
||||
bool docheckns = true;
|
||||
#else
|
||||
isc_boolean_t docheckmx = ISC_FALSE;
|
||||
isc_boolean_t dochecksrv = ISC_FALSE;
|
||||
isc_boolean_t docheckns = ISC_FALSE;
|
||||
bool docheckmx = false;
|
||||
bool dochecksrv = false;
|
||||
bool docheckns = false;
|
||||
#endif
|
||||
dns_zoneopt_t zone_options = DNS_ZONEOPT_CHECKNS |
|
||||
DNS_ZONEOPT_CHECKMX |
|
||||
@@ -142,7 +144,7 @@ add(char *key, int value) {
|
||||
|
||||
if (symtab == NULL) {
|
||||
result = isc_symtab_create(sym_mctx, 100, freekey, sym_mctx,
|
||||
ISC_FALSE, &symtab);
|
||||
false, &symtab);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return;
|
||||
}
|
||||
@@ -158,20 +160,20 @@ add(char *key, int value) {
|
||||
isc_mem_free(sym_mctx, key);
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
logged(char *key, int value) {
|
||||
isc_result_t result;
|
||||
|
||||
if (symtab == NULL)
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
|
||||
result = isc_symtab_lookup(symtab, key, value, NULL);
|
||||
if (result == ISC_R_SUCCESS)
|
||||
return (ISC_TRUE);
|
||||
return (ISC_FALSE);
|
||||
return (true);
|
||||
return (false);
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
dns_rdataset_t *a, dns_rdataset_t *aaaa)
|
||||
{
|
||||
@@ -182,8 +184,8 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
char namebuf[DNS_NAME_FORMATSIZE + 1];
|
||||
char ownerbuf[DNS_NAME_FORMATSIZE];
|
||||
char addrbuf[sizeof("xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:123.123.123.123")];
|
||||
isc_boolean_t answer = ISC_TRUE;
|
||||
isc_boolean_t match;
|
||||
bool answer = true;
|
||||
bool match;
|
||||
const char *type;
|
||||
void *ptr = NULL;
|
||||
int result;
|
||||
@@ -232,7 +234,7 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
ownerbuf, namebuf,
|
||||
cur->ai_canonname);
|
||||
/* XXX950 make fatal for 9.5.0 */
|
||||
/* answer = ISC_FALSE; */
|
||||
/* answer = false; */
|
||||
add(namebuf, ERR_IS_CNAME);
|
||||
}
|
||||
break;
|
||||
@@ -248,7 +250,7 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
add(namebuf, ERR_NO_ADDRESSES);
|
||||
}
|
||||
/* XXX950 make fatal for 9.5.0 */
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
|
||||
default:
|
||||
if (!logged(namebuf, ERR_LOOKUP_FAILURE)) {
|
||||
@@ -257,7 +259,7 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
namebuf, gai_strerror(result));
|
||||
add(namebuf, ERR_LOOKUP_FAILURE);
|
||||
}
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -268,13 +270,13 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
result = dns_rdataset_first(a);
|
||||
while (result == ISC_R_SUCCESS) {
|
||||
dns_rdataset_current(a, &rdata);
|
||||
match = ISC_FALSE;
|
||||
match = false;
|
||||
for (cur = ai; cur != NULL; cur = cur->ai_next) {
|
||||
if (cur->ai_family != AF_INET)
|
||||
continue;
|
||||
ptr = &((struct sockaddr_in *)(cur->ai_addr))->sin_addr;
|
||||
if (memcmp(ptr, rdata.data, rdata.length) == 0) {
|
||||
match = ISC_TRUE;
|
||||
match = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -286,7 +288,7 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
addrbuf, sizeof(addrbuf)));
|
||||
add(namebuf, ERR_EXTRA_A);
|
||||
/* XXX950 make fatal for 9.5.0 */
|
||||
/* answer = ISC_FALSE; */
|
||||
/* answer = false; */
|
||||
}
|
||||
dns_rdata_reset(&rdata);
|
||||
result = dns_rdataset_next(a);
|
||||
@@ -298,13 +300,13 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
result = dns_rdataset_first(aaaa);
|
||||
while (result == ISC_R_SUCCESS) {
|
||||
dns_rdataset_current(aaaa, &rdata);
|
||||
match = ISC_FALSE;
|
||||
match = false;
|
||||
for (cur = ai; cur != NULL; cur = cur->ai_next) {
|
||||
if (cur->ai_family != AF_INET6)
|
||||
continue;
|
||||
ptr = &((struct sockaddr_in6 *)(cur->ai_addr))->sin6_addr;
|
||||
if (memcmp(ptr, rdata.data, rdata.length) == 0) {
|
||||
match = ISC_TRUE;
|
||||
match = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -316,7 +318,7 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
addrbuf, sizeof(addrbuf)));
|
||||
add(namebuf, ERR_EXTRA_AAAA);
|
||||
/* XXX950 make fatal for 9.5.0. */
|
||||
/* answer = ISC_FALSE; */
|
||||
/* answer = false; */
|
||||
}
|
||||
dns_rdata_reset(&rdata);
|
||||
result = dns_rdataset_next(aaaa);
|
||||
@@ -327,7 +329,7 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
* Check that all addresses appear in the glue.
|
||||
*/
|
||||
if (!logged(namebuf, ERR_MISSING_GLUE)) {
|
||||
isc_boolean_t missing_glue = ISC_FALSE;
|
||||
bool missing_glue = false;
|
||||
for (cur = ai; cur != NULL; cur = cur->ai_next) {
|
||||
switch (cur->ai_family) {
|
||||
case AF_INET:
|
||||
@@ -343,7 +345,7 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
default:
|
||||
continue;
|
||||
}
|
||||
match = ISC_FALSE;
|
||||
match = false;
|
||||
if (dns_rdataset_isassociated(rdataset))
|
||||
result = dns_rdataset_first(rdataset);
|
||||
else
|
||||
@@ -351,7 +353,7 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
while (result == ISC_R_SUCCESS && !match) {
|
||||
dns_rdataset_current(rdataset, &rdata);
|
||||
if (memcmp(ptr, rdata.data, rdata.length) == 0)
|
||||
match = ISC_TRUE;
|
||||
match = true;
|
||||
dns_rdata_reset(&rdata);
|
||||
result = dns_rdataset_next(rdataset);
|
||||
}
|
||||
@@ -362,8 +364,8 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
inet_ntop(cur->ai_family, ptr,
|
||||
addrbuf, sizeof(addrbuf)));
|
||||
/* XXX950 make fatal for 9.5.0. */
|
||||
/* answer = ISC_FALSE; */
|
||||
missing_glue = ISC_TRUE;
|
||||
/* answer = false; */
|
||||
missing_glue = true;
|
||||
}
|
||||
}
|
||||
if (missing_glue)
|
||||
@@ -372,11 +374,11 @@ checkns(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner,
|
||||
freeaddrinfo(ai);
|
||||
return (answer);
|
||||
#else
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
#endif
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
checkmx(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner) {
|
||||
#ifdef USE_GETADDRINFO
|
||||
struct addrinfo hints, *ai, *cur;
|
||||
@@ -384,7 +386,7 @@ checkmx(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner) {
|
||||
char ownerbuf[DNS_NAME_FORMATSIZE];
|
||||
int result;
|
||||
int level = ISC_LOG_ERROR;
|
||||
isc_boolean_t answer = ISC_TRUE;
|
||||
bool answer = true;
|
||||
|
||||
memset(&hints, 0, sizeof(hints));
|
||||
hints.ai_flags = AI_CANONNAME;
|
||||
@@ -428,7 +430,7 @@ checkmx(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner) {
|
||||
add(namebuf, ERR_IS_MXCNAME);
|
||||
}
|
||||
if (level == ISC_LOG_ERROR)
|
||||
answer = ISC_FALSE;
|
||||
answer = false;
|
||||
}
|
||||
}
|
||||
freeaddrinfo(ai);
|
||||
@@ -446,7 +448,7 @@ checkmx(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner) {
|
||||
add(namebuf, ERR_NO_ADDRESSES);
|
||||
}
|
||||
/* XXX950 make fatal for 9.5.0. */
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
|
||||
default:
|
||||
if (!logged(namebuf, ERR_LOOKUP_FAILURE)) {
|
||||
@@ -455,14 +457,14 @@ checkmx(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner) {
|
||||
namebuf, gai_strerror(result));
|
||||
add(namebuf, ERR_LOOKUP_FAILURE);
|
||||
}
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
#else
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
#endif
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
checksrv(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner) {
|
||||
#ifdef USE_GETADDRINFO
|
||||
struct addrinfo hints, *ai, *cur;
|
||||
@@ -470,7 +472,7 @@ checksrv(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner) {
|
||||
char ownerbuf[DNS_NAME_FORMATSIZE];
|
||||
int result;
|
||||
int level = ISC_LOG_ERROR;
|
||||
isc_boolean_t answer = ISC_TRUE;
|
||||
bool answer = true;
|
||||
|
||||
memset(&hints, 0, sizeof(hints));
|
||||
hints.ai_flags = AI_CANONNAME;
|
||||
@@ -513,7 +515,7 @@ checksrv(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner) {
|
||||
add(namebuf, ERR_IS_SRVCNAME);
|
||||
}
|
||||
if (level == ISC_LOG_ERROR)
|
||||
answer = ISC_FALSE;
|
||||
answer = false;
|
||||
}
|
||||
}
|
||||
freeaddrinfo(ai);
|
||||
@@ -531,7 +533,7 @@ checksrv(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner) {
|
||||
add(namebuf, ERR_NO_ADDRESSES);
|
||||
}
|
||||
/* XXX950 make fatal for 9.5.0. */
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
|
||||
default:
|
||||
if (!logged(namebuf, ERR_LOOKUP_FAILURE)) {
|
||||
@@ -540,10 +542,10 @@ checksrv(dns_zone_t *zone, const dns_name_t *name, const dns_name_t *owner) {
|
||||
namebuf, gai_strerror(result));
|
||||
add(namebuf, ERR_LOOKUP_FAILURE);
|
||||
}
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
#else
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -650,7 +652,7 @@ check_ttls(dns_zone_t *zone, dns_ttl_t maxttl) {
|
||||
if (dbiter != NULL)
|
||||
dns_dbiterator_destroy(&dbiter);
|
||||
if (version != NULL)
|
||||
dns_db_closeversion(db, &version, ISC_FALSE);
|
||||
dns_db_closeversion(db, &version, false);
|
||||
if (db != NULL)
|
||||
dns_db_detach(&db);
|
||||
|
||||
@@ -697,7 +699,7 @@ load_zone(isc_mem_t *mctx, const char *zonename, const char *filename,
|
||||
CHECK(dns_rdataclass_fromtext(&rdclass, ®ion));
|
||||
|
||||
dns_zone_setclass(zone, rdclass);
|
||||
dns_zone_setoption(zone, zone_options, ISC_TRUE);
|
||||
dns_zone_setoption(zone, zone_options, true);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_NOMERGE, nomerge);
|
||||
|
||||
dns_zone_setmaxttl(zone, maxttl);
|
||||
@@ -734,7 +736,7 @@ load_zone(isc_mem_t *mctx, const char *zonename, const char *filename,
|
||||
isc_result_t
|
||||
dump_zone(const char *zonename, dns_zone_t *zone, const char *filename,
|
||||
dns_masterformat_t fileformat, const dns_master_style_t *style,
|
||||
const isc_uint32_t rawversion)
|
||||
const uint32_t rawversion)
|
||||
{
|
||||
isc_result_t result;
|
||||
FILE *output = stdout;
|
||||
|
||||
@@ -15,6 +15,9 @@
|
||||
|
||||
/*! \file */
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isc/lang.h>
|
||||
#include <isc/stdio.h>
|
||||
#include <isc/types.h>
|
||||
@@ -36,7 +39,7 @@ load_zone(isc_mem_t *mctx, const char *zonename, const char *filename,
|
||||
isc_result_t
|
||||
dump_zone(const char *zonename, dns_zone_t *zone, const char *filename,
|
||||
dns_masterformat_t fileformat, const dns_master_style_t *style,
|
||||
const isc_uint32_t rawversion);
|
||||
const uint32_t rawversion);
|
||||
|
||||
#ifdef _WIN32
|
||||
void InitSockets(void);
|
||||
@@ -45,10 +48,10 @@ void DestroySockets(void);
|
||||
|
||||
extern int debug;
|
||||
extern const char *journal;
|
||||
extern isc_boolean_t nomerge;
|
||||
extern isc_boolean_t docheckmx;
|
||||
extern isc_boolean_t docheckns;
|
||||
extern isc_boolean_t dochecksrv;
|
||||
extern bool nomerge;
|
||||
extern bool docheckmx;
|
||||
extern bool docheckns;
|
||||
extern bool dochecksrv;
|
||||
extern dns_zoneopt_t zone_options;
|
||||
|
||||
ISC_LANG_ENDDECLS
|
||||
|
||||
+23
-22
@@ -15,6 +15,7 @@
|
||||
#include <config.h>
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
|
||||
@@ -91,18 +92,18 @@ directory_callback(const char *clausename, const cfg_obj_t *obj, void *arg) {
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
get_maps(const cfg_obj_t **maps, const char *name, const cfg_obj_t **obj) {
|
||||
int i;
|
||||
for (i = 0;; i++) {
|
||||
if (maps[i] == NULL)
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
if (cfg_map_get(maps[i], name, obj) == ISC_R_SUCCESS)
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
get_checknames(const cfg_obj_t **maps, const cfg_obj_t **obj) {
|
||||
const cfg_listelt_t *element;
|
||||
const cfg_obj_t *checknames;
|
||||
@@ -113,14 +114,14 @@ get_checknames(const cfg_obj_t **maps, const cfg_obj_t **obj) {
|
||||
|
||||
for (i = 0;; i++) {
|
||||
if (maps[i] == NULL)
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
checknames = NULL;
|
||||
result = cfg_map_get(maps[i], "check-names", &checknames);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
continue;
|
||||
if (checknames != NULL && !cfg_obj_islist(checknames)) {
|
||||
*obj = checknames;
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
for (element = cfg_list_first(checknames);
|
||||
element != NULL;
|
||||
@@ -135,7 +136,7 @@ get_checknames(const cfg_obj_t **maps, const cfg_obj_t **obj) {
|
||||
continue;
|
||||
}
|
||||
*obj = cfg_tuple_get(value, "mode");
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -168,7 +169,7 @@ configure_hint(const char *zfile, const char *zclass, isc_mem_t *mctx) {
|
||||
static isc_result_t
|
||||
configure_zone(const char *vclass, const char *view,
|
||||
const cfg_obj_t *zconfig, const cfg_obj_t *vconfig,
|
||||
const cfg_obj_t *config, isc_mem_t *mctx, isc_boolean_t list)
|
||||
const cfg_obj_t *config, isc_mem_t *mctx, bool list)
|
||||
{
|
||||
int i = 0;
|
||||
isc_result_t result;
|
||||
@@ -420,7 +421,7 @@ configure_zone(const char *vclass, const char *view,
|
||||
/*% configure a view */
|
||||
static isc_result_t
|
||||
configure_view(const char *vclass, const char *view, const cfg_obj_t *config,
|
||||
const cfg_obj_t *vconfig, isc_mem_t *mctx, isc_boolean_t list)
|
||||
const cfg_obj_t *vconfig, isc_mem_t *mctx, bool list)
|
||||
{
|
||||
const cfg_listelt_t *element;
|
||||
const cfg_obj_t *voptions;
|
||||
@@ -469,7 +470,7 @@ config_getclass(const cfg_obj_t *classobj, dns_rdataclass_t defclass,
|
||||
/*% load zones from the configuration */
|
||||
static isc_result_t
|
||||
load_zones_fromconfig(const cfg_obj_t *config, isc_mem_t *mctx,
|
||||
isc_boolean_t list_zones)
|
||||
bool list_zones)
|
||||
{
|
||||
const cfg_listelt_t *element;
|
||||
const cfg_obj_t *views;
|
||||
@@ -537,12 +538,12 @@ main(int argc, char **argv) {
|
||||
isc_mem_t *mctx = NULL;
|
||||
isc_result_t result;
|
||||
int exit_status = 0;
|
||||
isc_boolean_t load_zones = ISC_FALSE;
|
||||
isc_boolean_t list_zones = ISC_FALSE;
|
||||
isc_boolean_t print = ISC_FALSE;
|
||||
bool load_zones = false;
|
||||
bool list_zones = false;
|
||||
bool print = false;
|
||||
unsigned int flags = 0;
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
/*
|
||||
* Process memory debugging argument first.
|
||||
@@ -566,7 +567,7 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
isc_commandline_reset = ISC_TRUE;
|
||||
isc_commandline_reset = true;
|
||||
|
||||
RUNTIME_CHECK(isc_mem_create(0, 0, &mctx) == ISC_R_SUCCESS);
|
||||
|
||||
@@ -577,11 +578,11 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
|
||||
case 'j':
|
||||
nomerge = ISC_FALSE;
|
||||
nomerge = false;
|
||||
break;
|
||||
|
||||
case 'l':
|
||||
list_zones = ISC_TRUE;
|
||||
list_zones = true;
|
||||
break;
|
||||
|
||||
case 'm':
|
||||
@@ -597,7 +598,7 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
|
||||
case 'p':
|
||||
print = ISC_TRUE;
|
||||
print = true;
|
||||
break;
|
||||
|
||||
case 'v':
|
||||
@@ -609,10 +610,10 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
|
||||
case 'z':
|
||||
load_zones = ISC_TRUE;
|
||||
docheckmx = ISC_FALSE;
|
||||
docheckns = ISC_FALSE;
|
||||
dochecksrv = ISC_FALSE;
|
||||
load_zones = true;
|
||||
docheckmx = false;
|
||||
docheckns = false;
|
||||
dochecksrv = false;
|
||||
break;
|
||||
|
||||
case '?':
|
||||
|
||||
+25
-23
@@ -14,7 +14,9 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <inttypes.h>
|
||||
|
||||
#include <isc/app.h>
|
||||
#include <isc/commandline.h>
|
||||
@@ -106,10 +108,10 @@ main(int argc, char **argv) {
|
||||
dns_masterformat_t inputformat = dns_masterformat_text;
|
||||
dns_masterformat_t outputformat = dns_masterformat_text;
|
||||
dns_masterrawheader_t header;
|
||||
isc_uint32_t rawversion = 1, serialnum = 0;
|
||||
uint32_t rawversion = 1, serialnum = 0;
|
||||
dns_ttl_t maxttl = 0;
|
||||
isc_boolean_t snset = ISC_FALSE;
|
||||
isc_boolean_t logdump = ISC_FALSE;
|
||||
bool snset = false;
|
||||
bool logdump = false;
|
||||
FILE *errout = stdout;
|
||||
char *endp;
|
||||
|
||||
@@ -159,7 +161,7 @@ main(int argc, char **argv) {
|
||||
|
||||
#define ARGCMP(X) (strcmp(isc_commandline_argument, X) == 0)
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
while ((c = isc_commandline_parse(argc, argv,
|
||||
"c:df:hi:jJ:k:L:l:m:n:qr:s:t:o:vw:DF:M:S:T:W:"))
|
||||
@@ -177,33 +179,33 @@ main(int argc, char **argv) {
|
||||
if (ARGCMP("full")) {
|
||||
zone_options |= DNS_ZONEOPT_CHECKINTEGRITY |
|
||||
DNS_ZONEOPT_CHECKSIBLING;
|
||||
docheckmx = ISC_TRUE;
|
||||
docheckns = ISC_TRUE;
|
||||
dochecksrv = ISC_TRUE;
|
||||
docheckmx = true;
|
||||
docheckns = true;
|
||||
dochecksrv = true;
|
||||
} else if (ARGCMP("full-sibling")) {
|
||||
zone_options |= DNS_ZONEOPT_CHECKINTEGRITY;
|
||||
zone_options &= ~DNS_ZONEOPT_CHECKSIBLING;
|
||||
docheckmx = ISC_TRUE;
|
||||
docheckns = ISC_TRUE;
|
||||
dochecksrv = ISC_TRUE;
|
||||
docheckmx = true;
|
||||
docheckns = true;
|
||||
dochecksrv = true;
|
||||
} else if (ARGCMP("local")) {
|
||||
zone_options |= DNS_ZONEOPT_CHECKINTEGRITY;
|
||||
zone_options |= DNS_ZONEOPT_CHECKSIBLING;
|
||||
docheckmx = ISC_FALSE;
|
||||
docheckns = ISC_FALSE;
|
||||
dochecksrv = ISC_FALSE;
|
||||
docheckmx = false;
|
||||
docheckns = false;
|
||||
dochecksrv = false;
|
||||
} else if (ARGCMP("local-sibling")) {
|
||||
zone_options |= DNS_ZONEOPT_CHECKINTEGRITY;
|
||||
zone_options &= ~DNS_ZONEOPT_CHECKSIBLING;
|
||||
docheckmx = ISC_FALSE;
|
||||
docheckns = ISC_FALSE;
|
||||
dochecksrv = ISC_FALSE;
|
||||
docheckmx = false;
|
||||
docheckns = false;
|
||||
dochecksrv = false;
|
||||
} else if (ARGCMP("none")) {
|
||||
zone_options &= ~DNS_ZONEOPT_CHECKINTEGRITY;
|
||||
zone_options &= ~DNS_ZONEOPT_CHECKSIBLING;
|
||||
docheckmx = ISC_FALSE;
|
||||
docheckns = ISC_FALSE;
|
||||
dochecksrv = ISC_FALSE;
|
||||
docheckmx = false;
|
||||
docheckns = false;
|
||||
dochecksrv = false;
|
||||
} else {
|
||||
fprintf(stderr, "invalid argument to -i: %s\n",
|
||||
isc_commandline_argument);
|
||||
@@ -220,12 +222,12 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
|
||||
case 'j':
|
||||
nomerge = ISC_FALSE;
|
||||
nomerge = false;
|
||||
break;
|
||||
|
||||
case 'J':
|
||||
journal = isc_commandline_argument;
|
||||
nomerge = ISC_FALSE;
|
||||
nomerge = false;
|
||||
break;
|
||||
|
||||
case 'k':
|
||||
@@ -246,7 +248,7 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
|
||||
case 'L':
|
||||
snset = ISC_TRUE;
|
||||
snset = true;
|
||||
endp = NULL;
|
||||
serialnum = strtol(isc_commandline_argument, &endp, 0);
|
||||
if (*endp != '\0') {
|
||||
@@ -505,7 +507,7 @@ main(int argc, char **argv) {
|
||||
strcmp(output_filename, "/dev/fd/1") == 0 ||
|
||||
strcmp(output_filename, "/dev/stdout") == 0)) {
|
||||
errout = stderr;
|
||||
logdump = ISC_FALSE;
|
||||
logdump = false;
|
||||
}
|
||||
|
||||
if (isc_commandline_index + 2 != argc)
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -81,7 +81,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -80,7 +80,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -87,7 +87,7 @@ copy /Y named-checkzone.ilk named-compilezone.ilk
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -27,8 +27,8 @@ CWARNINGS =
|
||||
|
||||
ISCCFGLIBS = ../../lib/isccfg/libisccfg.@A@
|
||||
ISCCCLIBS = ../../lib/isccc/libisccc.@A@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @OPENSSL_LIBS@
|
||||
DNSLIBS = ../../lib/dns/libdns.@A@ @DNS_CRYPTO_LIBS@
|
||||
BIND9LIBS = ../../lib/bind9/libbind9.@A@
|
||||
|
||||
|
||||
+11
-10
@@ -19,8 +19,9 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <isc/assertions.h>
|
||||
#include <isc/base64.h>
|
||||
@@ -36,7 +37,7 @@
|
||||
#include <isc/time.h>
|
||||
#include <isc/util.h>
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
#include <pk11/result.h>
|
||||
#endif
|
||||
|
||||
@@ -56,7 +57,7 @@
|
||||
static char program[256];
|
||||
const char *progname;
|
||||
static enum { progmode_keygen, progmode_confgen} progmode;
|
||||
isc_boolean_t verbose = ISC_FALSE; /* needed by util.c but not used here */
|
||||
bool verbose = false; /* needed by util.c but not used here */
|
||||
|
||||
ISC_PLATFORM_NORETURN_PRE static void
|
||||
usage(int status) ISC_PLATFORM_NORETURN_POST;
|
||||
@@ -87,8 +88,8 @@ Usage:\n\
|
||||
int
|
||||
main(int argc, char **argv) {
|
||||
isc_result_t result = ISC_R_SUCCESS;
|
||||
isc_boolean_t show_final_mem = ISC_FALSE;
|
||||
isc_boolean_t quiet = ISC_FALSE;
|
||||
bool show_final_mem = false;
|
||||
bool quiet = false;
|
||||
isc_buffer_t key_txtbuffer;
|
||||
char key_txtsecret[256];
|
||||
isc_mem_t *mctx = NULL;
|
||||
@@ -102,7 +103,7 @@ main(int argc, char **argv) {
|
||||
int len = 0;
|
||||
int ch;
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
pk11_result_register();
|
||||
#endif
|
||||
dns_result_register();
|
||||
@@ -124,13 +125,13 @@ main(int argc, char **argv) {
|
||||
|
||||
if (PROGCMP("tsig-keygen")) {
|
||||
progmode = progmode_keygen;
|
||||
quiet = ISC_TRUE;
|
||||
quiet = true;
|
||||
} else if (PROGCMP("ddns-confgen"))
|
||||
progmode = progmode_confgen;
|
||||
else
|
||||
INSIST(0);
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
while ((ch = isc_commandline_parse(argc, argv,
|
||||
"a:hk:Mmr:qs:y:z:")) != -1) {
|
||||
@@ -155,11 +156,11 @@ main(int argc, char **argv) {
|
||||
isc_mem_debugging = ISC_MEM_DEBUGTRACE;
|
||||
break;
|
||||
case 'm':
|
||||
show_final_mem = ISC_TRUE;
|
||||
show_final_mem = true;
|
||||
break;
|
||||
case 'q':
|
||||
if (progmode == progmode_confgen)
|
||||
quiet = ISC_TRUE;
|
||||
quiet = true;
|
||||
else
|
||||
usage(1);
|
||||
break;
|
||||
|
||||
@@ -43,10 +43,8 @@
|
||||
const char *
|
||||
alg_totext(dns_secalg_t alg) {
|
||||
switch (alg) {
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
case DST_ALG_HMACMD5:
|
||||
return "hmac-md5";
|
||||
#endif
|
||||
case DST_ALG_HMACSHA1:
|
||||
return "hmac-sha1";
|
||||
case DST_ALG_HMACSHA224:
|
||||
@@ -71,10 +69,8 @@ alg_fromtext(const char *name) {
|
||||
if (strncasecmp(p, "hmac-", 5) == 0)
|
||||
p = &name[5];
|
||||
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
if (strcasecmp(p, "md5") == 0)
|
||||
return DST_ALG_HMACMD5;
|
||||
#endif
|
||||
if (strcasecmp(p, "sha1") == 0)
|
||||
return DST_ALG_HMACSHA1;
|
||||
if (strcasecmp(p, "sha224") == 0)
|
||||
@@ -124,9 +120,7 @@ generate_key(isc_mem_t *mctx, dns_secalg_t alg, int keysize,
|
||||
dst_key_t *key = NULL;
|
||||
|
||||
switch (alg) {
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
case DST_ALG_HMACMD5:
|
||||
#endif
|
||||
case DST_ALG_HMACSHA1:
|
||||
case DST_ALG_HMACSHA224:
|
||||
case DST_ALG_HMACSHA256:
|
||||
|
||||
@@ -22,8 +22,9 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <isc/assertions.h>
|
||||
#include <isc/base64.h>
|
||||
@@ -57,7 +58,7 @@
|
||||
static char program[256];
|
||||
const char *progname;
|
||||
|
||||
isc_boolean_t verbose = ISC_FALSE;
|
||||
bool verbose = false;
|
||||
|
||||
const char *keyfile, *keydef;
|
||||
|
||||
@@ -87,7 +88,7 @@ Usage:\n\
|
||||
|
||||
int
|
||||
main(int argc, char **argv) {
|
||||
isc_boolean_t show_final_mem = ISC_FALSE;
|
||||
bool show_final_mem = false;
|
||||
isc_buffer_t key_txtbuffer;
|
||||
char key_txtsecret[256];
|
||||
isc_mem_t *mctx = NULL;
|
||||
@@ -104,7 +105,7 @@ main(int argc, char **argv) {
|
||||
struct in6_addr addr6_dummy;
|
||||
char *chrootdir = NULL;
|
||||
char *user = NULL;
|
||||
isc_boolean_t keyonly = ISC_FALSE;
|
||||
bool keyonly = false;
|
||||
int len;
|
||||
|
||||
keydef = keyfile = RNDC_KEYFILE;
|
||||
@@ -119,14 +120,14 @@ main(int argc, char **argv) {
|
||||
serveraddr = DEFAULT_SERVER;
|
||||
port = DEFAULT_PORT;
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
while ((ch = isc_commandline_parse(argc, argv,
|
||||
"aA:b:c:hk:Mmp:r:s:t:u:Vy")) != -1)
|
||||
{
|
||||
switch (ch) {
|
||||
case 'a':
|
||||
keyonly = ISC_TRUE;
|
||||
keyonly = true;
|
||||
break;
|
||||
case 'A':
|
||||
algname = isc_commandline_argument;
|
||||
@@ -153,7 +154,7 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
|
||||
case 'm':
|
||||
show_final_mem = ISC_TRUE;
|
||||
show_final_mem = true;
|
||||
break;
|
||||
case 'p':
|
||||
port = strtol(isc_commandline_argument, &p, 10);
|
||||
@@ -177,7 +178,7 @@ main(int argc, char **argv) {
|
||||
user = isc_commandline_argument;
|
||||
break;
|
||||
case 'V':
|
||||
verbose = ISC_TRUE;
|
||||
verbose = true;
|
||||
break;
|
||||
case '?':
|
||||
if (isc_commandline_option != '?') {
|
||||
|
||||
+2
-2
@@ -15,15 +15,15 @@
|
||||
#include <config.h>
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#include <isc/boolean.h>
|
||||
#include <isc/print.h>
|
||||
|
||||
#include "util.h"
|
||||
|
||||
extern isc_boolean_t verbose;
|
||||
extern bool verbose;
|
||||
extern const char *progname;
|
||||
|
||||
void
|
||||
|
||||
@@ -16,7 +16,7 @@ VERSION=@BIND9_VERSION@
|
||||
@BIND9_MAKE_INCLUDES@
|
||||
|
||||
CINCLUDES = -I${srcdir}/include ${DNS_INCLUDES} ${ISC_INCLUDES} \
|
||||
${IRS_INCLUDES} ${ISCCFG_INCLUDES} @DST_OPENSSL_INC@
|
||||
${IRS_INCLUDES} ${ISCCFG_INCLUDES} @OPENSSL_INCLUDES@
|
||||
|
||||
CDEFINES = -DVERSION=\"${VERSION}\" \
|
||||
-DSYSCONFDIR=\"${sysconfdir}\"
|
||||
@@ -24,8 +24,8 @@ CWARNINGS =
|
||||
|
||||
ISCCFGLIBS = ../../lib/isccfg/libisccfg.@A@
|
||||
DNSLIBS = ../../lib/dns/libdns.@A@ @DNS_CRYPTO_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @OPENSSL_LIBS@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @OPENSSL_LIBS@
|
||||
IRSLIBS = ../../lib/irs/libirs.@A@
|
||||
|
||||
ISCCFGDEPLIBS = ../../lib/isccfg/libisccfg.@A@
|
||||
|
||||
+76
-74
@@ -24,7 +24,9 @@
|
||||
#include <netdb.h>
|
||||
#endif
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stdio.h>
|
||||
#include <inttypes.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
@@ -94,40 +96,40 @@ static const char *port = "53";
|
||||
static isc_sockaddr_t *srcaddr4 = NULL, *srcaddr6 = NULL;
|
||||
static isc_sockaddr_t a4, a6;
|
||||
static char *curqname = NULL, *qname = NULL;
|
||||
static isc_boolean_t classset = ISC_FALSE;
|
||||
static bool classset = false;
|
||||
static dns_rdatatype_t qtype = dns_rdatatype_none;
|
||||
static isc_boolean_t typeset = ISC_FALSE;
|
||||
static bool typeset = false;
|
||||
|
||||
static unsigned int styleflags = 0;
|
||||
static isc_uint32_t splitwidth = 0xffffffff;
|
||||
static isc_boolean_t
|
||||
showcomments = ISC_TRUE,
|
||||
showdnssec = ISC_TRUE,
|
||||
showtrust = ISC_TRUE,
|
||||
rrcomments = ISC_TRUE,
|
||||
noclass = ISC_FALSE,
|
||||
nocrypto = ISC_FALSE,
|
||||
nottl = ISC_FALSE,
|
||||
multiline = ISC_FALSE,
|
||||
short_form = ISC_FALSE,
|
||||
print_unknown_format = ISC_FALSE;
|
||||
static uint32_t splitwidth = 0xffffffff;
|
||||
static bool
|
||||
showcomments = true,
|
||||
showdnssec = true,
|
||||
showtrust = true,
|
||||
rrcomments = true,
|
||||
noclass = false,
|
||||
nocrypto = false,
|
||||
nottl = false,
|
||||
multiline = false,
|
||||
short_form = false,
|
||||
print_unknown_format = false;
|
||||
|
||||
static isc_boolean_t
|
||||
resolve_trace = ISC_FALSE,
|
||||
validator_trace = ISC_FALSE,
|
||||
message_trace = ISC_FALSE;
|
||||
static bool
|
||||
resolve_trace = false,
|
||||
validator_trace = false,
|
||||
message_trace = false;
|
||||
|
||||
static isc_boolean_t
|
||||
use_ipv4 = ISC_TRUE,
|
||||
use_ipv6 = ISC_TRUE;
|
||||
static bool
|
||||
use_ipv4 = true,
|
||||
use_ipv6 = true;
|
||||
|
||||
static isc_boolean_t
|
||||
cdflag = ISC_FALSE,
|
||||
no_sigs = ISC_FALSE,
|
||||
root_validation = ISC_TRUE,
|
||||
dlv_validation = ISC_TRUE;
|
||||
static bool
|
||||
cdflag = false,
|
||||
no_sigs = false,
|
||||
root_validation = true,
|
||||
dlv_validation = true;
|
||||
|
||||
static isc_boolean_t use_tcp = ISC_FALSE;
|
||||
static bool use_tcp = false;
|
||||
|
||||
static char *anchorfile = NULL;
|
||||
static char *trust_anchor = NULL;
|
||||
@@ -144,10 +146,10 @@ static char anchortext[] = MANAGED_KEYS;
|
||||
* Static function prototypes
|
||||
*/
|
||||
static isc_result_t
|
||||
get_reverse(char *reverse, size_t len, char *value, isc_boolean_t strict);
|
||||
get_reverse(char *reverse, size_t len, char *value, bool strict);
|
||||
|
||||
static isc_result_t
|
||||
parse_uint(isc_uint32_t *uip, const char *value, isc_uint32_t max,
|
||||
parse_uint(uint32_t *uip, const char *value, uint32_t max,
|
||||
const char *desc);
|
||||
|
||||
static void
|
||||
@@ -408,7 +410,7 @@ printdata(dns_rdataset_t *rdataset, dns_name_t *owner,
|
||||
{
|
||||
isc_result_t result = ISC_R_SUCCESS;
|
||||
static dns_trust_t trust;
|
||||
static isc_boolean_t first = ISC_TRUE;
|
||||
static bool first = true;
|
||||
isc_buffer_t target;
|
||||
isc_region_t r;
|
||||
char *t = NULL;
|
||||
@@ -430,7 +432,7 @@ printdata(dns_rdataset_t *rdataset, dns_name_t *owner,
|
||||
putchar('\n');
|
||||
print_status(rdataset);
|
||||
trust = rdataset->trust;
|
||||
first = ISC_FALSE;
|
||||
first = false;
|
||||
}
|
||||
|
||||
do {
|
||||
@@ -566,7 +568,7 @@ convert_name(dns_fixedname_t *fn, dns_name_t **name, const char *text) {
|
||||
static isc_result_t
|
||||
key_fromconfig(const cfg_obj_t *key, dns_client_t *client) {
|
||||
dns_rdata_dnskey_t keystruct;
|
||||
isc_uint32_t flags, proto, alg;
|
||||
uint32_t flags, proto, alg;
|
||||
const char *keystr, *keynamestr;
|
||||
unsigned char keydata[4096];
|
||||
isc_buffer_t keydatabuf;
|
||||
@@ -576,7 +578,7 @@ key_fromconfig(const cfg_obj_t *key, dns_client_t *client) {
|
||||
dns_fixedname_t fkeyname;
|
||||
dns_name_t *keyname;
|
||||
isc_result_t result;
|
||||
isc_boolean_t match_root = ISC_FALSE, match_dlv = ISC_FALSE;
|
||||
bool match_root = false, match_dlv = false;
|
||||
|
||||
keynamestr = cfg_obj_asstring(cfg_tuple_get(key, "name"));
|
||||
CHECK(convert_name(&fkeyname, &keyname, keynamestr));
|
||||
@@ -621,9 +623,9 @@ key_fromconfig(const cfg_obj_t *key, dns_client_t *client) {
|
||||
if (alg > 0xff)
|
||||
CHECK(ISC_R_RANGE);
|
||||
|
||||
keystruct.flags = (isc_uint16_t)flags;
|
||||
keystruct.protocol = (isc_uint8_t)proto;
|
||||
keystruct.algorithm = (isc_uint8_t)alg;
|
||||
keystruct.flags = (uint16_t)flags;
|
||||
keystruct.protocol = (uint8_t)proto;
|
||||
keystruct.algorithm = (uint8_t)alg;
|
||||
|
||||
isc_buffer_init(&keydatabuf, keydata, sizeof(keydata));
|
||||
isc_buffer_init(&rrdatabuf, rrdata, sizeof(rrdata));
|
||||
@@ -778,7 +780,7 @@ addserver(dns_client_t *client) {
|
||||
struct in6_addr in6;
|
||||
isc_sockaddr_t *sa;
|
||||
isc_sockaddrlist_t servers;
|
||||
isc_uint32_t destport;
|
||||
uint32_t destport;
|
||||
isc_result_t result;
|
||||
dns_name_t *name = NULL;
|
||||
|
||||
@@ -869,7 +871,7 @@ findserver(dns_client_t *client) {
|
||||
irs_resconf_t *resconf = NULL;
|
||||
isc_sockaddrlist_t *nameservers;
|
||||
isc_sockaddr_t *sa, *next;
|
||||
isc_uint32_t destport;
|
||||
uint32_t destport;
|
||||
|
||||
result = parse_uint(&destport, port, 0xffff, "port");
|
||||
if (result != ISC_R_SUCCESS)
|
||||
@@ -944,9 +946,9 @@ cleanup:
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
parse_uint(isc_uint32_t *uip, const char *value, isc_uint32_t max,
|
||||
parse_uint(uint32_t *uip, const char *value, uint32_t max,
|
||||
const char *desc) {
|
||||
isc_uint32_t n;
|
||||
uint32_t n;
|
||||
isc_result_t result = isc_parse_uint32(&n, value, 10);
|
||||
if (result == ISC_R_SUCCESS && n > max)
|
||||
result = ISC_R_RANGE;
|
||||
@@ -963,7 +965,7 @@ static void
|
||||
plus_option(char *option) {
|
||||
isc_result_t result;
|
||||
char *cmd, *value, *last = NULL;
|
||||
isc_boolean_t state = ISC_TRUE;
|
||||
bool state = true;
|
||||
|
||||
INSIST(option != NULL);
|
||||
|
||||
@@ -974,7 +976,7 @@ plus_option(char *option) {
|
||||
}
|
||||
if (strncasecmp(cmd, "no", 2)==0) {
|
||||
cmd += 2;
|
||||
state = ISC_FALSE;
|
||||
state = false;
|
||||
}
|
||||
|
||||
value = strtok_r(NULL, "\0", &last);
|
||||
@@ -1001,7 +1003,7 @@ plus_option(char *option) {
|
||||
break;
|
||||
case 'l': /* class */
|
||||
FULLCHECK("class");
|
||||
noclass = ISC_TF(!state);
|
||||
noclass = !state;
|
||||
break;
|
||||
case 'o': /* comments */
|
||||
FULLCHECK("comments");
|
||||
@@ -1009,7 +1011,7 @@ plus_option(char *option) {
|
||||
break;
|
||||
case 'r': /* crypto */
|
||||
FULLCHECK("crypto");
|
||||
nocrypto = ISC_TF(!state);
|
||||
nocrypto = !state;
|
||||
break;
|
||||
default:
|
||||
goto invalid_option;
|
||||
@@ -1082,10 +1084,10 @@ plus_option(char *option) {
|
||||
FULLCHECK("short");
|
||||
short_form = state;
|
||||
if (short_form) {
|
||||
multiline = ISC_FALSE;
|
||||
showcomments = ISC_FALSE;
|
||||
showtrust = ISC_FALSE;
|
||||
showdnssec = ISC_FALSE;
|
||||
multiline = false;
|
||||
showcomments = false;
|
||||
showtrust = false;
|
||||
showdnssec = false;
|
||||
}
|
||||
break;
|
||||
case 'p': /* split */
|
||||
@@ -1137,7 +1139,7 @@ plus_option(char *option) {
|
||||
break;
|
||||
case 't': /* ttl */
|
||||
FULLCHECK("ttl");
|
||||
nottl = ISC_TF(!state);
|
||||
nottl = !state;
|
||||
break;
|
||||
default:
|
||||
goto invalid_option;
|
||||
@@ -1165,11 +1167,11 @@ plus_option(char *option) {
|
||||
* options: "46a:b:c:d:himp:q:t:vx:";
|
||||
*/
|
||||
static const char *single_dash_opts = "46himv";
|
||||
static isc_boolean_t
|
||||
dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
||||
static bool
|
||||
dash_option(char *option, char *next, bool *open_type_class) {
|
||||
char opt, *value;
|
||||
isc_result_t result;
|
||||
isc_boolean_t value_from_next;
|
||||
bool value_from_next;
|
||||
isc_textregion_t tr;
|
||||
dns_rdatatype_t rdtype;
|
||||
dns_rdataclass_t rdclass;
|
||||
@@ -1177,7 +1179,7 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
||||
struct in_addr in4;
|
||||
struct in6_addr in6;
|
||||
in_port_t srcport;
|
||||
isc_uint32_t num;
|
||||
uint32_t num;
|
||||
char *hash;
|
||||
|
||||
while (strpbrk(option, single_dash_opts) == &option[0]) {
|
||||
@@ -1193,7 +1195,7 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
||||
fatal("IPv4 networking not available");
|
||||
if (use_ipv6) {
|
||||
isc_net_disableipv6();
|
||||
use_ipv6 = ISC_FALSE;
|
||||
use_ipv6 = false;
|
||||
}
|
||||
break;
|
||||
case '6':
|
||||
@@ -1201,7 +1203,7 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
||||
fatal("IPv6 networking not available");
|
||||
if (use_ipv4) {
|
||||
isc_net_disableipv4();
|
||||
use_ipv4 = ISC_FALSE;
|
||||
use_ipv4 = false;
|
||||
}
|
||||
break;
|
||||
case 'h':
|
||||
@@ -1209,9 +1211,9 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
||||
exit(0);
|
||||
/* NOTREACHED */
|
||||
case 'i':
|
||||
no_sigs = ISC_TRUE;
|
||||
dlv_validation = ISC_FALSE;
|
||||
root_validation = ISC_FALSE;
|
||||
no_sigs = true;
|
||||
dlv_validation = false;
|
||||
root_validation = false;
|
||||
break;
|
||||
case 'm':
|
||||
/* handled in preparse_args() */
|
||||
@@ -1226,14 +1228,14 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
||||
if (strlen(option) > 1U)
|
||||
option = &option[1];
|
||||
else
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
opt = option[0];
|
||||
if (strlen(option) > 1U) {
|
||||
value_from_next = ISC_FALSE;
|
||||
value_from_next = false;
|
||||
value = &option[1];
|
||||
} else {
|
||||
value_from_next = ISC_TRUE;
|
||||
value_from_next = true;
|
||||
value = next;
|
||||
}
|
||||
if (value == NULL)
|
||||
@@ -1279,13 +1281,13 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
||||
if (classset)
|
||||
warn("extra query class");
|
||||
|
||||
*open_type_class = ISC_FALSE;
|
||||
*open_type_class = false;
|
||||
tr.base = value;
|
||||
tr.length = strlen(value);
|
||||
result = dns_rdataclass_fromtext(&rdclass,
|
||||
(isc_textregion_t *)&tr);
|
||||
if (result == ISC_R_SUCCESS)
|
||||
classset = ISC_TRUE;
|
||||
classset = true;
|
||||
else if (rdclass != dns_rdataclass_in)
|
||||
warn("ignoring non-IN query class");
|
||||
else
|
||||
@@ -1310,7 +1312,7 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
||||
fatal("out of memory");
|
||||
return (value_from_next);
|
||||
case 't':
|
||||
*open_type_class = ISC_FALSE;
|
||||
*open_type_class = false;
|
||||
tr.base = value;
|
||||
tr.length = strlen(value);
|
||||
result = dns_rdatatype_fromtext(&rdtype,
|
||||
@@ -1322,13 +1324,13 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
||||
rdtype == dns_rdatatype_axfr)
|
||||
fatal("Transfer not supported");
|
||||
qtype = rdtype;
|
||||
typeset = ISC_TRUE;
|
||||
typeset = true;
|
||||
} else
|
||||
warn("ignoring invalid type");
|
||||
return (value_from_next);
|
||||
case 'x':
|
||||
result = get_reverse(textname, sizeof(textname), value,
|
||||
ISC_FALSE);
|
||||
false);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
if (curqname != NULL) {
|
||||
isc_mem_free(mctx, curqname);
|
||||
@@ -1340,7 +1342,7 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
||||
if (typeset)
|
||||
warn("extra query type");
|
||||
qtype = dns_rdatatype_ptr;
|
||||
typeset = ISC_TRUE;
|
||||
typeset = true;
|
||||
} else {
|
||||
fprintf(stderr, "Invalid IP address %s\n", value);
|
||||
exit(1);
|
||||
@@ -1352,7 +1354,7 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
||||
usage();
|
||||
}
|
||||
/* NOTREACHED */
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -1361,7 +1363,7 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
||||
*/
|
||||
static void
|
||||
preparse_args(int argc, char **argv) {
|
||||
isc_boolean_t ipv4only = ISC_FALSE, ipv6only = ISC_FALSE;
|
||||
bool ipv4only = false, ipv6only = false;
|
||||
char *option;
|
||||
|
||||
for (argc--, argv++; argc > 0; argc--, argv++) {
|
||||
@@ -1378,13 +1380,13 @@ preparse_args(int argc, char **argv) {
|
||||
if (ipv6only) {
|
||||
fatal("only one of -4 and -6 allowed");
|
||||
}
|
||||
ipv4only = ISC_TRUE;
|
||||
ipv4only = true;
|
||||
break;
|
||||
case '6':
|
||||
if (ipv4only) {
|
||||
fatal("only one of -4 and -6 allowed");
|
||||
}
|
||||
ipv6only = ISC_TRUE;
|
||||
ipv6only = true;
|
||||
break;
|
||||
}
|
||||
option = &option[1];
|
||||
@@ -1404,7 +1406,7 @@ parse_args(int argc, char **argv) {
|
||||
isc_textregion_t tr;
|
||||
dns_rdatatype_t rdtype;
|
||||
dns_rdataclass_t rdclass;
|
||||
isc_boolean_t open_type_class = ISC_TRUE;
|
||||
bool open_type_class = true;
|
||||
|
||||
for (; argc > 0; argc--, argv++) {
|
||||
if (argv[0][0] == '@') {
|
||||
@@ -1443,7 +1445,7 @@ parse_args(int argc, char **argv) {
|
||||
rdtype == dns_rdatatype_axfr)
|
||||
fatal("Transfer not supported");
|
||||
qtype = rdtype;
|
||||
typeset = ISC_TRUE;
|
||||
typeset = true;
|
||||
continue;
|
||||
}
|
||||
result = dns_rdataclass_fromtext(&rdclass,
|
||||
@@ -1512,7 +1514,7 @@ reverse_octets(const char *in, char **p, char *end) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
get_reverse(char *reverse, size_t len, char *value, isc_boolean_t strict) {
|
||||
get_reverse(char *reverse, size_t len, char *value, bool strict) {
|
||||
int r;
|
||||
isc_result_t result;
|
||||
isc_netaddr_t addr;
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -79,7 +79,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
+5
-3
@@ -19,7 +19,7 @@ READLINE_LIB = @READLINE_LIB@
|
||||
|
||||
CINCLUDES = -I${srcdir}/include ${DNS_INCLUDES} \
|
||||
${BIND9_INCLUDES} ${ISC_INCLUDES} \
|
||||
${IRS_INCLUDES} ${ISCCFG_INCLUDES} @LIBIDN2_CFLAGS@ @DST_OPENSSL_INC@
|
||||
${IRS_INCLUDES} ${ISCCFG_INCLUDES} @LIBIDN2_CFLAGS@ @OPENSSL_INCLUDES@
|
||||
|
||||
CDEFINES = -DVERSION=\"${VERSION}\"
|
||||
CWARNINGS =
|
||||
@@ -27,8 +27,8 @@ CWARNINGS =
|
||||
ISCCFGLIBS = ../../lib/isccfg/libisccfg.@A@
|
||||
DNSLIBS = ../../lib/dns/libdns.@A@ @DNS_CRYPTO_LIBS@
|
||||
BIND9LIBS = ../../lib/bind9/libbind9.@A@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @OPENSSL_LIBS@
|
||||
IRSLIBS = ../../lib/irs/libirs.@A@
|
||||
|
||||
ISCCFGDEPLIBS = ../../lib/isccfg/libisccfg.@A@
|
||||
@@ -64,6 +64,8 @@ MANOBJS = ${MANPAGES} ${HTMLPAGES}
|
||||
|
||||
@BIND9_MAKE_RULES@
|
||||
|
||||
LDFLAGS = @LDFLAGS@ @LIBIDN2_LDFLAGS@
|
||||
|
||||
dig@EXEEXT@: dig.@O@ dighost.@O@ ${UOBJS} ${DEPLIBS}
|
||||
export BASEOBJS="dig.@O@ dighost.@O@ ${UOBJS}"; \
|
||||
export LIBS0="${DNSLIBS} ${IRSLIBS}"; \
|
||||
|
||||
+156
-150
@@ -12,6 +12,9 @@
|
||||
/*! \file */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <time.h>
|
||||
#include <ctype.h>
|
||||
@@ -61,10 +64,10 @@ static int addresscount = 0;
|
||||
static char domainopt[DNS_NAME_MAXTEXT];
|
||||
static char hexcookie[81];
|
||||
|
||||
static isc_boolean_t short_form = ISC_FALSE, printcmd = ISC_TRUE,
|
||||
ip6_int = ISC_FALSE, plusquest = ISC_FALSE, pluscomm = ISC_FALSE,
|
||||
ipv4only = ISC_FALSE, ipv6only = ISC_FALSE;
|
||||
static isc_uint32_t splitwidth = 0xffffffff;
|
||||
static bool short_form = false, printcmd = true,
|
||||
ip6_int = false, plusquest = false, pluscomm = false,
|
||||
ipv4only = false, ipv6only = false;
|
||||
static uint32_t splitwidth = 0xffffffff;
|
||||
|
||||
/*% opcode text */
|
||||
static const char * const opcodetext[] = {
|
||||
@@ -240,7 +243,7 @@ help(void) {
|
||||
*/
|
||||
static void
|
||||
received(unsigned int bytes, isc_sockaddr_t *from, dig_query_t *query) {
|
||||
isc_uint64_t diff;
|
||||
uint64_t diff;
|
||||
time_t tnow;
|
||||
struct tm tmnow;
|
||||
#ifdef WIN32
|
||||
@@ -260,7 +263,7 @@ received(unsigned int bytes, isc_sockaddr_t *from, dig_query_t *query) {
|
||||
printf(";; Query time: %ld msec\n", (long) diff / 1000);
|
||||
printf(";; SERVER: %s(%s)\n", fromtext, query->servname);
|
||||
time(&tnow);
|
||||
#if defined(ISC_PLATFORM_USETHREADS) && !defined(WIN32)
|
||||
#if !defined(WIN32)
|
||||
(void)localtime_r(&tnow, &tmnow);
|
||||
#else
|
||||
tmnow = *localtime(&tnow);
|
||||
@@ -281,7 +284,7 @@ received(unsigned int bytes, isc_sockaddr_t *from, dig_query_t *query) {
|
||||
#endif
|
||||
if (query->lookup->doing_xfr) {
|
||||
printf(";; XFR size: %u records (messages %u, "
|
||||
"bytes %" ISC_PRINT_QUADFORMAT "u)\n",
|
||||
"bytes %" PRIu64 ")\n",
|
||||
query->rr_count, query->msg_count,
|
||||
query->byte_count);
|
||||
} else {
|
||||
@@ -299,18 +302,18 @@ received(unsigned int bytes, isc_sockaddr_t *from, dig_query_t *query) {
|
||||
} else if (query->lookup->identify && !short_form) {
|
||||
diff = isc_time_microdiff(&query->time_recv, &query->time_sent);
|
||||
if (query->lookup->use_usec)
|
||||
printf(";; Received %" ISC_PRINT_QUADFORMAT "u bytes "
|
||||
printf(";; Received %" PRIu64 " bytes "
|
||||
"from %s(%s) in %ld us\n\n",
|
||||
query->lookup->doing_xfr
|
||||
? query->byte_count
|
||||
: (isc_uint64_t)bytes,
|
||||
: (uint64_t)bytes,
|
||||
fromtext, query->userarg, (long) diff);
|
||||
else
|
||||
printf(";; Received %" ISC_PRINT_QUADFORMAT "u bytes "
|
||||
printf(";; Received %" PRIu64 " bytes "
|
||||
"from %s(%s) in %ld ms\n\n",
|
||||
query->lookup->doing_xfr
|
||||
? query->byte_count
|
||||
: (isc_uint64_t)bytes,
|
||||
: (uint64_t)bytes,
|
||||
fromtext, query->userarg, (long) diff / 1000);
|
||||
}
|
||||
}
|
||||
@@ -332,7 +335,7 @@ trying(char *frm, dig_lookup_t *lookup) {
|
||||
static isc_result_t
|
||||
say_message(dns_rdata_t *rdata, dig_query_t *query, isc_buffer_t *buf) {
|
||||
isc_result_t result;
|
||||
isc_uint64_t diff;
|
||||
uint64_t diff;
|
||||
char store[sizeof(" in 18446744073709551616 us.")];
|
||||
unsigned int styleflags = 0;
|
||||
|
||||
@@ -360,10 +363,11 @@ say_message(dns_rdata_t *rdata, dig_query_t *query, isc_buffer_t *buf) {
|
||||
diff = isc_time_microdiff(&query->time_recv, &query->time_sent);
|
||||
ADD_STRING(buf, " from server ");
|
||||
ADD_STRING(buf, query->servname);
|
||||
if (query->lookup->use_usec)
|
||||
snprintf(store, sizeof(store), " in %" ISC_PLATFORM_QUADFORMAT "u us.", diff);
|
||||
else
|
||||
snprintf(store, sizeof(store), " in %" ISC_PLATFORM_QUADFORMAT "u ms.", diff / 1000);
|
||||
if (query->lookup->use_usec) {
|
||||
snprintf(store, sizeof(store), " in %" PRIu64 " us.", diff);
|
||||
} else {
|
||||
snprintf(store, sizeof(store), " in %" PRIu64 " ms.", diff / 1000);
|
||||
}
|
||||
ADD_STRING(buf, store);
|
||||
}
|
||||
ADD_STRING(buf, "\n");
|
||||
@@ -421,7 +425,7 @@ short_answer(dns_message_t *msg, dns_messagetextflag_t flags,
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
isdotlocal(dns_message_t *msg) {
|
||||
isc_result_t result;
|
||||
static unsigned char local_ndata[] = { "\005local\0" };
|
||||
@@ -436,16 +440,16 @@ isdotlocal(dns_message_t *msg) {
|
||||
dns_name_t *name = NULL;
|
||||
dns_message_currentname(msg, DNS_SECTION_QUESTION, &name);
|
||||
if (dns_name_issubdomain(name, &local))
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
/*
|
||||
* Callback from dighost.c to print the reply from a server
|
||||
*/
|
||||
static isc_result_t
|
||||
printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
printmessage(dig_query_t *query, dns_message_t *msg, bool headers) {
|
||||
isc_result_t result;
|
||||
dns_messagetextflag_t flags;
|
||||
isc_buffer_t *buf = NULL;
|
||||
@@ -689,7 +693,7 @@ cleanup:
|
||||
static void
|
||||
printgreeting(int argc, char **argv, dig_lookup_t *lookup) {
|
||||
int i;
|
||||
static isc_boolean_t first = ISC_TRUE;
|
||||
static bool first = true;
|
||||
char append[MXNAME];
|
||||
|
||||
if (printcmd) {
|
||||
@@ -716,7 +720,7 @@ printgreeting(int argc, char **argv, dig_lookup_t *lookup) {
|
||||
";; global options:%s%s\n",
|
||||
short_form ? " +short" : "",
|
||||
printcmd ? " +cmd" : "");
|
||||
first = ISC_FALSE;
|
||||
first = false;
|
||||
strlcat(lookup->cmdline, append,
|
||||
sizeof(lookup->cmdline));
|
||||
}
|
||||
@@ -731,13 +735,13 @@ printgreeting(int argc, char **argv, dig_lookup_t *lookup) {
|
||||
*/
|
||||
|
||||
static void
|
||||
plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
plus_option(char *option, bool is_batchfile,
|
||||
dig_lookup_t *lookup)
|
||||
{
|
||||
isc_result_t result;
|
||||
char *cmd, *value, *last = NULL, *code, *extra;
|
||||
isc_uint32_t num;
|
||||
isc_boolean_t state = ISC_TRUE;
|
||||
uint32_t num;
|
||||
bool state = true;
|
||||
size_t n;
|
||||
|
||||
INSIST(option != NULL);
|
||||
@@ -748,7 +752,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
}
|
||||
if (strncasecmp(cmd, "no", 2)==0) {
|
||||
cmd += 2;
|
||||
state = ISC_FALSE;
|
||||
state = false;
|
||||
}
|
||||
/* parse the rest of the string */
|
||||
value = strtok_r(NULL, "", &last);
|
||||
@@ -855,7 +859,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
case 'l': /* class */
|
||||
/* keep +cl for backwards compatibility */
|
||||
FULLCHECK2("cl", "class");
|
||||
lookup->noclass = ISC_TF(!state);
|
||||
lookup->noclass = !state;
|
||||
break;
|
||||
case 'm': /* cmd */
|
||||
FULLCHECK("cmd");
|
||||
@@ -891,7 +895,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
break;
|
||||
case 'r':
|
||||
FULLCHECK("crypto");
|
||||
lookup->nocrypto = ISC_TF(!state);
|
||||
lookup->nocrypto = !state;
|
||||
break;
|
||||
default:
|
||||
goto invalid_option;
|
||||
@@ -1001,14 +1005,20 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
lookup->ednsoptscnt = 0;
|
||||
break;
|
||||
}
|
||||
if (value == NULL) {
|
||||
code = NULL;
|
||||
if (value != NULL) {
|
||||
code = strtok_r(value,
|
||||
":",
|
||||
&last);
|
||||
}
|
||||
if (code == NULL) {
|
||||
warn("ednsopt no "
|
||||
"code point "
|
||||
"specified");
|
||||
goto exit_or_usage;
|
||||
}
|
||||
code = strtok_r(value, ":", &last);
|
||||
extra = strtok_r(NULL, "\0", &last);
|
||||
extra = strtok_r(NULL, "\0",
|
||||
&last);
|
||||
save_opt(lookup, code, extra);
|
||||
break;
|
||||
default:
|
||||
@@ -1051,7 +1061,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
switch (cmd[3]) {
|
||||
case 'i':
|
||||
FULLCHECK("idnin");
|
||||
#ifndef WITH_IDN_SUPPORT
|
||||
#ifndef HAVE_LIBIDN2
|
||||
fprintf(stderr, ";; IDN input support"
|
||||
" not enabled\n");
|
||||
#else
|
||||
@@ -1060,7 +1070,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
break;
|
||||
case 'o':
|
||||
FULLCHECK("idnout");
|
||||
#ifndef WITH_IDN_OUT_SUPPORT
|
||||
#ifndef HAVE_LIBIDN2
|
||||
fprintf(stderr, ";; IDN output support"
|
||||
" not enabled\n");
|
||||
#else
|
||||
@@ -1156,17 +1166,17 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
FULLCHECK("nssearch");
|
||||
lookup->ns_search_only = state;
|
||||
if (state) {
|
||||
lookup->trace_root = ISC_TRUE;
|
||||
lookup->recurse = ISC_TRUE;
|
||||
lookup->identify = ISC_TRUE;
|
||||
lookup->stats = ISC_FALSE;
|
||||
lookup->comments = ISC_FALSE;
|
||||
lookup->section_additional = ISC_FALSE;
|
||||
lookup->section_authority = ISC_FALSE;
|
||||
lookup->section_question = ISC_FALSE;
|
||||
lookup->trace_root = true;
|
||||
lookup->recurse = true;
|
||||
lookup->identify = true;
|
||||
lookup->stats = false;
|
||||
lookup->comments = false;
|
||||
lookup->section_additional = false;
|
||||
lookup->section_authority = false;
|
||||
lookup->section_question = false;
|
||||
lookup->rdtype = dns_rdatatype_ns;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
short_form = ISC_TRUE;
|
||||
lookup->rdtypeset = true;
|
||||
short_form = true;
|
||||
lookup->rrcomments = 0;
|
||||
}
|
||||
break;
|
||||
@@ -1224,7 +1234,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
warn("Couldn't parse padding");
|
||||
goto exit_or_usage;
|
||||
}
|
||||
lookup->padding = (isc_uint16_t)num;
|
||||
lookup->padding = (uint16_t)num;
|
||||
break;
|
||||
case 'q':
|
||||
switch (cmd[1]) {
|
||||
@@ -1300,13 +1310,13 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
FULLCHECK("short");
|
||||
short_form = state;
|
||||
if (state) {
|
||||
printcmd = ISC_FALSE;
|
||||
lookup->section_additional = ISC_FALSE;
|
||||
lookup->section_answer = ISC_TRUE;
|
||||
lookup->section_authority = ISC_FALSE;
|
||||
lookup->section_question = ISC_FALSE;
|
||||
lookup->comments = ISC_FALSE;
|
||||
lookup->stats = ISC_FALSE;
|
||||
printcmd = false;
|
||||
lookup->section_additional = false;
|
||||
lookup->section_answer = true;
|
||||
lookup->section_authority = false;
|
||||
lookup->section_question = false;
|
||||
lookup->comments = false;
|
||||
lookup->stats = false;
|
||||
lookup->rrcomments = -1;
|
||||
}
|
||||
break;
|
||||
@@ -1400,7 +1410,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
FULLCHECK("tcp");
|
||||
if (!is_batchfile) {
|
||||
lookup->tcp_mode = state;
|
||||
lookup->tcp_mode_set = ISC_TRUE;
|
||||
lookup->tcp_mode_set = true;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
@@ -1433,17 +1443,17 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
lookup->trace = state;
|
||||
lookup->trace_root = state;
|
||||
if (state) {
|
||||
lookup->recurse = ISC_FALSE;
|
||||
lookup->identify = ISC_TRUE;
|
||||
lookup->comments = ISC_FALSE;
|
||||
lookup->recurse = false;
|
||||
lookup->identify = true;
|
||||
lookup->comments = false;
|
||||
lookup->rrcomments = 0;
|
||||
lookup->stats = ISC_FALSE;
|
||||
lookup->section_additional = ISC_FALSE;
|
||||
lookup->section_authority = ISC_TRUE;
|
||||
lookup->section_question = ISC_FALSE;
|
||||
lookup->dnssec = ISC_TRUE;
|
||||
lookup->sendcookie = ISC_TRUE;
|
||||
usesearch = ISC_FALSE;
|
||||
lookup->stats = false;
|
||||
lookup->section_additional = false;
|
||||
lookup->section_authority = true;
|
||||
lookup->section_question = false;
|
||||
lookup->dnssec = true;
|
||||
lookup->sendcookie = true;
|
||||
usesearch = false;
|
||||
}
|
||||
break;
|
||||
case 'i': /* tries */
|
||||
@@ -1477,12 +1487,12 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
case 0:
|
||||
case 'i': /* ttlid */
|
||||
FULLCHECK2("ttl", "ttlid");
|
||||
lookup->nottl = ISC_TF(!state);
|
||||
lookup->nottl = !state;
|
||||
break;
|
||||
case 'u': /* ttlunits */
|
||||
FULLCHECK("ttlunits");
|
||||
lookup->nottl = ISC_FALSE;
|
||||
lookup->ttlunits = ISC_TF(state);
|
||||
lookup->nottl = false;
|
||||
lookup->ttlunits = state;
|
||||
break;
|
||||
default:
|
||||
goto invalid_option;
|
||||
@@ -1504,7 +1514,7 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
FULLCHECK("vc");
|
||||
if (!is_batchfile) {
|
||||
lookup->tcp_mode = state;
|
||||
lookup->tcp_mode_set = ISC_TRUE;
|
||||
lookup->tcp_mode_set = true;
|
||||
}
|
||||
break;
|
||||
case 'z': /* zflag */
|
||||
@@ -1530,19 +1540,19 @@ plus_option(char *option, isc_boolean_t is_batchfile,
|
||||
}
|
||||
|
||||
/*%
|
||||
* #ISC_TRUE returned if value was used
|
||||
* #true returned if value was used
|
||||
*/
|
||||
static const char *single_dash_opts = "46dhimnuv";
|
||||
static const char *dash_opts = "46bcdfhikmnptvyx";
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
isc_boolean_t *open_type_class, isc_boolean_t *need_clone,
|
||||
isc_boolean_t config_only, int argc, char **argv,
|
||||
isc_boolean_t *firstarg)
|
||||
bool *open_type_class, bool *need_clone,
|
||||
bool config_only, int argc, char **argv,
|
||||
bool *firstarg)
|
||||
{
|
||||
char opt, *value, *ptr, *ptr2, *ptr3, *last;
|
||||
isc_result_t result;
|
||||
isc_boolean_t value_from_next;
|
||||
bool value_from_next;
|
||||
isc_textregion_t tr;
|
||||
dns_rdatatype_t rdtype;
|
||||
dns_rdataclass_t rdclass;
|
||||
@@ -1551,7 +1561,7 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
struct in6_addr in6;
|
||||
in_port_t srcport;
|
||||
char *hash, *cmd;
|
||||
isc_uint32_t num;
|
||||
uint32_t num;
|
||||
|
||||
while (strpbrk(option, single_dash_opts) == &option[0]) {
|
||||
/*
|
||||
@@ -1564,21 +1574,21 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
case '4':
|
||||
if (have_ipv4) {
|
||||
isc_net_disableipv6();
|
||||
have_ipv6 = ISC_FALSE;
|
||||
have_ipv6 = false;
|
||||
} else {
|
||||
fatal("can't find IPv4 networking");
|
||||
/* NOTREACHED */
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
break;
|
||||
case '6':
|
||||
if (have_ipv6) {
|
||||
isc_net_disableipv4();
|
||||
have_ipv4 = ISC_FALSE;
|
||||
have_ipv4 = false;
|
||||
} else {
|
||||
fatal("can't find IPv6 networking");
|
||||
/* NOTREACHED */
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
break;
|
||||
case 'd':
|
||||
@@ -1586,17 +1596,17 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
if (ptr != &option[1]) {
|
||||
cmd = option;
|
||||
FULLCHECK("debug");
|
||||
debugging = ISC_TRUE;
|
||||
return (ISC_FALSE);
|
||||
debugging = true;
|
||||
return (false);
|
||||
} else
|
||||
debugging = ISC_TRUE;
|
||||
debugging = true;
|
||||
break;
|
||||
case 'h':
|
||||
help();
|
||||
exit(0);
|
||||
break;
|
||||
case 'i':
|
||||
ip6_int = ISC_TRUE;
|
||||
ip6_int = true;
|
||||
break;
|
||||
case 'm': /* memdebug */
|
||||
/* memdebug is handled in preparse_args() */
|
||||
@@ -1605,7 +1615,7 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
/* deprecated */
|
||||
break;
|
||||
case 'u':
|
||||
(*lookup)->use_usec = ISC_TRUE;
|
||||
(*lookup)->use_usec = true;
|
||||
break;
|
||||
case 'v':
|
||||
version();
|
||||
@@ -1615,14 +1625,14 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
if (strlen(option) > 1U)
|
||||
option = &option[1];
|
||||
else
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
opt = option[0];
|
||||
if (strlen(option) > 1U) {
|
||||
value_from_next = ISC_FALSE;
|
||||
value_from_next = false;
|
||||
value = &option[1];
|
||||
} else {
|
||||
value_from_next = ISC_TRUE;
|
||||
value_from_next = true;
|
||||
value = next;
|
||||
}
|
||||
if (value == NULL)
|
||||
@@ -1652,20 +1662,20 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
}
|
||||
if (hash != NULL)
|
||||
*hash = '#';
|
||||
specified_source = ISC_TRUE;
|
||||
specified_source = true;
|
||||
return (value_from_next);
|
||||
case 'c':
|
||||
if ((*lookup)->rdclassset) {
|
||||
fprintf(stderr, ";; Warning, extra class option\n");
|
||||
}
|
||||
*open_type_class = ISC_FALSE;
|
||||
*open_type_class = false;
|
||||
tr.base = value;
|
||||
tr.length = (unsigned int) strlen(value);
|
||||
result = dns_rdataclass_fromtext(&rdclass,
|
||||
(isc_textregion_t *)&tr);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
(*lookup)->rdclass = rdclass;
|
||||
(*lookup)->rdclassset = ISC_TRUE;
|
||||
(*lookup)->rdclassset = true;
|
||||
} else
|
||||
fprintf(stderr, ";; Warning, ignoring "
|
||||
"invalid class %s\n",
|
||||
@@ -1687,23 +1697,23 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
if (!config_only) {
|
||||
if (*need_clone)
|
||||
(*lookup) = clone_lookup(default_lookup,
|
||||
ISC_TRUE);
|
||||
*need_clone = ISC_TRUE;
|
||||
true);
|
||||
*need_clone = true;
|
||||
strlcpy((*lookup)->textname, value,
|
||||
sizeof((*lookup)->textname));
|
||||
(*lookup)->trace_root = ISC_TF((*lookup)->trace ||
|
||||
(*lookup)->ns_search_only);
|
||||
(*lookup)->new_search = ISC_TRUE;
|
||||
(*lookup)->trace_root = ((*lookup)->trace ||
|
||||
(*lookup)->ns_search_only);
|
||||
(*lookup)->new_search = true;
|
||||
if (*firstarg) {
|
||||
printgreeting(argc, argv, *lookup);
|
||||
*firstarg = ISC_FALSE;
|
||||
*firstarg = false;
|
||||
}
|
||||
ISC_LIST_APPEND(lookup_list, (*lookup), link);
|
||||
debug("looking up %s", (*lookup)->textname);
|
||||
}
|
||||
return (value_from_next);
|
||||
case 't':
|
||||
*open_type_class = ISC_FALSE;
|
||||
*open_type_class = false;
|
||||
if (strncasecmp(value, "ixfr=", 5) == 0) {
|
||||
rdtype = dns_rdatatype_ixfr;
|
||||
result = ISC_R_SUCCESS;
|
||||
@@ -1723,9 +1733,9 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
"extra type option\n");
|
||||
}
|
||||
if (rdtype == dns_rdatatype_ixfr) {
|
||||
isc_uint32_t serial;
|
||||
uint32_t serial;
|
||||
(*lookup)->rdtype = dns_rdatatype_ixfr;
|
||||
(*lookup)->rdtypeset = ISC_TRUE;
|
||||
(*lookup)->rdtypeset = true;
|
||||
result = parse_uint(&serial, &value[5],
|
||||
MAXSERIAL, "serial number");
|
||||
if (result != ISC_R_SUCCESS)
|
||||
@@ -1734,19 +1744,19 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
(*lookup)->section_question = plusquest;
|
||||
(*lookup)->comments = pluscomm;
|
||||
if (!(*lookup)->tcp_mode_set)
|
||||
(*lookup)->tcp_mode = ISC_TRUE;
|
||||
(*lookup)->tcp_mode = true;
|
||||
} else {
|
||||
(*lookup)->rdtype = rdtype;
|
||||
if (!config_only)
|
||||
(*lookup)->rdtypeset = ISC_TRUE;
|
||||
(*lookup)->rdtypeset = true;
|
||||
if (rdtype == dns_rdatatype_axfr) {
|
||||
(*lookup)->section_question = plusquest;
|
||||
(*lookup)->comments = pluscomm;
|
||||
} else if (rdtype == dns_rdatatype_any) {
|
||||
if (!(*lookup)->tcp_mode_set)
|
||||
(*lookup)->tcp_mode = ISC_TRUE;
|
||||
(*lookup)->tcp_mode = true;
|
||||
}
|
||||
(*lookup)->ixfr_serial = ISC_FALSE;
|
||||
(*lookup)->ixfr_serial = false;
|
||||
}
|
||||
} else
|
||||
fprintf(stderr, ";; Warning, ignoring "
|
||||
@@ -1765,11 +1775,7 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
ptr = ptr2;
|
||||
ptr2 = ptr3;
|
||||
} else {
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
hmacname = DNS_TSIG_HMACMD5_NAME;
|
||||
#else
|
||||
hmacname = DNS_TSIG_HMACSHA256_NAME;
|
||||
#endif
|
||||
digestbits = 0;
|
||||
}
|
||||
/* XXXONDREJ: FIXME */
|
||||
@@ -1778,24 +1784,24 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
return (value_from_next);
|
||||
case 'x':
|
||||
if (*need_clone)
|
||||
*lookup = clone_lookup(default_lookup, ISC_TRUE);
|
||||
*need_clone = ISC_TRUE;
|
||||
*lookup = clone_lookup(default_lookup, true);
|
||||
*need_clone = true;
|
||||
if (get_reverse(textname, sizeof(textname), value,
|
||||
ip6_int, ISC_FALSE) == ISC_R_SUCCESS) {
|
||||
ip6_int, false) == ISC_R_SUCCESS) {
|
||||
strlcpy((*lookup)->textname, textname,
|
||||
sizeof((*lookup)->textname));
|
||||
debug("looking up %s", (*lookup)->textname);
|
||||
(*lookup)->trace_root = ISC_TF((*lookup)->trace ||
|
||||
(*lookup)->ns_search_only);
|
||||
(*lookup)->trace_root = ((*lookup)->trace ||
|
||||
(*lookup)->ns_search_only);
|
||||
(*lookup)->ip6_int = ip6_int;
|
||||
if (!(*lookup)->rdtypeset)
|
||||
(*lookup)->rdtype = dns_rdatatype_ptr;
|
||||
if (!(*lookup)->rdclassset)
|
||||
(*lookup)->rdclass = dns_rdataclass_in;
|
||||
(*lookup)->new_search = ISC_TRUE;
|
||||
(*lookup)->new_search = true;
|
||||
if (*firstarg) {
|
||||
printgreeting(argc, argv, *lookup);
|
||||
*firstarg = ISC_FALSE;
|
||||
*firstarg = false;
|
||||
}
|
||||
ISC_LIST_APPEND(lookup_list, *lookup, link);
|
||||
} else {
|
||||
@@ -1809,7 +1815,7 @@ dash_option(char *option, char *next, dig_lookup_t **lookup,
|
||||
usage();
|
||||
}
|
||||
/* NOTREACHED */
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
/*%
|
||||
@@ -1836,19 +1842,19 @@ preparse_args(int argc, char **argv) {
|
||||
while (strpbrk(option, single_dash_opts) == &option[0]) {
|
||||
switch (option[0]) {
|
||||
case 'm':
|
||||
memdebugging = ISC_TRUE;
|
||||
memdebugging = true;
|
||||
isc_mem_debugging = ISC_MEM_DEBUGTRACE |
|
||||
ISC_MEM_DEBUGRECORD;
|
||||
break;
|
||||
case '4':
|
||||
if (ipv6only)
|
||||
fatal("only one of -4 and -6 allowed");
|
||||
ipv4only = ISC_TRUE;
|
||||
ipv4only = true;
|
||||
break;
|
||||
case '6':
|
||||
if (ipv4only)
|
||||
fatal("only one of -4 and -6 allowed");
|
||||
ipv6only = ISC_TRUE;
|
||||
ipv6only = true;
|
||||
break;
|
||||
}
|
||||
option = &option[1];
|
||||
@@ -1873,16 +1879,16 @@ split_batchline(char *batchline, char **bargv, int len, const char *msg) {
|
||||
}
|
||||
|
||||
static void
|
||||
parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
parse_args(bool is_batchfile, bool config_only,
|
||||
int argc, char **argv)
|
||||
{
|
||||
isc_result_t result;
|
||||
isc_textregion_t tr;
|
||||
isc_boolean_t firstarg = ISC_TRUE;
|
||||
bool firstarg = true;
|
||||
dig_lookup_t *lookup = NULL;
|
||||
dns_rdatatype_t rdtype;
|
||||
dns_rdataclass_t rdclass;
|
||||
isc_boolean_t open_type_class = ISC_TRUE;
|
||||
bool open_type_class = true;
|
||||
char batchline[MXNAME];
|
||||
int bargc;
|
||||
char *bargv[64];
|
||||
@@ -1892,7 +1898,7 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
char *homedir;
|
||||
char rcfile[PATH_MAX];
|
||||
#endif
|
||||
isc_boolean_t need_clone = ISC_TRUE;
|
||||
bool need_clone = true;
|
||||
|
||||
/*
|
||||
* The semantics for parsing the args is a bit complex; if
|
||||
@@ -1909,9 +1915,9 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
if (!is_batchfile) {
|
||||
debug("making new lookup");
|
||||
default_lookup = make_empty_lookup();
|
||||
default_lookup->adflag = ISC_TRUE;
|
||||
default_lookup->adflag = true;
|
||||
default_lookup->edns = 0;
|
||||
default_lookup->sendcookie = ISC_TRUE;
|
||||
default_lookup->sendcookie = true;
|
||||
|
||||
#ifndef NOPOSIX
|
||||
/*
|
||||
@@ -1936,7 +1942,7 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
".digrc argv");
|
||||
bargv[0] = argv[0];
|
||||
argv0 = argv[0];
|
||||
parse_args(ISC_TRUE, ISC_TRUE,
|
||||
parse_args(true, true,
|
||||
bargc, (char **)bargv);
|
||||
}
|
||||
fclose(batchfp);
|
||||
@@ -1946,8 +1952,8 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
|
||||
if (is_batchfile && !config_only) {
|
||||
/* Processing '-f batchfile'. */
|
||||
lookup = clone_lookup(default_lookup, ISC_TRUE);
|
||||
need_clone = ISC_FALSE;
|
||||
lookup = clone_lookup(default_lookup, true);
|
||||
need_clone = false;
|
||||
} else {
|
||||
lookup = default_lookup;
|
||||
}
|
||||
@@ -2030,10 +2036,10 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
"extra type option\n");
|
||||
}
|
||||
if (rdtype == dns_rdatatype_ixfr) {
|
||||
isc_uint32_t serial;
|
||||
uint32_t serial;
|
||||
lookup->rdtype =
|
||||
dns_rdatatype_ixfr;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = true;
|
||||
result = parse_uint(&serial,
|
||||
&rv[0][5],
|
||||
MAXSERIAL,
|
||||
@@ -2046,10 +2052,10 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
plusquest;
|
||||
lookup->comments = pluscomm;
|
||||
if (!lookup->tcp_mode_set)
|
||||
lookup->tcp_mode = ISC_TRUE;
|
||||
lookup->tcp_mode = true;
|
||||
} else {
|
||||
lookup->rdtype = rdtype;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = true;
|
||||
if (rdtype ==
|
||||
dns_rdatatype_axfr) {
|
||||
lookup->section_question =
|
||||
@@ -2059,8 +2065,8 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
if (rdtype ==
|
||||
dns_rdatatype_any &&
|
||||
!lookup->tcp_mode_set)
|
||||
lookup->tcp_mode = ISC_TRUE;
|
||||
lookup->ixfr_serial = ISC_FALSE;
|
||||
lookup->tcp_mode = true;
|
||||
lookup->ixfr_serial = false;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
@@ -2072,7 +2078,7 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
"extra class option\n");
|
||||
}
|
||||
lookup->rdclass = rdclass;
|
||||
lookup->rdclassset = ISC_TRUE;
|
||||
lookup->rdclassset = true;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
@@ -2080,16 +2086,16 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
if (!config_only) {
|
||||
if (need_clone)
|
||||
lookup = clone_lookup(default_lookup,
|
||||
ISC_TRUE);
|
||||
need_clone = ISC_TRUE;
|
||||
true);
|
||||
need_clone = true;
|
||||
strlcpy(lookup->textname, rv[0],
|
||||
sizeof(lookup->textname));
|
||||
lookup->trace_root = ISC_TF(lookup->trace ||
|
||||
lookup->ns_search_only);
|
||||
lookup->new_search = ISC_TRUE;
|
||||
lookup->trace_root = (lookup->trace ||
|
||||
lookup->ns_search_only);
|
||||
lookup->new_search = true;
|
||||
if (firstarg) {
|
||||
printgreeting(argc, argv, lookup);
|
||||
firstarg = ISC_FALSE;
|
||||
firstarg = false;
|
||||
}
|
||||
ISC_LIST_APPEND(lookup_list, lookup, link);
|
||||
debug("looking up %s", lookup->textname);
|
||||
@@ -2125,7 +2131,7 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
"batch argv");
|
||||
bargv[0] = argv[0];
|
||||
argv0 = argv[0];
|
||||
parse_args(ISC_TRUE, ISC_FALSE, bargc, (char **)bargv);
|
||||
parse_args(true, false, bargc, (char **)bargv);
|
||||
return;
|
||||
}
|
||||
return;
|
||||
@@ -2135,17 +2141,17 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
*/
|
||||
if ((lookup_list.head == NULL) && !config_only) {
|
||||
if (need_clone)
|
||||
lookup = clone_lookup(default_lookup, ISC_TRUE);
|
||||
need_clone = ISC_TRUE;
|
||||
lookup->trace_root = ISC_TF(lookup->trace ||
|
||||
lookup->ns_search_only);
|
||||
lookup->new_search = ISC_TRUE;
|
||||
lookup = clone_lookup(default_lookup, true);
|
||||
need_clone = true;
|
||||
lookup->trace_root = (lookup->trace ||
|
||||
lookup->ns_search_only);
|
||||
lookup->new_search = true;
|
||||
strlcpy(lookup->textname, ".", sizeof(lookup->textname));
|
||||
lookup->rdtype = dns_rdatatype_ns;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = true;
|
||||
if (firstarg) {
|
||||
printgreeting(argc, argv, lookup);
|
||||
firstarg = ISC_FALSE;
|
||||
firstarg = false;
|
||||
}
|
||||
ISC_LIST_APPEND(lookup_list, lookup, link);
|
||||
}
|
||||
@@ -2182,7 +2188,7 @@ query_finished(void) {
|
||||
debug("batch line %s", batchline);
|
||||
bargc = split_batchline(batchline, bargv, 14, "batch argv");
|
||||
bargv[0] = argv0;
|
||||
parse_args(ISC_TRUE, ISC_FALSE, bargc, (char **)bargv);
|
||||
parse_args(true, false, bargc, (char **)bargv);
|
||||
start_lookup();
|
||||
} else {
|
||||
batchname = NULL;
|
||||
@@ -2219,7 +2225,7 @@ void dig_setup(int argc, char **argv)
|
||||
setup_system(ipv4only, ipv6only);
|
||||
}
|
||||
|
||||
void dig_query_setup(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
void dig_query_setup(bool is_batchfile, bool config_only,
|
||||
int argc, char **argv)
|
||||
{
|
||||
debug("dig_query_setup");
|
||||
@@ -2231,7 +2237,7 @@ void dig_query_setup(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
setup_text_key();
|
||||
if (domainopt[0] != '\0') {
|
||||
set_search_domain(domainopt);
|
||||
usesearch = ISC_TRUE;
|
||||
usesearch = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2268,7 +2274,7 @@ int
|
||||
main(int argc, char **argv) {
|
||||
|
||||
dig_setup(argc, argv);
|
||||
dig_query_setup(ISC_FALSE, ISC_FALSE, argc, argv);
|
||||
dig_query_setup(false, false, argc, argv);
|
||||
dig_startup();
|
||||
dig_shutdown();
|
||||
|
||||
|
||||
+396
-411
File diff suppressed because it is too large
Load Diff
+87
-84
@@ -12,6 +12,9 @@
|
||||
/*! \file */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <limits.h>
|
||||
|
||||
@@ -40,14 +43,14 @@
|
||||
|
||||
#include <dig/dig.h>
|
||||
|
||||
static isc_boolean_t short_form = ISC_TRUE, listed_server = ISC_FALSE;
|
||||
static isc_boolean_t default_lookups = ISC_TRUE;
|
||||
static bool short_form = true, listed_server = false;
|
||||
static bool default_lookups = true;
|
||||
static int seen_error = -1;
|
||||
static isc_boolean_t list_addresses = ISC_TRUE;
|
||||
static isc_boolean_t list_almost_all = ISC_FALSE;
|
||||
static bool list_addresses = true;
|
||||
static bool list_almost_all = false;
|
||||
static dns_rdatatype_t list_type = dns_rdatatype_a;
|
||||
static isc_boolean_t printed_server = ISC_FALSE;
|
||||
static isc_boolean_t ipv4only = ISC_FALSE, ipv6only = ISC_FALSE;
|
||||
static bool printed_server = false;
|
||||
static bool ipv4only = false, ipv6only = false;
|
||||
|
||||
static const char *opcodetext[] = {
|
||||
"QUERY",
|
||||
@@ -224,7 +227,7 @@ say_message(dns_name_t *name, const char *msg, dns_rdata_t *rdata,
|
||||
|
||||
static isc_result_t
|
||||
printsection(dns_message_t *msg, dns_section_t sectionid,
|
||||
const char *section_name, isc_boolean_t headers,
|
||||
const char *section_name, bool headers,
|
||||
dig_query_t *query)
|
||||
{
|
||||
dns_name_t *name, *print_name;
|
||||
@@ -235,13 +238,13 @@ printsection(dns_message_t *msg, dns_section_t sectionid,
|
||||
isc_region_t r;
|
||||
dns_name_t empty_name;
|
||||
char tbuf[4096];
|
||||
isc_boolean_t first;
|
||||
isc_boolean_t no_rdata;
|
||||
bool first;
|
||||
bool no_rdata;
|
||||
|
||||
if (sectionid == DNS_SECTION_QUESTION)
|
||||
no_rdata = ISC_TRUE;
|
||||
no_rdata = true;
|
||||
else
|
||||
no_rdata = ISC_FALSE;
|
||||
no_rdata = false;
|
||||
|
||||
if (headers)
|
||||
printf(";; %s SECTION:\n", section_name);
|
||||
@@ -259,7 +262,7 @@ printsection(dns_message_t *msg, dns_section_t sectionid,
|
||||
dns_message_currentname(msg, sectionid, &name);
|
||||
|
||||
isc_buffer_init(&target, tbuf, sizeof(tbuf));
|
||||
first = ISC_TRUE;
|
||||
first = true;
|
||||
print_name = name;
|
||||
|
||||
for (rdataset = ISC_LIST_HEAD(name->list);
|
||||
@@ -283,7 +286,7 @@ printsection(dns_message_t *msg, dns_section_t sectionid,
|
||||
if (!short_form) {
|
||||
result = dns_rdataset_totext(rdataset,
|
||||
print_name,
|
||||
ISC_FALSE,
|
||||
false,
|
||||
no_rdata,
|
||||
&target);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
@@ -291,7 +294,7 @@ printsection(dns_message_t *msg, dns_section_t sectionid,
|
||||
#ifdef USEINITALWS
|
||||
if (first) {
|
||||
print_name = &empty_name;
|
||||
first = ISC_FALSE;
|
||||
first = false;
|
||||
}
|
||||
#else
|
||||
UNUSED(first); /* Shut up compiler. */
|
||||
@@ -350,7 +353,7 @@ printsection(dns_message_t *msg, dns_section_t sectionid,
|
||||
static isc_result_t
|
||||
printrdata(dns_message_t *msg, dns_rdataset_t *rdataset,
|
||||
const dns_name_t *owner, const char *set_name,
|
||||
isc_boolean_t headers)
|
||||
bool headers)
|
||||
{
|
||||
isc_buffer_t target;
|
||||
isc_result_t result;
|
||||
@@ -363,7 +366,7 @@ printrdata(dns_message_t *msg, dns_rdataset_t *rdataset,
|
||||
|
||||
isc_buffer_init(&target, tbuf, sizeof(tbuf));
|
||||
|
||||
result = dns_rdataset_totext(rdataset, owner, ISC_FALSE, ISC_FALSE,
|
||||
result = dns_rdataset_totext(rdataset, owner, false, false,
|
||||
&target);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
@@ -400,8 +403,8 @@ chase_cnamechain(dns_message_t *msg, dns_name_t *qname) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
isc_boolean_t did_flag = ISC_FALSE;
|
||||
printmessage(dig_query_t *query, dns_message_t *msg, bool headers) {
|
||||
bool did_flag = false;
|
||||
dns_rdataset_t *opt, *tsig = NULL;
|
||||
const dns_name_t *tsigname;
|
||||
isc_result_t result = ISC_R_SUCCESS;
|
||||
@@ -424,7 +427,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
sizeof(sockstr));
|
||||
printf("Address: %s\n", sockstr);
|
||||
printf("Aliases: \n\n");
|
||||
printed_server = ISC_TRUE;
|
||||
printed_server = true;
|
||||
}
|
||||
|
||||
if (msg->rcode != 0) {
|
||||
@@ -456,22 +459,22 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
dns_name_copy(query->lookup->name, name, NULL);
|
||||
chase_cnamechain(msg, name);
|
||||
dns_name_format(name, namestr, sizeof(namestr));
|
||||
lookup = clone_lookup(query->lookup, ISC_FALSE);
|
||||
lookup = clone_lookup(query->lookup, false);
|
||||
if (lookup != NULL) {
|
||||
strlcpy(lookup->textname, namestr,
|
||||
sizeof(lookup->textname));
|
||||
lookup->rdtype = dns_rdatatype_aaaa;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = true;
|
||||
lookup->origin = NULL;
|
||||
lookup->retries = tries;
|
||||
ISC_LIST_APPEND(lookup_list, lookup, link);
|
||||
}
|
||||
lookup = clone_lookup(query->lookup, ISC_FALSE);
|
||||
lookup = clone_lookup(query->lookup, false);
|
||||
if (lookup != NULL) {
|
||||
strlcpy(lookup->textname, namestr,
|
||||
sizeof(lookup->textname));
|
||||
lookup->rdtype = dns_rdatatype_mx;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = true;
|
||||
lookup->origin = NULL;
|
||||
lookup->retries = tries;
|
||||
ISC_LIST_APPEND(lookup_list, lookup, link);
|
||||
@@ -485,31 +488,31 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
printf(";; flags: ");
|
||||
if ((msg->flags & DNS_MESSAGEFLAG_QR) != 0) {
|
||||
printf("qr");
|
||||
did_flag = ISC_TRUE;
|
||||
did_flag = true;
|
||||
}
|
||||
if ((msg->flags & DNS_MESSAGEFLAG_AA) != 0) {
|
||||
printf("%saa", did_flag ? " " : "");
|
||||
did_flag = ISC_TRUE;
|
||||
did_flag = true;
|
||||
}
|
||||
if ((msg->flags & DNS_MESSAGEFLAG_TC) != 0) {
|
||||
printf("%stc", did_flag ? " " : "");
|
||||
did_flag = ISC_TRUE;
|
||||
did_flag = true;
|
||||
}
|
||||
if ((msg->flags & DNS_MESSAGEFLAG_RD) != 0) {
|
||||
printf("%srd", did_flag ? " " : "");
|
||||
did_flag = ISC_TRUE;
|
||||
did_flag = true;
|
||||
}
|
||||
if ((msg->flags & DNS_MESSAGEFLAG_RA) != 0) {
|
||||
printf("%sra", did_flag ? " " : "");
|
||||
did_flag = ISC_TRUE;
|
||||
did_flag = true;
|
||||
}
|
||||
if ((msg->flags & DNS_MESSAGEFLAG_AD) != 0) {
|
||||
printf("%sad", did_flag ? " " : "");
|
||||
did_flag = ISC_TRUE;
|
||||
did_flag = true;
|
||||
}
|
||||
if ((msg->flags & DNS_MESSAGEFLAG_CD) != 0) {
|
||||
printf("%scd", did_flag ? " " : "");
|
||||
did_flag = ISC_TRUE;
|
||||
did_flag = true;
|
||||
POST(did_flag);
|
||||
}
|
||||
printf("; QUERY: %u, ANSWER: %u, "
|
||||
@@ -532,7 +535,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
!short_form) {
|
||||
printf("\n");
|
||||
result = printsection(msg, DNS_SECTION_QUESTION, "QUESTION",
|
||||
ISC_TRUE, query);
|
||||
true, query);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
}
|
||||
@@ -540,7 +543,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
if (!short_form)
|
||||
printf("\n");
|
||||
result = printsection(msg, DNS_SECTION_ANSWER, "ANSWER",
|
||||
ISC_TF(!short_form), query);
|
||||
!short_form, query);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
}
|
||||
@@ -549,7 +552,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
!short_form) {
|
||||
printf("\n");
|
||||
result = printsection(msg, DNS_SECTION_AUTHORITY, "AUTHORITY",
|
||||
ISC_TRUE, query);
|
||||
true, query);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
}
|
||||
@@ -557,14 +560,14 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
!short_form) {
|
||||
printf("\n");
|
||||
result = printsection(msg, DNS_SECTION_ADDITIONAL,
|
||||
"ADDITIONAL", ISC_TRUE, query);
|
||||
"ADDITIONAL", true, query);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
}
|
||||
if ((tsig != NULL) && !short_form) {
|
||||
printf("\n");
|
||||
result = printrdata(msg, tsig, tsigname,
|
||||
"PSEUDOSECTION TSIG", ISC_TRUE);
|
||||
"PSEUDOSECTION TSIG", true);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
}
|
||||
@@ -599,7 +602,7 @@ pre_parse_args(int argc, char **argv) {
|
||||
while ((c = isc_commandline_parse(argc, argv, optstring)) != -1) {
|
||||
switch (c) {
|
||||
case 'm':
|
||||
memdebugging = ISC_TRUE;
|
||||
memdebugging = true;
|
||||
if (strcasecmp("trace", isc_commandline_argument) == 0)
|
||||
isc_mem_debugging |= ISC_MEM_DEBUGTRACE;
|
||||
else if (strcasecmp("record",
|
||||
@@ -613,12 +616,12 @@ pre_parse_args(int argc, char **argv) {
|
||||
case '4':
|
||||
if (ipv6only)
|
||||
fatal("only one of -4 and -6 allowed");
|
||||
ipv4only = ISC_TRUE;
|
||||
ipv4only = true;
|
||||
break;
|
||||
case '6':
|
||||
if (ipv4only)
|
||||
fatal("only one of -4 and -6 allowed");
|
||||
ipv6only = ISC_TRUE;
|
||||
ipv6only = true;
|
||||
break;
|
||||
case 'a': break;
|
||||
case 'A': break;
|
||||
@@ -639,8 +642,8 @@ pre_parse_args(int argc, char **argv) {
|
||||
case 'C': break;
|
||||
case 'D':
|
||||
if (debugging)
|
||||
debugtiming = ISC_TRUE;
|
||||
debugging = ISC_TRUE;
|
||||
debugtiming = true;
|
||||
debugging = true;
|
||||
break;
|
||||
case 'N': break;
|
||||
case 'R': break;
|
||||
@@ -650,12 +653,12 @@ pre_parse_args(int argc, char **argv) {
|
||||
show_usage();
|
||||
}
|
||||
}
|
||||
isc_commandline_reset = ISC_TRUE;
|
||||
isc_commandline_reset = true;
|
||||
isc_commandline_index = 1;
|
||||
}
|
||||
|
||||
static void
|
||||
parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
|
||||
parse_args(bool is_batchfile, int argc, char **argv) {
|
||||
char hostname[MXNAME];
|
||||
dig_lookup_t *lookup;
|
||||
int c;
|
||||
@@ -664,30 +667,30 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
|
||||
isc_result_t result = ISC_R_SUCCESS;
|
||||
dns_rdatatype_t rdtype;
|
||||
dns_rdataclass_t rdclass;
|
||||
isc_uint32_t serial = 0;
|
||||
uint32_t serial = 0;
|
||||
|
||||
UNUSED(is_batchfile);
|
||||
|
||||
lookup = make_empty_lookup();
|
||||
|
||||
lookup->servfail_stops = ISC_FALSE;
|
||||
lookup->comments = ISC_FALSE;
|
||||
lookup->servfail_stops = false;
|
||||
lookup->comments = false;
|
||||
short_form = !verbose;
|
||||
|
||||
while ((c = isc_commandline_parse(argc, argv, optstring)) != -1) {
|
||||
switch (c) {
|
||||
case 'l':
|
||||
lookup->tcp_mode = ISC_TRUE;
|
||||
lookup->tcp_mode = true;
|
||||
lookup->rdtype = dns_rdatatype_axfr;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = true;
|
||||
fatalexit = 3;
|
||||
break;
|
||||
case 'v':
|
||||
case 'd':
|
||||
short_form = ISC_FALSE;
|
||||
short_form = false;
|
||||
break;
|
||||
case 'r':
|
||||
lookup->recurse = ISC_FALSE;
|
||||
lookup->recurse = false;
|
||||
break;
|
||||
case 't':
|
||||
if (strncasecmp(isc_commandline_argument,
|
||||
@@ -712,23 +715,23 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
|
||||
if (!lookup->rdtypeset ||
|
||||
lookup->rdtype != dns_rdatatype_axfr)
|
||||
lookup->rdtype = rdtype;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = true;
|
||||
if (rdtype == dns_rdatatype_axfr) {
|
||||
/* -l -t any -v */
|
||||
list_type = dns_rdatatype_any;
|
||||
short_form = ISC_FALSE;
|
||||
lookup->tcp_mode = ISC_TRUE;
|
||||
short_form = false;
|
||||
lookup->tcp_mode = true;
|
||||
} else if (rdtype == dns_rdatatype_ixfr) {
|
||||
lookup->ixfr_serial = serial;
|
||||
lookup->tcp_mode = ISC_TRUE;
|
||||
lookup->tcp_mode = true;
|
||||
list_type = rdtype;
|
||||
} else if (rdtype == dns_rdatatype_any) {
|
||||
if (!lookup->tcp_mode_set)
|
||||
lookup->tcp_mode = ISC_TRUE;
|
||||
lookup->tcp_mode = true;
|
||||
} else
|
||||
list_type = rdtype;
|
||||
list_addresses = ISC_FALSE;
|
||||
default_lookups = ISC_FALSE;
|
||||
list_addresses = false;
|
||||
default_lookups = false;
|
||||
break;
|
||||
case 'c':
|
||||
tr.base = isc_commandline_argument;
|
||||
@@ -742,25 +745,25 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
|
||||
isc_commandline_argument);
|
||||
} else {
|
||||
lookup->rdclass = rdclass;
|
||||
lookup->rdclassset = ISC_TRUE;
|
||||
lookup->rdclassset = true;
|
||||
}
|
||||
default_lookups = ISC_FALSE;
|
||||
default_lookups = false;
|
||||
break;
|
||||
case 'A':
|
||||
list_almost_all = ISC_TRUE;
|
||||
list_almost_all = true;
|
||||
/* FALL THROUGH */
|
||||
case 'a':
|
||||
if (!lookup->rdtypeset ||
|
||||
lookup->rdtype != dns_rdatatype_axfr)
|
||||
lookup->rdtype = dns_rdatatype_any;
|
||||
list_type = dns_rdatatype_any;
|
||||
list_addresses = ISC_FALSE;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
short_form = ISC_FALSE;
|
||||
default_lookups = ISC_FALSE;
|
||||
list_addresses = false;
|
||||
lookup->rdtypeset = true;
|
||||
short_form = false;
|
||||
default_lookups = false;
|
||||
break;
|
||||
case 'i':
|
||||
lookup->ip6_int = ISC_TRUE;
|
||||
lookup->ip6_int = true;
|
||||
break;
|
||||
case 'n':
|
||||
/* deprecated */
|
||||
@@ -786,23 +789,23 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
|
||||
tries = 2;
|
||||
break;
|
||||
case 'T':
|
||||
lookup->tcp_mode = ISC_TRUE;
|
||||
lookup->tcp_mode_set = ISC_TRUE;
|
||||
lookup->tcp_mode = true;
|
||||
lookup->tcp_mode_set = true;
|
||||
break;
|
||||
case 'U':
|
||||
lookup->tcp_mode = ISC_FALSE;
|
||||
lookup->tcp_mode_set = ISC_TRUE;
|
||||
lookup->tcp_mode = false;
|
||||
lookup->tcp_mode_set = true;
|
||||
break;
|
||||
case 'C':
|
||||
debug("showing all SOAs");
|
||||
lookup->rdtype = dns_rdatatype_ns;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = true;
|
||||
lookup->rdclass = dns_rdataclass_in;
|
||||
lookup->rdclassset = ISC_TRUE;
|
||||
lookup->ns_search_only = ISC_TRUE;
|
||||
lookup->trace_root = ISC_TRUE;
|
||||
lookup->identify_previous_line = ISC_TRUE;
|
||||
default_lookups = ISC_FALSE;
|
||||
lookup->rdclassset = true;
|
||||
lookup->ns_search_only = true;
|
||||
lookup->trace_root = true;
|
||||
lookup->identify_previous_line = true;
|
||||
default_lookups = false;
|
||||
break;
|
||||
case 'N':
|
||||
debug("setting NDOTS to %s",
|
||||
@@ -819,7 +822,7 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
|
||||
/* Handled by pre_parse_args(). */
|
||||
break;
|
||||
case 's':
|
||||
lookup->servfail_stops = ISC_TRUE;
|
||||
lookup->servfail_stops = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -834,22 +837,22 @@ parse_args(isc_boolean_t is_batchfile, int argc, char **argv) {
|
||||
if (argc > isc_commandline_index + 1) {
|
||||
set_nameserver(argv[isc_commandline_index+1]);
|
||||
debug("server is %s", argv[isc_commandline_index+1]);
|
||||
listed_server = ISC_TRUE;
|
||||
listed_server = true;
|
||||
} else
|
||||
check_ra = ISC_TRUE;
|
||||
check_ra = true;
|
||||
|
||||
lookup->pending = ISC_FALSE;
|
||||
lookup->pending = false;
|
||||
if (get_reverse(store, sizeof(store), hostname,
|
||||
lookup->ip6_int, ISC_TRUE) == ISC_R_SUCCESS) {
|
||||
lookup->ip6_int, true) == ISC_R_SUCCESS) {
|
||||
strlcpy(lookup->textname, store, sizeof(lookup->textname));
|
||||
lookup->rdtype = dns_rdatatype_ptr;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
default_lookups = ISC_FALSE;
|
||||
lookup->rdtypeset = true;
|
||||
default_lookups = false;
|
||||
} else {
|
||||
strlcpy(lookup->textname, hostname, sizeof(lookup->textname));
|
||||
usesearch = ISC_TRUE;
|
||||
usesearch = true;
|
||||
}
|
||||
lookup->new_search = ISC_TRUE;
|
||||
lookup->new_search = true;
|
||||
ISC_LIST_APPEND(lookup_list, lookup, link);
|
||||
}
|
||||
|
||||
@@ -878,7 +881,7 @@ main(int argc, char **argv) {
|
||||
check_result(result, "isc_app_start");
|
||||
setup_libs();
|
||||
setup_system(ipv4only, ipv6only);
|
||||
parse_args(ISC_FALSE, argc, argv);
|
||||
parse_args(false, argc, argv);
|
||||
if (keyfile[0] != 0)
|
||||
setup_file_key();
|
||||
else if (keysecret[0] != 0)
|
||||
|
||||
+35
-33
@@ -14,11 +14,13 @@
|
||||
|
||||
/*! \file */
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <dns/rdatalist.h>
|
||||
|
||||
#include <dst/dst.h>
|
||||
|
||||
#include <isc/boolean.h>
|
||||
#include <isc/buffer.h>
|
||||
#include <isc/bufferlist.h>
|
||||
#include <isc/formatcheck.h>
|
||||
@@ -81,7 +83,7 @@ typedef struct dig_searchlist dig_searchlist_t;
|
||||
|
||||
/*% The dig_lookup structure */
|
||||
struct dig_lookup {
|
||||
isc_boolean_t
|
||||
bool
|
||||
pending, /*%< Pending a successful answer */
|
||||
waiting_connect,
|
||||
doing_xfr,
|
||||
@@ -139,8 +141,8 @@ struct dig_lookup {
|
||||
dns_rdatatype_t rdtype;
|
||||
dns_rdatatype_t qrdtype;
|
||||
dns_rdataclass_t rdclass;
|
||||
isc_boolean_t rdtypeset;
|
||||
isc_boolean_t rdclassset;
|
||||
bool rdtypeset;
|
||||
bool rdclassset;
|
||||
char name_space[BUFSIZE];
|
||||
char oname_space[BUFSIZE];
|
||||
isc_buffer_t namebuf;
|
||||
@@ -158,17 +160,17 @@ struct dig_lookup {
|
||||
dig_serverlist_t my_server_list;
|
||||
dig_searchlist_t *origin;
|
||||
dig_query_t *xfr_q;
|
||||
isc_uint32_t retries;
|
||||
uint32_t retries;
|
||||
int nsfound;
|
||||
isc_uint16_t udpsize;
|
||||
isc_int16_t edns;
|
||||
isc_int16_t padding;
|
||||
isc_uint32_t ixfr_serial;
|
||||
uint16_t udpsize;
|
||||
int16_t edns;
|
||||
int16_t padding;
|
||||
uint32_t ixfr_serial;
|
||||
isc_buffer_t rdatabuf;
|
||||
char rdatastore[MXNAME];
|
||||
dst_context_t *tsigctx;
|
||||
isc_buffer_t *querysig;
|
||||
isc_uint32_t msgcounter;
|
||||
uint32_t msgcounter;
|
||||
dns_fixedname_t fdomain;
|
||||
isc_sockaddr_t *ecs_addr;
|
||||
char *cookie;
|
||||
@@ -184,7 +186,7 @@ struct dig_lookup {
|
||||
/*% The dig_query structure */
|
||||
struct dig_query {
|
||||
dig_lookup_t *lookup;
|
||||
isc_boolean_t waiting_connect,
|
||||
bool waiting_connect,
|
||||
pending_free,
|
||||
waiting_senddone,
|
||||
first_pass,
|
||||
@@ -194,11 +196,11 @@ struct dig_query {
|
||||
recv_made,
|
||||
warn_id,
|
||||
timedout;
|
||||
isc_uint32_t first_rr_serial;
|
||||
isc_uint32_t second_rr_serial;
|
||||
isc_uint32_t msg_count;
|
||||
isc_uint32_t rr_count;
|
||||
isc_boolean_t ixfr_axfr;
|
||||
uint32_t first_rr_serial;
|
||||
uint32_t second_rr_serial;
|
||||
uint32_t msg_count;
|
||||
uint32_t rr_count;
|
||||
bool ixfr_axfr;
|
||||
char *servname;
|
||||
char *userarg;
|
||||
isc_bufferlist_t sendlist,
|
||||
@@ -216,7 +218,7 @@ struct dig_query {
|
||||
isc_sockaddr_t sockaddr;
|
||||
isc_time_t time_sent;
|
||||
isc_time_t time_recv;
|
||||
isc_uint64_t byte_count;
|
||||
uint64_t byte_count;
|
||||
isc_buffer_t sendbuf;
|
||||
isc_timer_t *timer;
|
||||
};
|
||||
@@ -244,7 +246,7 @@ extern dig_serverlist_t server_list;
|
||||
extern dig_searchlistlist_t search_list;
|
||||
extern unsigned int extrabytes;
|
||||
|
||||
extern isc_boolean_t check_ra, have_ipv4, have_ipv6, specified_source,
|
||||
extern bool check_ra, have_ipv4, have_ipv6, specified_source,
|
||||
usesearch, showsearch;
|
||||
extern in_port_t port;
|
||||
extern unsigned int timeout;
|
||||
@@ -260,17 +262,17 @@ extern char keysecret[MXNAME];
|
||||
extern const dns_name_t *hmacname;
|
||||
extern unsigned int digestbits;
|
||||
extern dns_tsigkey_t *tsigkey;
|
||||
extern isc_boolean_t validated;
|
||||
extern bool validated;
|
||||
extern isc_taskmgr_t *taskmgr;
|
||||
extern isc_task_t *global_task;
|
||||
extern isc_boolean_t free_now;
|
||||
extern isc_boolean_t debugging, debugtiming, memdebugging;
|
||||
extern isc_boolean_t keep_open;
|
||||
extern bool free_now;
|
||||
extern bool debugging, debugtiming, memdebugging;
|
||||
extern bool keep_open;
|
||||
|
||||
extern char *progname;
|
||||
extern int tries;
|
||||
extern int fatalexit;
|
||||
extern isc_boolean_t verbose;
|
||||
extern bool verbose;
|
||||
|
||||
/*
|
||||
* Routines in dighost.c.
|
||||
@@ -282,8 +284,8 @@ int
|
||||
getaddresses(dig_lookup_t *lookup, const char *host, isc_result_t *resultp);
|
||||
|
||||
isc_result_t
|
||||
get_reverse(char *reverse, size_t len, char *value, isc_boolean_t ip6_int,
|
||||
isc_boolean_t strict);
|
||||
get_reverse(char *reverse, size_t len, char *value, bool ip6_int,
|
||||
bool strict);
|
||||
|
||||
ISC_PLATFORM_NORETURN_PRE void
|
||||
fatal(const char *format, ...)
|
||||
@@ -302,7 +304,7 @@ debug(const char *format, ...) ISC_FORMAT_PRINTF(1, 2);
|
||||
void
|
||||
check_result(isc_result_t result, const char *msg);
|
||||
|
||||
isc_boolean_t
|
||||
bool
|
||||
setup_lookup(dig_lookup_t *lookup);
|
||||
|
||||
void
|
||||
@@ -324,14 +326,14 @@ void
|
||||
setup_libs(void);
|
||||
|
||||
void
|
||||
setup_system(isc_boolean_t ipv4only, isc_boolean_t ipv6only);
|
||||
setup_system(bool ipv4only, bool ipv6only);
|
||||
|
||||
isc_result_t
|
||||
parse_uint(isc_uint32_t *uip, const char *value, isc_uint32_t max,
|
||||
parse_uint(uint32_t *uip, const char *value, uint32_t max,
|
||||
const char *desc);
|
||||
|
||||
isc_result_t
|
||||
parse_xint(isc_uint32_t *uip, const char *value, isc_uint32_t max,
|
||||
parse_xint(uint32_t *uip, const char *value, uint32_t max,
|
||||
const char *desc);
|
||||
|
||||
isc_result_t
|
||||
@@ -341,13 +343,13 @@ void
|
||||
parse_hmac(const char *hmacstr);
|
||||
|
||||
dig_lookup_t *
|
||||
requeue_lookup(dig_lookup_t *lookold, isc_boolean_t servers);
|
||||
requeue_lookup(dig_lookup_t *lookold, bool servers);
|
||||
|
||||
dig_lookup_t *
|
||||
make_empty_lookup(void);
|
||||
|
||||
dig_lookup_t *
|
||||
clone_lookup(dig_lookup_t *lookold, isc_boolean_t servers);
|
||||
clone_lookup(dig_lookup_t *lookold, bool servers);
|
||||
|
||||
dig_server_t *
|
||||
make_server(const char *servname, const char *userarg);
|
||||
@@ -376,7 +378,7 @@ set_search_domain(char *domain);
|
||||
* then assigned to the appropriate function pointer
|
||||
*/
|
||||
extern isc_result_t
|
||||
(*dighost_printmessage)(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers);
|
||||
(*dighost_printmessage)(dig_query_t *query, dns_message_t *msg, bool headers);
|
||||
/*%<
|
||||
* Print the final result of the lookup.
|
||||
*/
|
||||
@@ -418,7 +420,7 @@ dig_setup(int argc, char **argv);
|
||||
* Call to supply new parameters for the next lookup
|
||||
*/
|
||||
void
|
||||
dig_query_setup(isc_boolean_t, isc_boolean_t, int argc, char **argv);
|
||||
dig_query_setup(bool, bool, int argc, char **argv);
|
||||
|
||||
/*%<
|
||||
* set the main application event cycle running
|
||||
|
||||
+88
-86
@@ -11,6 +11,8 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
|
||||
@@ -53,18 +55,18 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
static isc_boolean_t short_form = ISC_TRUE,
|
||||
tcpmode = ISC_FALSE, tcpmode_set = ISC_FALSE,
|
||||
identify = ISC_FALSE, stats = ISC_TRUE,
|
||||
comments = ISC_TRUE, section_question = ISC_TRUE,
|
||||
section_answer = ISC_TRUE, section_authority = ISC_TRUE,
|
||||
section_additional = ISC_TRUE, recurse = ISC_TRUE,
|
||||
aaonly = ISC_FALSE, nofail = ISC_TRUE,
|
||||
default_lookups = ISC_TRUE, a_noanswer = ISC_FALSE;
|
||||
static bool short_form = true,
|
||||
tcpmode = false, tcpmode_set = false,
|
||||
identify = false, stats = true,
|
||||
comments = true, section_question = true,
|
||||
section_answer = true, section_authority = true,
|
||||
section_additional = true, recurse = true,
|
||||
aaonly = false, nofail = true,
|
||||
default_lookups = true, a_noanswer = false;
|
||||
|
||||
static isc_boolean_t interactive;
|
||||
static bool interactive;
|
||||
|
||||
static isc_boolean_t in_use = ISC_FALSE;
|
||||
static bool in_use = false;
|
||||
static char defclass[MXRD] = "IN";
|
||||
static char deftype[MXRD] = "A";
|
||||
static isc_event_t *global_event = NULL;
|
||||
@@ -213,7 +215,7 @@ printrdata(dns_rdata_t *rdata) {
|
||||
isc_result_t result;
|
||||
isc_buffer_t *b = NULL;
|
||||
unsigned int size = 1024;
|
||||
isc_boolean_t done = ISC_FALSE;
|
||||
bool done = false;
|
||||
|
||||
if (rdata->type < N_KNOWN_RRTYPES)
|
||||
printf("%s", rtypetext[rdata->type]);
|
||||
@@ -228,7 +230,7 @@ printrdata(dns_rdata_t *rdata) {
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
printf("%.*s\n", (int)isc_buffer_usedlength(b),
|
||||
(char *)isc_buffer_base(b));
|
||||
done = ISC_TRUE;
|
||||
done = true;
|
||||
} else if (result != ISC_R_NOSPACE)
|
||||
check_result(result, "dns_rdata_totext");
|
||||
isc_buffer_free(&b);
|
||||
@@ -237,7 +239,7 @@ printrdata(dns_rdata_t *rdata) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
printsection(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers,
|
||||
printsection(dig_query_t *query, dns_message_t *msg, bool headers,
|
||||
dns_section_t section) {
|
||||
isc_result_t result, loopresult;
|
||||
dns_name_t *name;
|
||||
@@ -304,7 +306,7 @@ printsection(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers,
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
detailsection(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers,
|
||||
detailsection(dig_query_t *query, dns_message_t *msg, bool headers,
|
||||
dns_section_t section) {
|
||||
isc_result_t result, loopresult;
|
||||
dns_name_t *name;
|
||||
@@ -429,7 +431,7 @@ chase_cnamechain(dns_message_t *msg, dns_name_t *qname) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
printmessage(dig_query_t *query, dns_message_t *msg, bool headers) {
|
||||
char servtext[ISC_SOCKADDR_FORMATSIZE];
|
||||
|
||||
/* I've we've gotten this far, we've reached a server. */
|
||||
@@ -448,10 +450,10 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
if (!short_form) {
|
||||
puts("------------");
|
||||
/* detailheader(query, msg);*/
|
||||
detailsection(query, msg, ISC_TRUE, DNS_SECTION_QUESTION);
|
||||
detailsection(query, msg, ISC_TRUE, DNS_SECTION_ANSWER);
|
||||
detailsection(query, msg, ISC_TRUE, DNS_SECTION_AUTHORITY);
|
||||
detailsection(query, msg, ISC_TRUE, DNS_SECTION_ADDITIONAL);
|
||||
detailsection(query, msg, true, DNS_SECTION_QUESTION);
|
||||
detailsection(query, msg, true, DNS_SECTION_ANSWER);
|
||||
detailsection(query, msg, true, DNS_SECTION_AUTHORITY);
|
||||
detailsection(query, msg, true, DNS_SECTION_ADDITIONAL);
|
||||
puts("------------");
|
||||
}
|
||||
|
||||
@@ -479,12 +481,12 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
dns_name_copy(query->lookup->name, name, NULL);
|
||||
chase_cnamechain(msg, name);
|
||||
dns_name_format(name, namestr, sizeof(namestr));
|
||||
lookup = clone_lookup(query->lookup, ISC_FALSE);
|
||||
lookup = clone_lookup(query->lookup, false);
|
||||
if (lookup != NULL) {
|
||||
strlcpy(lookup->textname, namestr,
|
||||
sizeof(lookup->textname));
|
||||
lookup->rdtype = dns_rdatatype_aaaa;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = true;
|
||||
lookup->origin = NULL;
|
||||
lookup->retries = tries;
|
||||
ISC_LIST_APPEND(lookup_list, lookup, link);
|
||||
@@ -498,7 +500,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
printsection(query, msg, headers, DNS_SECTION_ANSWER);
|
||||
else {
|
||||
if (default_lookups && query->lookup->rdtype == dns_rdatatype_a)
|
||||
a_noanswer = ISC_TRUE;
|
||||
a_noanswer = true;
|
||||
|
||||
else if (!default_lookups ||
|
||||
(query->lookup->rdtype == dns_rdatatype_aaaa &&
|
||||
@@ -520,7 +522,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
}
|
||||
|
||||
static void
|
||||
show_settings(isc_boolean_t full, isc_boolean_t serv_only) {
|
||||
show_settings(bool full, bool serv_only) {
|
||||
dig_server_t *srv;
|
||||
isc_sockaddr_t sockaddr;
|
||||
dig_searchlist_t *listent;
|
||||
@@ -565,7 +567,7 @@ show_settings(isc_boolean_t full, isc_boolean_t serv_only) {
|
||||
printf("\n");
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
testtype(char *typetext) {
|
||||
isc_result_t result;
|
||||
isc_textregion_t tr;
|
||||
@@ -575,14 +577,14 @@ testtype(char *typetext) {
|
||||
tr.length = strlen(typetext);
|
||||
result = dns_rdatatype_fromtext(&rdtype, &tr);
|
||||
if (result == ISC_R_SUCCESS)
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
else {
|
||||
printf("unknown query type: %s\n", typetext);
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
testclass(char *typetext) {
|
||||
isc_result_t result;
|
||||
isc_textregion_t tr;
|
||||
@@ -592,24 +594,24 @@ testclass(char *typetext) {
|
||||
tr.length = strlen(typetext);
|
||||
result = dns_rdataclass_fromtext(&rdclass, &tr);
|
||||
if (result == ISC_R_SUCCESS)
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
else {
|
||||
printf("unknown query class: %s\n", typetext);
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
set_port(const char *value) {
|
||||
isc_uint32_t n;
|
||||
uint32_t n;
|
||||
isc_result_t result = parse_uint(&n, value, 65535, "port");
|
||||
if (result == ISC_R_SUCCESS)
|
||||
port = (isc_uint16_t) n;
|
||||
port = (uint16_t) n;
|
||||
}
|
||||
|
||||
static void
|
||||
set_timeout(const char *value) {
|
||||
isc_uint32_t n;
|
||||
uint32_t n;
|
||||
isc_result_t result = parse_uint(&n, value, UINT_MAX, "timeout");
|
||||
if (result == ISC_R_SUCCESS)
|
||||
timeout = n;
|
||||
@@ -617,7 +619,7 @@ set_timeout(const char *value) {
|
||||
|
||||
static void
|
||||
set_tries(const char *value) {
|
||||
isc_uint32_t n;
|
||||
uint32_t n;
|
||||
isc_result_t result = parse_uint(&n, value, INT_MAX, "tries");
|
||||
if (result == ISC_R_SUCCESS)
|
||||
tries = n;
|
||||
@@ -625,7 +627,7 @@ set_tries(const char *value) {
|
||||
|
||||
static void
|
||||
set_ndots(const char *value) {
|
||||
isc_uint32_t n;
|
||||
uint32_t n;
|
||||
isc_result_t result = parse_uint(&n, value, 128, "ndots");
|
||||
if (result == ISC_R_SUCCESS)
|
||||
ndots = n;
|
||||
@@ -644,7 +646,7 @@ setoption(char *opt) {
|
||||
((l >= N) && (l < sizeof(A)) && (strncasecmp(opt, A, l) == 0))
|
||||
|
||||
if (CHECKOPT("all", 3)) {
|
||||
show_settings(ISC_TRUE, ISC_FALSE);
|
||||
show_settings(true, false);
|
||||
} else if (strncasecmp(opt, "class=", 6) == 0) {
|
||||
if (testclass(&opt[6]))
|
||||
strlcpy(defclass, &opt[6], sizeof(defclass));
|
||||
@@ -654,41 +656,41 @@ setoption(char *opt) {
|
||||
} else if (strncasecmp(opt, "type=", 5) == 0) {
|
||||
if (testtype(&opt[5])) {
|
||||
strlcpy(deftype, &opt[5], sizeof(deftype));
|
||||
default_lookups = ISC_FALSE;
|
||||
default_lookups = false;
|
||||
}
|
||||
} else if (strncasecmp(opt, "ty=", 3) == 0) {
|
||||
if (testtype(&opt[3])) {
|
||||
strlcpy(deftype, &opt[3], sizeof(deftype));
|
||||
default_lookups = ISC_FALSE;
|
||||
default_lookups = false;
|
||||
}
|
||||
} else if (strncasecmp(opt, "querytype=", 10) == 0) {
|
||||
if (testtype(&opt[10])) {
|
||||
strlcpy(deftype, &opt[10], sizeof(deftype));
|
||||
default_lookups = ISC_FALSE;
|
||||
default_lookups = false;
|
||||
}
|
||||
} else if (strncasecmp(opt, "query=", 6) == 0) {
|
||||
if (testtype(&opt[6])) {
|
||||
strlcpy(deftype, &opt[6], sizeof(deftype));
|
||||
default_lookups = ISC_FALSE;
|
||||
default_lookups = false;
|
||||
}
|
||||
} else if (strncasecmp(opt, "qu=", 3) == 0) {
|
||||
if (testtype(&opt[3])) {
|
||||
strlcpy(deftype, &opt[3], sizeof(deftype));
|
||||
default_lookups = ISC_FALSE;
|
||||
default_lookups = false;
|
||||
}
|
||||
} else if (strncasecmp(opt, "q=", 2) == 0) {
|
||||
if (testtype(&opt[2])) {
|
||||
strlcpy(deftype, &opt[2], sizeof(deftype));
|
||||
default_lookups = ISC_FALSE;
|
||||
default_lookups = false;
|
||||
}
|
||||
} else if (strncasecmp(opt, "domain=", 7) == 0) {
|
||||
strlcpy(domainopt, &opt[7], sizeof(domainopt));
|
||||
set_search_domain(domainopt);
|
||||
usesearch = ISC_TRUE;
|
||||
usesearch = true;
|
||||
} else if (strncasecmp(opt, "do=", 3) == 0) {
|
||||
strlcpy(domainopt, &opt[3], sizeof(domainopt));
|
||||
set_search_domain(domainopt);
|
||||
usesearch = ISC_TRUE;
|
||||
usesearch = true;
|
||||
} else if (strncasecmp(opt, "port=", 5) == 0) {
|
||||
set_port(&opt[5]);
|
||||
} else if (strncasecmp(opt, "po=", 3) == 0) {
|
||||
@@ -698,43 +700,43 @@ setoption(char *opt) {
|
||||
} else if (strncasecmp(opt, "t=", 2) == 0) {
|
||||
set_timeout(&opt[2]);
|
||||
} else if (CHECKOPT("recurse", 3)) {
|
||||
recurse = ISC_TRUE;
|
||||
recurse = true;
|
||||
} else if (CHECKOPT("norecurse", 5)) {
|
||||
recurse = ISC_FALSE;
|
||||
recurse = false;
|
||||
} else if (strncasecmp(opt, "retry=", 6) == 0) {
|
||||
set_tries(&opt[6]);
|
||||
} else if (strncasecmp(opt, "ret=", 4) == 0) {
|
||||
set_tries(&opt[4]);
|
||||
} else if (CHECKOPT("defname", 3)) {
|
||||
usesearch = ISC_TRUE;
|
||||
usesearch = true;
|
||||
} else if (CHECKOPT("nodefname", 5)) {
|
||||
usesearch = ISC_FALSE;
|
||||
usesearch = false;
|
||||
} else if (CHECKOPT("vc", 2)) {
|
||||
tcpmode = ISC_TRUE;
|
||||
tcpmode_set = ISC_TRUE;
|
||||
tcpmode = true;
|
||||
tcpmode_set = true;
|
||||
} else if (CHECKOPT("novc", 4)) {
|
||||
tcpmode = ISC_FALSE;
|
||||
tcpmode_set = ISC_TRUE;
|
||||
tcpmode = false;
|
||||
tcpmode_set = true;
|
||||
} else if (CHECKOPT("debug", 3)) {
|
||||
short_form = ISC_FALSE;
|
||||
showsearch = ISC_TRUE;
|
||||
short_form = false;
|
||||
showsearch = true;
|
||||
} else if (CHECKOPT("nodebug", 5)) {
|
||||
short_form = ISC_TRUE;
|
||||
showsearch = ISC_FALSE;
|
||||
short_form = true;
|
||||
showsearch = false;
|
||||
} else if (CHECKOPT("d2", 2)) {
|
||||
debugging = ISC_TRUE;
|
||||
debugging = true;
|
||||
} else if (CHECKOPT("nod2", 4)) {
|
||||
debugging = ISC_FALSE;
|
||||
debugging = false;
|
||||
} else if (CHECKOPT("search", 3)) {
|
||||
usesearch = ISC_TRUE;
|
||||
usesearch = true;
|
||||
} else if (CHECKOPT("nosearch", 5)) {
|
||||
usesearch = ISC_FALSE;
|
||||
usesearch = false;
|
||||
} else if (CHECKOPT("sil", 3)) {
|
||||
/* deprecation_msg = ISC_FALSE; */
|
||||
/* deprecation_msg = false; */
|
||||
} else if (CHECKOPT("fail", 3)) {
|
||||
nofail=ISC_FALSE;
|
||||
nofail=false;
|
||||
} else if (CHECKOPT("nofail", 5)) {
|
||||
nofail=ISC_TRUE;
|
||||
nofail=true;
|
||||
} else if (strncasecmp(opt, "ndots=", 6) == 0) {
|
||||
set_ndots(&opt[6]);
|
||||
} else {
|
||||
@@ -753,7 +755,7 @@ addlookup(char *opt) {
|
||||
|
||||
debug("addlookup()");
|
||||
|
||||
a_noanswer = ISC_FALSE;
|
||||
a_noanswer = false;
|
||||
|
||||
tr.base = deftype;
|
||||
tr.length = strlen(deftype);
|
||||
@@ -770,21 +772,21 @@ addlookup(char *opt) {
|
||||
rdclass = dns_rdataclass_in;
|
||||
}
|
||||
lookup = make_empty_lookup();
|
||||
if (get_reverse(store, sizeof(store), opt, lookup->ip6_int, ISC_TRUE)
|
||||
if (get_reverse(store, sizeof(store), opt, lookup->ip6_int, true)
|
||||
== ISC_R_SUCCESS) {
|
||||
strlcpy(lookup->textname, store, sizeof(lookup->textname));
|
||||
lookup->rdtype = dns_rdatatype_ptr;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = true;
|
||||
} else {
|
||||
strlcpy(lookup->textname, opt, sizeof(lookup->textname));
|
||||
lookup->rdtype = rdtype;
|
||||
lookup->rdtypeset = ISC_TRUE;
|
||||
lookup->rdtypeset = true;
|
||||
}
|
||||
lookup->rdclass = rdclass;
|
||||
lookup->rdclassset = ISC_TRUE;
|
||||
lookup->trace = ISC_FALSE;
|
||||
lookup->rdclassset = true;
|
||||
lookup->trace = false;
|
||||
lookup->trace_root = lookup->trace;
|
||||
lookup->ns_search_only = ISC_FALSE;
|
||||
lookup->ns_search_only = false;
|
||||
lookup->identify = identify;
|
||||
lookup->recurse = recurse;
|
||||
lookup->aaonly = aaonly;
|
||||
@@ -792,7 +794,7 @@ addlookup(char *opt) {
|
||||
lookup->udpsize = 0;
|
||||
lookup->comments = comments;
|
||||
if (lookup->rdtype == dns_rdatatype_any && !tcpmode_set)
|
||||
lookup->tcp_mode = ISC_TRUE;
|
||||
lookup->tcp_mode = true;
|
||||
else
|
||||
lookup->tcp_mode = tcpmode;
|
||||
lookup->stats = stats;
|
||||
@@ -800,9 +802,9 @@ addlookup(char *opt) {
|
||||
lookup->section_answer = section_answer;
|
||||
lookup->section_authority = section_authority;
|
||||
lookup->section_additional = section_additional;
|
||||
lookup->new_search = ISC_TRUE;
|
||||
lookup->new_search = true;
|
||||
if (nofail)
|
||||
lookup->servfail_stops = ISC_FALSE;
|
||||
lookup->servfail_stops = false;
|
||||
ISC_LIST_INIT(lookup->q);
|
||||
ISC_LINK_INIT(lookup, link);
|
||||
ISC_LIST_APPEND(lookup_list, lookup, link);
|
||||
@@ -826,11 +828,11 @@ do_next_command(char *input) {
|
||||
(strcasecmp(ptr, "lserver") == 0)) {
|
||||
isc_app_block();
|
||||
set_nameserver(arg);
|
||||
check_ra = ISC_FALSE;
|
||||
check_ra = false;
|
||||
isc_app_unblock();
|
||||
show_settings(ISC_TRUE, ISC_TRUE);
|
||||
show_settings(true, true);
|
||||
} else if (strcasecmp(ptr, "exit") == 0) {
|
||||
in_use = ISC_FALSE;
|
||||
in_use = false;
|
||||
} else if (strcasecmp(ptr, "help") == 0 ||
|
||||
strcasecmp(ptr, "?") == 0) {
|
||||
printf("The '%s' command is not yet implemented.\n", ptr);
|
||||
@@ -867,7 +869,7 @@ get_next_command(void) {
|
||||
ptr = fgets(buf, COMMSIZE, stdin);
|
||||
isc_app_unblock();
|
||||
if (ptr == NULL) {
|
||||
in_use = ISC_FALSE;
|
||||
in_use = false;
|
||||
} else
|
||||
do_next_command(ptr);
|
||||
#ifdef HAVE_READLINE
|
||||
@@ -879,9 +881,9 @@ get_next_command(void) {
|
||||
|
||||
static void
|
||||
parse_args(int argc, char **argv) {
|
||||
isc_boolean_t have_lookup = ISC_FALSE;
|
||||
bool have_lookup = false;
|
||||
|
||||
usesearch = ISC_TRUE;
|
||||
usesearch = true;
|
||||
for (argc--, argv++; argc > 0; argc--, argv++) {
|
||||
debug("main parsing %s", argv[0]);
|
||||
if (argv[0][0] == '-') {
|
||||
@@ -891,15 +893,15 @@ parse_args(int argc, char **argv) {
|
||||
} else if (argv[0][1] != 0) {
|
||||
setoption(&argv[0][1]);
|
||||
} else
|
||||
have_lookup = ISC_TRUE;
|
||||
have_lookup = true;
|
||||
} else {
|
||||
if (!have_lookup) {
|
||||
have_lookup = ISC_TRUE;
|
||||
in_use = ISC_TRUE;
|
||||
have_lookup = true;
|
||||
in_use = true;
|
||||
addlookup(argv[0]);
|
||||
} else {
|
||||
set_nameserver(argv[0]);
|
||||
check_ra = ISC_FALSE;
|
||||
check_ra = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -970,13 +972,13 @@ int
|
||||
main(int argc, char **argv) {
|
||||
isc_result_t result;
|
||||
|
||||
interactive = ISC_TF(isatty(0));
|
||||
interactive = isatty(0);
|
||||
|
||||
ISC_LIST_INIT(lookup_list);
|
||||
ISC_LIST_INIT(server_list);
|
||||
ISC_LIST_INIT(search_list);
|
||||
|
||||
check_ra = ISC_TRUE;
|
||||
check_ra = true;
|
||||
|
||||
/* setup dighost callbacks */
|
||||
dighost_printmessage = printmessage;
|
||||
@@ -990,7 +992,7 @@ main(int argc, char **argv) {
|
||||
setup_libs();
|
||||
progname = argv[0];
|
||||
|
||||
setup_system(ISC_FALSE, ISC_FALSE);
|
||||
setup_system(false, false);
|
||||
parse_args(argc, argv);
|
||||
if (keyfile[0] != 0)
|
||||
setup_file_key();
|
||||
@@ -1004,7 +1006,7 @@ main(int argc, char **argv) {
|
||||
else
|
||||
result = isc_app_onrun(mctx, global_task, getinput, NULL);
|
||||
check_result(result, "isc_app_onrun");
|
||||
in_use = ISC_TF(!in_use);
|
||||
in_use = !in_use;
|
||||
|
||||
(void)isc_app_run();
|
||||
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -79,7 +79,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -77,7 +77,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -79,7 +79,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@USE_READLINE_STATIC;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;USE_READLINE_STATIC;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -79,7 +79,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@USE_READLINE_STATIC;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;USE_READLINE_STATIC;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -15,15 +15,14 @@ VERSION=@BIND9_VERSION@
|
||||
|
||||
@BIND9_MAKE_INCLUDES@
|
||||
|
||||
CINCLUDES = ${DNS_INCLUDES} ${ISC_INCLUDES} @DST_OPENSSL_INC@
|
||||
CINCLUDES = ${DNS_INCLUDES} ${ISC_INCLUDES} @OPENSSL_INCLUDES@
|
||||
|
||||
CDEFINES = -DVERSION=\"${VERSION}\" @USE_PKCS11@ @PKCS11_ENGINE@ \
|
||||
-DPK11_LIB_LOCATION=\"@PKCS11_PROVIDER@\"
|
||||
CDEFINES = -DVERSION=\"${VERSION}\"
|
||||
CWARNINGS =
|
||||
|
||||
DNSLIBS = ../../lib/dns/libdns.@A@ @DNS_CRYPTO_LIBS@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @OPENSSL_LIBS@
|
||||
|
||||
DNSDEPLIBS = ../../lib/dns/libdns.@A@
|
||||
ISCDEPLIBS = ../../lib/isc/libisc.@A@
|
||||
|
||||
+48
-46
@@ -19,6 +19,8 @@
|
||||
#include <config.h>
|
||||
|
||||
#include <errno.h>
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <isc/buffer.h>
|
||||
@@ -53,7 +55,7 @@
|
||||
|
||||
#include <dst/dst.h>
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
#include <pk11/result.h>
|
||||
#endif
|
||||
|
||||
@@ -84,7 +86,7 @@ static dns_rdataclass_t rdclass = dns_rdataclass_in;
|
||||
* List of digest types used by ds_from_cdnskey(), filled in by add_dtype()
|
||||
* from -a arguments. The size of the array is an arbitrary limit.
|
||||
*/
|
||||
static isc_uint8_t dtype[8];
|
||||
static uint8_t dtype[8];
|
||||
|
||||
static const char *startstr = NULL; /* from which we derive notbefore */
|
||||
static isc_stdtime_t notbefore = 0; /* restrict sig inception times */
|
||||
@@ -127,7 +129,7 @@ static int nkey; /* number of child zone DNSKEY records */
|
||||
typedef struct keyinfo {
|
||||
dns_rdata_t rdata;
|
||||
dst_key_t *dst;
|
||||
isc_uint8_t algo;
|
||||
uint8_t algo;
|
||||
dns_keytag_t tag;
|
||||
} keyinfo_t;
|
||||
|
||||
@@ -258,7 +260,7 @@ load_db(const char *filename, dns_db_t **dbp, dns_dbnode_t **nodep) {
|
||||
isc_result_totext(result));
|
||||
}
|
||||
|
||||
result = dns_db_findnode(*dbp, name, ISC_FALSE, nodep);
|
||||
result = dns_db_findnode(*dbp, name, false, nodep);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
fatal("can't find %s node in %s", namestr, filename);
|
||||
}
|
||||
@@ -312,7 +314,7 @@ get_dsset_name(char *filename, size_t size,
|
||||
}
|
||||
isc_buffer_putstr(&buf, prefix);
|
||||
|
||||
result = dns_name_tofilenametext(name, ISC_FALSE, &buf);
|
||||
result = dns_name_tofilenametext(name, false, &buf);
|
||||
check_result(result, "dns_name_tofilenametext()");
|
||||
if (isc_buffer_availablelength(&buf) == 0) {
|
||||
fatal("%s: pathname too long", path);
|
||||
@@ -400,7 +402,7 @@ formatset(dns_rdataset_t *rdataset) {
|
||||
|
||||
static void
|
||||
write_parent_set(const char *path, const char *inplace,
|
||||
isc_boolean_t nsupdate, dns_rdataset_t *rdataset)
|
||||
bool nsupdate, dns_rdataset_t *rdataset)
|
||||
{
|
||||
isc_result_t result;
|
||||
isc_buffer_t *buf = NULL;
|
||||
@@ -467,7 +469,7 @@ typedef enum { LOOSE, TIGHT } strictness_t;
|
||||
/*
|
||||
* Find out if any (C)DS record matches a particular (C)DNSKEY.
|
||||
*/
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
match_key_dsset(keyinfo_t *ki, dns_rdataset_t *dsset, strictness_t strictness)
|
||||
{
|
||||
isc_result_t result;
|
||||
@@ -481,7 +483,7 @@ match_key_dsset(keyinfo_t *ki, dns_rdataset_t *dsset, strictness_t strictness)
|
||||
dns_rdata_t dsrdata = DNS_RDATA_INIT;
|
||||
dns_rdata_t newdsrdata = DNS_RDATA_INIT;
|
||||
dns_rdatatype_t keytype;
|
||||
isc_boolean_t c;
|
||||
bool c;
|
||||
|
||||
dns_rdataset_current(dsset, &dsrdata);
|
||||
result = dns_rdata_tostruct(&dsrdata, &ds, NULL);
|
||||
@@ -511,13 +513,13 @@ match_key_dsset(keyinfo_t *ki, dns_rdataset_t *dsset, strictness_t strictness)
|
||||
vbprintf(1, "found matching %s %d %d %d\n",
|
||||
c ? "CDS" : "DS",
|
||||
ds.key_tag, ds.algorithm, ds.digest_type);
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
} else if (strictness == TIGHT) {
|
||||
vbprintf(0, "key does not match %s %d %d %d "
|
||||
"when it looks like it should\n",
|
||||
c ? "CDS" : "DS",
|
||||
ds.key_tag, ds.algorithm, ds.digest_type);
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -528,7 +530,7 @@ match_key_dsset(keyinfo_t *ki, dns_rdataset_t *dsset, strictness_t strictness)
|
||||
? "CDNSKEY" : "DNSKEY",
|
||||
ki->tag, ki->algo);
|
||||
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -617,12 +619,12 @@ free_keytable(keyinfo_t **keytable_p) {
|
||||
* otherwise the key algorithm. This is used by the signature coverage
|
||||
* check functions below.
|
||||
*/
|
||||
static isc_uint8_t *
|
||||
static uint8_t *
|
||||
matching_sigs(keyinfo_t *keytbl, dns_rdataset_t *rdataset,
|
||||
dns_rdataset_t *sigset)
|
||||
{
|
||||
isc_result_t result;
|
||||
isc_uint8_t *algo;
|
||||
uint8_t *algo;
|
||||
int i;
|
||||
|
||||
algo = isc_mem_get(mctx, nkey);
|
||||
@@ -668,7 +670,7 @@ matching_sigs(keyinfo_t *keytbl, dns_rdataset_t *rdataset,
|
||||
}
|
||||
|
||||
result = dns_dnssec_verify(name, rdataset, ki->dst,
|
||||
ISC_FALSE, 0, mctx,
|
||||
false, 0, mctx,
|
||||
&sigrdata, NULL);
|
||||
|
||||
if (result != ISC_R_SUCCESS &&
|
||||
@@ -704,13 +706,13 @@ matching_sigs(keyinfo_t *keytbl, dns_rdataset_t *rdataset,
|
||||
* Consume the result of matching_sigs(). When checking records
|
||||
* fetched from the child zone, any working signature is enough.
|
||||
*/
|
||||
static isc_boolean_t
|
||||
signed_loose(isc_uint8_t *algo) {
|
||||
isc_boolean_t ok = ISC_FALSE;
|
||||
static bool
|
||||
signed_loose(uint8_t *algo) {
|
||||
bool ok = false;
|
||||
int i;
|
||||
for (i = 0; i < nkey; i++) {
|
||||
if (algo[i] != 0) {
|
||||
ok = ISC_TRUE;
|
||||
ok = true;
|
||||
}
|
||||
}
|
||||
isc_mem_put(mctx, algo, nkey);
|
||||
@@ -723,10 +725,10 @@ signed_loose(isc_uint8_t *algo) {
|
||||
* key algorithm in the DS RRset must have a signature in the DNSKEY
|
||||
* RRset.
|
||||
*/
|
||||
static isc_boolean_t
|
||||
signed_strict(dns_rdataset_t *dsset, isc_uint8_t *algo) {
|
||||
static bool
|
||||
signed_strict(dns_rdataset_t *dsset, uint8_t *algo) {
|
||||
isc_result_t result;
|
||||
isc_boolean_t all_ok = ISC_TRUE;
|
||||
bool all_ok = true;
|
||||
|
||||
for (result = dns_rdataset_first(dsset);
|
||||
result == ISC_R_SUCCESS;
|
||||
@@ -734,23 +736,23 @@ signed_strict(dns_rdataset_t *dsset, isc_uint8_t *algo) {
|
||||
{
|
||||
dns_rdata_t dsrdata = DNS_RDATA_INIT;
|
||||
dns_rdata_ds_t ds;
|
||||
isc_boolean_t ds_ok;
|
||||
bool ds_ok;
|
||||
int i;
|
||||
|
||||
dns_rdataset_current(dsset, &dsrdata);
|
||||
result = dns_rdata_tostruct(&dsrdata, &ds, NULL);
|
||||
check_result(result, "dns_rdata_tostruct(DS)");
|
||||
|
||||
ds_ok = ISC_FALSE;
|
||||
ds_ok = false;
|
||||
for (i = 0; i < nkey; i++) {
|
||||
if (algo[i] == ds.algorithm) {
|
||||
ds_ok = ISC_TRUE;
|
||||
ds_ok = true;
|
||||
}
|
||||
}
|
||||
if (!ds_ok) {
|
||||
vbprintf(0, "missing signature for algorithm %d "
|
||||
"(key %d)\n", ds.algorithm, ds.key_tag);
|
||||
all_ok = ISC_FALSE;
|
||||
all_ok = false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -848,14 +850,14 @@ ds_from_cdnskey(dns_rdatalist_t *dslist, isc_buffer_t *buf,
|
||||
*/
|
||||
static int
|
||||
cmp_dtype(const void *ap, const void *bp) {
|
||||
int a = *(const isc_uint8_t *)ap;
|
||||
int b = *(const isc_uint8_t *)bp;
|
||||
int a = *(const uint8_t *)ap;
|
||||
int b = *(const uint8_t *)bp;
|
||||
return (a - b);
|
||||
}
|
||||
|
||||
static void
|
||||
add_dtype(const char *dn) {
|
||||
isc_uint8_t dt;
|
||||
uint8_t dt;
|
||||
unsigned i, n;
|
||||
|
||||
dt = strtodsdigest(dn);
|
||||
@@ -872,7 +874,7 @@ add_dtype(const char *dn) {
|
||||
|
||||
static void
|
||||
make_new_ds_set(ds_maker_func_t *ds_from_rdata,
|
||||
isc_uint32_t ttl, dns_rdataset_t *rdset)
|
||||
uint32_t ttl, dns_rdataset_t *rdset)
|
||||
{
|
||||
unsigned int size = 16;
|
||||
for (;;) {
|
||||
@@ -934,14 +936,14 @@ rdata_cmp(const void *rdata1, const void *rdata2) {
|
||||
* Ensure that every key identified by the DS RRset has the same set of
|
||||
* digest types.
|
||||
*/
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
consistent_digests(dns_rdataset_t *dsset) {
|
||||
isc_result_t result;
|
||||
dns_rdata_t *arrdata;
|
||||
dns_rdata_ds_t *ds;
|
||||
dns_keytag_t key_tag;
|
||||
isc_uint8_t algorithm;
|
||||
isc_boolean_t match;
|
||||
uint8_t algorithm;
|
||||
bool match;
|
||||
int i, j, n, d;
|
||||
|
||||
/*
|
||||
@@ -995,7 +997,7 @@ consistent_digests(dns_rdataset_t *dsset) {
|
||||
/*
|
||||
* Check subsequent keys match the first one
|
||||
*/
|
||||
match = ISC_TRUE;
|
||||
match = true;
|
||||
while (i < n) {
|
||||
key_tag = ds[i].key_tag;
|
||||
algorithm = ds[i].algorithm;
|
||||
@@ -1004,7 +1006,7 @@ consistent_digests(dns_rdataset_t *dsset) {
|
||||
ds[i+j].algorithm != algorithm ||
|
||||
ds[i+j].digest_type != ds[j].digest_type)
|
||||
{
|
||||
match = ISC_FALSE;
|
||||
match = false;
|
||||
}
|
||||
}
|
||||
i += d;
|
||||
@@ -1039,7 +1041,7 @@ print_diff(const char *cmd, dns_rdataset_t *rdataset) {
|
||||
}
|
||||
|
||||
static void
|
||||
update_diff(const char *cmd, isc_uint32_t ttl,
|
||||
update_diff(const char *cmd, uint32_t ttl,
|
||||
dns_rdataset_t *addset, dns_rdataset_t *delset)
|
||||
{
|
||||
isc_result_t result;
|
||||
@@ -1047,7 +1049,7 @@ update_diff(const char *cmd, isc_uint32_t ttl,
|
||||
dns_dbnode_t *node;
|
||||
dns_dbversion_t *ver;
|
||||
dns_rdataset_t diffset;
|
||||
isc_uint32_t save;
|
||||
uint32_t save;
|
||||
|
||||
db = NULL;
|
||||
result = dns_db_create(mctx, "rbt", name, dns_dbtype_zone,
|
||||
@@ -1059,7 +1061,7 @@ update_diff(const char *cmd, isc_uint32_t ttl,
|
||||
check_result(result, "dns_db_newversion()");
|
||||
|
||||
node = NULL;
|
||||
result = dns_db_findnode(db, name, ISC_TRUE, &node);
|
||||
result = dns_db_findnode(db, name, true, &node);
|
||||
check_result(result, "dns_db_findnode()");
|
||||
|
||||
dns_rdataset_init(&diffset);
|
||||
@@ -1083,12 +1085,12 @@ update_diff(const char *cmd, isc_uint32_t ttl,
|
||||
}
|
||||
|
||||
dns_db_detachnode(db, &node);
|
||||
dns_db_closeversion(db, &ver, ISC_FALSE);
|
||||
dns_db_closeversion(db, &ver, false);
|
||||
dns_db_detach(&db);
|
||||
}
|
||||
|
||||
static void
|
||||
nsdiff(isc_uint32_t ttl, dns_rdataset_t *oldset, dns_rdataset_t *newset) {
|
||||
nsdiff(uint32_t ttl, dns_rdataset_t *oldset, dns_rdataset_t *newset) {
|
||||
if (ttl == 0) {
|
||||
vbprintf(1, "warning: no TTL in nsupdate script\n");
|
||||
}
|
||||
@@ -1136,9 +1138,9 @@ main(int argc, char *argv[]) {
|
||||
const char *ds_path = NULL;
|
||||
const char *inplace = NULL;
|
||||
isc_result_t result;
|
||||
isc_boolean_t prefer_cdnskey = ISC_FALSE;
|
||||
isc_boolean_t nsupdate = ISC_FALSE;
|
||||
isc_uint32_t ttl = 0;
|
||||
bool prefer_cdnskey = false;
|
||||
bool nsupdate = false;
|
||||
uint32_t ttl = 0;
|
||||
int ch;
|
||||
char *endp;
|
||||
|
||||
@@ -1147,12 +1149,12 @@ main(int argc, char *argv[]) {
|
||||
fatal("out of memory");
|
||||
}
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
pk11_result_register();
|
||||
#endif
|
||||
dns_result_register();
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
#define OPTIONS "a:c:Dd:f:i:ms:T:uv:V"
|
||||
while ((ch = isc_commandline_parse(argc, argv, OPTIONS)) != -1) {
|
||||
@@ -1164,7 +1166,7 @@ main(int argc, char *argv[]) {
|
||||
rdclass = strtoclass(isc_commandline_argument);
|
||||
break;
|
||||
case 'D':
|
||||
prefer_cdnskey = ISC_TRUE;
|
||||
prefer_cdnskey = true;
|
||||
break;
|
||||
case 'd':
|
||||
ds_path = isc_commandline_argument;
|
||||
@@ -1197,7 +1199,7 @@ main(int argc, char *argv[]) {
|
||||
ttl = strtottl(isc_commandline_argument);
|
||||
break;
|
||||
case 'u':
|
||||
nsupdate = ISC_TRUE;
|
||||
nsupdate = true;
|
||||
break;
|
||||
case 'V':
|
||||
/* Does not return. */
|
||||
|
||||
@@ -13,6 +13,8 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <isc/buffer.h>
|
||||
@@ -41,7 +43,7 @@
|
||||
|
||||
#include <dst/dst.h>
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
#include <pk11/result.h>
|
||||
#endif
|
||||
|
||||
@@ -58,8 +60,8 @@ static dns_rdataclass_t rdclass;
|
||||
static dns_fixedname_t fixed;
|
||||
static dns_name_t *name = NULL;
|
||||
static isc_mem_t *mctx = NULL;
|
||||
static isc_uint32_t ttl;
|
||||
static isc_boolean_t emitttl = ISC_FALSE;
|
||||
static uint32_t ttl;
|
||||
static bool emitttl = false;
|
||||
|
||||
static isc_result_t
|
||||
initname(char *setname) {
|
||||
@@ -118,7 +120,7 @@ loadset(const char *filename, dns_rdataset_t *rdataset) {
|
||||
isc_result_totext(result));
|
||||
}
|
||||
|
||||
result = dns_db_findnode(db, name, ISC_FALSE, &node);
|
||||
result = dns_db_findnode(db, name, false, &node);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("can't find %s node in %s", setname, filename);
|
||||
|
||||
@@ -159,7 +161,7 @@ loadkeyset(char *dirname, dns_rdataset_t *rdataset) {
|
||||
return (ISC_R_NOSPACE);
|
||||
isc_buffer_putstr(&buf, "keyset-");
|
||||
|
||||
result = dns_name_tofilenametext(name, ISC_FALSE, &buf);
|
||||
result = dns_name_tofilenametext(name, false, &buf);
|
||||
check_result(result, "dns_name_tofilenametext()");
|
||||
if (isc_buffer_availablelength(&buf) == 0)
|
||||
return (ISC_R_NOSPACE);
|
||||
@@ -233,8 +235,8 @@ logkey(dns_rdata_t *rdata)
|
||||
}
|
||||
|
||||
static void
|
||||
emit(unsigned int dtype, isc_boolean_t showall, char *lookaside,
|
||||
isc_boolean_t cds, dns_rdata_t *rdata)
|
||||
emit(unsigned int dtype, bool showall, char *lookaside,
|
||||
bool cds, dns_rdata_t *rdata)
|
||||
{
|
||||
isc_result_t result;
|
||||
unsigned char buf[DNS_DS_BUFFERSIZE];
|
||||
@@ -263,7 +265,7 @@ emit(unsigned int dtype, isc_boolean_t showall, char *lookaside,
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("can't build record");
|
||||
|
||||
result = dns_name_totext(name, ISC_FALSE, &nameb);
|
||||
result = dns_name_totext(name, false, &nameb);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("can't print name");
|
||||
|
||||
@@ -352,10 +354,10 @@ main(int argc, char **argv) {
|
||||
char *endp;
|
||||
int ch;
|
||||
unsigned int dtype = DNS_DSDIGEST_SHA1;
|
||||
isc_boolean_t cds = ISC_FALSE;
|
||||
isc_boolean_t both = ISC_TRUE;
|
||||
isc_boolean_t usekeyset = ISC_FALSE;
|
||||
isc_boolean_t showall = ISC_FALSE;
|
||||
bool cds = false;
|
||||
bool both = true;
|
||||
bool usekeyset = false;
|
||||
bool showall = false;
|
||||
isc_result_t result;
|
||||
isc_log_t *log = NULL;
|
||||
dns_rdataset_t rdataset;
|
||||
@@ -370,36 +372,36 @@ main(int argc, char **argv) {
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("out of memory");
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
pk11_result_register();
|
||||
#endif
|
||||
dns_result_register();
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
#define OPTIONS "12Aa:Cc:d:Ff:K:l:sT:v:hV"
|
||||
while ((ch = isc_commandline_parse(argc, argv, OPTIONS)) != -1) {
|
||||
switch (ch) {
|
||||
case '1':
|
||||
dtype = DNS_DSDIGEST_SHA1;
|
||||
both = ISC_FALSE;
|
||||
both = false;
|
||||
break;
|
||||
case '2':
|
||||
dtype = DNS_DSDIGEST_SHA256;
|
||||
both = ISC_FALSE;
|
||||
both = false;
|
||||
break;
|
||||
case 'A':
|
||||
showall = ISC_TRUE;
|
||||
showall = true;
|
||||
break;
|
||||
case 'a':
|
||||
dtype = strtodsdigest(isc_commandline_argument);
|
||||
both = ISC_FALSE;
|
||||
both = false;
|
||||
break;
|
||||
case 'C':
|
||||
if (lookaside != NULL)
|
||||
fatal("lookaside and CDS are mutually"
|
||||
" exclusive");
|
||||
cds = ISC_TRUE;
|
||||
cds = true;
|
||||
break;
|
||||
case 'c':
|
||||
classname = isc_commandline_argument;
|
||||
@@ -425,10 +427,10 @@ main(int argc, char **argv) {
|
||||
fatal("lookaside must be a non-empty string");
|
||||
break;
|
||||
case 's':
|
||||
usekeyset = ISC_TRUE;
|
||||
usekeyset = true;
|
||||
break;
|
||||
case 'T':
|
||||
emitttl = ISC_TRUE;
|
||||
emitttl = true;
|
||||
ttl = strtottl(isc_commandline_argument);
|
||||
break;
|
||||
case 'v':
|
||||
@@ -466,7 +468,7 @@ main(int argc, char **argv) {
|
||||
|
||||
/* When not using -f, -A is implicit */
|
||||
if (filename == NULL)
|
||||
showall = ISC_TRUE;
|
||||
showall = true;
|
||||
|
||||
if (argc < isc_commandline_index + 1 && filename == NULL)
|
||||
fatal("the key file name was not specified");
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <isc/buffer.h>
|
||||
@@ -41,7 +42,7 @@
|
||||
|
||||
#include <dst/dst.h>
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
#include <pk11/result.h>
|
||||
#endif
|
||||
|
||||
@@ -58,13 +59,13 @@ static dns_rdataclass_t rdclass;
|
||||
static dns_fixedname_t fixed;
|
||||
static dns_name_t *name = NULL;
|
||||
static isc_mem_t *mctx = NULL;
|
||||
static isc_boolean_t setpub = ISC_FALSE, setdel = ISC_FALSE;
|
||||
static isc_boolean_t setttl = ISC_FALSE;
|
||||
static bool setpub = false, setdel = false;
|
||||
static bool setttl = false;
|
||||
static isc_stdtime_t pub = 0, del = 0;
|
||||
static dns_ttl_t ttl = 0;
|
||||
static isc_stdtime_t syncadd = 0, syncdel = 0;
|
||||
static isc_boolean_t setsyncadd = ISC_FALSE;
|
||||
static isc_boolean_t setsyncdel = ISC_FALSE;
|
||||
static bool setsyncadd = false;
|
||||
static bool setsyncdel = false;
|
||||
|
||||
static isc_result_t
|
||||
initname(char *setname) {
|
||||
@@ -124,7 +125,7 @@ loadset(const char *filename, dns_rdataset_t *rdataset) {
|
||||
isc_result_totext(result));
|
||||
}
|
||||
|
||||
result = dns_db_findnode(db, name, ISC_FALSE, &node);
|
||||
result = dns_db_findnode(db, name, false, &node);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("can't find %s node in %s", setname, filename);
|
||||
|
||||
@@ -226,7 +227,7 @@ emit(const char *dir, dns_rdata_t *rdata) {
|
||||
dst_key_free(&tmp);
|
||||
}
|
||||
|
||||
dst_key_setexternal(key, ISC_TRUE);
|
||||
dst_key_setexternal(key, true);
|
||||
if (setpub)
|
||||
dst_key_settime(key, DST_TIME_PUBLISH, pub);
|
||||
if (setdel)
|
||||
@@ -310,12 +311,12 @@ main(int argc, char **argv) {
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("out of memory");
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
pk11_result_register();
|
||||
#endif
|
||||
dns_result_register();
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
#define CMDLINE_FLAGS "D:f:hK:L:P:v:V"
|
||||
while ((ch = isc_commandline_parse(argc, argv, CMDLINE_FLAGS)) != -1) {
|
||||
@@ -346,7 +347,7 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
case 'L':
|
||||
ttl = strtottl(isc_commandline_argument);
|
||||
setttl = ISC_TRUE;
|
||||
setttl = true;
|
||||
break;
|
||||
case 'P':
|
||||
/* -Psync ? */
|
||||
|
||||
@@ -14,6 +14,8 @@
|
||||
#include <config.h>
|
||||
|
||||
#include <ctype.h>
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <isc/buffer.h>
|
||||
@@ -37,7 +39,7 @@
|
||||
|
||||
#include <dst/dst.h>
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
#include <pk11/result.h>
|
||||
#endif
|
||||
|
||||
@@ -69,12 +71,9 @@ usage(void) {
|
||||
fprintf(stderr, " -3: use NSEC3-capable algorithm\n");
|
||||
fprintf(stderr, " -c class (default: IN)\n");
|
||||
fprintf(stderr, " -E <engine>:\n");
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
fprintf(stderr, " path to PKCS#11 provider library "
|
||||
"(default is %s)\n", PK11_LIB_LOCATION);
|
||||
#elif defined(USE_PKCS11)
|
||||
fprintf(stderr, " name of an OpenSSL engine to use "
|
||||
"(default is \"pkcs11\")\n");
|
||||
#else
|
||||
fprintf(stderr, " name of an OpenSSL engine to use\n");
|
||||
#endif
|
||||
@@ -124,19 +123,15 @@ main(int argc, char **argv) {
|
||||
const char *directory = NULL;
|
||||
const char *predecessor = NULL;
|
||||
dst_key_t *prevkey = NULL;
|
||||
#ifdef USE_PKCS11
|
||||
const char *engine = PKCS11_ENGINE;
|
||||
#else
|
||||
const char *engine = NULL;
|
||||
#endif
|
||||
char *classname = NULL;
|
||||
char *endp;
|
||||
dst_key_t *key = NULL;
|
||||
dns_fixedname_t fname;
|
||||
dns_name_t *name;
|
||||
isc_uint16_t flags = 0, kskflag = 0, revflag = 0;
|
||||
uint16_t flags = 0, kskflag = 0, revflag = 0;
|
||||
dns_secalg_t alg;
|
||||
isc_boolean_t oldstyle = ISC_FALSE;
|
||||
bool oldstyle = false;
|
||||
isc_mem_t *mctx = NULL;
|
||||
int ch;
|
||||
int protocol = -1, signatory = 0;
|
||||
@@ -153,32 +148,32 @@ main(int argc, char **argv) {
|
||||
isc_stdtime_t inactive = 0, deltime = 0;
|
||||
isc_stdtime_t now;
|
||||
int prepub = -1;
|
||||
isc_boolean_t setpub = ISC_FALSE, setact = ISC_FALSE;
|
||||
isc_boolean_t setrev = ISC_FALSE, setinact = ISC_FALSE;
|
||||
isc_boolean_t setdel = ISC_FALSE, setttl = 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 genonly = ISC_FALSE;
|
||||
isc_boolean_t use_nsec3 = ISC_FALSE;
|
||||
isc_boolean_t avoid_collisions = ISC_TRUE;
|
||||
isc_boolean_t exact;
|
||||
bool setpub = false, setact = false;
|
||||
bool setrev = false, setinact = false;
|
||||
bool setdel = false, setttl = false;
|
||||
bool unsetpub = false, unsetact = false;
|
||||
bool unsetrev = false, unsetinact = false;
|
||||
bool unsetdel = false;
|
||||
bool genonly = false;
|
||||
bool use_nsec3 = false;
|
||||
bool avoid_collisions = true;
|
||||
bool exact;
|
||||
unsigned char c;
|
||||
isc_stdtime_t syncadd = 0, syncdel = 0;
|
||||
isc_boolean_t unsetsyncadd = ISC_FALSE, setsyncadd = ISC_FALSE;
|
||||
isc_boolean_t unsetsyncdel = ISC_FALSE, setsyncdel = ISC_FALSE;
|
||||
bool unsetsyncadd = false, setsyncadd = false;
|
||||
bool unsetsyncdel = false, setsyncdel = false;
|
||||
|
||||
if (argc == 1)
|
||||
usage();
|
||||
|
||||
RUNTIME_CHECK(isc_mem_create(0, 0, &mctx) == ISC_R_SUCCESS);
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
pk11_result_register();
|
||||
#endif
|
||||
dns_result_register();
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
isc_stdtime_get(&now);
|
||||
|
||||
@@ -186,13 +181,13 @@ main(int argc, char **argv) {
|
||||
while ((ch = isc_commandline_parse(argc, argv, CMDLINE_FLAGS)) != -1) {
|
||||
switch (ch) {
|
||||
case '3':
|
||||
use_nsec3 = ISC_TRUE;
|
||||
use_nsec3 = true;
|
||||
break;
|
||||
case 'a':
|
||||
algname = isc_commandline_argument;
|
||||
break;
|
||||
case 'C':
|
||||
oldstyle = ISC_TRUE;
|
||||
oldstyle = true;
|
||||
break;
|
||||
case 'c':
|
||||
classname = isc_commandline_argument;
|
||||
@@ -222,7 +217,7 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
case 'L':
|
||||
ttl = strtottl(isc_commandline_argument);
|
||||
setttl = ISC_TRUE;
|
||||
setttl = true;
|
||||
break;
|
||||
case 'l':
|
||||
label = isc_mem_strdup(mctx, isc_commandline_argument);
|
||||
@@ -245,10 +240,10 @@ main(int argc, char **argv) {
|
||||
fatal("-v must be followed by a number");
|
||||
break;
|
||||
case 'y':
|
||||
avoid_collisions = ISC_FALSE;
|
||||
avoid_collisions = false;
|
||||
break;
|
||||
case 'G':
|
||||
genonly = ISC_TRUE;
|
||||
genonly = true;
|
||||
break;
|
||||
case 'P':
|
||||
/* -Psync ? */
|
||||
@@ -388,20 +383,10 @@ main(int argc, char **argv) {
|
||||
}
|
||||
|
||||
if (strcasecmp(algname, "RSA") == 0) {
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
fprintf(stderr, "The use of RSA (RSAMD5) is not "
|
||||
"recommended.\nIf you still wish to "
|
||||
"use RSA (RSAMD5) please specify "
|
||||
"\"-a RSAMD5\"\n");
|
||||
#else
|
||||
fprintf(stderr,
|
||||
"The use of RSA (RSAMD5) was disabled\n");
|
||||
if (freeit != NULL)
|
||||
free(freeit);
|
||||
return (1);
|
||||
} else if (strcasecmp(algname, "RSAMD5") == 0) {
|
||||
fprintf(stderr, "The use of RSAMD5 was disabled\n");
|
||||
#endif
|
||||
if (freeit != NULL)
|
||||
free(freeit);
|
||||
return (1);
|
||||
@@ -459,14 +444,14 @@ main(int argc, char **argv) {
|
||||
"prepublication interval.");
|
||||
|
||||
if (!setpub && !setact) {
|
||||
setpub = setact = ISC_TRUE;
|
||||
setpub = setact = true;
|
||||
publish = now;
|
||||
activate = now + prepub;
|
||||
} else if (setpub && !setact) {
|
||||
setact = ISC_TRUE;
|
||||
setact = true;
|
||||
activate = publish + prepub;
|
||||
} else if (setact && !setpub) {
|
||||
setpub = ISC_TRUE;
|
||||
setpub = true;
|
||||
publish = activate - prepub;
|
||||
}
|
||||
|
||||
@@ -512,11 +497,6 @@ main(int argc, char **argv) {
|
||||
alg = dst_key_alg(prevkey);
|
||||
flags = dst_key_flags(prevkey);
|
||||
|
||||
#ifdef PK11_MD5_DISABLE
|
||||
if (alg == DST_ALG_RSAMD5)
|
||||
fatal("Key %s uses disabled RSAMD5", predecessor);
|
||||
#endif
|
||||
|
||||
dst_key_format(prevkey, keystr, sizeof(keystr));
|
||||
dst_key_getprivateformat(prevkey, &major, &minor);
|
||||
if (major != DST_MAJOR_VERSION || minor < DST_MINOR_VERSION)
|
||||
@@ -554,7 +534,7 @@ main(int argc, char **argv) {
|
||||
"You can use dnssec-settime -D to "
|
||||
"change this.\n", program, keystr);
|
||||
|
||||
setpub = setact = ISC_TRUE;
|
||||
setpub = setact = true;
|
||||
}
|
||||
|
||||
if (nametype == NULL) {
|
||||
@@ -606,7 +586,7 @@ main(int argc, char **argv) {
|
||||
|
||||
/* associate the key */
|
||||
ret = dst_key_fromlabel(name, alg, flags, protocol, rdclass,
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
"pkcs11",
|
||||
#else
|
||||
engine,
|
||||
|
||||
+40
-60
@@ -28,6 +28,8 @@
|
||||
#include <config.h>
|
||||
|
||||
#include <ctype.h>
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
|
||||
@@ -52,7 +54,7 @@
|
||||
|
||||
#include <dst/dst.h>
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
#include <pk11/result.h>
|
||||
#endif
|
||||
|
||||
@@ -106,12 +108,9 @@ usage(void) {
|
||||
fprintf(stderr, " -c <class>: (default: IN)\n");
|
||||
fprintf(stderr, " -d <digest bits> (0 => max, default)\n");
|
||||
fprintf(stderr, " -E <engine>:\n");
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
fprintf(stderr, " path to PKCS#11 provider library "
|
||||
"(default is %s)\n", PK11_LIB_LOCATION);
|
||||
#elif defined(USE_PKCS11)
|
||||
fprintf(stderr, " name of an OpenSSL engine to use "
|
||||
"(default is \"pkcs11\")\n");
|
||||
#else
|
||||
fprintf(stderr, " name of an OpenSSL engine to use\n");
|
||||
#endif
|
||||
@@ -162,9 +161,9 @@ usage(void) {
|
||||
exit (-1);
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
dsa_size_ok(int size) {
|
||||
return (ISC_TF(size >= 512 && size <= 1024 && size % 64 == 0));
|
||||
return (size >= 512 && size <= 1024 && size % 64 == 0);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -201,10 +200,10 @@ main(int argc, char **argv) {
|
||||
dst_key_t *key = NULL;
|
||||
dns_fixedname_t fname;
|
||||
dns_name_t *name;
|
||||
isc_uint16_t flags = 0, kskflag = 0, revflag = 0;
|
||||
uint16_t flags = 0, kskflag = 0, revflag = 0;
|
||||
dns_secalg_t alg;
|
||||
isc_boolean_t conflict = ISC_FALSE, null_key = ISC_FALSE;
|
||||
isc_boolean_t oldstyle = ISC_FALSE;
|
||||
bool conflict = false, null_key = false;
|
||||
bool oldstyle = false;
|
||||
isc_mem_t *mctx = NULL;
|
||||
int ch, generator = 0, param = 0;
|
||||
int protocol = -1, size = -1, signatory = 0;
|
||||
@@ -216,43 +215,39 @@ main(int argc, char **argv) {
|
||||
dst_key_t *prevkey = NULL;
|
||||
isc_buffer_t buf;
|
||||
isc_log_t *log = NULL;
|
||||
#ifdef USE_PKCS11
|
||||
const char *engine = PKCS11_ENGINE;
|
||||
#else
|
||||
const char *engine = NULL;
|
||||
#endif
|
||||
dns_rdataclass_t rdclass;
|
||||
int options = DST_TYPE_PRIVATE | DST_TYPE_PUBLIC;
|
||||
int dbits = 0;
|
||||
dns_ttl_t ttl = 0;
|
||||
isc_boolean_t use_nsec3 = ISC_FALSE;
|
||||
bool use_nsec3 = false;
|
||||
isc_stdtime_t publish = 0, activate = 0, revokekey = 0;
|
||||
isc_stdtime_t inactive = 0, deltime = 0;
|
||||
isc_stdtime_t now;
|
||||
int prepub = -1;
|
||||
isc_boolean_t setpub = ISC_FALSE, setact = ISC_FALSE;
|
||||
isc_boolean_t setrev = ISC_FALSE, setinact = ISC_FALSE;
|
||||
isc_boolean_t setdel = ISC_FALSE, setttl = 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 genonly = ISC_FALSE;
|
||||
isc_boolean_t quiet = ISC_FALSE;
|
||||
isc_boolean_t show_progress = ISC_FALSE;
|
||||
bool setpub = false, setact = false;
|
||||
bool setrev = false, setinact = false;
|
||||
bool setdel = false, setttl = false;
|
||||
bool unsetpub = false, unsetact = false;
|
||||
bool unsetrev = false, unsetinact = false;
|
||||
bool unsetdel = false;
|
||||
bool genonly = false;
|
||||
bool quiet = false;
|
||||
bool show_progress = false;
|
||||
unsigned char c;
|
||||
isc_stdtime_t syncadd = 0, syncdel = 0;
|
||||
isc_boolean_t setsyncadd = ISC_FALSE;
|
||||
isc_boolean_t setsyncdel = ISC_FALSE;
|
||||
bool setsyncadd = false;
|
||||
bool setsyncdel = false;
|
||||
|
||||
if (argc == 1)
|
||||
usage();
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
pk11_result_register();
|
||||
#endif
|
||||
dns_result_register();
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
/*
|
||||
* Process memory debugging argument first.
|
||||
@@ -277,7 +272,7 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
isc_commandline_reset = ISC_TRUE;
|
||||
isc_commandline_reset = true;
|
||||
|
||||
RUNTIME_CHECK(isc_mem_create(0, 0, &mctx) == ISC_R_SUCCESS);
|
||||
|
||||
@@ -286,7 +281,7 @@ main(int argc, char **argv) {
|
||||
while ((ch = isc_commandline_parse(argc, argv, CMDLINE_FLAGS)) != -1) {
|
||||
switch (ch) {
|
||||
case '3':
|
||||
use_nsec3 = ISC_TRUE;
|
||||
use_nsec3 = true;
|
||||
break;
|
||||
case 'a':
|
||||
algname = isc_commandline_argument;
|
||||
@@ -297,7 +292,7 @@ main(int argc, char **argv) {
|
||||
fatal("-b requires a non-negative number");
|
||||
break;
|
||||
case 'C':
|
||||
oldstyle = ISC_TRUE;
|
||||
oldstyle = true;
|
||||
break;
|
||||
case 'c':
|
||||
classname = isc_commandline_argument;
|
||||
@@ -345,7 +340,7 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
case 'L':
|
||||
ttl = strtottl(isc_commandline_argument);
|
||||
setttl = ISC_TRUE;
|
||||
setttl = true;
|
||||
break;
|
||||
case 'n':
|
||||
nametype = isc_commandline_argument;
|
||||
@@ -359,7 +354,7 @@ main(int argc, char **argv) {
|
||||
"[0..255]");
|
||||
break;
|
||||
case 'q':
|
||||
quiet = ISC_TRUE;
|
||||
quiet = true;
|
||||
break;
|
||||
case 'r':
|
||||
fatal("The -r option has been deprecated.\n"
|
||||
@@ -396,7 +391,7 @@ main(int argc, char **argv) {
|
||||
/* already the default */
|
||||
break;
|
||||
case 'G':
|
||||
genonly = ISC_TRUE;
|
||||
genonly = true;
|
||||
break;
|
||||
case 'P':
|
||||
/* -Psync ? */
|
||||
@@ -490,7 +485,7 @@ main(int argc, char **argv) {
|
||||
}
|
||||
|
||||
if (!isatty(0))
|
||||
quiet = ISC_TRUE;
|
||||
quiet = true;
|
||||
|
||||
ret = dst_lib_init(mctx, engine);
|
||||
if (ret != ISC_R_SUCCESS)
|
||||
@@ -523,23 +518,12 @@ main(int argc, char **argv) {
|
||||
}
|
||||
|
||||
if (strcasecmp(algname, "RSA") == 0) {
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
fprintf(stderr, "The use of RSA (RSAMD5) is not "
|
||||
"recommended.\nIf you still wish to "
|
||||
"use RSA (RSAMD5) please specify "
|
||||
"\"-a RSAMD5\"\n");
|
||||
INSIST(freeit == NULL);
|
||||
return (1);
|
||||
#else
|
||||
fprintf(stderr,
|
||||
"The use of RSA (RSAMD5) was disabled\n");
|
||||
INSIST(freeit == NULL);
|
||||
return (1);
|
||||
} else if (strcasecmp(algname, "RSAMD5") == 0) {
|
||||
fprintf(stderr, "The use of RSAMD5 was disabled\n");
|
||||
INSIST(freeit == NULL);
|
||||
return (1);
|
||||
#endif
|
||||
} else {
|
||||
r.base = algname;
|
||||
r.length = strlen(algname);
|
||||
@@ -552,10 +536,6 @@ main(int argc, char **argv) {
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef PK11_MD5_DISABLE
|
||||
INSIST((alg != DNS_KEYALG_RSAMD5));
|
||||
#endif
|
||||
|
||||
if (!dst_algorithm_supported(alg)) {
|
||||
fatal("unsupported algorithm: %d", alg);
|
||||
}
|
||||
@@ -636,14 +616,14 @@ main(int argc, char **argv) {
|
||||
"prepublication interval.");
|
||||
|
||||
if (!setpub && !setact) {
|
||||
setpub = setact = ISC_TRUE;
|
||||
setpub = setact = true;
|
||||
publish = now;
|
||||
activate = now + prepub;
|
||||
} else if (setpub && !setact) {
|
||||
setact = ISC_TRUE;
|
||||
setact = true;
|
||||
activate = publish + prepub;
|
||||
} else if (setact && !setpub) {
|
||||
setpub = ISC_TRUE;
|
||||
setpub = true;
|
||||
publish = activate - prepub;
|
||||
}
|
||||
|
||||
@@ -729,7 +709,7 @@ main(int argc, char **argv) {
|
||||
"You can use dnssec-settime -D to "
|
||||
"change this.\n", program, keystr);
|
||||
|
||||
setpub = setact = ISC_TRUE;
|
||||
setpub = setact = true;
|
||||
}
|
||||
|
||||
switch (alg) {
|
||||
@@ -828,7 +808,7 @@ main(int argc, char **argv) {
|
||||
case DNS_KEYALG_NSEC3RSASHA1:
|
||||
case DNS_KEYALG_RSASHA256:
|
||||
case DNS_KEYALG_RSASHA512:
|
||||
show_progress = ISC_TRUE;
|
||||
show_progress = true;
|
||||
break;
|
||||
|
||||
case DNS_KEYALG_DH:
|
||||
@@ -842,17 +822,17 @@ main(int argc, char **argv) {
|
||||
case DST_ALG_ECDSA384:
|
||||
case DST_ALG_ED25519:
|
||||
case DST_ALG_ED448:
|
||||
show_progress = ISC_TRUE;
|
||||
show_progress = true;
|
||||
break;
|
||||
}
|
||||
|
||||
if ((flags & DNS_KEYFLAG_TYPEMASK) == DNS_KEYTYPE_NOKEY)
|
||||
null_key = ISC_TRUE;
|
||||
null_key = true;
|
||||
|
||||
isc_buffer_init(&buf, filename, sizeof(filename) - 1);
|
||||
|
||||
do {
|
||||
conflict = ISC_FALSE;
|
||||
conflict = false;
|
||||
|
||||
if (!quiet && show_progress) {
|
||||
fprintf(stderr, "Generating key pair.");
|
||||
@@ -973,7 +953,7 @@ main(int argc, char **argv) {
|
||||
* or another key being revoked.
|
||||
*/
|
||||
if (key_collision(key, name, directory, mctx, NULL)) {
|
||||
conflict = ISC_TRUE;
|
||||
conflict = true;
|
||||
if (null_key) {
|
||||
dst_key_free(&key);
|
||||
break;
|
||||
@@ -994,7 +974,7 @@ main(int argc, char **argv) {
|
||||
|
||||
dst_key_free(&key);
|
||||
}
|
||||
} while (conflict == ISC_TRUE);
|
||||
} while (conflict == true);
|
||||
|
||||
if (conflict)
|
||||
fatal("cannot generate a null key due to possible key ID "
|
||||
|
||||
+12
-17
@@ -13,6 +13,8 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
|
||||
@@ -30,7 +32,7 @@
|
||||
|
||||
#include <dst/dst.h>
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
#include <pk11/result.h>
|
||||
#endif
|
||||
|
||||
@@ -49,12 +51,9 @@ usage(void) {
|
||||
fprintf(stderr, "Usage:\n");
|
||||
fprintf(stderr, " %s [options] keyfile\n\n", program);
|
||||
fprintf(stderr, "Version: %s\n", VERSION);
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
fprintf(stderr, " -E engine: specify PKCS#11 provider "
|
||||
"(default: %s)\n", PK11_LIB_LOCATION);
|
||||
#elif defined(USE_PKCS11)
|
||||
fprintf(stderr, " -E engine: specify OpenSSL engine "
|
||||
"(default \"pkcs11\")\n");
|
||||
#else
|
||||
fprintf(stderr, " -E engine: specify OpenSSL engine\n");
|
||||
#endif
|
||||
@@ -75,11 +74,7 @@ usage(void) {
|
||||
int
|
||||
main(int argc, char **argv) {
|
||||
isc_result_t result;
|
||||
#ifdef USE_PKCS11
|
||||
const char *engine = PKCS11_ENGINE;
|
||||
#else
|
||||
const char *engine = NULL;
|
||||
#endif
|
||||
char const *filename = NULL;
|
||||
char *dir = NULL;
|
||||
char newname[1024], oldname[1024];
|
||||
@@ -87,11 +82,11 @@ main(int argc, char **argv) {
|
||||
char *endp;
|
||||
int ch;
|
||||
dst_key_t *key = NULL;
|
||||
isc_uint32_t flags;
|
||||
uint32_t flags;
|
||||
isc_buffer_t buf;
|
||||
isc_boolean_t force = ISC_FALSE;
|
||||
isc_boolean_t removefile = ISC_FALSE;
|
||||
isc_boolean_t id = ISC_FALSE;
|
||||
bool force = false;
|
||||
bool removefile = false;
|
||||
bool id = false;
|
||||
|
||||
if (argc == 1)
|
||||
usage();
|
||||
@@ -105,7 +100,7 @@ main(int argc, char **argv) {
|
||||
#endif
|
||||
dns_result_register();
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
while ((ch = isc_commandline_parse(argc, argv, "E:fK:rRhv:V")) != -1) {
|
||||
switch (ch) {
|
||||
@@ -113,7 +108,7 @@ main(int argc, char **argv) {
|
||||
engine = isc_commandline_argument;
|
||||
break;
|
||||
case 'f':
|
||||
force = ISC_TRUE;
|
||||
force = true;
|
||||
break;
|
||||
case 'K':
|
||||
/*
|
||||
@@ -127,10 +122,10 @@ main(int argc, char **argv) {
|
||||
}
|
||||
break;
|
||||
case 'r':
|
||||
removefile = ISC_TRUE;
|
||||
removefile = true;
|
||||
break;
|
||||
case 'R':
|
||||
id = ISC_TRUE;
|
||||
id = true;
|
||||
break;
|
||||
case 'v':
|
||||
verbose = strtol(isc_commandline_argument, &endp, 0);
|
||||
|
||||
+54
-56
@@ -13,6 +13,8 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <errno.h>
|
||||
@@ -33,7 +35,7 @@
|
||||
|
||||
#include <dst/dst.h>
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
#include <pk11/result.h>
|
||||
#endif
|
||||
|
||||
@@ -53,7 +55,7 @@ usage(void) {
|
||||
fprintf(stderr, " %s [options] keyfile\n\n", program);
|
||||
fprintf(stderr, "Version: %s\n", VERSION);
|
||||
fprintf(stderr, "General options:\n");
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
fprintf(stderr, " -E engine: specify PKCS#11 provider "
|
||||
"(default: %s)\n", PK11_LIB_LOCATION);
|
||||
#elif defined(USE_PKCS11)
|
||||
@@ -102,7 +104,7 @@ usage(void) {
|
||||
}
|
||||
|
||||
static void
|
||||
printtime(dst_key_t *key, int type, const char *tag, isc_boolean_t epoch,
|
||||
printtime(dst_key_t *key, int type, const char *tag, bool epoch,
|
||||
FILE *stream)
|
||||
{
|
||||
isc_result_t result;
|
||||
@@ -127,11 +129,7 @@ printtime(dst_key_t *key, int type, const char *tag, isc_boolean_t epoch,
|
||||
int
|
||||
main(int argc, char **argv) {
|
||||
isc_result_t result;
|
||||
#ifdef USE_PKCS11
|
||||
const char *engine = PKCS11_ENGINE;
|
||||
#else
|
||||
const char *engine = NULL;
|
||||
#endif
|
||||
const char *filename = NULL;
|
||||
char *directory = NULL;
|
||||
char newname[1024];
|
||||
@@ -145,29 +143,29 @@ main(int argc, char **argv) {
|
||||
dns_name_t *name = NULL;
|
||||
dns_secalg_t alg = 0;
|
||||
unsigned int size = 0;
|
||||
isc_uint16_t flags = 0;
|
||||
uint16_t flags = 0;
|
||||
int prepub = -1;
|
||||
dns_ttl_t ttl = 0;
|
||||
isc_stdtime_t now;
|
||||
isc_stdtime_t pub = 0, act = 0, rev = 0, inact = 0, del = 0;
|
||||
isc_stdtime_t prevact = 0, previnact = 0, prevdel = 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, setttl = 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;
|
||||
bool setpub = false, setact = false;
|
||||
bool setrev = false, setinact = false;
|
||||
bool setdel = false, setttl = false;
|
||||
bool unsetpub = false, unsetact = false;
|
||||
bool unsetrev = false, unsetinact = false;
|
||||
bool unsetdel = false;
|
||||
bool printcreate = false, printpub = false;
|
||||
bool printact = false, printrev = false;
|
||||
bool printinact = false, printdel = false;
|
||||
bool force = false;
|
||||
bool epoch = false;
|
||||
bool changed = false;
|
||||
isc_log_t *log = NULL;
|
||||
isc_stdtime_t syncadd = 0, syncdel = 0;
|
||||
isc_boolean_t unsetsyncadd = ISC_FALSE, setsyncadd = ISC_FALSE;
|
||||
isc_boolean_t unsetsyncdel = ISC_FALSE, setsyncdel = ISC_FALSE;
|
||||
isc_boolean_t printsyncadd = ISC_FALSE, printsyncdel = ISC_FALSE;
|
||||
bool unsetsyncadd = false, setsyncadd = false;
|
||||
bool unsetsyncdel = false, setsyncdel = false;
|
||||
bool printsyncadd = false, printsyncdel = false;
|
||||
|
||||
if (argc == 1)
|
||||
usage();
|
||||
@@ -178,12 +176,12 @@ main(int argc, char **argv) {
|
||||
|
||||
setup_logging(mctx, &log);
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
pk11_result_register();
|
||||
#endif
|
||||
dns_result_register();
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
isc_stdtime_get(&now);
|
||||
|
||||
@@ -194,51 +192,51 @@ main(int argc, char **argv) {
|
||||
engine = isc_commandline_argument;
|
||||
break;
|
||||
case 'f':
|
||||
force = ISC_TRUE;
|
||||
force = 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;
|
||||
printsyncadd = ISC_TRUE;
|
||||
printsyncdel = ISC_TRUE;
|
||||
printcreate = true;
|
||||
printpub = true;
|
||||
printact = true;
|
||||
printrev = true;
|
||||
printinact = true;
|
||||
printdel = true;
|
||||
printsyncadd = true;
|
||||
printsyncdel = true;
|
||||
break;
|
||||
}
|
||||
|
||||
do {
|
||||
switch (*p++) {
|
||||
case 'C':
|
||||
printcreate = ISC_TRUE;
|
||||
printcreate = true;
|
||||
break;
|
||||
case 'P':
|
||||
if (!strncmp(p, "sync", 4)) {
|
||||
p += 4;
|
||||
printsyncadd = ISC_TRUE;
|
||||
printsyncadd = true;
|
||||
break;
|
||||
}
|
||||
printpub = ISC_TRUE;
|
||||
printpub = true;
|
||||
break;
|
||||
case 'A':
|
||||
printact = ISC_TRUE;
|
||||
printact = true;
|
||||
break;
|
||||
case 'R':
|
||||
printrev = ISC_TRUE;
|
||||
printrev = true;
|
||||
break;
|
||||
case 'I':
|
||||
printinact = ISC_TRUE;
|
||||
printinact = true;
|
||||
break;
|
||||
case 'D':
|
||||
if (!strncmp(p, "sync", 4)) {
|
||||
p += 4;
|
||||
printsyncdel = ISC_TRUE;
|
||||
printsyncdel = true;
|
||||
break;
|
||||
}
|
||||
printdel = ISC_TRUE;
|
||||
printdel = true;
|
||||
break;
|
||||
case ' ':
|
||||
break;
|
||||
@@ -249,7 +247,7 @@ main(int argc, char **argv) {
|
||||
} while (*p != '\0');
|
||||
break;
|
||||
case 'u':
|
||||
epoch = ISC_TRUE;
|
||||
epoch = true;
|
||||
break;
|
||||
case 'K':
|
||||
/*
|
||||
@@ -265,7 +263,7 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
case 'L':
|
||||
ttl = strtottl(isc_commandline_argument);
|
||||
setttl = ISC_TRUE;
|
||||
setttl = true;
|
||||
break;
|
||||
case 'v':
|
||||
verbose = strtol(isc_commandline_argument, &endp, 0);
|
||||
@@ -279,7 +277,7 @@ main(int argc, char **argv) {
|
||||
fatal("-P sync specified more than "
|
||||
"once");
|
||||
|
||||
changed = ISC_TRUE;
|
||||
changed = true;
|
||||
syncadd = strtotime(isc_commandline_argument,
|
||||
now, now, &setsyncadd);
|
||||
unsetsyncadd = !setsyncadd;
|
||||
@@ -289,7 +287,7 @@ main(int argc, char **argv) {
|
||||
if (setpub || unsetpub)
|
||||
fatal("-P specified more than once");
|
||||
|
||||
changed = ISC_TRUE;
|
||||
changed = true;
|
||||
pub = strtotime(isc_commandline_argument,
|
||||
now, now, &setpub);
|
||||
unsetpub = !setpub;
|
||||
@@ -298,7 +296,7 @@ main(int argc, char **argv) {
|
||||
if (setact || unsetact)
|
||||
fatal("-A specified more than once");
|
||||
|
||||
changed = ISC_TRUE;
|
||||
changed = true;
|
||||
act = strtotime(isc_commandline_argument,
|
||||
now, now, &setact);
|
||||
unsetact = !setact;
|
||||
@@ -307,7 +305,7 @@ main(int argc, char **argv) {
|
||||
if (setrev || unsetrev)
|
||||
fatal("-R specified more than once");
|
||||
|
||||
changed = ISC_TRUE;
|
||||
changed = true;
|
||||
rev = strtotime(isc_commandline_argument,
|
||||
now, now, &setrev);
|
||||
unsetrev = !setrev;
|
||||
@@ -316,7 +314,7 @@ main(int argc, char **argv) {
|
||||
if (setinact || unsetinact)
|
||||
fatal("-I specified more than once");
|
||||
|
||||
changed = ISC_TRUE;
|
||||
changed = true;
|
||||
inact = strtotime(isc_commandline_argument,
|
||||
now, now, &setinact);
|
||||
unsetinact = !setinact;
|
||||
@@ -328,7 +326,7 @@ main(int argc, char **argv) {
|
||||
fatal("-D sync specified more than "
|
||||
"once");
|
||||
|
||||
changed = ISC_TRUE;
|
||||
changed = true;
|
||||
syncdel = strtotime(isc_commandline_argument,
|
||||
now, now, &setsyncdel);
|
||||
unsetsyncdel = !setsyncdel;
|
||||
@@ -339,7 +337,7 @@ main(int argc, char **argv) {
|
||||
if (setdel || unsetdel)
|
||||
fatal("-D specified more than once");
|
||||
|
||||
changed = ISC_TRUE;
|
||||
changed = true;
|
||||
del = strtotime(isc_commandline_argument,
|
||||
now, now, &setdel);
|
||||
unsetdel = !setdel;
|
||||
@@ -450,7 +448,7 @@ main(int argc, char **argv) {
|
||||
"before it is scheduled to be "
|
||||
"inactive.\n", program);
|
||||
|
||||
changed = setpub = setact = ISC_TRUE;
|
||||
changed = setpub = setact = true;
|
||||
} else {
|
||||
if (prepub < 0)
|
||||
prepub = 0;
|
||||
@@ -462,10 +460,10 @@ main(int argc, char **argv) {
|
||||
"prepublication interval.");
|
||||
|
||||
if (setpub && !setact) {
|
||||
setact = ISC_TRUE;
|
||||
setact = true;
|
||||
act = pub + prepub;
|
||||
} else if (setact && !setpub) {
|
||||
setpub = ISC_TRUE;
|
||||
setpub = true;
|
||||
pub = act - prepub;
|
||||
}
|
||||
|
||||
@@ -596,11 +594,11 @@ main(int argc, char **argv) {
|
||||
if (force && !changed) {
|
||||
dst_key_settime(key, DST_TIME_PUBLISH, now);
|
||||
dst_key_settime(key, DST_TIME_ACTIVATE, now);
|
||||
changed = ISC_TRUE;
|
||||
changed = true;
|
||||
}
|
||||
|
||||
if (!changed && setttl)
|
||||
changed = ISC_TRUE;
|
||||
changed = true;
|
||||
|
||||
/*
|
||||
* Print out time values, if -p was used.
|
||||
|
||||
+319
-236
File diff suppressed because it is too large
Load Diff
+15
-20
@@ -13,6 +13,7 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <time.h>
|
||||
|
||||
@@ -58,10 +59,11 @@
|
||||
#include <dns/result.h>
|
||||
#include <dns/soa.h>
|
||||
#include <dns/time.h>
|
||||
#include <dns/zoneverify.h>
|
||||
|
||||
#include <dst/dst.h>
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
#include <pk11/result.h>
|
||||
#endif
|
||||
|
||||
@@ -77,8 +79,8 @@ static dns_db_t *gdb; /* The database */
|
||||
static dns_dbversion_t *gversion; /* The database version */
|
||||
static dns_rdataclass_t gclass; /* The class */
|
||||
static dns_name_t *gorigin; /* The database origin */
|
||||
static isc_boolean_t ignore_kskflag = ISC_FALSE;
|
||||
static isc_boolean_t keyset_kskonly = ISC_FALSE;
|
||||
static bool ignore_kskflag = false;
|
||||
static bool keyset_kskonly = false;
|
||||
|
||||
/*%
|
||||
* Load the zone file from disk
|
||||
@@ -149,12 +151,9 @@ usage(void) {
|
||||
fprintf(stderr, "\t\tfile format of input zonefile (text)\n");
|
||||
fprintf(stderr, "\t-c class (IN)\n");
|
||||
fprintf(stderr, "\t-E engine:\n");
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
fprintf(stderr, "\t\tpath to PKCS#11 provider library "
|
||||
"(default is %s)\n", PK11_LIB_LOCATION);
|
||||
#elif defined(USE_PKCS11)
|
||||
fprintf(stderr, "\t\tname of an OpenSSL engine to use "
|
||||
"(default is \"pkcs11\")\n");
|
||||
#else
|
||||
fprintf(stderr, "\t\tname of an OpenSSL engine to use\n");
|
||||
#endif
|
||||
@@ -170,11 +169,7 @@ main(int argc, char *argv[]) {
|
||||
char *inputformatstr = NULL;
|
||||
isc_result_t result;
|
||||
isc_log_t *log = NULL;
|
||||
#ifdef USE_PKCS11
|
||||
const char *engine = PKCS11_ENGINE;
|
||||
#else
|
||||
const char *engine = NULL;
|
||||
#endif
|
||||
char *classname = NULL;
|
||||
dns_rdataclass_t rdclass;
|
||||
char *endp;
|
||||
@@ -204,19 +199,19 @@ main(int argc, char *argv[]) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
isc_commandline_reset = ISC_TRUE;
|
||||
isc_commandline_reset = true;
|
||||
check_result(isc_app_start(), "isc_app_start");
|
||||
|
||||
result = isc_mem_create(0, 0, &mctx);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("out of memory");
|
||||
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
pk11_result_register();
|
||||
#endif
|
||||
dns_result_register();
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
while ((ch = isc_commandline_parse(argc, argv, CMDLINE_FLAGS)) != -1) {
|
||||
switch (ch) {
|
||||
@@ -247,11 +242,11 @@ main(int argc, char *argv[]) {
|
||||
break;
|
||||
|
||||
case 'x':
|
||||
keyset_kskonly = ISC_TRUE;
|
||||
keyset_kskonly = true;
|
||||
break;
|
||||
|
||||
case 'z':
|
||||
ignore_kskflag = ISC_TRUE;
|
||||
ignore_kskflag = true;
|
||||
break;
|
||||
|
||||
case '?':
|
||||
@@ -322,10 +317,10 @@ main(int argc, char *argv[]) {
|
||||
result = dns_db_newversion(gdb, &gversion);
|
||||
check_result(result, "dns_db_newversion()");
|
||||
|
||||
verifyzone(gdb, gversion, gorigin, mctx,
|
||||
ignore_kskflag, keyset_kskonly);
|
||||
result = dns_zoneverify_dnssec(NULL, gdb, gversion, gorigin, NULL,
|
||||
mctx, ignore_kskflag, keyset_kskonly);
|
||||
|
||||
dns_db_closeversion(gdb, &gversion, ISC_FALSE);
|
||||
dns_db_closeversion(gdb, &gversion, false);
|
||||
dns_db_detach(&gdb);
|
||||
|
||||
cleanup_logging(&log);
|
||||
@@ -337,5 +332,5 @@ main(int argc, char *argv[]) {
|
||||
|
||||
(void) isc_app_finish();
|
||||
|
||||
return (0);
|
||||
return (result == ISC_R_SUCCESS ? 0 : 1);
|
||||
}
|
||||
|
||||
+23
-1356
File diff suppressed because it is too large
Load Diff
+8
-23
@@ -13,16 +13,14 @@
|
||||
#ifndef DNSSECTOOL_H
|
||||
#define DNSSECTOOL_H 1
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isc/log.h>
|
||||
#include <isc/stdtime.h>
|
||||
#include <dns/rdatastruct.h>
|
||||
#include <dst/dst.h>
|
||||
|
||||
#define check_dns_dbiterator_current(result) \
|
||||
check_result((result == DNS_R_NEWORIGIN) ? ISC_R_SUCCESS : result, \
|
||||
"dns_dbiterator_current()")
|
||||
|
||||
|
||||
typedef void (fatalcallback_t)(void);
|
||||
|
||||
ISC_PLATFORM_NORETURN_PRE void
|
||||
@@ -41,10 +39,6 @@ vbprintf(int level, const char *fmt, ...) ISC_FORMAT_PRINTF(2, 3);
|
||||
ISC_PLATFORM_NORETURN_PRE void
|
||||
version(const char *program) ISC_PLATFORM_NORETURN_POST;
|
||||
|
||||
void
|
||||
type_format(const dns_rdatatype_t type, char *cp, unsigned int size);
|
||||
#define TYPE_FORMATSIZE 20
|
||||
|
||||
void
|
||||
sig_format(dns_rdata_rrsig_t *sig, char *cp, unsigned int size);
|
||||
#define SIG_FORMATSIZE (DNS_NAME_FORMATSIZE + DNS_SECALG_FORMATSIZE + sizeof("65535"))
|
||||
@@ -58,8 +52,8 @@ cleanup_logging(isc_log_t **logp);
|
||||
dns_ttl_t strtottl(const char *str);
|
||||
|
||||
isc_stdtime_t
|
||||
strtotime(const char *str, isc_int64_t now, isc_int64_t base,
|
||||
isc_boolean_t *setp);
|
||||
strtotime(const char *str, int64_t now, int64_t base,
|
||||
bool *setp);
|
||||
|
||||
unsigned int
|
||||
strtodsdigest(const char *str);
|
||||
@@ -76,20 +70,11 @@ check_keyversion(dst_key_t *key, char *keystr);
|
||||
void
|
||||
set_keyversion(dst_key_t *key);
|
||||
|
||||
isc_boolean_t
|
||||
bool
|
||||
key_collision(dst_key_t *key, dns_name_t *name, const char *dir,
|
||||
isc_mem_t *mctx, isc_boolean_t *exact);
|
||||
isc_mem_t *mctx, bool *exact);
|
||||
|
||||
isc_boolean_t
|
||||
is_delegation(dns_db_t *db, dns_dbversion_t *ver, dns_name_t *origin,
|
||||
dns_name_t *name, dns_dbnode_t *node, isc_uint32_t *ttlp);
|
||||
|
||||
void
|
||||
verifyzone(dns_db_t *db, dns_dbversion_t *ver,
|
||||
dns_name_t *origin, isc_mem_t *mctx,
|
||||
isc_boolean_t ignore_kskflag, isc_boolean_t keyset_kskonly);
|
||||
|
||||
isc_boolean_t
|
||||
bool
|
||||
isoptarg(const char *arg, char **argv, void (*usage)(void));
|
||||
|
||||
#ifdef _WIN32
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -84,7 +84,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -94,7 +94,7 @@ set PYTHONPATH=.
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -81,7 +81,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -81,7 +81,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -81,7 +81,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -81,7 +81,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -81,7 +81,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -81,7 +81,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -81,7 +81,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -46,17 +46,17 @@ CINCLUDES = -I${srcdir}/include -I${srcdir}/unix/include -I. \
|
||||
${NS_INCLUDES} ${DNS_INCLUDES} \
|
||||
${BIND9_INCLUDES} ${ISCCFG_INCLUDES} ${ISCCC_INCLUDES} \
|
||||
${ISC_INCLUDES} ${DLZDRIVER_INCLUDES} \
|
||||
${DBDRIVER_INCLUDES} @DST_OPENSSL_INC@
|
||||
${DBDRIVER_INCLUDES} @OPENSSL_INCLUDES@
|
||||
|
||||
CDEFINES = @CONTRIB_DLZ@ @USE_PKCS11@ @PKCS11_ENGINE@
|
||||
CDEFINES = @CONTRIB_DLZ@
|
||||
|
||||
CWARNINGS =
|
||||
|
||||
DNSLIBS = ../../lib/dns/libdns.@A@ @DNS_CRYPTO_LIBS@
|
||||
ISCCFGLIBS = ../../lib/isccfg/libisccfg.@A@
|
||||
ISCCCLIBS = ../../lib/isccc/libisccc.@A@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @OPENSSL_LIBS@
|
||||
BIND9LIBS = ../../lib/bind9/libbind9.@A@
|
||||
NSLIBS = ../../lib/ns/libns.@A@
|
||||
|
||||
@@ -72,11 +72,13 @@ DEPLIBS = ${NSDEPLIBS} ${DNSDEPLIBS} ${BIND9DEPLIBS} \
|
||||
|
||||
LIBS = ${NSLIBS} ${DNSLIBS} ${BIND9LIBS} \
|
||||
${ISCCFGLIBS} ${ISCCCLIBS} ${ISCLIBS} \
|
||||
${DLZDRIVER_LIBS} ${DBDRIVER_LIBS} @LIBS@
|
||||
${DLZDRIVER_LIBS} ${DBDRIVER_LIBS} @LIBCAP_LIBS@ \
|
||||
@LIBS@
|
||||
|
||||
NOSYMLIBS = ${NSLIBS} ${DNSLIBS} ${BIND9LIBS} \
|
||||
${ISCCFGLIBS} ${ISCCCLIBS} ${ISCNOSYMLIBS} \
|
||||
${DLZDRIVER_LIBS} ${DBDRIVER_LIBS} @LIBS@
|
||||
${DLZDRIVER_LIBS} ${DBDRIVER_LIBS} @LIBCAP_LIBS@ \
|
||||
@LIBS@
|
||||
|
||||
SUBDIRS = unix
|
||||
|
||||
|
||||
+21
-26
@@ -13,6 +13,7 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <isc/buffer.h>
|
||||
@@ -47,15 +48,11 @@
|
||||
/*% default configuration */
|
||||
static char defaultconf[] = "\
|
||||
options {\n\
|
||||
# answer-cookie <obsolete>;\n\
|
||||
answer-cookie true;\n\
|
||||
automatic-interface-scan yes;\n\
|
||||
bindkeys-file \"" NAMED_SYSCONFDIR "/bind.keys\";\n\
|
||||
# blackhole {none;};\n"
|
||||
#if defined(HAVE_OPENSSL_AES) || defined(HAVE_OPENSSL_EVP_AES)
|
||||
" cookie-algorithm aes;\n"
|
||||
#else
|
||||
" cookie-algorithm sha256;\n"
|
||||
#endif
|
||||
#ifndef WIN32
|
||||
" coresize default;\n\
|
||||
datasize default;\n"
|
||||
@@ -96,6 +93,7 @@ options {\n\
|
||||
request-nsid false;\n\
|
||||
reserved-sockets 512;\n\
|
||||
resolver-query-timeout 10;\n\
|
||||
rrset-order { order random; };\n\
|
||||
secroots-file \"named.secroots\";\n\
|
||||
send-cookie true;\n\
|
||||
# serial-queries <obsolete>;\n\
|
||||
@@ -183,6 +181,7 @@ options {\n\
|
||||
notify-source-v6 *;\n\
|
||||
nsec3-test-zone no;\n\
|
||||
provide-ixfr true;\n\
|
||||
qname-minimization relaxed;\n\
|
||||
query-source address *;\n\
|
||||
query-source-v6 address *;\n\
|
||||
recursion true;\n\
|
||||
@@ -449,7 +448,7 @@ isc_result_t
|
||||
named_config_getiplist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
in_port_t defport, isc_mem_t *mctx,
|
||||
isc_sockaddr_t **addrsp, isc_dscp_t **dscpsp,
|
||||
isc_uint32_t *countp)
|
||||
uint32_t *countp)
|
||||
{
|
||||
int count, i = 0;
|
||||
const cfg_obj_t *addrlist;
|
||||
@@ -469,8 +468,8 @@ named_config_getiplist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
|
||||
portobj = cfg_tuple_get(list, "port");
|
||||
if (cfg_obj_isuint32(portobj)) {
|
||||
isc_uint32_t val = cfg_obj_asuint32(portobj);
|
||||
if (val > ISC_UINT16_MAX) {
|
||||
uint32_t val = cfg_obj_asuint32(portobj);
|
||||
if (val > UINT16_MAX) {
|
||||
cfg_obj_log(portobj, named_g_lctx, ISC_LOG_ERROR,
|
||||
"port '%u' out of range", val);
|
||||
return (ISC_R_RANGE);
|
||||
@@ -540,7 +539,7 @@ named_config_getiplist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
|
||||
void
|
||||
named_config_putiplist(isc_mem_t *mctx, isc_sockaddr_t **addrsp,
|
||||
isc_dscp_t **dscpsp, isc_uint32_t count)
|
||||
isc_dscp_t **dscpsp, uint32_t count)
|
||||
{
|
||||
INSIST(addrsp != NULL && *addrsp != NULL);
|
||||
INSIST(dscpsp == NULL || *dscpsp != NULL);
|
||||
@@ -586,9 +585,9 @@ isc_result_t
|
||||
named_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
isc_mem_t *mctx, dns_ipkeylist_t *ipkl)
|
||||
{
|
||||
isc_uint32_t addrcount = 0, dscpcount = 0, keycount = 0, i = 0;
|
||||
isc_uint32_t listcount = 0, l = 0, j;
|
||||
isc_uint32_t stackcount = 0, pushed = 0;
|
||||
uint32_t addrcount = 0, dscpcount = 0, keycount = 0, i = 0;
|
||||
uint32_t listcount = 0, l = 0, j;
|
||||
uint32_t stackcount = 0, pushed = 0;
|
||||
isc_result_t result;
|
||||
const cfg_listelt_t *element;
|
||||
const cfg_obj_t *addrlist;
|
||||
@@ -632,8 +631,8 @@ named_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
dscpobj = cfg_tuple_get(list, "dscp");
|
||||
|
||||
if (cfg_obj_isuint32(portobj)) {
|
||||
isc_uint32_t val = cfg_obj_asuint32(portobj);
|
||||
if (val > ISC_UINT16_MAX) {
|
||||
uint32_t val = cfg_obj_asuint32(portobj);
|
||||
if (val > UINT16_MAX) {
|
||||
cfg_obj_log(portobj, named_g_lctx, ISC_LOG_ERROR,
|
||||
"port '%u' out of range", val);
|
||||
result = ISC_R_RANGE;
|
||||
@@ -677,7 +676,7 @@ named_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
/* Grow lists? */
|
||||
if (listcount == l) {
|
||||
void * tmp;
|
||||
isc_uint32_t newlen = listcount + 16;
|
||||
uint32_t newlen = listcount + 16;
|
||||
size_t newsize, oldsize;
|
||||
|
||||
newsize = newlen * sizeof(*lists);
|
||||
@@ -712,7 +711,7 @@ named_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
/* Grow stack? */
|
||||
if (stackcount == pushed) {
|
||||
void * tmp;
|
||||
isc_uint32_t newlen = stackcount + 16;
|
||||
uint32_t newlen = stackcount + 16;
|
||||
size_t newsize, oldsize;
|
||||
|
||||
newsize = newlen * sizeof(*stack);
|
||||
@@ -740,7 +739,7 @@ named_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
|
||||
if (i == addrcount) {
|
||||
void * tmp;
|
||||
isc_uint32_t newlen = addrcount + 16;
|
||||
uint32_t newlen = addrcount + 16;
|
||||
size_t newsize, oldsize;
|
||||
|
||||
newsize = newlen * sizeof(isc_sockaddr_t);
|
||||
@@ -913,7 +912,7 @@ named_config_getport(const cfg_obj_t *config, in_port_t *portp) {
|
||||
|
||||
result = named_config_get(maps, "port", &portobj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
if (cfg_obj_asuint32(portobj) >= ISC_UINT16_MAX) {
|
||||
if (cfg_obj_asuint32(portobj) >= UINT16_MAX) {
|
||||
cfg_obj_log(portobj, named_g_lctx, ISC_LOG_ERROR,
|
||||
"port '%u' out of range",
|
||||
cfg_obj_asuint32(portobj));
|
||||
@@ -953,13 +952,11 @@ struct keyalgorithms {
|
||||
enum { hmacnone, hmacmd5, hmacsha1, hmacsha224,
|
||||
hmacsha256, hmacsha384, hmacsha512 } hmac;
|
||||
unsigned int type;
|
||||
isc_uint16_t size;
|
||||
uint16_t size;
|
||||
} algorithms[] = {
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
{ "hmac-md5", hmacmd5, DST_ALG_HMACMD5, 128 },
|
||||
{ "hmac-md5.sig-alg.reg.int", hmacmd5, DST_ALG_HMACMD5, 0 },
|
||||
{ "hmac-md5.sig-alg.reg.int.", hmacmd5, DST_ALG_HMACMD5, 0 },
|
||||
#endif
|
||||
{ "hmac-sha1", hmacsha1, DST_ALG_HMACSHA1, 160 },
|
||||
{ "hmac-sha224", hmacsha224, DST_ALG_HMACSHA224, 224 },
|
||||
{ "hmac-sha256", hmacsha256, DST_ALG_HMACSHA256, 256 },
|
||||
@@ -970,18 +967,18 @@ struct keyalgorithms {
|
||||
|
||||
isc_result_t
|
||||
named_config_getkeyalgorithm(const char *str, const dns_name_t **name,
|
||||
isc_uint16_t *digestbits)
|
||||
uint16_t *digestbits)
|
||||
{
|
||||
return (named_config_getkeyalgorithm2(str, name, NULL, digestbits));
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
named_config_getkeyalgorithm2(const char *str, const dns_name_t **name,
|
||||
unsigned int *typep, isc_uint16_t *digestbits)
|
||||
unsigned int *typep, uint16_t *digestbits)
|
||||
{
|
||||
int i;
|
||||
size_t len = 0;
|
||||
isc_uint16_t bits;
|
||||
uint16_t bits;
|
||||
isc_result_t result;
|
||||
|
||||
for (i = 0; algorithms[i].str != NULL; i++) {
|
||||
@@ -1006,9 +1003,7 @@ named_config_getkeyalgorithm2(const char *str, const dns_name_t **name,
|
||||
|
||||
if (name != NULL) {
|
||||
switch (algorithms[i].hmac) {
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
case hmacmd5: *name = dns_tsig_hmacmd5_name; break;
|
||||
#endif
|
||||
case hmacsha1: *name = dns_tsig_hmacsha1_name; break;
|
||||
case hmacsha224: *name = dns_tsig_hmacsha224_name; break;
|
||||
case hmacsha256: *name = dns_tsig_hmacsha256_name; break;
|
||||
|
||||
+10
-9
@@ -14,6 +14,7 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isc/app.h>
|
||||
#include <isc/event.h>
|
||||
@@ -59,9 +60,9 @@ getcommand(isc_lex_t *lex, char **cmdp) {
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
static inline isc_boolean_t
|
||||
static inline bool
|
||||
command_compare(const char *str, const char *command) {
|
||||
return ISC_TF(strcasecmp(str, command) == 0);
|
||||
return (strcasecmp(str, command) == 0);
|
||||
}
|
||||
|
||||
/*%
|
||||
@@ -69,7 +70,7 @@ command_compare(const char *str, const char *command) {
|
||||
* when a control channel message is received.
|
||||
*/
|
||||
isc_result_t
|
||||
named_control_docommand(isccc_sexpr_t *message, isc_boolean_t readonly,
|
||||
named_control_docommand(isccc_sexpr_t *message, bool readonly,
|
||||
isc_buffer_t **text)
|
||||
{
|
||||
isccc_sexpr_t *data;
|
||||
@@ -184,7 +185,7 @@ named_control_docommand(isccc_sexpr_t *message, isc_boolean_t readonly,
|
||||
*/
|
||||
#endif
|
||||
/* Do not flush master files */
|
||||
named_server_flushonshutdown(named_g_server, ISC_FALSE);
|
||||
named_server_flushonshutdown(named_g_server, false);
|
||||
named_os_shutdownmsg(cmdline, *text);
|
||||
isc_app_shutdown();
|
||||
result = ISC_R_SUCCESS;
|
||||
@@ -201,7 +202,7 @@ named_control_docommand(isccc_sexpr_t *message, isc_boolean_t readonly,
|
||||
if (named_smf_got_instance == 1 && named_smf_chroot == 0)
|
||||
named_smf_want_disable = 1;
|
||||
#endif
|
||||
named_server_flushonshutdown(named_g_server, ISC_TRUE);
|
||||
named_server_flushonshutdown(named_g_server, true);
|
||||
named_os_shutdownmsg(cmdline, *text);
|
||||
isc_app_shutdown();
|
||||
result = ISC_R_SUCCESS;
|
||||
@@ -223,9 +224,9 @@ named_control_docommand(isccc_sexpr_t *message, isc_boolean_t readonly,
|
||||
} else if (command_compare(command, NAMED_COMMAND_FLUSH)) {
|
||||
result = named_server_flushcache(named_g_server, lex);
|
||||
} else if (command_compare(command, NAMED_COMMAND_FLUSHNAME)) {
|
||||
result = named_server_flushnode(named_g_server, lex, ISC_FALSE);
|
||||
result = named_server_flushnode(named_g_server, lex, false);
|
||||
} else if (command_compare(command, NAMED_COMMAND_FLUSHTREE)) {
|
||||
result = named_server_flushnode(named_g_server, lex, ISC_TRUE);
|
||||
result = named_server_flushnode(named_g_server, lex, true);
|
||||
} else if (command_compare(command, NAMED_COMMAND_STATUS)) {
|
||||
result = named_server_status(named_g_server, text);
|
||||
} else if (command_compare(command, NAMED_COMMAND_TSIGLIST)) {
|
||||
@@ -233,11 +234,11 @@ named_control_docommand(isccc_sexpr_t *message, isc_boolean_t readonly,
|
||||
} else if (command_compare(command, NAMED_COMMAND_TSIGDELETE)) {
|
||||
result = named_server_tsigdelete(named_g_server, lex, text);
|
||||
} else if (command_compare(command, NAMED_COMMAND_FREEZE)) {
|
||||
result = named_server_freeze(named_g_server, ISC_TRUE, lex,
|
||||
result = named_server_freeze(named_g_server, true, lex,
|
||||
text);
|
||||
} else if (command_compare(command, NAMED_COMMAND_UNFREEZE) ||
|
||||
command_compare(command, NAMED_COMMAND_THAW)) {
|
||||
result = named_server_freeze(named_g_server, ISC_FALSE, lex,
|
||||
result = named_server_freeze(named_g_server, false, lex,
|
||||
text);
|
||||
} else if (command_compare(command, NAMED_COMMAND_SCAN)) {
|
||||
result = ISC_R_SUCCESS;
|
||||
|
||||
+36
-37
@@ -13,6 +13,9 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isc/base64.h>
|
||||
#include <isc/buffer.h>
|
||||
#include <isc/event.h>
|
||||
@@ -65,7 +68,7 @@ typedef ISC_LIST(controllistener_t) controllistenerlist_t;
|
||||
|
||||
struct controlkey {
|
||||
char * keyname;
|
||||
isc_uint32_t algorithm;
|
||||
uint32_t algorithm;
|
||||
isc_region_t secret;
|
||||
ISC_LINK(controlkey_t) link;
|
||||
};
|
||||
@@ -73,12 +76,12 @@ struct controlkey {
|
||||
struct controlconnection {
|
||||
isc_socket_t * sock;
|
||||
isccc_ccmsg_t ccmsg;
|
||||
isc_boolean_t ccmsg_valid;
|
||||
isc_boolean_t sending;
|
||||
bool ccmsg_valid;
|
||||
bool sending;
|
||||
isc_timer_t * timer;
|
||||
isc_buffer_t * buffer;
|
||||
controllistener_t * listener;
|
||||
isc_uint32_t nonce;
|
||||
uint32_t nonce;
|
||||
ISC_LINK(controlconnection_t) link;
|
||||
};
|
||||
|
||||
@@ -89,22 +92,22 @@ struct controllistener {
|
||||
isc_sockaddr_t address;
|
||||
isc_socket_t * sock;
|
||||
dns_acl_t * acl;
|
||||
isc_boolean_t listening;
|
||||
isc_boolean_t exiting;
|
||||
bool listening;
|
||||
bool exiting;
|
||||
controlkeylist_t keys;
|
||||
controlconnectionlist_t connections;
|
||||
isc_sockettype_t type;
|
||||
isc_uint32_t perm;
|
||||
isc_uint32_t owner;
|
||||
isc_uint32_t group;
|
||||
isc_boolean_t readonly;
|
||||
uint32_t perm;
|
||||
uint32_t owner;
|
||||
uint32_t group;
|
||||
bool readonly;
|
||||
ISC_LINK(controllistener_t) link;
|
||||
};
|
||||
|
||||
struct named_controls {
|
||||
named_server_t *server;
|
||||
controllistenerlist_t listeners;
|
||||
isc_boolean_t shuttingdown;
|
||||
bool shuttingdown;
|
||||
isccc_symtab_t *symtab;
|
||||
};
|
||||
|
||||
@@ -202,8 +205,8 @@ shutdown_listener(controllistener_t *listener) {
|
||||
NAMED_LOGMODULE_CONTROL, ISC_LOG_NOTICE,
|
||||
"stopping command channel on %s", socktext);
|
||||
if (listener->type == isc_sockettype_unix)
|
||||
isc_socket_cleanunix(&listener->address, ISC_TRUE);
|
||||
listener->exiting = ISC_TRUE;
|
||||
isc_socket_cleanunix(&listener->address, true);
|
||||
listener->exiting = true;
|
||||
}
|
||||
|
||||
for (conn = ISC_LIST_HEAD(listener->connections);
|
||||
@@ -221,7 +224,7 @@ shutdown_listener(controllistener_t *listener) {
|
||||
maybe_free_listener(listener);
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
address_ok(isc_sockaddr_t *sockaddr, dns_acl_t *acl) {
|
||||
dns_aclenv_t *env =
|
||||
ns_interfacemgr_getaclenv(named_g_server->interfacemgr);
|
||||
@@ -232,11 +235,7 @@ address_ok(isc_sockaddr_t *sockaddr, dns_acl_t *acl) {
|
||||
isc_netaddr_fromsockaddr(&netaddr, sockaddr);
|
||||
|
||||
result = dns_acl_match(&netaddr, NULL, acl, env, &match, NULL);
|
||||
if (result != ISC_R_SUCCESS || match <= 0) {
|
||||
return (ISC_FALSE);
|
||||
} else {
|
||||
return (ISC_TRUE);
|
||||
}
|
||||
return (result == ISC_R_SUCCESS && match > 0);
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
@@ -250,7 +249,7 @@ control_accept(controllistener_t *listener) {
|
||||
"isc_socket_accept() failed: %s",
|
||||
isc_result_totext(result));
|
||||
else
|
||||
listener->listening = ISC_TRUE;
|
||||
listener->listening = true;
|
||||
return (result);
|
||||
}
|
||||
|
||||
@@ -283,7 +282,7 @@ control_senddone(isc_task_t *task, isc_event_t *event) {
|
||||
|
||||
UNUSED(task);
|
||||
|
||||
conn->sending = ISC_FALSE;
|
||||
conn->sending = false;
|
||||
|
||||
if (sevent->result != ISC_R_SUCCESS &&
|
||||
sevent->result != ISC_R_CANCELED)
|
||||
@@ -329,7 +328,7 @@ control_recvmessage(isc_task_t *task, isc_event_t *event) {
|
||||
controlkey_t *key = NULL;
|
||||
isccc_sexpr_t *request = NULL;
|
||||
isccc_sexpr_t *response = NULL;
|
||||
isc_uint32_t algorithm;
|
||||
uint32_t algorithm;
|
||||
isccc_region_t secret;
|
||||
isc_stdtime_t now;
|
||||
isc_buffer_t b;
|
||||
@@ -340,7 +339,7 @@ control_recvmessage(isc_task_t *task, isc_event_t *event) {
|
||||
isccc_sexpr_t *_ctrl = NULL;
|
||||
isccc_time_t sent;
|
||||
isccc_time_t exp;
|
||||
isc_uint32_t nonce;
|
||||
uint32_t nonce;
|
||||
isccc_sexpr_t *data = NULL;
|
||||
|
||||
REQUIRE(event->ev_type == ISCCC_EVENT_CCMSG);
|
||||
@@ -520,7 +519,7 @@ control_recvmessage(isc_task_t *task, isc_event_t *event) {
|
||||
result = isc_socket_send(conn->sock, &r, task, control_senddone, conn);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto cleanup_response;
|
||||
conn->sending = ISC_TRUE;
|
||||
conn->sending = true;
|
||||
|
||||
isc_mem_put(listener->mctx, secret.rstart, REGION_SIZE(secret));
|
||||
isccc_sexpr_free(&request);
|
||||
@@ -540,7 +539,7 @@ control_recvmessage(isc_task_t *task, isc_event_t *event) {
|
||||
cleanup:
|
||||
isc_socket_detach(&conn->sock);
|
||||
isccc_ccmsg_invalidate(&conn->ccmsg);
|
||||
conn->ccmsg_valid = ISC_FALSE;
|
||||
conn->ccmsg_valid = false;
|
||||
maybe_free_connection(conn);
|
||||
maybe_free_listener(listener);
|
||||
}
|
||||
@@ -573,8 +572,8 @@ newconnection(controllistener_t *listener, isc_socket_t *sock) {
|
||||
/* Set a 32 KiB upper limit on incoming message. */
|
||||
isccc_ccmsg_setmaxsize(&conn->ccmsg, 32768);
|
||||
|
||||
conn->ccmsg_valid = ISC_TRUE;
|
||||
conn->sending = ISC_FALSE;
|
||||
conn->ccmsg_valid = true;
|
||||
conn->sending = false;
|
||||
conn->buffer = NULL;
|
||||
conn->timer = NULL;
|
||||
isc_interval_set(&interval, 60, 0);
|
||||
@@ -621,7 +620,7 @@ control_newconn(isc_task_t *task, isc_event_t *event) {
|
||||
|
||||
UNUSED(task);
|
||||
|
||||
listener->listening = ISC_FALSE;
|
||||
listener->listening = false;
|
||||
|
||||
if (nevent->result != ISC_R_SUCCESS) {
|
||||
if (nevent->result == ISC_R_CANCELED) {
|
||||
@@ -685,7 +684,7 @@ controls_shutdown(named_controls_t *controls) {
|
||||
void
|
||||
named_controls_shutdown(named_controls_t *controls) {
|
||||
controls_shutdown(controls);
|
||||
controls->shuttingdown = ISC_TRUE;
|
||||
controls->shuttingdown = true;
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
@@ -1091,7 +1090,7 @@ update_listener(named_controls_t *cp, controllistener_t **listenerp,
|
||||
socktext, isc_result_totext(result));
|
||||
|
||||
if (result == ISC_R_SUCCESS && type == isc_sockettype_unix) {
|
||||
isc_uint32_t perm, owner, group;
|
||||
uint32_t perm, owner, group;
|
||||
perm = cfg_obj_asuint32(cfg_tuple_get(control, "perm"));
|
||||
owner = cfg_obj_asuint32(cfg_tuple_get(control, "owner"));
|
||||
group = cfg_obj_asuint32(cfg_tuple_get(control, "group"));
|
||||
@@ -1138,14 +1137,14 @@ add_listener(named_controls_t *cp, controllistener_t **listenerp,
|
||||
listener->task = cp->server->task;
|
||||
listener->address = *addr;
|
||||
listener->sock = NULL;
|
||||
listener->listening = ISC_FALSE;
|
||||
listener->exiting = ISC_FALSE;
|
||||
listener->listening = false;
|
||||
listener->exiting = false;
|
||||
listener->acl = NULL;
|
||||
listener->type = type;
|
||||
listener->perm = 0;
|
||||
listener->owner = 0;
|
||||
listener->group = 0;
|
||||
listener->readonly = ISC_FALSE;
|
||||
listener->readonly = false;
|
||||
ISC_LINK_INIT(listener, link);
|
||||
ISC_LIST_INIT(listener->keys);
|
||||
ISC_LIST_INIT(listener->connections);
|
||||
@@ -1208,7 +1207,7 @@ add_listener(named_controls_t *cp, controllistener_t **listenerp,
|
||||
}
|
||||
|
||||
if (result == ISC_R_SUCCESS && type == isc_sockettype_unix)
|
||||
isc_socket_cleanunix(&listener->address, ISC_FALSE);
|
||||
isc_socket_cleanunix(&listener->address, false);
|
||||
|
||||
if (result == ISC_R_SUCCESS)
|
||||
result = isc_socket_create(named_g_socketmgr,
|
||||
@@ -1219,7 +1218,7 @@ add_listener(named_controls_t *cp, controllistener_t **listenerp,
|
||||
|
||||
#ifndef ISC_ALLOW_MAPPED
|
||||
if (result == ISC_R_SUCCESS)
|
||||
isc_socket_ipv6only(listener->sock, ISC_TRUE);
|
||||
isc_socket_ipv6only(listener->sock, true);
|
||||
#endif
|
||||
|
||||
if (result == ISC_R_SUCCESS)
|
||||
@@ -1250,7 +1249,7 @@ add_listener(named_controls_t *cp, controllistener_t **listenerp,
|
||||
|
||||
} else {
|
||||
if (listener != NULL) {
|
||||
listener->exiting = ISC_TRUE;
|
||||
listener->exiting = true;
|
||||
free_listener(listener);
|
||||
}
|
||||
|
||||
@@ -1510,7 +1509,7 @@ named_controls_create(named_server_t *server, named_controls_t **ctrlsp) {
|
||||
return (ISC_R_NOMEMORY);
|
||||
controls->server = server;
|
||||
ISC_LIST_INIT(controls->listeners);
|
||||
controls->shuttingdown = ISC_FALSE;
|
||||
controls->shuttingdown = false;
|
||||
controls->symtab = NULL;
|
||||
result = isccc_cc_createsymtab(&controls->symtab);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
|
||||
+20
-16
@@ -11,6 +11,9 @@
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <named/fuzz.h>
|
||||
|
||||
#ifdef ENABLE_AFL
|
||||
@@ -44,7 +47,7 @@
|
||||
*/
|
||||
static pthread_cond_t cond;
|
||||
static pthread_mutex_t mutex;
|
||||
static isc_boolean_t ready;
|
||||
static bool ready;
|
||||
|
||||
/*
|
||||
* In "client:" mode, this thread reads fuzzed query messages from AFL
|
||||
@@ -122,7 +125,7 @@ fuzz_thread_client(void *arg) {
|
||||
free(buf);
|
||||
close(sockfd);
|
||||
named_server_flushonshutdown(named_g_server,
|
||||
ISC_FALSE);
|
||||
false);
|
||||
isc_app_shutdown();
|
||||
return (NULL);
|
||||
}
|
||||
@@ -132,7 +135,7 @@ fuzz_thread_client(void *arg) {
|
||||
|
||||
RUNTIME_CHECK(pthread_mutex_lock(&mutex) == 0);
|
||||
|
||||
ready = ISC_FALSE;
|
||||
ready = false;
|
||||
|
||||
sent = sendto(sockfd, buf, length, 0,
|
||||
(struct sockaddr *) &servaddr, sizeof(servaddr));
|
||||
@@ -153,7 +156,7 @@ fuzz_thread_client(void *arg) {
|
||||
free(buf);
|
||||
close(sockfd);
|
||||
|
||||
named_server_flushonshutdown(named_g_server, ISC_FALSE);
|
||||
named_server_flushonshutdown(named_g_server, false);
|
||||
isc_app_shutdown();
|
||||
|
||||
return (NULL);
|
||||
@@ -200,7 +203,7 @@ fuzz_thread_resolver(void *arg) {
|
||||
* have to be updated. 0x8d, 0xf6 at the start is the ID field
|
||||
* which will be made to match the query.
|
||||
*/
|
||||
const isc_uint8_t dnskey_wf[] = {
|
||||
const uint8_t dnskey_wf[] = {
|
||||
0x8d, 0xf6, 0x84, 0x00, 0x00, 0x01, 0x00, 0x02,
|
||||
0x00, 0x00, 0x00, 0x01, 0x07, 0x65, 0x78, 0x61,
|
||||
0x6d, 0x70, 0x6c, 0x65, 0x00, 0x00, 0x30, 0x00,
|
||||
@@ -282,12 +285,12 @@ fuzz_thread_resolver(void *arg) {
|
||||
int sockfd;
|
||||
int listenfd;
|
||||
int loop;
|
||||
isc_uint16_t qtype;
|
||||
uint16_t qtype;
|
||||
char *buf, *rbuf;
|
||||
char *nameptr;
|
||||
unsigned int i;
|
||||
isc_uint8_t llen;
|
||||
isc_uint64_t seed;
|
||||
uint8_t llen;
|
||||
uint64_t seed;
|
||||
|
||||
UNUSED(arg);
|
||||
|
||||
@@ -385,7 +388,7 @@ fuzz_thread_resolver(void *arg) {
|
||||
close(sockfd);
|
||||
close(listenfd);
|
||||
named_server_flushonshutdown(named_g_server,
|
||||
ISC_FALSE);
|
||||
false);
|
||||
isc_app_shutdown();
|
||||
return (NULL);
|
||||
}
|
||||
@@ -399,7 +402,7 @@ fuzz_thread_resolver(void *arg) {
|
||||
|
||||
RUNTIME_CHECK(pthread_mutex_lock(&mutex) == 0);
|
||||
|
||||
ready = ISC_FALSE;
|
||||
ready = false;
|
||||
|
||||
/* Use a unique query ID. */
|
||||
seed = 1664525 * seed + 1013904223;
|
||||
@@ -549,7 +552,7 @@ fuzz_thread_resolver(void *arg) {
|
||||
* "example."
|
||||
*/
|
||||
if ((nameptr - buf) < (length - 2)) {
|
||||
isc_uint8_t hb, lb;
|
||||
uint8_t hb, lb;
|
||||
hb = *nameptr++;
|
||||
lb = *nameptr++;
|
||||
qtype = (hb << 8) | lb;
|
||||
@@ -577,9 +580,10 @@ fuzz_thread_resolver(void *arg) {
|
||||
}
|
||||
|
||||
free(buf);
|
||||
free(rbuf);
|
||||
close(sockfd);
|
||||
close(listenfd);
|
||||
named_server_flushonshutdown(named_g_server, ISC_FALSE);
|
||||
named_server_flushonshutdown(named_g_server, false);
|
||||
isc_app_shutdown();
|
||||
|
||||
/*
|
||||
@@ -686,7 +690,7 @@ fuzz_thread_tcp(void *arg) {
|
||||
|
||||
RUNTIME_CHECK(pthread_mutex_lock(&mutex) == 0);
|
||||
|
||||
ready = ISC_FALSE;
|
||||
ready = false;
|
||||
yes = 1;
|
||||
sockfd = socket(AF_INET, SOCK_STREAM, 0);
|
||||
|
||||
@@ -717,7 +721,7 @@ fuzz_thread_tcp(void *arg) {
|
||||
|
||||
free(buf);
|
||||
close(sockfd);
|
||||
named_server_flushonshutdown(named_g_server, ISC_FALSE);
|
||||
named_server_flushonshutdown(named_g_server, false);
|
||||
isc_app_shutdown();
|
||||
|
||||
return (NULL);
|
||||
@@ -734,7 +738,7 @@ void
|
||||
named_fuzz_notify(void) {
|
||||
#ifdef ENABLE_AFL
|
||||
if (getenv("AFL_CMIN")) {
|
||||
named_server_flushonshutdown(named_g_server, ISC_FALSE);
|
||||
named_server_flushonshutdown(named_g_server, false);
|
||||
isc_app_shutdown();
|
||||
return;
|
||||
}
|
||||
@@ -743,7 +747,7 @@ named_fuzz_notify(void) {
|
||||
|
||||
RUNTIME_CHECK(pthread_mutex_lock(&mutex) == 0);
|
||||
|
||||
ready = ISC_TRUE;
|
||||
ready = true;
|
||||
|
||||
RUNTIME_CHECK(pthread_cond_signal(&cond) == 0);
|
||||
RUNTIME_CHECK(pthread_mutex_unlock(&mutex) == 0);
|
||||
|
||||
@@ -15,6 +15,8 @@
|
||||
|
||||
/*! \file */
|
||||
|
||||
#include <inttypes.h>
|
||||
|
||||
#include <isccfg/cfg.h>
|
||||
|
||||
#include <dns/types.h>
|
||||
@@ -49,11 +51,11 @@ isc_result_t
|
||||
named_config_getiplist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
in_port_t defport, isc_mem_t *mctx,
|
||||
isc_sockaddr_t **addrsp, isc_dscp_t **dscpsp,
|
||||
isc_uint32_t *countp);
|
||||
uint32_t *countp);
|
||||
|
||||
void
|
||||
named_config_putiplist(isc_mem_t *mctx, isc_sockaddr_t **addrsp,
|
||||
isc_dscp_t **dscpsp, isc_uint32_t count);
|
||||
isc_dscp_t **dscpsp, uint32_t count);
|
||||
|
||||
isc_result_t
|
||||
named_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
@@ -64,10 +66,10 @@ named_config_getport(const cfg_obj_t *config, in_port_t *portp);
|
||||
|
||||
isc_result_t
|
||||
named_config_getkeyalgorithm(const char *str, const dns_name_t **name,
|
||||
isc_uint16_t *digestbits);
|
||||
uint16_t *digestbits);
|
||||
isc_result_t
|
||||
named_config_getkeyalgorithm2(const char *str, const dns_name_t **name,
|
||||
unsigned int *typep, isc_uint16_t *digestbits);
|
||||
unsigned int *typep, uint16_t *digestbits);
|
||||
|
||||
isc_result_t
|
||||
named_config_getdscp(const cfg_obj_t *config, isc_dscp_t *dscpp);
|
||||
|
||||
@@ -17,6 +17,8 @@
|
||||
* The name server command channel.
|
||||
*/
|
||||
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isccc/types.h>
|
||||
|
||||
#include <isccfg/aclconf.h>
|
||||
@@ -101,7 +103,7 @@ named_controls_shutdown(named_controls_t *controls);
|
||||
*/
|
||||
|
||||
isc_result_t
|
||||
named_control_docommand(isccc_sexpr_t *message, isc_boolean_t readonly,
|
||||
named_control_docommand(isccc_sexpr_t *message, bool readonly,
|
||||
isc_buffer_t **text);
|
||||
|
||||
#endif /* NAMED_CONTROL_H */
|
||||
|
||||
@@ -14,6 +14,8 @@
|
||||
|
||||
/*! \file */
|
||||
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isc/rwlock.h>
|
||||
#include <isc/log.h>
|
||||
#include <isc/net.h>
|
||||
@@ -51,7 +53,7 @@ EXTERN dns_dispatchmgr_t * named_g_dispatchmgr INIT(NULL);
|
||||
EXTERN unsigned int named_g_cpus_detected INIT(1);
|
||||
|
||||
#ifdef ENABLE_AFL
|
||||
EXTERN isc_boolean_t named_g_run_done INIT(ISC_FALSE);
|
||||
EXTERN bool named_g_run_done INIT(false);
|
||||
#endif
|
||||
/*
|
||||
* XXXRTH We're going to want multiple timer managers eventually. One
|
||||
@@ -94,7 +96,7 @@ EXTERN const char * named_g_keyfile INIT(NAMED_SYSCONFDIR
|
||||
|
||||
EXTERN dns_tsigkey_t * named_g_sessionkey INIT(NULL);
|
||||
EXTERN dns_name_t named_g_sessionkeyname;
|
||||
EXTERN isc_boolean_t named_g_conffileset INIT(ISC_FALSE);
|
||||
EXTERN bool named_g_conffileset INIT(false);
|
||||
EXTERN cfg_aclconfctx_t * named_g_aclconfctx INIT(NULL);
|
||||
|
||||
/*
|
||||
@@ -108,11 +110,11 @@ EXTERN isc_resourcevalue_t named_g_initopenfiles INIT(0);
|
||||
/*
|
||||
* Misc.
|
||||
*/
|
||||
EXTERN isc_boolean_t named_g_coreok INIT(ISC_TRUE);
|
||||
EXTERN bool named_g_coreok INIT(true);
|
||||
EXTERN const char * named_g_chrootdir INIT(NULL);
|
||||
EXTERN isc_boolean_t named_g_foreground INIT(ISC_FALSE);
|
||||
EXTERN isc_boolean_t named_g_logstderr INIT(ISC_FALSE);
|
||||
EXTERN isc_boolean_t named_g_nosyslog INIT(ISC_FALSE);
|
||||
EXTERN bool named_g_foreground INIT(false);
|
||||
EXTERN bool named_g_logstderr INIT(false);
|
||||
EXTERN bool named_g_nosyslog INIT(false);
|
||||
EXTERN const char * named_g_logfile INIT(NULL);
|
||||
|
||||
EXTERN const char * named_g_defaultsessionkeyfile
|
||||
@@ -121,7 +123,7 @@ EXTERN const char * named_g_defaultsessionkeyfile
|
||||
EXTERN const char * named_g_defaultlockfile INIT(NAMED_LOCALSTATEDIR
|
||||
"/run/named/"
|
||||
"named.lock");
|
||||
EXTERN isc_boolean_t named_g_forcelock INIT(ISC_FALSE);
|
||||
EXTERN bool named_g_forcelock INIT(false);
|
||||
|
||||
#if NAMED_RUN_PID_DIR
|
||||
EXTERN const char * named_g_defaultpidfile INIT(NAMED_LOCALSTATEDIR
|
||||
@@ -142,16 +144,12 @@ EXTERN const char * named_g_defaultdnstap INIT(NULL);
|
||||
|
||||
EXTERN const char * named_g_username INIT(NULL);
|
||||
|
||||
#if defined(USE_PKCS11)
|
||||
EXTERN const char * named_g_engine INIT(PKCS11_ENGINE);
|
||||
#else
|
||||
EXTERN const char * named_g_engine INIT(NULL);
|
||||
#endif
|
||||
|
||||
EXTERN isc_time_t named_g_boottime;
|
||||
EXTERN isc_time_t named_g_configtime;
|
||||
EXTERN isc_boolean_t named_g_memstatistics INIT(ISC_FALSE);
|
||||
EXTERN isc_boolean_t named_g_keepstderr INIT(ISC_FALSE);
|
||||
EXTERN bool named_g_memstatistics INIT(false);
|
||||
EXTERN bool named_g_keepstderr INIT(false);
|
||||
|
||||
EXTERN unsigned int named_g_tat_interval INIT(24*3600);
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
#define NAMED_LOGMODULE_CONTROL (&named_g_modules[2])
|
||||
|
||||
isc_result_t
|
||||
named_log_init(isc_boolean_t safe);
|
||||
named_log_init(bool safe);
|
||||
/*%
|
||||
* Initialize the logging system and set up an initial default
|
||||
* logging default configuration that will be used until the
|
||||
|
||||
@@ -14,6 +14,9 @@
|
||||
|
||||
/*! \file */
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isc/log.h>
|
||||
#include <isc/magic.h>
|
||||
#include <isc/quota.h>
|
||||
@@ -53,9 +56,9 @@ struct named_server {
|
||||
char * secrootsfile; /*%< Secroots file name */
|
||||
char * bindkeysfile; /*%< bind.keys file name */
|
||||
char * recfile; /*%< Recursive file name */
|
||||
isc_boolean_t version_set; /*%< User has set version */
|
||||
bool version_set; /*%< User has set version */
|
||||
char * version; /*%< User-specified version */
|
||||
isc_boolean_t hostname_set; /*%< User has set hostname */
|
||||
bool hostname_set; /*%< User has set hostname */
|
||||
char * hostname; /*%< User-specified hostname */
|
||||
|
||||
/* Server data structures. */
|
||||
@@ -70,13 +73,13 @@ struct named_server {
|
||||
isc_timer_t * pps_timer;
|
||||
isc_timer_t * tat_timer;
|
||||
|
||||
isc_uint32_t interface_interval;
|
||||
isc_uint32_t heartbeat_interval;
|
||||
uint32_t interface_interval;
|
||||
uint32_t heartbeat_interval;
|
||||
|
||||
isc_mutex_t reload_event_lock;
|
||||
isc_event_t * reload_event;
|
||||
|
||||
isc_boolean_t flushonshutdown;
|
||||
bool flushonshutdown;
|
||||
|
||||
named_cachelist_t cachelist; /*%< Possibly shared caches */
|
||||
isc_stats_t * zonestats; /*% Zone management stats */
|
||||
@@ -93,8 +96,8 @@ struct named_server {
|
||||
char *session_keyfile;
|
||||
dns_name_t *session_keyname;
|
||||
unsigned int session_keyalg;
|
||||
isc_uint16_t session_keybits;
|
||||
isc_boolean_t interface_auto;
|
||||
uint16_t session_keybits;
|
||||
bool interface_auto;
|
||||
unsigned char secret[32]; /*%< Server Cookie Secret */
|
||||
ns_cookiealg_t cookiealg;
|
||||
|
||||
@@ -137,7 +140,7 @@ named_server_scan_interfaces(named_server_t *server);
|
||||
*/
|
||||
|
||||
void
|
||||
named_server_flushonshutdown(named_server_t *server, isc_boolean_t flush);
|
||||
named_server_flushonshutdown(named_server_t *server, bool flush);
|
||||
/*%<
|
||||
* Inform the server that the zones should be flushed to disk on shutdown.
|
||||
*/
|
||||
@@ -234,7 +237,7 @@ named_server_flushcache(named_server_t *server, isc_lex_t *lex);
|
||||
*/
|
||||
isc_result_t
|
||||
named_server_flushnode(named_server_t *server, isc_lex_t *lex,
|
||||
isc_boolean_t tree);
|
||||
bool tree);
|
||||
|
||||
/*%
|
||||
* Report the server's status.
|
||||
@@ -259,7 +262,7 @@ named_server_tsigdelete(named_server_t *server, isc_lex_t *lex,
|
||||
* Enable or disable updates for a zone.
|
||||
*/
|
||||
isc_result_t
|
||||
named_server_freeze(named_server_t *server, isc_boolean_t freeze,
|
||||
named_server_freeze(named_server_t *server, bool freeze,
|
||||
isc_lex_t *lex, isc_buffer_t **text);
|
||||
|
||||
/*%
|
||||
@@ -339,7 +342,7 @@ named_server_zonestatus(named_server_t *server, isc_lex_t *lex,
|
||||
*/
|
||||
isc_result_t
|
||||
named_server_nta(named_server_t *server, isc_lex_t *lex,
|
||||
isc_boolean_t readonly, isc_buffer_t **text);
|
||||
bool readonly, isc_buffer_t **text);
|
||||
|
||||
/*%
|
||||
* Generates a test sequence that is only for use in system tests. The
|
||||
|
||||
@@ -14,6 +14,8 @@
|
||||
|
||||
/*! \file */
|
||||
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isc/lang.h>
|
||||
#include <isc/types.h>
|
||||
|
||||
@@ -41,13 +43,13 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
* \li 'zone' to be initialized.
|
||||
*/
|
||||
|
||||
isc_boolean_t
|
||||
bool
|
||||
named_zone_reusable(dns_zone_t *zone, const cfg_obj_t *zconfig);
|
||||
/*%<
|
||||
* If 'zone' can be safely reconfigured according to the configuration
|
||||
* data in 'zconfig', return ISC_TRUE. If the configuration data is so
|
||||
* data in 'zconfig', return true. If the configuration data is so
|
||||
* different from the current zone state that the zone needs to be destroyed
|
||||
* and recreated, return ISC_FALSE.
|
||||
* and recreated, return false.
|
||||
*/
|
||||
|
||||
isc_result_t
|
||||
|
||||
+1
-1
@@ -50,7 +50,7 @@ static isc_logmodule_t modules[] = {
|
||||
};
|
||||
|
||||
isc_result_t
|
||||
named_log_init(isc_boolean_t safe) {
|
||||
named_log_init(bool safe) {
|
||||
isc_result_t result;
|
||||
isc_logconfig_t *lcfg = NULL;
|
||||
|
||||
|
||||
+9
-6
@@ -13,6 +13,9 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isc/file.h>
|
||||
#include <isc/offset.h>
|
||||
#include <isc/print.h>
|
||||
@@ -136,10 +139,10 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *logconfig) {
|
||||
cfg_tuple_get(fileobj, "versions");
|
||||
const cfg_obj_t *suffixobj =
|
||||
cfg_tuple_get(fileobj, "suffix");
|
||||
isc_int32_t versions = ISC_LOG_ROLLNEVER;
|
||||
int32_t versions = ISC_LOG_ROLLNEVER;
|
||||
isc_log_rollsuffix_t suffix = isc_log_rollsuffix_increment;
|
||||
isc_offset_t size = 0;
|
||||
isc_uint64_t maxoffset;
|
||||
uint64_t maxoffset;
|
||||
|
||||
/*
|
||||
* isc_offset_t is a signed integer type, so the maximum
|
||||
@@ -302,8 +305,8 @@ named_logconfig(isc_logconfig_t *logconfig, const cfg_obj_t *logstmt) {
|
||||
const cfg_obj_t *channels = NULL;
|
||||
const cfg_obj_t *categories = NULL;
|
||||
const cfg_listelt_t *element;
|
||||
isc_boolean_t default_set = ISC_FALSE;
|
||||
isc_boolean_t unmatched_set = ISC_FALSE;
|
||||
bool default_set = false;
|
||||
bool unmatched_set = false;
|
||||
const cfg_obj_t *catname;
|
||||
|
||||
if (logconfig != NULL)
|
||||
@@ -328,12 +331,12 @@ named_logconfig(isc_logconfig_t *logconfig, const cfg_obj_t *logstmt) {
|
||||
if (!default_set) {
|
||||
catname = cfg_tuple_get(category, "name");
|
||||
if (strcmp(cfg_obj_asstring(catname), "default") == 0)
|
||||
default_set = ISC_TRUE;
|
||||
default_set = true;
|
||||
}
|
||||
if (!unmatched_set) {
|
||||
catname = cfg_tuple_get(category, "name");
|
||||
if (strcmp(cfg_obj_asstring(catname), "unmatched") == 0)
|
||||
unmatched_set = ISC_TRUE;
|
||||
unmatched_set = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+143
-84
@@ -14,6 +14,8 @@
|
||||
#include <config.h>
|
||||
|
||||
#include <ctype.h>
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
@@ -44,7 +46,7 @@
|
||||
#include <dns/view.h>
|
||||
|
||||
#include <dst/result.h>
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
#include <pk11/result.h>
|
||||
#endif
|
||||
|
||||
@@ -75,10 +77,8 @@
|
||||
#include <named/smf_globals.h>
|
||||
#endif
|
||||
|
||||
#if HAVE_OPENSSL
|
||||
#include <openssl/opensslv.h>
|
||||
#include <openssl/crypto.h>
|
||||
#endif
|
||||
#ifdef HAVE_LIBXML2
|
||||
#include <libxml/xmlversion.h>
|
||||
#endif
|
||||
@@ -109,7 +109,7 @@ LIBDNS_EXTERNAL_DATA extern unsigned int dns_zone_mkey_hour;
|
||||
LIBDNS_EXTERNAL_DATA extern unsigned int dns_zone_mkey_day;
|
||||
LIBDNS_EXTERNAL_DATA extern unsigned int dns_zone_mkey_month;
|
||||
|
||||
static isc_boolean_t want_stats = ISC_FALSE;
|
||||
static bool want_stats = false;
|
||||
static char program_name[ISC_DIR_NAMEMAX] = "named";
|
||||
static char absolute_conffile[ISC_DIR_PATHMAX];
|
||||
static char saved_command_line[512];
|
||||
@@ -120,22 +120,22 @@ static int maxudp = 0;
|
||||
/*
|
||||
* -T options:
|
||||
*/
|
||||
static isc_boolean_t clienttest = ISC_FALSE;
|
||||
static isc_boolean_t dropedns = ISC_FALSE;
|
||||
static isc_boolean_t noedns = ISC_FALSE;
|
||||
static isc_boolean_t nosoa = ISC_FALSE;
|
||||
static isc_boolean_t noaa = ISC_FALSE;
|
||||
static bool clienttest = false;
|
||||
static bool dropedns = false;
|
||||
static bool noedns = false;
|
||||
static bool nosoa = false;
|
||||
static bool noaa = false;
|
||||
static unsigned int delay = 0;
|
||||
static isc_boolean_t nonearest = ISC_FALSE;
|
||||
static isc_boolean_t notcp = ISC_FALSE;
|
||||
static isc_boolean_t fixedlocal = ISC_FALSE;
|
||||
static isc_boolean_t sigvalinsecs = ISC_FALSE;
|
||||
static bool nonearest = false;
|
||||
static bool notcp = false;
|
||||
static bool fixedlocal = false;
|
||||
static bool sigvalinsecs = false;
|
||||
|
||||
/*
|
||||
* -4 and -6
|
||||
*/
|
||||
static isc_boolean_t disable6 = ISC_FALSE;
|
||||
static isc_boolean_t disable4 = ISC_FALSE;
|
||||
static bool disable6 = false;
|
||||
static bool disable4 = false;
|
||||
|
||||
void
|
||||
named_main_earlywarning(const char *format, ...) {
|
||||
@@ -338,7 +338,7 @@ save_command_line(int argc, char *argv[]) {
|
||||
char *dst;
|
||||
char *eob;
|
||||
const char truncated[] = "...";
|
||||
isc_boolean_t quoted = ISC_FALSE;
|
||||
bool quoted = false;
|
||||
|
||||
dst = saved_command_line;
|
||||
eob = saved_command_line + sizeof(saved_command_line);
|
||||
@@ -358,10 +358,10 @@ save_command_line(int argc, char *argv[]) {
|
||||
*src == '-' || *src == '_' ||
|
||||
*src == '.' || *src == '/') {
|
||||
*dst++ = *src++;
|
||||
quoted = ISC_FALSE;
|
||||
quoted = false;
|
||||
} else {
|
||||
*dst++ = '\\';
|
||||
quoted = ISC_TRUE;
|
||||
quoted = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -392,25 +392,25 @@ parse_int(char *arg, const char *desc) {
|
||||
static struct flag_def {
|
||||
const char *name;
|
||||
unsigned int value;
|
||||
isc_boolean_t negate;
|
||||
bool negate;
|
||||
} mem_debug_flags[] = {
|
||||
{ "none", 0, ISC_FALSE },
|
||||
{ "trace", ISC_MEM_DEBUGTRACE, ISC_FALSE },
|
||||
{ "record", ISC_MEM_DEBUGRECORD, ISC_FALSE },
|
||||
{ "usage", ISC_MEM_DEBUGUSAGE, ISC_FALSE },
|
||||
{ "size", ISC_MEM_DEBUGSIZE, ISC_FALSE },
|
||||
{ "mctx", ISC_MEM_DEBUGCTX, ISC_FALSE },
|
||||
{ NULL, 0, ISC_FALSE }
|
||||
{ "none", 0, false },
|
||||
{ "trace", ISC_MEM_DEBUGTRACE, false },
|
||||
{ "record", ISC_MEM_DEBUGRECORD, false },
|
||||
{ "usage", ISC_MEM_DEBUGUSAGE, false },
|
||||
{ "size", ISC_MEM_DEBUGSIZE, false },
|
||||
{ "mctx", ISC_MEM_DEBUGCTX, false },
|
||||
{ NULL, 0, false }
|
||||
}, mem_context_flags[] = {
|
||||
{ "external", ISC_MEMFLAG_INTERNAL, ISC_TRUE },
|
||||
{ "fill", ISC_MEMFLAG_FILL, ISC_FALSE },
|
||||
{ "nofill", ISC_MEMFLAG_FILL, ISC_TRUE },
|
||||
{ NULL, 0, ISC_FALSE }
|
||||
{ "external", ISC_MEMFLAG_INTERNAL, true },
|
||||
{ "fill", ISC_MEMFLAG_FILL, false },
|
||||
{ "nofill", ISC_MEMFLAG_FILL, true },
|
||||
{ NULL, 0, false }
|
||||
};
|
||||
|
||||
static void
|
||||
set_flags(const char *arg, struct flag_def *defs, unsigned int *ret) {
|
||||
isc_boolean_t clear = ISC_FALSE;
|
||||
bool clear = false;
|
||||
|
||||
for (;;) {
|
||||
const struct flag_def *def;
|
||||
@@ -423,7 +423,7 @@ set_flags(const char *arg, struct flag_def *defs, unsigned int *ret) {
|
||||
if (arglen == (int)strlen(def->name) &&
|
||||
memcmp(arg, def->name, arglen) == 0) {
|
||||
if (def->value == 0)
|
||||
clear = ISC_TRUE;
|
||||
clear = true;
|
||||
if (def->negate)
|
||||
*ret &= ~(def->value);
|
||||
else
|
||||
@@ -481,29 +481,29 @@ parse_T_opt(char *option) {
|
||||
* expected and assert otherwise.
|
||||
*/
|
||||
if (!strcmp(option, "clienttest")) {
|
||||
clienttest = ISC_TRUE;
|
||||
clienttest = true;
|
||||
} else if (!strncmp(option, "delay=", 6)) {
|
||||
delay = atoi(option + 6);
|
||||
} else if (!strcmp(option, "dropedns")) {
|
||||
dropedns = ISC_TRUE;
|
||||
dropedns = true;
|
||||
} else if (!strncmp(option, "dscp=", 5)) {
|
||||
isc_dscp_check_value = atoi(option + 5);
|
||||
} else if (!strcmp(option, "fixedlocal")) {
|
||||
fixedlocal = ISC_TRUE;
|
||||
fixedlocal = true;
|
||||
} else if (!strcmp(option, "keepstderr")) {
|
||||
named_g_keepstderr = ISC_TRUE;
|
||||
named_g_keepstderr = true;
|
||||
} else if (!strcmp(option, "noaa")) {
|
||||
noaa = ISC_TRUE;
|
||||
noaa = true;
|
||||
} else if (!strcmp(option, "noedns")) {
|
||||
noedns = ISC_TRUE;
|
||||
noedns = true;
|
||||
} else if (!strcmp(option, "nonearest")) {
|
||||
nonearest = ISC_TRUE;
|
||||
nonearest = true;
|
||||
} else if (!strcmp(option, "nosoa")) {
|
||||
nosoa = ISC_TRUE;
|
||||
nosoa = true;
|
||||
} else if (!strcmp(option, "nosyslog")) {
|
||||
named_g_nosyslog = ISC_TRUE;
|
||||
named_g_nosyslog = true;
|
||||
} else if (!strcmp(option, "notcp")) {
|
||||
notcp = ISC_TRUE;
|
||||
notcp = true;
|
||||
} else if (!strcmp(option, "maxudp512")) {
|
||||
maxudp = 512;
|
||||
} else if (!strcmp(option, "maxudp1460")) {
|
||||
@@ -543,7 +543,7 @@ parse_T_opt(char *option) {
|
||||
named_main_earlyfatal("bad mkeytimer");
|
||||
}
|
||||
} else if (!strcmp(option, "sigvalinsecs")) {
|
||||
sigvalinsecs = ISC_TRUE;
|
||||
sigvalinsecs = true;
|
||||
} else if (!strncmp(option, "tat=", 4)) {
|
||||
named_g_tat_interval = atoi(option + 4);
|
||||
} else {
|
||||
@@ -563,7 +563,7 @@ parse_command_line(int argc, char *argv[]) {
|
||||
* NAMED_MAIN_ARGS is defined in main.h, so that it can be used
|
||||
* both by named and by ntservice hooks.
|
||||
*/
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
while ((ch = isc_commandline_parse(argc, argv,
|
||||
NAMED_MAIN_ARGS)) != -1)
|
||||
{
|
||||
@@ -576,7 +576,7 @@ parse_command_line(int argc, char *argv[]) {
|
||||
named_main_earlyfatal("IPv4 not supported "
|
||||
"by OS");
|
||||
isc_net_disableipv6();
|
||||
disable6 = ISC_TRUE;
|
||||
disable6 = true;
|
||||
break;
|
||||
case '6':
|
||||
if (disable6)
|
||||
@@ -586,14 +586,14 @@ parse_command_line(int argc, char *argv[]) {
|
||||
named_main_earlyfatal("IPv6 not supported "
|
||||
"by OS");
|
||||
isc_net_disableipv4();
|
||||
disable4 = ISC_TRUE;
|
||||
disable4 = true;
|
||||
break;
|
||||
case 'A':
|
||||
parse_fuzz_arg();
|
||||
break;
|
||||
case 'c':
|
||||
named_g_conffile = isc_commandline_argument;
|
||||
named_g_conffileset = ISC_TRUE;
|
||||
named_g_conffileset = true;
|
||||
break;
|
||||
case 'd':
|
||||
named_g_debuglevel = parse_int(isc_commandline_argument,
|
||||
@@ -606,11 +606,11 @@ parse_command_line(int argc, char *argv[]) {
|
||||
named_g_engine = isc_commandline_argument;
|
||||
break;
|
||||
case 'f':
|
||||
named_g_foreground = ISC_TRUE;
|
||||
named_g_foreground = true;
|
||||
break;
|
||||
case 'g':
|
||||
named_g_foreground = ISC_TRUE;
|
||||
named_g_logstderr = ISC_TRUE;
|
||||
named_g_foreground = true;
|
||||
named_g_logstderr = true;
|
||||
break;
|
||||
case 'L':
|
||||
named_g_logfile = isc_commandline_argument;
|
||||
@@ -639,7 +639,7 @@ parse_command_line(int argc, char *argv[]) {
|
||||
break;
|
||||
case 's':
|
||||
/* XXXRTH temporary syntax */
|
||||
want_stats = ISC_TRUE;
|
||||
want_stats = true;
|
||||
break;
|
||||
case 'S':
|
||||
maxsocks = parse_int(isc_commandline_argument,
|
||||
@@ -691,7 +691,6 @@ parse_command_line(int argc, char *argv[]) {
|
||||
#ifdef __SUNPRO_C
|
||||
printf("compiled by Solaris Studio %x\n", __SUNPRO_C);
|
||||
#endif
|
||||
#if HAVE_OPENSSL
|
||||
printf("compiled with OpenSSL version: %s\n",
|
||||
OPENSSL_VERSION_TEXT);
|
||||
#if !defined(LIBRESSL_VERSION_NUMBER) && \
|
||||
@@ -703,7 +702,6 @@ parse_command_line(int argc, char *argv[]) {
|
||||
printf("linked to OpenSSL version: %s\n",
|
||||
SSLeay_version(SSLEAY_VERSION));
|
||||
#endif /* OPENSSL_VERSION_NUMBER >= 0x10100000L */
|
||||
#endif
|
||||
#ifdef HAVE_LIBXML2
|
||||
printf("compiled with libxml2 version: %s\n",
|
||||
LIBXML_DOTTED_VERSION);
|
||||
@@ -722,17 +720,13 @@ parse_command_line(int argc, char *argv[]) {
|
||||
printf("linked to zlib version: %s\n",
|
||||
zlibVersion());
|
||||
#endif
|
||||
#ifdef ISC_PLATFORM_USETHREADS
|
||||
printf("threads support is enabled\n");
|
||||
#else
|
||||
printf("threads support is disabled\n");
|
||||
#endif
|
||||
exit(0);
|
||||
case 'x':
|
||||
/* Obsolete. No longer in use. Ignore. */
|
||||
break;
|
||||
case 'X':
|
||||
named_g_forcelock = ISC_TRUE;
|
||||
named_g_forcelock = true;
|
||||
if (strcasecmp(isc_commandline_argument, "none") != 0)
|
||||
named_g_defaultlockfile =
|
||||
isc_commandline_argument;
|
||||
@@ -778,18 +772,14 @@ create_managers(void) {
|
||||
|
||||
INSIST(named_g_cpus_detected > 0);
|
||||
|
||||
#ifdef ISC_PLATFORM_USETHREADS
|
||||
if (named_g_cpus == 0)
|
||||
named_g_cpus = named_g_cpus_detected;
|
||||
named_g_cpus = named_g_cpus_detected * 1.5;
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_SERVER, ISC_LOG_INFO,
|
||||
"found %u CPU%s, using %u worker thread%s",
|
||||
named_g_cpus_detected,
|
||||
named_g_cpus_detected == 1 ? "" : "s",
|
||||
named_g_cpus, named_g_cpus == 1 ? "" : "s");
|
||||
#else
|
||||
named_g_cpus = 1;
|
||||
#endif
|
||||
#ifdef WIN32
|
||||
named_g_udpdisp = 1;
|
||||
#else
|
||||
@@ -797,17 +787,15 @@ create_managers(void) {
|
||||
if (named_g_cpus_detected == 1)
|
||||
named_g_udpdisp = 1;
|
||||
else
|
||||
named_g_udpdisp = named_g_cpus_detected - 1;
|
||||
named_g_udpdisp = named_g_cpus_detected;
|
||||
}
|
||||
if (named_g_udpdisp > named_g_cpus)
|
||||
named_g_udpdisp = named_g_cpus;
|
||||
#endif
|
||||
#ifdef ISC_PLATFORM_USETHREADS
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_SERVER, ISC_LOG_INFO,
|
||||
"using %u UDP listener%s per interface",
|
||||
named_g_udpdisp, named_g_udpdisp == 1 ? "" : "s");
|
||||
#endif
|
||||
|
||||
result = isc_taskmgr_create(named_g_mctx, named_g_cpus, 0,
|
||||
&named_g_taskmgr);
|
||||
@@ -834,7 +822,7 @@ create_managers(void) {
|
||||
isc_result_totext(result));
|
||||
return (ISC_R_UNEXPECTED);
|
||||
}
|
||||
isc__socketmgr_maxudp(named_g_socketmgr, maxudp);
|
||||
isc_socketmgr_maxudp(named_g_socketmgr, maxudp);
|
||||
result = isc_socketmgr_getmaxsockets(named_g_socketmgr, &socks);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
@@ -919,12 +907,10 @@ setup(void) {
|
||||
isc_mem_free(named_g_mctx, instance);
|
||||
#endif /* HAVE_LIBSCF */
|
||||
|
||||
#ifdef ISC_PLATFORM_USETHREADS
|
||||
/*
|
||||
* Check for the number of cpu's before named_os_chroot().
|
||||
*/
|
||||
named_g_cpus_detected = isc_os_ncpus();
|
||||
#endif
|
||||
|
||||
named_os_chroot(named_g_chrootdir);
|
||||
|
||||
@@ -938,7 +924,7 @@ setup(void) {
|
||||
*/
|
||||
named_os_minprivs();
|
||||
|
||||
result = named_log_init(ISC_TF(named_g_username != NULL));
|
||||
result = named_log_init(named_g_username != NULL);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
named_main_earlyfatal("named_log_init() failed: %s",
|
||||
isc_result_totext(result));
|
||||
@@ -981,6 +967,79 @@ setup(void) {
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"running as: %s%s",
|
||||
program_name, saved_command_line);
|
||||
#ifdef __clang__
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"compiled by CLANG %s", __VERSION__);
|
||||
#else
|
||||
#if defined(__ICC) || defined(__INTEL_COMPILER)
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"compiled by ICC %s", __VERSION__);
|
||||
#else
|
||||
#ifdef __GNUC__
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"compiled by GCC %s", __VERSION__);
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#ifdef _MSC_VER
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"compiled by MSVC %d", _MSC_VER);
|
||||
#endif
|
||||
#ifdef __SUNPRO_C
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"compiled by Solaris Studio %x", __SUNPRO_C);
|
||||
#endif
|
||||
#ifdef OPENSSL
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"compiled with OpenSSL version: %s",
|
||||
OPENSSL_VERSION_TEXT);
|
||||
#if !defined(LIBRESSL_VERSION_NUMBER) && \
|
||||
OPENSSL_VERSION_NUMBER >= 0x10100000L /* 1.1.0 or higher */
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"linked to OpenSSL version: %s",
|
||||
OpenSSL_version(OPENSSL_VERSION));
|
||||
#else
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"linked to OpenSSL version: %s",
|
||||
SSLeay_version(SSLEAY_VERSION));
|
||||
#endif /* OPENSSL_VERSION_NUMBER >= 0x10100000L */
|
||||
#endif
|
||||
#ifdef HAVE_LIBXML2
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"compiled with libxml2 version: %s",
|
||||
LIBXML_DOTTED_VERSION);
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"linked to libxml2 version: %s", xmlParserVersion);
|
||||
#endif
|
||||
#if defined(HAVE_JSON) && defined(JSON_C_VERSION)
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"compiled with libjson-c version: %s", JSON_C_VERSION);
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"linked to libjson-c version: %s", json_c_version());
|
||||
#endif
|
||||
#if defined(HAVE_ZLIB) && defined(ZLIB_VERSION)
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"compiled with zlib version: %s", ZLIB_VERSION);
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"linked to zlib version: %s", zlibVersion());
|
||||
#endif
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"threads support is enabled");
|
||||
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
@@ -1027,8 +1086,8 @@ setup(void) {
|
||||
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
|
||||
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
|
||||
"adjusted limit on open files from "
|
||||
"%" ISC_PRINT_QUADFORMAT "u to "
|
||||
"%" ISC_PRINT_QUADFORMAT "u",
|
||||
"%" PRIu64 " to "
|
||||
"%" PRIu64,
|
||||
old_openfiles, named_g_initopenfiles);
|
||||
}
|
||||
|
||||
@@ -1095,27 +1154,27 @@ setup(void) {
|
||||
* Modify server context according to command line options
|
||||
*/
|
||||
if (clienttest)
|
||||
ns_server_setoption(sctx, NS_SERVER_CLIENTTEST, ISC_TRUE);
|
||||
ns_server_setoption(sctx, NS_SERVER_CLIENTTEST, true);
|
||||
if (dropedns)
|
||||
ns_server_setoption(sctx, NS_SERVER_DROPEDNS, ISC_TRUE);
|
||||
ns_server_setoption(sctx, NS_SERVER_DROPEDNS, true);
|
||||
if (noedns)
|
||||
ns_server_setoption(sctx, NS_SERVER_NOEDNS, ISC_TRUE);
|
||||
ns_server_setoption(sctx, NS_SERVER_NOEDNS, true);
|
||||
if (nosoa)
|
||||
ns_server_setoption(sctx, NS_SERVER_NOSOA, ISC_TRUE);
|
||||
ns_server_setoption(sctx, NS_SERVER_NOSOA, true);
|
||||
if (noaa)
|
||||
ns_server_setoption(sctx, NS_SERVER_NOAA, ISC_TRUE);
|
||||
ns_server_setoption(sctx, NS_SERVER_NOAA, true);
|
||||
if (nonearest)
|
||||
ns_server_setoption(sctx, NS_SERVER_NONEAREST, ISC_TRUE);
|
||||
ns_server_setoption(sctx, NS_SERVER_NONEAREST, true);
|
||||
if (notcp)
|
||||
ns_server_setoption(sctx, NS_SERVER_NOTCP, ISC_TRUE);
|
||||
ns_server_setoption(sctx, NS_SERVER_NOTCP, true);
|
||||
if (fixedlocal)
|
||||
ns_server_setoption(sctx, NS_SERVER_FIXEDLOCAL, ISC_TRUE);
|
||||
ns_server_setoption(sctx, NS_SERVER_FIXEDLOCAL, true);
|
||||
if (disable4)
|
||||
ns_server_setoption(sctx, NS_SERVER_DISABLE4, ISC_TRUE);
|
||||
ns_server_setoption(sctx, NS_SERVER_DISABLE4, true);
|
||||
if (disable6)
|
||||
ns_server_setoption(sctx, NS_SERVER_DISABLE6, ISC_TRUE);
|
||||
ns_server_setoption(sctx, NS_SERVER_DISABLE6, true);
|
||||
if (sigvalinsecs)
|
||||
ns_server_setoption(sctx, NS_SERVER_SIGVALINSECS, ISC_TRUE);
|
||||
ns_server_setoption(sctx, NS_SERVER_SIGVALINSECS, true);
|
||||
|
||||
named_g_server->sctx->delay = delay;
|
||||
}
|
||||
@@ -1279,7 +1338,7 @@ main(int argc, char *argv[]) {
|
||||
dns_result_register();
|
||||
dst_result_register();
|
||||
isccc_result_register();
|
||||
#if HAVE_PKCS11
|
||||
#if USE_PKCS11
|
||||
pk11_result_register();
|
||||
#endif
|
||||
|
||||
|
||||
+24
-15
@@ -10,12 +10,12 @@
|
||||
.\" Title: named.conf
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
|
||||
.\" Date: 2018-01-22
|
||||
.\" Date: 2018-05-29
|
||||
.\" Manual: BIND9
|
||||
.\" Source: ISC
|
||||
.\" Language: English
|
||||
.\"
|
||||
.TH "NAMED\&.CONF" "5" "2018\-01\-22" "ISC" "BIND9"
|
||||
.TH "NAMED\&.CONF" "5" "2018\-05\-29" "ISC" "BIND9"
|
||||
.\" -----------------------------------------------------------------
|
||||
.\" * Define some portability stuff
|
||||
.\" -----------------------------------------------------------------
|
||||
@@ -212,7 +212,7 @@ options {
|
||||
\fIinteger\fR ] [ dscp \fIinteger\fR ] { ( \fImasters\fR | \fIipv4_address\fR [
|
||||
port \fIinteger\fR ] | \fIipv6_address\fR [ port \fIinteger\fR ] ) [ key
|
||||
\fIstring\fR ]; \&.\&.\&. } ] [ zone\-directory \fIquoted_string\fR ] [
|
||||
in\-memory \fIboolean\fR ] [ min\-update\-interval \fIinteger\fR ]; \&.\&.\&. };
|
||||
in\-memory \fIboolean\fR ] [ min\-update\-interval \fIttlval\fR ]; \&.\&.\&. };
|
||||
check\-dup\-records ( fail | warn | ignore );
|
||||
check\-integrity \fIboolean\fR;
|
||||
check\-mx ( fail | warn | ignore );
|
||||
@@ -251,6 +251,7 @@ options {
|
||||
};
|
||||
dns64\-contact \fIstring\fR;
|
||||
dns64\-server \fIstring\fR;
|
||||
dnskey\-sig\-validity \fIinteger\fR;
|
||||
dnsrps\-enable \fIboolean\fR;
|
||||
dnsrps\-options { \fIunspecified\-text\fR };
|
||||
dnssec\-accept\-expired \fIboolean\fR;
|
||||
@@ -299,14 +300,13 @@ options {
|
||||
fstrm\-set\-output\-notify\-threshold \fIinteger\fR;
|
||||
fstrm\-set\-output\-queue\-model ( mpsc | spsc );
|
||||
fstrm\-set\-output\-queue\-size \fIinteger\fR;
|
||||
fstrm\-set\-reopen\-interval \fIinteger\fR;
|
||||
fstrm\-set\-reopen\-interval \fIttlval\fR;
|
||||
geoip\-directory ( \fIquoted_string\fR | none );
|
||||
geoip\-use\-ecs \fIboolean\fR;
|
||||
glue\-cache \fIboolean\fR;
|
||||
heartbeat\-interval \fIinteger\fR;
|
||||
hostname ( \fIquoted_string\fR | none );
|
||||
inline\-signing \fIboolean\fR;
|
||||
interface\-interval \fIinteger\fR;
|
||||
interface\-interval \fIttlval\fR;
|
||||
ixfr\-from\-differences ( primary | master | secondary | slave |
|
||||
\fIboolean\fR );
|
||||
keep\-response\-order { \fIaddress_match_element\fR; \&.\&.\&. };
|
||||
@@ -325,10 +325,10 @@ options {
|
||||
masterfile\-style ( full | relative );
|
||||
match\-mapped\-addresses \fIboolean\fR;
|
||||
max\-cache\-size ( default | unlimited | \fIsizeval\fR | \fIpercentage\fR );
|
||||
max\-cache\-ttl \fIinteger\fR;
|
||||
max\-cache\-ttl \fIttlval\fR;
|
||||
max\-clients\-per\-query \fIinteger\fR;
|
||||
max\-journal\-size ( default | unlimited | \fIsizeval\fR );
|
||||
max\-ncache\-ttl \fIinteger\fR;
|
||||
max\-ncache\-ttl \fIttlval\fR;
|
||||
max\-records \fIinteger\fR;
|
||||
max\-recursion\-depth \fIinteger\fR;
|
||||
max\-recursion\-queries \fIinteger\fR;
|
||||
@@ -369,6 +369,7 @@ options {
|
||||
preferred\-glue \fIstring\fR;
|
||||
prefetch \fIinteger\fR [ \fIinteger\fR ];
|
||||
provide\-ixfr \fIboolean\fR;
|
||||
qname\-minimization ( strict | relaxed | disabled );
|
||||
query\-source ( ( [ address ] ( \fIipv4_address\fR | * ) [ port (
|
||||
\fIinteger\fR | * ) ] ) | ( [ [ address ] ( \fIipv4_address\fR | * ) ]
|
||||
port ( \fIinteger\fR | * ) ) ) [ dscp \fIinteger\fR ];
|
||||
@@ -408,18 +409,19 @@ options {
|
||||
response\-padding { \fIaddress_match_element\fR; \&.\&.\&. } block\-size
|
||||
\fIinteger\fR;
|
||||
response\-policy { zone \fIquoted_string\fR [ log \fIboolean\fR ] [
|
||||
max\-policy\-ttl \fIinteger\fR ] [ min\-update\-interval \fIinteger\fR ] [
|
||||
max\-policy\-ttl \fIttlval\fR ] [ min\-update\-interval \fIttlval\fR ] [
|
||||
policy ( cname | disabled | drop | given | no\-op | nodata |
|
||||
nxdomain | passthru | tcp\-only \fIquoted_string\fR ) ] [
|
||||
recursive\-only \fIboolean\fR ] [ nsip\-enable \fIboolean\fR ] [
|
||||
nsdname\-enable \fIboolean\fR ]; \&.\&.\&. } [ break\-dnssec \fIboolean\fR ] [
|
||||
max\-policy\-ttl \fIinteger\fR ] [ min\-update\-interval \fIinteger\fR ] [
|
||||
max\-policy\-ttl \fIttlval\fR ] [ min\-update\-interval \fIttlval\fR ] [
|
||||
min\-ns\-dots \fIinteger\fR ] [ nsip\-wait\-recurse \fIboolean\fR ] [
|
||||
qname\-wait\-recurse \fIboolean\fR ] [ recursive\-only \fIboolean\fR ] [
|
||||
nsip\-enable \fIboolean\fR ] [ nsdname\-enable \fIboolean\fR ] [
|
||||
dnsrps\-enable \fIboolean\fR ] [ dnsrps\-options { \fIunspecified\-text\fR
|
||||
} ];
|
||||
root\-delegation\-only [ exclude { \fIquoted_string\fR; \&.\&.\&. } ];
|
||||
root\-key\-sentinel \fIboolean\fR;
|
||||
rrset\-order { [ class \fIstring\fR ] [ type \fIstring\fR ] [ name
|
||||
\fIquoted_string\fR ] \fIstring\fR \fIstring\fR; \&.\&.\&. };
|
||||
secroots\-file \fIquoted_string\fR;
|
||||
@@ -580,7 +582,7 @@ view \fIstring\fR [ \fIclass\fR ] {
|
||||
\fIinteger\fR ] [ dscp \fIinteger\fR ] { ( \fImasters\fR | \fIipv4_address\fR [
|
||||
port \fIinteger\fR ] | \fIipv6_address\fR [ port \fIinteger\fR ] ) [ key
|
||||
\fIstring\fR ]; \&.\&.\&. } ] [ zone\-directory \fIquoted_string\fR ] [
|
||||
in\-memory \fIboolean\fR ] [ min\-update\-interval \fIinteger\fR ]; \&.\&.\&. };
|
||||
in\-memory \fIboolean\fR ] [ min\-update\-interval \fIttlval\fR ]; \&.\&.\&. };
|
||||
check\-dup\-records ( fail | warn | ignore );
|
||||
check\-integrity \fIboolean\fR;
|
||||
check\-mx ( fail | warn | ignore );
|
||||
@@ -618,6 +620,7 @@ view \fIstring\fR [ \fIclass\fR ] {
|
||||
};
|
||||
dns64\-contact \fIstring\fR;
|
||||
dns64\-server \fIstring\fR;
|
||||
dnskey\-sig\-validity \fIinteger\fR;
|
||||
dnsrps\-enable \fIboolean\fR;
|
||||
dnsrps\-options { \fIunspecified\-text\fR };
|
||||
dnssec\-accept\-expired \fIboolean\fR;
|
||||
@@ -671,10 +674,10 @@ view \fIstring\fR [ \fIclass\fR ] {
|
||||
match\-destinations { \fIaddress_match_element\fR; \&.\&.\&. };
|
||||
match\-recursive\-only \fIboolean\fR;
|
||||
max\-cache\-size ( default | unlimited | \fIsizeval\fR | \fIpercentage\fR );
|
||||
max\-cache\-ttl \fIinteger\fR;
|
||||
max\-cache\-ttl \fIttlval\fR;
|
||||
max\-clients\-per\-query \fIinteger\fR;
|
||||
max\-journal\-size ( default | unlimited | \fIsizeval\fR );
|
||||
max\-ncache\-ttl \fIinteger\fR;
|
||||
max\-ncache\-ttl \fIttlval\fR;
|
||||
max\-records \fIinteger\fR;
|
||||
max\-recursion\-depth \fIinteger\fR;
|
||||
max\-recursion\-queries \fIinteger\fR;
|
||||
@@ -709,6 +712,7 @@ view \fIstring\fR [ \fIclass\fR ] {
|
||||
preferred\-glue \fIstring\fR;
|
||||
prefetch \fIinteger\fR [ \fIinteger\fR ];
|
||||
provide\-ixfr \fIboolean\fR;
|
||||
qname\-minimization ( strict | relaxed | disabled );
|
||||
query\-source ( ( [ address ] ( \fIipv4_address\fR | * ) [ port (
|
||||
\fIinteger\fR | * ) ] ) | ( [ [ address ] ( \fIipv4_address\fR | * ) ]
|
||||
port ( \fIinteger\fR | * ) ) ) [ dscp \fIinteger\fR ];
|
||||
@@ -743,18 +747,19 @@ view \fIstring\fR [ \fIclass\fR ] {
|
||||
response\-padding { \fIaddress_match_element\fR; \&.\&.\&. } block\-size
|
||||
\fIinteger\fR;
|
||||
response\-policy { zone \fIquoted_string\fR [ log \fIboolean\fR ] [
|
||||
max\-policy\-ttl \fIinteger\fR ] [ min\-update\-interval \fIinteger\fR ] [
|
||||
max\-policy\-ttl \fIttlval\fR ] [ min\-update\-interval \fIttlval\fR ] [
|
||||
policy ( cname | disabled | drop | given | no\-op | nodata |
|
||||
nxdomain | passthru | tcp\-only \fIquoted_string\fR ) ] [
|
||||
recursive\-only \fIboolean\fR ] [ nsip\-enable \fIboolean\fR ] [
|
||||
nsdname\-enable \fIboolean\fR ]; \&.\&.\&. } [ break\-dnssec \fIboolean\fR ] [
|
||||
max\-policy\-ttl \fIinteger\fR ] [ min\-update\-interval \fIinteger\fR ] [
|
||||
max\-policy\-ttl \fIttlval\fR ] [ min\-update\-interval \fIttlval\fR ] [
|
||||
min\-ns\-dots \fIinteger\fR ] [ nsip\-wait\-recurse \fIboolean\fR ] [
|
||||
qname\-wait\-recurse \fIboolean\fR ] [ recursive\-only \fIboolean\fR ] [
|
||||
nsip\-enable \fIboolean\fR ] [ nsdname\-enable \fIboolean\fR ] [
|
||||
dnsrps\-enable \fIboolean\fR ] [ dnsrps\-options { \fIunspecified\-text\fR
|
||||
} ];
|
||||
root\-delegation\-only [ exclude { \fIquoted_string\fR; \&.\&.\&. } ];
|
||||
root\-key\-sentinel \fIboolean\fR;
|
||||
rrset\-order { [ class \fIstring\fR ] [ type \fIstring\fR ] [ name
|
||||
\fIquoted_string\fR ] \fIstring\fR \fIstring\fR; \&.\&.\&. };
|
||||
send\-cookie \fIboolean\fR;
|
||||
@@ -847,6 +852,7 @@ view \fIstring\fR [ \fIclass\fR ] {
|
||||
dialup ( notify | notify\-passive | passive | refresh |
|
||||
\fIboolean\fR );
|
||||
dlz \fIstring\fR;
|
||||
dnskey\-sig\-validity \fIinteger\fR;
|
||||
dnssec\-dnskey\-kskonly \fIboolean\fR;
|
||||
dnssec\-loadkeys\-interval \fIinteger\fR;
|
||||
dnssec\-secure\-to\-insecure \fIboolean\fR;
|
||||
@@ -878,6 +884,7 @@ view \fIstring\fR [ \fIclass\fR ] {
|
||||
max\-zone\-ttl ( unlimited | \fIttlval\fR );
|
||||
min\-refresh\-time \fIinteger\fR;
|
||||
min\-retry\-time \fIinteger\fR;
|
||||
mirror \fIboolean\fR;
|
||||
multi\-master \fIboolean\fR;
|
||||
notify ( explicit | master\-only | \fIboolean\fR );
|
||||
notify\-delay \fIinteger\fR;
|
||||
@@ -957,6 +964,7 @@ zone \fIstring\fR [ \fIclass\fR ] {
|
||||
delegation\-only \fIboolean\fR;
|
||||
dialup ( notify | notify\-passive | passive | refresh | \fIboolean\fR );
|
||||
dlz \fIstring\fR;
|
||||
dnskey\-sig\-validity \fIinteger\fR;
|
||||
dnssec\-dnskey\-kskonly \fIboolean\fR;
|
||||
dnssec\-loadkeys\-interval \fIinteger\fR;
|
||||
dnssec\-secure\-to\-insecure \fIboolean\fR;
|
||||
@@ -986,6 +994,7 @@ zone \fIstring\fR [ \fIclass\fR ] {
|
||||
max\-zone\-ttl ( unlimited | \fIttlval\fR );
|
||||
min\-refresh\-time \fIinteger\fR;
|
||||
min\-retry\-time \fIinteger\fR;
|
||||
mirror \fIboolean\fR;
|
||||
multi\-master \fIboolean\fR;
|
||||
notify ( explicit | master\-only | \fIboolean\fR );
|
||||
notify\-delay \fIinteger\fR;
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.named.conf">
|
||||
<info>
|
||||
<date>2018-01-22</date>
|
||||
<date>2018-05-29</date>
|
||||
</info>
|
||||
<refentryinfo>
|
||||
<corpname>ISC</corpname>
|
||||
@@ -205,7 +205,7 @@ options {
|
||||
<replaceable>integer</replaceable> ] [ dscp <replaceable>integer</replaceable> ] { ( <replaceable>masters</replaceable> | <replaceable>ipv4_address</replaceable> [
|
||||
port <replaceable>integer</replaceable> ] | <replaceable>ipv6_address</replaceable> [ port <replaceable>integer</replaceable> ] ) [ key
|
||||
<replaceable>string</replaceable> ]; ... } ] [ zone-directory <replaceable>quoted_string</replaceable> ] [
|
||||
in-memory <replaceable>boolean</replaceable> ] [ min-update-interval <replaceable>integer</replaceable> ]; ... };
|
||||
in-memory <replaceable>boolean</replaceable> ] [ min-update-interval <replaceable>ttlval</replaceable> ]; ... };
|
||||
check-dup-records ( fail | warn | ignore );
|
||||
check-integrity <replaceable>boolean</replaceable>;
|
||||
check-mx ( fail | warn | ignore );
|
||||
@@ -244,6 +244,7 @@ options {
|
||||
};
|
||||
dns64-contact <replaceable>string</replaceable>;
|
||||
dns64-server <replaceable>string</replaceable>;
|
||||
dnskey-sig-validity <replaceable>integer</replaceable>;
|
||||
dnsrps-enable <replaceable>boolean</replaceable>;
|
||||
dnsrps-options { <replaceable>unspecified-text</replaceable> };
|
||||
dnssec-accept-expired <replaceable>boolean</replaceable>;
|
||||
@@ -292,14 +293,13 @@ options {
|
||||
fstrm-set-output-notify-threshold <replaceable>integer</replaceable>;
|
||||
fstrm-set-output-queue-model ( mpsc | spsc );
|
||||
fstrm-set-output-queue-size <replaceable>integer</replaceable>;
|
||||
fstrm-set-reopen-interval <replaceable>integer</replaceable>;
|
||||
fstrm-set-reopen-interval <replaceable>ttlval</replaceable>;
|
||||
geoip-directory ( <replaceable>quoted_string</replaceable> | none );
|
||||
geoip-use-ecs <replaceable>boolean</replaceable>;
|
||||
glue-cache <replaceable>boolean</replaceable>;
|
||||
heartbeat-interval <replaceable>integer</replaceable>;
|
||||
hostname ( <replaceable>quoted_string</replaceable> | none );
|
||||
inline-signing <replaceable>boolean</replaceable>;
|
||||
interface-interval <replaceable>integer</replaceable>;
|
||||
interface-interval <replaceable>ttlval</replaceable>;
|
||||
ixfr-from-differences ( primary | master | secondary | slave |
|
||||
<replaceable>boolean</replaceable> );
|
||||
keep-response-order { <replaceable>address_match_element</replaceable>; ... };
|
||||
@@ -318,10 +318,10 @@ options {
|
||||
masterfile-style ( full | relative );
|
||||
match-mapped-addresses <replaceable>boolean</replaceable>;
|
||||
max-cache-size ( default | unlimited | <replaceable>sizeval</replaceable> | <replaceable>percentage</replaceable> );
|
||||
max-cache-ttl <replaceable>integer</replaceable>;
|
||||
max-cache-ttl <replaceable>ttlval</replaceable>;
|
||||
max-clients-per-query <replaceable>integer</replaceable>;
|
||||
max-journal-size ( default | unlimited | <replaceable>sizeval</replaceable> );
|
||||
max-ncache-ttl <replaceable>integer</replaceable>;
|
||||
max-ncache-ttl <replaceable>ttlval</replaceable>;
|
||||
max-records <replaceable>integer</replaceable>;
|
||||
max-recursion-depth <replaceable>integer</replaceable>;
|
||||
max-recursion-queries <replaceable>integer</replaceable>;
|
||||
@@ -362,6 +362,7 @@ options {
|
||||
preferred-glue <replaceable>string</replaceable>;
|
||||
prefetch <replaceable>integer</replaceable> [ <replaceable>integer</replaceable> ];
|
||||
provide-ixfr <replaceable>boolean</replaceable>;
|
||||
qname-minimization ( strict | relaxed | disabled );
|
||||
query-source ( ( [ address ] ( <replaceable>ipv4_address</replaceable> | * ) [ port (
|
||||
<replaceable>integer</replaceable> | * ) ] ) | ( [ [ address ] ( <replaceable>ipv4_address</replaceable> | * ) ]
|
||||
port ( <replaceable>integer</replaceable> | * ) ) ) [ dscp <replaceable>integer</replaceable> ];
|
||||
@@ -401,18 +402,19 @@ options {
|
||||
response-padding { <replaceable>address_match_element</replaceable>; ... } block-size
|
||||
<replaceable>integer</replaceable>;
|
||||
response-policy { zone <replaceable>quoted_string</replaceable> [ log <replaceable>boolean</replaceable> ] [
|
||||
max-policy-ttl <replaceable>integer</replaceable> ] [ min-update-interval <replaceable>integer</replaceable> ] [
|
||||
max-policy-ttl <replaceable>ttlval</replaceable> ] [ min-update-interval <replaceable>ttlval</replaceable> ] [
|
||||
policy ( cname | disabled | drop | given | no-op | nodata |
|
||||
nxdomain | passthru | tcp-only <replaceable>quoted_string</replaceable> ) ] [
|
||||
recursive-only <replaceable>boolean</replaceable> ] [ nsip-enable <replaceable>boolean</replaceable> ] [
|
||||
nsdname-enable <replaceable>boolean</replaceable> ]; ... } [ break-dnssec <replaceable>boolean</replaceable> ] [
|
||||
max-policy-ttl <replaceable>integer</replaceable> ] [ min-update-interval <replaceable>integer</replaceable> ] [
|
||||
max-policy-ttl <replaceable>ttlval</replaceable> ] [ min-update-interval <replaceable>ttlval</replaceable> ] [
|
||||
min-ns-dots <replaceable>integer</replaceable> ] [ nsip-wait-recurse <replaceable>boolean</replaceable> ] [
|
||||
qname-wait-recurse <replaceable>boolean</replaceable> ] [ recursive-only <replaceable>boolean</replaceable> ] [
|
||||
nsip-enable <replaceable>boolean</replaceable> ] [ nsdname-enable <replaceable>boolean</replaceable> ] [
|
||||
dnsrps-enable <replaceable>boolean</replaceable> ] [ dnsrps-options { <replaceable>unspecified-text</replaceable>
|
||||
} ];
|
||||
root-delegation-only [ exclude { <replaceable>quoted_string</replaceable>; ... } ];
|
||||
root-key-sentinel <replaceable>boolean</replaceable>;
|
||||
rrset-order { [ class <replaceable>string</replaceable> ] [ type <replaceable>string</replaceable> ] [ name
|
||||
<replaceable>quoted_string</replaceable> ] <replaceable>string</replaceable> <replaceable>string</replaceable>; ... };
|
||||
secroots-file <replaceable>quoted_string</replaceable>;
|
||||
@@ -557,7 +559,7 @@ view <replaceable>string</replaceable> [ <replaceable>class</replaceable> ] {
|
||||
<replaceable>integer</replaceable> ] [ dscp <replaceable>integer</replaceable> ] { ( <replaceable>masters</replaceable> | <replaceable>ipv4_address</replaceable> [
|
||||
port <replaceable>integer</replaceable> ] | <replaceable>ipv6_address</replaceable> [ port <replaceable>integer</replaceable> ] ) [ key
|
||||
<replaceable>string</replaceable> ]; ... } ] [ zone-directory <replaceable>quoted_string</replaceable> ] [
|
||||
in-memory <replaceable>boolean</replaceable> ] [ min-update-interval <replaceable>integer</replaceable> ]; ... };
|
||||
in-memory <replaceable>boolean</replaceable> ] [ min-update-interval <replaceable>ttlval</replaceable> ]; ... };
|
||||
check-dup-records ( fail | warn | ignore );
|
||||
check-integrity <replaceable>boolean</replaceable>;
|
||||
check-mx ( fail | warn | ignore );
|
||||
@@ -595,6 +597,7 @@ view <replaceable>string</replaceable> [ <replaceable>class</replaceable> ] {
|
||||
};
|
||||
dns64-contact <replaceable>string</replaceable>;
|
||||
dns64-server <replaceable>string</replaceable>;
|
||||
dnskey-sig-validity <replaceable>integer</replaceable>;
|
||||
dnsrps-enable <replaceable>boolean</replaceable>;
|
||||
dnsrps-options { <replaceable>unspecified-text</replaceable> };
|
||||
dnssec-accept-expired <replaceable>boolean</replaceable>;
|
||||
@@ -648,10 +651,10 @@ view <replaceable>string</replaceable> [ <replaceable>class</replaceable> ] {
|
||||
match-destinations { <replaceable>address_match_element</replaceable>; ... };
|
||||
match-recursive-only <replaceable>boolean</replaceable>;
|
||||
max-cache-size ( default | unlimited | <replaceable>sizeval</replaceable> | <replaceable>percentage</replaceable> );
|
||||
max-cache-ttl <replaceable>integer</replaceable>;
|
||||
max-cache-ttl <replaceable>ttlval</replaceable>;
|
||||
max-clients-per-query <replaceable>integer</replaceable>;
|
||||
max-journal-size ( default | unlimited | <replaceable>sizeval</replaceable> );
|
||||
max-ncache-ttl <replaceable>integer</replaceable>;
|
||||
max-ncache-ttl <replaceable>ttlval</replaceable>;
|
||||
max-records <replaceable>integer</replaceable>;
|
||||
max-recursion-depth <replaceable>integer</replaceable>;
|
||||
max-recursion-queries <replaceable>integer</replaceable>;
|
||||
@@ -686,6 +689,7 @@ view <replaceable>string</replaceable> [ <replaceable>class</replaceable> ] {
|
||||
preferred-glue <replaceable>string</replaceable>;
|
||||
prefetch <replaceable>integer</replaceable> [ <replaceable>integer</replaceable> ];
|
||||
provide-ixfr <replaceable>boolean</replaceable>;
|
||||
qname-minimization ( strict | relaxed | disabled );
|
||||
query-source ( ( [ address ] ( <replaceable>ipv4_address</replaceable> | * ) [ port (
|
||||
<replaceable>integer</replaceable> | * ) ] ) | ( [ [ address ] ( <replaceable>ipv4_address</replaceable> | * ) ]
|
||||
port ( <replaceable>integer</replaceable> | * ) ) ) [ dscp <replaceable>integer</replaceable> ];
|
||||
@@ -720,18 +724,19 @@ view <replaceable>string</replaceable> [ <replaceable>class</replaceable> ] {
|
||||
response-padding { <replaceable>address_match_element</replaceable>; ... } block-size
|
||||
<replaceable>integer</replaceable>;
|
||||
response-policy { zone <replaceable>quoted_string</replaceable> [ log <replaceable>boolean</replaceable> ] [
|
||||
max-policy-ttl <replaceable>integer</replaceable> ] [ min-update-interval <replaceable>integer</replaceable> ] [
|
||||
max-policy-ttl <replaceable>ttlval</replaceable> ] [ min-update-interval <replaceable>ttlval</replaceable> ] [
|
||||
policy ( cname | disabled | drop | given | no-op | nodata |
|
||||
nxdomain | passthru | tcp-only <replaceable>quoted_string</replaceable> ) ] [
|
||||
recursive-only <replaceable>boolean</replaceable> ] [ nsip-enable <replaceable>boolean</replaceable> ] [
|
||||
nsdname-enable <replaceable>boolean</replaceable> ]; ... } [ break-dnssec <replaceable>boolean</replaceable> ] [
|
||||
max-policy-ttl <replaceable>integer</replaceable> ] [ min-update-interval <replaceable>integer</replaceable> ] [
|
||||
max-policy-ttl <replaceable>ttlval</replaceable> ] [ min-update-interval <replaceable>ttlval</replaceable> ] [
|
||||
min-ns-dots <replaceable>integer</replaceable> ] [ nsip-wait-recurse <replaceable>boolean</replaceable> ] [
|
||||
qname-wait-recurse <replaceable>boolean</replaceable> ] [ recursive-only <replaceable>boolean</replaceable> ] [
|
||||
nsip-enable <replaceable>boolean</replaceable> ] [ nsdname-enable <replaceable>boolean</replaceable> ] [
|
||||
dnsrps-enable <replaceable>boolean</replaceable> ] [ dnsrps-options { <replaceable>unspecified-text</replaceable>
|
||||
} ];
|
||||
root-delegation-only [ exclude { <replaceable>quoted_string</replaceable>; ... } ];
|
||||
root-key-sentinel <replaceable>boolean</replaceable>;
|
||||
rrset-order { [ class <replaceable>string</replaceable> ] [ type <replaceable>string</replaceable> ] [ name
|
||||
<replaceable>quoted_string</replaceable> ] <replaceable>string</replaceable> <replaceable>string</replaceable>; ... };
|
||||
send-cookie <replaceable>boolean</replaceable>;
|
||||
@@ -824,6 +829,7 @@ view <replaceable>string</replaceable> [ <replaceable>class</replaceable> ] {
|
||||
dialup ( notify | notify-passive | passive | refresh |
|
||||
<replaceable>boolean</replaceable> );
|
||||
dlz <replaceable>string</replaceable>;
|
||||
dnskey-sig-validity <replaceable>integer</replaceable>;
|
||||
dnssec-dnskey-kskonly <replaceable>boolean</replaceable>;
|
||||
dnssec-loadkeys-interval <replaceable>integer</replaceable>;
|
||||
dnssec-secure-to-insecure <replaceable>boolean</replaceable>;
|
||||
@@ -855,6 +861,7 @@ view <replaceable>string</replaceable> [ <replaceable>class</replaceable> ] {
|
||||
max-zone-ttl ( unlimited | <replaceable>ttlval</replaceable> );
|
||||
min-refresh-time <replaceable>integer</replaceable>;
|
||||
min-retry-time <replaceable>integer</replaceable>;
|
||||
mirror <replaceable>boolean</replaceable>;
|
||||
multi-master <replaceable>boolean</replaceable>;
|
||||
notify ( explicit | master-only | <replaceable>boolean</replaceable> );
|
||||
notify-delay <replaceable>integer</replaceable>;
|
||||
@@ -930,6 +937,7 @@ zone <replaceable>string</replaceable> [ <replaceable>class</replaceable> ] {
|
||||
delegation-only <replaceable>boolean</replaceable>;
|
||||
dialup ( notify | notify-passive | passive | refresh | <replaceable>boolean</replaceable> );
|
||||
dlz <replaceable>string</replaceable>;
|
||||
dnskey-sig-validity <replaceable>integer</replaceable>;
|
||||
dnssec-dnskey-kskonly <replaceable>boolean</replaceable>;
|
||||
dnssec-loadkeys-interval <replaceable>integer</replaceable>;
|
||||
dnssec-secure-to-insecure <replaceable>boolean</replaceable>;
|
||||
@@ -959,6 +967,7 @@ zone <replaceable>string</replaceable> [ <replaceable>class</replaceable> ] {
|
||||
max-zone-ttl ( unlimited | <replaceable>ttlval</replaceable> );
|
||||
min-refresh-time <replaceable>integer</replaceable>;
|
||||
min-retry-time <replaceable>integer</replaceable>;
|
||||
mirror <replaceable>boolean</replaceable>;
|
||||
multi-master <replaceable>boolean</replaceable>;
|
||||
notify ( explicit | master-only | <replaceable>boolean</replaceable> );
|
||||
notify-delay <replaceable>integer</replaceable>;
|
||||
|
||||
+22
-13
@@ -193,7 +193,7 @@ options
|
||||
<em class="replaceable"><code>integer</code></em> ] [ dscp <em class="replaceable"><code>integer</code></em> ] { ( <em class="replaceable"><code>masters</code></em> | <em class="replaceable"><code>ipv4_address</code></em> [<br>
|
||||
port <em class="replaceable"><code>integer</code></em> ] | <em class="replaceable"><code>ipv6_address</code></em> [ port <em class="replaceable"><code>integer</code></em> ] ) [ key<br>
|
||||
<em class="replaceable"><code>string</code></em> ]; ... } ] [ zone-directory <em class="replaceable"><code>quoted_string</code></em> ] [<br>
|
||||
in-memory <em class="replaceable"><code>boolean</code></em> ] [ min-update-interval <em class="replaceable"><code>integer</code></em> ]; ... };<br>
|
||||
in-memory <em class="replaceable"><code>boolean</code></em> ] [ min-update-interval <em class="replaceable"><code>ttlval</code></em> ]; ... };<br>
|
||||
check-dup-records ( fail | warn | ignore );<br>
|
||||
check-integrity <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
check-mx ( fail | warn | ignore );<br>
|
||||
@@ -232,6 +232,7 @@ options
|
||||
};<br>
|
||||
dns64-contact <em class="replaceable"><code>string</code></em>;<br>
|
||||
dns64-server <em class="replaceable"><code>string</code></em>;<br>
|
||||
dnskey-sig-validity <em class="replaceable"><code>integer</code></em>;<br>
|
||||
dnsrps-enable <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
dnsrps-options { <em class="replaceable"><code>unspecified-text</code></em> };<br>
|
||||
dnssec-accept-expired <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
@@ -280,14 +281,13 @@ options
|
||||
fstrm-set-output-notify-threshold <em class="replaceable"><code>integer</code></em>;<br>
|
||||
fstrm-set-output-queue-model ( mpsc | spsc );<br>
|
||||
fstrm-set-output-queue-size <em class="replaceable"><code>integer</code></em>;<br>
|
||||
fstrm-set-reopen-interval <em class="replaceable"><code>integer</code></em>;<br>
|
||||
fstrm-set-reopen-interval <em class="replaceable"><code>ttlval</code></em>;<br>
|
||||
geoip-directory ( <em class="replaceable"><code>quoted_string</code></em> | none );<br>
|
||||
geoip-use-ecs <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
glue-cache <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
heartbeat-interval <em class="replaceable"><code>integer</code></em>;<br>
|
||||
hostname ( <em class="replaceable"><code>quoted_string</code></em> | none );<br>
|
||||
inline-signing <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
interface-interval <em class="replaceable"><code>integer</code></em>;<br>
|
||||
interface-interval <em class="replaceable"><code>ttlval</code></em>;<br>
|
||||
ixfr-from-differences ( primary | master | secondary | slave |<br>
|
||||
<em class="replaceable"><code>boolean</code></em> );<br>
|
||||
keep-response-order { <em class="replaceable"><code>address_match_element</code></em>; ... };<br>
|
||||
@@ -306,10 +306,10 @@ options
|
||||
masterfile-style ( full | relative );<br>
|
||||
match-mapped-addresses <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
max-cache-size ( default | unlimited | <em class="replaceable"><code>sizeval</code></em> | <em class="replaceable"><code>percentage</code></em> );<br>
|
||||
max-cache-ttl <em class="replaceable"><code>integer</code></em>;<br>
|
||||
max-cache-ttl <em class="replaceable"><code>ttlval</code></em>;<br>
|
||||
max-clients-per-query <em class="replaceable"><code>integer</code></em>;<br>
|
||||
max-journal-size ( default | unlimited | <em class="replaceable"><code>sizeval</code></em> );<br>
|
||||
max-ncache-ttl <em class="replaceable"><code>integer</code></em>;<br>
|
||||
max-ncache-ttl <em class="replaceable"><code>ttlval</code></em>;<br>
|
||||
max-records <em class="replaceable"><code>integer</code></em>;<br>
|
||||
max-recursion-depth <em class="replaceable"><code>integer</code></em>;<br>
|
||||
max-recursion-queries <em class="replaceable"><code>integer</code></em>;<br>
|
||||
@@ -350,6 +350,7 @@ options
|
||||
preferred-glue <em class="replaceable"><code>string</code></em>;<br>
|
||||
prefetch <em class="replaceable"><code>integer</code></em> [ <em class="replaceable"><code>integer</code></em> ];<br>
|
||||
provide-ixfr <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
qname-minimization ( strict | relaxed | disabled );<br>
|
||||
query-source ( ( [ address ] ( <em class="replaceable"><code>ipv4_address</code></em> | * ) [ port (<br>
|
||||
<em class="replaceable"><code>integer</code></em> | * ) ] ) | ( [ [ address ] ( <em class="replaceable"><code>ipv4_address</code></em> | * ) ]<br>
|
||||
port ( <em class="replaceable"><code>integer</code></em> | * ) ) ) [ dscp <em class="replaceable"><code>integer</code></em> ];<br>
|
||||
@@ -389,18 +390,19 @@ options
|
||||
response-padding { <em class="replaceable"><code>address_match_element</code></em>; ... } block-size<br>
|
||||
<em class="replaceable"><code>integer</code></em>;<br>
|
||||
response-policy { zone <em class="replaceable"><code>quoted_string</code></em> [ log <em class="replaceable"><code>boolean</code></em> ] [<br>
|
||||
max-policy-ttl <em class="replaceable"><code>integer</code></em> ] [ min-update-interval <em class="replaceable"><code>integer</code></em> ] [<br>
|
||||
max-policy-ttl <em class="replaceable"><code>ttlval</code></em> ] [ min-update-interval <em class="replaceable"><code>ttlval</code></em> ] [<br>
|
||||
policy ( cname | disabled | drop | given | no-op | nodata |<br>
|
||||
nxdomain | passthru | tcp-only <em class="replaceable"><code>quoted_string</code></em> ) ] [<br>
|
||||
recursive-only <em class="replaceable"><code>boolean</code></em> ] [ nsip-enable <em class="replaceable"><code>boolean</code></em> ] [<br>
|
||||
nsdname-enable <em class="replaceable"><code>boolean</code></em> ]; ... } [ break-dnssec <em class="replaceable"><code>boolean</code></em> ] [<br>
|
||||
max-policy-ttl <em class="replaceable"><code>integer</code></em> ] [ min-update-interval <em class="replaceable"><code>integer</code></em> ] [<br>
|
||||
max-policy-ttl <em class="replaceable"><code>ttlval</code></em> ] [ min-update-interval <em class="replaceable"><code>ttlval</code></em> ] [<br>
|
||||
min-ns-dots <em class="replaceable"><code>integer</code></em> ] [ nsip-wait-recurse <em class="replaceable"><code>boolean</code></em> ] [<br>
|
||||
qname-wait-recurse <em class="replaceable"><code>boolean</code></em> ] [ recursive-only <em class="replaceable"><code>boolean</code></em> ] [<br>
|
||||
nsip-enable <em class="replaceable"><code>boolean</code></em> ] [ nsdname-enable <em class="replaceable"><code>boolean</code></em> ] [<br>
|
||||
dnsrps-enable <em class="replaceable"><code>boolean</code></em> ] [ dnsrps-options { <em class="replaceable"><code>unspecified-text</code></em><br>
|
||||
} ];<br>
|
||||
root-delegation-only [ exclude { <em class="replaceable"><code>quoted_string</code></em>; ... } ];<br>
|
||||
root-key-sentinel <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
rrset-order { [ class <em class="replaceable"><code>string</code></em> ] [ type <em class="replaceable"><code>string</code></em> ] [ name<br>
|
||||
<em class="replaceable"><code>quoted_string</code></em> ] <em class="replaceable"><code>string</code></em> <em class="replaceable"><code>string</code></em>; ... };<br>
|
||||
secroots-file <em class="replaceable"><code>quoted_string</code></em>;<br>
|
||||
@@ -549,7 +551,7 @@ view
|
||||
<em class="replaceable"><code>integer</code></em> ] [ dscp <em class="replaceable"><code>integer</code></em> ] { ( <em class="replaceable"><code>masters</code></em> | <em class="replaceable"><code>ipv4_address</code></em> [<br>
|
||||
port <em class="replaceable"><code>integer</code></em> ] | <em class="replaceable"><code>ipv6_address</code></em> [ port <em class="replaceable"><code>integer</code></em> ] ) [ key<br>
|
||||
<em class="replaceable"><code>string</code></em> ]; ... } ] [ zone-directory <em class="replaceable"><code>quoted_string</code></em> ] [<br>
|
||||
in-memory <em class="replaceable"><code>boolean</code></em> ] [ min-update-interval <em class="replaceable"><code>integer</code></em> ]; ... };<br>
|
||||
in-memory <em class="replaceable"><code>boolean</code></em> ] [ min-update-interval <em class="replaceable"><code>ttlval</code></em> ]; ... };<br>
|
||||
check-dup-records ( fail | warn | ignore );<br>
|
||||
check-integrity <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
check-mx ( fail | warn | ignore );<br>
|
||||
@@ -587,6 +589,7 @@ view
|
||||
};<br>
|
||||
dns64-contact <em class="replaceable"><code>string</code></em>;<br>
|
||||
dns64-server <em class="replaceable"><code>string</code></em>;<br>
|
||||
dnskey-sig-validity <em class="replaceable"><code>integer</code></em>;<br>
|
||||
dnsrps-enable <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
dnsrps-options { <em class="replaceable"><code>unspecified-text</code></em> };<br>
|
||||
dnssec-accept-expired <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
@@ -640,10 +643,10 @@ view
|
||||
match-destinations { <em class="replaceable"><code>address_match_element</code></em>; ... };<br>
|
||||
match-recursive-only <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
max-cache-size ( default | unlimited | <em class="replaceable"><code>sizeval</code></em> | <em class="replaceable"><code>percentage</code></em> );<br>
|
||||
max-cache-ttl <em class="replaceable"><code>integer</code></em>;<br>
|
||||
max-cache-ttl <em class="replaceable"><code>ttlval</code></em>;<br>
|
||||
max-clients-per-query <em class="replaceable"><code>integer</code></em>;<br>
|
||||
max-journal-size ( default | unlimited | <em class="replaceable"><code>sizeval</code></em> );<br>
|
||||
max-ncache-ttl <em class="replaceable"><code>integer</code></em>;<br>
|
||||
max-ncache-ttl <em class="replaceable"><code>ttlval</code></em>;<br>
|
||||
max-records <em class="replaceable"><code>integer</code></em>;<br>
|
||||
max-recursion-depth <em class="replaceable"><code>integer</code></em>;<br>
|
||||
max-recursion-queries <em class="replaceable"><code>integer</code></em>;<br>
|
||||
@@ -678,6 +681,7 @@ view
|
||||
preferred-glue <em class="replaceable"><code>string</code></em>;<br>
|
||||
prefetch <em class="replaceable"><code>integer</code></em> [ <em class="replaceable"><code>integer</code></em> ];<br>
|
||||
provide-ixfr <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
qname-minimization ( strict | relaxed | disabled );<br>
|
||||
query-source ( ( [ address ] ( <em class="replaceable"><code>ipv4_address</code></em> | * ) [ port (<br>
|
||||
<em class="replaceable"><code>integer</code></em> | * ) ] ) | ( [ [ address ] ( <em class="replaceable"><code>ipv4_address</code></em> | * ) ]<br>
|
||||
port ( <em class="replaceable"><code>integer</code></em> | * ) ) ) [ dscp <em class="replaceable"><code>integer</code></em> ];<br>
|
||||
@@ -712,18 +716,19 @@ view
|
||||
response-padding { <em class="replaceable"><code>address_match_element</code></em>; ... } block-size<br>
|
||||
<em class="replaceable"><code>integer</code></em>;<br>
|
||||
response-policy { zone <em class="replaceable"><code>quoted_string</code></em> [ log <em class="replaceable"><code>boolean</code></em> ] [<br>
|
||||
max-policy-ttl <em class="replaceable"><code>integer</code></em> ] [ min-update-interval <em class="replaceable"><code>integer</code></em> ] [<br>
|
||||
max-policy-ttl <em class="replaceable"><code>ttlval</code></em> ] [ min-update-interval <em class="replaceable"><code>ttlval</code></em> ] [<br>
|
||||
policy ( cname | disabled | drop | given | no-op | nodata |<br>
|
||||
nxdomain | passthru | tcp-only <em class="replaceable"><code>quoted_string</code></em> ) ] [<br>
|
||||
recursive-only <em class="replaceable"><code>boolean</code></em> ] [ nsip-enable <em class="replaceable"><code>boolean</code></em> ] [<br>
|
||||
nsdname-enable <em class="replaceable"><code>boolean</code></em> ]; ... } [ break-dnssec <em class="replaceable"><code>boolean</code></em> ] [<br>
|
||||
max-policy-ttl <em class="replaceable"><code>integer</code></em> ] [ min-update-interval <em class="replaceable"><code>integer</code></em> ] [<br>
|
||||
max-policy-ttl <em class="replaceable"><code>ttlval</code></em> ] [ min-update-interval <em class="replaceable"><code>ttlval</code></em> ] [<br>
|
||||
min-ns-dots <em class="replaceable"><code>integer</code></em> ] [ nsip-wait-recurse <em class="replaceable"><code>boolean</code></em> ] [<br>
|
||||
qname-wait-recurse <em class="replaceable"><code>boolean</code></em> ] [ recursive-only <em class="replaceable"><code>boolean</code></em> ] [<br>
|
||||
nsip-enable <em class="replaceable"><code>boolean</code></em> ] [ nsdname-enable <em class="replaceable"><code>boolean</code></em> ] [<br>
|
||||
dnsrps-enable <em class="replaceable"><code>boolean</code></em> ] [ dnsrps-options { <em class="replaceable"><code>unspecified-text</code></em><br>
|
||||
} ];<br>
|
||||
root-delegation-only [ exclude { <em class="replaceable"><code>quoted_string</code></em>; ... } ];<br>
|
||||
root-key-sentinel <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
rrset-order { [ class <em class="replaceable"><code>string</code></em> ] [ type <em class="replaceable"><code>string</code></em> ] [ name<br>
|
||||
<em class="replaceable"><code>quoted_string</code></em> ] <em class="replaceable"><code>string</code></em> <em class="replaceable"><code>string</code></em>; ... };<br>
|
||||
send-cookie <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
@@ -816,6 +821,7 @@ view
|
||||
dialup ( notify | notify-passive | passive | refresh |<br>
|
||||
<em class="replaceable"><code>boolean</code></em> );<br>
|
||||
dlz <em class="replaceable"><code>string</code></em>;<br>
|
||||
dnskey-sig-validity <em class="replaceable"><code>integer</code></em>;<br>
|
||||
dnssec-dnskey-kskonly <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
dnssec-loadkeys-interval <em class="replaceable"><code>integer</code></em>;<br>
|
||||
dnssec-secure-to-insecure <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
@@ -847,6 +853,7 @@ view
|
||||
max-zone-ttl ( unlimited | <em class="replaceable"><code>ttlval</code></em> );<br>
|
||||
min-refresh-time <em class="replaceable"><code>integer</code></em>;<br>
|
||||
min-retry-time <em class="replaceable"><code>integer</code></em>;<br>
|
||||
mirror <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
multi-master <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
notify ( explicit | master-only | <em class="replaceable"><code>boolean</code></em> );<br>
|
||||
notify-delay <em class="replaceable"><code>integer</code></em>;<br>
|
||||
@@ -923,6 +930,7 @@ zone
|
||||
delegation-only <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
dialup ( notify | notify-passive | passive | refresh | <em class="replaceable"><code>boolean</code></em> );<br>
|
||||
dlz <em class="replaceable"><code>string</code></em>;<br>
|
||||
dnskey-sig-validity <em class="replaceable"><code>integer</code></em>;<br>
|
||||
dnssec-dnskey-kskonly <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
dnssec-loadkeys-interval <em class="replaceable"><code>integer</code></em>;<br>
|
||||
dnssec-secure-to-insecure <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
@@ -952,6 +960,7 @@ zone
|
||||
max-zone-ttl ( unlimited | <em class="replaceable"><code>ttlval</code></em> );<br>
|
||||
min-refresh-time <em class="replaceable"><code>integer</code></em>;<br>
|
||||
min-retry-time <em class="replaceable"><code>integer</code></em>;<br>
|
||||
mirror <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
multi-master <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
notify ( explicit | master-only | <em class="replaceable"><code>boolean</code></em> );<br>
|
||||
notify-delay <em class="replaceable"><code>integer</code></em>;<br>
|
||||
|
||||
+625
-537
File diff suppressed because it is too large
Load Diff
+72
-69
@@ -13,6 +13,9 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isc/buffer.h>
|
||||
#include <isc/httpd.h>
|
||||
#include <isc/json.h>
|
||||
@@ -67,7 +70,7 @@ stats_dumparg {
|
||||
void *arg; /* type dependent argument */
|
||||
int ncounters; /* for general statistics */
|
||||
int *counterindices; /* for general statistics */
|
||||
isc_uint64_t *countervalues; /* for general statistics */
|
||||
uint64_t *countervalues; /* for general statistics */
|
||||
isc_result_t result;
|
||||
} stats_dumparg_t;
|
||||
|
||||
@@ -1048,7 +1051,7 @@ init_desc(void) {
|
||||
* Dump callback functions.
|
||||
*/
|
||||
static void
|
||||
generalstat_dump(isc_statscounter_t counter, isc_uint64_t val, void *arg) {
|
||||
generalstat_dump(isc_statscounter_t counter, uint64_t val, void *arg) {
|
||||
stats_dumparg_t *dumparg = arg;
|
||||
|
||||
REQUIRE(counter < dumparg->ncounters);
|
||||
@@ -1058,10 +1061,10 @@ generalstat_dump(isc_statscounter_t counter, isc_uint64_t val, void *arg) {
|
||||
static isc_result_t
|
||||
dump_counters(isc_stats_t *stats, isc_statsformat_t type, void *arg,
|
||||
const char *category, const char **desc, int ncounters,
|
||||
int *indices, isc_uint64_t *values, int options)
|
||||
int *indices, uint64_t *values, int options)
|
||||
{
|
||||
int i, idx;
|
||||
isc_uint64_t value;
|
||||
uint64_t value;
|
||||
stats_dumparg_t dumparg;
|
||||
FILE *fp;
|
||||
#ifdef HAVE_LIBXML2
|
||||
@@ -1106,7 +1109,7 @@ dump_counters(isc_stats_t *stats, isc_statsformat_t type, void *arg,
|
||||
switch (dumparg.type) {
|
||||
case isc_statsformat_file:
|
||||
fp = arg;
|
||||
fprintf(fp, "%20" ISC_PRINT_QUADFORMAT "u %s\n",
|
||||
fprintf(fp, "%20" PRIu64 " %s\n",
|
||||
value, desc[idx]);
|
||||
break;
|
||||
case isc_statsformat_xml:
|
||||
@@ -1134,7 +1137,7 @@ dump_counters(isc_stats_t *stats, isc_statsformat_t type, void *arg,
|
||||
ISC_XMLCHAR
|
||||
"counter"));
|
||||
TRY0(xmlTextWriterWriteFormatString(writer,
|
||||
"%" ISC_PRINT_QUADFORMAT "u", value));
|
||||
"%" PRIu64, value));
|
||||
|
||||
TRY0(xmlTextWriterEndElement(writer));
|
||||
/* </counter> */
|
||||
@@ -1151,7 +1154,7 @@ dump_counters(isc_stats_t *stats, isc_statsformat_t type, void *arg,
|
||||
ISC_XMLCHAR
|
||||
desc[idx]));
|
||||
TRY0(xmlTextWriterWriteFormatString(writer,
|
||||
"%" ISC_PRINT_QUADFORMAT "u", value));
|
||||
"%" PRIu64, value));
|
||||
TRY0(xmlTextWriterEndElement(writer));
|
||||
/* counter */
|
||||
}
|
||||
@@ -1179,7 +1182,7 @@ dump_counters(isc_stats_t *stats, isc_statsformat_t type, void *arg,
|
||||
}
|
||||
|
||||
static void
|
||||
rdtypestat_dump(dns_rdatastatstype_t type, isc_uint64_t val, void *arg) {
|
||||
rdtypestat_dump(dns_rdatastatstype_t type, uint64_t val, void *arg) {
|
||||
char typebuf[64];
|
||||
const char *typestr;
|
||||
stats_dumparg_t *dumparg = arg;
|
||||
@@ -1203,7 +1206,7 @@ rdtypestat_dump(dns_rdatastatstype_t type, isc_uint64_t val, void *arg) {
|
||||
switch (dumparg->type) {
|
||||
case isc_statsformat_file:
|
||||
fp = dumparg->arg;
|
||||
fprintf(fp, "%20" ISC_PRINT_QUADFORMAT "u %s\n", val, typestr);
|
||||
fprintf(fp, "%20" PRIu64 " %s\n", val, typestr);
|
||||
break;
|
||||
case isc_statsformat_xml:
|
||||
#ifdef HAVE_LIBXML2
|
||||
@@ -1215,7 +1218,7 @@ rdtypestat_dump(dns_rdatastatstype_t type, isc_uint64_t val, void *arg) {
|
||||
ISC_XMLCHAR typestr));
|
||||
|
||||
TRY0(xmlTextWriterWriteFormatString(writer,
|
||||
"%" ISC_PRINT_QUADFORMAT "u",
|
||||
"%" PRIu64,
|
||||
val));
|
||||
|
||||
TRY0(xmlTextWriterEndElement(writer)); /* type */
|
||||
@@ -1243,13 +1246,13 @@ rdtypestat_dump(dns_rdatastatstype_t type, isc_uint64_t val, void *arg) {
|
||||
}
|
||||
|
||||
static void
|
||||
rdatasetstats_dump(dns_rdatastatstype_t type, isc_uint64_t val, void *arg) {
|
||||
rdatasetstats_dump(dns_rdatastatstype_t type, uint64_t val, void *arg) {
|
||||
stats_dumparg_t *dumparg = arg;
|
||||
FILE *fp;
|
||||
char typebuf[64];
|
||||
const char *typestr;
|
||||
isc_boolean_t nxrrset = ISC_FALSE;
|
||||
isc_boolean_t stale = ISC_FALSE;
|
||||
bool nxrrset = false;
|
||||
bool stale = false;
|
||||
#ifdef HAVE_LIBXML2
|
||||
xmlTextWriterPtr writer;
|
||||
int xmlrc;
|
||||
@@ -1273,16 +1276,16 @@ rdatasetstats_dump(dns_rdatastatstype_t type, isc_uint64_t val, void *arg) {
|
||||
|
||||
if ((DNS_RDATASTATSTYPE_ATTR(type) & DNS_RDATASTATSTYPE_ATTR_NXRRSET)
|
||||
!= 0)
|
||||
nxrrset = ISC_TRUE;
|
||||
nxrrset = true;
|
||||
|
||||
if ((DNS_RDATASTATSTYPE_ATTR(type) & DNS_RDATASTATSTYPE_ATTR_STALE)
|
||||
!= 0)
|
||||
stale = ISC_TRUE;
|
||||
stale = true;
|
||||
|
||||
switch (dumparg->type) {
|
||||
case isc_statsformat_file:
|
||||
fp = dumparg->arg;
|
||||
fprintf(fp, "%20" ISC_PRINT_QUADFORMAT "u %s%s%s\n", val,
|
||||
fprintf(fp, "%20" PRIu64 " %s%s%s\n", val,
|
||||
stale ? "#" : "", nxrrset ? "!" : "", typestr);
|
||||
break;
|
||||
case isc_statsformat_xml:
|
||||
@@ -1298,7 +1301,7 @@ rdatasetstats_dump(dns_rdatastatstype_t type, isc_uint64_t val, void *arg) {
|
||||
|
||||
TRY0(xmlTextWriterStartElement(writer, ISC_XMLCHAR "counter"));
|
||||
TRY0(xmlTextWriterWriteFormatString(writer,
|
||||
"%" ISC_PRINT_QUADFORMAT "u",
|
||||
"%" PRIu64,
|
||||
val));
|
||||
TRY0(xmlTextWriterEndElement(writer)); /* counter */
|
||||
|
||||
@@ -1329,7 +1332,7 @@ rdatasetstats_dump(dns_rdatastatstype_t type, isc_uint64_t val, void *arg) {
|
||||
}
|
||||
|
||||
static void
|
||||
opcodestat_dump(dns_opcode_t code, isc_uint64_t val, void *arg) {
|
||||
opcodestat_dump(dns_opcode_t code, uint64_t val, void *arg) {
|
||||
FILE *fp;
|
||||
isc_buffer_t b;
|
||||
char codebuf[64];
|
||||
@@ -1349,7 +1352,7 @@ opcodestat_dump(dns_opcode_t code, isc_uint64_t val, void *arg) {
|
||||
switch (dumparg->type) {
|
||||
case isc_statsformat_file:
|
||||
fp = dumparg->arg;
|
||||
fprintf(fp, "%20" ISC_PRINT_QUADFORMAT "u %s\n", val, codebuf);
|
||||
fprintf(fp, "%20" PRIu64 " %s\n", val, codebuf);
|
||||
break;
|
||||
case isc_statsformat_xml:
|
||||
#ifdef HAVE_LIBXML2
|
||||
@@ -1358,7 +1361,7 @@ opcodestat_dump(dns_opcode_t code, isc_uint64_t val, void *arg) {
|
||||
TRY0(xmlTextWriterWriteAttribute(writer, ISC_XMLCHAR "name",
|
||||
ISC_XMLCHAR codebuf ));
|
||||
TRY0(xmlTextWriterWriteFormatString(writer,
|
||||
"%" ISC_PRINT_QUADFORMAT "u",
|
||||
"%" PRIu64,
|
||||
val));
|
||||
TRY0(xmlTextWriterEndElement(writer)); /* counter */
|
||||
#endif
|
||||
@@ -1386,7 +1389,7 @@ opcodestat_dump(dns_opcode_t code, isc_uint64_t val, void *arg) {
|
||||
}
|
||||
|
||||
static void
|
||||
rcodestat_dump(dns_rcode_t code, isc_uint64_t val, void *arg) {
|
||||
rcodestat_dump(dns_rcode_t code, uint64_t val, void *arg) {
|
||||
FILE *fp;
|
||||
isc_buffer_t b;
|
||||
char codebuf[64];
|
||||
@@ -1406,7 +1409,7 @@ rcodestat_dump(dns_rcode_t code, isc_uint64_t val, void *arg) {
|
||||
switch (dumparg->type) {
|
||||
case isc_statsformat_file:
|
||||
fp = dumparg->arg;
|
||||
fprintf(fp, "%20" ISC_PRINT_QUADFORMAT "u %s\n", val, codebuf);
|
||||
fprintf(fp, "%20" PRIu64 " %s\n", val, codebuf);
|
||||
break;
|
||||
case isc_statsformat_xml:
|
||||
#ifdef HAVE_LIBXML2
|
||||
@@ -1415,7 +1418,7 @@ rcodestat_dump(dns_rcode_t code, isc_uint64_t val, void *arg) {
|
||||
TRY0(xmlTextWriterWriteAttribute(writer, ISC_XMLCHAR "name",
|
||||
ISC_XMLCHAR codebuf ));
|
||||
TRY0(xmlTextWriterWriteFormatString(writer,
|
||||
"%" ISC_PRINT_QUADFORMAT "u",
|
||||
"%" PRIu64,
|
||||
val));
|
||||
TRY0(xmlTextWriterEndElement(writer)); /* counter */
|
||||
#endif
|
||||
@@ -1460,7 +1463,7 @@ zone_xmlrender(dns_zone_t *zone, void *arg) {
|
||||
isc_result_t result;
|
||||
char buf[1024 + 32]; /* sufficiently large for zone name and class */
|
||||
dns_rdataclass_t rdclass;
|
||||
isc_uint32_t serial;
|
||||
uint32_t serial;
|
||||
xmlTextWriterPtr writer = arg;
|
||||
dns_zonestat_level_t statlevel;
|
||||
int xmlrc;
|
||||
@@ -1504,8 +1507,8 @@ zone_xmlrender(dns_zone_t *zone, void *arg) {
|
||||
isc_stats_t *zonestats;
|
||||
isc_stats_t *gluecachestats;
|
||||
dns_stats_t *rcvquerystats;
|
||||
isc_uint64_t nsstat_values[ns_statscounter_max];
|
||||
isc_uint64_t gluecachestats_values[dns_gluecachestatscounter_max];
|
||||
uint64_t nsstat_values[ns_statscounter_max];
|
||||
uint64_t gluecachestats_values[dns_gluecachestatscounter_max];
|
||||
|
||||
zonestats = dns_zone_getrequeststats(zone);
|
||||
if (zonestats != NULL) {
|
||||
@@ -1578,7 +1581,7 @@ zone_xmlrender(dns_zone_t *zone, void *arg) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
generatexml(named_server_t *server, isc_uint32_t flags,
|
||||
generatexml(named_server_t *server, uint32_t flags,
|
||||
int *buflen, xmlChar **buf)
|
||||
{
|
||||
char boottime[sizeof "yyyy-mm-ddThh:mm:ss.sssZ"];
|
||||
@@ -1591,17 +1594,17 @@ generatexml(named_server_t *server, isc_uint32_t flags,
|
||||
dns_view_t *view;
|
||||
stats_dumparg_t dumparg;
|
||||
dns_stats_t *cacherrstats;
|
||||
isc_uint64_t nsstat_values[ns_statscounter_max];
|
||||
isc_uint64_t resstat_values[dns_resstatscounter_max];
|
||||
isc_uint64_t adbstat_values[dns_adbstats_max];
|
||||
isc_uint64_t zonestat_values[dns_zonestatscounter_max];
|
||||
isc_uint64_t sockstat_values[isc_sockstatscounter_max];
|
||||
isc_uint64_t udpinsizestat_values[dns_sizecounter_in_max];
|
||||
isc_uint64_t udpoutsizestat_values[dns_sizecounter_out_max];
|
||||
isc_uint64_t tcpinsizestat_values[dns_sizecounter_in_max];
|
||||
isc_uint64_t tcpoutsizestat_values[dns_sizecounter_out_max];
|
||||
uint64_t nsstat_values[ns_statscounter_max];
|
||||
uint64_t resstat_values[dns_resstatscounter_max];
|
||||
uint64_t adbstat_values[dns_adbstats_max];
|
||||
uint64_t zonestat_values[dns_zonestatscounter_max];
|
||||
uint64_t sockstat_values[isc_sockstatscounter_max];
|
||||
uint64_t udpinsizestat_values[dns_sizecounter_in_max];
|
||||
uint64_t udpoutsizestat_values[dns_sizecounter_out_max];
|
||||
uint64_t tcpinsizestat_values[dns_sizecounter_in_max];
|
||||
uint64_t tcpoutsizestat_values[dns_sizecounter_out_max];
|
||||
#ifdef HAVE_DNSTAP
|
||||
isc_uint64_t dnstapstat_values[dns_dnstapcounter_max];
|
||||
uint64_t dnstapstat_values[dns_dnstapcounter_max];
|
||||
#endif
|
||||
isc_result_t result;
|
||||
|
||||
@@ -1915,7 +1918,7 @@ generatexml(named_server_t *server, isc_uint32_t flags,
|
||||
if ((flags & STATS_XML_ZONES) != 0) {
|
||||
TRY0(xmlTextWriterStartElement(writer,
|
||||
ISC_XMLCHAR "zones"));
|
||||
result = dns_zt_apply(view->zonetable, ISC_TRUE,
|
||||
result = dns_zt_apply(view->zonetable, true,
|
||||
NULL, zone_xmlrender, writer);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto error;
|
||||
@@ -2053,7 +2056,7 @@ wrap_xmlfree(isc_buffer_t *buffer, void *arg) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
render_xml(isc_uint32_t flags, const char *url, isc_httpdurl_t *urlinfo,
|
||||
render_xml(uint32_t flags, const char *url, isc_httpdurl_t *urlinfo,
|
||||
const char *querystring, const char *headers, void *arg,
|
||||
unsigned int *retcode, const char **retmsg,
|
||||
const char **mimetype, isc_buffer_t *b,
|
||||
@@ -2228,7 +2231,7 @@ wrap_jsonfree(isc_buffer_t *buffer, void *arg) {
|
||||
|
||||
static json_object *
|
||||
addzone(char *name, char *classname, const char *ztype,
|
||||
isc_uint32_t serial, isc_boolean_t add_serial)
|
||||
uint32_t serial, bool add_serial)
|
||||
{
|
||||
json_object *node = json_object_new_object();
|
||||
|
||||
@@ -2255,7 +2258,7 @@ zone_jsonrender(dns_zone_t *zone, void *arg) {
|
||||
char *zone_name_only = NULL;
|
||||
char *class_only = NULL;
|
||||
dns_rdataclass_t rdclass;
|
||||
isc_uint32_t serial;
|
||||
uint32_t serial;
|
||||
json_object *zonearray = (json_object *) arg;
|
||||
json_object *zoneobj = NULL;
|
||||
dns_zonestat_level_t statlevel;
|
||||
@@ -2273,10 +2276,10 @@ zone_jsonrender(dns_zone_t *zone, void *arg) {
|
||||
|
||||
if (dns_zone_getserial(zone, &serial) != ISC_R_SUCCESS)
|
||||
zoneobj = addzone(zone_name_only, class_only,
|
||||
user_zonetype(zone), 0, ISC_FALSE);
|
||||
user_zonetype(zone), 0, false);
|
||||
else
|
||||
zoneobj = addzone(zone_name_only, class_only,
|
||||
user_zonetype(zone), serial, ISC_TRUE);
|
||||
user_zonetype(zone), serial, true);
|
||||
|
||||
if (zoneobj == NULL)
|
||||
return (ISC_R_NOMEMORY);
|
||||
@@ -2285,8 +2288,8 @@ zone_jsonrender(dns_zone_t *zone, void *arg) {
|
||||
isc_stats_t *zonestats;
|
||||
isc_stats_t *gluecachestats;
|
||||
dns_stats_t *rcvquerystats;
|
||||
isc_uint64_t nsstat_values[ns_statscounter_max];
|
||||
isc_uint64_t gluecachestats_values[dns_gluecachestatscounter_max];
|
||||
uint64_t nsstat_values[ns_statscounter_max];
|
||||
uint64_t gluecachestats_values[dns_gluecachestatscounter_max];
|
||||
|
||||
zonestats = dns_zone_getrequeststats(zone);
|
||||
if (zonestats != NULL) {
|
||||
@@ -2376,7 +2379,7 @@ zone_jsonrender(dns_zone_t *zone, void *arg) {
|
||||
|
||||
static isc_result_t
|
||||
generatejson(named_server_t *server, size_t *msglen,
|
||||
const char **msg, json_object **rootp, isc_uint32_t flags)
|
||||
const char **msg, json_object **rootp, uint32_t flags)
|
||||
{
|
||||
dns_view_t *view;
|
||||
isc_result_t result = ISC_R_SUCCESS;
|
||||
@@ -2386,17 +2389,17 @@ generatejson(named_server_t *server, size_t *msglen,
|
||||
json_object *tcpreq4 = NULL, *tcpresp4 = NULL;
|
||||
json_object *udpreq6 = NULL, *udpresp6 = NULL;
|
||||
json_object *tcpreq6 = NULL, *tcpresp6 = NULL;
|
||||
isc_uint64_t nsstat_values[ns_statscounter_max];
|
||||
isc_uint64_t resstat_values[dns_resstatscounter_max];
|
||||
isc_uint64_t adbstat_values[dns_adbstats_max];
|
||||
isc_uint64_t zonestat_values[dns_zonestatscounter_max];
|
||||
isc_uint64_t sockstat_values[isc_sockstatscounter_max];
|
||||
isc_uint64_t udpinsizestat_values[dns_sizecounter_in_max];
|
||||
isc_uint64_t udpoutsizestat_values[dns_sizecounter_out_max];
|
||||
isc_uint64_t tcpinsizestat_values[dns_sizecounter_in_max];
|
||||
isc_uint64_t tcpoutsizestat_values[dns_sizecounter_out_max];
|
||||
uint64_t nsstat_values[ns_statscounter_max];
|
||||
uint64_t resstat_values[dns_resstatscounter_max];
|
||||
uint64_t adbstat_values[dns_adbstats_max];
|
||||
uint64_t zonestat_values[dns_zonestatscounter_max];
|
||||
uint64_t sockstat_values[isc_sockstatscounter_max];
|
||||
uint64_t udpinsizestat_values[dns_sizecounter_in_max];
|
||||
uint64_t udpoutsizestat_values[dns_sizecounter_out_max];
|
||||
uint64_t tcpinsizestat_values[dns_sizecounter_in_max];
|
||||
uint64_t tcpoutsizestat_values[dns_sizecounter_out_max];
|
||||
#ifdef HAVE_DNSTAP
|
||||
isc_uint64_t dnstapstat_values[dns_dnstapcounter_max];
|
||||
uint64_t dnstapstat_values[dns_dnstapcounter_max];
|
||||
#endif
|
||||
stats_dumparg_t dumparg;
|
||||
char boottime[sizeof "yyyy-mm-ddThh:mm:ss.sssZ"];
|
||||
@@ -2610,7 +2613,7 @@ generatejson(named_server_t *server, size_t *msglen,
|
||||
|
||||
if ((flags & STATS_JSON_ZONES) != 0) {
|
||||
result = dns_zt_apply(view->zonetable,
|
||||
ISC_TRUE,
|
||||
true,
|
||||
NULL, zone_jsonrender,
|
||||
za);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
@@ -2955,7 +2958,7 @@ generatejson(named_server_t *server, size_t *msglen,
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
render_json(isc_uint32_t flags,
|
||||
render_json(uint32_t flags,
|
||||
const char *url, isc_httpdurl_t *urlinfo,
|
||||
const char *querystring, const char *headers,
|
||||
void *arg, unsigned int *retcode, const char **retmsg,
|
||||
@@ -3182,7 +3185,7 @@ shutdown_listener(named_statschannel_t *listener) {
|
||||
isc_httpdmgr_shutdown(&listener->httpdmgr);
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
client_ok(const isc_sockaddr_t *fromaddr, void *arg) {
|
||||
named_statschannel_t *listener = arg;
|
||||
dns_aclenv_t *env =
|
||||
@@ -3200,7 +3203,7 @@ client_ok(const isc_sockaddr_t *fromaddr, void *arg) {
|
||||
&match, NULL) == ISC_R_SUCCESS) && match > 0)
|
||||
{
|
||||
UNLOCK(&listener->lock);
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
UNLOCK(&listener->lock);
|
||||
|
||||
@@ -3209,7 +3212,7 @@ client_ok(const isc_sockaddr_t *fromaddr, void *arg) {
|
||||
NAMED_LOGMODULE_SERVER, ISC_LOG_WARNING,
|
||||
"rejected statistics connection from %s", socktext);
|
||||
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -3281,7 +3284,7 @@ add_listener(named_server_t *server, named_statschannel_t **listenerp,
|
||||
isc_socket_setname(sock, "statchannel", NULL);
|
||||
|
||||
#ifndef ISC_ALLOW_MAPPED
|
||||
isc_socket_ipv6only(sock, ISC_TRUE);
|
||||
isc_socket_ipv6only(sock, true);
|
||||
#endif
|
||||
|
||||
result = isc_socket_bind(sock, addr, ISC_SOCKET_REUSEADDRESS);
|
||||
@@ -3336,7 +3339,7 @@ add_listener(named_server_t *server, named_statschannel_t **listenerp,
|
||||
isc_httpdmgr_addurl(listener->httpdmgr, "/json/v1/traffic",
|
||||
render_json_traffic, server);
|
||||
#endif
|
||||
isc_httpdmgr_addurl2(listener->httpdmgr, "/bind9.xsl", ISC_TRUE,
|
||||
isc_httpdmgr_addurl2(listener->httpdmgr, "/bind9.xsl", true,
|
||||
render_xsl, server);
|
||||
|
||||
*listenerp = listener;
|
||||
@@ -3566,12 +3569,12 @@ named_stats_dump(named_server_t *server, FILE *fp) {
|
||||
dns_view_t *view;
|
||||
dns_zone_t *zone, *next;
|
||||
stats_dumparg_t dumparg;
|
||||
isc_uint64_t nsstat_values[ns_statscounter_max];
|
||||
isc_uint64_t resstat_values[dns_resstatscounter_max];
|
||||
isc_uint64_t adbstat_values[dns_adbstats_max];
|
||||
isc_uint64_t zonestat_values[dns_zonestatscounter_max];
|
||||
isc_uint64_t sockstat_values[isc_sockstatscounter_max];
|
||||
isc_uint64_t gluecachestats_values[dns_gluecachestatscounter_max];
|
||||
uint64_t nsstat_values[ns_statscounter_max];
|
||||
uint64_t resstat_values[dns_resstatscounter_max];
|
||||
uint64_t adbstat_values[dns_adbstats_max];
|
||||
uint64_t zonestat_values[dns_zonestatscounter_max];
|
||||
uint64_t sockstat_values[isc_sockstatscounter_max];
|
||||
uint64_t gluecachestats_values[dns_gluecachestatscounter_max];
|
||||
|
||||
RUNTIME_CHECK(isc_once_do(&once, init_desc) == ISC_R_SUCCESS);
|
||||
|
||||
|
||||
@@ -14,6 +14,8 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
|
||||
#include <isc/buffer.h>
|
||||
#include <isc/string.h> /* Required for HP/UX (and others?) */
|
||||
#include <isc/mem.h>
|
||||
@@ -50,7 +52,7 @@ named_tkeyctx_fromconfig(const cfg_obj_t *options, isc_mem_t *mctx,
|
||||
isc_result_t result;
|
||||
dns_tkeyctx_t *tctx = NULL;
|
||||
const char *s;
|
||||
isc_uint32_t n;
|
||||
uint32_t n;
|
||||
dns_fixedname_t fname;
|
||||
dns_name_t *name;
|
||||
isc_buffer_t b;
|
||||
@@ -101,7 +103,7 @@ named_tkeyctx_fromconfig(const cfg_obj_t *options, isc_mem_t *mctx,
|
||||
isc_buffer_add(&b, strlen(s));
|
||||
name = dns_fixedname_initname(&fname);
|
||||
RETERR(dns_name_fromtext(name, &b, dns_rootname, 0, NULL));
|
||||
RETERR(dst_gssapi_acquirecred(name, ISC_FALSE, &tctx->gsscred));
|
||||
RETERR(dst_gssapi_acquirecred(name, false, &tctx->gsscred));
|
||||
}
|
||||
|
||||
obj = NULL;
|
||||
|
||||
@@ -14,6 +14,8 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
|
||||
#include <isc/base64.h>
|
||||
#include <isc/buffer.h>
|
||||
#include <isc/mem.h>
|
||||
@@ -43,7 +45,7 @@ add_initial_keys(const cfg_obj_t *list, dns_tsig_keyring_t *ring,
|
||||
int secretlen = 0;
|
||||
isc_result_t ret;
|
||||
isc_stdtime_t now;
|
||||
isc_uint16_t bits;
|
||||
uint16_t bits;
|
||||
|
||||
for (element = cfg_list_first(list);
|
||||
element != NULL;
|
||||
@@ -109,7 +111,7 @@ add_initial_keys(const cfg_obj_t *list, dns_tsig_keyring_t *ring,
|
||||
|
||||
isc_stdtime_get(&now);
|
||||
ret = dns_tsigkey_create(&keyname, alg, secret, secretlen,
|
||||
ISC_FALSE, NULL, now, now,
|
||||
false, NULL, now, now,
|
||||
mctx, ring, &tsigkey);
|
||||
isc_mem_put(mctx, secret, secretalloc);
|
||||
secret = NULL;
|
||||
|
||||
@@ -15,7 +15,7 @@ top_srcdir = @top_srcdir@
|
||||
|
||||
CINCLUDES = -I${srcdir}/include -I${srcdir}/../include \
|
||||
${ISCCFG_INCLUDES} ${ISCCC_INCLUDES} \
|
||||
${DNS_INCLUDES} ${ISC_INCLUDES} @DST_OPENSSL_INC@
|
||||
${DNS_INCLUDES} ${ISC_INCLUDES} @OPENSSL_INCLUDES@
|
||||
|
||||
CDEFINES =
|
||||
CWARNINGS =
|
||||
|
||||
@@ -12,9 +12,11 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <inttypes.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <dlfcn.h>
|
||||
|
||||
#include <dns/log.h>
|
||||
@@ -43,7 +45,7 @@ typedef struct dlopen_data {
|
||||
unsigned int flags;
|
||||
isc_mutex_t lock;
|
||||
int version;
|
||||
isc_boolean_t in_configure;
|
||||
bool in_configure;
|
||||
|
||||
dlz_dlopen_version_t *dlz_version;
|
||||
dlz_dlopen_create_t *dlz_create;
|
||||
@@ -66,14 +68,14 @@ typedef struct dlopen_data {
|
||||
#define MAYBE_LOCK(cd) \
|
||||
do { \
|
||||
if ((cd->flags & DNS_SDLZFLAG_THREADSAFE) == 0 && \
|
||||
cd->in_configure == ISC_FALSE) \
|
||||
cd->in_configure == false) \
|
||||
LOCK(&cd->lock); \
|
||||
} while (0)
|
||||
|
||||
#define MAYBE_UNLOCK(cd) \
|
||||
do { \
|
||||
if ((cd->flags & DNS_SDLZFLAG_THREADSAFE) == 0 && \
|
||||
cd->in_configure == ISC_FALSE) \
|
||||
cd->in_configure == false) \
|
||||
UNLOCK(&cd->lock); \
|
||||
} while (0)
|
||||
|
||||
@@ -193,7 +195,7 @@ dlopen_dlz_lookup(const char *zone, const char *name, void *driverarg,
|
||||
* Load a symbol from the library
|
||||
*/
|
||||
static void *
|
||||
dl_load_symbol(dlopen_data_t *cd, const char *symbol, isc_boolean_t mandatory) {
|
||||
dl_load_symbol(dlopen_data_t *cd, const char *symbol, bool mandatory) {
|
||||
void *ptr = dlsym(cd->dl_handle, symbol);
|
||||
if (ptr == NULL && mandatory) {
|
||||
dlopen_log(ISC_LOG_ERROR,
|
||||
@@ -281,13 +283,13 @@ dlopen_dlz_create(const char *dlzname, unsigned int argc, char *argv[],
|
||||
|
||||
/* Find the symbols */
|
||||
cd->dlz_version = (dlz_dlopen_version_t *)
|
||||
dl_load_symbol(cd, "dlz_version", ISC_TRUE);
|
||||
dl_load_symbol(cd, "dlz_version", true);
|
||||
cd->dlz_create = (dlz_dlopen_create_t *)
|
||||
dl_load_symbol(cd, "dlz_create", ISC_TRUE);
|
||||
dl_load_symbol(cd, "dlz_create", true);
|
||||
cd->dlz_lookup = (dlz_dlopen_lookup_t *)
|
||||
dl_load_symbol(cd, "dlz_lookup", ISC_TRUE);
|
||||
dl_load_symbol(cd, "dlz_lookup", true);
|
||||
cd->dlz_findzonedb = (dlz_dlopen_findzonedb_t *)
|
||||
dl_load_symbol(cd, "dlz_findzonedb", ISC_TRUE);
|
||||
dl_load_symbol(cd, "dlz_findzonedb", true);
|
||||
|
||||
if (cd->dlz_create == NULL ||
|
||||
cd->dlz_version == NULL ||
|
||||
@@ -300,29 +302,29 @@ dlopen_dlz_create(const char *dlzname, unsigned int argc, char *argv[],
|
||||
}
|
||||
|
||||
cd->dlz_allowzonexfr = (dlz_dlopen_allowzonexfr_t *)
|
||||
dl_load_symbol(cd, "dlz_allowzonexfr", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_allowzonexfr", false);
|
||||
cd->dlz_allnodes = (dlz_dlopen_allnodes_t *)
|
||||
dl_load_symbol(cd, "dlz_allnodes",
|
||||
ISC_TF(cd->dlz_allowzonexfr != NULL));
|
||||
(cd->dlz_allowzonexfr != NULL));
|
||||
cd->dlz_authority = (dlz_dlopen_authority_t *)
|
||||
dl_load_symbol(cd, "dlz_authority", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_authority", false);
|
||||
cd->dlz_newversion = (dlz_dlopen_newversion_t *)
|
||||
dl_load_symbol(cd, "dlz_newversion", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_newversion", false);
|
||||
cd->dlz_closeversion = (dlz_dlopen_closeversion_t *)
|
||||
dl_load_symbol(cd, "dlz_closeversion",
|
||||
ISC_TF(cd->dlz_newversion != NULL));
|
||||
(cd->dlz_newversion != NULL));
|
||||
cd->dlz_configure = (dlz_dlopen_configure_t *)
|
||||
dl_load_symbol(cd, "dlz_configure", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_configure", false);
|
||||
cd->dlz_ssumatch = (dlz_dlopen_ssumatch_t *)
|
||||
dl_load_symbol(cd, "dlz_ssumatch", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_ssumatch", false);
|
||||
cd->dlz_addrdataset = (dlz_dlopen_addrdataset_t *)
|
||||
dl_load_symbol(cd, "dlz_addrdataset", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_addrdataset", false);
|
||||
cd->dlz_subrdataset = (dlz_dlopen_subrdataset_t *)
|
||||
dl_load_symbol(cd, "dlz_subrdataset", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_subrdataset", false);
|
||||
cd->dlz_delrdataset = (dlz_dlopen_delrdataset_t *)
|
||||
dl_load_symbol(cd, "dlz_delrdataset", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_delrdataset", false);
|
||||
cd->dlz_destroy = (dlz_dlopen_destroy_t *)
|
||||
dl_load_symbol(cd, "dlz_destroy", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_destroy", false);
|
||||
|
||||
/* Check the version of the API is the same */
|
||||
cd->version = cd->dlz_version(&cd->flags);
|
||||
@@ -435,7 +437,7 @@ dlopen_dlz_newversion(const char *zone, void *driverarg, void *dbdata,
|
||||
* Called to end a transaction
|
||||
*/
|
||||
static void
|
||||
dlopen_dlz_closeversion(const char *zone, isc_boolean_t commit,
|
||||
dlopen_dlz_closeversion(const char *zone, bool commit,
|
||||
void *driverarg, void *dbdata, void **versionp)
|
||||
{
|
||||
dlopen_data_t *cd = (dlopen_data_t *) dbdata;
|
||||
@@ -468,9 +470,9 @@ dlopen_dlz_configure(dns_view_t *view, dns_dlzdb_t *dlzdb,
|
||||
return (ISC_R_SUCCESS);
|
||||
|
||||
MAYBE_LOCK(cd);
|
||||
cd->in_configure = ISC_TRUE;
|
||||
cd->in_configure = true;
|
||||
result = cd->dlz_configure(view, dlzdb, cd->dbdata);
|
||||
cd->in_configure = ISC_FALSE;
|
||||
cd->in_configure = false;
|
||||
MAYBE_UNLOCK(cd);
|
||||
|
||||
return (result);
|
||||
@@ -480,18 +482,18 @@ dlopen_dlz_configure(dns_view_t *view, dns_dlzdb_t *dlzdb,
|
||||
/*
|
||||
* Check for authority to change a name.
|
||||
*/
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
dlopen_dlz_ssumatch(const char *signer, const char *name, const char *tcpaddr,
|
||||
const char *type, const char *key, isc_uint32_t keydatalen,
|
||||
const char *type, const char *key, uint32_t keydatalen,
|
||||
unsigned char *keydata, void *driverarg, void *dbdata)
|
||||
{
|
||||
dlopen_data_t *cd = (dlopen_data_t *) dbdata;
|
||||
isc_boolean_t ret;
|
||||
bool ret;
|
||||
|
||||
UNUSED(driverarg);
|
||||
|
||||
if (cd->dlz_ssumatch == NULL)
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
|
||||
MAYBE_LOCK(cd);
|
||||
ret = cd->dlz_ssumatch(signer, name, tcpaddr, type, key, keydatalen,
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
/*! \file */
|
||||
|
||||
#include <pwd.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isc/types.h>
|
||||
|
||||
@@ -49,12 +50,12 @@ void
|
||||
named_os_minprivs(void);
|
||||
|
||||
FILE *
|
||||
named_os_openfile(const char *filename, mode_t mode, isc_boolean_t switch_user);
|
||||
named_os_openfile(const char *filename, mode_t mode, bool switch_user);
|
||||
|
||||
void
|
||||
named_os_writepidfile(const char *filename, isc_boolean_t first_time);
|
||||
named_os_writepidfile(const char *filename, bool first_time);
|
||||
|
||||
isc_boolean_t
|
||||
bool
|
||||
named_os_issingleton(const char *filename);
|
||||
|
||||
void
|
||||
|
||||
+39
-105
@@ -13,6 +13,7 @@
|
||||
|
||||
#include <config.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <sys/types.h> /* dev_t FreeBSD 2.1 */
|
||||
#include <sys/stat.h>
|
||||
@@ -59,16 +60,16 @@ static int singletonfd = -1;
|
||||
#endif
|
||||
|
||||
/*
|
||||
* If there's no <linux/capability.h>, we don't care about <sys/prctl.h>
|
||||
* If there's no <sys/capability.h>, we don't care about <sys/prctl.h>
|
||||
*/
|
||||
#ifndef HAVE_LINUX_CAPABILITY_H
|
||||
#ifndef HAVE_SYS_CAPABILITY_H
|
||||
#undef HAVE_SYS_PRCTL_H
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Linux defines:
|
||||
* (T) HAVE_LINUXTHREADS
|
||||
* (C) HAVE_SYS_CAPABILITY_H (or HAVE_LINUX_CAPABILITY_H)
|
||||
* (C) HAVE_SYS_CAPABILITY_H
|
||||
* (P) HAVE_SYS_PRCTL_H
|
||||
* The possible cases are:
|
||||
* none: setuid() normally
|
||||
@@ -107,92 +108,36 @@ static pid_t mainpid = 0;
|
||||
#endif
|
||||
|
||||
static struct passwd *runas_pw = NULL;
|
||||
static isc_boolean_t done_setuid = ISC_FALSE;
|
||||
static bool done_setuid = false;
|
||||
static int dfd[2] = { -1, -1 };
|
||||
|
||||
#ifdef HAVE_LINUX_CAPABILITY_H
|
||||
|
||||
static isc_boolean_t non_root = ISC_FALSE;
|
||||
static isc_boolean_t non_root_caps = ISC_FALSE;
|
||||
|
||||
#ifdef HAVE_SYS_CAPABILITY_H
|
||||
|
||||
static bool non_root = false;
|
||||
static bool non_root_caps = false;
|
||||
|
||||
#include <sys/capability.h>
|
||||
#else
|
||||
#ifdef HAVE_LINUX_TYPES_H
|
||||
#include <linux/types.h>
|
||||
#endif
|
||||
/*%
|
||||
* We define _LINUX_FS_H to prevent it from being included. We don't need
|
||||
* anything from it, and the files it includes cause warnings with 2.2
|
||||
* kernels, and compilation failures (due to conflicts between <linux/string.h>
|
||||
* and <string.h>) on 2.3 kernels.
|
||||
*/
|
||||
#define _LINUX_FS_H
|
||||
#include <linux/capability.h>
|
||||
#include <syscall.h>
|
||||
#ifndef SYS_capset
|
||||
#ifndef __NR_capset
|
||||
#include <asm/unistd.h> /* Slackware 4.0 needs this. */
|
||||
#endif /* __NR_capset */
|
||||
#define SYS_capset __NR_capset
|
||||
#endif /* SYS_capset */
|
||||
#endif /* HAVE_SYS_CAPABILITY_H */
|
||||
|
||||
#ifdef HAVE_SYS_PRCTL_H
|
||||
#include <sys/prctl.h> /* Required for prctl(). */
|
||||
|
||||
/*
|
||||
* If the value of PR_SET_KEEPCAPS is not in <sys/prctl.h>, define it
|
||||
* here. This allows setuid() to work on systems running a new enough
|
||||
* kernel but with /usr/include/linux pointing to "standard" kernel
|
||||
* headers.
|
||||
*/
|
||||
#ifndef PR_SET_KEEPCAPS
|
||||
#define PR_SET_KEEPCAPS 8
|
||||
#endif
|
||||
|
||||
#endif /* HAVE_SYS_PRCTL_H */
|
||||
|
||||
#ifdef HAVE_LIBCAP
|
||||
#define SETCAPS_FUNC "cap_set_proc "
|
||||
#else
|
||||
typedef unsigned int cap_t;
|
||||
#define SETCAPS_FUNC "syscall(capset) "
|
||||
#endif /* HAVE_LIBCAP */
|
||||
|
||||
static void
|
||||
linux_setcaps(cap_t caps) {
|
||||
#ifndef HAVE_LIBCAP
|
||||
struct __user_cap_header_struct caphead;
|
||||
struct __user_cap_data_struct cap;
|
||||
#endif
|
||||
char strbuf[ISC_STRERRORSIZE];
|
||||
|
||||
if ((getuid() != 0 && !non_root_caps) || non_root)
|
||||
if ((getuid() != 0 && !non_root_caps) || non_root) {
|
||||
return;
|
||||
#ifndef HAVE_LIBCAP
|
||||
memset(&caphead, 0, sizeof(caphead));
|
||||
caphead.version = _LINUX_CAPABILITY_VERSION;
|
||||
caphead.pid = 0;
|
||||
memset(&cap, 0, sizeof(cap));
|
||||
cap.effective = caps;
|
||||
cap.permitted = caps;
|
||||
cap.inheritable = 0;
|
||||
#endif
|
||||
#ifdef HAVE_LIBCAP
|
||||
}
|
||||
if (cap_set_proc(caps) < 0) {
|
||||
#else
|
||||
if (syscall(SYS_capset, &caphead, &cap) < 0) {
|
||||
#endif
|
||||
isc__strerror(errno, strbuf, sizeof(strbuf));
|
||||
named_main_earlyfatal(SETCAPS_FUNC "failed: %s:"
|
||||
named_main_earlyfatal("cap_set_proc() failed: %s:"
|
||||
" please ensure that the capset kernel"
|
||||
" module is loaded. see insmod(8)",
|
||||
strbuf);
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef HAVE_LIBCAP
|
||||
#define SET_CAP(flag) \
|
||||
do { \
|
||||
cap_flag_value_t curval; \
|
||||
@@ -230,20 +175,14 @@ linux_setcaps(cap_t caps) {
|
||||
cap_free(caps); \
|
||||
cap_free(curcaps); \
|
||||
} while (0)
|
||||
#else
|
||||
#define SET_CAP(flag) do { caps |= (1 << (flag)); } while (0)
|
||||
#define INIT_CAP do { caps = 0; } while (0)
|
||||
#endif /* HAVE_LIBCAP */
|
||||
|
||||
static void
|
||||
linux_initialprivs(void) {
|
||||
cap_t caps;
|
||||
#ifdef HAVE_LIBCAP
|
||||
cap_t curcaps;
|
||||
cap_value_t capval;
|
||||
char strbuf[ISC_STRERRORSIZE];
|
||||
int err;
|
||||
#endif
|
||||
|
||||
/*%
|
||||
* We don't need most privileges, so we drop them right away.
|
||||
@@ -300,20 +239,16 @@ linux_initialprivs(void) {
|
||||
|
||||
linux_setcaps(caps);
|
||||
|
||||
#ifdef HAVE_LIBCAP
|
||||
FREE_CAP;
|
||||
#endif
|
||||
}
|
||||
|
||||
static void
|
||||
linux_minprivs(void) {
|
||||
cap_t caps;
|
||||
#ifdef HAVE_LIBCAP
|
||||
cap_t curcaps;
|
||||
cap_value_t capval;
|
||||
char strbuf[ISC_STRERRORSIZE];
|
||||
int err;
|
||||
#endif
|
||||
|
||||
INIT_CAP;
|
||||
/*%
|
||||
@@ -337,9 +272,7 @@ linux_minprivs(void) {
|
||||
|
||||
linux_setcaps(caps);
|
||||
|
||||
#ifdef HAVE_LIBCAP
|
||||
FREE_CAP;
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef HAVE_SYS_PRCTL_H
|
||||
@@ -357,14 +290,14 @@ linux_keepcaps(void) {
|
||||
named_main_earlyfatal("prctl() failed: %s", strbuf);
|
||||
}
|
||||
} else {
|
||||
non_root_caps = ISC_TRUE;
|
||||
non_root_caps = true;
|
||||
if (getuid() != 0)
|
||||
non_root = ISC_TRUE;
|
||||
non_root = true;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* HAVE_LINUX_CAPABILITY_H */
|
||||
#endif /* HAVE_SYS_CAPABILITY_H */
|
||||
|
||||
|
||||
static void
|
||||
@@ -381,7 +314,7 @@ setup_syslog(const char *progname) {
|
||||
void
|
||||
named_os_init(const char *progname) {
|
||||
setup_syslog(progname);
|
||||
#ifdef HAVE_LINUX_CAPABILITY_H
|
||||
#ifdef HAVE_SYS_CAPABILITY_H
|
||||
linux_initialprivs();
|
||||
#endif
|
||||
#ifdef HAVE_LINUXTHREADS
|
||||
@@ -496,16 +429,16 @@ named_os_closedevnull(void) {
|
||||
}
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
all_digits(const char *s) {
|
||||
if (*s == '\0')
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
while (*s != '\0') {
|
||||
if (!isdigit((*s)&0xff))
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
s++;
|
||||
}
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
|
||||
void
|
||||
@@ -564,14 +497,15 @@ named_os_changeuser(void) {
|
||||
if (runas_pw == NULL || done_setuid)
|
||||
return;
|
||||
|
||||
done_setuid = ISC_TRUE;
|
||||
done_setuid = true;
|
||||
|
||||
#ifdef HAVE_LINUXTHREADS
|
||||
#ifdef HAVE_LINUX_CAPABILITY_H
|
||||
if (!non_root_caps)
|
||||
#ifdef HAVE_SYS_CAPABILITY_H
|
||||
if (!non_root_caps) {
|
||||
named_main_earlyfatal("-u with Linux threads not supported: "
|
||||
"requires kernel support for "
|
||||
"prctl(PR_SET_KEEPCAPS)");
|
||||
}
|
||||
#else
|
||||
named_main_earlyfatal("-u with Linux threads not supported: "
|
||||
"no capabilities support or capabilities "
|
||||
@@ -600,7 +534,7 @@ named_os_changeuser(void) {
|
||||
strbuf);
|
||||
}
|
||||
#endif
|
||||
#if defined(HAVE_LINUX_CAPABILITY_H) && !defined(HAVE_LINUXTHREADS)
|
||||
#if defined(HAVE_SYS_CAPABILITY_H) && !defined(HAVE_LINUXTHREADS)
|
||||
linux_minprivs();
|
||||
#endif
|
||||
}
|
||||
@@ -640,13 +574,13 @@ named_os_minprivs(void) {
|
||||
named_os_changeuser(); /* Call setuid() before threads are started */
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_LINUX_CAPABILITY_H) && defined(HAVE_LINUXTHREADS)
|
||||
#if defined(HAVE_SYS_CAPABILITY_H) && defined(HAVE_LINUXTHREADS)
|
||||
linux_minprivs();
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
safe_open(const char *filename, mode_t mode, isc_boolean_t append) {
|
||||
safe_open(const char *filename, mode_t mode, bool append) {
|
||||
int fd;
|
||||
struct stat sb;
|
||||
|
||||
@@ -803,7 +737,7 @@ setperms(uid_t uid, gid_t gid) {
|
||||
}
|
||||
|
||||
FILE *
|
||||
named_os_openfile(const char *filename, mode_t mode, isc_boolean_t switch_user) {
|
||||
named_os_openfile(const char *filename, mode_t mode, bool switch_user) {
|
||||
char strbuf[ISC_STRERRORSIZE], *f;
|
||||
FILE *fp;
|
||||
int fd;
|
||||
@@ -831,7 +765,7 @@ named_os_openfile(const char *filename, mode_t mode, isc_boolean_t switch_user)
|
||||
/* Set UID/GID to the one we'll be running with eventually */
|
||||
setperms(runas_pw->pw_uid, runas_pw->pw_gid);
|
||||
|
||||
fd = safe_open(filename, mode, ISC_FALSE);
|
||||
fd = safe_open(filename, mode, false);
|
||||
|
||||
#ifndef HAVE_LINUXTHREADS
|
||||
/* Restore UID/GID to root */
|
||||
@@ -840,7 +774,7 @@ named_os_openfile(const char *filename, mode_t mode, isc_boolean_t switch_user)
|
||||
|
||||
if (fd == -1) {
|
||||
#ifndef HAVE_LINUXTHREADS
|
||||
fd = safe_open(filename, mode, ISC_FALSE);
|
||||
fd = safe_open(filename, mode, false);
|
||||
if (fd != -1) {
|
||||
named_main_earlywarning("Required root "
|
||||
"permissions to open "
|
||||
@@ -861,7 +795,7 @@ named_os_openfile(const char *filename, mode_t mode, isc_boolean_t switch_user)
|
||||
#endif /* HAVE_LINUXTHREADS */
|
||||
}
|
||||
} else {
|
||||
fd = safe_open(filename, mode, ISC_FALSE);
|
||||
fd = safe_open(filename, mode, false);
|
||||
}
|
||||
|
||||
if (fd < 0) {
|
||||
@@ -882,7 +816,7 @@ named_os_openfile(const char *filename, mode_t mode, isc_boolean_t switch_user)
|
||||
}
|
||||
|
||||
void
|
||||
named_os_writepidfile(const char *filename, isc_boolean_t first_time) {
|
||||
named_os_writepidfile(const char *filename, bool first_time) {
|
||||
FILE *fh;
|
||||
pid_t pid;
|
||||
char strbuf[ISC_STRERRORSIZE];
|
||||
@@ -932,16 +866,16 @@ named_os_writepidfile(const char *filename, isc_boolean_t first_time) {
|
||||
(void)fclose(fh);
|
||||
}
|
||||
|
||||
isc_boolean_t
|
||||
bool
|
||||
named_os_issingleton(const char *filename) {
|
||||
char strbuf[ISC_STRERRORSIZE];
|
||||
struct flock lock;
|
||||
|
||||
if (singletonfd != -1)
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
|
||||
if (strcasecmp(filename, "none") == 0)
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
|
||||
/*
|
||||
* Make the containing directory if it doesn't exist.
|
||||
@@ -957,7 +891,7 @@ named_os_issingleton(const char *filename) {
|
||||
named_main_earlywarning("couldn't create '%s'",
|
||||
filename);
|
||||
cleanup_lockfile();
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -969,7 +903,7 @@ named_os_issingleton(const char *filename) {
|
||||
S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH);
|
||||
if (singletonfd == -1) {
|
||||
cleanup_lockfile();
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
memset(&lock, 0, sizeof(lock));
|
||||
@@ -982,10 +916,10 @@ named_os_issingleton(const char *filename) {
|
||||
if (fcntl(singletonfd, F_SETLK, &lock) == -1) {
|
||||
close(singletonfd);
|
||||
singletonfd = -1;
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
@@ -14,9 +14,11 @@
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <inttypes.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <dns/log.h>
|
||||
#include <dns/result.h>
|
||||
@@ -44,7 +46,7 @@ typedef struct dlopen_data {
|
||||
unsigned int flags;
|
||||
isc_mutex_t lock;
|
||||
int version;
|
||||
isc_boolean_t in_configure;
|
||||
bool in_configure;
|
||||
|
||||
dlz_dlopen_version_t *dlz_version;
|
||||
dlz_dlopen_create_t *dlz_create;
|
||||
@@ -67,14 +69,14 @@ typedef struct dlopen_data {
|
||||
#define MAYBE_LOCK(cd) \
|
||||
do { \
|
||||
if ((cd->flags & DNS_SDLZFLAG_THREADSAFE) == 0 && \
|
||||
cd->in_configure == ISC_FALSE) \
|
||||
cd->in_configure == false) \
|
||||
LOCK(&cd->lock); \
|
||||
} while (0)
|
||||
|
||||
#define MAYBE_UNLOCK(cd) \
|
||||
do { \
|
||||
if ((cd->flags & DNS_SDLZFLAG_THREADSAFE) == 0 && \
|
||||
cd->in_configure == ISC_FALSE) \
|
||||
cd->in_configure == false) \
|
||||
UNLOCK(&cd->lock); \
|
||||
} while (0)
|
||||
|
||||
@@ -194,7 +196,7 @@ dlopen_dlz_lookup(const char *zone, const char *name, void *driverarg,
|
||||
* Load a symbol from the library
|
||||
*/
|
||||
static void *
|
||||
dl_load_symbol(dlopen_data_t *cd, const char *symbol, isc_boolean_t mandatory) {
|
||||
dl_load_symbol(dlopen_data_t *cd, const char *symbol, bool mandatory) {
|
||||
void *ptr = GetProcAddress(cd->dl_handle, symbol);
|
||||
if (ptr == NULL && mandatory) {
|
||||
dlopen_log(ISC_LOG_ERROR,
|
||||
@@ -214,7 +216,7 @@ dlopen_dlz_create(const char *dlzname, unsigned int argc, char *argv[],
|
||||
dlopen_data_t *cd;
|
||||
isc_mem_t *mctx = NULL;
|
||||
isc_result_t result = ISC_R_FAILURE;
|
||||
isc_boolean_t triedload = ISC_FALSE;
|
||||
bool triedload = false;
|
||||
|
||||
UNUSED(driverarg);
|
||||
|
||||
@@ -248,7 +250,7 @@ dlopen_dlz_create(const char *dlzname, unsigned int argc, char *argv[],
|
||||
goto failed;
|
||||
}
|
||||
|
||||
triedload = ISC_TRUE;
|
||||
triedload = true;
|
||||
|
||||
/* Initialize the lock */
|
||||
result = isc_mutex_init(&cd->lock);
|
||||
@@ -269,13 +271,13 @@ dlopen_dlz_create(const char *dlzname, unsigned int argc, char *argv[],
|
||||
|
||||
/* Find the symbols */
|
||||
cd->dlz_version = (dlz_dlopen_version_t *)
|
||||
dl_load_symbol(cd, "dlz_version", ISC_TRUE);
|
||||
dl_load_symbol(cd, "dlz_version", true);
|
||||
cd->dlz_create = (dlz_dlopen_create_t *)
|
||||
dl_load_symbol(cd, "dlz_create", ISC_TRUE);
|
||||
dl_load_symbol(cd, "dlz_create", true);
|
||||
cd->dlz_lookup = (dlz_dlopen_lookup_t *)
|
||||
dl_load_symbol(cd, "dlz_lookup", ISC_TRUE);
|
||||
dl_load_symbol(cd, "dlz_lookup", true);
|
||||
cd->dlz_findzonedb = (dlz_dlopen_findzonedb_t *)
|
||||
dl_load_symbol(cd, "dlz_findzonedb", ISC_TRUE);
|
||||
dl_load_symbol(cd, "dlz_findzonedb", true);
|
||||
|
||||
if (cd->dlz_create == NULL ||
|
||||
cd->dlz_version == NULL ||
|
||||
@@ -288,27 +290,27 @@ dlopen_dlz_create(const char *dlzname, unsigned int argc, char *argv[],
|
||||
}
|
||||
|
||||
cd->dlz_allowzonexfr = (dlz_dlopen_allowzonexfr_t *)
|
||||
dl_load_symbol(cd, "dlz_allowzonexfr", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_allowzonexfr", false);
|
||||
cd->dlz_allnodes = (dlz_dlopen_allnodes_t *)
|
||||
dl_load_symbol(cd, "dlz_allnodes",
|
||||
ISC_TF(cd->dlz_allowzonexfr != NULL));
|
||||
(cd->dlz_allowzonexfr != NULL));
|
||||
cd->dlz_authority = (dlz_dlopen_authority_t *)
|
||||
dl_load_symbol(cd, "dlz_authority", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_authority", false);
|
||||
cd->dlz_newversion = (dlz_dlopen_newversion_t *)
|
||||
dl_load_symbol(cd, "dlz_newversion", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_newversion", false);
|
||||
cd->dlz_closeversion = (dlz_dlopen_closeversion_t *)
|
||||
dl_load_symbol(cd, "dlz_closeversion",
|
||||
ISC_TF(cd->dlz_newversion != NULL));
|
||||
(cd->dlz_newversion != NULL));
|
||||
cd->dlz_configure = (dlz_dlopen_configure_t *)
|
||||
dl_load_symbol(cd, "dlz_configure", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_configure", false);
|
||||
cd->dlz_ssumatch = (dlz_dlopen_ssumatch_t *)
|
||||
dl_load_symbol(cd, "dlz_ssumatch", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_ssumatch", false);
|
||||
cd->dlz_addrdataset = (dlz_dlopen_addrdataset_t *)
|
||||
dl_load_symbol(cd, "dlz_addrdataset", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_addrdataset", false);
|
||||
cd->dlz_subrdataset = (dlz_dlopen_subrdataset_t *)
|
||||
dl_load_symbol(cd, "dlz_subrdataset", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_subrdataset", false);
|
||||
cd->dlz_delrdataset = (dlz_dlopen_delrdataset_t *)
|
||||
dl_load_symbol(cd, "dlz_delrdataset", ISC_FALSE);
|
||||
dl_load_symbol(cd, "dlz_delrdataset", false);
|
||||
|
||||
/* Check the version of the API is the same */
|
||||
cd->version = cd->dlz_version(&cd->flags);
|
||||
@@ -420,7 +422,7 @@ dlopen_dlz_newversion(const char *zone, void *driverarg, void *dbdata,
|
||||
* Called to end a transaction
|
||||
*/
|
||||
static void
|
||||
dlopen_dlz_closeversion(const char *zone, isc_boolean_t commit,
|
||||
dlopen_dlz_closeversion(const char *zone, bool commit,
|
||||
void *driverarg, void *dbdata, void **versionp)
|
||||
{
|
||||
dlopen_data_t *cd = (dlopen_data_t *) dbdata;
|
||||
@@ -453,9 +455,9 @@ dlopen_dlz_configure(dns_view_t *view, dns_dlzdb_t *dlzdb,
|
||||
return (ISC_R_SUCCESS);
|
||||
|
||||
MAYBE_LOCK(cd);
|
||||
cd->in_configure = ISC_TRUE;
|
||||
cd->in_configure = true;
|
||||
result = cd->dlz_configure(view, dlzdb, cd->dbdata);
|
||||
cd->in_configure = ISC_FALSE;
|
||||
cd->in_configure = false;
|
||||
MAYBE_UNLOCK(cd);
|
||||
|
||||
return (result);
|
||||
@@ -465,18 +467,18 @@ dlopen_dlz_configure(dns_view_t *view, dns_dlzdb_t *dlzdb,
|
||||
/*
|
||||
* Check for authority to change a name
|
||||
*/
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
dlopen_dlz_ssumatch(const char *signer, const char *name, const char *tcpaddr,
|
||||
const char *type, const char *key, isc_uint32_t keydatalen,
|
||||
const char *type, const char *key, uint32_t keydatalen,
|
||||
unsigned char *keydata, void *driverarg, void *dbdata)
|
||||
{
|
||||
dlopen_data_t *cd = (dlopen_data_t *) dbdata;
|
||||
isc_boolean_t ret;
|
||||
bool ret;
|
||||
|
||||
UNUSED(driverarg);
|
||||
|
||||
if (cd->dlz_ssumatch == NULL)
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
|
||||
MAYBE_LOCK(cd);
|
||||
ret = cd->dlz_ssumatch(signer, name, tcpaddr, type, key, keydatalen,
|
||||
|
||||
@@ -12,6 +12,8 @@
|
||||
#ifndef NAMED_OS_H
|
||||
#define NAMED_OS_H 1
|
||||
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isc/types.h>
|
||||
|
||||
void
|
||||
@@ -45,12 +47,12 @@ void
|
||||
named_os_minprivs(void);
|
||||
|
||||
FILE *
|
||||
named_os_openfile(const char *filename, int mode, isc_boolean_t switch_user);
|
||||
named_os_openfile(const char *filename, int mode, bool switch_user);
|
||||
|
||||
void
|
||||
named_os_writepidfile(const char *filename, isc_boolean_t first_time);
|
||||
named_os_writepidfile(const char *filename, bool first_time);
|
||||
|
||||
isc_boolean_t
|
||||
bool
|
||||
named_os_issingleton(const char *filename);
|
||||
|
||||
void
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@@USE_GSSAPI@BUILDER="Visual Studio";_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;@USE_GSSAPI@BUILDER="Visual Studio";_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -79,7 +79,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@@USE_GSSAPI@BUILDER="Visual Studio";NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;@USE_GSSAPI@BUILDER="Visual Studio";NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -80,7 +80,7 @@ ServiceControl(DWORD dwCtrlCode) {
|
||||
|
||||
case SERVICE_CONTROL_SHUTDOWN:
|
||||
case SERVICE_CONTROL_STOP:
|
||||
named_server_flushonshutdown(named_g_server, ISC_TRUE);
|
||||
named_server_flushonshutdown(named_g_server, true);
|
||||
isc_app_shutdown();
|
||||
UpdateSCM(SERVICE_STOPPED);
|
||||
break;
|
||||
@@ -131,7 +131,7 @@ int main(int argc, char *argv[])
|
||||
int rc, ch;
|
||||
|
||||
/* Command line users should put -f in the options. */
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
while ((ch = isc_commandline_parse(argc, argv,
|
||||
NAMED_MAIN_ARGS)) != -1)
|
||||
{
|
||||
@@ -146,7 +146,7 @@ int main(int argc, char *argv[])
|
||||
break;
|
||||
}
|
||||
}
|
||||
isc_commandline_reset = ISC_TRUE;
|
||||
isc_commandline_reset = true;
|
||||
|
||||
if (foreground) {
|
||||
/* run in console window */
|
||||
|
||||
+12
-11
@@ -20,6 +20,7 @@
|
||||
#include <io.h>
|
||||
#include <process.h>
|
||||
#include <fcntl.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <syslog.h>
|
||||
@@ -176,7 +177,7 @@ named_os_minprivs(void) {
|
||||
}
|
||||
|
||||
static int
|
||||
safe_open(const char *filename, int mode, isc_boolean_t append) {
|
||||
safe_open(const char *filename, int mode, bool append) {
|
||||
int fd;
|
||||
struct stat sb;
|
||||
|
||||
@@ -222,13 +223,13 @@ cleanup_lockfile(void) {
|
||||
}
|
||||
|
||||
FILE *
|
||||
named_os_openfile(const char *filename, int mode, isc_boolean_t switch_user) {
|
||||
named_os_openfile(const char *filename, int mode, bool switch_user) {
|
||||
char strbuf[ISC_STRERRORSIZE];
|
||||
FILE *fp;
|
||||
int fd;
|
||||
|
||||
UNUSED(switch_user);
|
||||
fd = safe_open(filename, mode, ISC_FALSE);
|
||||
fd = safe_open(filename, mode, false);
|
||||
if (fd < 0) {
|
||||
isc__strerror(errno, strbuf, sizeof(strbuf));
|
||||
named_main_earlywarning("could not open file '%s': %s",
|
||||
@@ -248,7 +249,7 @@ named_os_openfile(const char *filename, int mode, isc_boolean_t switch_user) {
|
||||
}
|
||||
|
||||
void
|
||||
named_os_writepidfile(const char *filename, isc_boolean_t first_time) {
|
||||
named_os_writepidfile(const char *filename, bool first_time) {
|
||||
FILE *pidlockfile;
|
||||
pid_t pid;
|
||||
char strbuf[ISC_STRERRORSIZE];
|
||||
@@ -274,7 +275,7 @@ named_os_writepidfile(const char *filename, isc_boolean_t first_time) {
|
||||
|
||||
pidlockfile = named_os_openfile(filename,
|
||||
S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH,
|
||||
ISC_FALSE);
|
||||
false);
|
||||
if (pidlockfile == NULL) {
|
||||
free(pidfile);
|
||||
pidfile = NULL;
|
||||
@@ -298,16 +299,16 @@ named_os_writepidfile(const char *filename, isc_boolean_t first_time) {
|
||||
(void)fclose(pidlockfile);
|
||||
}
|
||||
|
||||
isc_boolean_t
|
||||
bool
|
||||
named_os_issingleton(const char *filename) {
|
||||
char strbuf[ISC_STRERRORSIZE];
|
||||
OVERLAPPED o;
|
||||
|
||||
if (lockfilefd != -1)
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
|
||||
if (strcasecmp(filename, "none") == 0)
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
|
||||
lockfile = strdup(filename);
|
||||
if (lockfile == NULL) {
|
||||
@@ -324,7 +325,7 @@ named_os_issingleton(const char *filename) {
|
||||
S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH);
|
||||
if (lockfilefd == -1) {
|
||||
cleanup_lockfile();
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
memset(&o, 0, sizeof(o));
|
||||
@@ -333,10 +334,10 @@ named_os_issingleton(const char *filename) {
|
||||
LOCKFILE_EXCLUSIVE_LOCK | LOCKFILE_FAIL_IMMEDIATELY,
|
||||
0, 0, 1, &o)) {
|
||||
cleanup_lockfile();
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
|
||||
|
||||
|
||||
+122
-75
@@ -11,6 +11,9 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <isc/buffer.h>
|
||||
#include <isc/file.h>
|
||||
#include <isc/mem.h>
|
||||
@@ -188,7 +191,7 @@ configure_zone_ssutable(const cfg_obj_t *zconfig, dns_zone_t *zone,
|
||||
const cfg_listelt_t *element, *element2;
|
||||
dns_ssutable_t *table = NULL;
|
||||
isc_mem_t *mctx = dns_zone_getmctx(zone);
|
||||
isc_boolean_t autoddns = ISC_FALSE;
|
||||
bool autoddns = false;
|
||||
isc_result_t result;
|
||||
|
||||
(void)cfg_map_get(zconfig, "update-policy", &updatepolicy);
|
||||
@@ -200,7 +203,7 @@ configure_zone_ssutable(const cfg_obj_t *zconfig, dns_zone_t *zone,
|
||||
|
||||
if (cfg_obj_isstring(updatepolicy) &&
|
||||
strcmp("local", cfg_obj_asstring(updatepolicy)) == 0) {
|
||||
autoddns = ISC_TRUE;
|
||||
autoddns = true;
|
||||
updatepolicy = NULL;
|
||||
}
|
||||
|
||||
@@ -219,8 +222,8 @@ configure_zone_ssutable(const cfg_obj_t *zconfig, dns_zone_t *zone,
|
||||
const cfg_obj_t *dname = cfg_tuple_get(stmt, "name");
|
||||
const cfg_obj_t *typelist = cfg_tuple_get(stmt, "types");
|
||||
const char *str;
|
||||
isc_boolean_t grant = ISC_FALSE;
|
||||
isc_boolean_t usezone = ISC_FALSE;
|
||||
bool grant = false;
|
||||
bool usezone = false;
|
||||
unsigned int mtype = dns_ssumatchtype_name;
|
||||
dns_fixedname_t fname, fident;
|
||||
isc_buffer_t b;
|
||||
@@ -229,16 +232,16 @@ configure_zone_ssutable(const cfg_obj_t *zconfig, dns_zone_t *zone,
|
||||
|
||||
str = cfg_obj_asstring(mode);
|
||||
if (strcasecmp(str, "grant") == 0)
|
||||
grant = ISC_TRUE;
|
||||
grant = true;
|
||||
else if (strcasecmp(str, "deny") == 0)
|
||||
grant = ISC_FALSE;
|
||||
grant = false;
|
||||
else
|
||||
INSIST(0);
|
||||
|
||||
str = cfg_obj_asstring(matchtype);
|
||||
CHECK(dns_ssu_mtypefromstring(str, &mtype));
|
||||
if (mtype == dns_ssumatchtype_subdomain) {
|
||||
usezone = ISC_TRUE;
|
||||
usezone = true;
|
||||
}
|
||||
|
||||
dns_fixedname_init(&fident);
|
||||
@@ -347,7 +350,7 @@ configure_zone_ssutable(const cfg_obj_t *zconfig, dns_zone_t *zone,
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
result = dns_ssutable_addrule(table, ISC_TRUE,
|
||||
result = dns_ssutable_addrule(table, true,
|
||||
named_g_server->session_keyname,
|
||||
dns_ssumatchtype_local,
|
||||
dns_zone_getorigin(zone),
|
||||
@@ -625,7 +628,7 @@ configure_staticstub(const cfg_obj_t *zconfig, dns_zone_t *zone,
|
||||
goto cleanup;
|
||||
dns_name_init(&apexname, NULL);
|
||||
dns_name_clone(dns_zone_getorigin(zone), &apexname);
|
||||
result = dns_db_findnode(db, &apexname, ISC_FALSE, &apexnode);
|
||||
result = dns_db_findnode(db, &apexname, false, &apexnode);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto cleanup;
|
||||
|
||||
@@ -668,7 +671,7 @@ configure_staticstub(const cfg_obj_t *zconfig, dns_zone_t *zone,
|
||||
if (apexnode != NULL)
|
||||
dns_db_detachnode(db, &apexnode);
|
||||
if (dbversion != NULL)
|
||||
dns_db_closeversion(db, &dbversion, ISC_TRUE);
|
||||
dns_db_closeversion(db, &dbversion, true);
|
||||
if (db != NULL)
|
||||
dns_db_detach(&db);
|
||||
for (i = 0; rdatalists[i] != NULL; i++) {
|
||||
@@ -769,7 +772,7 @@ checknames(dns_zonetype_t ztype, const cfg_obj_t **maps,
|
||||
* We run this unlocked as both the view list and the interface list
|
||||
* are updated when the appropriate task has exclusivity.
|
||||
*/
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
isself(dns_view_t *myview, dns_tsigkey_t *mykey,
|
||||
const isc_sockaddr_t *srcaddr, const isc_sockaddr_t *dstaddr,
|
||||
dns_rdataclass_t rdclass, void *arg)
|
||||
@@ -783,10 +786,10 @@ isself(dns_view_t *myview, dns_tsigkey_t *mykey,
|
||||
isc_netaddr_t netdst;
|
||||
|
||||
if (interfacemgr == NULL)
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
|
||||
if (!ns_interfacemgr_listeningon(interfacemgr, dstaddr))
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
|
||||
isc_netaddr_fromsockaddr(&netsrc, srcaddr);
|
||||
isc_netaddr_fromsockaddr(&netdst, dstaddr);
|
||||
@@ -802,7 +805,7 @@ isself(dns_view_t *myview, dns_tsigkey_t *mykey,
|
||||
continue;
|
||||
|
||||
if (mykey != NULL) {
|
||||
isc_boolean_t match;
|
||||
bool match;
|
||||
isc_result_t result;
|
||||
|
||||
result = dns_view_gettsig(view, &mykey->name, &key);
|
||||
@@ -822,7 +825,7 @@ isself(dns_view_t *myview, dns_tsigkey_t *mykey,
|
||||
break;
|
||||
}
|
||||
}
|
||||
return (ISC_TF(view == myview));
|
||||
return (view == myview);
|
||||
}
|
||||
|
||||
|
||||
@@ -843,7 +846,7 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
const char *filename = NULL;
|
||||
const char *dupcheck;
|
||||
dns_notifytype_t notifytype = dns_notifytype_yes;
|
||||
isc_uint32_t count;
|
||||
uint32_t count;
|
||||
unsigned int dbargc;
|
||||
char **dbargv;
|
||||
static char default_dbtype[] = "rbt";
|
||||
@@ -853,13 +856,13 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
dns_dialuptype_t dialup = dns_dialuptype_no;
|
||||
dns_zonetype_t ztype;
|
||||
int i;
|
||||
isc_int32_t journal_size;
|
||||
isc_boolean_t multi;
|
||||
isc_boolean_t alt;
|
||||
int32_t journal_size;
|
||||
bool multi;
|
||||
bool alt;
|
||||
dns_view_t *view;
|
||||
isc_boolean_t check = ISC_FALSE, fail = ISC_FALSE;
|
||||
isc_boolean_t warn = ISC_FALSE, ignore = ISC_FALSE;
|
||||
isc_boolean_t ixfrdiff;
|
||||
bool check = false, fail = false;
|
||||
bool warn = false, ignore = false;
|
||||
bool ixfrdiff;
|
||||
dns_masterformat_t masterformat;
|
||||
const dns_master_style_t *masterstyle = &dns_master_style_default;
|
||||
isc_stats_t *zoneqrystats;
|
||||
@@ -1272,12 +1275,12 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
cfg_obj_log(obj, named_g_lctx,
|
||||
ISC_LOG_ERROR,
|
||||
"'max-journal-size "
|
||||
"%" ISC_PRINT_QUADFORMAT "d' "
|
||||
"%" PRId64 "' "
|
||||
"is too large",
|
||||
value);
|
||||
RETERR(ISC_R_RANGE);
|
||||
}
|
||||
journal_size = (isc_uint32_t)value;
|
||||
journal_size = (uint32_t)value;
|
||||
}
|
||||
if (raw != NULL)
|
||||
dns_zone_setjournalsize(raw, journal_size);
|
||||
@@ -1294,22 +1297,22 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
"master") == 0) &&
|
||||
ztype == dns_zone_master)
|
||||
{
|
||||
ixfrdiff = ISC_TRUE;
|
||||
ixfrdiff = true;
|
||||
} else if ((strcasecmp(cfg_obj_asstring(obj),
|
||||
"secondary") == 0 ||
|
||||
strcasecmp(cfg_obj_asstring(obj),
|
||||
"slave") == 0) &&
|
||||
ztype == dns_zone_slave)
|
||||
{
|
||||
ixfrdiff = ISC_TRUE;
|
||||
ixfrdiff = true;
|
||||
} else {
|
||||
ixfrdiff = ISC_FALSE;
|
||||
ixfrdiff = false;
|
||||
}
|
||||
if (raw != NULL) {
|
||||
dns_zone_setoption(raw, DNS_ZONEOPT_IXFRFROMDIFFS,
|
||||
ISC_TRUE);
|
||||
true);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_IXFRFROMDIFFS,
|
||||
ISC_TRUE);
|
||||
false);
|
||||
} else
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_IXFRFROMDIFFS,
|
||||
ixfrdiff);
|
||||
@@ -1327,12 +1330,12 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
checknames(ztype, maps, &obj);
|
||||
INSIST(obj != NULL);
|
||||
if (strcasecmp(cfg_obj_asstring(obj), "warn") == 0) {
|
||||
fail = ISC_FALSE;
|
||||
check = ISC_TRUE;
|
||||
fail = false;
|
||||
check = true;
|
||||
} else if (strcasecmp(cfg_obj_asstring(obj), "fail") == 0) {
|
||||
fail = check = ISC_TRUE;
|
||||
fail = check = true;
|
||||
} else if (strcasecmp(cfg_obj_asstring(obj), "ignore") == 0) {
|
||||
fail = check = ISC_FALSE;
|
||||
fail = check = false;
|
||||
} else
|
||||
INSIST(0);
|
||||
if (raw != NULL) {
|
||||
@@ -1341,9 +1344,9 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
dns_zone_setoption(raw, DNS_ZONEOPT_CHECKNAMESFAIL,
|
||||
fail);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_CHECKNAMES,
|
||||
ISC_FALSE);
|
||||
false);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_CHECKNAMESFAIL,
|
||||
ISC_FALSE);
|
||||
false);
|
||||
} else {
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_CHECKNAMES,
|
||||
check);
|
||||
@@ -1366,9 +1369,9 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
result = named_config_get(maps, "check-spf", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
if (strcasecmp(cfg_obj_asstring(obj), "warn") == 0) {
|
||||
check = ISC_TRUE;
|
||||
check = true;
|
||||
} else if (strcasecmp(cfg_obj_asstring(obj), "ignore") == 0) {
|
||||
check = ISC_FALSE;
|
||||
check = false;
|
||||
} else
|
||||
INSIST(0);
|
||||
dns_zone_setoption(zone, DNS_ZONEOPT_CHECKSPF, check);
|
||||
@@ -1405,12 +1408,12 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
cfg_obj_log(obj, named_g_lctx,
|
||||
ISC_LOG_ERROR,
|
||||
"'max-journal-size "
|
||||
"%" ISC_PRINT_QUADFORMAT "d' "
|
||||
"%" PRId64 "' "
|
||||
"is too large",
|
||||
value);
|
||||
RETERR(ISC_R_RANGE);
|
||||
}
|
||||
journal_size = (isc_uint32_t)value;
|
||||
journal_size = (uint32_t)value;
|
||||
}
|
||||
dns_zone_setjournalsize(zone, journal_size);
|
||||
}
|
||||
@@ -1440,8 +1443,8 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
if (ztype == dns_zone_master || raw != NULL) {
|
||||
const cfg_obj_t *validity, *resign;
|
||||
isc_boolean_t allow = ISC_FALSE, maint = ISC_FALSE;
|
||||
isc_boolean_t sigvalinsecs;
|
||||
bool allow = false, maint = false;
|
||||
bool sigvalinsecs;
|
||||
|
||||
obj = NULL;
|
||||
result = named_config_get(maps, "dnskey-sig-validity", &obj);
|
||||
@@ -1522,9 +1525,9 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
const char *arg = cfg_obj_asstring(obj);
|
||||
if (strcasecmp(arg, "allow") == 0)
|
||||
allow = ISC_TRUE;
|
||||
allow = true;
|
||||
else if (strcasecmp(arg, "maintain") == 0)
|
||||
allow = maint = ISC_TRUE;
|
||||
allow = maint = true;
|
||||
else if (strcasecmp(arg, "off") == 0)
|
||||
;
|
||||
else
|
||||
@@ -1550,7 +1553,7 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
if (result == ISC_R_SUCCESS)
|
||||
check = cfg_obj_asboolean(obj);
|
||||
else
|
||||
check = ISC_FALSE;
|
||||
check = false;
|
||||
dns_zone_setoption(mayberaw, DNS_ZONEOPT_CHECKWILDCARD, check);
|
||||
|
||||
/*
|
||||
@@ -1575,12 +1578,12 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
|
||||
}
|
||||
if (strcasecmp(dupcheck, "warn") == 0) {
|
||||
fail = ISC_FALSE;
|
||||
check = ISC_TRUE;
|
||||
fail = false;
|
||||
check = true;
|
||||
} else if (strcasecmp(dupcheck, "fail") == 0) {
|
||||
fail = check = ISC_TRUE;
|
||||
fail = check = true;
|
||||
} else if (strcasecmp(dupcheck, "ignore") == 0) {
|
||||
fail = check = ISC_FALSE;
|
||||
fail = check = false;
|
||||
} else
|
||||
INSIST(0);
|
||||
dns_zone_setoption(mayberaw, DNS_ZONEOPT_CHECKDUPRR, check);
|
||||
@@ -1590,12 +1593,12 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
result = named_config_get(maps, "check-mx", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
if (strcasecmp(cfg_obj_asstring(obj), "warn") == 0) {
|
||||
fail = ISC_FALSE;
|
||||
check = ISC_TRUE;
|
||||
fail = false;
|
||||
check = true;
|
||||
} else if (strcasecmp(cfg_obj_asstring(obj), "fail") == 0) {
|
||||
fail = check = ISC_TRUE;
|
||||
fail = check = true;
|
||||
} else if (strcasecmp(cfg_obj_asstring(obj), "ignore") == 0) {
|
||||
fail = check = ISC_FALSE;
|
||||
fail = check = false;
|
||||
} else
|
||||
INSIST(0);
|
||||
dns_zone_setoption(mayberaw, DNS_ZONEOPT_CHECKMX, check);
|
||||
@@ -1614,7 +1617,7 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
dns_zone_setoption(mayberaw, DNS_ZONEOPT_CHECKINTEGRITY,
|
||||
cfg_obj_asboolean(obj));
|
||||
} else {
|
||||
check = ISC_FALSE;
|
||||
check = false;
|
||||
result = named_config_get(nodefault, "check-integrity",
|
||||
&obj);
|
||||
if (result == ISC_R_SUCCESS)
|
||||
@@ -1627,12 +1630,12 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
result = named_config_get(maps, "check-mx-cname", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
if (strcasecmp(cfg_obj_asstring(obj), "warn") == 0) {
|
||||
warn = ISC_TRUE;
|
||||
ignore = ISC_FALSE;
|
||||
warn = true;
|
||||
ignore = false;
|
||||
} else if (strcasecmp(cfg_obj_asstring(obj), "fail") == 0) {
|
||||
warn = ignore = ISC_FALSE;
|
||||
warn = ignore = false;
|
||||
} else if (strcasecmp(cfg_obj_asstring(obj), "ignore") == 0) {
|
||||
warn = ignore = ISC_TRUE;
|
||||
warn = ignore = true;
|
||||
} else
|
||||
INSIST(0);
|
||||
dns_zone_setoption(mayberaw, DNS_ZONEOPT_WARNMXCNAME, warn);
|
||||
@@ -1642,12 +1645,12 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
result = named_config_get(maps, "check-srv-cname", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
if (strcasecmp(cfg_obj_asstring(obj), "warn") == 0) {
|
||||
warn = ISC_TRUE;
|
||||
ignore = ISC_FALSE;
|
||||
warn = true;
|
||||
ignore = false;
|
||||
} else if (strcasecmp(cfg_obj_asstring(obj), "fail") == 0) {
|
||||
warn = ignore = ISC_FALSE;
|
||||
warn = ignore = false;
|
||||
} else if (strcasecmp(cfg_obj_asstring(obj), "ignore") == 0) {
|
||||
warn = ignore = ISC_TRUE;
|
||||
warn = ignore = true;
|
||||
} else
|
||||
INSIST(0);
|
||||
dns_zone_setoption(mayberaw, DNS_ZONEOPT_WARNSRVCNAME, warn);
|
||||
@@ -1667,7 +1670,7 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
const char *arg = cfg_obj_asstring(obj);
|
||||
if (strcasecmp(arg, "no-resign") == 0)
|
||||
dns_zone_setkeyopt(zone, DNS_ZONEKEY_NORESIGN,
|
||||
ISC_TRUE);
|
||||
true);
|
||||
else if (strcasecmp(arg, "maintain") == 0)
|
||||
;
|
||||
else
|
||||
@@ -1715,7 +1718,7 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
result = dns_zone_setmasters(mayberaw, NULL, 0);
|
||||
RETERR(result);
|
||||
|
||||
multi = ISC_FALSE;
|
||||
multi = false;
|
||||
if (count > 1) {
|
||||
obj = NULL;
|
||||
result = named_config_get(maps, "multi-master", &obj);
|
||||
@@ -1724,6 +1727,35 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
}
|
||||
dns_zone_setoption(mayberaw, DNS_ZONEOPT_MULTIMASTER, multi);
|
||||
|
||||
obj = NULL;
|
||||
(void)cfg_map_get(zoptions, "mirror", &obj);
|
||||
if (obj != NULL) {
|
||||
bool mirror = cfg_obj_asboolean(obj);
|
||||
dns_zone_setoption(mayberaw, DNS_ZONEOPT_MIRROR,
|
||||
mirror);
|
||||
if (mirror) {
|
||||
/*
|
||||
* Disable outgoing zone transfers unless they
|
||||
* are explicitly enabled by zone
|
||||
* configuration.
|
||||
*/
|
||||
obj = NULL;
|
||||
(void)cfg_map_get(zoptions, "allow-transfer",
|
||||
&obj);
|
||||
if (obj == NULL) {
|
||||
dns_acl_t *none;
|
||||
RETERR(dns_acl_none(mctx, &none));
|
||||
dns_zone_setxfracl(zone, none);
|
||||
dns_acl_detach(&none);
|
||||
}
|
||||
/*
|
||||
* Only allow "also-notify".
|
||||
*/
|
||||
notifytype = dns_notifytype_explicit;
|
||||
dns_zone_setnotifytype(zone, notifytype);
|
||||
}
|
||||
}
|
||||
|
||||
obj = NULL;
|
||||
result = named_config_get(maps, "max-transfer-time-in", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS && obj != NULL);
|
||||
@@ -1807,9 +1839,9 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
*/
|
||||
view = dns_zone_getview(zone);
|
||||
if (view != NULL && strcmp(view->name, "_default") == 0)
|
||||
alt = ISC_TRUE;
|
||||
alt = true;
|
||||
else
|
||||
alt = ISC_FALSE;
|
||||
alt = false;
|
||||
} else
|
||||
alt = cfg_obj_asboolean(obj);
|
||||
dns_zone_setoption(mayberaw, DNS_ZONEOPT_USEALTXFRSRC, alt);
|
||||
@@ -1856,14 +1888,14 @@ named_zone_configure_writeable_dlz(dns_dlzdb_t *dlzdatabase,
|
||||
return (result);
|
||||
}
|
||||
|
||||
isc_boolean_t
|
||||
bool
|
||||
named_zone_reusable(dns_zone_t *zone, const cfg_obj_t *zconfig) {
|
||||
const cfg_obj_t *zoptions = NULL;
|
||||
const cfg_obj_t *obj = NULL;
|
||||
const char *cfilename;
|
||||
const char *zfilename;
|
||||
dns_zone_t *raw = NULL;
|
||||
isc_boolean_t has_raw;
|
||||
bool has_raw, mirror;
|
||||
dns_zonetype_t ztype;
|
||||
|
||||
zoptions = cfg_tuple_get(zconfig, "options");
|
||||
@@ -1875,7 +1907,7 @@ named_zone_reusable(dns_zone_t *zone, const cfg_obj_t *zconfig) {
|
||||
if (zonetype_fromconfig(zoptions) == dns_zone_staticstub) {
|
||||
dns_zone_log(zone, ISC_LOG_DEBUG(1),
|
||||
"not reusable: staticstub");
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
/* If there's a raw zone, use that for filename and type comparison */
|
||||
@@ -1884,11 +1916,11 @@ named_zone_reusable(dns_zone_t *zone, const cfg_obj_t *zconfig) {
|
||||
zfilename = dns_zone_getfile(raw);
|
||||
ztype = dns_zone_gettype(raw);
|
||||
dns_zone_detach(&raw);
|
||||
has_raw = ISC_TRUE;
|
||||
has_raw = true;
|
||||
} else {
|
||||
zfilename = dns_zone_getfile(zone);
|
||||
ztype = dns_zone_gettype(zone);
|
||||
has_raw = ISC_FALSE;
|
||||
has_raw = false;
|
||||
}
|
||||
|
||||
obj = NULL;
|
||||
@@ -1896,17 +1928,32 @@ named_zone_reusable(dns_zone_t *zone, const cfg_obj_t *zconfig) {
|
||||
if ((obj == NULL || !cfg_obj_asboolean(obj)) && has_raw) {
|
||||
dns_zone_log(zone, ISC_LOG_DEBUG(1),
|
||||
"not reusable: old zone was inline-signing");
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
} else if ((obj != NULL && cfg_obj_asboolean(obj)) && !has_raw) {
|
||||
dns_zone_log(zone, ISC_LOG_DEBUG(1),
|
||||
"not reusable: old zone was not inline-signing");
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
/*
|
||||
* Do not reuse a zone whose "mirror" setting was changed.
|
||||
*/
|
||||
obj = NULL;
|
||||
mirror = false;
|
||||
(void)cfg_map_get(zoptions, "mirror", &obj);
|
||||
if (obj != NULL) {
|
||||
mirror = cfg_obj_asboolean(obj);
|
||||
}
|
||||
if (dns_zone_ismirror(zone) != mirror) {
|
||||
dns_zone_log(zone, ISC_LOG_DEBUG(1),
|
||||
"not reusable: mirror setting changed");
|
||||
return (false);
|
||||
}
|
||||
|
||||
if (zonetype_fromconfig(zoptions) != ztype) {
|
||||
dns_zone_log(zone, ISC_LOG_DEBUG(1),
|
||||
"not reusable: type mismatch");
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
obj = NULL;
|
||||
@@ -1921,8 +1968,8 @@ named_zone_reusable(dns_zone_t *zone, const cfg_obj_t *zconfig) {
|
||||
{
|
||||
dns_zone_log(zone, ISC_LOG_DEBUG(1),
|
||||
"not reusable: filename mismatch");
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
|
||||
@@ -21,15 +21,15 @@ DST_GSSAPI_INC = @DST_GSSAPI_INC@
|
||||
|
||||
CINCLUDES = ${DNS_INCLUDES} ${BIND9_INCLUDES} ${ISC_INCLUDES} \
|
||||
${ISCCFG_INCLUDES} ${IRS_INCLUDES} ${DST_GSSAPI_INC} \
|
||||
@DST_OPENSSL_INC@
|
||||
@OPENSSL_INCLUDES@
|
||||
|
||||
CDEFINES = -DVERSION=\"${VERSION}\" @USE_GSSAPI@
|
||||
CWARNINGS =
|
||||
|
||||
DNSLIBS = ../../lib/dns/libdns.@A@ @DNS_CRYPTO_LIBS@
|
||||
BIND9LIBS = ../../lib/bind9/libbind9.@A@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @OPENSSL_LIBS@
|
||||
ISCCFGLIBS = ../../lib/isccfg/libisccfg.@A@
|
||||
IRSLIBS = ../../lib/irs/libirs.@A@
|
||||
|
||||
|
||||
+158
-168
@@ -16,6 +16,8 @@
|
||||
#include <ctype.h>
|
||||
#include <errno.h>
|
||||
#include <limits.h>
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
|
||||
@@ -124,22 +126,22 @@ extern int h_errno;
|
||||
/* Number of addresses to request from bind9_getaddresses() */
|
||||
#define MAX_SERVERADDRS 4
|
||||
|
||||
static isc_uint16_t dnsport = DNSDEFAULTPORT;
|
||||
static uint16_t dnsport = DNSDEFAULTPORT;
|
||||
|
||||
#ifndef RESOLV_CONF
|
||||
#define RESOLV_CONF "/etc/resolv.conf"
|
||||
#endif
|
||||
|
||||
static isc_boolean_t debugging = ISC_FALSE, ddebugging = ISC_FALSE;
|
||||
static isc_boolean_t memdebugging = ISC_FALSE;
|
||||
static isc_boolean_t have_ipv4 = ISC_FALSE;
|
||||
static isc_boolean_t have_ipv6 = ISC_FALSE;
|
||||
static isc_boolean_t is_dst_up = ISC_FALSE;
|
||||
static isc_boolean_t usevc = ISC_FALSE;
|
||||
static isc_boolean_t usegsstsig = ISC_FALSE;
|
||||
static isc_boolean_t use_win2k_gsstsig = ISC_FALSE;
|
||||
static isc_boolean_t tried_other_gsstsig = ISC_FALSE;
|
||||
static isc_boolean_t local_only = ISC_FALSE;
|
||||
static bool debugging = false, ddebugging = false;
|
||||
static bool memdebugging = false;
|
||||
static bool have_ipv4 = false;
|
||||
static bool have_ipv6 = false;
|
||||
static bool is_dst_up = false;
|
||||
static bool usevc = false;
|
||||
static bool usegsstsig = false;
|
||||
static bool use_win2k_gsstsig = false;
|
||||
static bool tried_other_gsstsig = false;
|
||||
static bool local_only = false;
|
||||
static isc_taskmgr_t *taskmgr = NULL;
|
||||
static isc_task_t *global_task = NULL;
|
||||
static isc_event_t *global_event = NULL;
|
||||
@@ -163,7 +165,7 @@ static dns_tsigkey_t *tsigkey = NULL;
|
||||
static dst_key_t *sig0key = NULL;
|
||||
static isc_sockaddr_t *servers = NULL;
|
||||
static isc_sockaddr_t *master_servers = NULL;
|
||||
static isc_boolean_t default_servers = ISC_TRUE;
|
||||
static bool default_servers = true;
|
||||
static int ns_inuse = 0;
|
||||
static int master_inuse = 0;
|
||||
static int ns_total = 0;
|
||||
@@ -174,10 +176,10 @@ static isc_sockaddr_t *localaddr4 = NULL;
|
||||
static isc_sockaddr_t *localaddr6 = NULL;
|
||||
static const char *keyfile = NULL;
|
||||
static char *keystr = NULL;
|
||||
static isc_boolean_t shuttingdown = ISC_FALSE;
|
||||
static bool shuttingdown = false;
|
||||
static FILE *input;
|
||||
static isc_boolean_t interactive = ISC_TRUE;
|
||||
static isc_boolean_t seenerror = ISC_FALSE;
|
||||
static bool interactive = true;
|
||||
static bool seenerror = false;
|
||||
static const dns_master_style_t *style;
|
||||
static int requests = 0;
|
||||
static unsigned int logdebuglevel = 0;
|
||||
@@ -187,9 +189,9 @@ static unsigned int udp_retries = 3;
|
||||
static dns_rdataclass_t defaultclass = dns_rdataclass_in;
|
||||
static dns_rdataclass_t zoneclass = dns_rdataclass_none;
|
||||
static dns_message_t *answer = NULL;
|
||||
static isc_uint32_t default_ttl = 0;
|
||||
static isc_boolean_t default_ttl_set = ISC_FALSE;
|
||||
static isc_boolean_t checknames = ISC_TRUE;
|
||||
static uint32_t default_ttl = 0;
|
||||
static bool default_ttl_set = false;
|
||||
static bool checknames = true;
|
||||
|
||||
typedef struct nsu_requestinfo {
|
||||
dns_message_t *msg;
|
||||
@@ -238,10 +240,10 @@ recvgss(isc_task_t *task, isc_event_t *event);
|
||||
static void
|
||||
error(const char *format, ...) ISC_FORMAT_PRINTF(1, 2);
|
||||
|
||||
#define STATUS_MORE (isc_uint16_t)0
|
||||
#define STATUS_SEND (isc_uint16_t)1
|
||||
#define STATUS_QUIT (isc_uint16_t)2
|
||||
#define STATUS_SYNTAX (isc_uint16_t)3
|
||||
#define STATUS_MORE (uint16_t)0
|
||||
#define STATUS_SEND (uint16_t)1
|
||||
#define STATUS_QUIT (uint16_t)2
|
||||
#define STATUS_SYNTAX (uint16_t)3
|
||||
|
||||
static void
|
||||
master_from_servers(void) {
|
||||
@@ -262,14 +264,14 @@ getzoneclass(void) {
|
||||
return (zoneclass);
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
setzoneclass(dns_rdataclass_t rdclass) {
|
||||
if (zoneclass == dns_rdataclass_none ||
|
||||
rdclass == dns_rdataclass_none)
|
||||
zoneclass = rdclass;
|
||||
if (zoneclass != rdclass)
|
||||
return (ISC_FALSE);
|
||||
return (ISC_TRUE);
|
||||
return (false);
|
||||
return (true);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -376,15 +378,15 @@ reset_system(void) {
|
||||
dns_tsigkey_detach(&tsigkey);
|
||||
if (gssring != NULL)
|
||||
dns_tsigkeyring_detach(&gssring);
|
||||
tried_other_gsstsig = ISC_FALSE;
|
||||
tried_other_gsstsig = false;
|
||||
}
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
parse_hmac(const dns_name_t **hmac, const char *hmacstr, size_t len,
|
||||
isc_uint16_t *digestbitsp)
|
||||
uint16_t *digestbitsp)
|
||||
{
|
||||
isc_uint16_t digestbits = 0;
|
||||
uint16_t digestbits = 0;
|
||||
isc_result_t result;
|
||||
char buf[20];
|
||||
|
||||
@@ -393,13 +395,12 @@ parse_hmac(const dns_name_t **hmac, const char *hmacstr, size_t len,
|
||||
|
||||
if (len >= sizeof(buf)) {
|
||||
error("unknown key type '%.*s'", (int)(len), hmacstr);
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
|
||||
/* Copy len bytes and NUL terminate. */
|
||||
strlcpy(buf, hmacstr, ISC_MIN(len + 1, sizeof(buf)));
|
||||
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
if (strcasecmp(buf, "hmac-md5") == 0) {
|
||||
*hmac = DNS_TSIG_HMACMD5_NAME;
|
||||
} else if (strncasecmp(buf, "hmac-md5-", 9) == 0) {
|
||||
@@ -407,19 +408,17 @@ parse_hmac(const dns_name_t **hmac, const char *hmacstr, size_t len,
|
||||
result = isc_parse_uint16(&digestbits, &buf[9], 10);
|
||||
if (result != ISC_R_SUCCESS || digestbits > 128) {
|
||||
error("digest-bits out of range [0..128]");
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
*digestbitsp = (digestbits + 7) & ~0x7U;
|
||||
} else
|
||||
#endif
|
||||
if (strcasecmp(buf, "hmac-sha1") == 0) {
|
||||
} else if (strcasecmp(buf, "hmac-sha1") == 0) {
|
||||
*hmac = DNS_TSIG_HMACSHA1_NAME;
|
||||
} else if (strncasecmp(buf, "hmac-sha1-", 10) == 0) {
|
||||
*hmac = DNS_TSIG_HMACSHA1_NAME;
|
||||
result = isc_parse_uint16(&digestbits, &buf[10], 10);
|
||||
if (result != ISC_R_SUCCESS || digestbits > 160) {
|
||||
error("digest-bits out of range [0..160]");
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
*digestbitsp = (digestbits + 7) & ~0x7U;
|
||||
} else if (strcasecmp(buf, "hmac-sha224") == 0) {
|
||||
@@ -429,7 +428,7 @@ parse_hmac(const dns_name_t **hmac, const char *hmacstr, size_t len,
|
||||
result = isc_parse_uint16(&digestbits, &buf[12], 10);
|
||||
if (result != ISC_R_SUCCESS || digestbits > 224) {
|
||||
error("digest-bits out of range [0..224]");
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
*digestbitsp = (digestbits + 7) & ~0x7U;
|
||||
} else if (strcasecmp(buf, "hmac-sha256") == 0) {
|
||||
@@ -439,7 +438,7 @@ parse_hmac(const dns_name_t **hmac, const char *hmacstr, size_t len,
|
||||
result = isc_parse_uint16(&digestbits, &buf[12], 10);
|
||||
if (result != ISC_R_SUCCESS || digestbits > 256) {
|
||||
error("digest-bits out of range [0..256]");
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
*digestbitsp = (digestbits + 7) & ~0x7U;
|
||||
} else if (strcasecmp(buf, "hmac-sha384") == 0) {
|
||||
@@ -449,7 +448,7 @@ parse_hmac(const dns_name_t **hmac, const char *hmacstr, size_t len,
|
||||
result = isc_parse_uint16(&digestbits, &buf[12], 10);
|
||||
if (result != ISC_R_SUCCESS || digestbits > 384) {
|
||||
error("digest-bits out of range [0..384]");
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
*digestbitsp = (digestbits + 7) & ~0x7U;
|
||||
} else if (strcasecmp(buf, "hmac-sha512") == 0) {
|
||||
@@ -459,14 +458,14 @@ parse_hmac(const dns_name_t **hmac, const char *hmacstr, size_t len,
|
||||
result = isc_parse_uint16(&digestbits, &buf[12], 10);
|
||||
if (result != ISC_R_SUCCESS || digestbits > 512) {
|
||||
error("digest-bits out of range [0..512]");
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
*digestbitsp = (digestbits + 7) & ~0x7U;
|
||||
} else {
|
||||
error("unknown key type '%s'", buf);
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
}
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
|
||||
static int
|
||||
@@ -495,7 +494,7 @@ setup_keystr(void) {
|
||||
dns_name_t *mykeyname;
|
||||
char *name;
|
||||
const dns_name_t *hmacname = NULL;
|
||||
isc_uint16_t digestbits = 0;
|
||||
uint16_t digestbits = 0;
|
||||
|
||||
mykeyname = dns_fixedname_initname(&fkeyname);
|
||||
|
||||
@@ -515,11 +514,7 @@ setup_keystr(void) {
|
||||
exit(1);
|
||||
}
|
||||
} else {
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
hmacname = DNS_TSIG_HMACMD5_NAME;
|
||||
#else
|
||||
hmacname = DNS_TSIG_HMACSHA256_NAME;
|
||||
#endif
|
||||
name = keystr;
|
||||
n = s;
|
||||
}
|
||||
@@ -549,7 +544,7 @@ setup_keystr(void) {
|
||||
|
||||
debug("keycreate");
|
||||
result = dns_tsigkey_create(mykeyname, hmacname, secret, secretlen,
|
||||
ISC_FALSE, NULL, 0, 0, gmctx, NULL,
|
||||
false, NULL, 0, 0, gmctx, NULL,
|
||||
&tsigkey);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fprintf(stderr, "could not create key from %s: %s\n",
|
||||
@@ -653,11 +648,9 @@ setup_keyfile(isc_mem_t *mctx, isc_log_t *lctx) {
|
||||
}
|
||||
|
||||
switch (dst_key_alg(dstkey)) {
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
case DST_ALG_HMACMD5:
|
||||
hmacname = DNS_TSIG_HMACMD5_NAME;
|
||||
break;
|
||||
#endif
|
||||
case DST_ALG_HMACSHA1:
|
||||
hmacname = DNS_TSIG_HMACSHA1_NAME;
|
||||
break;
|
||||
@@ -676,7 +669,7 @@ setup_keyfile(isc_mem_t *mctx, isc_log_t *lctx) {
|
||||
}
|
||||
if (hmacname != NULL) {
|
||||
result = dns_tsigkey_createfromkey(dst_key_name(dstkey),
|
||||
hmacname, dstkey, ISC_FALSE,
|
||||
hmacname, dstkey, false,
|
||||
NULL, 0, 0, mctx, NULL,
|
||||
&tsigkey);
|
||||
dst_key_free(&dstkey);
|
||||
@@ -729,7 +722,7 @@ doshutdown(void) {
|
||||
if (is_dst_up) {
|
||||
ddebug("Destroy DST lib");
|
||||
dst_lib_destroy();
|
||||
is_dst_up = ISC_FALSE;
|
||||
is_dst_up = false;
|
||||
}
|
||||
|
||||
ddebug("Destroying request manager");
|
||||
@@ -765,7 +758,7 @@ shutdown_program(isc_task_t *task, isc_event_t *event) {
|
||||
ddebug("shutdown_program()");
|
||||
isc_event_free(&event);
|
||||
|
||||
shuttingdown = ISC_TRUE;
|
||||
shuttingdown = true;
|
||||
maybeshutdown();
|
||||
}
|
||||
|
||||
@@ -917,7 +910,7 @@ setup_system(void) {
|
||||
|
||||
result = dst_lib_init(gmctx, NULL);
|
||||
check_result(result, "dst_lib_init");
|
||||
is_dst_up = ISC_TRUE;
|
||||
is_dst_up = true;
|
||||
|
||||
attrmask = DNS_DISPATCHATTR_UDP | DNS_DISPATCHATTR_TCP;
|
||||
attrmask |= DNS_DISPATCHATTR_IPV4 | DNS_DISPATCHATTR_IPV6;
|
||||
@@ -990,15 +983,15 @@ pre_parse_args(int argc, char **argv) {
|
||||
dns_rdatatype_t t;
|
||||
int ch;
|
||||
char buf[100];
|
||||
isc_boolean_t doexit = ISC_FALSE;
|
||||
isc_boolean_t ipv4only = ISC_FALSE, ipv6only = ISC_FALSE;
|
||||
bool doexit = false;
|
||||
bool ipv4only = false, ipv6only = false;
|
||||
|
||||
while ((ch = isc_commandline_parse(argc, argv, PARSE_ARGS_FMT)) != -1) {
|
||||
switch (ch) {
|
||||
case 'M': /* was -dm */
|
||||
debugging = ISC_TRUE;
|
||||
ddebugging = ISC_TRUE;
|
||||
memdebugging = ISC_TRUE;
|
||||
debugging = true;
|
||||
ddebugging = true;
|
||||
memdebugging = true;
|
||||
isc_mem_debugging = ISC_MEM_DEBUGTRACE |
|
||||
ISC_MEM_DEBUGRECORD;
|
||||
break;
|
||||
@@ -1007,14 +1000,14 @@ pre_parse_args(int argc, char **argv) {
|
||||
if (ipv6only) {
|
||||
fatal("only one of -4 and -6 allowed");
|
||||
}
|
||||
ipv4only = ISC_TRUE;
|
||||
ipv4only = true;
|
||||
break;
|
||||
|
||||
case '6':
|
||||
if (ipv4only) {
|
||||
fatal("only one of -4 and -6 allowed");
|
||||
}
|
||||
ipv6only = ISC_TRUE;
|
||||
ipv6only = true;
|
||||
break;
|
||||
|
||||
case '?':
|
||||
@@ -1035,7 +1028,7 @@ pre_parse_args(int argc, char **argv) {
|
||||
if (strncmp(buf, "TYPE", 4) != 0)
|
||||
fprintf(stdout, "%s\n", buf);
|
||||
}
|
||||
doexit = ISC_TRUE;
|
||||
doexit = true;
|
||||
break;
|
||||
|
||||
case 'T':
|
||||
@@ -1046,12 +1039,12 @@ pre_parse_args(int argc, char **argv) {
|
||||
if (strncmp(buf, "TYPE", 4) != 0)
|
||||
fprintf(stdout, "%s\n", buf);
|
||||
}
|
||||
doexit = ISC_TRUE;
|
||||
doexit = true;
|
||||
break;
|
||||
|
||||
case 'V':
|
||||
version();
|
||||
doexit = ISC_TRUE;
|
||||
doexit = true;
|
||||
break;
|
||||
|
||||
default:
|
||||
@@ -1060,16 +1053,16 @@ pre_parse_args(int argc, char **argv) {
|
||||
}
|
||||
if (doexit)
|
||||
exit(0);
|
||||
isc_commandline_reset = ISC_TRUE;
|
||||
isc_commandline_reset = true;
|
||||
isc_commandline_index = 1;
|
||||
}
|
||||
|
||||
static void
|
||||
parse_args(int argc, char **argv) {
|
||||
int ch;
|
||||
isc_uint32_t i;
|
||||
uint32_t i;
|
||||
isc_result_t result;
|
||||
isc_boolean_t force_interactive = ISC_FALSE;
|
||||
bool force_interactive = false;
|
||||
|
||||
debug("parse_args");
|
||||
while ((ch = isc_commandline_parse(argc, argv, PARSE_ARGS_FMT)) != -1) {
|
||||
@@ -1077,7 +1070,7 @@ parse_args(int argc, char **argv) {
|
||||
case '4':
|
||||
if (have_ipv4) {
|
||||
isc_net_disableipv6();
|
||||
have_ipv6 = ISC_FALSE;
|
||||
have_ipv6 = false;
|
||||
} else {
|
||||
fatal("can't find IPv4 networking");
|
||||
}
|
||||
@@ -1085,26 +1078,26 @@ parse_args(int argc, char **argv) {
|
||||
case '6':
|
||||
if (have_ipv6) {
|
||||
isc_net_disableipv4();
|
||||
have_ipv4 = ISC_FALSE;
|
||||
have_ipv4 = false;
|
||||
} else {
|
||||
fatal("can't find IPv6 networking");
|
||||
}
|
||||
break;
|
||||
case 'd':
|
||||
debugging = ISC_TRUE;
|
||||
debugging = true;
|
||||
break;
|
||||
case 'D': /* was -dd */
|
||||
debugging = ISC_TRUE;
|
||||
ddebugging = ISC_TRUE;
|
||||
debugging = true;
|
||||
ddebugging = true;
|
||||
break;
|
||||
case 'M':
|
||||
break;
|
||||
case 'i':
|
||||
force_interactive = ISC_TRUE;
|
||||
interactive = ISC_TRUE;
|
||||
force_interactive = true;
|
||||
interactive = true;
|
||||
break;
|
||||
case 'l':
|
||||
local_only = ISC_TRUE;
|
||||
local_only = true;
|
||||
break;
|
||||
case 'L':
|
||||
result = isc_parse_uint32(&i, isc_commandline_argument,
|
||||
@@ -1120,18 +1113,18 @@ parse_args(int argc, char **argv) {
|
||||
keystr = isc_commandline_argument;
|
||||
break;
|
||||
case 'v':
|
||||
usevc = ISC_TRUE;
|
||||
usevc = true;
|
||||
break;
|
||||
case 'k':
|
||||
keyfile = isc_commandline_argument;
|
||||
break;
|
||||
case 'g':
|
||||
usegsstsig = ISC_TRUE;
|
||||
use_win2k_gsstsig = ISC_FALSE;
|
||||
usegsstsig = true;
|
||||
use_win2k_gsstsig = false;
|
||||
break;
|
||||
case 'o':
|
||||
usegsstsig = ISC_TRUE;
|
||||
use_win2k_gsstsig = ISC_TRUE;
|
||||
usegsstsig = true;
|
||||
use_win2k_gsstsig = true;
|
||||
break;
|
||||
case 'p':
|
||||
result = isc_parse_uint16(&dnsport,
|
||||
@@ -1216,12 +1209,12 @@ parse_args(int argc, char **argv) {
|
||||
}
|
||||
}
|
||||
if (!force_interactive) {
|
||||
interactive = ISC_FALSE;
|
||||
interactive = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
parse_name(char **cmdlinep, dns_message_t *msg, dns_name_t **namep) {
|
||||
isc_result_t result;
|
||||
char *word;
|
||||
@@ -1254,7 +1247,7 @@ parse_name(char **cmdlinep, dns_message_t *msg, dns_name_t **namep) {
|
||||
return (STATUS_MORE);
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
parse_rdata(char **cmdlinep, dns_rdataclass_t rdataclass,
|
||||
dns_rdatatype_t rdatatype, dns_message_t *msg,
|
||||
dns_rdata_t *rdata)
|
||||
@@ -1310,8 +1303,8 @@ parse_rdata(char **cmdlinep, dns_rdataclass_t rdataclass,
|
||||
return (STATUS_MORE);
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
make_prereq(char *cmdline, isc_boolean_t ispositive, isc_boolean_t isrrset) {
|
||||
static uint16_t
|
||||
make_prereq(char *cmdline, bool ispositive, bool isrrset) {
|
||||
isc_result_t result;
|
||||
char *word;
|
||||
dns_name_t *name = NULL;
|
||||
@@ -1321,7 +1314,7 @@ make_prereq(char *cmdline, isc_boolean_t ispositive, isc_boolean_t isrrset) {
|
||||
dns_rdataclass_t rdataclass;
|
||||
dns_rdatatype_t rdatatype;
|
||||
dns_rdata_t *rdata = NULL;
|
||||
isc_uint16_t retval;
|
||||
uint16_t retval;
|
||||
|
||||
ddebug("make_prereq()");
|
||||
|
||||
@@ -1415,10 +1408,10 @@ make_prereq(char *cmdline, isc_boolean_t ispositive, isc_boolean_t isrrset) {
|
||||
return (STATUS_SYNTAX);
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
evaluate_prereq(char *cmdline) {
|
||||
char *word;
|
||||
isc_boolean_t ispositive, isrrset;
|
||||
bool ispositive, isrrset;
|
||||
|
||||
ddebug("evaluate_prereq()");
|
||||
word = nsu_strsep(&cmdline, " \t\r\n");
|
||||
@@ -1427,17 +1420,17 @@ evaluate_prereq(char *cmdline) {
|
||||
return (STATUS_SYNTAX);
|
||||
}
|
||||
if (strcasecmp(word, "nxdomain") == 0) {
|
||||
ispositive = ISC_FALSE;
|
||||
isrrset = ISC_FALSE;
|
||||
ispositive = false;
|
||||
isrrset = false;
|
||||
} else if (strcasecmp(word, "yxdomain") == 0) {
|
||||
ispositive = ISC_TRUE;
|
||||
isrrset = ISC_FALSE;
|
||||
ispositive = true;
|
||||
isrrset = false;
|
||||
} else if (strcasecmp(word, "nxrrset") == 0) {
|
||||
ispositive = ISC_FALSE;
|
||||
isrrset = ISC_TRUE;
|
||||
ispositive = false;
|
||||
isrrset = true;
|
||||
} else if (strcasecmp(word, "yxrrset") == 0) {
|
||||
ispositive = ISC_TRUE;
|
||||
isrrset = ISC_TRUE;
|
||||
ispositive = true;
|
||||
isrrset = true;
|
||||
} else {
|
||||
fprintf(stderr, "incorrect operation code: %s\n", word);
|
||||
return (STATUS_SYNTAX);
|
||||
@@ -1445,7 +1438,7 @@ evaluate_prereq(char *cmdline) {
|
||||
return (make_prereq(cmdline, ispositive, isrrset));
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
evaluate_server(char *cmdline) {
|
||||
char *word, *server;
|
||||
long port;
|
||||
@@ -1484,7 +1477,7 @@ evaluate_server(char *cmdline) {
|
||||
isc_mem_put(gmctx, servers, ns_alloc * sizeof(isc_sockaddr_t));
|
||||
}
|
||||
|
||||
default_servers = ISC_FALSE;
|
||||
default_servers = false;
|
||||
|
||||
ns_alloc = MAX_SERVERADDRS;
|
||||
ns_inuse = 0;
|
||||
@@ -1501,7 +1494,7 @@ evaluate_server(char *cmdline) {
|
||||
return (STATUS_MORE);
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
evaluate_local(char *cmdline) {
|
||||
char *word, *local;
|
||||
long port;
|
||||
@@ -1551,7 +1544,7 @@ evaluate_local(char *cmdline) {
|
||||
return (STATUS_MORE);
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
evaluate_key(char *cmdline) {
|
||||
char *namestr;
|
||||
char *secretstr;
|
||||
@@ -1563,7 +1556,7 @@ evaluate_key(char *cmdline) {
|
||||
unsigned char *secret = NULL;
|
||||
isc_buffer_t secretbuf;
|
||||
const dns_name_t *hmacname = NULL;
|
||||
isc_uint16_t digestbits = 0;
|
||||
uint16_t digestbits = 0;
|
||||
char *n;
|
||||
|
||||
namestr = nsu_strsep(&cmdline, " \t\r\n");
|
||||
@@ -1581,12 +1574,9 @@ evaluate_key(char *cmdline) {
|
||||
return (STATUS_SYNTAX);
|
||||
}
|
||||
namestr = n + 1;
|
||||
} else
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
} else {
|
||||
hmacname = DNS_TSIG_HMACMD5_NAME;
|
||||
#else
|
||||
hmacname = DNS_TSIG_HMACSHA256_NAME;
|
||||
#endif
|
||||
}
|
||||
|
||||
isc_buffer_init(&b, namestr, strlen(namestr));
|
||||
isc_buffer_add(&b, strlen(namestr));
|
||||
@@ -1619,7 +1609,7 @@ evaluate_key(char *cmdline) {
|
||||
if (tsigkey != NULL)
|
||||
dns_tsigkey_detach(&tsigkey);
|
||||
result = dns_tsigkey_create(mykeyname, hmacname, secret, secretlen,
|
||||
ISC_FALSE, NULL, 0, 0, gmctx, NULL,
|
||||
false, NULL, 0, 0, gmctx, NULL,
|
||||
&tsigkey);
|
||||
isc_mem_free(gmctx, secret);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
@@ -1631,7 +1621,7 @@ evaluate_key(char *cmdline) {
|
||||
return (STATUS_MORE);
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
evaluate_zone(char *cmdline) {
|
||||
char *word;
|
||||
isc_buffer_t b;
|
||||
@@ -1656,7 +1646,7 @@ evaluate_zone(char *cmdline) {
|
||||
return (STATUS_MORE);
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
evaluate_realm(char *cmdline) {
|
||||
#ifdef GSSAPI
|
||||
char *word;
|
||||
@@ -1687,11 +1677,11 @@ evaluate_realm(char *cmdline) {
|
||||
#endif
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
evaluate_ttl(char *cmdline) {
|
||||
char *word;
|
||||
isc_result_t result;
|
||||
isc_uint32_t ttl;
|
||||
uint32_t ttl;
|
||||
|
||||
word = nsu_strsep(&cmdline, " \t\r\n");
|
||||
if (word == NULL || *word == 0) {
|
||||
@@ -1701,7 +1691,7 @@ evaluate_ttl(char *cmdline) {
|
||||
|
||||
if (!strcasecmp(word, "none")) {
|
||||
default_ttl = 0;
|
||||
default_ttl_set = ISC_FALSE;
|
||||
default_ttl_set = false;
|
||||
return (STATUS_MORE);
|
||||
}
|
||||
|
||||
@@ -1715,12 +1705,12 @@ evaluate_ttl(char *cmdline) {
|
||||
return (STATUS_SYNTAX);
|
||||
}
|
||||
default_ttl = ttl;
|
||||
default_ttl_set = ISC_TRUE;
|
||||
default_ttl_set = true;
|
||||
|
||||
return (STATUS_MORE);
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
evaluate_class(char *cmdline) {
|
||||
char *word;
|
||||
isc_textregion_t r;
|
||||
@@ -1753,11 +1743,11 @@ evaluate_class(char *cmdline) {
|
||||
return (STATUS_MORE);
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
update_addordelete(char *cmdline, isc_boolean_t isdelete) {
|
||||
static uint16_t
|
||||
update_addordelete(char *cmdline, bool isdelete) {
|
||||
isc_result_t result;
|
||||
dns_name_t *name = NULL;
|
||||
isc_uint32_t ttl;
|
||||
uint32_t ttl;
|
||||
char *word;
|
||||
dns_rdataclass_t rdataclass;
|
||||
dns_rdatatype_t rdatatype;
|
||||
@@ -1765,7 +1755,7 @@ update_addordelete(char *cmdline, isc_boolean_t isdelete) {
|
||||
dns_rdatalist_t *rdatalist = NULL;
|
||||
dns_rdataset_t *rdataset = NULL;
|
||||
isc_textregion_t region;
|
||||
isc_uint16_t retval;
|
||||
uint16_t retval;
|
||||
|
||||
ddebug("update_addordelete()");
|
||||
|
||||
@@ -1902,7 +1892,7 @@ update_addordelete(char *cmdline, isc_boolean_t isdelete) {
|
||||
dns_name_t *bad;
|
||||
|
||||
if (!dns_rdata_checkowner(name, rdata->rdclass, rdata->type,
|
||||
ISC_TRUE))
|
||||
true))
|
||||
{
|
||||
char namebuf[DNS_NAME_FORMATSIZE];
|
||||
|
||||
@@ -1947,10 +1937,10 @@ update_addordelete(char *cmdline, isc_boolean_t isdelete) {
|
||||
return (STATUS_SYNTAX);
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
evaluate_update(char *cmdline) {
|
||||
char *word;
|
||||
isc_boolean_t isdelete;
|
||||
bool isdelete;
|
||||
|
||||
ddebug("evaluate_update()");
|
||||
word = nsu_strsep(&cmdline, " \t\r\n");
|
||||
@@ -1959,11 +1949,11 @@ evaluate_update(char *cmdline) {
|
||||
return (STATUS_SYNTAX);
|
||||
}
|
||||
if (strcasecmp(word, "delete") == 0)
|
||||
isdelete = ISC_TRUE;
|
||||
isdelete = true;
|
||||
else if (strcasecmp(word, "del") == 0)
|
||||
isdelete = ISC_TRUE;
|
||||
isdelete = true;
|
||||
else if (strcasecmp(word, "add") == 0)
|
||||
isdelete = ISC_FALSE;
|
||||
isdelete = false;
|
||||
else {
|
||||
fprintf(stderr, "incorrect operation code: %s\n", word);
|
||||
return (STATUS_SYNTAX);
|
||||
@@ -1971,7 +1961,7 @@ evaluate_update(char *cmdline) {
|
||||
return (update_addordelete(cmdline, isdelete));
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
evaluate_checknames(char *cmdline) {
|
||||
char *word;
|
||||
|
||||
@@ -1984,11 +1974,11 @@ evaluate_checknames(char *cmdline) {
|
||||
if (strcasecmp(word, "yes") == 0 ||
|
||||
strcasecmp(word, "true") == 0 ||
|
||||
strcasecmp(word, "on") == 0) {
|
||||
checknames = ISC_TRUE;
|
||||
checknames = true;
|
||||
} else if (strcasecmp(word, "no") == 0 ||
|
||||
strcasecmp(word, "false") == 0 ||
|
||||
strcasecmp(word, "off") == 0) {
|
||||
checknames = ISC_FALSE;
|
||||
checknames = false;
|
||||
} else {
|
||||
fprintf(stderr, "incorrect check-names directive: %s\n", word);
|
||||
return (STATUS_SYNTAX);
|
||||
@@ -2066,7 +2056,7 @@ show_message(FILE *stream, dns_message_t *msg, const char *description) {
|
||||
isc_buffer_free(&buf);
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
do_next_command(char *cmdline) {
|
||||
char *word;
|
||||
|
||||
@@ -2082,21 +2072,21 @@ do_next_command(char *cmdline) {
|
||||
if (strcasecmp(word, "prereq") == 0)
|
||||
return (evaluate_prereq(cmdline));
|
||||
if (strcasecmp(word, "nxdomain") == 0)
|
||||
return (make_prereq(cmdline, ISC_FALSE, ISC_FALSE));
|
||||
return (make_prereq(cmdline, false, false));
|
||||
if (strcasecmp(word, "yxdomain") == 0)
|
||||
return (make_prereq(cmdline, ISC_TRUE, ISC_FALSE));
|
||||
return (make_prereq(cmdline, true, false));
|
||||
if (strcasecmp(word, "nxrrset") == 0)
|
||||
return (make_prereq(cmdline, ISC_FALSE, ISC_TRUE));
|
||||
return (make_prereq(cmdline, false, true));
|
||||
if (strcasecmp(word, "yxrrset") == 0)
|
||||
return (make_prereq(cmdline, ISC_TRUE, ISC_TRUE));
|
||||
return (make_prereq(cmdline, true, true));
|
||||
if (strcasecmp(word, "update") == 0)
|
||||
return (evaluate_update(cmdline));
|
||||
if (strcasecmp(word, "delete") == 0)
|
||||
return (update_addordelete(cmdline, ISC_TRUE));
|
||||
return (update_addordelete(cmdline, true));
|
||||
if (strcasecmp(word, "del") == 0)
|
||||
return (update_addordelete(cmdline, ISC_TRUE));
|
||||
return (update_addordelete(cmdline, true));
|
||||
if (strcasecmp(word, "add") == 0)
|
||||
return (update_addordelete(cmdline, ISC_FALSE));
|
||||
return (update_addordelete(cmdline, false));
|
||||
if (strcasecmp(word, "server") == 0)
|
||||
return (evaluate_server(cmdline));
|
||||
if (strcasecmp(word, "local") == 0)
|
||||
@@ -2109,9 +2099,9 @@ do_next_command(char *cmdline) {
|
||||
return (STATUS_SEND);
|
||||
if (strcasecmp(word, "debug") == 0) {
|
||||
if (debugging)
|
||||
ddebugging = ISC_TRUE;
|
||||
ddebugging = true;
|
||||
else
|
||||
debugging = ISC_TRUE;
|
||||
debugging = true;
|
||||
return (STATUS_MORE);
|
||||
}
|
||||
if (strcasecmp(word, "ttl") == 0)
|
||||
@@ -2126,7 +2116,7 @@ do_next_command(char *cmdline) {
|
||||
return (STATUS_MORE);
|
||||
}
|
||||
if (strcasecmp(word, "key") == 0) {
|
||||
usegsstsig = ISC_FALSE;
|
||||
usegsstsig = false;
|
||||
return (evaluate_key(cmdline));
|
||||
}
|
||||
if (strcasecmp(word, "realm") == 0)
|
||||
@@ -2136,8 +2126,8 @@ do_next_command(char *cmdline) {
|
||||
return (evaluate_checknames(cmdline));
|
||||
if (strcasecmp(word, "gsstsig") == 0) {
|
||||
#ifdef GSSAPI
|
||||
usegsstsig = ISC_TRUE;
|
||||
use_win2k_gsstsig = ISC_FALSE;
|
||||
usegsstsig = true;
|
||||
use_win2k_gsstsig = false;
|
||||
#else
|
||||
fprintf(stderr, "gsstsig not supported\n");
|
||||
#endif
|
||||
@@ -2145,8 +2135,8 @@ do_next_command(char *cmdline) {
|
||||
}
|
||||
if (strcasecmp(word, "oldgsstsig") == 0) {
|
||||
#ifdef GSSAPI
|
||||
usegsstsig = ISC_TRUE;
|
||||
use_win2k_gsstsig = ISC_TRUE;
|
||||
usegsstsig = true;
|
||||
use_win2k_gsstsig = true;
|
||||
#else
|
||||
fprintf(stderr, "gsstsig not supported\n");
|
||||
#endif
|
||||
@@ -2184,9 +2174,9 @@ do_next_command(char *cmdline) {
|
||||
return (STATUS_SYNTAX);
|
||||
}
|
||||
|
||||
static isc_uint16_t
|
||||
static uint16_t
|
||||
get_next_command(void) {
|
||||
isc_uint16_t result = STATUS_QUIT;
|
||||
uint16_t result = STATUS_QUIT;
|
||||
char cmdlinebuf[MAXCMD];
|
||||
char *cmdline;
|
||||
|
||||
@@ -2222,9 +2212,9 @@ get_next_command(void) {
|
||||
return (result);
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
user_interaction(void) {
|
||||
isc_uint16_t result = STATUS_MORE;
|
||||
uint16_t result = STATUS_MORE;
|
||||
|
||||
ddebug("user_interaction()");
|
||||
while ((result == STATUS_MORE) || (result == STATUS_SYNTAX)) {
|
||||
@@ -2233,8 +2223,8 @@ user_interaction(void) {
|
||||
fatal("syntax error");
|
||||
}
|
||||
if (result == STATUS_SEND)
|
||||
return (ISC_TRUE);
|
||||
return (ISC_FALSE);
|
||||
return (true);
|
||||
return (false);
|
||||
|
||||
}
|
||||
|
||||
@@ -2268,7 +2258,7 @@ check_tsig_error(dns_rdataset_t *rdataset, isc_buffer_t *b) {
|
||||
}
|
||||
}
|
||||
|
||||
static isc_boolean_t
|
||||
static bool
|
||||
next_master(const char *caller, isc_sockaddr_t *addr, isc_result_t eresult) {
|
||||
char addrbuf[ISC_SOCKADDR_FORMATSIZE];
|
||||
|
||||
@@ -2276,9 +2266,9 @@ next_master(const char *caller, isc_sockaddr_t *addr, isc_result_t eresult) {
|
||||
fprintf(stderr, "; Communication with %s failed: %s\n",
|
||||
addrbuf, isc_result_totext(eresult));
|
||||
if (++master_inuse >= master_total)
|
||||
return (ISC_FALSE);
|
||||
return (false);
|
||||
ddebug("%s: trying next server", caller);
|
||||
return (ISC_TRUE);
|
||||
return (true);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -2309,7 +2299,7 @@ update_completed(isc_task_t *task, isc_event_t *event) {
|
||||
&master_servers[master_inuse],
|
||||
reqev->result))
|
||||
{
|
||||
seenerror = ISC_TRUE;
|
||||
seenerror = true;
|
||||
goto done;
|
||||
}
|
||||
|
||||
@@ -2347,14 +2337,14 @@ update_completed(isc_task_t *task, isc_event_t *event) {
|
||||
#endif
|
||||
fprintf(stderr, "; TSIG error with server: %s\n",
|
||||
isc_result_totext(result));
|
||||
seenerror = ISC_TRUE;
|
||||
seenerror = true;
|
||||
break;
|
||||
default:
|
||||
check_result(result, "dns_request_getresponse");
|
||||
}
|
||||
|
||||
if (answer->rcode != dns_rcode_noerror) {
|
||||
seenerror = ISC_TRUE;
|
||||
seenerror = true;
|
||||
if (!debugging) {
|
||||
char buf[64];
|
||||
isc_buffer_t b;
|
||||
@@ -2458,7 +2448,7 @@ recvsoa(isc_task_t *task, isc_event_t *event) {
|
||||
dns_message_t *soaquery = NULL;
|
||||
isc_sockaddr_t *addr;
|
||||
isc_sockaddr_t *srcaddr;
|
||||
isc_boolean_t seencname = ISC_FALSE;
|
||||
bool seencname = false;
|
||||
dns_name_t tname;
|
||||
unsigned int nlabels;
|
||||
|
||||
@@ -2555,7 +2545,7 @@ recvsoa(isc_task_t *task, isc_event_t *event) {
|
||||
dns_message_destroy(&soaquery);
|
||||
ddebug("Out of recvsoa");
|
||||
done_update();
|
||||
seenerror = ISC_TRUE;
|
||||
seenerror = true;
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -2586,7 +2576,7 @@ recvsoa(isc_task_t *task, isc_event_t *event) {
|
||||
&tset) == ISC_R_SUCCESS ||
|
||||
dns_message_findtype(name, dns_rdatatype_dname, 0,
|
||||
&tset) == ISC_R_SUCCESS ) {
|
||||
seencname = ISC_TRUE;
|
||||
seencname = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -2642,7 +2632,7 @@ recvsoa(isc_task_t *task, isc_event_t *event) {
|
||||
size_t size;
|
||||
|
||||
isc_buffer_init(&buf, serverstr, sizeof(serverstr));
|
||||
result = dns_name_totext(&master, ISC_TRUE, &buf);
|
||||
result = dns_name_totext(&master, true, &buf);
|
||||
check_result(result, "dns_name_totext");
|
||||
serverstr[isc_buffer_usedlength(&buf)] = 0;
|
||||
|
||||
@@ -2789,7 +2779,7 @@ get_ticket_realm(isc_mem_t *mctx) {
|
||||
|
||||
static void
|
||||
failed_gssrequest() {
|
||||
seenerror = ISC_TRUE;
|
||||
seenerror = true;
|
||||
|
||||
dns_name_free(&tmpzonename, gmctx);
|
||||
dns_name_free(&restart_master, gmctx);
|
||||
@@ -2802,7 +2792,7 @@ start_gssrequest(dns_name_t *master) {
|
||||
gss_ctx_id_t context;
|
||||
isc_buffer_t buf;
|
||||
isc_result_t result;
|
||||
isc_uint32_t val = 0;
|
||||
uint32_t val = 0;
|
||||
dns_message_t *rmsg = NULL;
|
||||
dns_request_t *request = NULL;
|
||||
dns_name_t *servname;
|
||||
@@ -2812,7 +2802,7 @@ start_gssrequest(dns_name_t *master) {
|
||||
char *err_message = NULL;
|
||||
|
||||
debug("start_gssrequest");
|
||||
usevc = ISC_TRUE;
|
||||
usevc = true;
|
||||
|
||||
if (gssring != NULL)
|
||||
dns_tsigkeyring_detach(&gssring);
|
||||
@@ -3010,10 +3000,10 @@ recvgss(isc_task_t *task, isc_event_t *event) {
|
||||
ddebug("recvgss trying %s GSS-TSIG",
|
||||
use_win2k_gsstsig ? "Standard" : "Win2k");
|
||||
if (use_win2k_gsstsig)
|
||||
use_win2k_gsstsig = ISC_FALSE;
|
||||
use_win2k_gsstsig = false;
|
||||
else
|
||||
use_win2k_gsstsig = ISC_TRUE;
|
||||
tried_other_gsstsig = ISC_TRUE;
|
||||
use_win2k_gsstsig = true;
|
||||
tried_other_gsstsig = true;
|
||||
start_gssrequest(&restart_master);
|
||||
goto done;
|
||||
}
|
||||
@@ -3233,7 +3223,7 @@ cleanup(void) {
|
||||
|
||||
static void
|
||||
getinput(isc_task_t *task, isc_event_t *event) {
|
||||
isc_boolean_t more;
|
||||
bool more;
|
||||
|
||||
UNUSED(task);
|
||||
|
||||
@@ -3262,15 +3252,15 @@ main(int argc, char **argv) {
|
||||
|
||||
input = stdin;
|
||||
|
||||
interactive = ISC_TF(isatty(0));
|
||||
interactive = isatty(0);
|
||||
|
||||
isc_app_start();
|
||||
|
||||
if (isc_net_probeipv4() == ISC_R_SUCCESS) {
|
||||
have_ipv4 = ISC_TRUE;
|
||||
have_ipv4 = true;
|
||||
}
|
||||
if (isc_net_probeipv6() == ISC_R_SUCCESS) {
|
||||
have_ipv6 = ISC_TRUE;
|
||||
have_ipv6 = true;
|
||||
}
|
||||
if (!have_ipv4 && !have_ipv6) {
|
||||
fatal("could not find either IPv4 or IPv6");
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@@USE_GSSAPI@USE_READLINE_STATIC;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;@USE_GSSAPI@USE_READLINE_STATIC;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<PrecompiledHeaderOutputFile>.\$(Configuration)\$(TargetName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\$(Configuration)\</AssemblerListingLocation>
|
||||
@@ -79,7 +79,7 @@
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>@INTRINSIC@</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;@CRYPTO@@USE_GSSAPI@USE_READLINE_STATIC;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;@USE_GSSAPI@USE_READLINE_STATIC;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
@@ -17,7 +17,7 @@ CINCLUDES = ${ISC_INCLUDES}
|
||||
|
||||
CDEFINES =
|
||||
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @OPENSSL_LIBS@
|
||||
|
||||
ISCDEPLIBS = ../../lib/isc/libisc.@A@
|
||||
|
||||
|
||||
@@ -1,94 +0,0 @@
|
||||
|
||||
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.
|
||||
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
File diff suppressed because it is too large
Load Diff
@@ -67,10 +67,6 @@
|
||||
#define sleep(x) Sleep(x)
|
||||
#endif
|
||||
|
||||
#if !(defined(HAVE_GETPASSPHRASE) || (defined (__SVR4) && defined (__sun)))
|
||||
#define getpassphrase(x) getpass(x)
|
||||
#endif
|
||||
|
||||
int
|
||||
main(int argc, char *argv[]) {
|
||||
isc_result_t result;
|
||||
@@ -149,11 +145,12 @@ main(int argc, char *argv[]) {
|
||||
if (lib_name != NULL)
|
||||
pk11_set_lib_name(lib_name);
|
||||
|
||||
if (pin == NULL)
|
||||
pin = getpassphrase("Enter Pin: ");
|
||||
if (pin == NULL) {
|
||||
pin = getpass("Enter Pin: ");
|
||||
}
|
||||
|
||||
result = pk11_get_session(&pctx, OP_ANY, ISC_FALSE, ISC_TRUE,
|
||||
ISC_TRUE, (const char *) pin, slot);
|
||||
result = pk11_get_session(&pctx, OP_ANY, false, true,
|
||||
true, (const char *) pin, slot);
|
||||
if (result == PK11_R_NORANDOMSERVICE ||
|
||||
result == PK11_R_NODIGESTSERVICE ||
|
||||
result == PK11_R_NOAESSERVICE) {
|
||||
|
||||
+28
-16
@@ -67,18 +67,14 @@
|
||||
#include <isc/print.h>
|
||||
#include <isc/result.h>
|
||||
#include <isc/types.h>
|
||||
#include <isc/util.h>
|
||||
|
||||
#include <pk11/pk11.h>
|
||||
#include <pk11/result.h>
|
||||
#define WANT_DH_PRIMES
|
||||
#define WANT_ECC_CURVES
|
||||
#include <pk11/constants.h>
|
||||
#include <pkcs11/eddsa.h>
|
||||
|
||||
#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;
|
||||
@@ -403,7 +399,7 @@ main(int argc, char *argv[]) {
|
||||
public_template[RSA_PUBLIC_EXPONENT].ulValueLen = expsize;
|
||||
break;
|
||||
case key_ecc:
|
||||
op_type = OP_EC;
|
||||
op_type = OP_ECDSA;
|
||||
if (bits == 0)
|
||||
bits = 256;
|
||||
else if (bits != 256 && bits != 384) {
|
||||
@@ -435,8 +431,8 @@ main(int argc, char *argv[]) {
|
||||
#ifndef CKM_EDDSA_KEY_PAIR_GEN
|
||||
fprintf(stderr, "CKM_EDDSA_KEY_PAIR_GEN is not defined\n");
|
||||
usage();
|
||||
#endif
|
||||
op_type = OP_EC;
|
||||
#else
|
||||
op_type = OP_EDDSA;
|
||||
if (bits == 0)
|
||||
bits = 256;
|
||||
else if (bits != 256 && bits != 456) {
|
||||
@@ -463,6 +459,7 @@ main(int argc, char *argv[]) {
|
||||
sizeof(pk11_ecc_ed448);
|
||||
}
|
||||
|
||||
#endif
|
||||
break;
|
||||
case key_dsa:
|
||||
op_type = OP_DSA;
|
||||
@@ -562,11 +559,12 @@ main(int argc, char *argv[]) {
|
||||
if (lib_name != NULL)
|
||||
pk11_set_lib_name(lib_name);
|
||||
|
||||
if (pin == NULL)
|
||||
pin = getpassphrase("Enter Pin: ");
|
||||
if (pin == NULL) {
|
||||
pin = getpass("Enter Pin: ");
|
||||
}
|
||||
|
||||
result = pk11_get_session(&pctx, op_type, ISC_FALSE, ISC_TRUE,
|
||||
ISC_TRUE, (const char *) pin, slot);
|
||||
result = pk11_get_session(&pctx, op_type, false, true,
|
||||
true, (const char *) pin, slot);
|
||||
if (result == PK11_R_NORANDOMSERVICE ||
|
||||
result == PK11_R_NODIGESTSERVICE ||
|
||||
result == PK11_R_NOAESSERVICE) {
|
||||
@@ -657,8 +655,18 @@ main(int argc, char *argv[]) {
|
||||
}
|
||||
|
||||
/* Allocate space for parameter attributes */
|
||||
for (i = 0; i < param_attrcnt; i++)
|
||||
for (i = 0; i < param_attrcnt; i++) {
|
||||
param_template[i].pValue = NULL;
|
||||
}
|
||||
|
||||
for (i = 0; i < param_attrcnt; i++) {
|
||||
param_template[i].pValue = malloc(param_template[i].ulValueLen);
|
||||
if (param_template[i].pValue == NULL) {
|
||||
fprintf(stderr, "malloc failed\n");
|
||||
error = 1;
|
||||
goto exit_params;
|
||||
}
|
||||
}
|
||||
|
||||
rv = pkcs_C_GetAttributeValue(hSession, domainparams,
|
||||
dsa_param_template, DSA_PARAM_ATTRS);
|
||||
@@ -713,9 +721,13 @@ main(int argc, char *argv[]) {
|
||||
|
||||
exit_params:
|
||||
/* Free parameter attributes */
|
||||
if (keyclass == key_dsa || keyclass == key_dh)
|
||||
for (i = 0; i < param_attrcnt; i++)
|
||||
free(param_template[i].pValue);
|
||||
if (keyclass == key_dsa || keyclass == key_dh) {
|
||||
for (i = 0; i < param_attrcnt; i++) {
|
||||
if (param_template[i].pValue != NULL) {
|
||||
free(param_template[i].pValue);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
exit_domain:
|
||||
/* Destroy domain parameters */
|
||||
|
||||
@@ -41,6 +41,7 @@
|
||||
#include <config.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
#include <fcntl.h>
|
||||
#include <errno.h>
|
||||
@@ -55,10 +56,6 @@
|
||||
#include <pk11/pk11.h>
|
||||
#include <pk11/result.h>
|
||||
|
||||
#if !(defined(HAVE_GETPASSPHRASE) || (defined (__SVR4) && defined (__sun)))
|
||||
#define getpassphrase(x) getpass(x)
|
||||
#endif
|
||||
|
||||
int
|
||||
main(int argc, char *argv[]) {
|
||||
isc_result_t result;
|
||||
@@ -71,7 +68,7 @@ main(int argc, char *argv[]) {
|
||||
char *lib_name = NULL;
|
||||
char *label = NULL;
|
||||
char *pin = NULL;
|
||||
isc_boolean_t error = ISC_FALSE, logon = ISC_TRUE, all = ISC_FALSE;
|
||||
bool error = false, logon = true, all = false;
|
||||
unsigned int i = 0, id = 0;
|
||||
int c, errflg = 0;
|
||||
CK_ULONG ulObjectCount;
|
||||
@@ -82,7 +79,7 @@ main(int argc, char *argv[]) {
|
||||
while ((c = isc_commandline_parse(argc, argv, ":m:s:i:l:p:P")) != -1) {
|
||||
switch (c) {
|
||||
case 'P':
|
||||
logon = ISC_FALSE;
|
||||
logon = false;
|
||||
break;
|
||||
case 'm':
|
||||
lib_name = isc_commandline_argument;
|
||||
@@ -121,7 +118,7 @@ main(int argc, char *argv[]) {
|
||||
}
|
||||
|
||||
if (!id && (label == NULL))
|
||||
all = ISC_TRUE;
|
||||
all = true;
|
||||
|
||||
if (slot)
|
||||
printf("slot %lu\n", slot);
|
||||
@@ -143,10 +140,11 @@ main(int argc, char *argv[]) {
|
||||
if (lib_name != NULL)
|
||||
pk11_set_lib_name(lib_name);
|
||||
|
||||
if (logon && pin == NULL)
|
||||
pin = getpassphrase("Enter Pin: ");
|
||||
if (logon && pin == NULL) {
|
||||
pin = getpass("Enter Pin: ");
|
||||
}
|
||||
|
||||
result = pk11_get_session(&pctx, OP_ANY, ISC_FALSE, ISC_FALSE,
|
||||
result = pk11_get_session(&pctx, OP_ANY, false, false,
|
||||
logon, pin, slot);
|
||||
if (result == PK11_R_NORANDOMSERVICE ||
|
||||
result == PK11_R_NODIGESTSERVICE ||
|
||||
|
||||
@@ -46,7 +46,7 @@ main(int argc, char *argv[]) {
|
||||
lib_name = isc_commandline_argument;
|
||||
break;
|
||||
case 'v':
|
||||
pk11_verbose_init = ISC_TRUE;
|
||||
pk11_verbose_init = true;
|
||||
break;
|
||||
case ':':
|
||||
fprintf(stderr, "Option -%c requires an operand\n",
|
||||
@@ -78,8 +78,8 @@ main(int argc, char *argv[]) {
|
||||
if (lib_name != NULL)
|
||||
pk11_set_lib_name(lib_name);
|
||||
|
||||
result = pk11_get_session(&pctx, OP_ANY, ISC_TRUE, ISC_FALSE,
|
||||
ISC_FALSE, NULL, 0);
|
||||
result = pk11_get_session(&pctx, OP_ANY, true, false,
|
||||
false, NULL, 0);
|
||||
if (result == PK11_R_NORANDOMSERVICE ||
|
||||
result == PK11_R_NODIGESTSERVICE ||
|
||||
result == PK11_R_NOAESSERVICE) {
|
||||
|
||||
@@ -23,8 +23,8 @@ CWARNINGS =
|
||||
|
||||
ISCCFGLIBS = ../../lib/isccfg/libisccfg.@A@
|
||||
ISCCCLIBS = ../../lib/isccc/libisccc.@A@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @ISC_OPENSSL_LIBS@
|
||||
ISCLIBS = ../../lib/isc/libisc.@A@ @OPENSSL_LIBS@
|
||||
ISCNOSYMLIBS = ../../lib/isc/libisc-nosymtbl.@A@ @OPENSSL_LIBS@
|
||||
DNSLIBS = ../../lib/dns/libdns.@A@ @DNS_CRYPTO_LIBS@
|
||||
BIND9LIBS = ../../lib/bind9/libbind9.@A@
|
||||
|
||||
|
||||
+40
-40
@@ -13,6 +13,8 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <inttypes.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <isc/app.h>
|
||||
@@ -53,7 +55,7 @@
|
||||
#define SERVERADDRS 10
|
||||
|
||||
const char *progname;
|
||||
isc_boolean_t verbose;
|
||||
bool verbose;
|
||||
|
||||
static const char *admin_conffile;
|
||||
static const char *admin_keyfile;
|
||||
@@ -61,26 +63,26 @@ static const char *version = VERSION;
|
||||
static const char *servername = NULL;
|
||||
static isc_sockaddr_t serveraddrs[SERVERADDRS];
|
||||
static isc_sockaddr_t local4, local6;
|
||||
static isc_boolean_t local4set = ISC_FALSE, local6set = ISC_FALSE;
|
||||
static bool local4set = false, local6set = false;
|
||||
static int nserveraddrs;
|
||||
static int currentaddr = 0;
|
||||
static unsigned int remoteport = 0;
|
||||
static isc_socketmgr_t *socketmgr = NULL;
|
||||
static isc_buffer_t *databuf;
|
||||
static isccc_ccmsg_t ccmsg;
|
||||
static isc_uint32_t algorithm;
|
||||
static uint32_t algorithm;
|
||||
static isccc_region_t secret;
|
||||
static isc_boolean_t failed = ISC_FALSE;
|
||||
static isc_boolean_t c_flag = ISC_FALSE;
|
||||
static bool failed = false;
|
||||
static bool c_flag = false;
|
||||
static isc_mem_t *rndc_mctx;
|
||||
static int sends, recvs, connects;
|
||||
static char *command;
|
||||
static char *args;
|
||||
static char program[256];
|
||||
static isc_socket_t *sock = NULL;
|
||||
static isc_uint32_t serial;
|
||||
static isc_boolean_t quiet = ISC_FALSE;
|
||||
static isc_boolean_t showresult = ISC_FALSE;
|
||||
static uint32_t serial;
|
||||
static bool quiet = false;
|
||||
static bool showresult = false;
|
||||
|
||||
static void rndc_startconnect(isc_sockaddr_t *addr, isc_task_t *task);
|
||||
|
||||
@@ -216,7 +218,7 @@ Version: %s\n",
|
||||
|
||||
static void
|
||||
preparse_args(int argc, char **argv) {
|
||||
isc_boolean_t ipv4only = ISC_FALSE, ipv6only = ISC_FALSE;
|
||||
bool ipv4only = false, ipv6only = false;
|
||||
int ch;
|
||||
|
||||
while ((ch = isc_commandline_parse(argc, argv, CMDLINE_FLAGS)) != -1) {
|
||||
@@ -225,20 +227,20 @@ preparse_args(int argc, char **argv) {
|
||||
if (ipv6only) {
|
||||
fatal("only one of -4 and -6 allowed");
|
||||
}
|
||||
ipv4only = ISC_TRUE;
|
||||
ipv4only = true;
|
||||
break;
|
||||
case '6':
|
||||
if (ipv4only) {
|
||||
fatal("only one of -4 and -6 allowed");
|
||||
}
|
||||
ipv6only = ISC_TRUE;
|
||||
ipv6only = true;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
isc_commandline_reset = ISC_TRUE;
|
||||
isc_commandline_reset = true;
|
||||
isc_commandline_index = 1;
|
||||
}
|
||||
|
||||
@@ -316,7 +318,7 @@ rndc_recvdone(isc_task_t *task, isc_event_t *event) {
|
||||
fatal("bad or missing data section in response");
|
||||
result = isccc_cc_lookupstring(data, "err", &errormsg);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
failed = ISC_TRUE;
|
||||
failed = true;
|
||||
fprintf(stderr, "%s: '%s' failed: %s\n",
|
||||
progname, command, errormsg);
|
||||
}
|
||||
@@ -357,7 +359,7 @@ rndc_recvnonce(isc_task_t *task, isc_event_t *event) {
|
||||
isccc_sexpr_t *_ctrl;
|
||||
isccc_region_t source;
|
||||
isc_result_t result;
|
||||
isc_uint32_t nonce;
|
||||
uint32_t nonce;
|
||||
isccc_sexpr_t *request = NULL;
|
||||
isccc_time_t now;
|
||||
isc_region_t r;
|
||||
@@ -565,7 +567,7 @@ parse_config(isc_mem_t *mctx, isc_log_t *log, const char *keyname,
|
||||
const char *algorithmstr;
|
||||
static char secretarray[1024];
|
||||
const cfg_type_t *conftype = &cfg_type_rndcconf;
|
||||
isc_boolean_t key_only = ISC_FALSE;
|
||||
bool key_only = false;
|
||||
const cfg_listelt_t *element;
|
||||
|
||||
if (! isc_file_exists(conffile)) {
|
||||
@@ -578,7 +580,7 @@ parse_config(isc_mem_t *mctx, isc_log_t *log, const char *keyname,
|
||||
if (! isc_file_exists(conffile))
|
||||
fatal("neither %s nor %s was found",
|
||||
admin_conffile, admin_keyfile);
|
||||
key_only = ISC_TRUE;
|
||||
key_only = true;
|
||||
} else if (! c_flag && isc_file_exists(admin_keyfile)) {
|
||||
fprintf(stderr, "WARNING: key file (%s) exists, but using "
|
||||
"default configuration file (%s)\n",
|
||||
@@ -668,23 +670,21 @@ parse_config(isc_mem_t *mctx, isc_log_t *log, const char *keyname,
|
||||
secretstr = cfg_obj_asstring(secretobj);
|
||||
algorithmstr = cfg_obj_asstring(algorithmobj);
|
||||
|
||||
#ifndef PK11_MD5_DISABLE
|
||||
if (strcasecmp(algorithmstr, "hmac-md5") == 0)
|
||||
if (strcasecmp(algorithmstr, "hmac-md5") == 0) {
|
||||
algorithm = ISCCC_ALG_HMACMD5;
|
||||
else
|
||||
#endif
|
||||
if (strcasecmp(algorithmstr, "hmac-sha1") == 0)
|
||||
} else if (strcasecmp(algorithmstr, "hmac-sha1") == 0) {
|
||||
algorithm = ISCCC_ALG_HMACSHA1;
|
||||
else if (strcasecmp(algorithmstr, "hmac-sha224") == 0)
|
||||
} else if (strcasecmp(algorithmstr, "hmac-sha224") == 0) {
|
||||
algorithm = ISCCC_ALG_HMACSHA224;
|
||||
else if (strcasecmp(algorithmstr, "hmac-sha256") == 0)
|
||||
} else if (strcasecmp(algorithmstr, "hmac-sha256") == 0) {
|
||||
algorithm = ISCCC_ALG_HMACSHA256;
|
||||
else if (strcasecmp(algorithmstr, "hmac-sha384") == 0)
|
||||
} else if (strcasecmp(algorithmstr, "hmac-sha384") == 0) {
|
||||
algorithm = ISCCC_ALG_HMACSHA384;
|
||||
else if (strcasecmp(algorithmstr, "hmac-sha512") == 0)
|
||||
} else if (strcasecmp(algorithmstr, "hmac-sha512") == 0) {
|
||||
algorithm = ISCCC_ALG_HMACSHA512;
|
||||
else
|
||||
} else {
|
||||
fatal("unsupported algorithm: %s", algorithmstr);
|
||||
}
|
||||
|
||||
secret.rstart = (unsigned char *)secretarray;
|
||||
secret.rend = (unsigned char *)secretarray + sizeof(secretarray);
|
||||
@@ -732,7 +732,7 @@ parse_config(isc_mem_t *mctx, isc_log_t *log, const char *keyname,
|
||||
obj = cfg_tuple_get(address, "port");
|
||||
if (cfg_obj_isuint32(obj)) {
|
||||
myport = cfg_obj_asuint32(obj);
|
||||
if (myport > ISC_UINT16_MAX ||
|
||||
if (myport > UINT16_MAX ||
|
||||
myport == 0)
|
||||
fatal("port %u out of range",
|
||||
myport);
|
||||
@@ -767,7 +767,7 @@ parse_config(isc_mem_t *mctx, isc_log_t *log, const char *keyname,
|
||||
cfg_map_get(server, "source-address", &address);
|
||||
if (address != NULL) {
|
||||
local4 = *cfg_obj_assockaddr(address);
|
||||
local4set = ISC_TRUE;
|
||||
local4set = true;
|
||||
}
|
||||
}
|
||||
if (!local4set && options != NULL) {
|
||||
@@ -775,7 +775,7 @@ parse_config(isc_mem_t *mctx, isc_log_t *log, const char *keyname,
|
||||
cfg_map_get(options, "default-source-address", &address);
|
||||
if (address != NULL) {
|
||||
local4 = *cfg_obj_assockaddr(address);
|
||||
local4set = ISC_TRUE;
|
||||
local4set = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -784,7 +784,7 @@ parse_config(isc_mem_t *mctx, isc_log_t *log, const char *keyname,
|
||||
cfg_map_get(server, "source-address-v6", &address);
|
||||
if (address != NULL) {
|
||||
local6 = *cfg_obj_assockaddr(address);
|
||||
local6set = ISC_TRUE;
|
||||
local6set = true;
|
||||
}
|
||||
}
|
||||
if (!local6set && options != NULL) {
|
||||
@@ -792,7 +792,7 @@ parse_config(isc_mem_t *mctx, isc_log_t *log, const char *keyname,
|
||||
cfg_map_get(options, "default-source-address-v6", &address);
|
||||
if (address != NULL) {
|
||||
local6 = *cfg_obj_assockaddr(address);
|
||||
local6set = ISC_TRUE;
|
||||
local6set = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -802,7 +802,7 @@ parse_config(isc_mem_t *mctx, isc_log_t *log, const char *keyname,
|
||||
int
|
||||
main(int argc, char **argv) {
|
||||
isc_result_t result = ISC_R_SUCCESS;
|
||||
isc_boolean_t show_final_mem = ISC_FALSE;
|
||||
bool show_final_mem = false;
|
||||
isc_taskmgr_t *taskmgr = NULL;
|
||||
isc_task_t *task = NULL;
|
||||
isc_log_t *log = NULL;
|
||||
@@ -833,7 +833,7 @@ main(int argc, char **argv) {
|
||||
if (result != ISC_R_SUCCESS)
|
||||
fatal("isc_app_start() failed: %s", isc_result_totext(result));
|
||||
|
||||
isc_commandline_errprint = ISC_FALSE;
|
||||
isc_commandline_errprint = false;
|
||||
|
||||
preparse_args(argc, argv);
|
||||
|
||||
@@ -855,17 +855,17 @@ main(int argc, char **argv) {
|
||||
if (inet_pton(AF_INET, isc_commandline_argument,
|
||||
&in) == 1) {
|
||||
isc_sockaddr_fromin(&local4, &in, 0);
|
||||
local4set = ISC_TRUE;
|
||||
local4set = true;
|
||||
} else if (inet_pton(AF_INET6, isc_commandline_argument,
|
||||
&in6) == 1) {
|
||||
isc_sockaddr_fromin6(&local6, &in6, 0);
|
||||
local6set = ISC_TRUE;
|
||||
local6set = true;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'c':
|
||||
admin_conffile = isc_commandline_argument;
|
||||
c_flag = ISC_TRUE;
|
||||
c_flag = true;
|
||||
break;
|
||||
|
||||
case 'k':
|
||||
@@ -877,7 +877,7 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
|
||||
case 'm':
|
||||
show_final_mem = ISC_TRUE;
|
||||
show_final_mem = true;
|
||||
break;
|
||||
|
||||
case 'p':
|
||||
@@ -888,11 +888,11 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
|
||||
case 'q':
|
||||
quiet = ISC_TRUE;
|
||||
quiet = true;
|
||||
break;
|
||||
|
||||
case 'r':
|
||||
showresult = ISC_TRUE;
|
||||
showresult = true;
|
||||
break;
|
||||
|
||||
case 's':
|
||||
@@ -900,7 +900,7 @@ main(int argc, char **argv) {
|
||||
break;
|
||||
|
||||
case 'V':
|
||||
verbose = ISC_TRUE;
|
||||
verbose = true;
|
||||
break;
|
||||
|
||||
case 'y':
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user