X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=m4%2Fmkconf.m4;h=927ea9e8f851feb659b2ec87cc1545db3f027c77;hb=9e0b4078816d410d3eb2ae4bad1f2bec332a8c95;hp=0b4c96112271886ddd5858d4014f96c11dd2e873;hpb=ad59bf15d0e8a781477a25f69b97f7d4c9eb0e00;p=nsc-5.git diff --git a/m4/mkconf.m4 b/m4/mkconf.m4 index 0b4c961..927ea9e 100644 --- a/m4/mkconf.m4 +++ b/m4/mkconf.m4 @@ -1,6 +1,6 @@ dnl ### dnl ### NSC -- BIND Config File Builder -dnl ### (c) 1997--2003 Martin Mares +dnl ### (c) 1997--2011 Martin Mares dnl ### include(m4/dnslib.m4) @@ -8,7 +8,8 @@ include(m4/dnslib.m4) define(`DO_PRIMARY', `divert(0)zone "$1" in { type master; - file "ZONEDIR/$2"; + file "ZONEDIR/nsc_file_name($2)"; +ZZ_OPTIONS()dnl }; divert(-1)') @@ -20,21 +21,39 @@ define(`REVERSE', `DO_PRIMARY(REV($1),nsc_if_v6($1,`nsc_revblock6($1)',`nsc_reva define(`SECONDARY', `divert(0)zone "$1" in { type slave; - file "BAKDIR/$1"; + file "BAKDIR/nsc_file_name($1)"; masters { $2; }; +ZZ_OPTIONS()dnl }; divert(-1)') -# Definition of forwarders for both normal and slave mode +# Definition of a forwarding zone -define(`FORWard', `patsubst(`$@',`,',`; ')') -define(`FORWArd', `divert(0) forward $1; +define(`FORWARDING', `divert(0)zone "$1" in { + type forward; + forward only; forwarders { FORWard(shift($@),)}; +ZZ_OPTIONS()dnl +}; + divert(-1)') -define(`FORWARD', `FORWArd(first, $@)') -define(`SLAVE', `FORWArd(only, $@)') +# Blackhole zones + +define(`BLACKHOLE', `divert(0)zone "$1" in { + type master; + file "zone/blackhole"; +}; + +divert(-1)') + +# Root hint zone + +define(`ROOTHINT', `divert(0)zone "." in { + type hint; + file "ROOTCACHE"; +}; divert(-1)') @@ -43,6 +62,12 @@ divert(-1)') define(`CONFIG', `divert(0)$1 divert(-1)') +# Setting domain options + +define(`ZZ_OPTIONS', `') + +define(`ZONE_OPTIONS', `define(`ZZ_OPTIONS', ifelse(`$1',`',`',`` $1''))') + # The preamble divert(0)dnl @@ -52,15 +77,4 @@ divert(0)dnl `#' Please don't edit manually `#' -options { - directory "ROOT"; - interface-interval 0; -BIND_OPTIONS -}; - -zone "." in { - type hint; - file "ROOTCACHE"; -}; - divert(-1)