--- a/mkready Tue Jul 13 15:32:08 2010 +0200
+++ b/mkready Wed Jul 14 12:05:41 2010 +0200
@@ -1,10 +1,40 @@
#!/bin/bash
set -e
+source dnstools.conf
-BIND_DIR=/etc/bind
+domain="eins.lan"
+master_dir="$MASTER_DIR"
+conf_dir="$ZONE_CONF_DIR"
+bind_dir="$BIND_DIR"
+
+
+for zone_domain in $master_dir/*
+do
+ domain=${zone_domain##/*/}
+ zone_dir="$master_dir/$domain"
+ conf_file="$conf_dir/$domain"
+ zone="$master_dir/$domain/$domain"
+ zone_signed="$master_dir/$domain/$domain.signed"
-cat $BIND_DIR/zones.d/* > $BIND_DIR/named.conf.zones
+ if [ -f $master_dir/$domain/$domain.signed ] # testet ob es eine signed-datei gibt
+ then
+ if ( ! grep "file" $conf_file | grep "signed" ) > /dev/null # testet ob signed nicht in der config-datei steht
+ then
+ cat $conf_file | sed -e "s\\$zone\\$zone_signed\\g" > $conf_file # schreibt signed in die config-datei
+ echo $zone '-->' $zone_signed
+ fi
+ else
+ if ( grep "file" $conf_file | grep "signed" ) # testet ob signed in der config-datei steht
+ then
+ cat $conf_file | sed -e "s\\$zone_signed\\$zone\\g" > $conf_file # schreibt signed in die config-datei
+ echo $zone_signed '-->' $zone
+ fi
+ fi
+done
+
+
+cat $conf_dir/* > $bind_dir/named.conf.zones
named-checkconf
named-checkconf -z
rndc reload