X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=m4%2Fmkconf.m4;h=e5779217959d675eb42fbbc6e3d69522976e3206;hb=bad59d44a46728e6673514fae6689a849ffe33df;hp=a729eba93aba4b8b5dc112b95a02ab0a453ef75f;hpb=0054b365f280b71ac509bdfdfd60221414feb979;p=nsc-5.git diff --git a/m4/mkconf.m4 b/m4/mkconf.m4 index a729eba..e577921 100644 --- a/m4/mkconf.m4 +++ b/m4/mkconf.m4 @@ -1,47 +1,39 @@ dnl ### -dnl ### NSC 2.2 -- BIND Config File Builder -dnl ### (c) 1997--1999 Martin Mares +dnl ### NSC -- BIND Config File Builder +dnl ### (c) 1997--2006 Martin Mares dnl ### +include(m4/dnslib.m4) -# Definition of primary domain +# Definition of primary domains -define(`PRIMARY', `divert(0)zone "$1" in { +define(`DO_PRIMARY', `divert(0)zone "$1" in { type master; - file "ZONEDIR/$1"; + file "ZONEDIR/nsc_file_name($2)"; +ZZ_OPTIONS()dnl }; divert(-1)') +define(`PRIMARY', `DO_PRIMARY($1,$1)') +define(`REVERSE', `DO_PRIMARY(REV($1),nsc_if_v6($1,`nsc_revblock6($1)',`nsc_revaddr($1)'))') + # Definition of secondary domain 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 reverse domain - -define(`REVERSE', `divert(0)zone "revaddr($1).in-addr.arpa" in { - type master; - file "ZONEDIR/revaddr($1)"; -}; - -divert(-1)') - -# Definition of reverse sub-domain - -define(`PARTIAL', `SECONDARY(revaddr($1).in-addr.arpa,$3)') -define(`PREVERSE', `REVERSE($1)') - # Definition of forwarders for both normal and slave mode -define(`FORWard', `patsubst(`$@',`,',`; ')') -define(`FORWArd', `divert(0) forward $1; +define(`FORWard', `patsubst(`$*',`,',`; ')') +define(`FORWArd', ` forward $1; forwarders { FORWard(shift($@),)}; -divert(-1)') +') define(`FORWARD', `FORWArd(first, $@)') define(`SLAVE', `FORWArd(only, $@)') @@ -53,25 +45,30 @@ divert(-1)') define(`CONFIG', `divert(0)$1 divert(-1)') -# BIND options +# Setting domain options -define(`OPTIONS', `divert(0)options { - directory "ROOT"; - interface-interval 0; -$1}; +define(`ZZ_OPTIONS', `') -zone "." in { - type hint; - file "root.cache"; -}; +define(`ZONE_OPTIONS', `define(`ZZ_OPTIONS', ifelse(`$1',`',`',`` $1''))') -divert(-1)') +# The preamble divert(0)dnl `#' -`#' Name server configuration file -`#' Generated by mkconf.m4 on curdate +`#' BIND configuration file +`#' Generated by NSCVER (mkconf.m4) on CURRENT_DATE `#' Please don't edit manually `#' +options { + directory "ROOT"; + interface-interval 0; +BIND_OPTIONS +}; + +zone "." in { + type hint; + file "ROOTCACHE"; +}; + divert(-1)