From 877896eb05e2ce12dc4f0953e6853fe7a9eae43b Mon Sep 17 00:00:00 2001 From: Jamie Cameron Date: Wed, 24 Jul 2013 05:47:56 -0700 Subject: [PATCH] Restart BIND after zone signing http://virtualmin.com/node/25927 --- bind8/resign.pl | 5 +++++ bind8/sign_zone.cgi | 2 ++ 2 files changed, 7 insertions(+) diff --git a/bind8/resign.pl b/bind8/resign.pl index 7d4f17c54..6ab2f3a51 100755 --- a/bind8/resign.pl +++ b/bind8/resign.pl @@ -16,6 +16,7 @@ my $period = $config{'dnssec_period'} || 21; @zones = &list_zone_names(); $errcount = 0; +$donecount = 0; foreach $z (@zones) { # Get the key next if ($z->{'type'} ne 'master'); @@ -70,6 +71,10 @@ foreach $z (@zones) { elsif ($debug) { print STDERR " Re-signed $z->{'name'} OK\n"; } + $donecount++ if (!$err); } } +if ($donecount) { + &restart_bind(); + } exit($errcount); diff --git a/bind8/sign_zone.cgi b/bind8/sign_zone.cgi index c1300f0e0..5473e4745 100755 --- a/bind8/sign_zone.cgi +++ b/bind8/sign_zone.cgi @@ -14,6 +14,8 @@ $dom = $zone->{'name'}; $err = &sign_dnssec_zone($zone, 1); &error($err) if ($err); &unlock_file(&make_chroot(&absolute_path($zone->{'file'}))); +$err = &restart_zone($zone->{'name'}, $zone->{'view'}); +&error($err) if ($err); # Return to master page &webmin_log("sign", undef, $dom);