X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=m4%2Fmkconf.m4;h=927ea9e8f851feb659b2ec87cc1545db3f027c77;hb=11b31832284b41033b3dfe1dec188b5b888582cb;hp=dff58a66214d510756784fdfa20a3b70dc1f97f5;hpb=747c80cf4a1294d69e8905c349d796e472768c16;p=nsc-5.git diff --git a/m4/mkconf.m4 b/m4/mkconf.m4 index dff58a6..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) @@ -9,6 +9,7 @@ include(m4/dnslib.m4) define(`DO_PRIMARY', `divert(0)zone "$1" in { type master; file "ZONEDIR/nsc_file_name($2)"; +ZZ_OPTIONS()dnl }; divert(-1)') @@ -22,19 +23,37 @@ define(`SECONDARY', `divert(0)zone "$1" in { type slave; 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)