X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;ds=sidebyside;f=m4%2Fmkconf.m4;h=befb3066acbc65ff0e1cea69e2c49a965325e330;hb=bc67ca425528a7f2cb3563f343a9aacbfdcd3c0a;hp=dff58a66214d510756784fdfa20a3b70dc1f97f5;hpb=747c80cf4a1294d69e8905c349d796e472768c16;p=nsc-5.git diff --git a/m4/mkconf.m4 b/m4/mkconf.m4 index dff58a6..befb306 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/nsc_file_name($2)"; + file "zone/nsc_file_name($2)"; +ZZ_OPTIONS()dnl }; divert(-1)') @@ -20,21 +21,30 @@ 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/nsc_file_name($1)"; + file "bak/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)') @@ -43,6 +53,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 +68,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)